vona-module-a-user 5.0.22 → 5.0.24

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.
@@ -37,36 +37,31 @@ declare module 'vona-module-a-user' {
37
37
  }
38
38
  /** guard: end */
39
39
  /** bean: begin */
40
- export * from '../bean/bean.authInner.ts';
41
40
  export * from '../bean/bean.passport.ts';
42
- export * from '../bean/bean.roleInner.ts';
43
- export * from '../bean/bean.userInner.ts';
41
+ export * from '../bean/bean.role.ts';
42
+ export * from '../bean/bean.user.ts';
44
43
  import 'vona';
45
44
  declare module 'vona' {
46
45
  }
47
46
  declare module 'vona-module-a-user' {
48
- interface BeanAuthInner {
49
- }
50
47
  interface BeanPassport {
51
48
  }
52
- interface BeanRoleInner {
49
+ interface BeanRole {
53
50
  }
54
- interface BeanUserInner {
51
+ interface BeanUser {
55
52
  }
56
53
  }
57
54
  /** bean: end */
58
55
  /** bean: begin */
59
- import type { BeanAuthInner } from '../bean/bean.authInner.ts';
60
56
  import type { BeanPassport } from '../bean/bean.passport.ts';
61
- import type { BeanRoleInner } from '../bean/bean.roleInner.ts';
62
- import type { BeanUserInner } from '../bean/bean.userInner.ts';
57
+ import type { BeanRole } from '../bean/bean.role.ts';
58
+ import type { BeanUser } from '../bean/bean.user.ts';
63
59
  import 'vona';
64
60
  declare module 'vona' {
65
61
  interface IBeanRecordGlobal {
66
- 'authInner': BeanAuthInner;
67
62
  'passport': BeanPassport;
68
- 'roleInner': BeanRoleInner;
69
- 'userInner': BeanUserInner;
63
+ 'role': BeanRole;
64
+ 'user': BeanUser;
70
65
  }
71
66
  }
72
67
  /** bean: end */
@@ -115,6 +110,7 @@ declare module 'vona' {
115
110
  /** event: begin */
116
111
  export * from '../bean/event.activate.ts';
117
112
  export * from '../bean/event.createUserAnonymous.ts';
113
+ export * from '../bean/event.register.ts';
118
114
  export * from '../bean/event.signin.ts';
119
115
  export * from '../bean/event.signout.ts';
120
116
  import 'vona';
@@ -133,6 +129,12 @@ declare module 'vona-module-a-user' {
133
129
  get $beanFullName(): 'a-user.event.createUserAnonymous';
134
130
  get $onionName(): 'a-user:createUserAnonymous';
135
131
  }
132
+ interface EventRegister {
133
+ }
134
+ interface EventRegister {
135
+ get $beanFullName(): 'a-user.event.register';
136
+ get $onionName(): 'a-user:register';
137
+ }
136
138
  interface EventSignin {
137
139
  }
138
140
  interface EventSignin {
@@ -150,11 +152,13 @@ declare module 'vona-module-a-user' {
150
152
  /** event: begin */
151
153
  import type { EventActivate } from '../bean/event.activate.ts';
152
154
  import type { EventCreateUserAnonymous } from '../bean/event.createUserAnonymous.ts';
155
+ import type { EventRegister } from '../bean/event.register.ts';
153
156
  import type { EventSignin } from '../bean/event.signin.ts';
154
157
  import type { EventSignout } from '../bean/event.signout.ts';
155
158
  export interface IModuleEvent {
156
159
  'activate': EventActivate;
157
160
  'createUserAnonymous': EventCreateUserAnonymous;
161
+ 'register': EventRegister;
158
162
  'signin': EventSignin;
159
163
  'signout': EventSignout;
160
164
  }
@@ -162,6 +166,7 @@ export interface IModuleEvent {
162
166
  /** event: begin */
163
167
  import type { TypeEventActivateData, TypeEventActivateResult } from '../bean/event.activate.ts';
164
168
  import type { TypeEventCreateUserAnonymousData, TypeEventCreateUserAnonymousResult } from '../bean/event.createUserAnonymous.ts';
169
+ import type { TypeEventRegisterData, TypeEventRegisterResult } from '../bean/event.register.ts';
165
170
  import type { TypeEventSigninData, TypeEventSigninResult } from '../bean/event.signin.ts';
166
171
  import type { TypeEventSignoutData, TypeEventSignoutResult } from '../bean/event.signout.ts';
167
172
  import type { EventOn } from 'vona-module-a-event';
@@ -169,6 +174,7 @@ declare module 'vona-module-a-event' {
169
174
  interface IEventRecord {
170
175
  'a-user:activate': EventOn<TypeEventActivateData, TypeEventActivateResult>;
171
176
  'a-user:createUserAnonymous': EventOn<TypeEventCreateUserAnonymousData, TypeEventCreateUserAnonymousResult>;
177
+ 'a-user:register': EventOn<TypeEventRegisterData, TypeEventRegisterResult>;
172
178
  'a-user:signin': EventOn<TypeEventSigninData, TypeEventSigninResult>;
173
179
  'a-user:signout': EventOn<TypeEventSignoutData, TypeEventSignoutResult>;
174
180
  }
@@ -1,9 +1,9 @@
1
1
  import type { TableIdentity } from 'table-identity';
2
2
  import type { IRoleBase } from '../types/role.ts';
3
3
  import { BeanBase } from 'vona';
4
- export declare class BeanRoleInner extends BeanBase {
5
- private _roleInnerAdapter;
6
- private get roleInnerAdapter();
4
+ export declare class BeanRole extends BeanBase {
5
+ private _roleAdapter;
6
+ private get roleAdapter();
7
7
  findOneByName(name: string): Promise<IRoleBase | undefined>;
8
8
  findOne(role: Partial<IRoleBase>): Promise<IRoleBase | undefined>;
9
9
  findAllByUserId(userId: TableIdentity): Promise<IRoleBase[] | undefined>;
@@ -1,11 +1,11 @@
1
1
  import type { IAuthUserProfile } from '../types/authProfile.ts';
2
2
  import type { IUserBase } from '../types/user.ts';
3
3
  import { BeanBase } from 'vona';
4
- export declare class BeanUserInner extends BeanBase {
5
- private _userInnerAdapter;
6
- private get userInnerAdapter();
4
+ export declare class BeanUser extends BeanBase {
5
+ private _userAdapter;
6
+ private get userAdapter();
7
7
  activate(user: IUserBase): Promise<void>;
8
- register(user: Partial<IUserBase>, autoActivate?: boolean): Promise<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
+ }
@@ -11,9 +11,8 @@ export declare function config(_app: VonaApplication): {
11
11
  adapter: {
12
12
  authToken: keyof IServiceRecord;
13
13
  passport: keyof IServiceRecord;
14
- userInner: keyof IServiceRecord;
15
- authInner: keyof IServiceRecord;
16
- roleInner: keyof IServiceRecord;
14
+ user: keyof IServiceRecord;
15
+ role: keyof IServiceRecord;
17
16
  };
18
17
  payloadData: {
19
18
  fields: {
package/dist/index.js CHANGED
@@ -49,49 +49,6 @@ let GuardPassport = (_dec$e = Guard({
49
49
  }
50
50
  }) || _class$e) || _class$e);
51
51
 
52
- let __roleAdapter;
53
- function setRoleAdapter(roleAdapter) {
54
- __roleAdapter = roleAdapter;
55
- }
56
- function $getRoleId(role) {
57
- return __roleAdapter.getRoleId(role);
58
- }
59
- function $getRoleName(role) {
60
- return __roleAdapter.getRoleName(role);
61
- }
62
-
63
- let __userAdapter;
64
- function setUserAdapter(userAdapter) {
65
- __userAdapter = userAdapter;
66
- }
67
- function $getUserId(user) {
68
- return __userAdapter.getUserId(user);
69
- }
70
- function $getUserName(user) {
71
- return __userAdapter.getUserName(user);
72
- }
73
- function $getUserAvatar(user) {
74
- return __userAdapter.getUserAvatar(user);
75
- }
76
- function $getUserEmail(user) {
77
- return __userAdapter.getUserEmail(user);
78
- }
79
- function $getUserMobile(user) {
80
- return __userAdapter.getUserMobile(user);
81
- }
82
- function $getUserActivated(user) {
83
- return __userAdapter.getUserActivated(user);
84
- }
85
- function $getUserLocale(user) {
86
- return __userAdapter.getUserLocale(user);
87
- }
88
- function $getUserAnonymous(user) {
89
- return __userAdapter.getUserAnonymous(user);
90
- }
91
- function $getUserIdSystem(_userName, userId) {
92
- return userId;
93
- }
94
-
95
52
  var _dec$d, _dec2$d, _class$d;
96
53
  let GuardRoleName = (_dec$d = Guard({
97
54
  passWhenMatched: true
@@ -101,10 +58,10 @@ let GuardRoleName = (_dec$d = Guard({
101
58
  async execute(options, next) {
102
59
  if (!options.name) return this.app.throw(403);
103
60
  const user = this.bean.passport.getCurrentUser();
104
- if (!user || $getUserAnonymous(user)) return this.app.throw(403);
61
+ if (!user || user.anonymous) return this.app.throw(403);
105
62
  const roles = this.bean.passport.getCurrentRoles();
106
63
  if (!roles) return this.app.throw(403);
107
- const roleNames = roles?.map(item => $getRoleName(item));
64
+ const roleNames = roles?.map(item => item.name);
108
65
  const optionsName = Array.isArray(options.name) ? options.name : [options.name];
109
66
  if (!roleNames.some(roleName => optionsName.includes(roleName))) return this.app.throw(403);
110
67
  if (options.passWhenMatched) return true;
@@ -122,8 +79,8 @@ let GuardUserName = (_dec$c = Guard({
122
79
  async execute(options, next) {
123
80
  if (!options.name) return this.app.throw(403);
124
81
  const user = this.bean.passport.getCurrentUser();
125
- if (!user || $getUserAnonymous(user)) return this.app.throw(403);
126
- const userName = $getUserName(user);
82
+ if (!user || user.anonymous) return this.app.throw(403);
83
+ const userName = user.name;
127
84
  const optionsName = Array.isArray(options.name) ? options.name : [options.name];
128
85
  if (!optionsName.includes(userName)) return this.app.throw(403);
129
86
  if (options.passWhenMatched) return true;
@@ -132,42 +89,14 @@ let GuardUserName = (_dec$c = Guard({
132
89
  }
133
90
  }) || _class$c) || _class$c);
134
91
 
135
- var _dec$b, _dec2$b, _class$b;
136
- let BeanAuthInner = (_dec$b = Bean(), _dec2$b = BeanInfo({
137
- module: "a-user"
138
- }), _dec$b(_class$b = _dec2$b(_class$b = class BeanAuthInner extends BeanBase {
139
- constructor(...args) {
140
- super(...args);
141
- this._authInnerAdapter = void 0;
142
- }
143
- get authInnerAdapter() {
144
- if (!this._authInnerAdapter) {
145
- const beanFullName = beanFullNameFromOnionName(this.scope.config.adapter.authInner, 'service');
146
- this._authInnerAdapter = this.bean._getBean(beanFullName);
147
- }
148
- return this._authInnerAdapter;
149
- }
150
- async findOne(auth) {
151
- if (String(auth.id).charAt(0) === '-') return auth;
152
- return await this.authInnerAdapter.findOne(auth);
153
- }
154
- }) || _class$b) || _class$b);
155
-
156
- let __authAdapter;
157
- function setAuthAdapter(authAdapter) {
158
- __authAdapter = authAdapter;
159
- }
160
- function $getAuthId(user) {
161
- return __authAdapter.getAuthId(user);
162
- }
163
92
  function $getAuthIdSystem(_authName, authId) {
164
93
  return authId;
165
94
  }
166
95
 
167
- var _dec$a, _dec2$a, _class$a;
168
- let BeanPassport = (_dec$a = Bean(), _dec2$a = BeanInfo({
96
+ var _dec$b, _dec2$b, _class$b;
97
+ let BeanPassport = (_dec$b = Bean(), _dec2$b = BeanInfo({
169
98
  module: "a-user"
170
- }), _dec$a(_class$a = _dec2$a(_class$a = class BeanPassport extends BeanBase {
99
+ }), _dec$b(_class$b = _dec2$b(_class$b = class BeanPassport extends BeanBase {
171
100
  constructor(...args) {
172
101
  super(...args);
173
102
  this._authTokenAdapter = void 0;
@@ -190,11 +119,11 @@ let BeanPassport = (_dec$a = Bean(), _dec2$a = BeanInfo({
190
119
  }
191
120
  get isAuthenticated() {
192
121
  const user = this.getCurrentUser();
193
- return !!user && !$getUserAnonymous(user);
122
+ return !!user && !user.anonymous;
194
123
  }
195
124
  get isActivated() {
196
125
  const user = this.getCurrentUser();
197
- return !!user && $getUserActivated(user);
126
+ return !!user && !!user.activated;
198
127
  }
199
128
  async isAdmin() {
200
129
  const passport = this.getCurrent();
@@ -240,7 +169,7 @@ let BeanPassport = (_dec$a = Bean(), _dec2$a = BeanInfo({
240
169
  await this.setCurrent(undefined);
241
170
  }
242
171
  async signinSystem(authName, authId, name, options) {
243
- const user = await this.bean.userInner.findOneByName(name ?? 'admin');
172
+ const user = await this.bean.user.findOneByName(name ?? 'admin');
244
173
  if (!user) return this.app.throw(401);
245
174
  const auth = {
246
175
  id: $getAuthIdSystem(authName, authId)
@@ -263,7 +192,7 @@ let BeanPassport = (_dec$a = Bean(), _dec2$a = BeanInfo({
263
192
  await this.setCurrent(passport);
264
193
  }
265
194
  async createUserAnonymous() {
266
- const userAnonymous = await this.bean.userInner.createAnonymous();
195
+ const userAnonymous = await this.bean.user.createAnonymous();
267
196
  // event
268
197
  await this.scope.event.createUserAnonymous.emit(userAnonymous);
269
198
  // ok
@@ -373,88 +302,96 @@ let BeanPassport = (_dec$a = Bean(), _dec2$a = BeanInfo({
373
302
  return payloadData2;
374
303
  }
375
304
  }
376
- }) || _class$a) || _class$a);
305
+ }) || _class$b) || _class$b);
377
306
 
378
- var _dec$9, _dec2$9, _class$9;
379
- let BeanRoleInner = (_dec$9 = Bean(), _dec2$9 = BeanInfo({
307
+ var _dec$a, _dec2$a, _class$a;
308
+ let BeanRole = (_dec$a = Bean(), _dec2$a = BeanInfo({
380
309
  module: "a-user"
381
- }), _dec$9(_class$9 = _dec2$9(_class$9 = class BeanRoleInner extends BeanBase {
310
+ }), _dec$a(_class$a = _dec2$a(_class$a = class BeanRole extends BeanBase {
382
311
  constructor(...args) {
383
312
  super(...args);
384
- this._roleInnerAdapter = void 0;
313
+ this._roleAdapter = void 0;
385
314
  }
386
- get roleInnerAdapter() {
387
- if (!this._roleInnerAdapter) {
388
- const beanFullName = beanFullNameFromOnionName(this.scope.config.adapter.roleInner, 'service');
389
- this._roleInnerAdapter = this.bean._getBean(beanFullName);
315
+ get roleAdapter() {
316
+ if (!this._roleAdapter) {
317
+ const beanFullName = beanFullNameFromOnionName(this.scope.config.adapter.role, 'service');
318
+ this._roleAdapter = this.bean._getBean(beanFullName);
390
319
  }
391
- return this._roleInnerAdapter;
320
+ return this._roleAdapter;
392
321
  }
393
322
  findOneByName(name) {
394
- return this.roleInnerAdapter.findOneByName(name);
323
+ return this.roleAdapter.findOneByName(name);
395
324
  }
396
325
  findOne(role) {
397
- return this.roleInnerAdapter.findOne(role);
326
+ return this.roleAdapter.findOne(role);
398
327
  }
399
328
  findAllByUserId(userId) {
400
- return this.roleInnerAdapter.findAllByUserId(userId);
329
+ return this.roleAdapter.findAllByUserId(userId);
401
330
  }
402
- }) || _class$9) || _class$9);
331
+ }) || _class$a) || _class$a);
403
332
 
404
- var _dec$8, _dec2$8, _class$8;
405
- let BeanUserInner = (_dec$8 = Bean(), _dec2$8 = BeanInfo({
333
+ var _dec$9, _dec2$9, _class$9;
334
+ let BeanUser = (_dec$9 = Bean(), _dec2$9 = BeanInfo({
406
335
  module: "a-user"
407
- }), _dec$8(_class$8 = _dec2$8(_class$8 = class BeanUserInner extends BeanBase {
336
+ }), _dec$9(_class$9 = _dec2$9(_class$9 = class BeanUser extends BeanBase {
408
337
  constructor(...args) {
409
338
  super(...args);
410
- this._userInnerAdapter = void 0;
339
+ this._userAdapter = void 0;
411
340
  }
412
- get userInnerAdapter() {
413
- if (!this._userInnerAdapter) {
414
- const beanFullName = beanFullNameFromOnionName(this.scope.config.adapter.userInner, 'service');
415
- this._userInnerAdapter = this.bean._getBean(beanFullName);
341
+ get userAdapter() {
342
+ if (!this._userAdapter) {
343
+ const beanFullName = beanFullNameFromOnionName(this.scope.config.adapter.user, 'service');
344
+ this._userAdapter = this.bean._getBean(beanFullName);
416
345
  }
417
- return this._userInnerAdapter;
346
+ return this._userAdapter;
418
347
  }
419
348
  async activate(user) {
420
- await this.scope.event.activate.emit(user, async () => {
421
- await this.userInnerAdapter.setActivated(user.id, true);
349
+ await this.scope.event.activate.emit(user, async user => {
350
+ await this.userAdapter.setActivated(user.id, true);
422
351
  });
423
352
  }
424
- async register(user, autoActivate) {
425
- // config.user.autoActivate > autoActivate
426
- autoActivate = this.scope.config.user.autoActivate ? true : autoActivate;
427
- const userNew = await this.userInnerAdapter.create(user);
428
- if (autoActivate) {
429
- await this.activate(userNew);
430
- }
431
- return userNew;
353
+ async register(user, confirmed) {
354
+ // config.user.autoActivate > confirmed
355
+ const autoActivate = this.scope.config.user.autoActivate ? true : confirmed;
356
+ const data = {
357
+ user,
358
+ confirmed,
359
+ autoActivate
360
+ };
361
+ return await this.scope.event.register.emit(data, async data => {
362
+ // user
363
+ const userNew = await this.userAdapter.create(data.user);
364
+ if (data.autoActivate) {
365
+ await this.activate(userNew);
366
+ }
367
+ return userNew;
368
+ });
432
369
  }
433
370
  async registerByProfile(profile) {
434
- const user = await this.userInnerAdapter.userOfProfile(profile);
371
+ const user = await this.userAdapter.userOfProfile(profile);
435
372
  return await this.register(user, profile.confirmed);
436
373
  }
437
374
  createAnonymous() {
438
- return this.userInnerAdapter.createAnonymous();
375
+ return this.userAdapter.createAnonymous();
439
376
  }
440
377
  findOneByName(name) {
441
- return this.userInnerAdapter.findOneByName(name);
378
+ return this.userAdapter.findOneByName(name);
442
379
  }
443
380
  findOne(user) {
444
- return this.userInnerAdapter.findOne(user);
381
+ return this.userAdapter.findOne(user);
445
382
  }
446
383
  update(user) {
447
- return this.userInnerAdapter.update(user);
384
+ return this.userAdapter.update(user);
448
385
  }
449
386
  remove(user) {
450
- return this.userInnerAdapter.remove(user);
387
+ return this.userAdapter.remove(user);
451
388
  }
452
- }) || _class$8) || _class$8);
389
+ }) || _class$9) || _class$9);
453
390
 
454
- var _dec$7, _dec2$7, _class$7;
455
- let ServiceAuthTokenAdapter = (_dec$7 = Service(), _dec2$7 = BeanInfo({
391
+ var _dec$8, _dec2$8, _class$8;
392
+ let ServiceAuthTokenAdapter = (_dec$8 = Service(), _dec2$8 = BeanInfo({
456
393
  module: "a-user"
457
- }), _dec$7(_class$7 = _dec2$7(_class$7 = class ServiceAuthTokenAdapter extends BeanBase {
394
+ }), _dec$8(_class$8 = _dec2$8(_class$8 = class ServiceAuthTokenAdapter extends BeanBase {
458
395
  async create(payloadData) {
459
396
  const authIdStr = this._getAuthId(payloadData)?.toString();
460
397
  const token = authIdStr === '-1' ? createHash(authIdStr) : uuidv4();
@@ -482,12 +419,12 @@ let ServiceAuthTokenAdapter = (_dec$7 = Service(), _dec2$7 = BeanInfo({
482
419
  _getAuthId(payloadData) {
483
420
  return payloadData[this.scope.config.payloadData.fields.authId];
484
421
  }
485
- }) || _class$7) || _class$7);
422
+ }) || _class$8) || _class$8);
486
423
 
487
- var _dec$6, _dec2$6, _class$6;
488
- let ServiceRedisToken = (_dec$6 = Service(), _dec2$6 = BeanInfo({
424
+ var _dec$7, _dec2$7, _class$7;
425
+ let ServiceRedisToken = (_dec$7 = Service(), _dec2$7 = BeanInfo({
489
426
  module: "a-user"
490
- }), _dec$6(_class$6 = _dec2$6(_class$6 = class ServiceRedisToken extends BeanBase {
427
+ }), _dec$7(_class$7 = _dec2$7(_class$7 = class ServiceRedisToken extends BeanBase {
491
428
  get redisAuth() {
492
429
  return this.bean.redis.get('auth');
493
430
  }
@@ -547,17 +484,22 @@ let ServiceRedisToken = (_dec$6 = Service(), _dec2$6 = BeanInfo({
547
484
  _getUserId(payloadData) {
548
485
  return payloadData[this.scope.config.payloadData.fields.userId];
549
486
  }
550
- }) || _class$6) || _class$6);
487
+ }) || _class$7) || _class$7);
488
+
489
+ var _dec$6, _dec2$6, _class$6;
490
+ let EventActivate = (_dec$6 = Event(), _dec2$6 = BeanInfo({
491
+ module: "a-user"
492
+ }), _dec$6(_class$6 = _dec2$6(_class$6 = class EventActivate extends BeanEventBase {}) || _class$6) || _class$6);
551
493
 
552
494
  var _dec$5, _dec2$5, _class$5;
553
- let EventActivate = (_dec$5 = Event(), _dec2$5 = BeanInfo({
495
+ let EventCreateUserAnonymous = (_dec$5 = Event(), _dec2$5 = BeanInfo({
554
496
  module: "a-user"
555
- }), _dec$5(_class$5 = _dec2$5(_class$5 = class EventActivate extends BeanEventBase {}) || _class$5) || _class$5);
497
+ }), _dec$5(_class$5 = _dec2$5(_class$5 = class EventCreateUserAnonymous extends BeanEventBase {}) || _class$5) || _class$5);
556
498
 
557
499
  var _dec$4, _dec2$4, _class$4;
558
- let EventCreateUserAnonymous = (_dec$4 = Event(), _dec2$4 = BeanInfo({
500
+ let EventRegister = (_dec$4 = Event(), _dec2$4 = BeanInfo({
559
501
  module: "a-user"
560
- }), _dec$4(_class$4 = _dec2$4(_class$4 = class EventCreateUserAnonymous extends BeanEventBase {}) || _class$4) || _class$4);
502
+ }), _dec$4(_class$4 = _dec2$4(_class$4 = class EventRegister extends BeanEventBase {}) || _class$4) || _class$4);
561
503
 
562
504
  var _dec$3, _dec2$3, _class$3;
563
505
  let EventSignin = (_dec$3 = Event(), _dec2$3 = BeanInfo({
@@ -600,9 +542,8 @@ function config(_app) {
600
542
  adapter: {
601
543
  authToken: 'a-user:authTokenAdapter',
602
544
  passport: 'home-user:passportAdapter',
603
- userInner: 'home-user:userInnerAdapter',
604
- authInner: 'home-user:authInnerAdapter',
605
- roleInner: 'home-user:roleInnerAdapter'
545
+ user: 'home-user:userAdapter',
546
+ role: 'home-user:roleAdapter'
606
547
  },
607
548
  payloadData: {
608
549
  fields: {
@@ -655,4 +596,8 @@ const Passport = {
655
596
  admin: Admin
656
597
  };
657
598
 
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 };
599
+ function $getUserIdSystem(_userName, userId) {
600
+ return userId;
601
+ }
602
+
603
+ export { $getAuthIdSystem, $getUserIdSystem, BeanPassport, BeanRole, BeanUser, EventActivate, EventCreateUserAnonymous, EventRegister, EventSignin, EventSignout, GuardPassport, GuardRoleName, GuardUserName, MetaPrintTip, Passport, ScopeModuleAUser, ServiceAuthTokenAdapter, ServiceRedisToken, config };
@@ -1,5 +1,3 @@
1
1
  import type { TableIdentity } from 'table-identity';
2
- import type { IAuthAdapter, IAuthBase, IAuthIdRecord } from '../types/auth.ts';
3
- export declare function setAuthAdapter(authAdapter: IAuthAdapter): void;
4
- export declare function $getAuthId(user: IAuthBase): TableIdentity;
2
+ import type { IAuthIdRecord } from '../types/auth.ts';
5
3
  export declare function $getAuthIdSystem<K extends keyof IAuthIdRecord>(_authName: IAuthIdRecord[K], authId: K): TableIdentity;
@@ -1,4 +1,3 @@
1
1
  export * from './auth.ts';
2
2
  export * from './passport.ts';
3
- export * from './role.ts';
4
3
  export * from './user.ts';
@@ -1,13 +1,3 @@
1
1
  import type { TableIdentity } from 'table-identity';
2
- import type { ILocaleInfos } from 'vona';
3
- import type { IUserAdapter, IUserBase, IUserIdRecord } from '../types/user.ts';
4
- export declare function setUserAdapter(userAdapter: IUserAdapter): void;
5
- export declare function $getUserId(user: IUserBase): TableIdentity;
6
- export declare function $getUserName(user: IUserBase): string;
7
- export declare function $getUserAvatar(user: IUserBase): string | undefined;
8
- export declare function $getUserEmail(user: IUserBase): string | undefined;
9
- export declare function $getUserMobile(user: IUserBase): string | undefined;
10
- export declare function $getUserActivated(user: IUserBase): boolean;
11
- export declare function $getUserLocale(user: IUserBase): keyof ILocaleInfos | undefined;
12
- export declare function $getUserAnonymous(user: IUserBase): boolean;
2
+ import type { IUserIdRecord } from '../types/user.ts';
13
3
  export declare function $getUserIdSystem<K extends keyof IUserIdRecord>(_userName: IUserIdRecord[K], userId: K): TableIdentity;
@@ -1,19 +1,21 @@
1
1
  import type { TableIdentity } from 'table-identity';
2
+ import type { IAuthProviderRecord } from 'vona-module-a-auth';
2
3
  export interface IAuthIdRecord {
3
4
  '-1': 'dev';
4
5
  '-10000': 'mock';
5
6
  }
6
- export interface IAuthBase {
7
+ export interface IAuthProviderBase {
7
8
  id: TableIdentity;
9
+ providerName: keyof IAuthProviderRecord;
10
+ clientName: string;
8
11
  }
9
- export interface IAuthAdapter {
10
- getAuthId(user: IAuthBase): TableIdentity;
12
+ export interface IAuthBase {
13
+ id: TableIdentity;
14
+ profileId?: string;
15
+ authProvider?: IAuthProviderBase;
11
16
  }
12
17
  export type TypeAuthToken = 'recreate' | 'refresh' | 'nochange';
13
18
  export interface ISigninOptions {
14
19
  /** default: refresh */
15
20
  authToken?: TypeAuthToken;
16
21
  }
17
- export interface IAuthInnerAdapter {
18
- findOne(auth: Partial<IAuthBase>): Promise<IAuthBase | undefined>;
19
- }
@@ -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
  }
@@ -6,12 +6,9 @@ export interface IRoleIdRecord {
6
6
  }
7
7
  export interface IRoleBase {
8
8
  id: TableIdentity;
9
+ name: string;
9
10
  }
10
11
  export interface IRoleAdapter {
11
- getRoleId(role: IRoleBase): TableIdentity;
12
- getRoleName(role: IRoleBase): string;
13
- }
14
- export interface IRoleInnerAdapter {
15
12
  findOneByName(name: string): Promise<IRoleBase | undefined>;
16
13
  findOne(role: Partial<IRoleBase>): Promise<IRoleBase | undefined>;
17
14
  findAllByUserId(userId: TableIdentity): Promise<IRoleBase[] | undefined>;
@@ -9,18 +9,15 @@ export interface IUserIdRecord {
9
9
  }
10
10
  export interface IUserBase {
11
11
  id: TableIdentity;
12
+ name: string;
13
+ avatar?: string;
14
+ email?: string;
15
+ mobile?: string;
16
+ activated?: boolean;
17
+ locale?: keyof ILocaleInfos | undefined;
18
+ anonymous?: boolean;
12
19
  }
13
20
  export interface IUserAdapter {
14
- getUserId(user: IUserBase): TableIdentity;
15
- getUserName(user: IUserBase): string;
16
- getUserAvatar(user: IUserBase): string | undefined;
17
- getUserEmail(user: IUserBase): string | undefined;
18
- getUserMobile(user: IUserBase): string | undefined;
19
- getUserActivated(user: IUserBase): boolean;
20
- getUserLocale(user: IUserBase): keyof ILocaleInfos | undefined;
21
- getUserAnonymous(user: IUserBase): boolean;
22
- }
23
- export interface IUserInnerAdapter {
24
21
  create(user: Partial<IUserBase>): Promise<IUserBase>;
25
22
  userOfProfile(profile: IAuthUserProfile): Promise<IUserBase>;
26
23
  createAnonymous(): Promise<IUserBase>;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vona-module-a-user",
3
3
  "type": "module",
4
- "version": "5.0.22",
4
+ "version": "5.0.24",
5
5
  "title": "a-user",
6
6
  "vonaModule": {
7
7
  "dependencies": {}
@@ -1,7 +0,0 @@
1
- import type { IAuthBase } from '../types/auth.ts';
2
- import { BeanBase } from 'vona';
3
- export declare class BeanAuthInner extends BeanBase {
4
- private _authInnerAdapter;
5
- private get authInnerAdapter();
6
- findOne(auth: Partial<IAuthBase>): Promise<IAuthBase | undefined>;
7
- }
@@ -1,5 +0,0 @@
1
- import type { TableIdentity } from 'table-identity';
2
- import type { IRoleAdapter, IRoleBase } from '../types/role.ts';
3
- export declare function setRoleAdapter(roleAdapter: IRoleAdapter): void;
4
- export declare function $getRoleId(role: IRoleBase): TableIdentity;
5
- export declare function $getRoleName(role: IRoleBase): string;