@spinajs/rbac 2.0.182 → 2.0.184
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/lib/cjs/cli/BanUser.js +3 -3
- package/lib/cjs/cli/BanUser.js.map +1 -1
- package/lib/cjs/index.js +1 -1
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/jobs/UnbanUser.js +1 -1
- package/lib/cjs/jobs/UnbanUser.js.map +1 -1
- package/lib/cjs/models/User.d.ts +10 -5
- package/lib/cjs/models/User.d.ts.map +1 -1
- package/lib/cjs/models/User.js +59 -56
- package/lib/cjs/models/User.js.map +1 -1
- package/lib/mjs/cli/BanUser.js +3 -3
- package/lib/mjs/cli/BanUser.js.map +1 -1
- package/lib/mjs/index.js +1 -1
- package/lib/mjs/index.js.map +1 -1
- package/lib/mjs/jobs/UnbanUser.js +1 -1
- package/lib/mjs/jobs/UnbanUser.js.map +1 -1
- package/lib/mjs/models/User.d.ts +10 -5
- package/lib/mjs/models/User.d.ts.map +1 -1
- package/lib/mjs/models/User.js +59 -56
- package/lib/mjs/models/User.js.map +1 -1
- package/lib/tsconfig.cjs.tsbuildinfo +1 -1
- package/lib/tsconfig.mjs.tsbuildinfo +1 -1
- package/package.json +10 -10
package/lib/cjs/cli/BanUser.js
CHANGED
|
@@ -26,8 +26,8 @@ let BanUser = class BanUser extends cli_1.CliCommand {
|
|
|
26
26
|
user.IsBanned = ban;
|
|
27
27
|
await user.update();
|
|
28
28
|
if (ban) {
|
|
29
|
-
await (user.Metadata['ban
|
|
30
|
-
await (user.Metadata['ban
|
|
29
|
+
await (user.Metadata['user:ban.duration'] = duration);
|
|
30
|
+
await (user.Metadata['user:ban.issued'] = luxon_1.DateTime.now().toISO());
|
|
31
31
|
this.Queue.emit(new UserBanned_js_1.UserBanned(idOrUuid, duration));
|
|
32
32
|
if (duration !== 0) {
|
|
33
33
|
// schedule job with delay equals ban duration
|
|
@@ -40,7 +40,7 @@ let BanUser = class BanUser extends cli_1.CliCommand {
|
|
|
40
40
|
}
|
|
41
41
|
else {
|
|
42
42
|
// cleanup meta
|
|
43
|
-
await UserMetadata_js_1.UserMetadata.destroy().where('Key', 'like', 'user:ban
|
|
43
|
+
await UserMetadata_js_1.UserMetadata.destroy().where('Key', 'like', '%user:ban').andWhere('User', user);
|
|
44
44
|
this.Queue.emit(new UserUnbanned_js_1.UserUnbanned(idOrUuid));
|
|
45
45
|
this.Log.warn(`No user with id: ${idOrUuid} found`);
|
|
46
46
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BanUser.js","sourceRoot":"","sources":["../../../src/cli/BanUser.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iEAA2D;AAC3D,0CAA8C;AAC9C,sCAA2C;AAC3C,sCAA6D;AAC7D,oCAAyC;AACzC,+CAAyC;AACzC,2DAAqD;AACrD,+DAAyD;AACzD,uDAAiD;AACjD,iCAAiC;AAM1B,IAAM,OAAO,GAAb,MAAM,OAAQ,SAAQ,gBAAU;IAO9B,KAAK,CAAC,OAAO,CAAC,QAAgB,EAAE,GAAY,EAAE,QAAgB;QACnE,MAAM,IAAI,GAAG,MAAM,cAAI,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAClH,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;QAEpB,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAEpB,IAAI,GAAG,EAAE;YACP,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"BanUser.js","sourceRoot":"","sources":["../../../src/cli/BanUser.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iEAA2D;AAC3D,0CAA8C;AAC9C,sCAA2C;AAC3C,sCAA6D;AAC7D,oCAAyC;AACzC,+CAAyC;AACzC,2DAAqD;AACrD,+DAAyD;AACzD,uDAAiD;AACjD,iCAAiC;AAM1B,IAAM,OAAO,GAAb,MAAM,OAAQ,SAAQ,gBAAU;IAO9B,KAAK,CAAC,OAAO,CAAC,QAAgB,EAAE,GAAY,EAAE,QAAgB;QACnE,MAAM,IAAI,GAAG,MAAM,cAAI,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAClH,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;QAEpB,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAEpB,IAAI,GAAG,EAAE;YACP,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,GAAG,QAAQ,CAAC,CAAC;YACtD,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,GAAG,gBAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;YAElE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,0BAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;YAEpD,IAAI,QAAQ,KAAK,CAAC,EAAE;gBAClB,8CAA8C;gBAC9C,+CAA+C;gBAC/C,MAAM,GAAG,GAAG,IAAI,wBAAS,CAAC,QAAQ,CAAC,CAAC;gBACpC,GAAG,CAAC,aAAa,GAAG,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC;gBAEzC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACtB;YAED,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,8BAA8B,GAAG,EAAE,CAAC,CAAC;SACvD;aAAM;YACL,eAAe;YACf,MAAM,8BAAY,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAEtF,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,8BAAY,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC5C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,oBAAoB,QAAQ,QAAQ,CAAC,CAAC;SACrD;IACH,CAAC;CACF,CAAA;AArCY,0BAAO;AAER;IADT,IAAA,YAAM,EAAC,MAAM,CAAC;8BACA,SAAG;oCAAC;AAGT;IADT,IAAA,eAAU,EAAC,oBAAY,CAAC;8BACR,oBAAY;sCAAC;kBALnB,OAAO;IAJnB,IAAA,aAAO,EAAC,eAAe,EAAE,8BAA8B,CAAC;IACxD,IAAA,cAAQ,EAAC,UAAU,EAAE,oBAAoB,CAAC;IAC1C,IAAA,cAAQ,EAAC,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACvG,IAAA,cAAQ,EAAC,UAAU,EAAE,yCAAyC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;GAC5F,OAAO,CAqCnB"}
|
package/lib/cjs/index.js
CHANGED
package/lib/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kEAA+B;AAC/B,iDAA8C;AAwBrC,8FAxBA,6BAAa,OAwBA;AAtBtB,oCAAuE;AACvE,0DAAuD;AAEvD,sCAAmC;AAEnC,qBAAmB;AACnB,yBAAuB;AACvB,wBAAsB;AACtB,8CAAwC;AAExC,kDAAgC;AAChC,4CAA0B;AAC1B,gDAA8B;AAC9B,+CAA6B;AAC7B,mDAAiC;AACjC,2DAAyC;AACzC,2DAAyC;AACzC,kFAAgE;AAChE,oDAAkC;AAElC,wEAAwE;AACxE,MAAM,EAAE,UAAU,EAAE,GAAG,uBAAE,CAAC;AACF,gCAAU;AAG3B,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,iBAAY;IACzC,SAAS;QACd,MAAM,EAAE,GAAG,IAAI,6BAAa,EAAE,CAAC;QAC/B,OAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACzC,OAAE,CAAC,IAAI,CAAC,2BAA2B,EAAE,CAAC,SAAqB,EAAE,aAA4B,EAAE,EAAE;YAC3F,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,CAAgB,eAAe,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAEhD,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,SAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC7C,GAAG,CAAC,IAAI,CAAC,wGAAwG,CAAC,CAAC;aACpH;iBAAM;gBACL,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;aACtB;QACH,CAAC,CAAC,CAAC;QAEH;;WAEG;QACH,OAAE,CAAC,QAAQ,CAAC,CAAC,CAAa,EAAE,QAAyB,EAAE,EAAE;YACvD,OAAO,IAAI,cAAI,CAAC,QAAQ,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC;QAEzB,OAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE;YAChB,MAAM,IAAI,GAAG,OAAE,CAAC,GAAG,CAAC,6BAAa,CAAC,CAAC;YACnC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;YAEhE,OAAO,IAAI,cAAI,CAAC;gBACd,KAAK,EAAE,OAAO;gBACd,KAAK,EAAE,mBAAmB;gBAC1B,IAAI,EAAE,CAAC,OAAO,CAAC;gBACf,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kEAA+B;AAC/B,iDAA8C;AAwBrC,8FAxBA,6BAAa,OAwBA;AAtBtB,oCAAuE;AACvE,0DAAuD;AAEvD,sCAAmC;AAEnC,qBAAmB;AACnB,yBAAuB;AACvB,wBAAsB;AACtB,8CAAwC;AAExC,kDAAgC;AAChC,4CAA0B;AAC1B,gDAA8B;AAC9B,+CAA6B;AAC7B,mDAAiC;AACjC,2DAAyC;AACzC,2DAAyC;AACzC,kFAAgE;AAChE,oDAAkC;AAElC,wEAAwE;AACxE,MAAM,EAAE,UAAU,EAAE,GAAG,uBAAE,CAAC;AACF,gCAAU;AAG3B,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,iBAAY;IACzC,SAAS;QACd,MAAM,EAAE,GAAG,IAAI,6BAAa,EAAE,CAAC;QAC/B,OAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACzC,OAAE,CAAC,IAAI,CAAC,2BAA2B,EAAE,CAAC,SAAqB,EAAE,aAA4B,EAAE,EAAE;YAC3F,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,CAAgB,eAAe,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAEhD,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,SAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC7C,GAAG,CAAC,IAAI,CAAC,wGAAwG,CAAC,CAAC;aACpH;iBAAM;gBACL,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;aACtB;QACH,CAAC,CAAC,CAAC;QAEH;;WAEG;QACH,OAAE,CAAC,QAAQ,CAAC,CAAC,CAAa,EAAE,QAAyB,EAAE,EAAE;YACvD,OAAO,IAAI,cAAI,CAAC,QAAQ,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC;QAEzB,OAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE;YAChB,MAAM,IAAI,GAAG,OAAE,CAAC,GAAG,CAAC,6BAAa,CAAC,CAAC;YACnC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;YAEhE,OAAO,IAAI,cAAI,CAAC;gBACd,KAAK,EAAE,OAAO;gBACd,KAAK,EAAE,mBAAmB;gBAC1B,IAAI,EAAE,CAAC,OAAO,CAAC;gBACf,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC;IAChC,CAAC;CACF,CAAA;AAnCY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,eAAU,EAAC,iBAAY,CAAC;GACZ,gBAAgB,CAmC5B"}
|
|
@@ -24,7 +24,7 @@ let UnbanUser = class UnbanUser extends queue_1.QueueJob {
|
|
|
24
24
|
const user = await User_js_1.User.where('Id', this.UserUUID).orWhere('Uuid', this.UserUUID).firstOrThrow(new Error('User not found'));
|
|
25
25
|
user.IsBanned = false;
|
|
26
26
|
await user.update();
|
|
27
|
-
await user.Metadata.delete(
|
|
27
|
+
await user.Metadata.delete("user:ban");
|
|
28
28
|
await this.Queue.emit(new index_js_1.UserUnbanned(this.UserUUID));
|
|
29
29
|
}
|
|
30
30
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UnbanUser.js","sourceRoot":"","sources":["../../../src/jobs/UnbanUser.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oCAAyC;AACzC,sCAA2C;AAC3C,0CAA6D;AAC7D,iDAAkD;AAClD,+CAAyC;AAGlC,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,gBAAQ;IAOrC,YAAmB,QAAgB;QACjC,KAAK,EAAE,CAAC;QADS,aAAQ,GAAR,QAAQ,CAAQ;IAEnC,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,MAAM,IAAI,GAAG,MAAM,cAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAC5H,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QAEtB,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"UnbanUser.js","sourceRoot":"","sources":["../../../src/jobs/UnbanUser.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oCAAyC;AACzC,sCAA2C;AAC3C,0CAA6D;AAC7D,iDAAkD;AAClD,+CAAyC;AAGlC,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,gBAAQ;IAOrC,YAAmB,QAAgB;QACjC,KAAK,EAAE,CAAC;QADS,aAAQ,GAAR,QAAQ,CAAQ;IAEnC,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,MAAM,IAAI,GAAG,MAAM,cAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAC5H,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QAEtB,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACvC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,uBAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzD,CAAC;CACF,CAAA;AAnBY,8BAAS;AAEV;IADT,IAAA,YAAM,EAAC,MAAM,CAAC;8BACA,SAAG;sCAAC;AAGT;IADT,IAAA,eAAU,EAAC,oBAAY,CAAC;8BACR,oBAAY;wCAAC;oBALnB,SAAS;IADrB,IAAA,WAAG,GAAE;;GACO,SAAS,CAmBrB"}
|
package/lib/cjs/models/User.d.ts
CHANGED
|
@@ -11,14 +11,15 @@ declare class UserMetadataRelation extends OneToManyRelationList<UserMetadata, U
|
|
|
11
11
|
* @param key - key to find
|
|
12
12
|
* @returns {true|false}
|
|
13
13
|
*/
|
|
14
|
-
exists(key: string
|
|
14
|
+
exists(key: string): Promise<boolean>;
|
|
15
15
|
/**
|
|
16
16
|
*
|
|
17
17
|
* Deletes meta from DB
|
|
18
18
|
*
|
|
19
19
|
* @param key - meta key do delete or regexp
|
|
20
20
|
*/
|
|
21
|
-
delete(key: string
|
|
21
|
+
delete(key: string): Promise<void>;
|
|
22
|
+
get(key: string): Promise<any>;
|
|
22
23
|
[index: string]: any;
|
|
23
24
|
}
|
|
24
25
|
export declare class UserQueryScopes implements QueryScope {
|
|
@@ -28,8 +29,8 @@ export declare class UserQueryScopes implements QueryScope {
|
|
|
28
29
|
*
|
|
29
30
|
*/
|
|
30
31
|
isActiveUser(this: ISelectQueryBuilder<User[]> & UserQueryScopes): ISelectQueryBuilder<User[]> & UserQueryScopes;
|
|
31
|
-
|
|
32
|
-
|
|
32
|
+
whereEmail(this: ISelectQueryBuilder<User[]> & UserQueryScopes, email: string): ISelectQueryBuilder<User[]> & UserQueryScopes;
|
|
33
|
+
whereLogin(this: ISelectQueryBuilder<User[]> & UserQueryScopes, email: string): ISelectQueryBuilder<User[]> & UserQueryScopes;
|
|
33
34
|
}
|
|
34
35
|
/**
|
|
35
36
|
* Base model for users used by auth and ACL system
|
|
@@ -39,6 +40,7 @@ export declare class UserQueryScopes implements QueryScope {
|
|
|
39
40
|
export declare class User extends ModelBase {
|
|
40
41
|
protected _hidden: string[];
|
|
41
42
|
static readonly _queryScopes: UserQueryScopes;
|
|
43
|
+
constructor(data?: Partial<User>);
|
|
42
44
|
Id: number;
|
|
43
45
|
Uuid: string;
|
|
44
46
|
Email: string;
|
|
@@ -50,6 +52,7 @@ export declare class User extends ModelBase {
|
|
|
50
52
|
* Displayed name ( for others to see )
|
|
51
53
|
*/
|
|
52
54
|
Login: string;
|
|
55
|
+
IsBanned: boolean;
|
|
53
56
|
/**
|
|
54
57
|
* User role
|
|
55
58
|
*/
|
|
@@ -67,7 +70,6 @@ export declare class User extends ModelBase {
|
|
|
67
70
|
*/
|
|
68
71
|
DeletedAt: DateTime;
|
|
69
72
|
LastLoginAt: DateTime;
|
|
70
|
-
IsBanned: boolean;
|
|
71
73
|
/**
|
|
72
74
|
* Account is fully active (eg. passed registration)
|
|
73
75
|
*/
|
|
@@ -92,6 +94,9 @@ export declare class User extends ModelBase {
|
|
|
92
94
|
canDeleteOwn(resource: string): Permission;
|
|
93
95
|
canCreateAny(resource: string): Permission;
|
|
94
96
|
canCreateOwn(resource: string): Permission;
|
|
97
|
+
static getByLogin(login: string): Promise<User>;
|
|
98
|
+
static getByEmail(email: string): Promise<User>;
|
|
99
|
+
static getByUuid(uuid: string): Promise<User>;
|
|
95
100
|
}
|
|
96
101
|
export {};
|
|
97
102
|
//# sourceMappingURL=User.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"User.d.ts","sourceRoot":"","sources":["../../../src/models/User.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,SAAS,EAA8D,QAAQ,EAAwB,qBAAqB,EAAuB,UAAU,EAAmB,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnO,OAAO,EAAiB,UAAU,EAAE,MAAM,eAAe,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"User.d.ts","sourceRoot":"","sources":["../../../src/models/User.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,SAAS,EAA8D,QAAQ,EAAwB,qBAAqB,EAAuB,UAAU,EAAmB,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnO,OAAO,EAAiB,UAAU,EAAE,MAAM,eAAe,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAG/C,cAAM,oBAAqB,SAAQ,qBAAqB,CAAC,YAAY,EAAE,IAAI,CAAC;IAC1E;;;;;;OAMG;IACU,MAAM,CAAC,GAAG,EAAE,MAAM;IAO/B;;;;;OAKG;IACU,MAAM,CAAC,GAAG,EAAE,MAAM;IASlB,GAAG,CAAC,GAAG,EAAE,MAAM;IAoB5B,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAkDD,qBAAa,eAAgB,YAAW,UAAU;IAChD;;;;OAIG;IACI,YAAY,CAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,EAAE,CAAC,GAAG,eAAe;IAOhE,UAAU,CAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,EAAE,CAAC,GAAG,eAAe,EAAE,KAAK,EAAE,MAAM;IAM7E,UAAU,CAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,EAAE,CAAC,GAAG,eAAe,EAAE,KAAK,EAAE,MAAM;CAKrF;AAED;;;;GAIG;AACH,qBAEa,IAAK,SAAQ,SAAS;IACjC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAsB;IAEjD,gBAAuB,YAAY,EAAE,eAAe,CAAyB;gBAE1D,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC;IAShC,EAAE,EAAE,MAAM,CAAC;IAGX,IAAI,EAAE,MAAM,CAAC;IAEb,KAAK,EAAE,MAAM,CAAC;IAErB;;OAEG;IACI,QAAQ,EAAE,MAAM,CAAC;IAExB;;OAEG;IACI,KAAK,EAAE,MAAM,CAAC;IAEd,QAAQ,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACI,IAAI,EAAE,MAAM,EAAE,CAAC;IAEtB;;OAEG;IAEI,SAAS,EAAE,QAAQ,CAAC;IAE3B;;OAEG;IAEI,YAAY,EAAE,QAAQ,CAAC;IAE9B;;OAEG;IAEI,SAAS,EAAE,QAAQ,CAAC;IAGpB,WAAW,EAAE,QAAQ,CAAC;IAE7B;;OAEG;IACI,QAAQ,EAAE,OAAO,CAAC;IAEzB;;OAEG;IAII,QAAQ,EAAE,oBAAoB,CAAC;IAG/B,OAAO,EAAE,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAE3C,IAAW,OAAO,IAAI,OAAO,CAE5B;IAEM,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,UAAU;IAK5D;;;;OAIG;IACI,UAAU,CAAC,QAAQ,EAAE,MAAM;IAG3B,UAAU,CAAC,QAAQ,EAAE,MAAM;IAI3B,YAAY,CAAC,QAAQ,EAAE,MAAM;IAI7B,YAAY,CAAC,QAAQ,EAAE,MAAM;IAI7B,YAAY,CAAC,QAAQ,EAAE,MAAM;IAI7B,YAAY,CAAC,QAAQ,EAAE,MAAM;IAI7B,YAAY,CAAC,QAAQ,EAAE,MAAM;IAI7B,YAAY,CAAC,QAAQ,EAAE,MAAM;WAItB,UAAU,CAAC,KAAK,EAAE,MAAM;WAIxB,UAAU,CAAC,KAAK,EAAE,MAAM;WAIxB,SAAS,CAAC,IAAI,EAAE,MAAM;CAOrC"}
|
package/lib/cjs/models/User.js
CHANGED
|
@@ -8,6 +8,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
|
+
var User_1;
|
|
11
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
13
|
exports.User = exports.UserQueryScopes = void 0;
|
|
13
14
|
const luxon_1 = require("luxon");
|
|
@@ -15,6 +16,7 @@ const orm_1 = require("@spinajs/orm");
|
|
|
15
16
|
const di_1 = require("@spinajs/di");
|
|
16
17
|
const UserMetadata_js_1 = require("./UserMetadata.js");
|
|
17
18
|
const UserTimeline_js_1 = require("./UserTimeline.js");
|
|
19
|
+
const uuid_1 = require("uuid");
|
|
18
20
|
class UserMetadataRelation extends orm_1.OneToManyRelationList {
|
|
19
21
|
/**
|
|
20
22
|
*
|
|
@@ -24,18 +26,10 @@ class UserMetadataRelation extends orm_1.OneToManyRelationList {
|
|
|
24
26
|
* @returns {true|false}
|
|
25
27
|
*/
|
|
26
28
|
async exists(key) {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
}).andWhere('Key', 'rlike', key.source);
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
result = await UserMetadata_js_1.UserMetadata.where({
|
|
35
|
-
User: this.owner,
|
|
36
|
-
}).andWhere('Key', key);
|
|
37
|
-
}
|
|
38
|
-
return result !== null && result !== undefined;
|
|
29
|
+
return await UserMetadata_js_1.UserMetadata.where({
|
|
30
|
+
User: this.owner,
|
|
31
|
+
Key: key,
|
|
32
|
+
}).resultExists();
|
|
39
33
|
}
|
|
40
34
|
/**
|
|
41
35
|
*
|
|
@@ -44,73 +38,66 @@ class UserMetadataRelation extends orm_1.OneToManyRelationList {
|
|
|
44
38
|
* @param key - meta key do delete or regexp
|
|
45
39
|
*/
|
|
46
40
|
async delete(key) {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
Key: key,
|
|
57
|
-
User: this.owner,
|
|
58
|
-
});
|
|
41
|
+
await UserMetadata_js_1.UserMetadata.destroy().where({
|
|
42
|
+
Key: key,
|
|
43
|
+
User: this.owner.Id,
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
async get(key) {
|
|
47
|
+
const found = this.find((x) => x.Key === key);
|
|
48
|
+
if (found) {
|
|
49
|
+
return found.Value;
|
|
59
50
|
}
|
|
60
|
-
|
|
61
|
-
|
|
51
|
+
return await UserMetadata_js_1.UserMetadata.where({
|
|
52
|
+
User: this.owner,
|
|
53
|
+
Key: key,
|
|
54
|
+
})
|
|
55
|
+
.first()
|
|
56
|
+
.then((res) => {
|
|
57
|
+
if (res) {
|
|
58
|
+
return res.Value;
|
|
59
|
+
}
|
|
60
|
+
return null;
|
|
61
|
+
});
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
function UserMetadataRelationFactory(model, desc, container) {
|
|
65
65
|
const repository = container.resolve(UserMetadataRelation, [model, desc.TargetModel, desc, []]);
|
|
66
66
|
const proxy = {
|
|
67
67
|
set: (target, prop, value) => {
|
|
68
|
-
// if we try to call method or prop that exists return it
|
|
69
68
|
if (target[prop]) {
|
|
70
69
|
return (target[prop] = value);
|
|
71
70
|
}
|
|
72
|
-
|
|
71
|
+
return (async () => {
|
|
73
72
|
const userMeta = new UserMetadata_js_1.UserMetadata();
|
|
74
73
|
userMeta.User.Value = model;
|
|
75
74
|
userMeta.Key = prop;
|
|
76
75
|
userMeta.Value = value;
|
|
77
|
-
UserMetadata_js_1.UserMetadata.insert(userMeta, orm_1.InsertBehaviour.InsertOrUpdate);
|
|
78
|
-
|
|
79
|
-
if (meta) {
|
|
80
|
-
meta.Value = value;
|
|
81
|
-
}
|
|
82
|
-
else {
|
|
83
|
-
target.push(userMeta);
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
return true;
|
|
76
|
+
await UserMetadata_js_1.UserMetadata.insert(userMeta, orm_1.InsertBehaviour.InsertOrUpdate);
|
|
77
|
+
})();
|
|
87
78
|
},
|
|
88
79
|
get: (target, prop) => {
|
|
89
|
-
// if we try to call method or prop that exists return it
|
|
90
80
|
if (target[prop]) {
|
|
91
81
|
return target[prop];
|
|
92
82
|
}
|
|
93
|
-
|
|
83
|
+
return (async () => {
|
|
94
84
|
// check for metadata entries
|
|
95
85
|
const found = target.find((x) => x.Key === prop);
|
|
96
86
|
if (found) {
|
|
97
87
|
return found.Value;
|
|
98
88
|
}
|
|
99
|
-
|
|
100
|
-
// or return null
|
|
101
|
-
return UserMetadata_js_1.UserMetadata.where({
|
|
89
|
+
return await UserMetadata_js_1.UserMetadata.where({
|
|
102
90
|
User: model,
|
|
103
91
|
Key: prop,
|
|
104
92
|
})
|
|
105
93
|
.first()
|
|
106
94
|
.then((res) => {
|
|
107
95
|
if (res) {
|
|
108
|
-
|
|
109
|
-
target.push(res);
|
|
96
|
+
return res.Value;
|
|
110
97
|
}
|
|
111
|
-
return
|
|
98
|
+
return null;
|
|
112
99
|
});
|
|
113
|
-
}
|
|
100
|
+
})();
|
|
114
101
|
},
|
|
115
102
|
};
|
|
116
103
|
return new Proxy(repository, proxy);
|
|
@@ -123,17 +110,16 @@ class UserQueryScopes {
|
|
|
123
110
|
*/
|
|
124
111
|
isActiveUser() {
|
|
125
112
|
return this.where({
|
|
126
|
-
IsBanned: false,
|
|
127
113
|
IsActive: true,
|
|
128
114
|
DeletedAt: null,
|
|
129
115
|
});
|
|
130
116
|
}
|
|
131
|
-
|
|
117
|
+
whereEmail(email) {
|
|
132
118
|
return this.where({
|
|
133
119
|
Email: email,
|
|
134
120
|
});
|
|
135
121
|
}
|
|
136
|
-
|
|
122
|
+
whereLogin(email) {
|
|
137
123
|
return this.where({
|
|
138
124
|
Email: email,
|
|
139
125
|
});
|
|
@@ -145,13 +131,16 @@ exports.UserQueryScopes = UserQueryScopes;
|
|
|
145
131
|
*
|
|
146
132
|
* To add / extend fields simply extend this model and register as default user model in ACL service
|
|
147
133
|
*/
|
|
148
|
-
let User = class User extends orm_1.ModelBase {
|
|
149
|
-
constructor() {
|
|
150
|
-
super(
|
|
134
|
+
let User = User_1 = class User extends orm_1.ModelBase {
|
|
135
|
+
constructor(data) {
|
|
136
|
+
super(data);
|
|
151
137
|
this._hidden = ['Password', 'Id'];
|
|
138
|
+
if (this.Uuid === undefined) {
|
|
139
|
+
this.Uuid = (0, uuid_1.v4)();
|
|
140
|
+
}
|
|
152
141
|
}
|
|
153
142
|
get IsGuest() {
|
|
154
|
-
return this.Role.indexOf('guest') !== -1;
|
|
143
|
+
return this.Role.indexOf('guest') !== -1 || this.Role.length === 0;
|
|
155
144
|
}
|
|
156
145
|
can(resource, permission) {
|
|
157
146
|
const ac = di_1.DI.get('AccessControl');
|
|
@@ -186,6 +175,19 @@ let User = class User extends orm_1.ModelBase {
|
|
|
186
175
|
canCreateOwn(resource) {
|
|
187
176
|
return this.can(resource, 'createOwn');
|
|
188
177
|
}
|
|
178
|
+
static getByLogin(login) {
|
|
179
|
+
return User_1.query().whereLogin(login).first();
|
|
180
|
+
}
|
|
181
|
+
static getByEmail(email) {
|
|
182
|
+
return User_1.query().whereEmail(email).first();
|
|
183
|
+
}
|
|
184
|
+
static getByUuid(uuid) {
|
|
185
|
+
return User_1.query()
|
|
186
|
+
.where({
|
|
187
|
+
Uuid: uuid,
|
|
188
|
+
})
|
|
189
|
+
.first();
|
|
190
|
+
}
|
|
189
191
|
};
|
|
190
192
|
exports.User = User;
|
|
191
193
|
User._queryScopes = new UserQueryScopes();
|
|
@@ -223,8 +225,9 @@ __decorate([
|
|
|
223
225
|
(0, orm_1.HasMany)(UserTimeline_js_1.UserAction),
|
|
224
226
|
__metadata("design:type", orm_1.Relation)
|
|
225
227
|
], User.prototype, "Actions", void 0);
|
|
226
|
-
exports.User = User = __decorate([
|
|
228
|
+
exports.User = User = User_1 = __decorate([
|
|
227
229
|
(0, orm_1.Connection)('default'),
|
|
228
|
-
(0, orm_1.Model)('users')
|
|
230
|
+
(0, orm_1.Model)('users'),
|
|
231
|
+
__metadata("design:paramtypes", [Object])
|
|
229
232
|
], User);
|
|
230
233
|
//# sourceMappingURL=User.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"User.js","sourceRoot":"","sources":["../../../src/models/User.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"User.js","sourceRoot":"","sources":["../../../src/models/User.ts"],"names":[],"mappings":"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"}
|
package/lib/mjs/cli/BanUser.js
CHANGED
|
@@ -23,8 +23,8 @@ let BanUser = class BanUser extends CliCommand {
|
|
|
23
23
|
user.IsBanned = ban;
|
|
24
24
|
await user.update();
|
|
25
25
|
if (ban) {
|
|
26
|
-
await (user.Metadata['ban
|
|
27
|
-
await (user.Metadata['ban
|
|
26
|
+
await (user.Metadata['user:ban.duration'] = duration);
|
|
27
|
+
await (user.Metadata['user:ban.issued'] = DateTime.now().toISO());
|
|
28
28
|
this.Queue.emit(new UserBanned(idOrUuid, duration));
|
|
29
29
|
if (duration !== 0) {
|
|
30
30
|
// schedule job with delay equals ban duration
|
|
@@ -37,7 +37,7 @@ let BanUser = class BanUser extends CliCommand {
|
|
|
37
37
|
}
|
|
38
38
|
else {
|
|
39
39
|
// cleanup meta
|
|
40
|
-
await UserMetadata.destroy().where('Key', 'like', 'user:ban
|
|
40
|
+
await UserMetadata.destroy().where('Key', 'like', '%user:ban').andWhere('User', user);
|
|
41
41
|
this.Queue.emit(new UserUnbanned(idOrUuid));
|
|
42
42
|
this.Log.warn(`No user with id: ${idOrUuid} found`);
|
|
43
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BanUser.js","sourceRoot":"","sources":["../../../src/cli/BanUser.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAM1B,IAAM,OAAO,GAAb,MAAM,OAAQ,SAAQ,UAAU;IAO9B,KAAK,CAAC,OAAO,CAAC,QAAgB,EAAE,GAAY,EAAE,QAAgB;QACnE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAClH,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;QAEpB,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAEpB,IAAI,GAAG,EAAE;YACP,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"BanUser.js","sourceRoot":"","sources":["../../../src/cli/BanUser.ts"],"names":[],"mappings":"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"}
|
package/lib/mjs/index.js
CHANGED
package/lib/mjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,eAAe,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE,EAAc,MAAM,aAAa,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAEnC,OAAO,WAAW,CAAC;AACnB,OAAO,eAAe,CAAC;AACvB,OAAO,cAAc,CAAC;AACtB,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExC,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iDAAiD,CAAC;AAChE,cAAc,mBAAmB,CAAC;AAElC,wEAAwE;AACxE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;AAG9B,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,YAAY;IACzC,SAAS;QACd,MAAM,EAAE,GAAG,IAAI,aAAa,EAAE,CAAC;QAC/B,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACzC,EAAE,CAAC,IAAI,CAAC,2BAA2B,EAAE,CAAC,SAAqB,EAAE,aAA4B,EAAE,EAAE;YAC3F,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,CAAgB,eAAe,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAEhD,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC7C,GAAG,CAAC,IAAI,CAAC,wGAAwG,CAAC,CAAC;aACpH;iBAAM;gBACL,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;aACtB;QACH,CAAC,CAAC,CAAC;QAEH;;WAEG;QACH,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAa,EAAE,QAAyB,EAAE,EAAE;YACvD,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC;QAEzB,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE;YAChB,MAAM,IAAI,GAAG,EAAE,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YACnC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;YAEhE,OAAO,IAAI,IAAI,CAAC;gBACd,KAAK,EAAE,OAAO;gBACd,KAAK,EAAE,mBAAmB;gBAC1B,IAAI,EAAE,CAAC,OAAO,CAAC;gBACf,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,eAAe,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE,EAAc,MAAM,aAAa,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAEnC,OAAO,WAAW,CAAC;AACnB,OAAO,eAAe,CAAC;AACvB,OAAO,cAAc,CAAC;AACtB,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExC,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iDAAiD,CAAC;AAChE,cAAc,mBAAmB,CAAC;AAElC,wEAAwE;AACxE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;AAG9B,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,YAAY;IACzC,SAAS;QACd,MAAM,EAAE,GAAG,IAAI,aAAa,EAAE,CAAC;QAC/B,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACzC,EAAE,CAAC,IAAI,CAAC,2BAA2B,EAAE,CAAC,SAAqB,EAAE,aAA4B,EAAE,EAAE;YAC3F,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,CAAgB,eAAe,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAEhD,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC7C,GAAG,CAAC,IAAI,CAAC,wGAAwG,CAAC,CAAC;aACpH;iBAAM;gBACL,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;aACtB;QACH,CAAC,CAAC,CAAC;QAEH;;WAEG;QACH,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAa,EAAE,QAAyB,EAAE,EAAE;YACvD,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC;QAEzB,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE;YAChB,MAAM,IAAI,GAAG,EAAE,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YACnC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;YAEhE,OAAO,IAAI,IAAI,CAAC;gBACd,KAAK,EAAE,OAAO;gBACd,KAAK,EAAE,mBAAmB;gBAC1B,IAAI,EAAE,CAAC,OAAO,CAAC;gBACf,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC;IAChC,CAAC;CACF,CAAA;AAnCY,gBAAgB;IAD5B,UAAU,CAAC,YAAY,CAAC;GACZ,gBAAgB,CAmC5B"}
|
|
@@ -21,7 +21,7 @@ let UnbanUser = class UnbanUser extends QueueJob {
|
|
|
21
21
|
const user = await User.where('Id', this.UserUUID).orWhere('Uuid', this.UserUUID).firstOrThrow(new Error('User not found'));
|
|
22
22
|
user.IsBanned = false;
|
|
23
23
|
await user.update();
|
|
24
|
-
await user.Metadata.delete(
|
|
24
|
+
await user.Metadata.delete("user:ban");
|
|
25
25
|
await this.Queue.emit(new UserUnbanned(this.UserUUID));
|
|
26
26
|
}
|
|
27
27
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UnbanUser.js","sourceRoot":"","sources":["../../../src/jobs/UnbanUser.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAGlC,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,QAAQ;IAOrC,YAAmB,QAAgB;QACjC,KAAK,EAAE,CAAC;QADS,aAAQ,GAAR,QAAQ,CAAQ;IAEnC,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAC5H,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QAEtB,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"UnbanUser.js","sourceRoot":"","sources":["../../../src/jobs/UnbanUser.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAGlC,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,QAAQ;IAOrC,YAAmB,QAAgB;QACjC,KAAK,EAAE,CAAC;QADS,aAAQ,GAAR,QAAQ,CAAQ;IAEnC,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAC5H,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QAEtB,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACvC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzD,CAAC;CACF,CAAA;AAjBW;IADT,MAAM,CAAC,MAAM,CAAC;8BACA,GAAG;sCAAC;AAGT;IADT,UAAU,CAAC,YAAY,CAAC;8BACR,YAAY;wCAAC;AALnB,SAAS;IADrB,GAAG,EAAE;;GACO,SAAS,CAmBrB"}
|
package/lib/mjs/models/User.d.ts
CHANGED
|
@@ -11,14 +11,15 @@ declare class UserMetadataRelation extends OneToManyRelationList<UserMetadata, U
|
|
|
11
11
|
* @param key - key to find
|
|
12
12
|
* @returns {true|false}
|
|
13
13
|
*/
|
|
14
|
-
exists(key: string
|
|
14
|
+
exists(key: string): Promise<boolean>;
|
|
15
15
|
/**
|
|
16
16
|
*
|
|
17
17
|
* Deletes meta from DB
|
|
18
18
|
*
|
|
19
19
|
* @param key - meta key do delete or regexp
|
|
20
20
|
*/
|
|
21
|
-
delete(key: string
|
|
21
|
+
delete(key: string): Promise<void>;
|
|
22
|
+
get(key: string): Promise<any>;
|
|
22
23
|
[index: string]: any;
|
|
23
24
|
}
|
|
24
25
|
export declare class UserQueryScopes implements QueryScope {
|
|
@@ -28,8 +29,8 @@ export declare class UserQueryScopes implements QueryScope {
|
|
|
28
29
|
*
|
|
29
30
|
*/
|
|
30
31
|
isActiveUser(this: ISelectQueryBuilder<User[]> & UserQueryScopes): ISelectQueryBuilder<User[]> & UserQueryScopes;
|
|
31
|
-
|
|
32
|
-
|
|
32
|
+
whereEmail(this: ISelectQueryBuilder<User[]> & UserQueryScopes, email: string): ISelectQueryBuilder<User[]> & UserQueryScopes;
|
|
33
|
+
whereLogin(this: ISelectQueryBuilder<User[]> & UserQueryScopes, email: string): ISelectQueryBuilder<User[]> & UserQueryScopes;
|
|
33
34
|
}
|
|
34
35
|
/**
|
|
35
36
|
* Base model for users used by auth and ACL system
|
|
@@ -39,6 +40,7 @@ export declare class UserQueryScopes implements QueryScope {
|
|
|
39
40
|
export declare class User extends ModelBase {
|
|
40
41
|
protected _hidden: string[];
|
|
41
42
|
static readonly _queryScopes: UserQueryScopes;
|
|
43
|
+
constructor(data?: Partial<User>);
|
|
42
44
|
Id: number;
|
|
43
45
|
Uuid: string;
|
|
44
46
|
Email: string;
|
|
@@ -50,6 +52,7 @@ export declare class User extends ModelBase {
|
|
|
50
52
|
* Displayed name ( for others to see )
|
|
51
53
|
*/
|
|
52
54
|
Login: string;
|
|
55
|
+
IsBanned: boolean;
|
|
53
56
|
/**
|
|
54
57
|
* User role
|
|
55
58
|
*/
|
|
@@ -67,7 +70,6 @@ export declare class User extends ModelBase {
|
|
|
67
70
|
*/
|
|
68
71
|
DeletedAt: DateTime;
|
|
69
72
|
LastLoginAt: DateTime;
|
|
70
|
-
IsBanned: boolean;
|
|
71
73
|
/**
|
|
72
74
|
* Account is fully active (eg. passed registration)
|
|
73
75
|
*/
|
|
@@ -92,6 +94,9 @@ export declare class User extends ModelBase {
|
|
|
92
94
|
canDeleteOwn(resource: string): Permission;
|
|
93
95
|
canCreateAny(resource: string): Permission;
|
|
94
96
|
canCreateOwn(resource: string): Permission;
|
|
97
|
+
static getByLogin(login: string): Promise<User>;
|
|
98
|
+
static getByEmail(email: string): Promise<User>;
|
|
99
|
+
static getByUuid(uuid: string): Promise<User>;
|
|
95
100
|
}
|
|
96
101
|
export {};
|
|
97
102
|
//# sourceMappingURL=User.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"User.d.ts","sourceRoot":"","sources":["../../../src/models/User.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,SAAS,EAA8D,QAAQ,EAAwB,qBAAqB,EAAuB,UAAU,EAAmB,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnO,OAAO,EAAiB,UAAU,EAAE,MAAM,eAAe,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"User.d.ts","sourceRoot":"","sources":["../../../src/models/User.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,SAAS,EAA8D,QAAQ,EAAwB,qBAAqB,EAAuB,UAAU,EAAmB,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnO,OAAO,EAAiB,UAAU,EAAE,MAAM,eAAe,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAG/C,cAAM,oBAAqB,SAAQ,qBAAqB,CAAC,YAAY,EAAE,IAAI,CAAC;IAC1E;;;;;;OAMG;IACU,MAAM,CAAC,GAAG,EAAE,MAAM;IAO/B;;;;;OAKG;IACU,MAAM,CAAC,GAAG,EAAE,MAAM;IASlB,GAAG,CAAC,GAAG,EAAE,MAAM;IAoB5B,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAkDD,qBAAa,eAAgB,YAAW,UAAU;IAChD;;;;OAIG;IACI,YAAY,CAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,EAAE,CAAC,GAAG,eAAe;IAOhE,UAAU,CAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,EAAE,CAAC,GAAG,eAAe,EAAE,KAAK,EAAE,MAAM;IAM7E,UAAU,CAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,EAAE,CAAC,GAAG,eAAe,EAAE,KAAK,EAAE,MAAM;CAKrF;AAED;;;;GAIG;AACH,qBAEa,IAAK,SAAQ,SAAS;IACjC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAsB;IAEjD,gBAAuB,YAAY,EAAE,eAAe,CAAyB;gBAE1D,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC;IAShC,EAAE,EAAE,MAAM,CAAC;IAGX,IAAI,EAAE,MAAM,CAAC;IAEb,KAAK,EAAE,MAAM,CAAC;IAErB;;OAEG;IACI,QAAQ,EAAE,MAAM,CAAC;IAExB;;OAEG;IACI,KAAK,EAAE,MAAM,CAAC;IAEd,QAAQ,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACI,IAAI,EAAE,MAAM,EAAE,CAAC;IAEtB;;OAEG;IAEI,SAAS,EAAE,QAAQ,CAAC;IAE3B;;OAEG;IAEI,YAAY,EAAE,QAAQ,CAAC;IAE9B;;OAEG;IAEI,SAAS,EAAE,QAAQ,CAAC;IAGpB,WAAW,EAAE,QAAQ,CAAC;IAE7B;;OAEG;IACI,QAAQ,EAAE,OAAO,CAAC;IAEzB;;OAEG;IAII,QAAQ,EAAE,oBAAoB,CAAC;IAG/B,OAAO,EAAE,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAE3C,IAAW,OAAO,IAAI,OAAO,CAE5B;IAEM,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,UAAU;IAK5D;;;;OAIG;IACI,UAAU,CAAC,QAAQ,EAAE,MAAM;IAG3B,UAAU,CAAC,QAAQ,EAAE,MAAM;IAI3B,YAAY,CAAC,QAAQ,EAAE,MAAM;IAI7B,YAAY,CAAC,QAAQ,EAAE,MAAM;IAI7B,YAAY,CAAC,QAAQ,EAAE,MAAM;IAI7B,YAAY,CAAC,QAAQ,EAAE,MAAM;IAI7B,YAAY,CAAC,QAAQ,EAAE,MAAM;IAI7B,YAAY,CAAC,QAAQ,EAAE,MAAM;WAItB,UAAU,CAAC,KAAK,EAAE,MAAM;WAIxB,UAAU,CAAC,KAAK,EAAE,MAAM;WAIxB,SAAS,CAAC,IAAI,EAAE,MAAM;CAOrC"}
|