@norcy/react-native-toolkit 0.3.21 → 0.3.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/lib/commonjs/AppleLoginUtil.js +33 -85
  2. package/lib/commonjs/AppleLoginUtil.js.map +1 -1
  3. package/lib/commonjs/HuaweiLoginUtil.js +10 -22
  4. package/lib/commonjs/HuaweiLoginUtil.js.map +1 -1
  5. package/lib/commonjs/LoginManager.js +104 -114
  6. package/lib/commonjs/LoginManager.js.map +1 -1
  7. package/lib/commonjs/WeChatLoginUtil.js +32 -56
  8. package/lib/commonjs/WeChatLoginUtil.js.map +1 -1
  9. package/lib/commonjs/constant.js +1 -6
  10. package/lib/commonjs/constant.js.map +1 -1
  11. package/lib/module/AppleLoginUtil.js +33 -85
  12. package/lib/module/AppleLoginUtil.js.map +1 -1
  13. package/lib/module/HuaweiLoginUtil.js +10 -22
  14. package/lib/module/HuaweiLoginUtil.js.map +1 -1
  15. package/lib/module/LoginManager.js +105 -115
  16. package/lib/module/LoginManager.js.map +1 -1
  17. package/lib/module/WeChatLoginUtil.js +32 -56
  18. package/lib/module/WeChatLoginUtil.js.map +1 -1
  19. package/lib/module/constant.js +0 -5
  20. package/lib/module/constant.js.map +1 -1
  21. package/lib/typescript/AppleLoginUtil.d.ts +1 -15
  22. package/lib/typescript/AppleLoginUtil.d.ts.map +1 -1
  23. package/lib/typescript/HuaweiLoginUtil.d.ts +2 -7
  24. package/lib/typescript/HuaweiLoginUtil.d.ts.map +1 -1
  25. package/lib/typescript/LoginManager.d.ts +1 -1
  26. package/lib/typescript/LoginManager.d.ts.map +1 -1
  27. package/lib/typescript/WeChatLoginUtil.d.ts +3 -2
  28. package/lib/typescript/WeChatLoginUtil.d.ts.map +1 -1
  29. package/lib/typescript/constant.d.ts +5 -3
  30. package/lib/typescript/constant.d.ts.map +1 -1
  31. package/package.json +1 -1
  32. package/src/AppleLoginUtil.ts +29 -50
  33. package/src/HuaweiLoginUtil.ts +11 -24
  34. package/src/LoginManager.ts +82 -125
  35. package/src/WeChatLoginUtil.ts +54 -71
  36. package/src/constant.ts +5 -3
@@ -24,55 +24,30 @@ const createSignature = (WeiXinId, nonceStr, sdkTicket, timestamp) => {
24
24
  console.log('wx scan signature', origin, ret);
25
25
  return ret;
26
26
  };
