"use strict";

exports.__esModule = true;
exports.default = exports.TOAST_TIMEOUT = void 0;
var _react = _interopRequireWildcard(require("react"));
var _reactRedux = require("react-redux");
var _utils = require("../../utils");
var _toasts = require("../../actions/toasts");
var _ToastList = _interopRequireDefault(require("../ToastList"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
(function () {
  var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
  enterModule && enterModule(module);
})();
(function () {
  var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
  enterModule && enterModule(module);
})();
var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
  return a;
};
var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
  return a;
};
var TOAST_TIMEOUT = exports.TOAST_TIMEOUT = 5; // seconds

var selectToasts = function selectToasts(state) {
  return state.getIn(["toasts", "queue"]).take(3);
};
var ConnectedToastList = function ConnectedToastList() {
  var dismissalTimer = (0, _react.useRef)();
  var toasts = (0, _utils.unwrapImmutable)((0, _reactRedux.useSelector)(selectToasts));
  var dispatch = (0, _reactRedux.useDispatch)();
  var dismissToasts = toasts.length > 0;
  (0, _react.useEffect)(function () {
    if (dismissToasts) {
      dismissalTimer.current = window.setInterval(function () {
        return dispatch((0, _toasts.shiftToast)());
      }, TOAST_TIMEOUT * 1000);
    }
    return function () {
      window.clearInterval(dismissalTimer.current);
    };
  }, [dismissalTimer, dismissToasts, dispatch]);
  return /*#__PURE__*/_react.default.createElement(_ToastList.default, {
    toasts: toasts
  });
};
__signature__(ConnectedToastList, "useRef{dismissalTimer}\nuseSelector{}\nuseDispatch{dispatch}\nuseEffect{}", function () {
  return [_reactRedux.useSelector, _reactRedux.useDispatch];
});
__signature__(ConnectedToastList, "useRef{dismissalTimer}\nuseSelector{}\nuseDispatch{dispatch}\nuseEffect{}", function () {
  return [_reactRedux.useSelector, _reactRedux.useDispatch];
});
var _default = ConnectedToastList;
var _default2 = _default;
var _default3 = exports.default = _default2;
;
(function () {
  var reactHotLoader = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default : undefined;
  if (!reactHotLoader) {
    return;
  }
  reactHotLoader.register(TOAST_TIMEOUT, "TOAST_TIMEOUT", "/home/vsts/work/1/s/src/components/AppFrame/ConnectedToastList.js");
  reactHotLoader.register(selectToasts, "selectToasts", "/home/vsts/work/1/s/src/components/AppFrame/ConnectedToastList.js");
  reactHotLoader.register(ConnectedToastList, "ConnectedToastList", "/home/vsts/work/1/s/src/components/AppFrame/ConnectedToastList.js");
  reactHotLoader.register(_default, "default", "/home/vsts/work/1/s/src/components/AppFrame/ConnectedToastList.js");
})();
;
(function () {
  var leaveModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.leaveModule : undefined;
  leaveModule && leaveModule(module);
})();
;
(function () {
  var reactHotLoader = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default : undefined;
  if (!reactHotLoader) {
    return;
  }
  reactHotLoader.register(TOAST_TIMEOUT, "TOAST_TIMEOUT", "/home/vsts/work/1/s/src/components/AppFrame/ConnectedToastList.js");
  reactHotLoader.register(selectToasts, "selectToasts", "/home/vsts/work/1/s/src/components/AppFrame/ConnectedToastList.js");
  reactHotLoader.register(ConnectedToastList, "ConnectedToastList", "/home/vsts/work/1/s/src/components/AppFrame/ConnectedToastList.js");
  reactHotLoader.register(_default2, "default", "/home/vsts/work/1/s/src/components/AppFrame/ConnectedToastList.js");
})();
;
(function () {
  var leaveModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.leaveModule : undefined;
  leaveModule && leaveModule(module);
})();