react-native-gigya-sdk
Version:
SAP CDC/Gigya SDK for your React Native applications
41 lines (35 loc) • 1.28 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.setState = setState;
exports.state = exports.initialState = void 0;
var _getState = _interopRequireDefault(require("../core/getState"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const initialState = {
UID: '',
lang: 'en',
apiKey: '',
storageKey: 'GigyaSdkState'
};
exports.initialState = initialState;
let state = initialState;
exports.state = state;
function setState(data) {
return new Promise(async (resolve, reject) => {
try {
var _data$storage, _oldState$storage;
const oldState = await (0, _getState.default)();
const newState = { ...oldState,
...data
};
const setItem = ((_data$storage = data.storage) === null || _data$storage === void 0 ? void 0 : _data$storage.setItem) || ((_oldState$storage = oldState.storage) === null || _oldState$storage === void 0 ? void 0 : _oldState$storage.setItem);
await Promise.resolve(setItem === null || setItem === void 0 ? void 0 : setItem(newState.storageKey, JSON.stringify(newState)));
exports.state = state = newState;
resolve(state);
} catch (e) {
reject(e);
}
});
}
//# sourceMappingURL=state.js.map