capacitor-community / facebook-login

Facebook Login support
MIT License
103 stars 52 forks source link

Mismatch response between Android and iOS #103

Open pelkamarcin opened 2 years ago

pelkamarcin commented 2 years ago

Describe the bug The token returned by Android implementation contains different fields:

ret.put("applicationId", accessToken.getApplicationId());
        ret.put("declinedPermissions", collectionToJson(accessToken.getDeclinedPermissions()));
        ret.put("expires", dateToJson(accessToken.getExpires()));
        ret.put("lastRefresh", dateToJson(accessToken.getLastRefresh()));
        ret.put("permissions", collectionToJson(accessToken.getPermissions()));
        ret.put("token", accessToken.getToken());
        ret.put("userId", accessToken.getUserId());
        ret.put("isExpired", accessToken.isExpired());

while iOS:

"applicationId": accessToken.appID,
            /*declinedPermissions: accessToken.declinedPermissions,*/
            "expires": dateToJS(accessToken.expirationDate),
            "lastRefresh": dateToJS(accessToken.refreshDate),
            /*permissions: accessToken.grantedPermissions,*/
            "token": accessToken.tokenString,
            "userId": accessToken.userID

The main concern I have is about declinedPermissions and permissions field. Without it we will not know on iOS platform that someone logged in but declined email for example.

To Reproduce Steps to reproduce the behavior: Bug if present in all versions

Expected behavior Response from both iOS and Android to be the same