@cloudbase/auth 1.6.1 → 2.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/dist/cjs/index.d.ts +50 -96
  2. package/dist/cjs/index.js +411 -679
  3. package/dist/esm/index.d.ts +50 -96
  4. package/dist/esm/index.js +412 -676
  5. package/package.json +52 -54
  6. package/src/index.ts +413 -650
  7. package/dist/cjs/constants.d.ts +0 -11
  8. package/dist/cjs/constants.js +0 -16
  9. package/dist/cjs/providers/anonymousAuthProvider.d.ts +0 -15
  10. package/dist/cjs/providers/anonymousAuthProvider.js +0 -255
  11. package/dist/cjs/providers/base.d.ts +0 -20
  12. package/dist/cjs/providers/base.js +0 -158
  13. package/dist/cjs/providers/customAuthProvider.d.ts +0 -5
  14. package/dist/cjs/providers/customAuthProvider.js +0 -149
  15. package/dist/cjs/providers/emailAuthProvider.d.ts +0 -9
  16. package/dist/cjs/providers/emailAuthProvider.js +0 -248
  17. package/dist/cjs/providers/phoneAuthProvider.d.ts +0 -17
  18. package/dist/cjs/providers/phoneAuthProvider.js +0 -217
  19. package/dist/cjs/providers/usernameAuthProvider.d.ts +0 -5
  20. package/dist/cjs/providers/usernameAuthProvider.js +0 -168
  21. package/dist/cjs/providers/weixinAuthProvider.d.ts +0 -28
  22. package/dist/cjs/providers/weixinAuthProvider.js +0 -294
  23. package/dist/esm/constants.d.ts +0 -11
  24. package/dist/esm/constants.js +0 -13
  25. package/dist/esm/providers/anonymousAuthProvider.d.ts +0 -15
  26. package/dist/esm/providers/anonymousAuthProvider.js +0 -252
  27. package/dist/esm/providers/base.d.ts +0 -20
  28. package/dist/esm/providers/base.js +0 -155
  29. package/dist/esm/providers/customAuthProvider.d.ts +0 -5
  30. package/dist/esm/providers/customAuthProvider.js +0 -146
  31. package/dist/esm/providers/emailAuthProvider.d.ts +0 -9
  32. package/dist/esm/providers/emailAuthProvider.js +0 -245
  33. package/dist/esm/providers/phoneAuthProvider.d.ts +0 -17
  34. package/dist/esm/providers/phoneAuthProvider.js +0 -214
  35. package/dist/esm/providers/usernameAuthProvider.d.ts +0 -5
  36. package/dist/esm/providers/usernameAuthProvider.js +0 -165
  37. package/dist/esm/providers/weixinAuthProvider.d.ts +0 -28
  38. package/dist/esm/providers/weixinAuthProvider.js +0 -291
  39. package/src/constants.ts +0 -11
  40. package/src/providers/anonymousAuthProvider.ts +0 -125
  41. package/src/providers/base.ts +0 -66
  42. package/src/providers/customAuthProvider.ts +0 -68
  43. package/src/providers/emailAuthProvider.ts +0 -139
  44. package/src/providers/phoneAuthProvider.ts +0 -130
  45. package/src/providers/usernameAuthProvider.ts +0 -76
  46. package/src/providers/weixinAuthProvider.ts +0 -193
@@ -1,128 +1,82 @@
1
1
  import { ICloudbase } from '@cloudbase/types';
2
- import { events } from '@cloudbase/utilities';
3
2
  import { ICloudbaseCache } from '@cloudbase/types/cache';
4
3
  import { ICloudbaseRequest } from '@cloudbase/types/request';
