UNPKG

@yoroi/common

Version:

The Common package of Yoroi SDK

52 lines 1.11 kB
import { freeze } from 'immer'; const success = result => Promise.resolve(result); const loading = () => new Promise(() => {}); const error = rejectWith => Promise.reject(rejectWith ?? new Error('Unknown error')); const delayed = _ref => { let { data, timeout = 3000 } = _ref; return new Promise(resolve => { setTimeout(() => resolve(data), timeout); }); }; const empty = emptyRepresentation => Promise.resolve(emptyRepresentation); const asyncBehaviorMaker = _ref2 => { let { otherErrors, data, timeout, emptyRepresentation } = _ref2; return freeze({ delayed: function () { return delayed({ data, timeout }); }, empty: function () { return empty(emptyRepresentation); }, error: { ...otherErrors, unknown: function () { return error(); } }, loading, success: function () { return success(data); } }); }; export const asyncBehavior = freeze({ delayed, empty, error, loading, success, maker: asyncBehaviorMaker }); //# sourceMappingURL=async-behavior.js.map