react-native-gigya-sdk
Version:
SAP CDC/Gigya SDK for your React Native applications
64 lines (52 loc) • 1.48 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = _default;
var _base = require("base-64");
var _types = require("../types");
function _default(gigyaSdkError) {
let {
code,
message,
name,
stack
} = gigyaSdkError;
let error = {
type: _types.GigyaSdkErrors.UndefinedError,
payload: null,
...(message && {
message
}),
...(stack && {
stack
}),
...(code && {
code
}),
...(name && {
name
})
};
if (error.code && error.message) {
var _error$payload;
try {
let payload = JSON.parse(gigyaSdkError.message);
if (payload.requestData) {
payload = JSON.parse((0, _base.decode)(payload.requestData));
}
if (payload.accountInfo && typeof payload.accountInfo === 'string') {
payload.accountInfo = JSON.parse(payload.accountInfo);
}
error.payload = payload;
} catch (e) {}
error.type = _types.GigyaSdkErrors[gigyaSdkError.code];
const errorTypeIndex = Object.values(_types.GigyaSdkErrorCodes).indexOf(error === null || error === void 0 ? void 0 : (_error$payload = error.payload) === null || _error$payload === void 0 ? void 0 : _error$payload.errorCode);
if (errorTypeIndex !== -1) {
const type = Object.keys(_types.GigyaSdkErrorCodes)[errorTypeIndex];
error.type = _types.GigyaSdkErrors[type];
}
}
return error;
}
//# sourceMappingURL=formatError.js.map