5
- import { ICloudbaseAuthConfig, ICredential, IUser, ILoginState } from '@cloudbase/types/auth';
6
- import { WeixinAuthProvider } from './providers/weixinAuthProvider';
7
- import { AnonymousAuthProvider } from './providers/anonymousAuthProvider';
8
- import { CustomAuthProvider } from './providers/customAuthProvider';
9
- import { LOGINTYPE } from './constants';
10
- import { AuthProvider } from './providers/base';
11
- import { EmailAuthProvider } from './providers/emailAuthProvider';
12
- import { UsernameAuthProvider } from './providers/usernameAuthProvider';
13
- import { PhoneAuthProvider } from './providers/phoneAuthProvider';
4
+ import { ICloudbaseAuthConfig, IUser, IUserInfo, ILoginState } from '@cloudbase/types/auth';
5
+ import { authModels, CloudbaseOAuth } from '@cloudbase/oauth';
14
6
  interface UserInfo {
15
- openid: string;
16
- nickname?: string;
17
- sex?: number;
18
- province?: string;
19
- city?: string;
20
- country?: string;
21
- headimgurl?: string;
22
- privilege?: [string];
23
- unionid?: string;
7
+ uid?: string;
8
+ gender?: string;
9
+ avatarUrl?: string;
10
+ picture?: string;
11
+ email?: string;
12
+ email_verified?: boolean;
13
+ phone_number?: string;
14
+ username?: string;
15
+ name?: string;
16
+ birthdate?: string;
17
+ zoneinfo?: string;
18
+ locale?: string;
19
+ sub?: string;
20
+ created_from?: string;
24
21
  }
25
- declare const eventBus: events.CloudbaseEventEmitter;
26
22
  interface IUserOptions {
27
23
  cache: ICloudbaseCache;
28
- request: ICloudbaseRequest;
24
+ oauthInstance: CloudbaseOAuth;
29
25
  }
30
26
  interface ILoginStateOptions extends IUserOptions {
31
27
  envId: string;
32
28
  }
33
29
  export declare class LoginState implements ILoginState {
34
- credential: ICredential;
35
30
  user: IUser;
31
+ oauthLoginState: any;
32
+ private _oauthInstance;
36
33
  private _cache;
37
- private _loginType;
38
34
  constructor(options: ILoginStateOptions);
39
- checkLocalState(): Promise<void>;
35
+ checkLocalState(): void;
40
36
  checkLocalStateAsync(): Promise<void>;
41
- get isAnonymousAuth(): boolean;
42
- get isCustomAuth(): boolean;
43
- get isWeixinAuth(): boolean;
44
- get isUsernameAuth(): boolean;
45
- get loginType(): string;
46
- get isPhoneAuth(): boolean;
47
37
  }
