| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 | 'use strict'function InterceptorManager() {    this.handlers = []}/** * Add a new interceptor to the stack * * @param {Function} fulfilled The function to handle `then` for a `Promise` * @param {Function} rejected The function to handle `reject` for a `Promise` * * @return {Number} An ID used to remove interceptor later */InterceptorManager.prototype.use = function use(fulfilled, rejected) {    this.handlers.push({        fulfilled,        rejected    })    return this.handlers.length - 1}/** * Remove an interceptor from the stack * * @param {Number} id The ID that was returned by `use` */InterceptorManager.prototype.eject = function eject(id) {    if (this.handlers[id]) {        this.handlers[id] = null    }}/** * Iterate over all the registered interceptors * * This method is particularly useful for skipping over any * interceptors that may have become `null` calling `eject`. * * @param {Function} fn The function to call for each interceptor */InterceptorManager.prototype.forEach = function forEach(fn) {    this.handlers.forEach((h) => {        if (h !== null) {            fn(h)        }    })}export default InterceptorManager
 |