{"ast":null,"code":"import { getBatch } from './batch'; // encapsulates the subscription logic for connecting a component to the redux store, as\n// well as nesting subscriptions of descendant components, so that we can ensure the\n// ancestor components re-render before descendants\n\nvar nullListeners = {\n  notify: function notify() {}\n};\n\nfunction createListenerCollection() {\n  var batch = getBatch();\n  var first = null;\n  var last = null;\n  return {\n    clear: function clear() {\n      first = null;\n      last = null;\n    },\n    notify: function notify() {\n      batch(function () {\n        var listener = first;\n\n        while (listener) {\n          listener.callback();\n          listener = listener.next;\n        }\n      });\n    },\n    get: function get() {\n      var listeners = [];\n      var listener = first;\n\n      while (listener) {\n        listeners.push(listener);\n        listener = listener.next;\n      }\n\n      return listeners;\n    },\n    subscribe: function subscribe(callback) {\n      var isSubscribed = true;\n      var listener = last = {\n        callback: callback,\n        next: null,\n        prev: last\n      };\n\n      if (listener.prev) {\n        listener.prev.next = listener;\n      } else {\n        first = listener;\n      }\n\n      return function unsubscribe() {\n        if (!isSubscribed || first === null) return;\n        isSubscribed = false;\n\n        if (listener.next) {\n          listener.next.prev = listener.prev;\n        } else {\n          last = listener.prev;\n        }\n\n        if (listener.prev) {\n          listener.prev.next = listener.next;\n        } else {\n          first = listener.next;\n        }\n      };\n    }\n  };\n}\n\nvar Subscription = /*#__PURE__*/function () {\n  function Subscription(store, parentSub) {\n    this.store = store;\n    this.parentSub = parentSub;\n    this.unsubscribe = null;\n    this.listeners = nullListeners;\n    this.handleChangeWrapper = this.handleChangeWrapper.bind(this);\n  }\n\n  var _proto = Subscription.prototype;\n\n  _proto.addNestedSub = function addNestedSub(listener) {\n    this.trySubscribe();\n    return this.listeners.subscribe(listener);\n  };\n\n  _proto.notifyNestedSubs = function notifyNestedSubs() {\n    this.listeners.notify();\n  };\n\n  _proto.handleChangeWrapper = function handleChangeWrapper() {\n    if (this.onStateChange) {\n      this.onStateChange();\n    }\n  };\n\n  _proto.isSubscribed = function isSubscribed() {\n    return Boolean(this.unsubscribe);\n  };\n\n  _proto.trySubscribe = function trySubscribe() {\n    if (!this.unsubscribe) {\n      this.unsubscribe = this.parentSub ? this.parentSub.addNestedSub(this.handleChangeWrapper) : this.store.subscribe(this.handleChangeWrapper);\n      this.listeners = createListenerCollection();\n    }\n  };\n\n  _proto.tryUnsubscribe = function tryUnsubscribe() {\n    if (this.unsubscribe) {\n      this.unsubscribe();\n      this.unsubscribe = null;\n      this.listeners.clear();\n      this.listeners = nullListeners;\n    }\n  };\n\n  return Subscription;\n}();\n\nexport { Subscription as default };","map":{"version":3,"sources":["C:/laragon/www/itokin/DriverOPCDA/frontend/node_modules/react-redux/es/utils/Subscription.js"],"names":["getBatch","nullListeners","notify","createListenerCollection","batch","first","last","clear","listener","callback","next","get","listeners","push","subscribe","isSubscribed","prev","unsubscribe","Subscription","store","parentSub","handleChangeWrapper","bind","_proto","prototype","addNestedSub","trySubscribe","notifyNestedSubs","onStateChange","Boolean","tryUnsubscribe","default"],"mappings":"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","sourcesContent":["import { getBatch } from './batch'; // encapsulates the subscription logic for connecting a component to the redux store, as\n// well as nesting subscriptions of descendant components, so that we can ensure the\n// ancestor components re-render before descendants\n\nvar nullListeners = {\n  notify: function notify() {}\n};\n\nfunction createListenerCollection() {\n  var batch = getBatch();\n  var first = null;\n  var last = null;\n  return {\n    clear: function clear() {\n      first = null;\n      last = null;\n    },\n    notify: function notify() {\n      batch(function () {\n        var listener = first;\n\n        while (listener) {\n          listener.callback();\n          listener = listener.next;\n        }\n      });\n    },\n    get: function get() {\n      var listeners = [];\n      var listener = first;\n\n      while (listener) {\n        listeners.push(listener);\n        listener = listener.next;\n      }\n\n      return listeners;\n    },\n    subscribe: function subscribe(callback) {\n      var isSubscribed = true;\n      var listener = last = {\n        callback: callback,\n        next: null,\n        prev: last\n      };\n\n      if (listener.prev) {\n        listener.prev.next = listener;\n      } else {\n        first = listener;\n      }\n\n      return function unsubscribe() {\n        if (!isSubscribed || first === null) return;\n        isSubscribed = false;\n\n        if (listener.next) {\n          listener.next.prev = listener.prev;\n        } else {\n          last = listener.prev;\n        }\n\n        if (listener.prev) {\n          listener.prev.next = listener.next;\n        } else {\n          first = listener.next;\n        }\n      };\n    }\n  };\n}\n\nvar Subscription = /*#__PURE__*/function () {\n  function Subscription(store, parentSub) {\n    this.store = store;\n    this.parentSub = parentSub;\n    this.unsubscribe = null;\n    this.listeners = nullListeners;\n    this.handleChangeWrapper = this.handleChangeWrapper.bind(this);\n  }\n\n  var _proto = Subscription.prototype;\n\n  _proto.addNestedSub = function addNestedSub(listener) {\n    this.trySubscribe();\n    return this.listeners.subscribe(listener);\n  };\n\n  _proto.notifyNestedSubs = function notifyNestedSubs() {\n    this.listeners.notify();\n  };\n\n  _proto.handleChangeWrapper = function handleChangeWrapper() {\n    if (this.onStateChange) {\n      this.onStateChange();\n    }\n  };\n\n  _proto.isSubscribed = function isSubscribed() {\n    return Boolean(this.unsubscribe);\n  };\n\n  _proto.trySubscribe = function trySubscribe() {\n    if (!this.unsubscribe) {\n      this.unsubscribe = this.parentSub ? this.parentSub.addNestedSub(this.handleChangeWrapper) : this.store.subscribe(this.handleChangeWrapper);\n      this.listeners = createListenerCollection();\n    }\n  };\n\n  _proto.tryUnsubscribe = function tryUnsubscribe() {\n    if (this.unsubscribe) {\n      this.unsubscribe();\n      this.unsubscribe = null;\n      this.listeners.clear();\n      this.listeners = nullListeners;\n    }\n  };\n\n  return Subscription;\n}();\n\nexport { Subscription as default };"]},"metadata":{},"sourceType":"module"}