27
- const getUserInfo = (WeiXinId, WeiXinSecret, code, callback) => {
28
- let accessTokenUrl = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid=' + WeiXinId + '&secret=' + WeiXinSecret + '&code=' + code + '&grant_type=authorization_code';
29
- fetch(accessTokenUrl).then(res => {
30
- return res.json();
31
- }).then(res => {
32
- console.log('wechat get access code success: ', res.access_token);
33
- let userInfoUrl = 'https://api.weixin.qq.com/sns/userinfo?access_token=' + res.access_token + '&openid=' + res.openid;
34
- fetch(userInfoUrl).then(res2 => {
35
- return res2.json();
36
- }).then(json => {
37
- console.log('wechat get user info success: ', json);
38
- callback({
39
- nickname: json.nickname,
40
- headimgurl: json.headimgurl,
41
- openid: json.openid,
42
- unionid: json.unionid
43
- });
44
- }).catch(e => {
45
- console.warn('wechat get user info fail ', e);
46
- callback({
47
- error: e
48
- });
49
- });
50
- }).catch(e => {
51
- console.warn('wechat get access code fail ', e);
52
- callback({
53
- error: e
54
- });
55
- });
27
+ const getUserInfo = async (WeiXinId, WeiXinSecret, code) => {
28
+ const accessTokenUrl = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid=' + WeiXinId + '&secret=' + WeiXinSecret + '&code=' + code + '&grant_type=authorization_code';
29
+ const res = await (await fetch(accessTokenUrl)).json();
30
+ console.log('wechat get access code success: ', res.access_token);
31
+ const userInfoUrl = 'https://api.weixin.qq.com/sns/userinfo?access_token=' + res.access_token + '&openid=' + res.openid;
32
+ const json = await (await fetch(userInfoUrl)).json();
33
+ console.log('wechat get user info success: ', json);
34
+ return {
35
+ nickname: json.nickname,
36
+ headimgurl: json.headimgurl,
37
+ openid: json.openid,
38
+ unionid: json.unionid
39
+ };
56
40
  };
57
41
  export const WeChatLoginUtil = {
58
- doLogin: (WeiXinId, WeiXinSecret, callback) => {
59
- WeChat.sendAuthRequest('snsapi_userinfo').then(ret => {
60
- console.log('wechat auth success ', ret);
61
- if (!ret?.code) {
62
- callback({
63
- error: 'Auth code 获取失败'
64
- });
65
- return;
66
- }
67
- getUserInfo(WeiXinId, WeiXinSecret, ret?.code, callback);
68
- }).catch(e => {
69
- console.warn('wechat auth fail ', e);
70
- callback({
71
- error: e
72
- });
73
- });
42
+ doLogin: async (WeiXinId, WeiXinSecret) => {
43
+ const ret = await WeChat.sendAuthRequest('snsapi_userinfo');
44
+ console.log('wechat auth success ', ret);
45
+ if (!ret?.code) {
46
+ throw new Error('Auth code 获取失败');
47
+ }
48
+ return getUserInfo(WeiXinId, WeiXinSecret, ret.code);
74
49
  },
75
- doLoginByScan: async (WeiXinId, WeiXinSecret, onQRGet, callback) => {
50
+ doLoginByScan: async (WeiXinId, WeiXinSecret, onQRGet) => {
76
51
  const accessToken = await getAccessToken(WeiXinId, WeiXinSecret);
77
52
  const ticket = await getSDKTicket(accessToken);
78
53
  const nonceStr = Tool.generateObjectId();
@@ -80,17 +55,18 @@ export const WeChatLoginUtil = {
80
55
  const signature = createSignature(WeiXinId, nonceStr, ticket, timestamp);
81
56
  const qrcodeEmitter = new NativeEventEmitter(NativeModules.WeChat);
82
57
  const subscription = qrcodeEmitter.addListener('onAuthGotQrcode', res => onQRGet(res.qrcode));
83
- NativeModules.WeChat.authByScan(WeiXinId, nonceStr, timestamp, 'snsapi_userinfo', signature, '', ret => {
84
- console.log('scan result', ret);
85
- subscription.remove();
86
- if (!ret?.authCode) {
87
- callback({
88
- error: 'Auth code 获取失败'
89
- });
90
- return;
91
- }
92
- getUserInfo(WeiXinId, WeiXinSecret, ret?.authCode, callback);
58
+ const authCode = await new Promise((resolve, reject) => {
59
+ NativeModules.WeChat.authByScan(WeiXinId, nonceStr, timestamp, 'snsapi_userinfo', signature, '', ret => {
60
+ console.log('scan result', ret);
61
+ subscription.remove();
62
+ if (!ret?.authCode) {
63
+ reject(new Error('Auth code 获取失败'));
64
+ } else {
65
+ resolve(ret.authCode);
66
+ }
67
+ });
93
68
  });
69
+ return getUserInfo(WeiXinId, WeiXinSecret, authCode);
94
70
  }
95
71
  };
96
72
  //# sourceMappingURL=WeChatLoginUtil.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["sha1","NativeEventEmitter","NativeModules","WeChat","Tool","getAccessToken","WeiXinId","WeiXinSecret","url","response","fetch","res","json","access_token","getSDKTicket","accessToken","ticket","createSignature","nonceStr","sdkTicket","timestamp","origin","ret","console","log","getUserInfo","code","callback","accessTokenUrl","then","userInfoUrl","openid","res2","nickname","headimgurl","unionid","catch","e","warn","error","WeChatLoginUtil","doLogin","sendAuthRequest","doLoginByScan","onQRGet","generateObjectId","String","Math","round","Date","now","signature","qrcodeEmitter","subscription","addListener","qrcode","authByScan","remove","authCode"],"sourceRoot":"../../src","sources":["WeChatLoginUtil.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["sha1","NativeEventEmitter","NativeModules","WeChat","Tool","getAccessToken","WeiXinId","WeiXinSecret","url","response","fetch","res","json","access_token","getSDKTicket","accessToken","ticket","createSignature","nonceStr","sdkTicket","timestamp","origin","ret","console","log","getUserInfo","code","accessTokenUrl","userInfoUrl","openid","nickname","headimgurl","unionid","WeChatLoginUtil","doLogin","sendAuthRequest","Error","doLoginByScan","onQRGet","generateObjectId","String","Math","round","Date","now","signature","qrcodeEmitter","subscription","addListener","qrcode","authCode","Promise","resolve","reject","authByScan","remove"],"sourceRoot":"../../src","sources":["WeChatLoginUtil.ts"],"mappings":"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","ignoreList":[]}
@@ -1,10 +1,5 @@
1
1
  "use strict";
2
2
 
3
- export let LoginState = /*#__PURE__*/function (LoginState) {
4
- LoginState[LoginState["NOTLOGIN"] = 0] = "NOTLOGIN";
5
- LoginState[LoginState["AUTHORIZED"] = 1] = "AUTHORIZED";
6
- return LoginState;
7
- }({});
8
3
  export let LoginType = /*#__PURE__*/function (LoginType) {
9
4
  LoginType[LoginType["LoginTypeApple"] = 0] = "LoginTypeApple";
10
5
  LoginType[LoginType["LoginTypeWeChat"] = 1] = "LoginTypeWeChat";
@@ -1 +1 @@
1
- {"version":3,"names":["LoginState","LoginType"],"sourceRoot":"../../src","sources":["constant.ts"],"mappings":";;AA4BA,WAAYA,UAAU,0BAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA;AAKtB,WAAYC,SAAS,0BAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAAA,OAATA,SAAS;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["LoginType"],"sourceRoot":"../../src","sources":["constant.ts"],"mappings":";;AAmCA,WAAYA,SAAS,0BAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAAA,OAATA,SAAS;AAAA","ignoreList":[]}
@@ -1,23 +1,9 @@
1
1
  export declare const AppleLoginUtil: {
2
- fetchAndUpdateCredentialState: (user: string, callback: Function) => Promise<void>;
2
+ fetchAndUpdateCredentialState: (user: string) => Promise<void>;
3
3
  requestAppleUserForLogin: () => Promise<{
4
- error: string;
5
- user?: undefined;
6
- email?: undefined;
7
- identityToken?: undefined;
8
- code?: undefined;
9
- } | {
10
4
  user: string;
11
5
  email: string | null;
12
6
  identityToken: string | null;
13
- error?: undefined;
14
- code?: undefined;
15
- } | {
16
- error: string;
17
- code: any;
18
- user?: undefined;
19
- email?: undefined;
20
- identityToken?: undefined;
21
7
  }>;
22
8
  requestAppleUserForLogout: () => Promise<{
23
9
  authorizationCode: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"AppleLoginUtil.d.ts","sourceRoot":"","sources":["../../src/AppleLoginUtil.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,cAAc;0CAQmB,MAAM,YAAY,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;CA0FvE,CAAC"}
1
+ {"version":3,"file":"AppleLoginUtil.d.ts","sourceRoot":"","sources":["../../src/AppleLoginUtil.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,cAAc;0CAQmB,MAAM,KAAG,QAAQ,IAAI,CAAC;;cAiB1D,MAAM;eACL,MAAM,GAAG,IAAI;uBACL,MAAM,GAAG,IAAI;;;;;;CAmD/B,CAAC"}
@@ -1,10 +1,5 @@
1
+ import { ThirdPartyUserInfo } from './constant';
1
2
  export declare const HuaweiLoginUtil: {
2
- doLogin: (callback: (result: {
3
- nickname?: string;
4
- headimgurl?: string;
5
- openid?: string;
6
- unionid?: string;
7
- error?: any;
8
- }) => void) => Promise<void>;
3
+ doLogin: () => Promise<ThirdPartyUserInfo>;
9
4
  };
10
5
  //# sourceMappingURL=HuaweiLoginUtil.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"HuaweiLoginUtil.d.ts","sourceRoot":"","sources":["../../src/HuaweiLoginUtil.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,eAAe;iCAEL;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,GAAG,CAAC;KACb,KAAK,IAAI;CAsBb,CAAC"}
1
+ {"version":3,"file":"HuaweiLoginUtil.d.ts","sourceRoot":"","sources":["../../src/HuaweiLoginUtil.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAOhD,eAAO,MAAM,eAAe;mBACP,QAAQ,kBAAkB,CAAC;CAe/C,CAAC"}
@@ -23,7 +23,7 @@ export declare const LoginManager: {
23
23
  deleteUser: (callback: (error?: unknown) => void) => Promise<void>;
24
24
  lastLoginType: () => any;
25
25
  isRegisterInThisDevice: () => any;
26
- fetchWeChatAvatar: (callback: FetchImageFunctionType) => void;
26
+ fetchWeChatAvatar: (callback: FetchImageFunctionType) => Promise<void>;
27
27
  getRegisterDays: () => number;
28
28
  };
29
29
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"LoginManager.d.ts","sourceRoot":"","sources":["../../src/LoginManager.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,iBAAiB,EAEjB,SAAS,EAET,QAAQ,EACT,MAAM,YAAY,CAAC;AAUpB,KAAK,sBAAsB,GAAG,CAAC,EAAE,UAAU,EAAE,EAAE;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,KAAK,IAAI,CAAC;AAC/E,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,QAAQ,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAuCF,eAAO,MAAM,YAAY;;kBAcf,SAAS,sEAEE,MAAM,IAAI,6BACD,MAAM,KAAK,IAAI;wBA6IvB,MAAM,IAAI;;;;4BAuBtB,MAAM,EAAE,UACN,GAAG,EAAE,uBACO,OAAO,KAAK,IAAI;sBAapB,MAAM,SAAS,GAAG,uBAAsB,OAAO,KAAK,IAAI;oCAIpC,OAAO,KAAK,IAAI;;;kCAyBxB,sBAAsB;;CAsBrD,CAAC"}
1
+ {"version":3,"file":"LoginManager.d.ts","sourceRoot":"","sources":["../../src/LoginManager.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,iBAAiB,EACjB,SAAS,EAET,QAAQ,EACT,MAAM,YAAY,CAAC;AAEpB,KAAK,sBAAsB,GAAG,CAAC,EAAE,UAAU,EAAE,EAAE;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,KAAK,IAAI,CAAC;AAC/E,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,QAAQ,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAwCF,eAAO,MAAM,YAAY;;kBAcf,SAAS,sEAEE,MAAM,IAAI,6BACD,MAAM,KAAK,IAAI;wBAoGvB,MAAM,IAAI;;;;4BAuBtB,MAAM,EAAE,UACN,GAAG,EAAE,uBACO,OAAO,KAAK,IAAI;sBAc/B,MAAM,SACJ,GAAG,uBACU,OAAO,KAAK,IAAI;oCAKA,OAAO,KAAK,IAAI;;;kCAyBlB,sBAAsB;;CAwB3D,CAAC"}
@@ -1,5 +1,6 @@
1
+ import { ThirdPartyUserInfo } from './constant';
1
2
  export declare const WeChatLoginUtil: {
2
- doLogin: (WeiXinId: string, WeiXinSecret: string, callback: Function) => void;
3
- doLoginByScan: (WeiXinId: string, WeiXinSecret: string, onQRGet: (qrcode: string) => void, callback: Function) => Promise<void>;
3
+ doLogin: (WeiXinId: string, WeiXinSecret: string) => Promise<ThirdPartyUserInfo>;
4
+ doLoginByScan: (WeiXinId: string, WeiXinSecret: string, onQRGet: (qrcode: string) => void) => Promise<ThirdPartyUserInfo>;
4
5
  };
5
6
  //# sourceMappingURL=WeChatLoginUtil.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WeChatLoginUtil.d.ts","sourceRoot":"","sources":["../../src/WeChatLoginUtil.ts"],"names":[],"mappings":"AA+FA,eAAO,MAAM,eAAe;wBACN,MAAM,gBAAgB,MAAM,YAAY,QAAQ;8BAiBxD,MAAM,gBACF,MAAM,oBACF,MAAM,KAAK,IAAI,YACvB,QAAQ;CAgCrB,CAAC"}
1
+ {"version":3,"file":"WeChatLoginUtil.d.ts","sourceRoot":"","sources":["../../src/WeChatLoginUtil.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AA4EhD,eAAO,MAAM,eAAe;wBAEd,MAAM,gBACF,MAAM,KACnB,QAAQ,kBAAkB,CAAC;8BAUlB,MAAM,gBACF,MAAM,oBACF,MAAM,KAAK,IAAI,KAChC,QAAQ,kBAAkB,CAAC;CAmC/B,CAAC"}
@@ -23,9 +23,11 @@ export interface LoginUserDataType {
23
23
  email?: string | null;
24
24
  authData: LoginAuthDataType;
25
25
  }
26
- export declare enum LoginState {
27
- NOTLOGIN = 0,
28
- AUTHORIZED = 1
26
+ export interface ThirdPartyUserInfo {
27
+ nickname: string;
28
+ headimgurl: string;
29
+ openid: string;
30
+ unionid: string;
29
31
  }
30
32
  export declare enum LoginType {
31
33
  LoginTypeApple = 0,
@@ -1 +1 @@
1
- {"version":3,"file":"constant.d.ts","sourceRoot":"","sources":["../../src/constant.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,IAAI,CAAC;IAClB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,iBAAiB,CAAC;CAC7B;AAED,oBAAY,UAAU;IACpB,QAAQ,IAAA;IACR,UAAU,IAAA;CACX;AAED,oBAAY,SAAS;IACnB,cAAc,IAAA;IACd,eAAe,IAAA;IACf,gBAAgB,IAAA;IAChB,mBAAmB,IAAA;IACnB,eAAe,IAAA;CAChB"}
1
+ {"version":3,"file":"constant.d.ts","sourceRoot":"","sources":["../../src/constant.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,IAAI,CAAC;IAClB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,iBAAiB,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,oBAAY,SAAS;IACnB,cAAc,IAAA;IACd,eAAe,IAAA;IACf,gBAAgB,IAAA;IAChB,mBAAmB,IAAA;IACnB,eAAe,IAAA;CAChB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@norcy/react-native-toolkit",
3
- "version": "0.3.21",
3
+ "version": "0.3.23",
4
4
  "private": false,
5
5
  "description": "My Toolkit",
6
6
  "main": "lib/commonjs/index",
@@ -1,6 +1,5 @@
1
1
  import { appleAuth } from '@invertase/react-native-apple-authentication';
2
2
  import { getBundleId } from 'react-native-device-info';
3
- import { LoginState } from './constant';
4
3
 
5
4
  const AV = require('leancloud-storage');
6
5
 
@@ -12,77 +11,57 @@ export const AppleLoginUtil = {
12
11
  // });
13
12
  // });
14
13
 
15
- fetchAndUpdateCredentialState: async (user: string, callback: Function) => {
14
+ fetchAndUpdateCredentialState: async (user: string): Promise<void> => {
16
15
  console.log('User 正在登录鉴权:', user);
17
16
 
18
17
  if (user === null) {
19
- callback({ result: LoginState.NOTLOGIN }, { error: 'USER EMPTY' });
18
+ throw new Error('USER EMPTY');
19
+ }
20
+
21
+ const credentialState = await appleAuth.getCredentialStateForUser(user);
22
+ if (credentialState === appleAuth.State.AUTHORIZED) {
23
+ console.log('登录鉴权成功');
20
24
  } else {
21
- const credentialState = await appleAuth.getCredentialStateForUser(user);
22
- if (credentialState === appleAuth.State.AUTHORIZED) {
23
- console.log('登录鉴权成功');
24
- callback({ result: LoginState.AUTHORIZED });
25
- } else {
26
- console.warn('登录鉴权失败');
27
- callback(
28
- { result: LoginState.NOTLOGIN },
29
- { error: 'Authorized Failed' }
30
- );
31
- }
25
+ console.warn('登录鉴权失败');
26
+ throw new Error('Authorized Failed');
32
27
  }
33
28
  },
34
29
 
35
- requestAppleUserForLogin: async () => {
30
+ requestAppleUserForLogin: async (): Promise<{
31
+ user: string;
32
+ email: string | null;
33
+ identityToken: string | null;
34
+ }> => {
36
35
  if (!appleAuth.isSupported) {
37
- return { error: 'Apple Auth Not Supported' };
36
+ throw new Error('Apple Auth Not Supported');
38
37
  }
39
38
 
40
- // start a login request
41
- try {
42
- const appleAuthRequestResponse = await appleAuth.performRequest({
43
- requestedOperation: appleAuth.Operation.LOGIN,
44
- requestedScopes: [appleAuth.Scope.EMAIL, appleAuth.Scope.FULL_NAME],
45
- });
39
+ const appleAuthRequestResponse = await appleAuth.performRequest({
40
+ requestedOperation: appleAuth.Operation.LOGIN,
41
+ requestedScopes: [appleAuth.Scope.EMAIL, appleAuth.Scope.FULL_NAME],
42
+ });
46
43
 
47
- console.log('appleAuthRequestResponse login', appleAuthRequestResponse);
44
+ console.log('appleAuthRequestResponse login', appleAuthRequestResponse);
48
45
 
49
- const { user: newUser, email, identityToken } = appleAuthRequestResponse;
46
+ const { user: newUser, email, identityToken } = appleAuthRequestResponse;
50
47
 
51
- console.log(`Apple Authentication Completed, ${newUser}, ${email}`);
48
+ console.log(`Apple Authentication Completed, ${newUser}, ${email}`);
52
49
 
53
- return { user: newUser, email: email, identityToken: identityToken };
54
- } catch (error: any) {
55
- if (error.code === appleAuth.Error.CANCELED) {
56
- // console.warn('User canceled Apple Sign in.');
57
- return { error: 'User Cancel Login', code: error.code };
58
- } else {
59
- // console.warn('登录鉴权出错: ', error);
60
- return { error: 'Login Request Fail', code: error.code };
61
- }
62
- }
50
+ return { user: newUser, email, identityToken };
63
51
  },
64
52
 
65
53
  requestAppleUserForLogout: async () => {
66
54
  if (!appleAuth.isSupported) {
67
- throw { error: 'Apple Auth Not Supported', code: -1 };
55
+ throw new Error('Apple Auth Not Supported');
68
56
  }
69
57
 
70
- // start a login request
71
- try {
72
- const appleAuthRequestResponse = await appleAuth.performRequest({
73
- requestedOperation: appleAuth.Operation.LOGOUT,
74
- });
58
+ const appleAuthRequestResponse = await appleAuth.performRequest({
59
+ requestedOperation: appleAuth.Operation.LOGOUT,
60
+ });
75
61
 
76
- console.log('appleAuthRequestResponse logout', appleAuthRequestResponse);
62
+ console.log('appleAuthRequestResponse logout', appleAuthRequestResponse);
77
63
 
78
- return { authorizationCode: appleAuthRequestResponse.authorizationCode };
79
- } catch (error: any) {
80
- if (error.code === appleAuth.Error.CANCELED) {
81
- throw { error: 'User Cancel Logout', code: error.code };
82
- } else {
83
- throw { error: 'Logout Request Fail', code: error.code };
84
- }
85
- }
64
+ return { authorizationCode: appleAuthRequestResponse.authorizationCode };
86
65
  },
87
66
 
88
67
  requestDeleteAccount: async () => {
@@ -1,4 +1,5 @@
1
1
  import { NativeModules, TurboModuleRegistry } from 'react-native';
2
+ import { ThirdPartyUserInfo } from './constant';
2
3
  import { PlatformHelper } from './PlatformHelper';
3
4
 
4
5
  const HuaweiLoginModule =
@@ -6,33 +7,19 @@ const HuaweiLoginModule =
6
7
  TurboModuleRegistry.get<any>('HuaweiLoginModule');
7
8
 
8
9
  export const HuaweiLoginUtil = {
9
- doLogin: async (
10
- callback: (result: {
11
- nickname?: string;
12
- headimgurl?: string;
13
- openid?: string;
14
- unionid?: string;
15
- error?: any;
16
- }) => void
17
- ) => {
10
+ doLogin: async (): Promise<ThirdPartyUserInfo> => {
18
11
  if (PlatformHelper.isIOS()) {
19
- callback({ error: 'Huawei Login is not supported on iOS' });
20
- return;
12
+ throw new Error('Huawei Login is not supported on iOS');
21
13
  }
22
14
  if (!HuaweiLoginModule || typeof HuaweiLoginModule.signIn !== 'function') {
23
- callback({ error: 'HuaweiLoginModule not available' });
24
- return;
25
- }
26
- try {
27
- const result = await HuaweiLoginModule.signIn();
28
- callback({
29
- nickname: result.nickname,
30
- headimgurl: result.headimgurl,
31
- openid: result.openid,
32
- unionid: result.unionid,
33
- });
34
- } catch (e) {
35
- callback({ error: e });
15
+ throw new Error('HuaweiLoginModule not available');
36
16
  }
17
+ const result = await HuaweiLoginModule.signIn();
18
+ return {
19
+ nickname: result.nickname,
20
+ headimgurl: result.headimgurl,
21
+ openid: result.openid,
22
+ unionid: result.unionid,
23
+ };
37
24
  },
38
25
  };