interceptor.js 470 B

12345678910111213141516171819202122
  1. import { isPromise, noop } from '.';
  2. export function callInterceptor(options) {
  3. var interceptor = options.interceptor,
  4. args = options.args,
  5. done = options.done;
  6. if (interceptor) {
  7. var returnVal = interceptor.apply(void 0, args);
  8. if (isPromise(returnVal)) {
  9. returnVal.then(function (value) {
  10. if (value) {
  11. done();
  12. }
  13. }).catch(noop);
  14. } else if (returnVal) {
  15. done();
  16. }
  17. } else {
  18. done();
  19. }
  20. }