Skip to content

Commit 1848571

Browse files
authored
feat: make authOptions available in loginWithAuthData (#676)
1 parent 41d65d6 commit 1848571

File tree

2 files changed

+81
-10
lines changed

2 files changed

+81
-10
lines changed

src/user.js

Lines changed: 80 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,11 @@ module.exports = function(AV) {
145145
* call linkWith on the user (even if it doesn't exist yet on the server).
146146
* @private
147147
*/
148-
_linkWith: function(provider, data, { failOnNotExist = false } = {}) {
148+
_linkWith: function(
149+
provider,
150+
data,
151+
{ failOnNotExist = false, useMasterKey, sessionToken, user } = {}
152+
) {
149153
var authType;
150154
if (_.isString(provider)) {
151155
authType = provider;
@@ -157,6 +161,9 @@ module.exports = function(AV) {
157161
return this.save(
158162
{ authData: { [authType]: data } },
159163
{
164+
useMasterKey,
165+
sessionToken,
166+
user,
160167
fetchWhenSave: !!this.get('authData'),
161168
_failOnNotExist: failOnNotExist,
162169
}
@@ -580,14 +587,22 @@ module.exports = function(AV) {
580587
unionIdPlatform = 'weixin',
581588
asMainAccount = true,
582589
failOnNotExist = false,
590+
useMasterKey,
591+
sessionToken,
592+
user,
583593
} = {}) {
584594
const getAuthInfo = getAdapter('getAuthInfo');
585595
return getAuthInfo({
586596
preferUnionId,
587597
asMainAccount,
588598
platform: unionIdPlatform,
589599
}).then(authInfo =>
590-
this.loginWithMiniApp(authInfo, { failOnNotExist })
600+
this.loginWithMiniApp(authInfo, {
601+
failOnNotExist,
602+
useMasterKey,
603+
sessionToken,
604+
user,
605+
})
591606
);
592607
},
593608

@@ -602,12 +617,20 @@ module.exports = function(AV) {
602617
unionIdPlatform = 'weixin',
603618
asMainAccount = false,
604619
failOnNotExist = false,
620+
useMasterKey,
621+
sessionToken,
622+
user,
605623
} = {}
606624
) {
607625
const getAuthInfo = getAdapter('getAuthInfo');
608626
return getAuthInfo({ platform: unionIdPlatform }).then(authInfo => {
609627
authInfo = AV.User.mergeUnionId(authInfo, unionId, { asMainAccount });
610-
return this.loginWithMiniApp(authInfo, { failOnNotExist });
628+
return this.loginWithMiniApp(authInfo, {
629+
failOnNotExist,
630+
useMasterKey,
631+
sessionToken,
632+
user,
633+
});
611634
});
612635
},
613636

@@ -626,6 +649,9 @@ module.exports = function(AV) {
626649
unionIdPlatform = 'qq',
627650
asMainAccount = true,
628651
failOnNotExist = false,
652+
useMasterKey,
653+
sessionToken,
654+
user,
629655
} = {}) {
630656
const getAuthInfo = getAdapter('getAuthInfo');
631657
return getAuthInfo({
@@ -634,7 +660,12 @@ module.exports = function(AV) {
634660
platform: unionIdPlatform,
635661
}).then(authInfo => {
636662
authInfo.provider = PLATFORM_QQAPP;
637-
return this.loginWithMiniApp(authInfo, { failOnNotExist });
663+
return this.loginWithMiniApp(authInfo, {
664+
failOnNotExist,
665+
useMasterKey,
666+
sessionToken,
667+
user,
668+
});
638669
});
639670
},
640671

@@ -649,13 +680,21 @@ module.exports = function(AV) {
649680
unionIdPlatform = 'qq',
650681
asMainAccount = false,
651682
failOnNotExist = false,
683+
useMasterKey,
684+
sessionToken,
685+
user,
652686
} = {}
653687
) {
654688
const getAuthInfo = getAdapter('getAuthInfo');
655689
return getAuthInfo({ platform: unionIdPlatform }).then(authInfo => {
656690
authInfo = AV.User.mergeUnionId(authInfo, unionId, { asMainAccount });
657691
authInfo.provider = PLATFORM_QQAPP;
658-
return this.loginWithMiniApp(authInfo, { failOnNotExist });
692+
return this.loginWithMiniApp(authInfo, {
693+
failOnNotExist,
694+
useMasterKey,
695+
sessionToken,
696+
user,
697+
});
659698
});
660699
},
661700

@@ -1316,14 +1355,22 @@ module.exports = function(AV) {
13161355
unionIdPlatform = 'weixin',
13171356
asMainAccount = true,
13181357
failOnNotExist = false,
1358+
useMasterKey,
1359+
sessionToken,
1360+
user,
13191361
} = {}) {
13201362
const getAuthInfo = getAdapter('getAuthInfo');
13211363
return getAuthInfo({
13221364
preferUnionId,
13231365
asMainAccount,
13241366
platform: unionIdPlatform,
13251367
}).then(authInfo =>
1326-
this.loginWithMiniApp(authInfo, { failOnNotExist })
1368+
this.loginWithMiniApp(authInfo, {
1369+
failOnNotExist,
1370+
useMasterKey,
1371+
sessionToken,
1372+
user,
1373+
})
13271374
);
13281375
},
13291376

@@ -1344,12 +1391,20 @@ module.exports = function(AV) {
13441391
unionIdPlatform = 'weixin',
13451392
asMainAccount = false,
13461393
failOnNotExist = false,
1394+
useMasterKey,
1395+
sessionToken,
1396+
user,
13471397
} = {}
13481398
) {
13491399
const getAuthInfo = getAdapter('getAuthInfo');
13501400
return getAuthInfo({ platform: unionIdPlatform }).then(authInfo => {
13511401
authInfo = AV.User.mergeUnionId(authInfo, unionId, { asMainAccount });
1352-
return this.loginWithMiniApp(authInfo, { failOnNotExist });
1402+
return this.loginWithMiniApp(authInfo, {
1403+
failOnNotExist,
1404+
useMasterKey,
1405+
sessionToken,
1406+
user,
1407+
});
13531408
});
13541409
},
13551410

@@ -1371,6 +1426,9 @@ module.exports = function(AV) {
13711426
unionIdPlatform = 'qq',
13721427
asMainAccount = true,
13731428
failOnNotExist = false,
1429+
useMasterKey,
1430+
sessionToken,
1431+
user,
13741432
} = {}) {
13751433
const getAuthInfo = getAdapter('getAuthInfo');
13761434
return getAuthInfo({
@@ -1379,7 +1437,12 @@ module.exports = function(AV) {
13791437
platform: unionIdPlatform,
13801438
}).then(authInfo => {
13811439
authInfo.provider = PLATFORM_QQAPP;
1382-
return this.loginWithMiniApp(authInfo, { failOnNotExist });
1440+
return this.loginWithMiniApp(authInfo, {
1441+
failOnNotExist,
1442+
useMasterKey,
1443+
sessionToken,
1444+
user,
1445+
});
13831446
});
13841447
},
13851448

@@ -1401,13 +1464,21 @@ module.exports = function(AV) {
14011464
unionIdPlatform = 'qq',
14021465
asMainAccount = false,
14031466
failOnNotExist = false,
1467+
useMasterKey,
1468+
sessionToken,
1469+
user,
14041470
} = {}
14051471
) {
14061472
const getAuthInfo = getAdapter('getAuthInfo');
14071473
return getAuthInfo({ platform: unionIdPlatform }).then(authInfo => {
14081474
authInfo = AV.User.mergeUnionId(authInfo, unionId, { asMainAccount });
14091475
authInfo.provider = PLATFORM_QQAPP;
1410-
return this.loginWithMiniApp(authInfo, { failOnNotExist });
1476+
return this.loginWithMiniApp(authInfo, {
1477+
failOnNotExist,
1478+
useMasterKey,
1479+
sessionToken,
1480+
user,
1481+
});
14111482
});
14121483
},
14131484

storage.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -680,7 +680,7 @@ export class Role extends Object {
680680
setName(name: string): Role;
681681
}
682682

683-
interface OAuthLoginOptions {
683+
interface OAuthLoginOptions extends AuthOptions {
684684
failOnNotExist?: boolean;
685685
}
686686

0 commit comments

Comments
 (0)