@fruits-chain/react-native-xiaoshu
Version:
🌈 React Native UI library
32 lines (28 loc) • 599 B
JavaScript
import { isPromise } from './typeof';
const noop = () => {};
export function callInterceptor(interceptor, _ref) {
let {
args = [],
done,
canceled
} = _ref;
if (interceptor) {
const returnVal = interceptor.apply(null, args);
if (isPromise(returnVal)) {
returnVal.then(value => {
if (value) {
done();
} else if (canceled) {
canceled();
}
}).catch(noop);
} else if (returnVal) {
done();
} else if (canceled) {
canceled();
}
} else {
done();
}
}
//# sourceMappingURL=interceptor.js.map