48
38
  declare class Auth {
49
39
  private readonly _config;
50
40
  private readonly _cache;
51
- private readonly _request;
52
- private readonly _runtime;
53
- private _anonymousAuthProvider;
54
- private _customAuthProvider;
55
- private _weixinAuthProvider;
56
- private _emailAuthProvider;
57
- private _usernameAuthProvider;
58
- private _phoneAuthProvider;
41
+ private _oauthInstance;
59
42
  constructor(config: ICloudbaseAuthConfig & {
60
43
  cache: ICloudbaseCache;
61
- request: ICloudbaseRequest;
44
+ request?: ICloudbaseRequest;
62
45
  runtime?: string;
63
46
  });
47
+ bindPhoneNumber(params: authModels.BindPhoneRequest): Promise<void>;
48
+ unbindProvider(params: authModels.UnbindProviderRequest): Promise<void>;
49
+ bindEmail(params: authModels.BindEmailRequest): Promise<void>;
50
+ verify(params: authModels.VerifyRequest): Promise<authModels.VerifyResponse>;
51
+ getVerification(params: authModels.GetVerificationRequest): Promise<authModels.GetVerificationResponse>;
64
52
  get currentUser(): IUser;
65
- get loginType(): LOGINTYPE;
66
- getCurrenUser(): Promise<IUser>;
67
- getLoginType(): Promise<LOGINTYPE>;
53
+ getCurrentUser(): Promise<IUser>;
54
+ signInAnonymously(): Promise<LoginState>;
55
+ setCustomSignFunc(getTickFn: authModels.GetCustomSignTicketFn): void;
56
+ signInWithCustomTicket(): Promise<LoginState>;
57
+ signIn(params: authModels.SignInRequest): Promise<LoginState>;
58
+ signUp(params: authModels.SignUpRequest): Promise<LoginState>;
59
+ setPassword(params: authModels.SetPasswordRequest): Promise<void>;
60
+ isUsernameRegistered(username: string): Promise<boolean>;
61
+ signOut(): Promise<void>;
62
+ hasLoginState(): LoginState | null;
63
+ getLoginState(): Promise<LoginState>;
64
+ getUserInfo(): Promise<IUserInfo>;
65
+ bindWithProvider(params: authModels.BindWithProviderRequest): Promise<void>;
66
+ queryUser(queryObj: authModels.QueryUserProfileRequest): Promise<authModels.QueryUserProfileResponse>;
68
67
  getAccessToken(): Promise<{
69
68
  accessToken: string;
70
69
  env: string;
71
70
  }>;
72
- weixinAuthProvider({ appid, scope, state }: {
73
- appid: any;
74
- scope: any;
75
- state: any;
76
- }): WeixinAuthProvider;
77
- anonymousAuthProvider(): AnonymousAuthProvider;
78
- customAuthProvider(): CustomAuthProvider;
79
- emailAuthProvider(): EmailAuthProvider;
80
- usernameAuthProvider(): UsernameAuthProvider;
81
- phoneAuthProvider(): PhoneAuthProvider;
82
- signInWithUsernameAndPassword(username: string, password: string): Promise<ILoginState>;
83
- isUsernameRegistered(username: string): Promise<boolean>;
84
- signInWithEmailAndPassword(email: string, password: string): Promise<ILoginState>;
85
- signUpWithEmailAndPassword(email: string, password: string): Promise<any>;
86
- sendPasswordResetEmail(email: string): Promise<any>;
87
- signOut(): Promise<any>;
71
+ grantProviderToken(params: authModels.GrantProviderTokenRequest): Promise<authModels.GrantProviderTokenResponse>;
72
+ signInWithProvider(params: authModels.SignInWithProviderRequest): Promise<LoginState>;
73
+ grantToken(params: authModels.GrantTokenRequest): Promise<LoginState>;
74
+ genProviderRedirectUri(params: authModels.GenProviderRedirectUriRequest): Promise<authModels.GenProviderRedirectUriResponse>;
75
+ resetPassword(params: authModels.ResetPasswordRequest): Promise<void>;
76
+ deviceAuthorize(params: authModels.DeviceAuthorizeRequest): Promise<authModels.DeviceAuthorizeResponse>;
77
+ sudo(params: authModels.SudoRequest): Promise<authModels.SudoResponse>;
88
78
  onLoginStateChanged(callback: Function): Promise<void>;
89
- onLoginStateExpired(callback: Function): void;
90
- onAccessTokenRefreshed(callback: Function): void;
91
- onAnonymousConverted(callback: Function): void;
92
- onLoginTypeChanged(callback: Function): void;
93
- hasLoginState(): ILoginState | null;
94
- getLoginState(): Promise<LoginState>;
95
- shouldRefreshAccessToken(hook: any): void;
96
- getUserInfo(): Promise<any>;
97
- getAuthHeader(): {
98
- 'x-cloudbase-credentials': string;
99
- };
100
- getAuthHeaderAsync(): Promise<{
101
- 'x-cloudbase-credentials': string;
102
- }>;
103
- sendPhoneCode(phoneNumber: string): Promise<boolean>;
104
- signUpWithPhoneCode(phoneNumber: string, phoneCode: string, password: string): Promise<ILoginState>;
105
- signInWithPhoneCodeOrPassword(param: {
106
- phoneNumber: string;
107
- phoneCode?: string;
108
- password?: string;
109
- signMethod?: string;
110
- }): Promise<ILoginState>;
111
- forceResetPwdByPhoneCode(param: {
112
- phoneNumber: string;
113
- phoneCode: string;
114
- password: string;
115
- }): Promise<ILoginState>;
116
- private _onLoginTypeChanged;
79
+ private createLoginState;
117
80
  }
118
- declare const EVENTS: {
119
- LOGIN_STATE_CHANGED: string;
120
- LOGIN_STATE_EXPIRED: string;
121
- LOGIN_TYPE_CHANGED: string;
122
- ANONYMOUS_CONVERTED: string;
123
- ACCESS_TOKEN_REFRESHD: string;
124
- };
125
- export { UserInfo, Auth, AuthProvider, EVENTS, eventBus };
81
+ export { UserInfo, Auth, };
126
82
  export declare function registerAuth(app: Pick<ICloudbase, 'registerComponent'>): void;
127
- declare type IProvider = new (...args: any[]) => any;
128
- export declare function registerProvider(name: string, provider: IProvider): void;