vona-module-a-user 5.0.22 → 5.0.23
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.
|
@@ -115,6 +115,7 @@ declare module 'vona' {
|
|
|
115
115
|
/** event: begin */
|
|
116
116
|
export * from '../bean/event.activate.ts';
|
|
117
117
|
export * from '../bean/event.createUserAnonymous.ts';
|
|
118
|
+
export * from '../bean/event.register.ts';
|
|
118
119
|
export * from '../bean/event.signin.ts';
|
|
119
120
|
export * from '../bean/event.signout.ts';
|
|
120
121
|
import 'vona';
|
|
@@ -133,6 +134,12 @@ declare module 'vona-module-a-user' {
|
|
|
133
134
|
get $beanFullName(): 'a-user.event.createUserAnonymous';
|
|
134
135
|
get $onionName(): 'a-user:createUserAnonymous';
|
|
135
136
|
}
|
|
137
|
+
interface EventRegister {
|
|
138
|
+
}
|
|
139
|
+
interface EventRegister {
|
|
140
|
+
get $beanFullName(): 'a-user.event.register';
|
|
141
|
+
get $onionName(): 'a-user:register';
|
|
142
|
+
}
|
|
136
143
|
interface EventSignin {
|
|
137
144
|
}
|
|
138
145
|
interface EventSignin {
|
|
@@ -150,11 +157,13 @@ declare module 'vona-module-a-user' {
|
|
|
150
157
|
/** event: begin */
|
|
151
158
|
import type { EventActivate } from '../bean/event.activate.ts';
|
|
152
159
|
import type { EventCreateUserAnonymous } from '../bean/event.createUserAnonymous.ts';
|
|
160
|
+
import type { EventRegister } from '../bean/event.register.ts';
|
|
153
161
|
import type { EventSignin } from '../bean/event.signin.ts';
|
|
154
162
|
import type { EventSignout } from '../bean/event.signout.ts';
|
|
155
163
|
export interface IModuleEvent {
|
|
156
164
|
'activate': EventActivate;
|
|
157
165
|
'createUserAnonymous': EventCreateUserAnonymous;
|
|
166
|
+
'register': EventRegister;
|
|
158
167
|
'signin': EventSignin;
|
|
159
168
|
'signout': EventSignout;
|
|
160
169
|
}
|
|
@@ -162,6 +171,7 @@ export interface IModuleEvent {
|
|
|
162
171
|
/** event: begin */
|
|
163
172
|
import type { TypeEventActivateData, TypeEventActivateResult } from '../bean/event.activate.ts';
|
|
164
173
|
import type { TypeEventCreateUserAnonymousData, TypeEventCreateUserAnonymousResult } from '../bean/event.createUserAnonymous.ts';
|
|
174
|
+
import type { TypeEventRegisterData, TypeEventRegisterResult } from '../bean/event.register.ts';
|
|
165
175
|
import type { TypeEventSigninData, TypeEventSigninResult } from '../bean/event.signin.ts';
|
|
166
176
|
import type { TypeEventSignoutData, TypeEventSignoutResult } from '../bean/event.signout.ts';
|
|
167
177
|
import type { EventOn } from 'vona-module-a-event';
|
|
@@ -169,6 +179,7 @@ declare module 'vona-module-a-event' {
|
|
|
169
179
|
interface IEventRecord {
|
|
170
180
|
'a-user:activate': EventOn<TypeEventActivateData, TypeEventActivateResult>;
|
|
171
181
|
'a-user:createUserAnonymous': EventOn<TypeEventCreateUserAnonymousData, TypeEventCreateUserAnonymousResult>;
|
|
182
|
+
'a-user:register': EventOn<TypeEventRegisterData, TypeEventRegisterResult>;
|
|
172
183
|
'a-user:signin': EventOn<TypeEventSigninData, TypeEventSigninResult>;
|
|
173
184
|
'a-user:signout': EventOn<TypeEventSignoutData, TypeEventSignoutResult>;
|
|
174
185
|
}
|
|
@@ -5,7 +5,7 @@ export declare class BeanUserInner extends BeanBase {
|
|
|
5
5
|
private _userInnerAdapter;
|
|
6
6
|
private get userInnerAdapter();
|
|
7
7
|
activate(user: IUserBase): Promise<void>;
|
|
8
|
-
register(user: Partial<IUserBase>,
|
|
8
|
+
register(user: Partial<IUserBase>, confirmed?: boolean): Promise<IUserBase>;
|
|
9
9
|
registerByProfile(profile: IAuthUserProfile): Promise<IUserBase>;
|
|
10
10
|
createAnonymous(): Promise<IUserBase>;
|
|
11
11
|
findOneByName(name: string): Promise<IUserBase | undefined>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { IUserBase } from '../types/user.ts';
|
|
2
|
+
import { BeanEventBase } from 'vona-module-a-event';
|
|
3
|
+
export interface TypeEventRegisterData {
|
|
4
|
+
user: Partial<IUserBase>;
|
|
5
|
+
confirmed?: boolean;
|
|
6
|
+
autoActivate?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export type TypeEventRegisterResult = Partial<IUserBase>;
|
|
9
|
+
export declare class EventRegister extends BeanEventBase<TypeEventRegisterData, TypeEventRegisterResult> {
|
|
10
|
+
}
|
package/dist/index.js
CHANGED
|
@@ -5,15 +5,15 @@ import { Bean, Service, Scope } from 'vona-module-a-bean';
|
|
|
5
5
|
import { Event, BeanEventBase } from 'vona-module-a-event';
|
|
6
6
|
import { Meta } from 'vona-module-a-meta';
|
|
7
7
|
|
|
8
|
-
var _dec$
|
|
9
|
-
let GuardPassport = (_dec$
|
|
8
|
+
var _dec$f, _dec2$f, _class$f;
|
|
9
|
+
let GuardPassport = (_dec$f = Guard({
|
|
10
10
|
global: true,
|
|
11
11
|
public: false,
|
|
12
12
|
activated: true,
|
|
13
13
|
checkAuthToken: true
|
|
14
|
-
}), _dec2$
|
|
14
|
+
}), _dec2$f = BeanInfo({
|
|
15
15
|
module: "a-user"
|
|
16
|
-
}), _dec$
|
|
16
|
+
}), _dec$f(_class$f = _dec2$f(_class$f = class GuardPassport extends BeanBase {
|
|
17
17
|
async execute(options, next) {
|
|
18
18
|
// auth token
|
|
19
19
|
if (!this.bean.passport.getCurrent()) {
|
|
@@ -47,7 +47,7 @@ let GuardPassport = (_dec$e = Guard({
|
|
|
47
47
|
// next
|
|
48
48
|
return next();
|
|
49
49
|
}
|
|
50
|
-
}) || _class$
|
|
50
|
+
}) || _class$f) || _class$f);
|
|
51
51
|
|
|
52
52
|
let __roleAdapter;
|
|
53
53
|
function setRoleAdapter(roleAdapter) {
|
|
@@ -92,12 +92,12 @@ function $getUserIdSystem(_userName, userId) {
|
|
|
92
92
|
return userId;
|
|
93
93
|
}
|
|
94
94
|
|
|
95
|
-
var _dec$
|
|
96
|
-
let GuardRoleName = (_dec$
|
|
95
|
+
var _dec$e, _dec2$e, _class$e;
|
|
96
|
+
let GuardRoleName = (_dec$e = Guard({
|
|
97
97
|
passWhenMatched: true
|
|
98
|
-
}), _dec2$
|
|
98
|
+
}), _dec2$e = BeanInfo({
|
|
99
99
|
module: "a-user"
|
|
100
|
-
}), _dec$
|
|
100
|
+
}), _dec$e(_class$e = _dec2$e(_class$e = class GuardRoleName extends BeanBase {
|
|
101
101
|
async execute(options, next) {
|
|
102
102
|
if (!options.name) return this.app.throw(403);
|
|
103
103
|
const user = this.bean.passport.getCurrentUser();
|
|
@@ -111,14 +111,14 @@ let GuardRoleName = (_dec$d = Guard({
|
|
|
111
111
|
// next
|
|
112
112
|
return next();
|
|
113
113
|
}
|
|
114
|
-
}) || _class$
|
|
114
|
+
}) || _class$e) || _class$e);
|
|
115
115
|
|
|
116
|
-
var _dec$
|
|
117
|
-
let GuardUserName = (_dec$
|
|
116
|
+
var _dec$d, _dec2$d, _class$d;
|
|
117
|
+
let GuardUserName = (_dec$d = Guard({
|
|
118
118
|
passWhenMatched: true
|
|
119
|
-
}), _dec2$
|
|
119
|
+
}), _dec2$d = BeanInfo({
|
|
120
120
|
module: "a-user"
|
|
121
|
-
}), _dec$
|
|
121
|
+
}), _dec$d(_class$d = _dec2$d(_class$d = class GuardUserName extends BeanBase {
|
|
122
122
|
async execute(options, next) {
|
|
123
123
|
if (!options.name) return this.app.throw(403);
|
|
124
124
|
const user = this.bean.passport.getCurrentUser();
|
|
@@ -130,12 +130,12 @@ let GuardUserName = (_dec$c = Guard({
|
|
|
130
130
|
// next
|
|
131
131
|
return next();
|
|
132
132
|
}
|
|
133
|
-
}) || _class$
|
|
133
|
+
}) || _class$d) || _class$d);
|
|
134
134
|
|
|
135
|
-
var _dec$
|
|
136
|
-
let BeanAuthInner = (_dec$
|
|
135
|
+
var _dec$c, _dec2$c, _class$c;
|
|
136
|
+
let BeanAuthInner = (_dec$c = Bean(), _dec2$c = BeanInfo({
|
|
137
137
|
module: "a-user"
|
|
138
|
-
}), _dec$
|
|
138
|
+
}), _dec$c(_class$c = _dec2$c(_class$c = class BeanAuthInner extends BeanBase {
|
|
139
139
|
constructor(...args) {
|
|
140
140
|
super(...args);
|
|
141
141
|
this._authInnerAdapter = void 0;
|
|
@@ -151,7 +151,7 @@ let BeanAuthInner = (_dec$b = Bean(), _dec2$b = BeanInfo({
|
|
|
151
151
|
if (String(auth.id).charAt(0) === '-') return auth;
|
|
152
152
|
return await this.authInnerAdapter.findOne(auth);
|
|
153
153
|
}
|
|
154
|
-
}) || _class$
|
|
154
|
+
}) || _class$c) || _class$c);
|
|
155
155
|
|
|
156
156
|
let __authAdapter;
|
|
157
157
|
function setAuthAdapter(authAdapter) {
|
|
@@ -164,10 +164,10 @@ function $getAuthIdSystem(_authName, authId) {
|
|
|
164
164
|
return authId;
|
|
165
165
|
}
|
|
166
166
|
|
|
167
|
-
var _dec$
|
|
168
|
-
let BeanPassport = (_dec$
|
|
167
|
+
var _dec$b, _dec2$b, _class$b;
|
|
168
|
+
let BeanPassport = (_dec$b = Bean(), _dec2$b = BeanInfo({
|
|
169
169
|
module: "a-user"
|
|
170
|
-
}), _dec$
|
|
170
|
+
}), _dec$b(_class$b = _dec2$b(_class$b = class BeanPassport extends BeanBase {
|
|
171
171
|
constructor(...args) {
|
|
172
172
|
super(...args);
|
|
173
173
|
this._authTokenAdapter = void 0;
|
|
@@ -373,12 +373,12 @@ let BeanPassport = (_dec$a = Bean(), _dec2$a = BeanInfo({
|
|
|
373
373
|
return payloadData2;
|
|
374
374
|
}
|
|
375
375
|
}
|
|
376
|
-
}) || _class$
|
|
376
|
+
}) || _class$b) || _class$b);
|
|
377
377
|
|
|
378
|
-
var _dec$
|
|
379
|
-
let BeanRoleInner = (_dec$
|
|
378
|
+
var _dec$a, _dec2$a, _class$a;
|
|
379
|
+
let BeanRoleInner = (_dec$a = Bean(), _dec2$a = BeanInfo({
|
|
380
380
|
module: "a-user"
|
|
381
|
-
}), _dec$
|
|
381
|
+
}), _dec$a(_class$a = _dec2$a(_class$a = class BeanRoleInner extends BeanBase {
|
|
382
382
|
constructor(...args) {
|
|
383
383
|
super(...args);
|
|
384
384
|
this._roleInnerAdapter = void 0;
|
|
@@ -399,12 +399,12 @@ let BeanRoleInner = (_dec$9 = Bean(), _dec2$9 = BeanInfo({
|
|
|
399
399
|
findAllByUserId(userId) {
|
|
400
400
|
return this.roleInnerAdapter.findAllByUserId(userId);
|
|
401
401
|
}
|
|
402
|
-
}) || _class$
|
|
402
|
+
}) || _class$a) || _class$a);
|
|
403
403
|
|
|
404
|
-
var _dec$
|
|
405
|
-
let BeanUserInner = (_dec$
|
|
404
|
+
var _dec$9, _dec2$9, _class$9;
|
|
405
|
+
let BeanUserInner = (_dec$9 = Bean(), _dec2$9 = BeanInfo({
|
|
406
406
|
module: "a-user"
|
|
407
|
-
}), _dec$
|
|
407
|
+
}), _dec$9(_class$9 = _dec2$9(_class$9 = class BeanUserInner extends BeanBase {
|
|
408
408
|
constructor(...args) {
|
|
409
409
|
super(...args);
|
|
410
410
|
this._userInnerAdapter = void 0;
|
|
@@ -417,18 +417,26 @@ let BeanUserInner = (_dec$8 = Bean(), _dec2$8 = BeanInfo({
|
|
|
417
417
|
return this._userInnerAdapter;
|
|
418
418
|
}
|
|
419
419
|
async activate(user) {
|
|
420
|
-
await this.scope.event.activate.emit(user, async
|
|
420
|
+
await this.scope.event.activate.emit(user, async user => {
|
|
421
421
|
await this.userInnerAdapter.setActivated(user.id, true);
|
|
422
422
|
});
|
|
423
423
|
}
|
|
424
|
-
async register(user,
|
|
425
|
-
// config.user.autoActivate >
|
|
426
|
-
autoActivate = this.scope.config.user.autoActivate ? true :
|
|
427
|
-
const
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
424
|
+
async register(user, confirmed) {
|
|
425
|
+
// config.user.autoActivate > confirmed
|
|
426
|
+
const autoActivate = this.scope.config.user.autoActivate ? true : confirmed;
|
|
427
|
+
const data = {
|
|
428
|
+
user,
|
|
429
|
+
confirmed,
|
|
430
|
+
autoActivate
|
|
431
|
+
};
|
|
432
|
+
return await this.scope.event.register.emit(data, async data => {
|
|
433
|
+
// user
|
|
434
|
+
const userNew = await this.userInnerAdapter.create(data.user);
|
|
435
|
+
if (data.autoActivate) {
|
|
436
|
+
await this.activate(userNew);
|
|
437
|
+
}
|
|
438
|
+
return userNew;
|
|
439
|
+
});
|
|
432
440
|
}
|
|
433
441
|
async registerByProfile(profile) {
|
|
434
442
|
const user = await this.userInnerAdapter.userOfProfile(profile);
|
|
@@ -449,12 +457,12 @@ let BeanUserInner = (_dec$8 = Bean(), _dec2$8 = BeanInfo({
|
|
|
449
457
|
remove(user) {
|
|
450
458
|
return this.userInnerAdapter.remove(user);
|
|
451
459
|
}
|
|
452
|
-
}) || _class$
|
|
460
|
+
}) || _class$9) || _class$9);
|
|
453
461
|
|
|
454
|
-
var _dec$
|
|
455
|
-
let ServiceAuthTokenAdapter = (_dec$
|
|
462
|
+
var _dec$8, _dec2$8, _class$8;
|
|
463
|
+
let ServiceAuthTokenAdapter = (_dec$8 = Service(), _dec2$8 = BeanInfo({
|
|
456
464
|
module: "a-user"
|
|
457
|
-
}), _dec$
|
|
465
|
+
}), _dec$8(_class$8 = _dec2$8(_class$8 = class ServiceAuthTokenAdapter extends BeanBase {
|
|
458
466
|
async create(payloadData) {
|
|
459
467
|
const authIdStr = this._getAuthId(payloadData)?.toString();
|
|
460
468
|
const token = authIdStr === '-1' ? createHash(authIdStr) : uuidv4();
|
|
@@ -482,12 +490,12 @@ let ServiceAuthTokenAdapter = (_dec$7 = Service(), _dec2$7 = BeanInfo({
|
|
|
482
490
|
_getAuthId(payloadData) {
|
|
483
491
|
return payloadData[this.scope.config.payloadData.fields.authId];
|
|
484
492
|
}
|
|
485
|
-
}) || _class$
|
|
493
|
+
}) || _class$8) || _class$8);
|
|
486
494
|
|
|
487
|
-
var _dec$
|
|
488
|
-
let ServiceRedisToken = (_dec$
|
|
495
|
+
var _dec$7, _dec2$7, _class$7;
|
|
496
|
+
let ServiceRedisToken = (_dec$7 = Service(), _dec2$7 = BeanInfo({
|
|
489
497
|
module: "a-user"
|
|
490
|
-
}), _dec$
|
|
498
|
+
}), _dec$7(_class$7 = _dec2$7(_class$7 = class ServiceRedisToken extends BeanBase {
|
|
491
499
|
get redisAuth() {
|
|
492
500
|
return this.bean.redis.get('auth');
|
|
493
501
|
}
|
|
@@ -547,17 +555,22 @@ let ServiceRedisToken = (_dec$6 = Service(), _dec2$6 = BeanInfo({
|
|
|
547
555
|
_getUserId(payloadData) {
|
|
548
556
|
return payloadData[this.scope.config.payloadData.fields.userId];
|
|
549
557
|
}
|
|
550
|
-
}) || _class$
|
|
558
|
+
}) || _class$7) || _class$7);
|
|
559
|
+
|
|
560
|
+
var _dec$6, _dec2$6, _class$6;
|
|
561
|
+
let EventActivate = (_dec$6 = Event(), _dec2$6 = BeanInfo({
|
|
562
|
+
module: "a-user"
|
|
563
|
+
}), _dec$6(_class$6 = _dec2$6(_class$6 = class EventActivate extends BeanEventBase {}) || _class$6) || _class$6);
|
|
551
564
|
|
|
552
565
|
var _dec$5, _dec2$5, _class$5;
|
|
553
|
-
let
|
|
566
|
+
let EventCreateUserAnonymous = (_dec$5 = Event(), _dec2$5 = BeanInfo({
|
|
554
567
|
module: "a-user"
|
|
555
|
-
}), _dec$5(_class$5 = _dec2$5(_class$5 = class
|
|
568
|
+
}), _dec$5(_class$5 = _dec2$5(_class$5 = class EventCreateUserAnonymous extends BeanEventBase {}) || _class$5) || _class$5);
|
|
556
569
|
|
|
557
570
|
var _dec$4, _dec2$4, _class$4;
|
|
558
|
-
let
|
|
571
|
+
let EventRegister = (_dec$4 = Event(), _dec2$4 = BeanInfo({
|
|
559
572
|
module: "a-user"
|
|
560
|
-
}), _dec$4(_class$4 = _dec2$4(_class$4 = class
|
|
573
|
+
}), _dec$4(_class$4 = _dec2$4(_class$4 = class EventRegister extends BeanEventBase {}) || _class$4) || _class$4);
|
|
561
574
|
|
|
562
575
|
var _dec$3, _dec2$3, _class$3;
|
|
563
576
|
let EventSignin = (_dec$3 = Event(), _dec2$3 = BeanInfo({
|
|
@@ -655,4 +668,4 @@ const Passport = {
|
|
|
655
668
|
admin: Admin
|
|
656
669
|
};
|
|
657
670
|
|
|
658
|
-
export { $getAuthId, $getAuthIdSystem, $getRoleId, $getRoleName, $getUserActivated, $getUserAnonymous, $getUserAvatar, $getUserEmail, $getUserId, $getUserIdSystem, $getUserLocale, $getUserMobile, $getUserName, BeanAuthInner, BeanPassport, BeanRoleInner, BeanUserInner, EventActivate, EventCreateUserAnonymous, EventSignin, EventSignout, GuardPassport, GuardRoleName, GuardUserName, MetaPrintTip, Passport, ScopeModuleAUser, ServiceAuthTokenAdapter, ServiceRedisToken, config, setAuthAdapter, setRoleAdapter, setUserAdapter };
|
|
671
|
+
export { $getAuthId, $getAuthIdSystem, $getRoleId, $getRoleName, $getUserActivated, $getUserAnonymous, $getUserAvatar, $getUserEmail, $getUserId, $getUserIdSystem, $getUserLocale, $getUserMobile, $getUserName, BeanAuthInner, BeanPassport, BeanRoleInner, BeanUserInner, EventActivate, EventCreateUserAnonymous, EventRegister, EventSignin, EventSignout, GuardPassport, GuardRoleName, GuardUserName, MetaPrintTip, Passport, ScopeModuleAUser, ServiceAuthTokenAdapter, ServiceRedisToken, config, setAuthAdapter, setRoleAdapter, setUserAdapter };
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ILocaleInfos } from 'vona';
|
|
1
2
|
export interface IAuthUserProfilePropSlice {
|
|
2
3
|
value: string;
|
|
3
4
|
}
|
|
@@ -15,5 +16,6 @@ export interface IAuthUserProfile {
|
|
|
15
16
|
profileUrl?: string;
|
|
16
17
|
emails?: IAuthUserProfilePropSlice[];
|
|
17
18
|
photos?: IAuthUserProfilePropSlice[];
|
|
19
|
+
locale?: keyof ILocaleInfos;
|
|
18
20
|
confirmed?: boolean;
|
|
19
21
|
}
|