@smartsoft001/crud-shell-nestjs 1.1.90 → 1.2.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.
Files changed (47) hide show
  1. package/.eslintrc +13 -0
  2. package/README.md +37 -4
  3. package/jest.config.ts +27 -0
  4. package/package.json +2 -45
  5. package/project.json +43 -0
  6. package/src/index.ts +4 -0
  7. package/src/lib/controllers/crud/crud.controller.spec.ts +111 -0
  8. package/src/lib/controllers/crud/crud.controller.ts +353 -0
  9. package/src/lib/controllers/crud/query-to-mongo.spec.ts +32 -0
  10. package/src/lib/controllers/crud/query-to-mongo.ts +295 -0
  11. package/src/lib/controllers/index.ts +5 -0
  12. package/src/lib/gateways/crud/crud.gateway.spec.ts +122 -0
  13. package/src/lib/gateways/crud/crud.gateway.ts +72 -0
  14. package/src/lib/gateways/index.ts +3 -0
  15. package/src/lib/guards/auth/auth.guard.spec.ts +60 -0
  16. package/src/lib/guards/auth/auth.guard.ts +22 -0
  17. package/src/lib/nestjs.module.ts +94 -0
  18. package/tsconfig.json +13 -0
  19. package/tsconfig.lib.json +11 -0
  20. package/tsconfig.spec.json +20 -0
  21. package/src/index.d.ts +0 -4
  22. package/src/index.js +0 -8
  23. package/src/index.js.map +0 -1
  24. package/src/lib/controllers/crud/crud.controller.d.ts +0 -39
  25. package/src/lib/controllers/crud/crud.controller.js +0 -327
  26. package/src/lib/controllers/crud/crud.controller.js.map +0 -1
  27. package/src/lib/controllers/crud/query-to-mongo.d.ts +0 -5
  28. package/src/lib/controllers/crud/query-to-mongo.js +0 -286
  29. package/src/lib/controllers/crud/query-to-mongo.js.map +0 -1
  30. package/src/lib/controllers/index.d.ts +0 -3
  31. package/src/lib/controllers/index.js +0 -10
  32. package/src/lib/controllers/index.js.map +0 -1
  33. package/src/lib/gateways/crud/crud.gateway.d.ts +0 -18
  34. package/src/lib/gateways/crud/crud.gateway.js +0 -56
  35. package/src/lib/gateways/crud/crud.gateway.js.map +0 -1
  36. package/src/lib/gateways/index.d.ts +0 -2
  37. package/src/lib/gateways/index.js +0 -8
  38. package/src/lib/gateways/index.js.map +0 -1
  39. package/src/lib/guards/auth/auth.guard.d.ts +0 -10
  40. package/src/lib/guards/auth/auth.guard.js +0 -32
  41. package/src/lib/guards/auth/auth.guard.js.map +0 -1
  42. package/src/lib/nestjs.module.d.ts +0 -31
  43. package/src/lib/nestjs.module.js +0 -81
  44. package/src/lib/nestjs.module.js.map +0 -1
  45. package/test-setup.js +0 -1
  46. package/test-setup.js.map +0 -1
  47. /package/{test-setup.d.ts → test-setup.ts} +0 -0
