react-native-gigya-sdk
Version:
SAP CDC/Gigya SDK for your React Native applications
76 lines (58 loc) • 2.51 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = _default;
var _setSession = _interopRequireDefault(require("./setSession"));
var _getAccountInfo = _interopRequireDefault(require("./getAccountInfo"));
var _acceptConsentSchemas = _interopRequireDefault(require("./acceptConsentSchemas"));
var _finalizeRegistration = _interopRequireDefault(require("./finalizeRegistration"));
var _declineConsentSchemas = _interopRequireDefault(require("./declineConsentSchemas"));
var _resendVerificationEmail = _interopRequireDefault(require("./resendVerificationEmail"));
var _getUnacceptedConsentSchemas = _interopRequireDefault(require("./getUnacceptedConsentSchemas"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _default(options) {
return new Promise(async (resolve, reject) => {
try {
const unacceptedConsentSchemas = await (0, _getUnacceptedConsentSchemas.default)();
if (unacceptedConsentSchemas !== null && unacceptedConsentSchemas !== void 0 && unacceptedConsentSchemas.acceptanceRequired) {
await (0, _acceptConsentSchemas.default)(unacceptedConsentSchemas.acceptanceRequired, {
noUID: true
});
}
if (unacceptedConsentSchemas !== null && unacceptedConsentSchemas !== void 0 && unacceptedConsentSchemas.instantiationRequired) {
await (0, _declineConsentSchemas.default)(unacceptedConsentSchemas.instantiationRequired, {
noUID: true
});
}
const account = await (0, _getAccountInfo.default)({
noUID: true
});
if (!account.isVerified) {
await (0, _resendVerificationEmail.default)({
noUID: true
});
return reject({
actionRequired: {
type: 'emailVerification'
}
});
}
if (!account.isRegistered && !(options !== null && options !== void 0 && options.noFinalize)) {
const response = await (0, _finalizeRegistration.default)(options);
if (!(options !== null && options !== void 0 && options.noSetSession)) {
try {
await (0, _setSession.default)(response.sessionInfo.sessionToken, response.sessionInfo.sessionSecret);
} catch (e) {
console.log(e);
}
}
return resolve(response);
}
resolve(account);
} catch (e) {
reject(e);
}
});
}
//# sourceMappingURL=grantRequiredConsents.js.map