@lenne.tech/nest-server 3.1.3 → 3.3.1
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.d.ts +5 -0
- package/dist/core/common/args/filter.args.js +10 -0
- package/dist/core/common/args/filter.args.js.map +1 -1
- package/dist/core/common/args/pagination.args.d.ts +8 -1
- package/dist/core/common/args/pagination.args.js +24 -6
- package/dist/core/common/args/pagination.args.js.map +1 -1
- package/dist/core/common/decorators/restricted.decorator.d.ts +3 -0
- package/dist/core/common/decorators/restricted.decorator.js +16 -5
- package/dist/core/common/decorators/restricted.decorator.js.map +1 -1
- package/dist/core/common/helpers/context.helper.js +15 -5
- package/dist/core/common/helpers/context.helper.js.map +1 -1
- package/dist/core/common/helpers/filter.helper.d.ts +3 -3
- package/dist/core/common/helpers/filter.helper.js.map +1 -1
- package/dist/core/common/helpers/graphql.helper.d.ts +4 -4
- package/dist/core/common/helpers/input.helper.js +13 -7
- package/dist/core/common/helpers/input.helper.js.map +1 -1
- package/dist/core/common/helpers/service.helper.d.ts +11 -8
- package/dist/core/common/helpers/service.helper.js +50 -12
- package/dist/core/common/helpers/service.helper.js.map +1 -1
- package/dist/core/common/inputs/combined-filter.input.d.ts +8 -2
- package/dist/core/common/inputs/combined-filter.input.js +16 -5
- package/dist/core/common/inputs/combined-filter.input.js.map +1 -1
- package/dist/core/common/inputs/core-input.input.d.ts +8 -0
- package/dist/core/common/inputs/core-input.input.js +15 -0
- package/dist/core/common/inputs/core-input.input.js.map +1 -0
- package/dist/core/common/inputs/filter.input.d.ts +7 -1
- package/dist/core/common/inputs/filter.input.js +14 -1
- package/dist/core/common/inputs/filter.input.js.map +1 -1
- package/dist/core/common/inputs/single-filter.input.d.ts +2 -1
- package/dist/core/common/inputs/single-filter.input.js +10 -1
- package/dist/core/common/inputs/single-filter.input.js.map +1 -1
- package/dist/core/common/inputs/sort.input.d.ts +2 -1
- package/dist/core/common/inputs/sort.input.js +7 -1
- package/dist/core/common/inputs/sort.input.js.map +1 -1
- package/dist/core/common/interceptors/check-response.interceptor.js +1 -1
- package/dist/core/common/interceptors/check-response.interceptor.js.map +1 -1
- package/dist/core/common/interfaces/core-persistence-model.interface.d.ts +1 -0
- package/dist/core/common/interfaces/server-options.interface.d.ts +3 -15
- package/dist/core/common/models/core-model.model.d.ts +6 -0
- package/dist/core/common/models/core-model.model.js +14 -5
- package/dist/core/common/models/core-model.model.js.map +1 -1
- package/dist/core/common/models/core-persistence.model.d.ts +5 -29
- package/dist/core/common/models/core-persistence.model.js +19 -41
- package/dist/core/common/models/core-persistence.model.js.map +1 -1
- package/dist/core/common/pipes/check-input.pipe.d.ts +2 -3
- package/dist/core/common/pipes/check-input.pipe.js +5 -20
- package/dist/core/common/pipes/check-input.pipe.js.map +1 -1
- package/dist/core/common/pipes/map-and-validate.pipe.d.ts +4 -0
- package/dist/core/common/pipes/map-and-validate.pipe.js +40 -0
- package/dist/core/common/pipes/map-and-validate.pipe.js.map +1 -0
- package/dist/core/common/types/plain-input.type.d.ts +3 -0
- package/dist/core/common/types/plain-input.type.js +3 -0
- package/dist/core/common/types/plain-input.type.js.map +1 -0
- package/dist/core/modules/auth/core-auth.model.d.ts +3 -1
- package/dist/core/modules/auth/core-auth.model.js +7 -1
- package/dist/core/modules/auth/core-auth.model.js.map +1 -1
- package/dist/core/modules/auth/core-auth.resolver.d.ts +1 -1
- package/dist/core/modules/user/core-user.model.d.ts +3 -0
- package/dist/core/modules/user/core-user.model.js +9 -4
- package/dist/core/modules/user/core-user.model.js.map +1 -1
- package/dist/core/modules/user/core-user.service.d.ts +9 -13
- package/dist/core/modules/user/core-user.service.js +38 -67
- package/dist/core/modules/user/core-user.service.js.map +1 -1
- package/dist/core/modules/user/inputs/core-user-create.input.js +4 -0
- package/dist/core/modules/user/inputs/core-user-create.input.js.map +1 -1
- package/dist/core/modules/user/inputs/core-user.input.d.ts +2 -1
- package/dist/core/modules/user/inputs/core-user.input.js +12 -2
- package/dist/core/modules/user/inputs/core-user.input.js.map +1 -1
- package/dist/core.module.js +4 -4
- package/dist/core.module.js.map +1 -1
- package/dist/index.d.ts +6 -2
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/server/common/models/persistence.model.d.ts +4 -2
- package/dist/server/common/models/persistence.model.js +6 -2
- package/dist/server/common/models/persistence.model.js.map +1 -1
- package/dist/server/modules/auth/auth.model.d.ts +1 -0
- package/dist/server/modules/auth/auth.model.js +4 -0
- package/dist/server/modules/auth/auth.model.js.map +1 -1
- package/dist/server/modules/user/inputs/user-create.input.js.map +1 -1
- package/dist/server/modules/user/inputs/user.input.js.map +1 -1
- package/dist/server/modules/user/user.model.d.ts +3 -2
- package/dist/server/modules/user/user.model.js +9 -5
- package/dist/server/modules/user/user.model.js.map +1 -1
- package/dist/server/modules/user/user.resolver.d.ts +2 -2
- package/dist/server/modules/user/user.resolver.js +10 -12
- package/dist/server/modules/user/user.resolver.js.map +1 -1
- package/dist/server/modules/user/user.service.d.ts +6 -6
- package/dist/server/modules/user/user.service.js +12 -4
- package/dist/server/modules/user/user.service.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +26 -26
- package/src/core/common/args/filter.args.ts +22 -1
- package/src/core/common/args/pagination.args.ts +42 -7
- package/src/core/common/decorators/restricted.decorator.ts +24 -5
- package/src/core/common/helpers/context.helper.ts +14 -3
- package/src/core/common/helpers/filter.helper.ts +3 -3
- package/src/core/common/helpers/input.helper.ts +17 -11
- package/src/core/common/helpers/service.helper.ts +96 -31
- package/src/core/common/inputs/combined-filter.input.ts +30 -9
- package/src/core/common/inputs/core-input.input.ts +36 -0
- package/src/core/common/inputs/filter.input.ts +27 -3
- package/src/core/common/inputs/single-filter.input.ts +7 -6
- package/src/core/common/inputs/sort.input.ts +4 -3
- package/src/core/common/interceptors/check-response.interceptor.ts +2 -2
- package/src/core/common/interfaces/core-persistence-model.interface.ts +1 -0
- package/src/core/common/interfaces/server-options.interface.ts +3 -33
- package/src/core/common/models/core-model.model.ts +42 -3
- package/src/core/common/models/core-persistence.model.ts +33 -120
- package/src/core/common/pipes/check-input.pipe.ts +13 -33
- package/src/core/common/pipes/map-and-validate.pipe.ts +32 -0
- package/src/core/common/types/plain-input.type.ts +6 -0
- package/src/core/modules/auth/core-auth.model.ts +15 -1
- package/src/core/modules/auth/core-auth.resolver.ts +1 -1
- package/src/core/modules/user/core-user.model.ts +16 -4
- package/src/core/modules/user/core-user.service.ts +59 -115
- package/src/core/modules/user/inputs/core-user-create.input.ts +5 -1
- package/src/core/modules/user/inputs/core-user.input.ts +13 -8
- package/src/core.module.ts +13 -6
- package/src/index.ts +6 -2
- package/src/server/common/models/persistence.model.ts +16 -2
- package/src/server/modules/auth/auth.model.ts +13 -0
- package/src/server/modules/user/inputs/user-create.input.ts +4 -0
- package/src/server/modules/user/inputs/user.input.ts +4 -0
- package/src/server/modules/user/user.model.ts +18 -5
- package/src/server/modules/user/user.resolver.ts +15 -19
- package/src/server/modules/user/user.service.ts +22 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter.input.js","sourceRoot":"","sources":["../../../../src/core/common/inputs/filter.input.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmD;
|
|
1
|
+
{"version":3,"file":"filter.input.js","sourceRoot":"","sources":["../../../../src/core/common/inputs/filter.input.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmD;AAEnD,mEAA8D;AAC9D,yDAA+C;AAC/C,+DAA0D;AAQ1D,IAAa,WAAW,GAAxB,MAAa,WAAY,SAAQ,4BAAS;IAA1C;;QAQE,mBAAc,GAAyB,SAAS,CAAC;QASjD,iBAAY,GAAuB,SAAS,CAAC;IAuB/C,CAAC;IAdC,GAAG,CACD,IAAyC,EACzC,UAII,EAAE;QAEN,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACzB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,2CAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9G,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,uCAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACtG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAChF,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAhCC;IAJC,IAAA,eAAK,EAAC,CAAC,IAAI,EAAE,EAAE,CAAC,2CAAmB,EAAE;QACpC,WAAW,EAAE,sDAAsD;QACnE,QAAQ,EAAE,IAAI;KACf,CAAC;8BACe,2CAAmB;mDAAa;AASjD;IAJC,IAAA,eAAK,EAAC,CAAC,IAAI,EAAE,EAAE,CAAC,uCAAiB,EAAE;QAClC,WAAW,EAAE,8BAA8B;QAC3C,QAAQ,EAAE,IAAI;KACf,CAAC;8BACa,uCAAiB;iDAAa;AAjBlC,WAAW;IAHvB,IAAA,mBAAS,EAAC;QACT,WAAW,EAAE,yFAAyF;KACvG,CAAC;GACW,WAAW,CAwCvB;AAxCY,kCAAW"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ComparisonOperatorEnum } from '../enums/comparison-operator.enum';
|
|
2
|
-
|
|
2
|
+
import { CoreInput } from './core-input.input';
|
|
3
|
+
export declare class SingleFilterInput extends CoreInput {
|
|
3
4
|
field: string;
|
|
4
5
|
not?: boolean;
|
|
5
6
|
operator: ComparisonOperatorEnum;
|
|
@@ -13,7 +13,16 @@ exports.SingleFilterInput = void 0;
|
|
|
13
13
|
const graphql_1 = require("@nestjs/graphql");
|
|
14
14
|
const comparison_operator_enum_1 = require("../enums/comparison-operator.enum");
|
|
15
15
|
const json_scalar_1 = require("../scalars/json.scalar");
|
|
16
|
-
|
|
16
|
+
const core_input_input_1 = require("./core-input.input");
|
|
17
|
+
let SingleFilterInput = class SingleFilterInput extends core_input_input_1.CoreInput {
|
|
18
|
+
constructor() {
|
|
19
|
+
super(...arguments);
|
|
20
|
+
this.field = undefined;
|
|
21
|
+
this.not = undefined;
|
|
22
|
+
this.operator = undefined;
|
|
23
|
+
this.options = undefined;
|
|
24
|
+
this.value = undefined;
|
|
25
|
+
}
|
|
17
26
|
};
|
|
18
27
|
__decorate([
|
|
19
28
|
(0, graphql_1.Field)({ description: 'Name of the property to be used for the filter' }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"single-filter.input.js","sourceRoot":"","sources":["../../../../src/core/common/inputs/single-filter.input.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmD;AACnD,gFAA2E;AAC3E,wDAA8C;
|
|
1
|
+
{"version":3,"file":"single-filter.input.js","sourceRoot":"","sources":["../../../../src/core/common/inputs/single-filter.input.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmD;AACnD,gFAA2E;AAC3E,wDAA8C;AAC9C,yDAA+C;AAM/C,IAAa,iBAAiB,GAA9B,MAAa,iBAAkB,SAAQ,4BAAS;IAAhD;;QAKE,UAAK,GAAW,SAAS,CAAC;QAS1B,QAAG,GAAa,SAAS,CAAC;QAQ1B,aAAQ,GAA2B,SAAS,CAAC;QAY7C,YAAO,GAAY,SAAS,CAAC;QAG7B,UAAK,GAAQ,SAAS,CAAC;IACzB,CAAC;CAAA,CAAA;AAjCC;IADC,IAAA,eAAK,EAAC,EAAE,WAAW,EAAE,gDAAgD,EAAE,CAAC;;gDAC/C;AAS1B;IAJC,IAAA,eAAK,EAAC;QACL,WAAW,EAAE,kFAAkF;QAC/F,QAAQ,EAAE,IAAI;KACf,CAAC;;8CACwB;AAQ1B;IAHC,IAAA,eAAK,EAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iDAAsB,EAAE;QACvC,WAAW,EAAE,6FAA6F;KAC3G,CAAC;;mDAC2C;AAY7C;IANC,IAAA,eAAK,EAAC;QACL,WAAW,EACT,+FAA+F;YAC/F,mFAAmF;QACrF,QAAQ,EAAE,IAAI;KACf,CAAC;;kDAC2B;AAG7B;IADC,IAAA,eAAK,EAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAI,EAAE,EAAE,WAAW,EAAE,uBAAuB,EAAE,CAAC;;gDACzC;AArCZ,iBAAiB;IAD7B,IAAA,mBAAS,EAAC,EAAE,WAAW,EAAE,uCAAuC,EAAE,CAAC;GACvD,iBAAiB,CAsC7B;AAtCY,8CAAiB"}
|
|
@@ -12,7 +12,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.SortInput = void 0;
|
|
13
13
|
const graphql_1 = require("@nestjs/graphql");
|
|
14
14
|
const sort_order_emum_1 = require("../enums/sort-order.emum");
|
|
15
|
-
|
|
15
|
+
const core_input_input_1 = require("./core-input.input");
|
|
16
|
+
let SortInput = class SortInput extends core_input_input_1.CoreInput {
|
|
17
|
+
constructor() {
|
|
18
|
+
super(...arguments);
|
|
19
|
+
this.field = undefined;
|
|
20
|
+
this.order = undefined;
|
|
21
|
+
}
|
|
16
22
|
};
|
|
17
23
|
__decorate([
|
|
18
24
|
(0, graphql_1.Field)({ description: 'Field that is to be used for sorting' }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sort.input.js","sourceRoot":"","sources":["../../../../src/core/common/inputs/sort.input.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmD;AACnD,8DAAyD;
|
|
1
|
+
{"version":3,"file":"sort.input.js","sourceRoot":"","sources":["../../../../src/core/common/inputs/sort.input.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmD;AACnD,8DAAyD;AACzD,yDAA+C;AAM/C,IAAa,SAAS,GAAtB,MAAa,SAAU,SAAQ,4BAAS;IAAxC;;QAKE,UAAK,GAAW,SAAS,CAAC;QAM1B,UAAK,GAAkB,SAAS,CAAC;IACnC,CAAC;CAAA,CAAA;AAPC;IADC,IAAA,eAAK,EAAC,EAAE,WAAW,EAAE,sCAAsC,EAAE,CAAC;;wCACrC;AAM1B;IADC,IAAA,eAAK,EAAC,CAAC,IAAI,EAAE,EAAE,CAAC,+BAAa,EAAE,EAAE,WAAW,EAAE,8BAA8B,EAAE,CAAC;;wCAC/C;AAXtB,SAAS;IADrB,IAAA,mBAAS,EAAC,EAAE,WAAW,EAAE,+BAA+B,EAAE,CAAC;GAC/C,SAAS,CAYrB;AAZY,8BAAS"}
|
|
@@ -15,7 +15,7 @@ let CheckResponseInterceptor = class CheckResponseInterceptor {
|
|
|
15
15
|
intercept(context, next) {
|
|
16
16
|
const { currentUser } = context_helper_1.Context.getData(context);
|
|
17
17
|
return next.handle().pipe((0, operators_1.map)((data) => {
|
|
18
|
-
return (0, restricted_decorator_1.checkRestricted)(data, currentUser);
|
|
18
|
+
return (0, restricted_decorator_1.checkRestricted)(data, currentUser, { throwError: false });
|
|
19
19
|
}));
|
|
20
20
|
}
|
|
21
21
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check-response.interceptor.js","sourceRoot":"","sources":["../../../../src/core/common/interceptors/check-response.interceptor.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA4F;AAE5F,8CAAqC;AACrC,6EAAqE;AACrE,8DAAoD;AAMpD,IAAa,wBAAwB,GAArC,MAAa,wBAAwB;IAInC,SAAS,CAAC,OAAyB,EAAE,IAAiB;QAEpD,MAAM,EAAE,WAAW,EAAE,GAAQ,wBAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAGtD,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CACvB,IAAA,eAAG,EAAC,CAAC,IAAI,EAAE,EAAE;YAEX,OAAO,IAAA,sCAAe,EAAC,IAAI,EAAE,WAAW,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"check-response.interceptor.js","sourceRoot":"","sources":["../../../../src/core/common/interceptors/check-response.interceptor.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA4F;AAE5F,8CAAqC;AACrC,6EAAqE;AACrE,8DAAoD;AAMpD,IAAa,wBAAwB,GAArC,MAAa,wBAAwB;IAInC,SAAS,CAAC,OAAyB,EAAE,IAAiB;QAEpD,MAAM,EAAE,WAAW,EAAE,GAAQ,wBAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAGtD,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CACvB,IAAA,eAAG,EAAC,CAAC,IAAI,EAAE,EAAE;YAEX,OAAO,IAAA,sCAAe,EAAC,IAAI,EAAE,WAAW,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;QACnE,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;CACF,CAAA;AAhBY,wBAAwB;IADpC,IAAA,mBAAU,GAAE;GACA,wBAAwB,CAgBpC;AAhBY,4DAAwB"}
|
|
@@ -1,24 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ApolloDriverConfig } from '@nestjs/apollo';
|
|
2
2
|
import { JwtModuleOptions } from '@nestjs/jwt';
|
|
3
|
+
import { MongooseModuleOptions } from '@nestjs/mongoose/dist/interfaces/mongoose-options.interface';
|
|
3
4
|
import { ServeStaticOptions } from '@nestjs/platform-express/interfaces/serve-static-options.interface';
|
|
4
5
|
import * as SMTPTransport from 'nodemailer/lib/smtp-transport';
|
|
5
|
-
import { MongooseModuleOptions } from '@nestjs/mongoose/dist/interfaces/mongoose-options.interface';
|
|
6
6
|
import { MailjetOptions } from './mailjet-options.interface';
|
|
7
7
|
export interface IServerOptions {
|
|
8
8
|
env?: string;
|
|
9
|
-
graphQl?:
|
|
10
|
-
autoSchemaFile?: string;
|
|
11
|
-
context?: (context: {
|
|
12
|
-
[key: string]: any;
|
|
13
|
-
req: any;
|
|
14
|
-
}) => {
|
|
15
|
-
[key: string]: any;
|
|
16
|
-
req: any;
|
|
17
|
-
};
|
|
18
|
-
debug?: boolean;
|
|
19
|
-
installSubscriptionHandlers?: boolean;
|
|
20
|
-
introspection?: boolean;
|
|
21
|
-
} & GqlModuleOptions;
|
|
9
|
+
graphQl?: ApolloDriverConfig;
|
|
22
10
|
jwt?: {
|
|
23
11
|
privateKey?: string;
|
|
24
12
|
publicKey?: string;
|
|
@@ -1,24 +1,30 @@
|
|
|
1
1
|
export declare abstract class CoreModel {
|
|
2
|
+
static init<T extends CoreModel>(this: new (...args: any[]) => T, ...args: any[]): T;
|
|
2
3
|
static map<T extends CoreModel>(this: new (...args: any[]) => T, data: Partial<T> | Record<string, any>, options?: {
|
|
3
4
|
cloneDeep?: boolean;
|
|
4
5
|
funcAllowed?: boolean;
|
|
6
|
+
init?: any;
|
|
5
7
|
item?: T;
|
|
6
8
|
mapId?: boolean;
|
|
7
9
|
}): T;
|
|
8
10
|
static mapDeep<T extends CoreModel>(this: new (...args: any[]) => T, data: Partial<T> | Record<string, any>, options?: {
|
|
9
11
|
cloneDeep?: boolean;
|
|
10
12
|
funcAllowed?: boolean;
|
|
13
|
+
init?: any;
|
|
11
14
|
item?: T;
|
|
12
15
|
mapId?: boolean;
|
|
13
16
|
}): T;
|
|
17
|
+
init<T extends CoreModel>(...args: any[]): this;
|
|
14
18
|
map(data: Partial<this> | Record<string, any>, options?: {
|
|
15
19
|
cloneDeep?: boolean;
|
|
16
20
|
funcAllowed?: boolean;
|
|
21
|
+
init?: any;
|
|
17
22
|
mapId?: boolean;
|
|
18
23
|
}): this;
|
|
19
24
|
mapDeep(data: Partial<this> | Record<string, any>, options?: {
|
|
20
25
|
cloneDeep?: boolean;
|
|
21
26
|
funcAllowed?: boolean;
|
|
27
|
+
init?: any;
|
|
22
28
|
mapId?: boolean;
|
|
23
29
|
}): this;
|
|
24
30
|
}
|
|
@@ -3,22 +3,31 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.CoreModel = void 0;
|
|
4
4
|
const model_helper_1 = require("../helpers/model.helper");
|
|
5
5
|
class CoreModel {
|
|
6
|
+
static init(...args) {
|
|
7
|
+
const item = new this();
|
|
8
|
+
return item.init(args);
|
|
9
|
+
}
|
|
6
10
|
static map(data, options = {}) {
|
|
11
|
+
const config = Object.assign({ init: true }, options);
|
|
7
12
|
const item = options.item || new this();
|
|
8
13
|
delete options.item;
|
|
9
|
-
return item.map(data,
|
|
14
|
+
return item.map(data, config);
|
|
10
15
|
}
|
|
11
16
|
static mapDeep(data, options = {}) {
|
|
17
|
+
const config = Object.assign({ init: true }, options);
|
|
12
18
|
const item = options.item || new this();
|
|
13
19
|
delete options.item;
|
|
14
|
-
return item.mapDeep(data,
|
|
20
|
+
return item.mapDeep(data, config);
|
|
21
|
+
}
|
|
22
|
+
init(...args) {
|
|
23
|
+
return this;
|
|
15
24
|
}
|
|
16
25
|
map(data, options = {}) {
|
|
17
|
-
const config = Object.assign({ cloneDeep: false, funcAllowed: false, mapId: false }, options);
|
|
18
|
-
return model_helper_1.ModelHelper.map(data, this, config);
|
|
26
|
+
const config = Object.assign({ cloneDeep: false, funcAllowed: false, init: undefined, mapId: false }, options);
|
|
27
|
+
return config.init ? model_helper_1.ModelHelper.map(data, this, config).init(config.init) : model_helper_1.ModelHelper.map(data, this, config);
|
|
19
28
|
}
|
|
20
29
|
mapDeep(data, options = {}) {
|
|
21
|
-
const config = Object.assign({ cloneDeep: true, funcAllowed: false, mapId: false }, options);
|
|
30
|
+
const config = Object.assign({ cloneDeep: true, funcAllowed: false, init: undefined, mapId: false }, options);
|
|
22
31
|
return this.map(data, config);
|
|
23
32
|
}
|
|
24
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-model.model.js","sourceRoot":"","sources":["../../../../src/core/common/models/core-model.model.ts"],"names":[],"mappings":";;;AAAA,0DAAsD;
|
|
1
|
+
{"version":3,"file":"core-model.model.js","sourceRoot":"","sources":["../../../../src/core/common/models/core-model.model.ts"],"names":[],"mappings":";;;AAAA,0DAAsD;AAYtD,MAAsB,SAAS;IAItB,MAAM,CAAC,IAAI,CAAuD,GAAG,IAAW;QACrF,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAKM,MAAM,CAAC,GAAG,CAEf,IAAsC,EACtC,UAMI,EAAE;QAEN,MAAM,MAAM,mBACV,IAAI,EAAE,IAAI,IACP,OAAO,CACX,CAAC;QAEF,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QACxC,OAAO,OAAO,CAAC,IAAI,CAAC;QACpB,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAChC,CAAC;IAUM,MAAM,CAAC,OAAO,CAEnB,IAAsC,EACtC,UAMI,EAAE;QAEN,MAAM,MAAM,mBACV,IAAI,EAAE,IAAI,IACP,OAAO,CACX,CAAC;QAEF,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QACxC,OAAO,OAAO,CAAC,IAAI,CAAC;QACpB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACpC,CAAC;IAMM,IAAI,CAAsB,GAAG,IAAW;QAC7C,OAAO,IAAI,CAAC;IACd,CAAC;IAKM,GAAG,CACR,IAAyC,EACzC,UAKI,EAAE;QAEN,MAAM,MAAM,mBACV,SAAS,EAAE,KAAK,EAChB,WAAW,EAAE,KAAK,EAClB,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,KAAK,IACT,OAAO,CACX,CAAC;QACF,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,0BAAW,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,0BAAW,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACnH,CAAC;IAUM,OAAO,CACZ,IAAyC,EACzC,UAKI,EAAE;QAEN,MAAM,MAAM,mBACV,SAAS,EAAE,IAAI,EACf,WAAW,EAAE,KAAK,EAClB,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,KAAK,IACT,OAAO,CACX,CAAC;QACF,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAChC,CAAC;CACF;AAtHD,8BAsHC"}
|
|
@@ -1,36 +1,12 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { Types } from 'mongoose';
|
|
2
|
+
import { CoreModel } from './core-model.model';
|
|
3
|
+
export declare abstract class CorePersistenceModel extends CoreModel {
|
|
4
|
+
get _id(): Types.ObjectId;
|
|
4
5
|
id: string;
|
|
5
6
|
createdAt: Date;
|
|
6
7
|
labels: string[];
|
|
7
8
|
ownerIds: string[];
|
|
8
9
|
tags: string[];
|
|
9
10
|
updatedAt: Date;
|
|
10
|
-
|
|
11
|
-
cloneDeep?: boolean;
|
|
12
|
-
funcAllowed?: boolean;
|
|
13
|
-
item?: T;
|
|
14
|
-
mapId?: boolean;
|
|
15
|
-
merge?: boolean;
|
|
16
|
-
}): T;
|
|
17
|
-
static mapDeep<T extends CorePersistenceModel>(this: new (...args: any[]) => T, data: Partial<T> | Record<string, any>, options?: {
|
|
18
|
-
cloneDeep?: boolean;
|
|
19
|
-
funcAllowed?: boolean;
|
|
20
|
-
item?: T;
|
|
21
|
-
mapId?: boolean;
|
|
22
|
-
merge?: boolean;
|
|
23
|
-
}): T;
|
|
24
|
-
map(data: Partial<this> | Record<string, any>, options?: {
|
|
25
|
-
cloneDeep?: boolean;
|
|
26
|
-
funcAllowed?: boolean;
|
|
27
|
-
mapId?: boolean;
|
|
28
|
-
merge?: boolean;
|
|
29
|
-
}): this;
|
|
30
|
-
mapDeep(data: Partial<this> | Record<string, any>, options?: {
|
|
31
|
-
cloneDeep?: boolean;
|
|
32
|
-
funcAllowed?: boolean;
|
|
33
|
-
mapId?: boolean;
|
|
34
|
-
merge?: boolean;
|
|
35
|
-
}): this;
|
|
11
|
+
init(): this;
|
|
36
12
|
}
|
|
@@ -11,53 +11,31 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.CorePersistenceModel = void 0;
|
|
13
13
|
const graphql_1 = require("@nestjs/graphql");
|
|
14
|
-
const _ = require("lodash");
|
|
15
|
-
const model_helper_1 = require("../helpers/model.helper");
|
|
16
14
|
const mongoose_1 = require("@nestjs/mongoose");
|
|
17
|
-
const
|
|
18
|
-
|
|
15
|
+
const mongoose_2 = require("mongoose");
|
|
16
|
+
const core_model_model_1 = require("./core-model.model");
|
|
17
|
+
let CorePersistenceModel = class CorePersistenceModel extends core_model_model_1.CoreModel {
|
|
19
18
|
constructor() {
|
|
19
|
+
super(...arguments);
|
|
20
20
|
this.id = undefined;
|
|
21
|
-
this.createdAt =
|
|
22
|
-
this.labels =
|
|
23
|
-
this.ownerIds =
|
|
24
|
-
this.tags =
|
|
25
|
-
this.updatedAt =
|
|
21
|
+
this.createdAt = undefined;
|
|
22
|
+
this.labels = undefined;
|
|
23
|
+
this.ownerIds = undefined;
|
|
24
|
+
this.tags = undefined;
|
|
25
|
+
this.updatedAt = undefined;
|
|
26
26
|
}
|
|
27
27
|
get _id() {
|
|
28
|
-
return new
|
|
28
|
+
return new mongoose_2.Types.ObjectId(this.id);
|
|
29
29
|
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
delete options.item;
|
|
38
|
-
return item.mapDeep(data, options);
|
|
39
|
-
}
|
|
40
|
-
map(data, options = {}) {
|
|
41
|
-
const config = Object.assign({ cloneDeep: false, funcAllowed: false, mapId: false, merge: false }, options);
|
|
42
|
-
let preparedData = data;
|
|
43
|
-
preparedData = model_helper_1.ModelHelper.prepareMap(preparedData, this, config);
|
|
44
|
-
if (config.cloneDeep) {
|
|
45
|
-
preparedData = _.cloneDeep(preparedData);
|
|
46
|
-
}
|
|
47
|
-
if (this['assign'] !== 'function') {
|
|
48
|
-
if (!config.merge) {
|
|
49
|
-
Object.assign(this, preparedData);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
this['assign'](preparedData, { mergeObjects: config.merge });
|
|
54
|
-
}
|
|
30
|
+
init() {
|
|
31
|
+
super.init();
|
|
32
|
+
this.createdAt = this.createdAt === undefined ? new Date() : this.createdAt;
|
|
33
|
+
this.labels = this.labels === undefined ? [] : this.labels;
|
|
34
|
+
this.ownerIds = this.ownerIds === undefined ? [] : this.ownerIds;
|
|
35
|
+
this.tags = this.tags === undefined ? [] : this.tags;
|
|
36
|
+
this.updatedAt = this.tags === undefined ? this.createdAt : this.updatedAt;
|
|
55
37
|
return this;
|
|
56
38
|
}
|
|
57
|
-
mapDeep(data, options = {}) {
|
|
58
|
-
const config = Object.assign({ cloneDeep: true, funcAllowed: false, mapId: false, merge: false }, options);
|
|
59
|
-
return this.map(data, config);
|
|
60
|
-
}
|
|
61
39
|
};
|
|
62
40
|
__decorate([
|
|
63
41
|
(0, graphql_1.Field)((type) => graphql_1.ID, {
|
|
@@ -68,7 +46,7 @@ __decorate([
|
|
|
68
46
|
], CorePersistenceModel.prototype, "id", void 0);
|
|
69
47
|
__decorate([
|
|
70
48
|
(0, graphql_1.Field)({ description: 'Created date', nullable: true }),
|
|
71
|
-
(0, mongoose_1.Prop)(),
|
|
49
|
+
(0, mongoose_1.Prop)({ onCreate: () => new Date() }),
|
|
72
50
|
__metadata("design:type", Date)
|
|
73
51
|
], CorePersistenceModel.prototype, "createdAt", void 0);
|
|
74
52
|
__decorate([
|
|
@@ -105,7 +83,7 @@ CorePersistenceModel = __decorate([
|
|
|
105
83
|
description: 'Persistence model which will be saved in DB',
|
|
106
84
|
isAbstract: true,
|
|
107
85
|
}),
|
|
108
|
-
(0, mongoose_1.Schema)()
|
|
86
|
+
(0, mongoose_1.Schema)({ timestamps: true })
|
|
109
87
|
], CorePersistenceModel);
|
|
110
88
|
exports.CorePersistenceModel = CorePersistenceModel;
|
|
111
89
|
//# sourceMappingURL=core-persistence.model.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-persistence.model.js","sourceRoot":"","sources":["../../../../src/core/common/models/core-persistence.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAwD;AACxD
|
|
1
|
+
{"version":3,"file":"core-persistence.model.js","sourceRoot":"","sources":["../../../../src/core/common/models/core-persistence.model.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { ArgumentMetadata, PipeTransform } from '@nestjs/common';
|
|
2
|
-
export declare class CheckInputPipe implements PipeTransform
|
|
2
|
+
export declare class CheckInputPipe implements PipeTransform {
|
|
3
3
|
protected readonly context: any;
|
|
4
4
|
constructor(context: any);
|
|
5
|
-
transform(value: any,
|
|
6
|
-
protected isBasicType(metatype: any): boolean;
|
|
5
|
+
transform(value: any, metadata: ArgumentMetadata): Promise<any>;
|
|
7
6
|
}
|
|
@@ -15,35 +15,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
15
15
|
exports.CheckInputPipe = void 0;
|
|
16
16
|
const common_1 = require("@nestjs/common");
|
|
17
17
|
const graphql_1 = require("@nestjs/graphql");
|
|
18
|
-
const class_transformer_1 = require("class-transformer");
|
|
19
|
-
const class_validator_1 = require("class-validator");
|
|
20
|
-
const restricted_decorator_1 = require("../decorators/restricted.decorator");
|
|
21
18
|
const context_helper_1 = require("../helpers/context.helper");
|
|
19
|
+
const input_helper_1 = require("../helpers/input.helper");
|
|
22
20
|
let CheckInputPipe = class CheckInputPipe {
|
|
23
21
|
constructor(context) {
|
|
24
22
|
this.context = context;
|
|
25
23
|
}
|
|
26
|
-
async transform(value,
|
|
27
|
-
|
|
28
|
-
return value;
|
|
29
|
-
}
|
|
24
|
+
async transform(value, metadata) {
|
|
25
|
+
const metatype = metadata === null || metadata === void 0 ? void 0 : metadata.metatype;
|
|
30
26
|
const { user } = context_helper_1.Context.getData(this.context);
|
|
31
|
-
|
|
32
|
-
const plainValue = JSON.parse(JSON.stringify(value));
|
|
33
|
-
const object = (0, class_transformer_1.plainToClass)(metatype, plainValue);
|
|
34
|
-
const errors = await (0, class_validator_1.validate)(object);
|
|
35
|
-
if (errors.length > 0) {
|
|
36
|
-
throw new common_1.BadRequestException('Validation failed');
|
|
37
|
-
}
|
|
38
|
-
return value;
|
|
39
|
-
}
|
|
40
|
-
isBasicType(metatype) {
|
|
41
|
-
const types = [String, Boolean, Number, Array, Object, Buffer, ArrayBuffer];
|
|
42
|
-
return types.includes(metatype);
|
|
27
|
+
return input_helper_1.InputHelper.check(value, user, metatype);
|
|
43
28
|
}
|
|
44
29
|
};
|
|
45
30
|
CheckInputPipe = __decorate([
|
|
46
|
-
(0, common_1.Injectable)(
|
|
31
|
+
(0, common_1.Injectable)(),
|
|
47
32
|
__param(0, (0, common_1.Inject)(graphql_1.CONTEXT)),
|
|
48
33
|
__metadata("design:paramtypes", [Object])
|
|
49
34
|
], CheckInputPipe);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check-input.pipe.js","sourceRoot":"","sources":["../../../../src/core/common/pipes/check-input.pipe.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"check-input.pipe.js","sourceRoot":"","sources":["../../../../src/core/common/pipes/check-input.pipe.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAqF;AACrF,6CAA0C;AAC1C,8DAAoD;AACpD,0DAAsD;AAUtD,IAAa,cAAc,GAA3B,MAAa,cAAc;IAIzB,YAAgD,OAAO;QAAP,YAAO,GAAP,OAAO,CAAA;IAAG,CAAC;IAK3D,KAAK,CAAC,SAAS,CAAC,KAAU,EAAE,QAA0B;QAEpD,MAAM,QAAQ,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,CAAC;QAGpC,MAAM,EAAE,IAAI,EAAE,GAAQ,wBAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAGpD,OAAO,0BAAW,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;IAClD,CAAC;CACF,CAAA;AAnBY,cAAc;IAD1B,IAAA,mBAAU,GAAE;IAKE,WAAA,IAAA,eAAM,EAAC,iBAAO,CAAC,CAAA;;GAJjB,cAAc,CAmB1B;AAnBY,wCAAc"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.MapAndValidatePipe = void 0;
|
|
10
|
+
const common_1 = require("@nestjs/common");
|
|
11
|
+
const class_transformer_1 = require("class-transformer");
|
|
12
|
+
const class_validator_1 = require("class-validator");
|
|
13
|
+
const input_helper_1 = require("../helpers/input.helper");
|
|
14
|
+
let MapAndValidatePipe = class MapAndValidatePipe {
|
|
15
|
+
async transform(value, metadata) {
|
|
16
|
+
var _a, _b;
|
|
17
|
+
const { metatype } = metadata;
|
|
18
|
+
if (typeof value !== 'object' || !metatype || input_helper_1.InputHelper.isBasicType(metatype)) {
|
|
19
|
+
return value;
|
|
20
|
+
}
|
|
21
|
+
if (!(value instanceof metatype)) {
|
|
22
|
+
if ((_a = metatype) === null || _a === void 0 ? void 0 : _a.map) {
|
|
23
|
+
value = (_b = metatype) === null || _b === void 0 ? void 0 : _b.map(value);
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
value = (0, class_transformer_1.plainToInstance)(metatype, value);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
const errors = await (0, class_validator_1.validate)(value);
|
|
30
|
+
if (errors.length > 0) {
|
|
31
|
+
throw new common_1.BadRequestException('Input validation failed');
|
|
32
|
+
}
|
|
33
|
+
return value;
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
MapAndValidatePipe = __decorate([
|
|
37
|
+
(0, common_1.Injectable)()
|
|
38
|
+
], MapAndValidatePipe);
|
|
39
|
+
exports.MapAndValidatePipe = MapAndValidatePipe;
|
|
40
|
+
//# sourceMappingURL=map-and-validate.pipe.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-and-validate.pipe.js","sourceRoot":"","sources":["../../../../src/core/common/pipes/map-and-validate.pipe.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAkG;AAClG,yDAAoD;AACpD,qDAA2C;AAC3C,0DAAsD;AAGtD,IAAa,kBAAkB,GAA/B,MAAa,kBAAkB;IAC7B,KAAK,CAAC,SAAS,CAAC,KAAU,EAAE,QAA0B;;QACpD,MAAM,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC;QAE9B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,QAAQ,IAAI,0BAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE;YAC/E,OAAO,KAAK,CAAC;SACd;QAGD,IAAI,CAAC,CAAC,KAAK,YAAY,QAAQ,CAAC,EAAE;YAChC,IAAI,MAAC,QAAgB,0CAAE,GAAG,EAAE;gBAC1B,KAAK,GAAG,MAAC,QAAgB,0CAAE,GAAG,CAAC,KAAK,CAAC,CAAC;aACvC;iBAAM;gBACL,KAAK,GAAG,IAAA,mCAAe,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;aAC1C;SACF;QAGD,MAAM,MAAM,GAAG,MAAM,IAAA,0BAAQ,EAAC,KAAK,CAAC,CAAC;QACrC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YACrB,MAAM,IAAI,4BAAmB,CAAC,yBAAyB,CAAC,CAAC;SAC1D;QAED,OAAO,KAAK,CAAC;IACf,CAAC;CACF,CAAA;AAzBY,kBAAkB;IAD9B,IAAA,mBAAU,GAAE;GACA,kBAAkB,CAyB9B;AAzBY,gDAAkB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plain-input.type.js","sourceRoot":"","sources":["../../../../src/core/common/types/plain-input.type.ts"],"names":[],"mappings":""}
|
|
@@ -11,10 +11,16 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.CoreAuthModel = void 0;
|
|
13
13
|
const graphql_1 = require("@nestjs/graphql");
|
|
14
|
-
|
|
14
|
+
const core_model_model_1 = require("../../common/models/core-model.model");
|
|
15
|
+
let CoreAuthModel = class CoreAuthModel extends core_model_model_1.CoreModel {
|
|
15
16
|
constructor() {
|
|
17
|
+
super(...arguments);
|
|
16
18
|
this.token = undefined;
|
|
17
19
|
}
|
|
20
|
+
init() {
|
|
21
|
+
super.init();
|
|
22
|
+
return this;
|
|
23
|
+
}
|
|
18
24
|
};
|
|
19
25
|
__decorate([
|
|
20
26
|
(0, graphql_1.Field)({ description: 'JavaScript Web Token (JWT)' }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-auth.model.js","sourceRoot":"","sources":["../../../../src/core/modules/auth/core-auth.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAoD;
|
|
1
|
+
{"version":3,"file":"core-auth.model.js","sourceRoot":"","sources":["../../../../src/core/modules/auth/core-auth.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAoD;AACpD,2EAAiE;AAMjE,IAAa,aAAa,GAA1B,MAAa,aAAc,SAAQ,4BAAS;IAA5C;;QASE,UAAK,GAAW,SAAS,CAAC;IAc5B,CAAC;IALC,IAAI;QACF,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAdC;IADC,IAAA,eAAK,EAAC,EAAE,WAAW,EAAE,4BAA4B,EAAE,CAAC;;4CAC3B;AATf,aAAa;IADzB,IAAA,oBAAU,EAAC,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;GAC7C,aAAa,CAuBzB;AAvBY,sCAAa"}
|
|
@@ -3,5 +3,5 @@ import { CoreAuthService } from './services/core-auth.service';
|
|
|
3
3
|
export declare class CoreAuthResolver {
|
|
4
4
|
protected readonly authService: CoreAuthService;
|
|
5
5
|
constructor(authService: CoreAuthService);
|
|
6
|
-
signIn(email: string, password: string): Promise<CoreAuthModel
|
|
6
|
+
signIn(email: string, password: string): Promise<Partial<CoreAuthModel>>;
|
|
7
7
|
}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import { Document } from 'mongoose';
|
|
1
2
|
import { CorePersistenceModel } from '../../common/models/core-persistence.model';
|
|
3
|
+
export declare type CoreUserModelDocument = CoreUserModel & Document;
|
|
2
4
|
export declare abstract class CoreUserModel extends CorePersistenceModel {
|
|
3
5
|
email: string;
|
|
4
6
|
firstName: string;
|
|
@@ -11,4 +13,5 @@ export declare abstract class CoreUserModel extends CorePersistenceModel {
|
|
|
11
13
|
verified: boolean;
|
|
12
14
|
hasRole(roles: string | string[]): boolean;
|
|
13
15
|
hasAllRoles(roles: string | string[]): boolean;
|
|
16
|
+
init(): this;
|
|
14
17
|
}
|
|
@@ -21,11 +21,11 @@ let CoreUserModel = class CoreUserModel extends core_persistence_model_1.CorePer
|
|
|
21
21
|
this.firstName = undefined;
|
|
22
22
|
this.lastName = undefined;
|
|
23
23
|
this.password = undefined;
|
|
24
|
-
this.roles =
|
|
24
|
+
this.roles = undefined;
|
|
25
25
|
this.username = undefined;
|
|
26
26
|
this.passwordResetToken = undefined;
|
|
27
27
|
this.verificationToken = undefined;
|
|
28
|
-
this.verified =
|
|
28
|
+
this.verified = undefined;
|
|
29
29
|
}
|
|
30
30
|
hasRole(roles) {
|
|
31
31
|
if (typeof roles === 'string') {
|
|
@@ -45,6 +45,11 @@ let CoreUserModel = class CoreUserModel extends core_persistence_model_1.CorePer
|
|
|
45
45
|
}
|
|
46
46
|
return !roles ? true : roles.every((role) => this.roles.includes(role));
|
|
47
47
|
}
|
|
48
|
+
init() {
|
|
49
|
+
super.init();
|
|
50
|
+
this.roles = this.roles === undefined ? [] : this.roles;
|
|
51
|
+
return this;
|
|
52
|
+
}
|
|
48
53
|
};
|
|
49
54
|
__decorate([
|
|
50
55
|
(0, graphql_1.Field)({ description: 'Email of the user', nullable: true }),
|
|
@@ -93,11 +98,11 @@ __decorate([
|
|
|
93
98
|
__decorate([
|
|
94
99
|
(0, graphql_1.Field)((type) => Boolean, { description: 'Verification state of the user', nullable: true }),
|
|
95
100
|
(0, mongoose_1.Prop)({ type: Boolean }),
|
|
96
|
-
__metadata("design:type",
|
|
101
|
+
__metadata("design:type", Boolean)
|
|
97
102
|
], CoreUserModel.prototype, "verified", void 0);
|
|
98
103
|
CoreUserModel = __decorate([
|
|
99
104
|
(0, graphql_1.ObjectType)({ description: 'User', isAbstract: true }),
|
|
100
|
-
(0, mongoose_1.Schema)()
|
|
105
|
+
(0, mongoose_1.Schema)({ timestamps: true })
|
|
101
106
|
], CoreUserModel);
|
|
102
107
|
exports.CoreUserModel = CoreUserModel;
|
|
103
108
|
//# sourceMappingURL=core-user.model.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-user.model.js","sourceRoot":"","sources":["../../../../src/core/modules/user/core-user.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAoD;AACpD,qDAAsD;
|
|
1
|
+
{"version":3,"file":"core-user.model.js","sourceRoot":"","sources":["../../../../src/core/modules/user/core-user.model.ts"],"names":[],"mappings":"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"}
|