UNPKG

react-native-gigya-sdk

Version:
71 lines (55 loc) 2 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = _default; var _reactNative = require("react-native"); var _logout = _interopRequireDefault(require("./logout")); var _getState = _interopRequireDefault(require("./getState")); var _isGigyaError = _interopRequireDefault(require("./isGigyaError")); var _state = require("../internals/state"); var _handleSdkCall = _interopRequireDefault(require("../internals/handleSdkCall")); var _clearErrorState = _interopRequireDefault(require("../internals/clearErrorState")); var _saveAuthenticationAttempt = _interopRequireDefault(require("../internals/saveAuthenticationAttempt")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const { GigyaSdk } = _reactNative.NativeModules; function _default(provider, params) { return new Promise(async (resolve, reject) => { if (params !== null && params !== void 0 && params.loginMode && !params.regToken) { reject(new Error("regToken is required when using loginMode. Use GigyaSdk.linkToSocialProvider() instead if you're trying to resolve an account conflict.")); } try { const state = await (0, _getState.default)(); const { lang, ...rest } = params || { lang: state.lang }; await (0, _logout.default)(); const response = await (0, _handleSdkCall.default)(GigyaSdk.socialLogin(provider, JSON.stringify({ lang, ...(rest && rest) }))); await (0, _state.setState)({ UID: response.UID }); try { await (0, _clearErrorState.default)(); } catch (err) {} resolve(response); } catch (e) { if (await (0, _isGigyaError.default)(e)) { try { await (0, _saveAuthenticationAttempt.default)(provider, e); } catch (err) { return reject(err); } } reject(e); } }); } //# sourceMappingURL=socialLogin.js.map