@norcy/react-native-toolkit 0.1.138 → 0.1.140

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/README.md CHANGED
@@ -8,6 +8,18 @@ App 工厂核心组件
8
8
  yarn add @norcy/react-native-toolkit
9
9
  ```
10
10
 
11
+ ## Android 引入
12
+
13
+ App 端需要在 `android/app/build.gradle` 中添加:
14
+
15
+ ```gradle
16
+ dependencies {
17
+ implementation 'com.umeng.umsdk:common:9.6.3'
18
+ implementation 'com.umeng.umsdk:asms:1.8.0'
19
+ }
20
+ ```
21
+
22
+
11
23
  ## 维护
12
24
  【重要】TS 校验和 ESLint 校验
13
25
 
@@ -127,4 +127,8 @@ dependencies {
127
127
  // noinspection GradleDynamicVersion
128
128
  api 'com.facebook.react:react-native:+'
129
129
  implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
130
+
131
+ // 友盟统计
132
+ compileOnly 'com.umeng.umsdk:common:9.6.3'
133
+ compileOnly 'com.umeng.umsdk:asms:1.8.0'
130
134
  }
@@ -1,4 +1,4 @@
1
1
  <manifest xmlns:android="http://schemas.android.com/apk/res/android"
2
- package="com.norcyreactnativetoolkit">
2
+ package="com.norcy.reactnativetoolkit">
3
3
 
4
4
  </manifest>
@@ -0,0 +1,48 @@
1
+ package com.norcy.reactnativetoolkit;
2
+
3
+ import com.facebook.react.bridge.Arguments;
4
+ import com.facebook.react.bridge.ReactApplicationContext;
5
+ import com.facebook.react.bridge.ReactContextBaseJavaModule;
6
+ import com.facebook.react.bridge.ReactMethod;
7
+ import com.facebook.react.bridge.ReadableMap;
8
+ import com.facebook.react.bridge.WritableMap;
9
+ import com.umeng.analytics.MobclickAgent;
10
+
11
+ public class NCYReport extends ReactContextBaseJavaModule {
12
+ public NCYReport(ReactApplicationContext reactContext) {
13
+ super(reactContext);
14
+ }
15
+
16
+ @Override
17
+ public String getName() {
18
+ return "NCYReport";
19
+ }
20
+
21
+ @ReactMethod
22
+ public void report(String key, ReadableMap params) {
23
+ WritableMap attributes = Arguments.createMap();
24
+ attributes.merge(params);
25
+ MobclickAgent.onEventObject(getReactApplicationContext(), key, attributes.toHashMap());
26
+ }
27
+
28
+ @ReactMethod
29
+ public void signIn(String userId) {
30
+ MobclickAgent.onProfileSignIn(userId);
31
+ }
32
+
33
+ @ReactMethod
34
+ public void signOut() {
35
+ MobclickAgent.onProfileSignOff();
36
+ }
37
+
38
+ @ReactMethod
39
+ public void enterPage(String pageName) {
40
+ MobclickAgent.onPageStart(pageName);
41
+ }
42
+
43
+ @ReactMethod
44
+ public void leavePage(String pageName) {
45
+ MobclickAgent.onPageEnd(pageName);
46
+ }
47
+ }
48
+
@@ -1,4 +1,4 @@
1
- package com.norcyreactnativetoolkit
1
+ package com.norcy.reactnativetoolkit
2
2
 
3
3
  import com.facebook.react.bridge.ReactApplicationContext
4
4
  import com.facebook.react.bridge.ReactContextBaseJavaModule
@@ -22,3 +22,4 @@ class ReactNativeToolkitModule(reactContext: ReactApplicationContext) : ReactCon
22
22
 
23
23
 
24
24
  }
25
+
@@ -1,4 +1,4 @@
1
- package com.norcyreactnativetoolkit
1
+ package com.norcy.reactnativetoolkit
2
2
 
3
3
  import java.util.Arrays
4
4
  import java.util.Collections
@@ -11,10 +11,14 @@ import com.facebook.react.bridge.JavaScriptModule
11
11
 
12
12
  class ReactNativeToolkitPackage : ReactPackage {
13
13
  override fun createNativeModules(reactContext: ReactApplicationContext): List<NativeModule> {
14
- return Arrays.asList<NativeModule>(ReactNativeToolkitModule(reactContext))
14
+ return Arrays.asList<NativeModule>(
15
+ ReactNativeToolkitModule(reactContext),
16
+ NCYReport(reactContext)
17
+ )
15
18
  }
16
19
 
17
20
  override fun createViewManagers(reactContext: ReactApplicationContext): List<ViewManager<*, *>> {
18
21
  return emptyList<ViewManager<*, *>>()
19
22
  }
20
23
  }
24
+
@@ -36,6 +36,7 @@ const onLoginFinish = _ref => {
36
36
  isAuto,
37
37
  user
38
38
  };
39
+ console.log('onLoginSuccess', data);
39
40
  _Notification.Notification.postNotification('onLoginSuccess', data);
40
41
  } else {
41
42
  const data = {
@@ -43,6 +44,7 @@ const onLoginFinish = _ref => {
43
44
  error,
44
45
  code
45
46
  };
47
+ console.log('onLoginFail', data);
46
48
  _Notification.Notification.postNotification('onLoginFail', data);
47
49
  }
48
50
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_reactNativeDeviceInfo","_AppleLoginUtil","_Notification","_PrefData","_Tool","_WeChatLoginUtil","_constant","AV","CURRENT_USER","AVUserToLocalUser","user","nickname","get","email","headimgurl","type","AVUser","onLoginFinish","_ref","isAuto","error","code","PrefData","setValue","BuildInPrefs","LastLoginType","data","Notification","postNotification","doLeanCloudLogin","authData","userData","callback","console","log","loginType","loginTypeNum","LoginType","LoginTypeApple","LoginTypeWeChat","LoginTypeVisitor","User","loginWithAuthData","failOnNotExist","then","newUser","setEmail","set","Platform","OS","isNew","RegisterInThisDevice","error2","LoginManager","exports","autoLogin","currentAsync","login","devAuthData","arguments","length","undefined","loadingCallback","qrcodeCallback","cuurentUser","__DEV__","_ref2","identityToken","AppleLoginUtil","requestAppleUserForLogin","userId","openid","access_token","expires_in","fetchAndUpdateCredentialState","_ref3","result","LoginState","AUTHORIZED","_ref4","loginUser","error3","WeChatLoginUtil","doLogin","ToolkitConfig","WeiXinId","WeiXinSecret","_ref5","unionid","_ref6","LoginTypeWeChatScan","doLoginByScan","_ref7","_ref8","uniqueId","getUniqueIdSync","_ref9","logOut","isLogin","currentUser","isVisitor","_LoginManager$current","batchUpdateUser","keys","values","oldValues","i","push","save","e","updateUser","key","value","deleteUser","requestDeleteAccount","destroy","lastLoginType","getValue","isRegisterInThisDevice","fetchWeChatAvatar","_ref10","getRegisterDays","_LoginManager$current2","createTime","getCreatedAt","diff","Date","getTime","diffDay","Math","max","ceil"],"sources":["LoginManager.ts"],"sourcesContent":["import { User } from 'leancloud-storage';\nimport { Platform } from 'react-native';\nimport { getUniqueIdSync } from 'react-native-device-info';\nimport { AppleLoginUtil } from './AppleLoginUtil';\nimport { Notification } from './Notification';\nimport { BuildInPrefs, PrefData } from './PrefData';\nimport { ToolkitConfig } from './Tool';\nimport { WeChatLoginUtil } from './WeChatLoginUtil';\nimport {\n LoginAuthDataType,\n LoginState,\n LoginType,\n LoginUserDataType,\n UserType,\n} from './constant';\n\ntype FetchImageFunctionType = ({ headimgurl }: { headimgurl: string }) => void;\nexport type LoginSuccessResultType = {\n isAuto?: boolean;\n user: UserType;\n};\nexport type LoginFailResulType = {\n isAuto?: boolean;\n error: string | object;\n code?: string;\n};\n\ntype LoginFinishParams = {\n isAuto?: boolean;\n user?: UserType;\n error?: string | object;\n code?: string;\n};\n\nconst AV = require('leancloud-storage');\n\nlet CURRENT_USER: UserType | null = null;\n\nconst AVUserToLocalUser = (user: User) => {\n return {\n nickname: user.get('nickname'),\n email: user.get('email'),\n headimgurl: user.get('headimgurl'),\n type: user.get('type'),\n AVUser: user,\n };\n};\n\nconst onLoginFinish = ({\n isAuto = false,\n user,\n error,\n code,\n}: LoginFinishParams) => {\n if (user) {\n PrefData.setValue(BuildInPrefs.LastLoginType, user.type);\n const data = { isAuto, user };\n Notification.postNotification('onLoginSuccess', data);\n } else {\n const data = { isAuto, error, code };\n Notification.postNotification('onLoginFail', data);\n }\n};\n\nconst doLeanCloudLogin = async (\n authData: LoginAuthDataType,\n userData: LoginUserDataType | undefined,\n callback: ({ user, error }: { user?: UserType; error?: any }) => void\n) => {\n console.log('Lean Cloud 开始登录', userData);\n // loginType 空说明是老用户\n const loginType = authData.loginType ? authData.loginType : 'apple';\n let loginTypeNum = LoginType.LoginTypeApple;\n if (loginType === 'wechat') {\n loginTypeNum = LoginType.LoginTypeWeChat;\n } else if (loginType === 'visitor') {\n loginTypeNum = LoginType.LoginTypeVisitor;\n }\n\n AV.User.loginWithAuthData(authData, loginType, { failOnNotExist: true }).then(\n (user: User) => {\n // 登录成功\n console.log('Lean Cloud 登录成功');\n // 每次重新鉴权都更新头像和昵称,避免微信头像过期\n // if (userData?.nickname) {\n // user.set('nickname', userData?.nickname);\n // }\n // if (userData?.headimgurl) {\n // user.set('headimgurl', userData?.headimgurl);\n // }\n // user.save();\n CURRENT_USER = AVUserToLocalUser(user);\n callback({ user: CURRENT_USER });\n },\n (error: any) => {\n if (error.code === 211) {\n // 创建用户,并补充资料\n console.log('创建用户,并补充资料');\n const newUser = new AV.User();\n const email = userData?.email;\n if (email) {\n newUser.setEmail(email);\n }\n newUser.set('nickname', userData?.nickname);\n newUser.set('headimgurl', userData?.headimgurl);\n newUser.set('type', loginTypeNum);\n if (Platform.OS === 'android') {\n newUser.set('source', 2);\n }\n newUser.loginWithAuthData(authData, loginType).then(\n (user: User) => {\n // 登录成功\n console.log('Lean Cloud 注册成功');\n CURRENT_USER = AVUserToLocalUser(user);\n CURRENT_USER.isNew = true;\n // 标记为当前用户是在本机注册的 TODO\n PrefData.setValue(BuildInPrefs.RegisterInThisDevice, true);\n callback({ user: CURRENT_USER });\n },\n (error2: any) => {\n // 登录失败\n console.log('Lean Cloud 登录失败', error2);\n callback({ error: error2 });\n }\n );\n } else {\n // 登录失败\n console.log('Lean Cloud 登录失败', error);\n callback({ error: error });\n }\n }\n );\n};\n\nexport const LoginManager = {\n // 自动根据已有的 User 信息进行登录鉴权,如果 User 为空则失败\n autoLogin: async () => {\n const user = await AV.User.currentAsync();\n if (user) {\n console.log('自动登录成功');\n CURRENT_USER = AVUserToLocalUser(user);\n onLoginFinish({ isAuto: true, user: CURRENT_USER });\n } else {\n onLoginFinish({ isAuto: true, error: 'User Not Login Yet' });\n }\n },\n\n // 如果 User 为空,则唤起苹果登录框;如果 User 不为空,直接鉴权\n login: async (\n type: LoginType,\n devAuthData: LoginAuthDataType | null = null,\n loadingCallback: Function,\n qrcodeCallback?: (qrcode: string) => void\n ) => {\n // 如果之前已经鉴权过,则直接使用上次鉴权的 AuthData\n const cuurentUser = await AV.User.currentAsync();\n if (cuurentUser) {\n await LoginManager.autoLogin();\n return;\n }\n\n // 改为注入 delegate\n if (__DEV__) {\n if (devAuthData) {\n doLeanCloudLogin(devAuthData, undefined, ({ user, error }) => {\n onLoginFinish({ user, error });\n });\n return;\n }\n }\n\n if (type === LoginType.LoginTypeApple) {\n const { user, email, identityToken, error, code } =\n await AppleLoginUtil.requestAppleUserForLogin();\n if (!user || error) {\n onLoginFinish({ error, code });\n return;\n } else {\n let userData = {\n userId: user,\n email: email,\n authData: {\n openid: user,\n access_token: identityToken,\n expires_in: 99999999,\n loginType: 'apple',\n },\n };\n\n AppleLoginUtil.fetchAndUpdateCredentialState(\n userData.userId,\n ({ result, error: error2 }: { result: number; error: any }) => {\n if (error || result !== LoginState.AUTHORIZED) {\n onLoginFinish({ error: error2 });\n } else {\n loadingCallback && loadingCallback();\n doLeanCloudLogin(\n userData.authData,\n userData,\n ({ user: loginUser, error: error3 }) => {\n onLoginFinish({ user: loginUser, error: error3 });\n }\n );\n }\n }\n );\n }\n } else if (type === LoginType.LoginTypeWeChat) {\n WeChatLoginUtil.doLogin(\n ToolkitConfig.WeiXinId,\n ToolkitConfig.WeiXinSecret,\n ({\n nickname,\n headimgurl,\n openid,\n unionid,\n error,\n }: {\n nickname: string;\n headimgurl: string;\n openid: string;\n unionid: string;\n error: any;\n }) => {\n if (error) {\n onLoginFinish({ error });\n } else {\n let userData = {\n nickname: nickname,\n headimgurl: headimgurl,\n authData: {\n openid: openid,\n unionid: unionid,\n access_token: openid,\n expires_in: 99999999,\n loginType: 'wechat',\n },\n };\n loadingCallback && loadingCallback();\n doLeanCloudLogin(\n userData.authData,\n userData,\n ({ user, error: error2 }) => {\n onLoginFinish({ user, error: error2 });\n }\n );\n }\n }\n );\n } else if (type === LoginType.LoginTypeWeChatScan) {\n WeChatLoginUtil.doLoginByScan(\n ToolkitConfig.WeiXinId,\n ToolkitConfig.WeiXinSecret,\n qrcodeCallback!,\n ({\n nickname,\n headimgurl,\n openid,\n unionid,\n error,\n }: {\n nickname: string;\n headimgurl: string;\n openid: string;\n unionid: string;\n error: any;\n }) => {\n if (error) {\n onLoginFinish({ error });\n } else {\n let userData = {\n nickname: nickname,\n headimgurl: headimgurl,\n authData: {\n openid: openid,\n unionid: unionid,\n access_token: openid,\n expires_in: 99999999,\n loginType: 'wechat',\n },\n };\n loadingCallback && loadingCallback();\n doLeanCloudLogin(\n userData.authData,\n userData,\n ({ user, error: error2 }) => {\n onLoginFinish({ user, error: error2 });\n }\n );\n }\n }\n );\n } else if (type === LoginType.LoginTypeVisitor) {\n const uniqueId = getUniqueIdSync();\n console.log(uniqueId);\n let userData = {\n nickname: 'Visitor',\n authData: {\n openid: uniqueId,\n access_token: uniqueId,\n expires_in: 99999999,\n loginType: 'visitor',\n },\n };\n loadingCallback && loadingCallback();\n doLeanCloudLogin(userData.authData, userData, ({ user, error }) => {\n onLoginFinish({ user, error });\n });\n } else {\n onLoginFinish({ error: 'Unknown Login Type' });\n }\n },\n\n logOut: (callback?: Function) => {\n console.log('onLogout');\n AV.User.logOut();\n CURRENT_USER = null;\n callback && callback();\n Notification.postNotification('onLogout');\n },\n\n isLogin: () => {\n return LoginManager.currentUser() != null;\n },\n\n isVisitor: () => {\n return (\n LoginManager.isLogin() &&\n LoginManager.currentUser()?.type === LoginType.LoginTypeVisitor\n );\n },\n\n currentUser: () => {\n // console.log('current user is ', CURRENT_USER);\n return CURRENT_USER;\n },\n\n batchUpdateUser: async (\n keys: string[],\n values: any[],\n callback?: Function\n ) => {\n console.log('Batch Update User Begin: ' + keys + ' ' + values);\n const user = await AV.User.currentAsync();\n if (!user) {\n return;\n }\n const oldValues = [];\n for (let i = 0; i < keys.length; i++) {\n oldValues.push(user.get(keys[i]));\n user.set(keys[i], values[i]);\n }\n try {\n const newUser = await user.save();\n CURRENT_USER = AVUserToLocalUser(newUser);\n console.log('Batch Update User End', user);\n callback && callback();\n } catch (e) {\n console.error(e);\n for (let i = 0; i < keys.length; i++) {\n user.set(keys[i], oldValues[i]);\n }\n callback && callback(e);\n }\n },\n\n updateUser: (key: string, value: any, callback?: Function) => {\n LoginManager.batchUpdateUser([key], [value], callback);\n },\n\n deleteUser: async (callback: Function) => {\n try {\n if (!CURRENT_USER) {\n return;\n }\n if (CURRENT_USER.type === LoginType.LoginTypeApple) {\n await AppleLoginUtil.requestDeleteAccount();\n }\n const user = await AV.User.currentAsync();\n console.log('get user success');\n await user.destroy();\n console.log('delete user success');\n callback();\n } catch (error) {\n console.error(error);\n callback(error);\n }\n },\n\n lastLoginType: () => {\n return PrefData.getValue(BuildInPrefs.LastLoginType);\n },\n\n isRegisterInThisDevice: () => {\n return PrefData.getValue(BuildInPrefs.RegisterInThisDevice);\n },\n\n fetchWeChatAvatar: (callback: FetchImageFunctionType) => {\n WeChatLoginUtil.doLogin(\n ToolkitConfig.WeiXinId,\n ToolkitConfig.WeiXinSecret,\n ({ headimgurl }: { headimgurl: string }) => {\n callback({ headimgurl });\n }\n );\n },\n\n // 已注册天数\n getRegisterDays: () => {\n if (!LoginManager.isLogin()) {\n return 0;\n }\n const createTime = LoginManager.currentUser()?.AVUser.getCreatedAt();\n if (createTime) {\n const diff = new Date().getTime() - createTime.getTime();\n const diffDay = Math.max(Math.ceil(diff / (24 * 60 * 60 * 1000)), 0);\n return diffDay;\n }\n return 0;\n },\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_reactNative","require","_reactNativeDeviceInfo","_AppleLoginUtil","_Notification","_PrefData","_Tool","_WeChatLoginUtil","_constant","AV","CURRENT_USER","AVUserToLocalUser","user","nickname","get","email","headimgurl","type","AVUser","onLoginFinish","_ref","isAuto","error","code","PrefData","setValue","BuildInPrefs","LastLoginType","data","console","log","Notification","postNotification","doLeanCloudLogin","authData","userData","callback","loginType","loginTypeNum","LoginType","LoginTypeApple","LoginTypeWeChat","LoginTypeVisitor","User","loginWithAuthData","failOnNotExist","then","newUser","setEmail","set","Platform","OS","isNew","RegisterInThisDevice","error2","LoginManager","exports","autoLogin","currentAsync","login","devAuthData","arguments","length","undefined","loadingCallback","qrcodeCallback","cuurentUser","__DEV__","_ref2","identityToken","AppleLoginUtil","requestAppleUserForLogin","userId","openid","access_token","expires_in","fetchAndUpdateCredentialState","_ref3","result","LoginState","AUTHORIZED","_ref4","loginUser","error3","WeChatLoginUtil","doLogin","ToolkitConfig","WeiXinId","WeiXinSecret","_ref5","unionid","_ref6","LoginTypeWeChatScan","doLoginByScan","_ref7","_ref8","uniqueId","getUniqueIdSync","_ref9","logOut","isLogin","currentUser","isVisitor","_LoginManager$current","batchUpdateUser","keys","values","oldValues","i","push","save","e","updateUser","key","value","deleteUser","requestDeleteAccount","destroy","lastLoginType","getValue","isRegisterInThisDevice","fetchWeChatAvatar","_ref10","getRegisterDays","_LoginManager$current2","createTime","getCreatedAt","diff","Date","getTime","diffDay","Math","max","ceil"],"sources":["LoginManager.ts"],"sourcesContent":["import { User } from 'leancloud-storage';\nimport { Platform } from 'react-native';\nimport { getUniqueIdSync } from 'react-native-device-info';\nimport { AppleLoginUtil } from './AppleLoginUtil';\nimport { Notification } from './Notification';\nimport { BuildInPrefs, PrefData } from './PrefData';\nimport { ToolkitConfig } from './Tool';\nimport { WeChatLoginUtil } from './WeChatLoginUtil';\nimport {\n LoginAuthDataType,\n LoginState,\n LoginType,\n LoginUserDataType,\n UserType,\n} from './constant';\n\ntype FetchImageFunctionType = ({ headimgurl }: { headimgurl: string }) => void;\nexport type LoginSuccessResultType = {\n isAuto?: boolean;\n user: UserType;\n};\nexport type LoginFailResulType = {\n isAuto?: boolean;\n error: string | object;\n code?: string;\n};\n\ntype LoginFinishParams = {\n isAuto?: boolean;\n user?: UserType;\n error?: string | object;\n code?: string;\n};\n\nconst AV = require('leancloud-storage');\n\nlet CURRENT_USER: UserType | null = null;\n\nconst AVUserToLocalUser = (user: User) => {\n return {\n nickname: user.get('nickname'),\n email: user.get('email'),\n headimgurl: user.get('headimgurl'),\n type: user.get('type'),\n AVUser: user,\n };\n};\n\nconst onLoginFinish = ({\n isAuto = false,\n user,\n error,\n code,\n}: LoginFinishParams) => {\n if (user) {\n PrefData.setValue(BuildInPrefs.LastLoginType, user.type);\n const data = { isAuto, user };\n console.log('onLoginSuccess', data);\n Notification.postNotification('onLoginSuccess', data);\n } else {\n const data = { isAuto, error, code };\n console.log('onLoginFail', data);\n Notification.postNotification('onLoginFail', data);\n }\n};\n\nconst doLeanCloudLogin = async (\n authData: LoginAuthDataType,\n userData: LoginUserDataType | undefined,\n callback: ({ user, error }: { user?: UserType; error?: any }) => void\n) => {\n console.log('Lean Cloud 开始登录', userData);\n // loginType 空说明是老用户\n const loginType = authData.loginType ? authData.loginType : 'apple';\n let loginTypeNum = LoginType.LoginTypeApple;\n if (loginType === 'wechat') {\n loginTypeNum = LoginType.LoginTypeWeChat;\n } else if (loginType === 'visitor') {\n loginTypeNum = LoginType.LoginTypeVisitor;\n }\n\n AV.User.loginWithAuthData(authData, loginType, { failOnNotExist: true }).then(\n (user: User) => {\n // 登录成功\n console.log('Lean Cloud 登录成功');\n // 每次重新鉴权都更新头像和昵称,避免微信头像过期\n // if (userData?.nickname) {\n // user.set('nickname', userData?.nickname);\n // }\n // if (userData?.headimgurl) {\n // user.set('headimgurl', userData?.headimgurl);\n // }\n // user.save();\n CURRENT_USER = AVUserToLocalUser(user);\n callback({ user: CURRENT_USER });\n },\n (error: any) => {\n if (error.code === 211) {\n // 创建用户,并补充资料\n console.log('创建用户,并补充资料');\n const newUser = new AV.User();\n const email = userData?.email;\n if (email) {\n newUser.setEmail(email);\n }\n newUser.set('nickname', userData?.nickname);\n newUser.set('headimgurl', userData?.headimgurl);\n newUser.set('type', loginTypeNum);\n if (Platform.OS === 'android') {\n newUser.set('source', 2);\n }\n newUser.loginWithAuthData(authData, loginType).then(\n (user: User) => {\n // 登录成功\n console.log('Lean Cloud 注册成功');\n CURRENT_USER = AVUserToLocalUser(user);\n CURRENT_USER.isNew = true;\n // 标记为当前用户是在本机注册的 TODO\n PrefData.setValue(BuildInPrefs.RegisterInThisDevice, true);\n callback({ user: CURRENT_USER });\n },\n (error2: any) => {\n // 登录失败\n console.log('Lean Cloud 登录失败', error2);\n callback({ error: error2 });\n }\n );\n } else {\n // 登录失败\n console.log('Lean Cloud 登录失败', error);\n callback({ error: error });\n }\n }\n );\n};\n\nexport const LoginManager = {\n // 自动根据已有的 User 信息进行登录鉴权,如果 User 为空则失败\n autoLogin: async () => {\n const user = await AV.User.currentAsync();\n if (user) {\n console.log('自动登录成功');\n CURRENT_USER = AVUserToLocalUser(user);\n onLoginFinish({ isAuto: true, user: CURRENT_USER });\n } else {\n onLoginFinish({ isAuto: true, error: 'User Not Login Yet' });\n }\n },\n\n // 如果 User 为空,则唤起苹果登录框;如果 User 不为空,直接鉴权\n login: async (\n type: LoginType,\n devAuthData: LoginAuthDataType | null = null,\n loadingCallback: Function,\n qrcodeCallback?: (qrcode: string) => void\n ) => {\n // 如果之前已经鉴权过,则直接使用上次鉴权的 AuthData\n const cuurentUser = await AV.User.currentAsync();\n if (cuurentUser) {\n await LoginManager.autoLogin();\n return;\n }\n\n // 改为注入 delegate\n if (__DEV__) {\n if (devAuthData) {\n doLeanCloudLogin(devAuthData, undefined, ({ user, error }) => {\n onLoginFinish({ user, error });\n });\n return;\n }\n }\n\n if (type === LoginType.LoginTypeApple) {\n const { user, email, identityToken, error, code } =\n await AppleLoginUtil.requestAppleUserForLogin();\n if (!user || error) {\n onLoginFinish({ error, code });\n return;\n } else {\n let userData = {\n userId: user,\n email: email,\n authData: {\n openid: user,\n access_token: identityToken,\n expires_in: 99999999,\n loginType: 'apple',\n },\n };\n\n AppleLoginUtil.fetchAndUpdateCredentialState(\n userData.userId,\n ({ result, error: error2 }: { result: number; error: any }) => {\n if (error || result !== LoginState.AUTHORIZED) {\n onLoginFinish({ error: error2 });\n } else {\n loadingCallback && loadingCallback();\n doLeanCloudLogin(\n userData.authData,\n userData,\n ({ user: loginUser, error: error3 }) => {\n onLoginFinish({ user: loginUser, error: error3 });\n }\n );\n }\n }\n );\n }\n } else if (type === LoginType.LoginTypeWeChat) {\n WeChatLoginUtil.doLogin(\n ToolkitConfig.WeiXinId,\n ToolkitConfig.WeiXinSecret,\n ({\n nickname,\n headimgurl,\n openid,\n unionid,\n error,\n }: {\n nickname: string;\n headimgurl: string;\n openid: string;\n unionid: string;\n error: any;\n }) => {\n if (error) {\n onLoginFinish({ error });\n } else {\n let userData = {\n nickname: nickname,\n headimgurl: headimgurl,\n authData: {\n openid: openid,\n unionid: unionid,\n access_token: openid,\n expires_in: 99999999,\n loginType: 'wechat',\n },\n };\n loadingCallback && loadingCallback();\n doLeanCloudLogin(\n userData.authData,\n userData,\n ({ user, error: error2 }) => {\n onLoginFinish({ user, error: error2 });\n }\n );\n }\n }\n );\n } else if (type === LoginType.LoginTypeWeChatScan) {\n WeChatLoginUtil.doLoginByScan(\n ToolkitConfig.WeiXinId,\n ToolkitConfig.WeiXinSecret,\n qrcodeCallback!,\n ({\n nickname,\n headimgurl,\n openid,\n unionid,\n error,\n }: {\n nickname: string;\n headimgurl: string;\n openid: string;\n unionid: string;\n error: any;\n }) => {\n if (error) {\n onLoginFinish({ error });\n } else {\n let userData = {\n nickname: nickname,\n headimgurl: headimgurl,\n authData: {\n openid: openid,\n unionid: unionid,\n access_token: openid,\n expires_in: 99999999,\n loginType: 'wechat',\n },\n };\n loadingCallback && loadingCallback();\n doLeanCloudLogin(\n userData.authData,\n userData,\n ({ user, error: error2 }) => {\n onLoginFinish({ user, error: error2 });\n }\n );\n }\n }\n );\n } else if (type === LoginType.LoginTypeVisitor) {\n const uniqueId = getUniqueIdSync();\n console.log(uniqueId);\n let userData = {\n nickname: 'Visitor',\n authData: {\n openid: uniqueId,\n access_token: uniqueId,\n expires_in: 99999999,\n loginType: 'visitor',\n },\n };\n loadingCallback && loadingCallback();\n doLeanCloudLogin(userData.authData, userData, ({ user, error }) => {\n onLoginFinish({ user, error });\n });\n } else {\n onLoginFinish({ error: 'Unknown Login Type' });\n }\n },\n\n logOut: (callback?: Function) => {\n console.log('onLogout');\n AV.User.logOut();\n CURRENT_USER = null;\n callback && callback();\n Notification.postNotification('onLogout');\n },\n\n isLogin: () => {\n return LoginManager.currentUser() != null;\n },\n\n isVisitor: () => {\n return (\n LoginManager.isLogin() &&\n LoginManager.currentUser()?.type === LoginType.LoginTypeVisitor\n );\n },\n\n currentUser: () => {\n // console.log('current user is ', CURRENT_USER);\n return CURRENT_USER;\n },\n\n batchUpdateUser: async (\n keys: string[],\n values: any[],\n callback?: Function\n ) => {\n console.log('Batch Update User Begin: ' + keys + ' ' + values);\n const user = await AV.User.currentAsync();\n if (!user) {\n return;\n }\n const oldValues = [];\n for (let i = 0; i < keys.length; i++) {\n oldValues.push(user.get(keys[i]));\n user.set(keys[i], values[i]);\n }\n try {\n const newUser = await user.save();\n CURRENT_USER = AVUserToLocalUser(newUser);\n console.log('Batch Update User End', user);\n callback && callback();\n } catch (e) {\n console.error(e);\n for (let i = 0; i < keys.length; i++) {\n user.set(keys[i], oldValues[i]);\n }\n callback && callback(e);\n }\n },\n\n updateUser: (key: string, value: any, callback?: Function) => {\n LoginManager.batchUpdateUser([key], [value], callback);\n },\n\n deleteUser: async (callback: Function) => {\n try {\n if (!CURRENT_USER) {\n return;\n }\n if (CURRENT_USER.type === LoginType.LoginTypeApple) {\n await AppleLoginUtil.requestDeleteAccount();\n }\n const user = await AV.User.currentAsync();\n console.log('get user success');\n await user.destroy();\n console.log('delete user success');\n callback();\n } catch (error) {\n console.error(error);\n callback(error);\n }\n },\n\n lastLoginType: () => {\n return PrefData.getValue(BuildInPrefs.LastLoginType);\n },\n\n isRegisterInThisDevice: () => {\n return PrefData.getValue(BuildInPrefs.RegisterInThisDevice);\n },\n\n fetchWeChatAvatar: (callback: FetchImageFunctionType) => {\n WeChatLoginUtil.doLogin(\n ToolkitConfig.WeiXinId,\n ToolkitConfig.WeiXinSecret,\n ({ headimgurl }: { headimgurl: string }) => {\n callback({ headimgurl });\n }\n );\n },\n\n // 已注册天数\n getRegisterDays: () => {\n if (!LoginManager.isLogin()) {\n return 0;\n }\n const createTime = LoginManager.currentUser()?.AVUser.getCreatedAt();\n if (createTime) {\n const diff = new Date().getTime() - createTime.getTime();\n const diffDay = Math.max(Math.ceil(diff / (24 * 60 * 60 * 1000)), 0);\n return diffDay;\n }\n return 0;\n },\n};\n"],"mappings":"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"}
@@ -30,6 +30,7 @@ const onLoginFinish = _ref => {
30
30
  isAuto,
31
31
  user
32
32
  };
33
+ console.log('onLoginSuccess', data);
33
34
  Notification.postNotification('onLoginSuccess', data);
34
35
  } else {
35
36
  const data = {
@@ -37,6 +38,7 @@ const onLoginFinish = _ref => {
37
38
  error,
38
39
  code
39
40
  };
41
+ console.log('onLoginFail', data);
40
42
  Notification.postNotification('onLoginFail', data);
41
43
  }
42
44
  };
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","getUniqueIdSync","AppleLoginUtil","Notification","BuildInPrefs","PrefData","ToolkitConfig","WeChatLoginUtil","LoginState","LoginType","AV","require","CURRENT_USER","AVUserToLocalUser","user","nickname","get","email","headimgurl","type","AVUser","onLoginFinish","_ref","isAuto","error","code","setValue","LastLoginType","data","postNotification","doLeanCloudLogin","authData","userData","callback","console","log","loginType","loginTypeNum","LoginTypeApple","LoginTypeWeChat","LoginTypeVisitor","User","loginWithAuthData","failOnNotExist","then","newUser","setEmail","set","OS","isNew","RegisterInThisDevice","error2","LoginManager","autoLogin","currentAsync","login","devAuthData","arguments","length","undefined","loadingCallback","qrcodeCallback","cuurentUser","__DEV__","_ref2","identityToken","requestAppleUserForLogin","userId","openid","access_token","expires_in","fetchAndUpdateCredentialState","_ref3","result","AUTHORIZED","_ref4","loginUser","error3","doLogin","WeiXinId","WeiXinSecret","_ref5","unionid","_ref6","LoginTypeWeChatScan","doLoginByScan","_ref7","_ref8","uniqueId","_ref9","logOut","isLogin","currentUser","isVisitor","_LoginManager$current","batchUpdateUser","keys","values","oldValues","i","push","save","e","updateUser","key","value","deleteUser","requestDeleteAccount","destroy","lastLoginType","getValue","isRegisterInThisDevice","fetchWeChatAvatar","_ref10","getRegisterDays","_LoginManager$current2","createTime","getCreatedAt","diff","Date","getTime","diffDay","Math","max","ceil"],"sources":["LoginManager.ts"],"sourcesContent":["import { User } from 'leancloud-storage';\nimport { Platform } from 'react-native';\nimport { getUniqueIdSync } from 'react-native-device-info';\nimport { AppleLoginUtil } from './AppleLoginUtil';\nimport { Notification } from './Notification';\nimport { BuildInPrefs, PrefData } from './PrefData';\nimport { ToolkitConfig } from './Tool';\nimport { WeChatLoginUtil } from './WeChatLoginUtil';\nimport {\n LoginAuthDataType,\n LoginState,\n LoginType,\n LoginUserDataType,\n UserType,\n} from './constant';\n\ntype FetchImageFunctionType = ({ headimgurl }: { headimgurl: string }) => void;\nexport type LoginSuccessResultType = {\n isAuto?: boolean;\n user: UserType;\n};\nexport type LoginFailResulType = {\n isAuto?: boolean;\n error: string | object;\n code?: string;\n};\n\ntype LoginFinishParams = {\n isAuto?: boolean;\n user?: UserType;\n error?: string | object;\n code?: string;\n};\n\nconst AV = require('leancloud-storage');\n\nlet CURRENT_USER: UserType | null = null;\n\nconst AVUserToLocalUser = (user: User) => {\n return {\n nickname: user.get('nickname'),\n email: user.get('email'),\n headimgurl: user.get('headimgurl'),\n type: user.get('type'),\n AVUser: user,\n };\n};\n\nconst onLoginFinish = ({\n isAuto = false,\n user,\n error,\n code,\n}: LoginFinishParams) => {\n if (user) {\n PrefData.setValue(BuildInPrefs.LastLoginType, user.type);\n const data = { isAuto, user };\n Notification.postNotification('onLoginSuccess', data);\n } else {\n const data = { isAuto, error, code };\n Notification.postNotification('onLoginFail', data);\n }\n};\n\nconst doLeanCloudLogin = async (\n authData: LoginAuthDataType,\n userData: LoginUserDataType | undefined,\n callback: ({ user, error }: { user?: UserType; error?: any }) => void\n) => {\n console.log('Lean Cloud 开始登录', userData);\n // loginType 空说明是老用户\n const loginType = authData.loginType ? authData.loginType : 'apple';\n let loginTypeNum = LoginType.LoginTypeApple;\n if (loginType === 'wechat') {\n loginTypeNum = LoginType.LoginTypeWeChat;\n } else if (loginType === 'visitor') {\n loginTypeNum = LoginType.LoginTypeVisitor;\n }\n\n AV.User.loginWithAuthData(authData, loginType, { failOnNotExist: true }).then(\n (user: User) => {\n // 登录成功\n console.log('Lean Cloud 登录成功');\n // 每次重新鉴权都更新头像和昵称,避免微信头像过期\n // if (userData?.nickname) {\n // user.set('nickname', userData?.nickname);\n // }\n // if (userData?.headimgurl) {\n // user.set('headimgurl', userData?.headimgurl);\n // }\n // user.save();\n CURRENT_USER = AVUserToLocalUser(user);\n callback({ user: CURRENT_USER });\n },\n (error: any) => {\n if (error.code === 211) {\n // 创建用户,并补充资料\n console.log('创建用户,并补充资料');\n const newUser = new AV.User();\n const email = userData?.email;\n if (email) {\n newUser.setEmail(email);\n }\n newUser.set('nickname', userData?.nickname);\n newUser.set('headimgurl', userData?.headimgurl);\n newUser.set('type', loginTypeNum);\n if (Platform.OS === 'android') {\n newUser.set('source', 2);\n }\n newUser.loginWithAuthData(authData, loginType).then(\n (user: User) => {\n // 登录成功\n console.log('Lean Cloud 注册成功');\n CURRENT_USER = AVUserToLocalUser(user);\n CURRENT_USER.isNew = true;\n // 标记为当前用户是在本机注册的 TODO\n PrefData.setValue(BuildInPrefs.RegisterInThisDevice, true);\n callback({ user: CURRENT_USER });\n },\n (error2: any) => {\n // 登录失败\n console.log('Lean Cloud 登录失败', error2);\n callback({ error: error2 });\n }\n );\n } else {\n // 登录失败\n console.log('Lean Cloud 登录失败', error);\n callback({ error: error });\n }\n }\n );\n};\n\nexport const LoginManager = {\n // 自动根据已有的 User 信息进行登录鉴权,如果 User 为空则失败\n autoLogin: async () => {\n const user = await AV.User.currentAsync();\n if (user) {\n console.log('自动登录成功');\n CURRENT_USER = AVUserToLocalUser(user);\n onLoginFinish({ isAuto: true, user: CURRENT_USER });\n } else {\n onLoginFinish({ isAuto: true, error: 'User Not Login Yet' });\n }\n },\n\n // 如果 User 为空,则唤起苹果登录框;如果 User 不为空,直接鉴权\n login: async (\n type: LoginType,\n devAuthData: LoginAuthDataType | null = null,\n loadingCallback: Function,\n qrcodeCallback?: (qrcode: string) => void\n ) => {\n // 如果之前已经鉴权过,则直接使用上次鉴权的 AuthData\n const cuurentUser = await AV.User.currentAsync();\n if (cuurentUser) {\n await LoginManager.autoLogin();\n return;\n }\n\n // 改为注入 delegate\n if (__DEV__) {\n if (devAuthData) {\n doLeanCloudLogin(devAuthData, undefined, ({ user, error }) => {\n onLoginFinish({ user, error });\n });\n return;\n }\n }\n\n if (type === LoginType.LoginTypeApple) {\n const { user, email, identityToken, error, code } =\n await AppleLoginUtil.requestAppleUserForLogin();\n if (!user || error) {\n onLoginFinish({ error, code });\n return;\n } else {\n let userData = {\n userId: user,\n email: email,\n authData: {\n openid: user,\n access_token: identityToken,\n expires_in: 99999999,\n loginType: 'apple',\n },\n };\n\n AppleLoginUtil.fetchAndUpdateCredentialState(\n userData.userId,\n ({ result, error: error2 }: { result: number; error: any }) => {\n if (error || result !== LoginState.AUTHORIZED) {\n onLoginFinish({ error: error2 });\n } else {\n loadingCallback && loadingCallback();\n doLeanCloudLogin(\n userData.authData,\n userData,\n ({ user: loginUser, error: error3 }) => {\n onLoginFinish({ user: loginUser, error: error3 });\n }\n );\n }\n }\n );\n }\n } else if (type === LoginType.LoginTypeWeChat) {\n WeChatLoginUtil.doLogin(\n ToolkitConfig.WeiXinId,\n ToolkitConfig.WeiXinSecret,\n ({\n nickname,\n headimgurl,\n openid,\n unionid,\n error,\n }: {\n nickname: string;\n headimgurl: string;\n openid: string;\n unionid: string;\n error: any;\n }) => {\n if (error) {\n onLoginFinish({ error });\n } else {\n let userData = {\n nickname: nickname,\n headimgurl: headimgurl,\n authData: {\n openid: openid,\n unionid: unionid,\n access_token: openid,\n expires_in: 99999999,\n loginType: 'wechat',\n },\n };\n loadingCallback && loadingCallback();\n doLeanCloudLogin(\n userData.authData,\n userData,\n ({ user, error: error2 }) => {\n onLoginFinish({ user, error: error2 });\n }\n );\n }\n }\n );\n } else if (type === LoginType.LoginTypeWeChatScan) {\n WeChatLoginUtil.doLoginByScan(\n ToolkitConfig.WeiXinId,\n ToolkitConfig.WeiXinSecret,\n qrcodeCallback!,\n ({\n nickname,\n headimgurl,\n openid,\n unionid,\n error,\n }: {\n nickname: string;\n headimgurl: string;\n openid: string;\n unionid: string;\n error: any;\n }) => {\n if (error) {\n onLoginFinish({ error });\n } else {\n let userData = {\n nickname: nickname,\n headimgurl: headimgurl,\n authData: {\n openid: openid,\n unionid: unionid,\n access_token: openid,\n expires_in: 99999999,\n loginType: 'wechat',\n },\n };\n loadingCallback && loadingCallback();\n doLeanCloudLogin(\n userData.authData,\n userData,\n ({ user, error: error2 }) => {\n onLoginFinish({ user, error: error2 });\n }\n );\n }\n }\n );\n } else if (type === LoginType.LoginTypeVisitor) {\n const uniqueId = getUniqueIdSync();\n console.log(uniqueId);\n let userData = {\n nickname: 'Visitor',\n authData: {\n openid: uniqueId,\n access_token: uniqueId,\n expires_in: 99999999,\n loginType: 'visitor',\n },\n };\n loadingCallback && loadingCallback();\n doLeanCloudLogin(userData.authData, userData, ({ user, error }) => {\n onLoginFinish({ user, error });\n });\n } else {\n onLoginFinish({ error: 'Unknown Login Type' });\n }\n },\n\n logOut: (callback?: Function) => {\n console.log('onLogout');\n AV.User.logOut();\n CURRENT_USER = null;\n callback && callback();\n Notification.postNotification('onLogout');\n },\n\n isLogin: () => {\n return LoginManager.currentUser() != null;\n },\n\n isVisitor: () => {\n return (\n LoginManager.isLogin() &&\n LoginManager.currentUser()?.type === LoginType.LoginTypeVisitor\n );\n },\n\n currentUser: () => {\n // console.log('current user is ', CURRENT_USER);\n return CURRENT_USER;\n },\n\n batchUpdateUser: async (\n keys: string[],\n values: any[],\n callback?: Function\n ) => {\n console.log('Batch Update User Begin: ' + keys + ' ' + values);\n const user = await AV.User.currentAsync();\n if (!user) {\n return;\n }\n const oldValues = [];\n for (let i = 0; i < keys.length; i++) {\n oldValues.push(user.get(keys[i]));\n user.set(keys[i], values[i]);\n }\n try {\n const newUser = await user.save();\n CURRENT_USER = AVUserToLocalUser(newUser);\n console.log('Batch Update User End', user);\n callback && callback();\n } catch (e) {\n console.error(e);\n for (let i = 0; i < keys.length; i++) {\n user.set(keys[i], oldValues[i]);\n }\n callback && callback(e);\n }\n },\n\n updateUser: (key: string, value: any, callback?: Function) => {\n LoginManager.batchUpdateUser([key], [value], callback);\n },\n\n deleteUser: async (callback: Function) => {\n try {\n if (!CURRENT_USER) {\n return;\n }\n if (CURRENT_USER.type === LoginType.LoginTypeApple) {\n await AppleLoginUtil.requestDeleteAccount();\n }\n const user = await AV.User.currentAsync();\n console.log('get user success');\n await user.destroy();\n console.log('delete user success');\n callback();\n } catch (error) {\n console.error(error);\n callback(error);\n }\n },\n\n lastLoginType: () => {\n return PrefData.getValue(BuildInPrefs.LastLoginType);\n },\n\n isRegisterInThisDevice: () => {\n return PrefData.getValue(BuildInPrefs.RegisterInThisDevice);\n },\n\n fetchWeChatAvatar: (callback: FetchImageFunctionType) => {\n WeChatLoginUtil.doLogin(\n ToolkitConfig.WeiXinId,\n ToolkitConfig.WeiXinSecret,\n ({ headimgurl }: { headimgurl: string }) => {\n callback({ headimgurl });\n }\n );\n },\n\n // 已注册天数\n getRegisterDays: () => {\n if (!LoginManager.isLogin()) {\n return 0;\n }\n const createTime = LoginManager.currentUser()?.AVUser.getCreatedAt();\n if (createTime) {\n const diff = new Date().getTime() - createTime.getTime();\n const diffDay = Math.max(Math.ceil(diff / (24 * 60 * 60 * 1000)), 0);\n return diffDay;\n }\n return 0;\n },\n};\n"],"mappings":"AACA,SAASA,QAAQ,QAAQ,cAAc;AACvC,SAASC,eAAe,QAAQ,0BAA0B;AAC1D,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,YAAY,EAAEC,QAAQ,QAAQ,YAAY;AACnD,SAASC,aAAa,QAAQ,QAAQ;AACtC,SAASC,eAAe,QAAQ,mBAAmB;AACnD,SAEEC,UAAU,EACVC,SAAS,QAGJ,YAAY;AAoBnB,MAAMC,EAAE,GAAGC,OAAO,CAAC,mBAAmB,CAAC;AAEvC,IAAIC,YAA6B,GAAG,IAAI;AAExC,MAAMC,iBAAiB,GAAIC,IAAU,IAAK;EACxC,OAAO;IACLC,QAAQ,EAAED,IAAI,CAACE,GAAG,CAAC,UAAU,CAAC;IAC9BC,KAAK,EAAEH,IAAI,CAACE,GAAG,CAAC,OAAO,CAAC;IACxBE,UAAU,EAAEJ,IAAI,CAACE,GAAG,CAAC,YAAY,CAAC;IAClCG,IAAI,EAAEL,IAAI,CAACE,GAAG,CAAC,MAAM,CAAC;IACtBI,MAAM,EAAEN;EACV,CAAC;AACH,CAAC;AAED,MAAMO,aAAa,GAAGC,IAAA,IAKG;EAAA,IALF;IACrBC,MAAM,GAAG,KAAK;IACdT,IAAI;IACJU,KAAK;IACLC;EACiB,CAAC,GAAAH,IAAA;EAClB,IAAIR,IAAI,EAAE;IACRT,QAAQ,CAACqB,QAAQ,CAACtB,YAAY,CAACuB,aAAa,EAAEb,IAAI,CAACK,IAAI,CAAC;IACxD,MAAMS,IAAI,GAAG;MAAEL,MAAM;MAAET;IAAK,CAAC;IAC7BX,YAAY,CAAC0B,gBAAgB,CAAC,gBAAgB,EAAED,IAAI,CAAC;EACvD,CAAC,MAAM;IACL,MAAMA,IAAI,GAAG;MAAEL,MAAM;MAAEC,KAAK;MAAEC;IAAK,CAAC;IACpCtB,YAAY,CAAC0B,gBAAgB,CAAC,aAAa,EAAED,IAAI,CAAC;EACpD;AACF,CAAC;AAED,MAAME,gBAAgB,GAAG,MAAAA,CACvBC,QAA2B,EAC3BC,QAAuC,EACvCC,QAAqE,KAClE;EACHC,OAAO,CAACC,GAAG,CAAC,iBAAiB,EAAEH,QAAQ,CAAC;EACxC;EACA,MAAMI,SAAS,GAAGL,QAAQ,CAACK,SAAS,GAAGL,QAAQ,CAACK,SAAS,GAAG,OAAO;EACnE,IAAIC,YAAY,GAAG5B,SAAS,CAAC6B,cAAc;EAC3C,IAAIF,SAAS,KAAK,QAAQ,EAAE;IAC1BC,YAAY,GAAG5B,SAAS,CAAC8B,eAAe;EAC1C,CAAC,MAAM,IAAIH,SAAS,KAAK,SAAS,EAAE;IAClCC,YAAY,GAAG5B,SAAS,CAAC+B,gBAAgB;EAC3C;EAEA9B,EAAE,CAAC+B,IAAI,CAACC,iBAAiB,CAACX,QAAQ,EAAEK,SAAS,EAAE;IAAEO,cAAc,EAAE;EAAK,CAAC,CAAC,CAACC,IAAI,CAC1E9B,IAAU,IAAK;IACd;IACAoB,OAAO,CAACC,GAAG,CAAC,iBAAiB,CAAC;IAC9B;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACAvB,YAAY,GAAGC,iBAAiB,CAACC,IAAI,CAAC;IACtCmB,QAAQ,CAAC;MAAEnB,IAAI,EAAEF;IAAa,CAAC,CAAC;EAClC,CAAC,EACAY,KAAU,IAAK;IACd,IAAIA,KAAK,CAACC,IAAI,KAAK,GAAG,EAAE;MACtB;MACAS,OAAO,CAACC,GAAG,CAAC,YAAY,CAAC;MACzB,MAAMU,OAAO,GAAG,IAAInC,EAAE,CAAC+B,IAAI,CAAC,CAAC;MAC7B,MAAMxB,KAAK,GAAGe,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEf,KAAK;MAC7B,IAAIA,KAAK,EAAE;QACT4B,OAAO,CAACC,QAAQ,CAAC7B,KAAK,CAAC;MACzB;MACA4B,OAAO,CAACE,GAAG,CAAC,UAAU,EAAEf,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEjB,QAAQ,CAAC;MAC3C8B,OAAO,CAACE,GAAG,CAAC,YAAY,EAAEf,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEd,UAAU,CAAC;MAC/C2B,OAAO,CAACE,GAAG,CAAC,MAAM,EAAEV,YAAY,CAAC;MACjC,IAAIrC,QAAQ,CAACgD,EAAE,KAAK,SAAS,EAAE;QAC7BH,OAAO,CAACE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;MAC1B;MACAF,OAAO,CAACH,iBAAiB,CAACX,QAAQ,EAAEK,SAAS,CAAC,CAACQ,IAAI,CAChD9B,IAAU,IAAK;QACd;QACAoB,OAAO,CAACC,GAAG,CAAC,iBAAiB,CAAC;QAC9BvB,YAAY,GAAGC,iBAAiB,CAACC,IAAI,CAAC;QACtCF,YAAY,CAACqC,KAAK,GAAG,IAAI;QACzB;QACA5C,QAAQ,CAACqB,QAAQ,CAACtB,YAAY,CAAC8C,oBAAoB,EAAE,IAAI,CAAC;QAC1DjB,QAAQ,CAAC;UAAEnB,IAAI,EAAEF;QAAa,CAAC,CAAC;MAClC,CAAC,EACAuC,MAAW,IAAK;QACf;QACAjB,OAAO,CAACC,GAAG,CAAC,iBAAiB,EAAEgB,MAAM,CAAC;QACtClB,QAAQ,CAAC;UAAET,KAAK,EAAE2B;QAAO,CAAC,CAAC;MAC7B,CACF,CAAC;IACH,CAAC,MAAM;MACL;MACAjB,OAAO,CAACC,GAAG,CAAC,iBAAiB,EAAEX,KAAK,CAAC;MACrCS,QAAQ,CAAC;QAAET,KAAK,EAAEA;MAAM,CAAC,CAAC;IAC5B;EACF,CACF,CAAC;AACH,CAAC;AAED,OAAO,MAAM4B,YAAY,GAAG;EAC1B;EACAC,SAAS,EAAE,MAAAA,CAAA,KAAY;IACrB,MAAMvC,IAAI,GAAG,MAAMJ,EAAE,CAAC+B,IAAI,CAACa,YAAY,CAAC,CAAC;IACzC,IAAIxC,IAAI,EAAE;MACRoB,OAAO,CAACC,GAAG,CAAC,QAAQ,CAAC;MACrBvB,YAAY,GAAGC,iBAAiB,CAACC,IAAI,CAAC;MACtCO,aAAa,CAAC;QAAEE,MAAM,EAAE,IAAI;QAAET,IAAI,EAAEF;MAAa,CAAC,CAAC;IACrD,CAAC,MAAM;MACLS,aAAa,CAAC;QAAEE,MAAM,EAAE,IAAI;QAAEC,KAAK,EAAE;MAAqB,CAAC,CAAC;IAC9D;EACF,CAAC;EAED;EACA+B,KAAK,EAAE,eAAAA,CACLpC,IAAe,EAIZ;IAAA,IAHHqC,WAAqC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI;IAAA,IAC5CG,eAAyB,GAAAH,SAAA,CAAAC,MAAA,OAAAD,SAAA,MAAAE,SAAA;IAAA,IACzBE,cAAyC,GAAAJ,SAAA,CAAAC,MAAA,OAAAD,SAAA,MAAAE,SAAA;IAEzC;IACA,MAAMG,WAAW,GAAG,MAAMpD,EAAE,CAAC+B,IAAI,CAACa,YAAY,CAAC,CAAC;IAChD,IAAIQ,WAAW,EAAE;MACf,MAAMV,YAAY,CAACC,SAAS,CAAC,CAAC;MAC9B;IACF;;IAEA;IACA,IAAIU,OAAO,EAAE;MACX,IAAIP,WAAW,EAAE;QACf1B,gBAAgB,CAAC0B,WAAW,EAAEG,SAAS,EAAEK,KAAA,IAAqB;UAAA,IAApB;YAAElD,IAAI;YAAEU;UAAM,CAAC,GAAAwC,KAAA;UACvD3C,aAAa,CAAC;YAAEP,IAAI;YAAEU;UAAM,CAAC,CAAC;QAChC,CAAC,CAAC;QACF;MACF;IACF;IAEA,IAAIL,IAAI,KAAKV,SAAS,CAAC6B,cAAc,EAAE;MACrC,MAAM;QAAExB,IAAI;QAAEG,KAAK;QAAEgD,aAAa;QAAEzC,KAAK;QAAEC;MAAK,CAAC,GAC/C,MAAMvB,cAAc,CAACgE,wBAAwB,CAAC,CAAC;MACjD,IAAI,CAACpD,IAAI,IAAIU,KAAK,EAAE;QAClBH,aAAa,CAAC;UAAEG,KAAK;UAAEC;QAAK,CAAC,CAAC;QAC9B;MACF,CAAC,MAAM;QACL,IAAIO,QAAQ,GAAG;UACbmC,MAAM,EAAErD,IAAI;UACZG,KAAK,EAAEA,KAAK;UACZc,QAAQ,EAAE;YACRqC,MAAM,EAAEtD,IAAI;YACZuD,YAAY,EAAEJ,aAAa;YAC3BK,UAAU,EAAE,QAAQ;YACpBlC,SAAS,EAAE;UACb;QACF,CAAC;QAEDlC,cAAc,CAACqE,6BAA6B,CAC1CvC,QAAQ,CAACmC,MAAM,EACfK,KAAA,IAA+D;UAAA,IAA9D;YAAEC,MAAM;YAAEjD,KAAK,EAAE2B;UAAuC,CAAC,GAAAqB,KAAA;UACxD,IAAIhD,KAAK,IAAIiD,MAAM,KAAKjE,UAAU,CAACkE,UAAU,EAAE;YAC7CrD,aAAa,CAAC;cAAEG,KAAK,EAAE2B;YAAO,CAAC,CAAC;UAClC,CAAC,MAAM;YACLS,eAAe,IAAIA,eAAe,CAAC,CAAC;YACpC9B,gBAAgB,CACdE,QAAQ,CAACD,QAAQ,EACjBC,QAAQ,EACR2C,KAAA,IAAwC;cAAA,IAAvC;gBAAE7D,IAAI,EAAE8D,SAAS;gBAAEpD,KAAK,EAAEqD;cAAO,CAAC,GAAAF,KAAA;cACjCtD,aAAa,CAAC;gBAAEP,IAAI,EAAE8D,SAAS;gBAAEpD,KAAK,EAAEqD;cAAO,CAAC,CAAC;YACnD,CACF,CAAC;UACH;QACF,CACF,CAAC;MACH;IACF,CAAC,MAAM,IAAI1D,IAAI,KAAKV,SAAS,CAAC8B,eAAe,EAAE;MAC7ChC,eAAe,CAACuE,OAAO,CACrBxE,aAAa,CAACyE,QAAQ,EACtBzE,aAAa,CAAC0E,YAAY,EAC1BC,KAAA,IAYM;QAAA,IAZL;UACClE,QAAQ;UACRG,UAAU;UACVkD,MAAM;UACNc,OAAO;UACP1D;QAOF,CAAC,GAAAyD,KAAA;QACC,IAAIzD,KAAK,EAAE;UACTH,aAAa,CAAC;YAAEG;UAAM,CAAC,CAAC;QAC1B,CAAC,MAAM;UACL,IAAIQ,QAAQ,GAAG;YACbjB,QAAQ,EAAEA,QAAQ;YAClBG,UAAU,EAAEA,UAAU;YACtBa,QAAQ,EAAE;cACRqC,MAAM,EAAEA,MAAM;cACdc,OAAO,EAAEA,OAAO;cAChBb,YAAY,EAAED,MAAM;cACpBE,UAAU,EAAE,QAAQ;cACpBlC,SAAS,EAAE;YACb;UACF,CAAC;UACDwB,eAAe,IAAIA,eAAe,CAAC,CAAC;UACpC9B,gBAAgB,CACdE,QAAQ,CAACD,QAAQ,EACjBC,QAAQ,EACRmD,KAAA,IAA6B;YAAA,IAA5B;cAAErE,IAAI;cAAEU,KAAK,EAAE2B;YAAO,CAAC,GAAAgC,KAAA;YACtB9D,aAAa,CAAC;cAAEP,IAAI;cAAEU,KAAK,EAAE2B;YAAO,CAAC,CAAC;UACxC,CACF,CAAC;QACH;MACF,CACF,CAAC;IACH,CAAC,MAAM,IAAIhC,IAAI,KAAKV,SAAS,CAAC2E,mBAAmB,EAAE;MACjD7E,eAAe,CAAC8E,aAAa,CAC3B/E,aAAa,CAACyE,QAAQ,EACtBzE,aAAa,CAAC0E,YAAY,EAC1BnB,cAAc,EACdyB,KAAA,IAYM;QAAA,IAZL;UACCvE,QAAQ;UACRG,UAAU;UACVkD,MAAM;UACNc,OAAO;UACP1D;QAOF,CAAC,GAAA8D,KAAA;QACC,IAAI9D,KAAK,EAAE;UACTH,aAAa,CAAC;YAAEG;UAAM,CAAC,CAAC;QAC1B,CAAC,MAAM;UACL,IAAIQ,QAAQ,GAAG;YACbjB,QAAQ,EAAEA,QAAQ;YAClBG,UAAU,EAAEA,UAAU;YACtBa,QAAQ,EAAE;cACRqC,MAAM,EAAEA,MAAM;cACdc,OAAO,EAAEA,OAAO;cAChBb,YAAY,EAAED,MAAM;cACpBE,UAAU,EAAE,QAAQ;cACpBlC,SAAS,EAAE;YACb;UACF,CAAC;UACDwB,eAAe,IAAIA,eAAe,CAAC,CAAC;UACpC9B,gBAAgB,CACdE,QAAQ,CAACD,QAAQ,EACjBC,QAAQ,EACRuD,KAAA,IAA6B;YAAA,IAA5B;cAAEzE,IAAI;cAAEU,KAAK,EAAE2B;YAAO,CAAC,GAAAoC,KAAA;YACtBlE,aAAa,CAAC;cAAEP,IAAI;cAAEU,KAAK,EAAE2B;YAAO,CAAC,CAAC;UACxC,CACF,CAAC;QACH;MACF,CACF,CAAC;IACH,CAAC,MAAM,IAAIhC,IAAI,KAAKV,SAAS,CAAC+B,gBAAgB,EAAE;MAC9C,MAAMgD,QAAQ,GAAGvF,eAAe,CAAC,CAAC;MAClCiC,OAAO,CAACC,GAAG,CAACqD,QAAQ,CAAC;MACrB,IAAIxD,QAAQ,GAAG;QACbjB,QAAQ,EAAE,SAAS;QACnBgB,QAAQ,EAAE;UACRqC,MAAM,EAAEoB,QAAQ;UAChBnB,YAAY,EAAEmB,QAAQ;UACtBlB,UAAU,EAAE,QAAQ;UACpBlC,SAAS,EAAE;QACb;MACF,CAAC;MACDwB,eAAe,IAAIA,eAAe,CAAC,CAAC;MACpC9B,gBAAgB,CAACE,QAAQ,CAACD,QAAQ,EAAEC,QAAQ,EAAEyD,KAAA,IAAqB;QAAA,IAApB;UAAE3E,IAAI;UAAEU;QAAM,CAAC,GAAAiE,KAAA;QAC5DpE,aAAa,CAAC;UAAEP,IAAI;UAAEU;QAAM,CAAC,CAAC;MAChC,CAAC,CAAC;IACJ,CAAC,MAAM;MACLH,aAAa,CAAC;QAAEG,KAAK,EAAE;MAAqB,CAAC,CAAC;IAChD;EACF,CAAC;EAEDkE,MAAM,EAAGzD,QAAmB,IAAK;IAC/BC,OAAO,CAACC,GAAG,CAAC,UAAU,CAAC;IACvBzB,EAAE,CAAC+B,IAAI,CAACiD,MAAM,CAAC,CAAC;IAChB9E,YAAY,GAAG,IAAI;IACnBqB,QAAQ,IAAIA,QAAQ,CAAC,CAAC;IACtB9B,YAAY,CAAC0B,gBAAgB,CAAC,UAAU,CAAC;EAC3C,CAAC;EAED8D,OAAO,EAAEA,CAAA,KAAM;IACb,OAAOvC,YAAY,CAACwC,WAAW,CAAC,CAAC,IAAI,IAAI;EAC3C,CAAC;EAEDC,SAAS,EAAEA,CAAA,KAAM;IAAA,IAAAC,qBAAA;IACf,OACE1C,YAAY,CAACuC,OAAO,CAAC,CAAC,IACtB,EAAAG,qBAAA,GAAA1C,YAAY,CAACwC,WAAW,CAAC,CAAC,cAAAE,qBAAA,uBAA1BA,qBAAA,CAA4B3E,IAAI,MAAKV,SAAS,CAAC+B,gBAAgB;EAEnE,CAAC;EAEDoD,WAAW,EAAEA,CAAA,KAAM;IACjB;IACA,OAAOhF,YAAY;EACrB,CAAC;EAEDmF,eAAe,EAAE,MAAAA,CACfC,IAAc,EACdC,MAAa,EACbhE,QAAmB,KAChB;IACHC,OAAO,CAACC,GAAG,CAAC,2BAA2B,GAAG6D,IAAI,GAAG,GAAG,GAAGC,MAAM,CAAC;IAC9D,MAAMnF,IAAI,GAAG,MAAMJ,EAAE,CAAC+B,IAAI,CAACa,YAAY,CAAC,CAAC;IACzC,IAAI,CAACxC,IAAI,EAAE;MACT;IACF;IACA,MAAMoF,SAAS,GAAG,EAAE;IACpB,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,IAAI,CAACtC,MAAM,EAAEyC,CAAC,EAAE,EAAE;MACpCD,SAAS,CAACE,IAAI,CAACtF,IAAI,CAACE,GAAG,CAACgF,IAAI,CAACG,CAAC,CAAC,CAAC,CAAC;MACjCrF,IAAI,CAACiC,GAAG,CAACiD,IAAI,CAACG,CAAC,CAAC,EAAEF,MAAM,CAACE,CAAC,CAAC,CAAC;IAC9B;IACA,IAAI;MACF,MAAMtD,OAAO,GAAG,MAAM/B,IAAI,CAACuF,IAAI,CAAC,CAAC;MACjCzF,YAAY,GAAGC,iBAAiB,CAACgC,OAAO,CAAC;MACzCX,OAAO,CAACC,GAAG,CAAC,uBAAuB,EAAErB,IAAI,CAAC;MAC1CmB,QAAQ,IAAIA,QAAQ,CAAC,CAAC;IACxB,CAAC,CAAC,OAAOqE,CAAC,EAAE;MACVpE,OAAO,CAACV,KAAK,CAAC8E,CAAC,CAAC;MAChB,KAAK,IAAIH,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,IAAI,CAACtC,MAAM,EAAEyC,CAAC,EAAE,EAAE;QACpCrF,IAAI,CAACiC,GAAG,CAACiD,IAAI,CAACG,CAAC,CAAC,EAAED,SAAS,CAACC,CAAC,CAAC,CAAC;MACjC;MACAlE,QAAQ,IAAIA,QAAQ,CAACqE,CAAC,CAAC;IACzB;EACF,CAAC;EAEDC,UAAU,EAAEA,CAACC,GAAW,EAAEC,KAAU,EAAExE,QAAmB,KAAK;IAC5DmB,YAAY,CAAC2C,eAAe,CAAC,CAACS,GAAG,CAAC,EAAE,CAACC,KAAK,CAAC,EAAExE,QAAQ,CAAC;EACxD,CAAC;EAEDyE,UAAU,EAAE,MAAOzE,QAAkB,IAAK;IACxC,IAAI;MACF,IAAI,CAACrB,YAAY,EAAE;QACjB;MACF;MACA,IAAIA,YAAY,CAACO,IAAI,KAAKV,SAAS,CAAC6B,cAAc,EAAE;QAClD,MAAMpC,cAAc,CAACyG,oBAAoB,CAAC,CAAC;MAC7C;MACA,MAAM7F,IAAI,GAAG,MAAMJ,EAAE,CAAC+B,IAAI,CAACa,YAAY,CAAC,CAAC;MACzCpB,OAAO,CAACC,GAAG,CAAC,kBAAkB,CAAC;MAC/B,MAAMrB,IAAI,CAAC8F,OAAO,CAAC,CAAC;MACpB1E,OAAO,CAACC,GAAG,CAAC,qBAAqB,CAAC;MAClCF,QAAQ,CAAC,CAAC;IACZ,CAAC,CAAC,OAAOT,KAAK,EAAE;MACdU,OAAO,CAACV,KAAK,CAACA,KAAK,CAAC;MACpBS,QAAQ,CAACT,KAAK,CAAC;IACjB;EACF,CAAC;EAEDqF,aAAa,EAAEA,CAAA,KAAM;IACnB,OAAOxG,QAAQ,CAACyG,QAAQ,CAAC1G,YAAY,CAACuB,aAAa,CAAC;EACtD,CAAC;EAEDoF,sBAAsB,EAAEA,CAAA,KAAM;IAC5B,OAAO1G,QAAQ,CAACyG,QAAQ,CAAC1G,YAAY,CAAC8C,oBAAoB,CAAC;EAC7D,CAAC;EAED8D,iBAAiB,EAAG/E,QAAgC,IAAK;IACvD1B,eAAe,CAACuE,OAAO,CACrBxE,aAAa,CAACyE,QAAQ,EACtBzE,aAAa,CAAC0E,YAAY,EAC1BiC,MAAA,IAA4C;MAAA,IAA3C;QAAE/F;MAAmC,CAAC,GAAA+F,MAAA;MACrChF,QAAQ,CAAC;QAAEf;MAAW,CAAC,CAAC;IAC1B,CACF,CAAC;EACH,CAAC;EAED;EACAgG,eAAe,EAAEA,CAAA,KAAM;IAAA,IAAAC,sBAAA;IACrB,IAAI,CAAC/D,YAAY,CAACuC,OAAO,CAAC,CAAC,EAAE;MAC3B,OAAO,CAAC;IACV;IACA,MAAMyB,UAAU,IAAAD,sBAAA,GAAG/D,YAAY,CAACwC,WAAW,CAAC,CAAC,cAAAuB,sBAAA,uBAA1BA,sBAAA,CAA4B/F,MAAM,CAACiG,YAAY,CAAC,CAAC;IACpE,IAAID,UAAU,EAAE;MACd,MAAME,IAAI,GAAG,IAAIC,IAAI,CAAC,CAAC,CAACC,OAAO,CAAC,CAAC,GAAGJ,UAAU,CAACI,OAAO,CAAC,CAAC;MACxD,MAAMC,OAAO,GAAGC,IAAI,CAACC,GAAG,CAACD,IAAI,CAACE,IAAI,CAACN,IAAI,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;MACpE,OAAOG,OAAO;IAChB;IACA,OAAO,CAAC;EACV;AACF,CAAC"}
1
+ {"version":3,"names":["Platform","getUniqueIdSync","AppleLoginUtil","Notification","BuildInPrefs","PrefData","ToolkitConfig","WeChatLoginUtil","LoginState","LoginType","AV","require","CURRENT_USER","AVUserToLocalUser","user","nickname","get","email","headimgurl","type","AVUser","onLoginFinish","_ref","isAuto","error","code","setValue","LastLoginType","data","console","log","postNotification","doLeanCloudLogin","authData","userData","callback","loginType","loginTypeNum","LoginTypeApple","LoginTypeWeChat","LoginTypeVisitor","User","loginWithAuthData","failOnNotExist","then","newUser","setEmail","set","OS","isNew","RegisterInThisDevice","error2","LoginManager","autoLogin","currentAsync","login","devAuthData","arguments","length","undefined","loadingCallback","qrcodeCallback","cuurentUser","__DEV__","_ref2","identityToken","requestAppleUserForLogin","userId","openid","access_token","expires_in","fetchAndUpdateCredentialState","_ref3","result","AUTHORIZED","_ref4","loginUser","error3","doLogin","WeiXinId","WeiXinSecret","_ref5","unionid","_ref6","LoginTypeWeChatScan","doLoginByScan","_ref7","_ref8","uniqueId","_ref9","logOut","isLogin","currentUser","isVisitor","_LoginManager$current","batchUpdateUser","keys","values","oldValues","i","push","save","e","updateUser","key","value","deleteUser","requestDeleteAccount","destroy","lastLoginType","getValue","isRegisterInThisDevice","fetchWeChatAvatar","_ref10","getRegisterDays","_LoginManager$current2","createTime","getCreatedAt","diff","Date","getTime","diffDay","Math","max","ceil"],"sources":["LoginManager.ts"],"sourcesContent":["import { User } from 'leancloud-storage';\nimport { Platform } from 'react-native';\nimport { getUniqueIdSync } from 'react-native-device-info';\nimport { AppleLoginUtil } from './AppleLoginUtil';\nimport { Notification } from './Notification';\nimport { BuildInPrefs, PrefData } from './PrefData';\nimport { ToolkitConfig } from './Tool';\nimport { WeChatLoginUtil } from './WeChatLoginUtil';\nimport {\n LoginAuthDataType,\n LoginState,\n LoginType,\n LoginUserDataType,\n UserType,\n} from './constant';\n\ntype FetchImageFunctionType = ({ headimgurl }: { headimgurl: string }) => void;\nexport type LoginSuccessResultType = {\n isAuto?: boolean;\n user: UserType;\n};\nexport type LoginFailResulType = {\n isAuto?: boolean;\n error: string | object;\n code?: string;\n};\n\ntype LoginFinishParams = {\n isAuto?: boolean;\n user?: UserType;\n error?: string | object;\n code?: string;\n};\n\nconst AV = require('leancloud-storage');\n\nlet CURRENT_USER: UserType | null = null;\n\nconst AVUserToLocalUser = (user: User) => {\n return {\n nickname: user.get('nickname'),\n email: user.get('email'),\n headimgurl: user.get('headimgurl'),\n type: user.get('type'),\n AVUser: user,\n };\n};\n\nconst onLoginFinish = ({\n isAuto = false,\n user,\n error,\n code,\n}: LoginFinishParams) => {\n if (user) {\n PrefData.setValue(BuildInPrefs.LastLoginType, user.type);\n const data = { isAuto, user };\n console.log('onLoginSuccess', data);\n Notification.postNotification('onLoginSuccess', data);\n } else {\n const data = { isAuto, error, code };\n console.log('onLoginFail', data);\n Notification.postNotification('onLoginFail', data);\n }\n};\n\nconst doLeanCloudLogin = async (\n authData: LoginAuthDataType,\n userData: LoginUserDataType | undefined,\n callback: ({ user, error }: { user?: UserType; error?: any }) => void\n) => {\n console.log('Lean Cloud 开始登录', userData);\n // loginType 空说明是老用户\n const loginType = authData.loginType ? authData.loginType : 'apple';\n let loginTypeNum = LoginType.LoginTypeApple;\n if (loginType === 'wechat') {\n loginTypeNum = LoginType.LoginTypeWeChat;\n } else if (loginType === 'visitor') {\n loginTypeNum = LoginType.LoginTypeVisitor;\n }\n\n AV.User.loginWithAuthData(authData, loginType, { failOnNotExist: true }).then(\n (user: User) => {\n // 登录成功\n console.log('Lean Cloud 登录成功');\n // 每次重新鉴权都更新头像和昵称,避免微信头像过期\n // if (userData?.nickname) {\n // user.set('nickname', userData?.nickname);\n // }\n // if (userData?.headimgurl) {\n // user.set('headimgurl', userData?.headimgurl);\n // }\n // user.save();\n CURRENT_USER = AVUserToLocalUser(user);\n callback({ user: CURRENT_USER });\n },\n (error: any) => {\n if (error.code === 211) {\n // 创建用户,并补充资料\n console.log('创建用户,并补充资料');\n const newUser = new AV.User();\n const email = userData?.email;\n if (email) {\n newUser.setEmail(email);\n }\n newUser.set('nickname', userData?.nickname);\n newUser.set('headimgurl', userData?.headimgurl);\n newUser.set('type', loginTypeNum);\n if (Platform.OS === 'android') {\n newUser.set('source', 2);\n }\n newUser.loginWithAuthData(authData, loginType).then(\n (user: User) => {\n // 登录成功\n console.log('Lean Cloud 注册成功');\n CURRENT_USER = AVUserToLocalUser(user);\n CURRENT_USER.isNew = true;\n // 标记为当前用户是在本机注册的 TODO\n PrefData.setValue(BuildInPrefs.RegisterInThisDevice, true);\n callback({ user: CURRENT_USER });\n },\n (error2: any) => {\n // 登录失败\n console.log('Lean Cloud 登录失败', error2);\n callback({ error: error2 });\n }\n );\n } else {\n // 登录失败\n console.log('Lean Cloud 登录失败', error);\n callback({ error: error });\n }\n }\n );\n};\n\nexport const LoginManager = {\n // 自动根据已有的 User 信息进行登录鉴权,如果 User 为空则失败\n autoLogin: async () => {\n const user = await AV.User.currentAsync();\n if (user) {\n console.log('自动登录成功');\n CURRENT_USER = AVUserToLocalUser(user);\n onLoginFinish({ isAuto: true, user: CURRENT_USER });\n } else {\n onLoginFinish({ isAuto: true, error: 'User Not Login Yet' });\n }\n },\n\n // 如果 User 为空,则唤起苹果登录框;如果 User 不为空,直接鉴权\n login: async (\n type: LoginType,\n devAuthData: LoginAuthDataType | null = null,\n loadingCallback: Function,\n qrcodeCallback?: (qrcode: string) => void\n ) => {\n // 如果之前已经鉴权过,则直接使用上次鉴权的 AuthData\n const cuurentUser = await AV.User.currentAsync();\n if (cuurentUser) {\n await LoginManager.autoLogin();\n return;\n }\n\n // 改为注入 delegate\n if (__DEV__) {\n if (devAuthData) {\n doLeanCloudLogin(devAuthData, undefined, ({ user, error }) => {\n onLoginFinish({ user, error });\n });\n return;\n }\n }\n\n if (type === LoginType.LoginTypeApple) {\n const { user, email, identityToken, error, code } =\n await AppleLoginUtil.requestAppleUserForLogin();\n if (!user || error) {\n onLoginFinish({ error, code });\n return;\n } else {\n let userData = {\n userId: user,\n email: email,\n authData: {\n openid: user,\n access_token: identityToken,\n expires_in: 99999999,\n loginType: 'apple',\n },\n };\n\n AppleLoginUtil.fetchAndUpdateCredentialState(\n userData.userId,\n ({ result, error: error2 }: { result: number; error: any }) => {\n if (error || result !== LoginState.AUTHORIZED) {\n onLoginFinish({ error: error2 });\n } else {\n loadingCallback && loadingCallback();\n doLeanCloudLogin(\n userData.authData,\n userData,\n ({ user: loginUser, error: error3 }) => {\n onLoginFinish({ user: loginUser, error: error3 });\n }\n );\n }\n }\n );\n }\n } else if (type === LoginType.LoginTypeWeChat) {\n WeChatLoginUtil.doLogin(\n ToolkitConfig.WeiXinId,\n ToolkitConfig.WeiXinSecret,\n ({\n nickname,\n headimgurl,\n openid,\n unionid,\n error,\n }: {\n nickname: string;\n headimgurl: string;\n openid: string;\n unionid: string;\n error: any;\n }) => {\n if (error) {\n onLoginFinish({ error });\n } else {\n let userData = {\n nickname: nickname,\n headimgurl: headimgurl,\n authData: {\n openid: openid,\n unionid: unionid,\n access_token: openid,\n expires_in: 99999999,\n loginType: 'wechat',\n },\n };\n loadingCallback && loadingCallback();\n doLeanCloudLogin(\n userData.authData,\n userData,\n ({ user, error: error2 }) => {\n onLoginFinish({ user, error: error2 });\n }\n );\n }\n }\n );\n } else if (type === LoginType.LoginTypeWeChatScan) {\n WeChatLoginUtil.doLoginByScan(\n ToolkitConfig.WeiXinId,\n ToolkitConfig.WeiXinSecret,\n qrcodeCallback!,\n ({\n nickname,\n headimgurl,\n openid,\n unionid,\n error,\n }: {\n nickname: string;\n headimgurl: string;\n openid: string;\n unionid: string;\n error: any;\n }) => {\n if (error) {\n onLoginFinish({ error });\n } else {\n let userData = {\n nickname: nickname,\n headimgurl: headimgurl,\n authData: {\n openid: openid,\n unionid: unionid,\n access_token: openid,\n expires_in: 99999999,\n loginType: 'wechat',\n },\n };\n loadingCallback && loadingCallback();\n doLeanCloudLogin(\n userData.authData,\n userData,\n ({ user, error: error2 }) => {\n onLoginFinish({ user, error: error2 });\n }\n );\n }\n }\n );\n } else if (type === LoginType.LoginTypeVisitor) {\n const uniqueId = getUniqueIdSync();\n console.log(uniqueId);\n let userData = {\n nickname: 'Visitor',\n authData: {\n openid: uniqueId,\n access_token: uniqueId,\n expires_in: 99999999,\n loginType: 'visitor',\n },\n };\n loadingCallback && loadingCallback();\n doLeanCloudLogin(userData.authData, userData, ({ user, error }) => {\n onLoginFinish({ user, error });\n });\n } else {\n onLoginFinish({ error: 'Unknown Login Type' });\n }\n },\n\n logOut: (callback?: Function) => {\n console.log('onLogout');\n AV.User.logOut();\n CURRENT_USER = null;\n callback && callback();\n Notification.postNotification('onLogout');\n },\n\n isLogin: () => {\n return LoginManager.currentUser() != null;\n },\n\n isVisitor: () => {\n return (\n LoginManager.isLogin() &&\n LoginManager.currentUser()?.type === LoginType.LoginTypeVisitor\n );\n },\n\n currentUser: () => {\n // console.log('current user is ', CURRENT_USER);\n return CURRENT_USER;\n },\n\n batchUpdateUser: async (\n keys: string[],\n values: any[],\n callback?: Function\n ) => {\n console.log('Batch Update User Begin: ' + keys + ' ' + values);\n const user = await AV.User.currentAsync();\n if (!user) {\n return;\n }\n const oldValues = [];\n for (let i = 0; i < keys.length; i++) {\n oldValues.push(user.get(keys[i]));\n user.set(keys[i], values[i]);\n }\n try {\n const newUser = await user.save();\n CURRENT_USER = AVUserToLocalUser(newUser);\n console.log('Batch Update User End', user);\n callback && callback();\n } catch (e) {\n console.error(e);\n for (let i = 0; i < keys.length; i++) {\n user.set(keys[i], oldValues[i]);\n }\n callback && callback(e);\n }\n },\n\n updateUser: (key: string, value: any, callback?: Function) => {\n LoginManager.batchUpdateUser([key], [value], callback);\n },\n\n deleteUser: async (callback: Function) => {\n try {\n if (!CURRENT_USER) {\n return;\n }\n if (CURRENT_USER.type === LoginType.LoginTypeApple) {\n await AppleLoginUtil.requestDeleteAccount();\n }\n const user = await AV.User.currentAsync();\n console.log('get user success');\n await user.destroy();\n console.log('delete user success');\n callback();\n } catch (error) {\n console.error(error);\n callback(error);\n }\n },\n\n lastLoginType: () => {\n return PrefData.getValue(BuildInPrefs.LastLoginType);\n },\n\n isRegisterInThisDevice: () => {\n return PrefData.getValue(BuildInPrefs.RegisterInThisDevice);\n },\n\n fetchWeChatAvatar: (callback: FetchImageFunctionType) => {\n WeChatLoginUtil.doLogin(\n ToolkitConfig.WeiXinId,\n ToolkitConfig.WeiXinSecret,\n ({ headimgurl }: { headimgurl: string }) => {\n callback({ headimgurl });\n }\n );\n },\n\n // 已注册天数\n getRegisterDays: () => {\n if (!LoginManager.isLogin()) {\n return 0;\n }\n const createTime = LoginManager.currentUser()?.AVUser.getCreatedAt();\n if (createTime) {\n const diff = new Date().getTime() - createTime.getTime();\n const diffDay = Math.max(Math.ceil(diff / (24 * 60 * 60 * 1000)), 0);\n return diffDay;\n }\n return 0;\n },\n};\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@norcy/react-native-toolkit",
3
- "version": "0.1.138",
3
+ "version": "0.1.140",
4
4
  "description": "My Toolkit",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -55,9 +55,11 @@ const onLoginFinish = ({
55
55
  if (user) {
56
56
  PrefData.setValue(BuildInPrefs.LastLoginType, user.type);
57
57
  const data = { isAuto, user };
58
+ console.log('onLoginSuccess', data);
58
59
  Notification.postNotification('onLoginSuccess', data);
59
60
  } else {
60
61
  const data = { isAuto, error, code };
62
+ console.log('onLoginFail', data);
61
63
  Notification.postNotification('onLoginFail', data);
62
64
  }
63
65
  };