@@ -1,286 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.q2m = void 0;
4
- const querystring = require("querystring");
5
- const iso8601 = /^\d{4}(-(0[1-9]|1[0-2])(-(0[1-9]|[12][0-9]|3[01]))?)?(T([01][0-9]|2[0-3]):[0-5]\d(:[0-5]\d(\.\d+)?)?(Z|[+-]\d{2}:\d{2}))?$/;
6
- // Convert comma separated list to a mongo projection.
7
- // for example f('field1,field2,field3') -> {field1:true,field2:true,field3:true}
8
- function fieldsToMongo(fields) {
9
- if (!fields)
10
- return null;
11
- const hash = {};
12
- fields.split(',').forEach(function (field) {
13
- hash[field.trim()] = 1;
14
- });
15
- return hash;
16
- }
17
- function convertRegex(val) {
18
- return val.toString().replace(/\*/g, '[*]');
19
- }
20
- // Convert comma separated list to a mongo projection which specifies fields to omit.
21
- // for example f('field2') -> {field2:false}
22
- function omitFieldsToMongo(omitFields) {
23
- if (!omitFields)
24
- return null;
25
- const hash = {};
26
- omitFields.split(',').forEach(function (omitField) {
27
- hash[omitField.trim()] = 0;
28
- });
29
- return hash;
30
- }
31
- // Convert comma separated list to mongo sort options.
32
- // for example f('field1,+field2,-field3') -> {field1:1,field2:1,field3:-1}
33
- function sortToMongo(sort) {
34
- if (!sort)
35
- return null;
36
- const hash = {};
37
- let c;
38
- sort.split(',').forEach(function (field) {
39
- c = field.charAt(0);
40
- if (c === '-')
41
- field = field.substr(1);
42
- hash[field.trim()] = (c === '-') ? -1 : 1;
43
- });
44
- return hash;
45
- }
46
- // Convert String to Number, Date, or Boolean if possible. Also strips ! prefix
47
- function typedValue(value) {
48
- if (value[0] === '!')
49
- value = value.substr(1);
50
- const regex = value.match(/^\/(.*)\/(i?)$/);
51
- const quotedString = value.match(/(["'])(?:\\\1|.)*?\1/);
52
- if (regex) {
53
- return new RegExp(regex[1], regex[2]);
54
- }
55
- else if (quotedString) {
56
- return quotedString[0].substr(1, quotedString[0].length - 2);
57
- }
58
- else if (value === 'true') {
59
- return true;
60
- }
61
- else if (value === 'false') {
62
- return false;
63
- }
64
- else if (iso8601.test(value) && value.length !== 4 && value.length !== 10) {
65
- return new Date(value);
66
- }
67
- else if (!isNaN(Number(value))) {
68
- return Number(value);
69
- }
70
- return value;
71
- }
72
- // Convert a comma separated string value to an array of values. Commas
73
- // in a quoted strings and regexes are ignored. Also strips ! prefix from values.
74
- function typedValues(svalue) {
75
- const commaSplit = /("[^"]*")|('[^']*')|(\/[^\/]*\/i?)|([^,]+)/g;
76
- const values = [];
77
- svalue
78
- .match(commaSplit)
79
- .forEach(function (value) {
80
- values.push(typedValue(value));
81
- });
82
- return values;
83
- }
84
- // Convert a key/value pair split at an equals sign into a mongo comparison.
85
- // Converts value Strings to Numbers or Booleans when possible.
86
- // for example:
87
- // + f('key','value') => {key:'key',value:'value'}
88
- // + f('key>','value') => {key:'key',value:{$gte:'value'}}
89
- // + f('key') => {key:'key',value:{$exists: true}}
90
- // + f('!key') => {key:'key',value:{$exists: false}}
91
- // + f('key:op','value') => {key: 'key', value:{ $op: value}}
92
- // + f('key','op:value') => {key: 'key', value:{ $op: value}}
93
- function comparisonToMongo(key, value) {
94
- const join = (value === '') ? key : key.concat('=', value);
95
- const parts = join.match(/^(!?[^><~!=:]+)(?:=?([><]=?|~?=|!?=|:.+=)(.+))?$/);
96
- let op;
97
- const hash = {};
98
- if (!parts)
99
- return null;
100
- key = parts[1];
101
- op = parts[2];
102
- if (!op) {
103
- if (key[0] !== '!')
104
- value = { '$exists': true };
105
- else {
106
- key = key.substr(1);
107
- value = { '$exists': false };
108
- }
109
- }
110
- else if (op === '=' && parts[3] === '!') {
111
- value = { '$exists': false };
112
- }
113
- else if (op === '=' || op === '!=') {
114
- if (op === '=' && parts[3][0] === '!')
115
- op = '!=';
116
- // tslint:disable-next-line:no-shadowed-variable
117
- const array = typedValues(parts[3]);
118
- if (array.length > 1) {
119
- value = {};
120
- op = (op === '=') ? '$in' : '$nin';
121
- value[op] = array;
122
- }
123
- else if (op === '!=') {
124
- value = array[0] instanceof RegExp ?
125
- { '$not': array[0] } :
126
- { '$ne': array[0] };
127
- }
128
- else if (array[0][0] === '!') {
129
- const sValue = array[0].substr(1);
130
- const regex = sValue.match(/^\/(.*)\/(i?)$/);
131
- value = regex ?
132
- { '$not': new RegExp(regex[1], regex[2]) } :
133
- { '$ne': sValue };
134
- }
135
- else {
136
- value = array[0];
137
- }
138
- }
139
- else if (op[0] === ':' && op[op.length - 1] === '=') {
140
- op = '$' + op.substr(1, op.length - 2);
141
- const array = [];
142
- // tslint:disable-next-line:no-shadowed-variable
143
- parts[3].split(',').forEach(function (value) {
144
- array.push(typedValue(value));
145
- });
146
- value = {};
147
- value[op] = array.length === 1 ? array[0] : array;
148
- }
149
- else {
150
- value = typedValue(parts[3]);
151
- if (op === '>')
152
- value = { '$gt': value };
153
- else if (op === '>=')
154
- value = { '$gte': value };
155
- else if (op === '<')
156
- value = { '$lt': value };
157
- else if (op === '<=')
158
- value = { '$lte': value };
159
- else if (op === '~=')
160
- value = {
161
- $regex: value ? convertRegex(value) : '',
162
- $options: "i",
163
- };
164
- }
165
- hash.key = key;
166
- hash.value = value;
167
- return hash;
168
- }
169
- // Checks for keys that are ordinal positions, such as {'0':'one','1':'two','2':'three'}
170
- function hasOrdinalKeys(obj) {
171
- let c = 0;
172
- for (const key in obj) {
173
- if (Number(key) !== c++)
174
- return false;
175
- }
176
- return true;
177
- }
178
- // Convert query parameters to a mongo query criteria.
179
- // for example {field1:"red","field2>2":""} becomes {field1:"red",field2:{$gt:2}}
180
- function queryCriteriaToMongo(query, options = null) {
181
- const hash = {};
182
- let deep, p;
183
- options = options || {};
184
- for (const key in query) {
185
- if (Object.prototype.hasOwnProperty.call(query, key) && (!options.ignore || options.ignore.indexOf(key) === -1)) {
186
- deep = (typeof query[key] === 'object' && !hasOrdinalKeys(query[key]));
187
- if (deep) {
188
- p = {
189
- key: key,
190
- value: queryCriteriaToMongo(query[key])
191
- };
192
- }
193
- else {
194
- p = comparisonToMongo(key, query[key]);
195
- }
196
- if (p) {
197
- if (!hash[p.key]) {
198
- hash[p.key] = p.value;
199
- }
200
- else if (typeof p.value === 'string') {
201
- hash[p.key] = Object.assign(hash[p.key], {
202
- $eq: p.value
203
- });
204
- }
205
- else {
206
- hash[p.key] = Object.assign(hash[p.key], p.value);
207
- }
208
- }
209
- }
210
- }
211
- return hash;
212
- }
213
- // Convert query parameters to a mongo query options.
214
- // for example {fields:'a,b',offset:8,limit:16} becomes {fields:{a:true,b:true},skip:8,limit:16}
215
- function queryOptionsToMongo(query, options) {
216
- const hash = {}, fields = fieldsToMongo(query[options.keywords.fields]), omitFields = omitFieldsToMongo(query[options.keywords.omit]), sort = sortToMongo(query[options.keywords.sort]), maxLimit = options.maxLimit || 9007199254740992;
217
- let limit = options.maxLimit || 0;
218
- if (fields)
219
- hash.fields = fields;
220
- // omit intentionally overwrites fields if both have been specified in the query
221
- // mongo does not accept mixed true/fals field specifiers for projections
222
- if (omitFields)
223
- hash.fields = omitFields;
224
- if (sort)
225
- hash.sort = sort;
226
- if (query[options.keywords.offset])
227
- hash.skip = Number(query[options.keywords.offset]);
228
- if (query[options.keywords.limit])
229
- limit = Math.min(Number(query[options.keywords.limit]), maxLimit);
230
- if (limit) {
231
- hash.limit = limit;
232
- }
233
- else if (options.maxLimit) {
234
- hash.limit = maxLimit;
235
- }
236
- return hash;
237
- }
238
- function q2m(query = null, options = null) {
239
- query = query || {};
240
- options = options || {};
241
- options.keywords = options.keywords || {};
242
- const defaultKeywords = { fields: 'fields', omit: 'omit', sort: 'sort', offset: 'offset', limit: 'limit' };
243
- options.keywords = Object.assign(defaultKeywords, options.keywords);
244
- const ignoreKeywords = [options.keywords.fields, options.keywords.omit, options.keywords.sort, options.keywords.offset, options.keywords.limit];
245
- if (!options.ignore) {
246
- options.ignore = [];
247
- }
248
- else {
249
- options.ignore = (typeof options.ignore === 'string') ? [options.ignore] : options.ignore;
250
- }
251
- options.ignore = options.ignore.concat(ignoreKeywords);
252
- if (!options.parser)
253
- options.parser = querystring;
254
- if (typeof query === 'string')
255
- query = options.parser.parse(query);
256
- return {
257
- criteria: queryCriteriaToMongo(query, options),
258
- options: queryOptionsToMongo(query, options),
259
- links: function (url, totalCount) {
260
- const offset = this.options.skip || 0;
261
- const limit = Math.min(this.options.limit || 0, totalCount);
262
- const links = {};
263
- const last = {};
264
- if (!limit)
265
- return null;
266
- options = options || {};
267
- if (offset > 0) {
268
- query[options.keywords.offset] = Math.max(offset - limit, 0);
269
- links['prev'] = url + '?' + options.parser.stringify(query);
270
- query[options.keywords.offset] = 0;
271
- links['first'] = url + '?' + options.parser.stringify(query);
272
- }
273
- if (offset + limit < totalCount) {
274
- last.pages = Math.ceil(totalCount / limit);
275
- last.offset = (last.pages - 1) * limit;
276
- query[options.keywords.offset] = Math.min(offset + limit, last.offset);
277
- links['next'] = url + '?' + options.parser.stringify(query);
278
- query[options.keywords.offset] = last.offset;
279
- links['last'] = url + '?' + options.parser.stringify(query);
280
- }
281
- return links;
282
- }
283
- };
284
- }
285
- exports.q2m = q2m;
286
- //# sourceMappingURL=query-to-mongo.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"query-to-mongo.js","sourceRoot":"","sources":["../../../../../../../../../libs/crud/shell/nestjs/src/lib/controllers/crud/query-to-mongo.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import { CrudController } from "./crud/crud.controller";
2
- export * from "./crud/crud.controller";
3
- export declare const CONTROLLERS: (typeof CrudController)[];
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CONTROLLERS = void 0;
4
- const tslib_1 = require("tslib");
5
- const crud_controller_1 = require("./crud/crud.controller");
6
- tslib_1.__exportStar(require("./crud/crud.controller"), exports);
7
- exports.CONTROLLERS = [
8
- crud_controller_1.CrudController
9
- ];
10
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../libs/crud/shell/nestjs/src/lib/controllers/index.ts"],"names":[],"mappings":";;;;AAAA,4DAAsD;AAEtD,iEAAuC;AAE1B,QAAA,WAAW,GAAG;IACvB,gCAAc;CACjB,CAAC"}
@@ -1,18 +0,0 @@
1
- import { OnGatewayConnection, OnGatewayDisconnect, OnGatewayInit, WsResponse } from "@nestjs/websockets";
2
- import { Socket } from "socket.io";
3
- import { CrudService } from "@smartsoft001/crud-shell-app-services";
4
- import { IEntity } from "@smartsoft001/domain-core";
5
- import { Observable } from "rxjs";
6
- import { ItemChangedData } from "@smartsoft001/crud-shell-dtos";
7
- export declare class CrudGateway<T extends IEntity<string>> implements OnGatewayInit, OnGatewayConnection, OnGatewayDisconnect {
8
- private service;
9
- private _clientsSubscriptions;
10
- constructor(service: CrudService<T>);
11
- handleFilter(data: {
12
- id?: string;
13
- }, client: Socket): Observable<WsResponse<ItemChangedData>>;
14
- afterInit(server: any): void;
15
- handleDisconnect(client: any): void;
16
- private clearSubscription;
17
- handleConnection(client: any, ...args: any[]): void;
18
- }
@@ -1,56 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CrudGateway = void 0;
4
- const tslib_1 = require("tslib");
5
- const websockets_1 = require("@nestjs/websockets");
6
- const socket_io_1 = require("socket.io");
7
- const crud_shell_app_services_1 = require("@smartsoft001/crud-shell-app-services");
8
- const rxjs_1 = require("rxjs");
9
- let CrudGateway = exports.CrudGateway = class CrudGateway {
10
- constructor(service) {
11
- this.service = service;
12
- }
13
- handleFilter(data, client) {
14
- const event = 'changes';
15
- return new rxjs_1.Observable((observer => {
16
- this.clearSubscription(client);
17
- this._clientsSubscriptions.set(client.id, this.service.changes(data).subscribe(res => {
18
- observer.next({ event, data: res });
19
- }, error => observer.error(error)));
20
- }));
21
- }
22
- afterInit(server) {
23
- this._clientsSubscriptions = new Map();
24
- console.log("CrudGateway Init");
25
- }
26
- handleDisconnect(client) {
27
- this.clearSubscription(client);
28
- console.log(`Client disconnected: ${client.id}`);
29
- }
30
- clearSubscription(client) {
31
- if (this._clientsSubscriptions.has(client.id)) {
32
- this._clientsSubscriptions.get(client.id).unsubscribe();
33
- this._clientsSubscriptions.delete(client.id);
34
- }
35
- }
36
- handleConnection(client, ...args) {
37
- console.log(`Client connected: ${client.id}`);
38
- }
39
- };
40
- tslib_1.__decorate([
41
- (0, websockets_1.SubscribeMessage)("changes"),
42
- tslib_1.__param(0, (0, websockets_1.MessageBody)()),
43
- tslib_1.__param(1, (0, websockets_1.ConnectedSocket)()),
44
- tslib_1.__metadata("design:type", Function),
45
- tslib_1.__metadata("design:paramtypes", [Object, socket_io_1.Socket]),
46
- tslib_1.__metadata("design:returntype", rxjs_1.Observable)
47
- ], CrudGateway.prototype, "handleFilter", null);
48
- exports.CrudGateway = CrudGateway = tslib_1.__decorate([
49
- (0, websockets_1.WebSocketGateway)({
50
- transports: ["websocket"],
51
- path: "/" + process.env.URL_PREFIX + "/_socket",
52
- namespace: "/" + process.env.URL_PREFIX
53
- }),
54
- tslib_1.__metadata("design:paramtypes", [crud_shell_app_services_1.CrudService])
55
- ], CrudGateway);
56
- //# sourceMappingURL=crud.gateway.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"crud.gateway.js","sourceRoot":"","sources":["../../../../../../../../../libs/crud/shell/nestjs/src/lib/gateways/crud/crud.gateway.ts"],"names":[],"mappings":";;;;AAAA,mDAQ4B;AAC5B,yCAAmC;AACnC,mFAAoE;AAEpE,+BAA8C;AAQvC,IAAM,WAAW,yBAAjB,MAAM,WAAW;IAItB,YAAoB,OAAuB;QAAvB,YAAO,GAAP,OAAO,CAAgB;IAAG,CAAC;IAG/C,YAAY,CACO,IAAqB,EAAqB,MAAc;QAEzE,MAAM,KAAK,GAAG,SAAS,CAAC;QAExB,OAAO,IAAI,iBAAU,CAA8B,CAAC,QAAQ,CAAC,EAAE;YAC7D,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;YAE/B,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;gBACnF,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;YACtC,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC,CAAC;IACN,CAAC;IAED,SAAS,CAAC,MAAW;QACnB,IAAI,CAAC,qBAAqB,GAAG,IAAI,GAAG,EAAwB,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IAClC,CAAC;IAED,gBAAgB,CAAC,MAAW;QAC1B,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAE/B,OAAO,CAAC,GAAG,CAAC,wBAAwB,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IAEO,iBAAiB,CAAC,MAAW;QACnC,IAAI,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;YAC7C,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;YACxD,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;SAC9C;IACH,CAAC;IAED,gBAAgB,CAAC,MAAW,EAAE,GAAG,IAAW;QAC1C,OAAO,CAAC,GAAG,CAAC,qBAAqB,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;CACF,CAAA;AAnCC;IADC,IAAA,6BAAgB,EAAC,SAAS,CAAC;IAEvB,mBAAA,IAAA,wBAAW,GAAE,CAAA;IAAyB,mBAAA,IAAA,4BAAe,GAAE,CAAA;;qDAAS,kBAAM;4CACxE,iBAAU;+CAUZ;sBAnBU,WAAW;IALvB,IAAA,6BAAgB,EAAC;QAChB,UAAU,EAAE,CAAC,WAAW,CAAC;QACzB,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,GAAG,UAAU;QAC/C,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU;KACxC,CAAC;6CAK6B,qCAAW;GAJ7B,WAAW,CA0CvB"}
@@ -1,2 +0,0 @@
1
- import { CrudGateway } from "./crud/crud.gateway";
2
- export declare const GATEWAYS: (typeof CrudGateway)[];
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GATEWAYS = void 0;
4
- const crud_gateway_1 = require("./crud/crud.gateway");
5
- exports.GATEWAYS = [
6
- crud_gateway_1.CrudGateway
7
- ];
8
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../libs/crud/shell/nestjs/src/lib/gateways/index.ts"],"names":[],"mappings":";;;AAAA,sDAAgD;AAEnC,QAAA,QAAQ,GAAG;IACpB,0BAAW;CACd,CAAC"}
@@ -1,10 +0,0 @@
1
- declare const AuthJwtGuard_base: import("@nestjs/passport").Type<import("@nestjs/passport").IAuthGuard>;
2
- export declare class AuthJwtGuard extends AuthJwtGuard_base {
3
- private readonly logger;
4
- handleRequest(err: any, user: any, info: any): any;
5
- }
6
- declare const AuthOrAnonymousJwtGuard_base: import("@nestjs/passport").Type<import("@nestjs/passport").IAuthGuard>;
7
- export declare class AuthOrAnonymousJwtGuard extends AuthOrAnonymousJwtGuard_base {
8
- handleRequest(err: any, user: any, info: any): any;
9
- }
10
- export {};
@@ -1,32 +0,0 @@
1
- "use strict";
2
- var AuthJwtGuard_1;
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.AuthOrAnonymousJwtGuard = exports.AuthJwtGuard = void 0;
5
- const tslib_1 = require("tslib");
6
- const common_1 = require("@nestjs/common");
7
- const passport_1 = require("@nestjs/passport");
8
- let AuthJwtGuard = exports.AuthJwtGuard = AuthJwtGuard_1 = class AuthJwtGuard extends (0, passport_1.AuthGuard)('jwt') {
9
- constructor() {
10
- super(...arguments);
11
- this.logger = new common_1.Logger(AuthJwtGuard_1.name, { timestamp: true });
12
- }
13
- handleRequest(err, user, info) {
14
- if (err || !user) {
15
- this.logger.warn(JSON.stringify(info));
16
- throw err || new common_1.UnauthorizedException();
17
- }
18
- return user;
19
- }
20
- };
21
- exports.AuthJwtGuard = AuthJwtGuard = AuthJwtGuard_1 = tslib_1.__decorate([
22
- (0, common_1.Injectable)()
23
- ], AuthJwtGuard);
24
- let AuthOrAnonymousJwtGuard = exports.AuthOrAnonymousJwtGuard = class AuthOrAnonymousJwtGuard extends (0, passport_1.AuthGuard)('jwt') {
25
- handleRequest(err, user, info) {
26
- return user;
27
- }
28
- };
29
- exports.AuthOrAnonymousJwtGuard = AuthOrAnonymousJwtGuard = tslib_1.__decorate([
30
- (0, common_1.Injectable)()
31
- ], AuthOrAnonymousJwtGuard);
32
- //# sourceMappingURL=auth.guard.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.guard.js","sourceRoot":"","sources":["../../../../../../../../../libs/crud/shell/nestjs/src/lib/guards/auth/auth.guard.ts"],"names":[],"mappings":";;;;;AAAA,2CAA2E;AAC3E,+CAA2C;AAGpC,IAAM,YAAY,2CAAlB,MAAM,YAAa,SAAQ,IAAA,oBAAS,EAAC,KAAK,CAAC;IAA3C;;QACc,WAAM,GAAG,IAAI,eAAM,CAAC,cAAY,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IASjF,CAAC;IAPG,aAAa,CAAC,GAAQ,EAAE,IAAS,EAAE,IAAS;QACxC,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE;YACd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;YACvC,MAAM,GAAG,IAAI,IAAI,8BAAqB,EAAE,CAAC;SAC5C;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ,CAAA;uBAVY,YAAY;IADxB,IAAA,mBAAU,GAAE;GACA,YAAY,CAUxB;AAGM,IAAM,uBAAuB,qCAA7B,MAAM,uBAAwB,SAAQ,IAAA,oBAAS,EAAC,KAAK,CAAC;IACzD,aAAa,CAAC,GAAQ,EAAE,IAAS,EAAE,IAAS;QACxC,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ,CAAA;kCAJY,uBAAuB;IADnC,IAAA,mBAAU,GAAE;GACA,uBAAuB,CAInC"}
@@ -1,31 +0,0 @@
1
- import { DynamicModule } from "@nestjs/common";
2
- import { SharedConfig } from "@smartsoft001/nestjs";
3
- export declare class CrudShellNestjsModule {
4
- static forRoot<T>(options: SharedConfig & {
5
- db: {
6
- host: string;
7
- port: number;
8
- database: string;
9
- username?: string;
10
- password?: string;
11
- collection?: string;
12
- type?: T;
13
- };
14
- } & {
15
- restApi: boolean;
16
- socket: boolean;
17
- }): DynamicModule;
18
- }
19
- export declare class CrudShellNestjsCoreModule {
20
- static forRoot<T>(options: SharedConfig & {
21
- db: {
22
- host: string;
23
- port: number;
24
- database: string;
25
- username?: string;
26
- password?: string;
27
- collection?: string;
28
- type?: any;
29
- };
30
- }): DynamicModule;
31
- }
@@ -1,81 +0,0 @@
1
- "use strict";
2
- var CrudShellNestjsModule_1;
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.CrudShellNestjsCoreModule = exports.CrudShellNestjsModule = void 0;
5
- const tslib_1 = require("tslib");
6
- const common_1 = require("@nestjs/common");
7
- const passport_1 = require("@nestjs/passport");
8
- const jwt_1 = require("@nestjs/jwt");
9
- const crud_shell_app_services_1 = require("@smartsoft001/crud-shell-app-services");
10
- const nestjs_1 = require("@smartsoft001/nestjs");
11
- const mongo_1 = require("@smartsoft001/mongo");
12
- const controllers_1 = require("./controllers");
13
- const auth_guard_1 = require("./guards/auth/auth.guard");
14
- const gateways_1 = require("./gateways");
15
- let CrudShellNestjsModule = exports.CrudShellNestjsModule = CrudShellNestjsModule_1 = class CrudShellNestjsModule {
16
- static forRoot(options) {
17
- return {
18
- module: CrudShellNestjsModule_1,
19
- controllers: options.restApi ? controllers_1.CONTROLLERS : [],
20
- providers: [
21
- ...crud_shell_app_services_1.SERVICES,
22
- ...(options.socket ? gateways_1.GATEWAYS : []),
23
- auth_guard_1.AuthJwtGuard,
24
- ],
25
- imports: [
26
- ...(options.restApi && options.tokenConfig.secretOrPrivateKey
27
- ? [
28
- passport_1.PassportModule.register({
29
- defaultStrategy: "jwt",
30
- session: false,
31
- }),
32
- jwt_1.JwtModule.register({
33
- secret: options.tokenConfig.secretOrPrivateKey,
34
- signOptions: {
35
- expiresIn: options.tokenConfig.expiredIn,
36
- },
37
- }),
38
- ]
39
- : []),
40
- nestjs_1.SharedModule.forFeature(options),
41
- mongo_1.MongoModule.forRoot(options.db)
42
- ],
43
- exports: [
44
- ...crud_shell_app_services_1.SERVICES,
45
- auth_guard_1.AuthJwtGuard,
46
- mongo_1.MongoModule.forRoot(options.db)
47
- ],
48
- };
49
- }
50
- };
51
- exports.CrudShellNestjsModule = CrudShellNestjsModule = CrudShellNestjsModule_1 = tslib_1.__decorate([
52
- (0, common_1.Module)({})
53
- ], CrudShellNestjsModule);
54
- let CrudShellNestjsCoreModule = exports.CrudShellNestjsCoreModule = class CrudShellNestjsCoreModule {
55
- static forRoot(options) {
56
- return {
57
- module: CrudShellNestjsModule,
58
- providers: [
59
- ...crud_shell_app_services_1.SERVICES,
60
- ...gateways_1.GATEWAYS,
61
- auth_guard_1.AuthJwtGuard,
62
- ],
63
- imports: [
64
- passport_1.PassportModule.register({ defaultStrategy: "jwt", session: false }),
65
- jwt_1.JwtModule.register({
66
- secret: options.tokenConfig.secretOrPrivateKey,
67
- signOptions: {
68
- expiresIn: options.tokenConfig.expiredIn,
69
- },
70
- }),
71
- nestjs_1.SharedModule.forRoot(options),
72
- mongo_1.MongoModule.forRoot(options.db)
73
- ],
74
- exports: [],
75
- };
76
- }
77
- };
78
- exports.CrudShellNestjsCoreModule = CrudShellNestjsCoreModule = tslib_1.__decorate([
79
- (0, common_1.Module)({})
80
- ], CrudShellNestjsCoreModule);
81
- //# sourceMappingURL=nestjs.module.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nestjs.module.js","sourceRoot":"","sources":["../../../../../../../libs/crud/shell/nestjs/src/lib/nestjs.module.ts"],"names":[],"mappings":";;;;;AAAA,2CAAuD;AACvD,+CAAkD;AAClD,qCAAwC;AAExC,mFAE+C;AAC/C,iDAAkE;AAClE,+CAAkD;AAElD,+CAA4C;AAC5C,yDAAwD;AACxD,yCAAsC;AAG/B,IAAM,qBAAqB,6DAA3B,MAAM,qBAAqB;IAChC,MAAM,CAAC,OAAO,CACZ,OAaC;QAED,OAAO;YACL,MAAM,EAAE,uBAAqB;YAC7B,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,yBAAW,CAAC,CAAC,CAAC,EAAE;YAC/C,SAAS,EAAE;gBACT,GAAG,kCAAQ;gBACX,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnC,yBAAY;aACb;YACD,OAAO,EAAE;gBACP,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC,kBAAkB;oBAC3D,CAAC,CAAC;wBACE,yBAAc,CAAC,QAAQ,CAAC;4BACtB,eAAe,EAAE,KAAK;4BACtB,OAAO,EAAE,KAAK;yBACf,CAAC;wBACF,eAAS,CAAC,QAAQ,CAAC;4BACjB,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,kBAAkB;4BAC9C,WAAW,EAAE;gCACX,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS;6BACzC;yBACF,CAAC;qBACH;oBACH,CAAC,CAAC,EAAE,CAAC;gBACP,qBAAY,CAAC,UAAU,CAAC,OAAO,CAAC;gBAChC,mBAAW,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;aAChC;YACD,OAAO,EAAE;gBACP,GAAG,kCAAQ;gBACX,yBAAY;gBACZ,mBAAW,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;aAChC;SACF,CAAC;IACJ,CAAC;CACF,CAAA;gCAlDY,qBAAqB;IADjC,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,qBAAqB,CAkDjC;AAGM,IAAM,yBAAyB,uCAA/B,MAAM,yBAAyB;IACpC,MAAM,CAAC,OAAO,CACZ,OAUC;QAED,OAAO;YACL,MAAM,EAAE,qBAAqB;YAC7B,SAAS,EAAE;gBACT,GAAG,kCAAQ;gBACX,GAAG,mBAAQ;gBACX,yBAAY;aACb;YACD,OAAO,EAAE;gBACP,yBAAc,CAAC,QAAQ,CAAC,EAAE,eAAe,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;gBACnE,eAAS,CAAC,QAAQ,CAAC;oBACjB,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,kBAAkB;oBAC9C,WAAW,EAAE;wBACX,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS;qBACzC;iBACF,CAAC;gBACF,qBAAY,CAAC,OAAO,CAAC,OAAO,CAAC;gBAC7B,mBAAW,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;aAChC;YACD,OAAO,EAAE,EAAE;SACZ,CAAC;IACJ,CAAC;CACF,CAAA;oCAnCY,yBAAyB;IADrC,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,yBAAyB,CAmCrC"}
package/test-setup.js DELETED
@@ -1 +0,0 @@
1
- //# sourceMappingURL=test-setup.js.map
package/test-setup.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"test-setup.js","sourceRoot":"","sources":["../../../../../libs/crud/shell/nestjs/test-setup.ts"],"names":[],"mappings":""}
File without changes