react-native-gigya-sdk
Version:
SAP CDC/Gigya SDK for your React Native applications
53 lines (39 loc) • 1.71 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = _default;
var _state = require("../internals/state");
function _default() {
return new Promise(async (resolve, reject) => {
try {
var _output, _output2;
if (!Object.is(_state.state, _state.initialState)) {
return resolve(_state.state);
}
let output = null;
const rehydrateState = async (storeKey) => {
let persistedState = null;
try {
var _state$storage, _state$storage$getIte;
const data = await Promise.resolve((_state$storage = _state.state.storage) === null || _state$storage === void 0 ? void 0 : (_state$storage$getIte = _state$storage.getItem) === null || _state$storage$getIte === void 0 ? void 0 : _state$storage$getIte.call(_state$storage, storeKey));
if (data) {
persistedState = JSON.parse(data);
}
} catch (error) {
reject(error);
}
return persistedState;
};
output = await rehydrateState(_state.state.storageKey);
if ((_output = output) !== null && _output !== void 0 && _output.storageKey && ((_output2 = output) === null || _output2 === void 0 ? void 0 : _output2.storageKey) !== _state.state.storageKey && (_state.state === null || _state.state === void 0 ? void 0 : _state.state.storageKey) === _state.initialState.storageKey) {
var _output3;
output = await rehydrateState((_output3 = output) === null || _output3 === void 0 ? void 0 : _output3.storageKey);
}
resolve(output || _state.initialState);
} catch (e) {
reject(e);
}
});
}
//# sourceMappingURL=getState.js.map