(window["webpackJsonpCompassShellPlugin"] = window["webpackJsonpCompassShellPlugin"] || []).push([[2],{

/***/ 426:
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(398);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__);
// Imports

var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(false);
// Module
___CSS_LOADER_EXPORT___.push([module.i, ".CompassShellPlugin_compass-shell-module-compass-shell__3HHIT {\n  width: 100%;\n  background-color: #21313c;\n  display: flex;\n  flex-basis: auto;\n  position: relative;\n  flex-direction: column;\n  max-height: 95%;\n}\n.CompassShellPlugin_compass-shell-module-compass-shell-shell-container__21lyx {\n  flex-grow: 1;\n  display: none;\n  overflow: auto;\n  border-top: 1px solid #3d4f58;\n}\n.CompassShellPlugin_compass-shell-module-compass-shell-shell-container__21lyx *::-webkit-scrollbar-thumb {\n  background: rgba(180, 180, 180, 0.5);\n}\n.CompassShellPlugin_compass-shell-module-compass-shell-shell-container-visible__1Y2Dy {\n  display: flex;\n}\n", ""]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"compass-shell": "CompassShellPlugin_compass-shell-module-compass-shell__3HHIT",
	"compass-shell-shell-container": "CompassShellPlugin_compass-shell-module-compass-shell-shell-container__21lyx",
	"compass-shell-shell-container-visible": "CompassShellPlugin_compass-shell-module-compass-shell-shell-container-visible__1Y2Dy"
};
/* harmony default export */ __webpack_exports__["a"] = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ 427:
/***/ (function(module, exports, __webpack_require__) {

!function (t, n) {
   true ? module.exports = n(__webpack_require__(170), __webpack_require__(2)) : undefined;
}(window, function (t, n) {
  return function (t) {
    var n = {};

    function e(r) {
      if (n[r]) return n[r].exports;
      var o = n[r] = {
        i: r,
        l: !1,
        exports: {}
      };
      return t[r].call(o.exports, o, o.exports, e), o.l = !0, o.exports;
    }

    return e.m = t, e.c = n, e.d = function (t, n, r) {
      e.o(t, n) || Object.defineProperty(t, n, {
        enumerable: !0,
        get: r
      });
    }, e.r = function (t) {
      "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(t, Symbol.toStringTag, {
        value: "Module"
      }), Object.defineProperty(t, "__esModule", {
        value: !0
      });
    }, e.t = function (t, n) {
      if (1 & n && (t = e(t)), 8 & n) return t;
      if (4 & n && "object" == typeof t && t && t.__esModule) return t;
      var r = Object.create(null);
      if (e.r(r), Object.defineProperty(r, "default", {
        enumerable: !0,
        value: t
      }), 2 & n && "string" != typeof t) for (var o in t) e.d(r, o, function (n) {
        return t[n];
      }.bind(null, o));
      return r;
    }, e.n = function (t) {
      var n = t && t.__esModule ? function () {
        return t.default;
      } : function () {
        return t;
      };
      return e.d(n, "a", n), n;
    }, e.o = function (t, n) {
      return Object.prototype.hasOwnProperty.call(t, n);
    }, e.p = "./", e(e.s = 98);
  }([function (n, e) {
    n.exports = t;
  }, function (t, e) {
    t.exports = n;
  }, function (t, n) {
    var e = function (t) {
      return t && t.Math == Math && t;
    };

    t.exports = e("object" == typeof globalThis && globalThis) || e("object" == typeof window && window) || e("object" == typeof self && self) || e("object" == typeof global && global) || function () {
      return this;
    }() || Function("return this")();
  }, function (t, n) {
    t.exports = function (t) {
      return "object" == typeof t ? null !== t : "function" == typeof t;
    };
  }, function (t, n, e) {
    var r = e(2),
        o = e(40),
        i = e(5),
        u = e(43),
        c = e(39),
        a = e(56),
        f = o("wks"),
        s = r.Symbol,
        p = a ? s : s && s.withoutSetter || u;

    t.exports = function (t) {
      return i(f, t) && (c || "string" == typeof f[t]) || (c && i(s, t) ? f[t] = s[t] : f[t] = p("Symbol." + t)), f[t];
    };
  }, function (t, n, e) {
    var r = e(15),
        o = {}.hasOwnProperty;

    t.exports = Object.hasOwn || function (t, n) {
      return o.call(r(t), n);
    };
  }, function (t, n) {
    t.exports = function (t) {
      try {
        return !!t();
      } catch (t) {
        return !0;
      }
    };
  }, function (t, n, e) {
    var r = e(2),
        o = e(35).f,
        i = e(10),
        u = e(20),
        c = e(42),
        a = e(59),
        f = e(81);

    t.exports = function (t, n) {
      var e,
          s,
          p,
          l,
          y,
          v = t.target,
          d = t.global,
          b = t.stat;
      if (e = d ? r : b ? r[v] || c(v, {}) : (r[v] || {}).prototype) for (s in n) {
        if (l = n[s], p = t.noTargetGet ? (y = o(e, s)) && y.value : e[s], !f(d ? s : v + (b ? "." : "#") + s, t.forced) && void 0 !== p) {
          if (typeof l == typeof p) continue;
          a(l, p);
        }

        (t.sham || p && p.sham) && i(l, "sham", !0), u(e, s, l, t);
      }
    };
  }, function (t, n, e) {
    var r = e(6);
    t.exports = !r(function () {
      return 7 != Object.defineProperty({}, 1, {
        get: function () {
          return 7;
        }
      })[1];
    });
  }, function (t, n, e) {
    var r = e(8),
        o = e(57),
        i = e(11),
        u = e(38),
        c = Object.defineProperty;
    n.f = r ? c : function (t, n, e) {
      if (i(t), n = u(n), i(e), o) try {
        return c(t, n, e);
      } catch (t) {}
      if ("get" in e || "set" in e) throw TypeError("Accessors not supported");
      return "value" in e && (t[n] = e.value), t;
    };
  }, function (t, n, e) {
    var r = e(8),
        o = e(9),
        i = e(17);
    t.exports = r ? function (t, n, e) {
      return o.f(t, n, i(1, e));
    } : function (t, n, e) {
      return t[n] = e, t;
    };
  }, function (t, n, e) {
    var r = e(3);

    t.exports = function (t) {
      if (!r(t)) throw TypeError(String(t) + " is not an object");
      return t;
    };
  }, function (t, n, e) {
    var r = e(55),
        o = e(37);

    t.exports = function (t) {
      return r(o(t));
    };
  }, function (t, n, e) {
    var r = e(2),
        o = function (t) {
      return "function" == typeof t ? t : void 0;
    };

    t.exports = function (t, n) {
      return arguments.length < 2 ? o(r[t]) : r[t] && r[t][n];
    };
  }, function (t, n, e) {
    var r,
        o = e(11),
        i = e(83),
        u = e(47),
        c = e(23),
        a = e(84),
        f = e(44),
        s = e(22),
        p = s("IE_PROTO"),
        l = function () {},
        y = function (t) {
      return "<script>" + t + "<\/script>";
    },
        v = function (t) {
      t.write(y("")), t.close();
      var n = t.parentWindow.Object;
      return t = null, n;
    },
        d = function () {
      try {
        r = new ActiveXObject("htmlfile");
      } catch (t) {}

      var t, n;
      d = "undefined" != typeof document ? document.domain && r ? v(r) : ((n = f("iframe")).style.display = "none", a.appendChild(n), n.src = String("javascript:"), (t = n.contentWindow.document).open(), t.write(y("document.F=Object")), t.close(), t.F) : v(r);

      for (var e = u.length; e--;) delete d.prototype[u[e]];

      return d();
    };

    c[p] = !0, t.exports = Object.create || function (t, n) {
      var e;
      return null !== t ? (l.prototype = o(t), e = new l(), l.prototype = null, e[p] = t) : e = d(), void 0 === n ? e : i(e, n);
    };
  }, function (t, n, e) {
    var r = e(37);

    t.exports = function (t) {
      return Object(r(t));
    };
  }, function (t, n, e) {
    "use strict";

    var r = e(12),
        o = e(93),
        i = e(53),
        u = e(21),
        c = e(70),
        a = u.set,
        f = u.getterFor("Array Iterator");
    t.exports = c(Array, "Array", function (t, n) {
      a(this, {
        type: "Array Iterator",
        target: r(t),
        index: 0,
        kind: n
      });
    }, function () {
      var t = f(this),
          n = t.target,
          e = t.kind,
          r = t.index++;
      return !n || r >= n.length ? (t.target = void 0, {
        value: void 0,
        done: !0
      }) : "keys" == e ? {
        value: r,
        done: !1
      } : "values" == e ? {
        value: n[r],
        done: !1
      } : {
        value: [r, n[r]],
        done: !1
      };
    }, "values"), i.Arguments = i.Array, o("keys"), o("values"), o("entries");
  }, function (t, n) {
    t.exports = function (t, n) {
      return {
        enumerable: !(1 & t),
        configurable: !(2 & t),
        writable: !(4 & t),
        value: n
      };
    };
  }, function (t, n, e) {
    var r = e(13),
        o = e(56);
    t.exports = o ? function (t) {
      return "symbol" == typeof t;
    } : function (t) {
      var n = r("Symbol");
      return "function" == typeof n && Object(t) instanceof n;
    };
  }, function (t, n) {
    t.exports = !1;
  }, function (t, n, e) {
    var r = e(2),
        o = e(10),
        i = e(5),
        u = e(42),
        c = e(58),
        a = e(21),
        f = a.get,
        s = a.enforce,
        p = String(String).split("String");
    (t.exports = function (t, n, e, c) {
      var a,
          f = !!c && !!c.unsafe,
          l = !!c && !!c.enumerable,
          y = !!c && !!c.noTargetGet;
      "function" == typeof e && ("string" != typeof n || i(e, "name") || o(e, "name", n), (a = s(e)).source || (a.source = p.join("string" == typeof n ? n : ""))), t !== r ? (f ? !y && t[n] && (l = !0) : delete t[n], l ? t[n] = e : o(t, n, e)) : l ? t[n] = e : u(n, e);
    })(Function.prototype, "toString", function () {
      return "function" == typeof this && f(this).source || c(this);
    });
  }, function (t, n, e) {
    var r,
        o,
        i,
        u = e(77),
        c = e(2),
        a = e(3),
        f = e(10),
        s = e(5),
        p = e(41),
        l = e(22),
        y = e(23),
        v = c.WeakMap;

    if (u || p.state) {
      var d = p.state || (p.state = new v()),
          b = d.get,
          h = d.has,
          m = d.set;
      r = function (t, n) {
        if (h.call(d, t)) throw new TypeError("Object already initialized");
        return n.facade = t, m.call(d, t, n), n;
      }, o = function (t) {
        return b.call(d, t) || {};
      }, i = function (t) {
        return h.call(d, t);
      };
    } else {
      var g = l("state");
      y[g] = !0, r = function (t, n) {
        if (s(t, g)) throw new TypeError("Object already initialized");
        return n.facade = t, f(t, g, n), n;
      }, o = function (t) {
        return s(t, g) ? t[g] : {};
      }, i = function (t) {
        return s(t, g);
      };
    }

    t.exports = {
      set: r,
      get: o,
      has: i,
      enforce: function (t) {
        return i(t) ? o(t) : r(t, {});
      },
      getterFor: function (t) {
        return function (n) {
          var e;
          if (!a(n) || (e = o(n)).type !== t) throw TypeError("Incompatible receiver, " + t + " required");
          return e;
        };
      }
    };
  }, function (t, n, e) {
    var r = e(40),
        o = e(43),
        i = r("keys");

    t.exports = function (t) {
      return i[t] || (i[t] = o(t));
    };
  }, function (t, n) {
    t.exports = {};
  }, function (t, n, e) {
    e(7)({
      target: "Object",
      stat: !0
    }, {
      setPrototypeOf: e(64)
    });
  }, function (t, n, e) {
    var r = e(7),
        o = e(6),
        i = e(15),
        u = e(49),
        c = e(65);
    r({
      target: "Object",
      stat: !0,
      forced: o(function () {
        u(1);
      }),
      sham: !c
    }, {
      getPrototypeOf: function (t) {
        return u(i(t));
      }
    });
  }, function (t, n, e) {
    var r = e(7),
        o = e(13),
        i = e(48),
        u = e(11),
        c = e(3),
        a = e(14),
        f = e(63),
        s = e(6),
        p = o("Reflect", "construct"),
        l = s(function () {
      function t() {}

      return !(p(function () {}, [], t) instanceof t);
    }),
        y = !s(function () {
      p(function () {});
    }),
        v = l || y;
    r({
      target: "Reflect",
      stat: !0,
      forced: v,
      sham: v
    }, {
      construct: function (t, n) {
        i(t), u(n);
        var e = arguments.length < 3 ? t : i(arguments[2]);
        if (y && !l) return p(t, n, e);

        if (t == e) {
          switch (n.length) {
            case 0:
              return new t();

            case 1:
              return new t(n[0]);

            case 2:
              return new t(n[0], n[1]);

            case 3:
              return new t(n[0], n[1], n[2]);

            case 4:
              return new t(n[0], n[1], n[2], n[3]);
          }

          var r = [null];
          return r.push.apply(r, n), new (f.apply(t, r))();
        }

        var o = e.prototype,
            s = a(c(o) ? o : Object.prototype),
            v = Function.apply.call(t, s, n);
        return c(v) ? v : s;
      }
    });
  }, function (t, n, e) {
    e(7)({
      target: "Object",
      stat: !0,
      sham: !e(8)
    }, {
      create: e(14)
    });
  }, function (t, n, e) {
    var r = e(7),
        o = e(8);
    r({
      target: "Object",
      stat: !0,
      forced: !o,
      sham: !o
    }, {
      defineProperty: e(9).f
    });
  }, function (t, n, e) {
    "use strict";

    var r = e(7),
        o = e(2),
        i = e(13),
        u = e(19),
        c = e(8),
        a = e(39),
        f = e(6),
        s = e(5),
        p = e(67),
        l = e(3),
        y = e(18),
        v = e(11),
        d = e(15),
        b = e(12),
        h = e(38),
        m = e(50),
        g = e(17),
        O = e(14),
        S = e(66),
        x = e(45),
        w = e(85),
        j = e(62),
        T = e(35),
        P = e(9),
        _ = e(54),
        E = e(10),
        k = e(20),
        R = e(40),
        C = e(22),
        A = e(23),
        I = e(43),
        N = e(4),
        L = e(68),
        M = e(69),
        B = e(51),
        F = e(21),
        D = e(87).forEach,
        q = C("hidden"),
        G = N("toPrimitive"),
        H = F.set,
        V = F.getterFor("Symbol"),
        z = Object.prototype,
        U = o.Symbol,
        W = i("JSON", "stringify"),
        Y = T.f,
        J = P.f,
        $ = w.f,
        K = _.f,
        Q = R("symbols"),
        X = R("op-symbols"),
        Z = R("string-to-symbol-registry"),
        tt = R("symbol-to-string-registry"),
        nt = R("wks"),
        et = o.QObject,
        rt = !et || !et.prototype || !et.prototype.findChild,
        ot = c && f(function () {
      return 7 != O(J({}, "a", {
        get: function () {
          return J(this, "a", {
            value: 7
          }).a;
        }
      })).a;
    }) ? function (t, n, e) {
      var r = Y(z, n);
      r && delete z[n], J(t, n, e), r && t !== z && J(z, n, r);
    } : J,
        it = function (t, n) {
      var e = Q[t] = O(U.prototype);
      return H(e, {
        type: "Symbol",
        tag: t,
        description: n
      }), c || (e.description = n), e;
    },
        ut = function (t, n, e) {
      t === z && ut(X, n, e), v(t);
      var r = h(n);
      return v(e), s(Q, r) ? (e.enumerable ? (s(t, q) && t[q][r] && (t[q][r] = !1), e = O(e, {
        enumerable: g(0, !1)
      })) : (s(t, q) || J(t, q, g(1, {})), t[q][r] = !0), ot(t, r, e)) : J(t, r, e);
    },
        ct = function (t, n) {
      v(t);
      var e = b(n),
          r = S(e).concat(pt(e));
      return D(r, function (n) {
        c && !at.call(e, n) || ut(t, n, e[n]);
      }), t;
    },
        at = function (t) {
      var n = h(t),
          e = K.call(this, n);
      return !(this === z && s(Q, n) && !s(X, n)) && (!(e || !s(this, n) || !s(Q, n) || s(this, q) && this[q][n]) || e);
    },
        ft = function (t, n) {
      var e = b(t),
          r = h(n);

      if (e !== z || !s(Q, r) || s(X, r)) {
        var o = Y(e, r);
        return !o || !s(Q, r) || s(e, q) && e[q][r] || (o.enumerable = !0), o;
      }
    },
        st = function (t) {
      var n = $(b(t)),
          e = [];
      return D(n, function (t) {
        s(Q, t) || s(A, t) || e.push(t);
      }), e;
    },
        pt = function (t) {
      var n = t === z,
          e = $(n ? X : b(t)),
          r = [];
      return D(e, function (t) {
        !s(Q, t) || n && !s(z, t) || r.push(Q[t]);
      }), r;
    };

    (a || (k((U = function () {
      if (this instanceof U) throw TypeError("Symbol is not a constructor");

      var t = arguments.length && void 0 !== arguments[0] ? m(arguments[0]) : void 0,
          n = I(t),
          e = function (t) {
        this === z && e.call(X, t), s(this, q) && s(this[q], n) && (this[q][n] = !1), ot(this, n, g(1, t));
      };

      return c && rt && ot(z, n, {
        configurable: !0,
        set: e
      }), it(n, t);
    }).prototype, "toString", function () {
      return V(this).tag;
    }), k(U, "withoutSetter", function (t) {
      return it(I(t), t);
    }), _.f = at, P.f = ut, T.f = ft, x.f = w.f = st, j.f = pt, L.f = function (t) {
      return it(N(t), t);
    }, c && (J(U.prototype, "description", {
      configurable: !0,
      get: function () {
        return V(this).description;
      }
    }), u || k(z, "propertyIsEnumerable", at, {
      unsafe: !0
    }))), r({
      global: !0,
      wrap: !0,
      forced: !a,
      sham: !a
    }, {
      Symbol: U
    }), D(S(nt), function (t) {
      M(t);
    }), r({
      target: "Symbol",
      stat: !0,
      forced: !a
    }, {
      for: function (t) {
        var n = m(t);
        if (s(Z, n)) return Z[n];
        var e = U(n);
        return Z[n] = e, tt[e] = n, e;
      },
      keyFor: function (t) {
        if (!y(t)) throw TypeError(t + " is not a symbol");
        if (s(tt, t)) return tt[t];
      },
      useSetter: function () {
        rt = !0;
      },
      useSimple: function () {
        rt = !1;
      }
    }), r({
      target: "Object",
      stat: !0,
      forced: !a,
      sham: !c
    }, {
      create: function (t, n) {
        return void 0 === n ? O(t) : ct(O(t), n);
      },
      defineProperty: ut,
      defineProperties: ct,
      getOwnPropertyDescriptor: ft
    }), r({
      target: "Object",
      stat: !0,
      forced: !a
    }, {
      getOwnPropertyNames: st,
      getOwnPropertySymbols: pt
    }), r({
      target: "Object",
      stat: !0,
      forced: f(function () {
        j.f(1);
      })
    }, {
      getOwnPropertySymbols: function (t) {
        return j.f(d(t));
      }
    }), W) && r({
      target: "JSON",
      stat: !0,
      forced: !a || f(function () {
        var t = U();
        return "[null]" != W([t]) || "{}" != W({
          a: t
        }) || "{}" != W(Object(t));
      })
    }, {
      stringify: function (t, n, e) {
        for (var r, o = [t], i = 1; arguments.length > i;) o.push(arguments[i++]);

        if (r = n, (l(n) || void 0 !== t) && !y(t)) return p(n) || (n = function (t, n) {
          if ("function" == typeof r && (n = r.call(this, t, n)), !y(n)) return n;
        }), o[1] = n, W.apply(null, o);
      }
    });
    U.prototype[G] || E(U.prototype, G, U.prototype.valueOf), B(U, "Symbol"), A[q] = !0;
  }, function (t, n, e) {
    "use strict";

    var r = e(7),
        o = e(8),
        i = e(2),
        u = e(5),
        c = e(3),
        a = e(9).f,
        f = e(59),
        s = i.Symbol;

    if (o && "function" == typeof s && (!("description" in s.prototype) || void 0 !== s().description)) {
      var p = {},
          l = function () {
        var t = arguments.length < 1 || void 0 === arguments[0] ? void 0 : String(arguments[0]),
            n = this instanceof l ? new s(t) : void 0 === t ? s() : s(t);
        return "" === t && (p[n] = !0), n;
      };

      f(l, s);
      var y = l.prototype = s.prototype;
      y.constructor = l;
      var v = y.toString,
          d = "Symbol(test)" == String(s("test")),
          b = /^Symbol\((.*)\)[^)]+$/;
      a(y, "description", {
        configurable: !0,
        get: function () {
          var t = c(this) ? this.valueOf() : this,
              n = v.call(t);
          if (u(p, t)) return "";
          var e = d ? n.slice(7, -1) : n.replace(b, "$1");
          return "" === e ? void 0 : e;
        }
      }), r({
        global: !0,
        forced: !0
      }, {
        Symbol: l
      });
    }
  }, function (t, n, e) {
    var r = e(52),
        o = e(20),
        i = e(91);
    r || o(Object.prototype, "toString", i, {
      unsafe: !0
    });
  }, function (t, n, e) {
    e(69)("iterator");
  }, function (t, n, e) {
    "use strict";

    var r = e(95).charAt,
        o = e(50),
        i = e(21),
        u = e(70),
        c = i.set,
        a = i.getterFor("String Iterator");
    u(String, "String", function (t) {
      c(this, {
        type: "String Iterator",
        string: o(t),
        index: 0
      });
    }, function () {
      var t,
          n = a(this),
          e = n.string,
          o = n.index;
      return o >= e.length ? {
        value: void 0,
        done: !0
      } : (t = r(e, o), n.index += t.length, {
        value: t,
        done: !1
      });
    });
  }, function (t, n, e) {
    var r = e(2),
        o = e(96),
        i = e(97),
        u = e(16),
        c = e(10),
        a = e(4),
        f = a("iterator"),
        s = a("toStringTag"),
        p = u.values,
        l = function (t, n) {
      if (t) {
        if (t[f] !== p) try {
          c(t, f, p);
        } catch (n) {
          t[f] = p;
        }
        if (t[s] || c(t, s, n), o[n]) for (var e in u) if (t[e] !== u[e]) try {
          c(t, e, u[e]);
        } catch (n) {
          t[e] = u[e];
        }
      }
    };

    for (var y in o) l(r[y] && r[y].prototype, y);

    l(i, "DOMTokenList");
  }, function (t, n, e) {
    var r = e(8),
        o = e(54),
        i = e(17),
        u = e(12),
        c = e(38),
        a = e(5),
        f = e(57),
        s = Object.getOwnPropertyDescriptor;
    n.f = r ? s : function (t, n) {
      if (t = u(t), n = c(n), f) try {
        return s(t, n);
      } catch (t) {}
      if (a(t, n)) return i(!o.f.call(t, n), t[n]);
    };
  }, function (t, n) {
    var e = {}.toString;

    t.exports = function (t) {
      return e.call(t).slice(8, -1);
    };
  }, function (t, n) {
    t.exports = function (t) {
      if (null == t) throw TypeError("Can't call method on " + t);
      return t;
    };
  }, function (t, n, e) {
    var r = e(73),
        o = e(18);

    t.exports = function (t) {
      var n = r(t, "string");
      return o(n) ? n : String(n);
    };
  }, function (t, n, e) {
    var r = e(74),
        o = e(6);
    t.exports = !!Object.getOwnPropertySymbols && !o(function () {
      var t = Symbol();
      return !String(t) || !(Object(t) instanceof Symbol) || !Symbol.sham && r && r < 41;
    });
  }, function (t, n, e) {
    var r = e(19),
        o = e(41);
    (t.exports = function (t, n) {
      return o[t] || (o[t] = void 0 !== n ? n : {});
    })("versions", []).push({
      version: "3.17.3",
      mode: r ? "pure" : "global",
      copyright: "© 2021 Denis Pushkarev (zloirock.ru)"
    });
  }, function (t, n, e) {
    var r = e(2),
        o = e(42),
        i = r["__core-js_shared__"] || o("__core-js_shared__", {});
    t.exports = i;
  }, function (t, n, e) {
    var r = e(2);

    t.exports = function (t, n) {
      try {
        Object.defineProperty(r, t, {
          value: n,
          configurable: !0,
          writable: !0
        });
      } catch (e) {
        r[t] = n;
      }

      return n;
    };
  }, function (t, n) {
    var e = 0,
        r = Math.random();

    t.exports = function (t) {
      return "Symbol(" + String(void 0 === t ? "" : t) + ")_" + (++e + r).toString(36);
    };
  }, function (t, n, e) {
    var r = e(2),
        o = e(3),
        i = r.document,
        u = o(i) && o(i.createElement);

    t.exports = function (t) {
      return u ? i.createElement(t) : {};
    };
  }, function (t, n, e) {
    var r = e(60),
        o = e(47).concat("length", "prototype");

    n.f = Object.getOwnPropertyNames || function (t) {
      return r(t, o);
    };
  }, function (t, n) {
    var e = Math.ceil,
        r = Math.floor;

    t.exports = function (t) {
      return isNaN(t = +t) ? 0 : (t > 0 ? r : e)(t);
    };
  }, function (t, n) {
    t.exports = ["constructor", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable", "toLocaleString", "toString", "valueOf"];
  }, function (t, n) {
    t.exports = function (t) {
      if ("function" != typeof t) throw TypeError(String(t) + " is not a function");
      return t;
    };
  }, function (t, n, e) {
    var r = e(5),
        o = e(15),
        i = e(22),
        u = e(65),
        c = i("IE_PROTO"),
        a = Object.prototype;
    t.exports = u ? Object.getPrototypeOf : function (t) {
      return t = o(t), r(t, c) ? t[c] : "function" == typeof t.constructor && t instanceof t.constructor ? t.constructor.prototype : t instanceof Object ? a : null;
    };
  }, function (t, n, e) {
    var r = e(18);

    t.exports = function (t) {
      if (r(t)) throw TypeError("Cannot convert a Symbol value to a string");
      return String(t);
    };
  }, function (t, n, e) {
    var r = e(9).f,
        o = e(5),
        i = e(4)("toStringTag");

    t.exports = function (t, n, e) {
      t && !o(t = e ? t : t.prototype, i) && r(t, i, {
        configurable: !0,
        value: n
      });
    };
  }, function (t, n, e) {
    var r = {};
    r[e(4)("toStringTag")] = "z", t.exports = "[object z]" === String(r);
  }, function (t, n) {
    t.exports = {};
  }, function (t, n, e) {
    "use strict";

    var r = {}.propertyIsEnumerable,
        o = Object.getOwnPropertyDescriptor,
        i = o && !r.call({
      1: 2
    }, 1);
    n.f = i ? function (t) {
      var n = o(this, t);
      return !!n && n.enumerable;
    } : r;
  }, function (t, n, e) {
    var r = e(6),
        o = e(36),
        i = "".split;
    t.exports = r(function () {
      return !Object("z").propertyIsEnumerable(0);
    }) ? function (t) {
      return "String" == o(t) ? i.call(t, "") : Object(t);
    } : Object;
  }, function (t, n, e) {
    var r = e(39);
    t.exports = r && !Symbol.sham && "symbol" == typeof Symbol.iterator;
  }, function (t, n, e) {
    var r = e(8),
        o = e(6),
        i = e(44);
    t.exports = !r && !o(function () {
      return 7 != Object.defineProperty(i("div"), "a", {
        get: function () {
          return 7;
        }
      }).a;
    });
  }, function (t, n, e) {
    var r = e(41),
        o = Function.toString;
    "function" != typeof r.inspectSource && (r.inspectSource = function (t) {
      return o.call(t);
    }), t.exports = r.inspectSource;
  }, function (t, n, e) {
    var r = e(5),
        o = e(78),
        i = e(35),
        u = e(9);

    t.exports = function (t, n) {
      for (var e = o(n), c = u.f, a = i.f, f = 0; f < e.length; f++) {
        var s = e[f];
        r(t, s) || c(t, s, a(n, s));
      }
    };
  }, function (t, n, e) {
    var r = e(5),
        o = e(12),
        i = e(79).indexOf,
        u = e(23);

    t.exports = function (t, n) {
      var e,
          c = o(t),
          a = 0,
          f = [];

      for (e in c) !r(u, e) && r(c, e) && f.push(e);

      for (; n.length > a;) r(c, e = n[a++]) && (~i(f, e) || f.push(e));

      return f;
    };
  }, function (t, n, e) {
    var r = e(46),
        o = Math.min;

    t.exports = function (t) {
      return t > 0 ? o(r(t), 9007199254740991) : 0;
    };
  }, function (t, n) {
    n.f = Object.getOwnPropertySymbols;
  }, function (t, n, e) {
    "use strict";

    var r = e(48),
        o = e(3),
        i = [].slice,
        u = {},
        c = function (t, n, e) {
      if (!(n in u)) {
        for (var r = [], o = 0; o < n; o++) r[o] = "a[" + o + "]";

        u[n] = Function("C,a", "return new C(" + r.join(",") + ")");
      }

      return u[n](t, e);
    };

    t.exports = Function.bind || function (t) {
      var n = r(this),
          e = i.call(arguments, 1),
          u = function () {
        var r = e.concat(i.call(arguments));
        return this instanceof u ? c(n, r.length, r) : n.apply(t, r);
      };

      return o(n.prototype) && (u.prototype = n.prototype), u;
    };
  }, function (t, n, e) {
    var r = e(11),
        o = e(82);
    t.exports = Object.setPrototypeOf || ("__proto__" in {} ? function () {
      var t,
          n = !1,
          e = {};

      try {
        (t = Object.getOwnPropertyDescriptor(Object.prototype, "__proto__").set).call(e, []), n = e instanceof Array;
      } catch (t) {}

      return function (e, i) {
        return r(e), o(i), n ? t.call(e, i) : e.__proto__ = i, e;
      };
    }() : void 0);
  }, function (t, n, e) {
    var r = e(6);
    t.exports = !r(function () {
      function t() {}

      return t.prototype.constructor = null, Object.getPrototypeOf(new t()) !== t.prototype;
    });
  }, function (t, n, e) {
    var r = e(60),
        o = e(47);

    t.exports = Object.keys || function (t) {
      return r(t, o);
    };
  }, function (t, n, e) {
    var r = e(36);

    t.exports = Array.isArray || function (t) {
      return "Array" == r(t);
    };
  }, function (t, n, e) {
    var r = e(4);
    n.f = r;
  }, function (t, n, e) {
    var r = e(86),
        o = e(5),
        i = e(68),
        u = e(9).f;

    t.exports = function (t) {
      var n = r.Symbol || (r.Symbol = {});
      o(n, t) || u(n, t, {
        value: i.f(t)
      });
    };
  }, function (t, n, e) {
    "use strict";

    var r = e(7),
        o = e(94),
        i = e(49),
        u = e(64),
        c = e(51),
        a = e(10),
        f = e(20),
        s = e(4),
        p = e(19),
        l = e(53),
        y = e(71),
        v = y.IteratorPrototype,
        d = y.BUGGY_SAFARI_ITERATORS,
        b = s("iterator"),
        h = function () {
      return this;
    };

    t.exports = function (t, n, e, s, y, m, g) {
      o(e, n, s);

      var O,
          S,
          x,
          w = function (t) {
        if (t === y && E) return E;
        if (!d && t in P) return P[t];

        switch (t) {
          case "keys":
          case "values":
          case "entries":
            return function () {
              return new e(this, t);
            };
        }

        return function () {
          return new e(this);
        };
      },
          j = n + " Iterator",
          T = !1,
          P = t.prototype,
          _ = P[b] || P["@@iterator"] || y && P[y],
          E = !d && _ || w(y),
          k = "Array" == n && P.entries || _;

      if (k && (O = i(k.call(new t()))) !== Object.prototype && O.next && (p || i(O) === v || (u ? u(O, v) : "function" != typeof O[b] && a(O, b, h)), c(O, j, !0, !0), p && (l[j] = h)), "values" == y && _ && "values" !== _.name && (T = !0, E = function () {
        return _.call(this);
      }), p && !g || P[b] === E || a(P, b, E), l[n] = E, y) if (S = {
        values: w("values"),
        keys: m ? E : w("keys"),
        entries: w("entries")
      }, g) for (x in S) (d || T || !(x in P)) && f(P, x, S[x]);else r({
        target: n,
        proto: !0,
        forced: d || T
      }, S);
      return S;
    };
  }, function (t, n, e) {
    "use strict";

    var r,
        o,
        i,
        u = e(6),
        c = e(14),
        a = e(49),
        f = e(10),
        s = e(4),
        p = e(19),
        l = s("iterator"),
        y = !1;
    [].keys && ("next" in (i = [].keys()) ? (o = a(a(i))) !== Object.prototype && (r = o) : y = !0), null == r || u(function () {
      var t = {};
      return r[l].call(t) !== t;
    }) ? r = {} : p && (r = c(r)), "function" != typeof r[l] && f(r, l, function () {
      return this;
    }), t.exports = {
      IteratorPrototype: r,
      BUGGY_SAFARI_ITERATORS: y
    };
  }, function (t, n, e) {
    e(7)({
      target: "Function",
      proto: !0
    }, {
      bind: e(63)
    });
  }, function (t, n, e) {
    var r = e(3),
        o = e(18),
        i = e(76),
        u = e(4)("toPrimitive");

    t.exports = function (t, n) {
      if (!r(t) || o(t)) return t;
      var e,
          c = t[u];

      if (void 0 !== c) {
        if (void 0 === n && (n = "default"), e = c.call(t, n), !r(e) || o(e)) return e;
        throw TypeError("Can't convert object to primitive value");
      }

      return void 0 === n && (n = "number"), i(t, n);
    };
  }, function (t, n, e) {
    var r,
        o,
        i = e(2),
        u = e(75),
        c = i.process,
        a = i.Deno,
        f = c && c.versions || a && a.version,
        s = f && f.v8;
    s ? o = (r = s.split("."))[0] < 4 ? 1 : r[0] + r[1] : u && (!(r = u.match(/Edge\/(\d+)/)) || r[1] >= 74) && (r = u.match(/Chrome\/(\d+)/)) && (o = r[1]), t.exports = o && +o;
  }, function (t, n, e) {
    var r = e(13);
    t.exports = r("navigator", "userAgent") || "";
  }, function (t, n, e) {
    var r = e(3);

    t.exports = function (t, n) {
      var e, o;
      if ("string" === n && "function" == typeof (e = t.toString) && !r(o = e.call(t))) return o;
      if ("function" == typeof (e = t.valueOf) && !r(o = e.call(t))) return o;
      if ("string" !== n && "function" == typeof (e = t.toString) && !r(o = e.call(t))) return o;
      throw TypeError("Can't convert object to primitive value");
    };
  }, function (t, n, e) {
    var r = e(2),
        o = e(58),
        i = r.WeakMap;
    t.exports = "function" == typeof i && /native code/.test(o(i));
  }, function (t, n, e) {
    var r = e(13),
        o = e(45),
        i = e(62),
        u = e(11);

    t.exports = r("Reflect", "ownKeys") || function (t) {
      var n = o.f(u(t)),
          e = i.f;
      return e ? n.concat(e(t)) : n;
    };
  }, function (t, n, e) {
    var r = e(12),
        o = e(61),
        i = e(80),
        u = function (t) {
      return function (n, e, u) {
        var c,
            a = r(n),
            f = o(a.length),
            s = i(u, f);

        if (t && e != e) {
          for (; f > s;) if ((c = a[s++]) != c) return !0;
        } else for (; f > s; s++) if ((t || s in a) && a[s] === e) return t || s || 0;

        return !t && -1;
      };
    };

    t.exports = {
      includes: u(!0),
      indexOf: u(!1)
    };
  }, function (t, n, e) {
    var r = e(46),
        o = Math.max,
        i = Math.min;

    t.exports = function (t, n) {
      var e = r(t);
      return e < 0 ? o(e + n, 0) : i(e, n);
    };
  }, function (t, n, e) {
    var r = e(6),
        o = /#|\.prototype\./,
        i = function (t, n) {
      var e = c[u(t)];
      return e == f || e != a && ("function" == typeof n ? r(n) : !!n);
    },
        u = i.normalize = function (t) {
      return String(t).replace(o, ".").toLowerCase();
    },
        c = i.data = {},
        a = i.NATIVE = "N",
        f = i.POLYFILL = "P";

    t.exports = i;
  }, function (t, n, e) {
    var r = e(3);

    t.exports = function (t) {
      if (!r(t) && null !== t) throw TypeError("Can't set " + String(t) + " as a prototype");
      return t;
    };
  }, function (t, n, e) {
    var r = e(8),
        o = e(9),
        i = e(11),
        u = e(66);
    t.exports = r ? Object.defineProperties : function (t, n) {
      i(t);

      for (var e, r = u(n), c = r.length, a = 0; c > a;) o.f(t, e = r[a++], n[e]);

      return t;
    };
  }, function (t, n, e) {
    var r = e(13);
    t.exports = r("document", "documentElement");
  }, function (t, n, e) {
    var r = e(12),
        o = e(45).f,
        i = {}.toString,
        u = "object" == typeof window && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : [];

    t.exports.f = function (t) {
      return u && "[object Window]" == i.call(t) ? function (t) {
        try {
          return o(t);
        } catch (t) {
          return u.slice();
        }
      }(t) : o(r(t));
    };
  }, function (t, n, e) {
    var r = e(2);
    t.exports = r;
  }, function (t, n, e) {
    var r = e(88),
        o = e(55),
        i = e(15),
        u = e(61),
        c = e(89),
        a = [].push,
        f = function (t) {
      var n = 1 == t,
          e = 2 == t,
          f = 3 == t,
          s = 4 == t,
          p = 6 == t,
          l = 7 == t,
          y = 5 == t || p;
      return function (v, d, b, h) {
        for (var m, g, O = i(v), S = o(O), x = r(d, b, 3), w = u(S.length), j = 0, T = h || c, P = n ? T(v, w) : e || l ? T(v, 0) : void 0; w > j; j++) if ((y || j in S) && (g = x(m = S[j], j, O), t)) if (n) P[j] = g;else if (g) switch (t) {
          case 3:
            return !0;

          case 5:
            return m;

          case 6:
            return j;

          case 2:
            a.call(P, m);
        } else switch (t) {
          case 4:
            return !1;

          case 7:
            a.call(P, m);
        }

        return p ? -1 : f || s ? s : P;
      };
    };

    t.exports = {
      forEach: f(0),
      map: f(1),
      filter: f(2),
      some: f(3),
      every: f(4),
      find: f(5),
      findIndex: f(6),
      filterReject: f(7)
    };
  }, function (t, n, e) {
    var r = e(48);

    t.exports = function (t, n, e) {
      if (r(t), void 0 === n) return t;

      switch (e) {
        case 0:
          return function () {
            return t.call(n);
          };

        case 1:
          return function (e) {
            return t.call(n, e);
          };

        case 2:
          return function (e, r) {
            return t.call(n, e, r);
          };

        case 3:
          return function (e, r, o) {
            return t.call(n, e, r, o);
          };
      }

      return function () {
        return t.apply(n, arguments);
      };
    };
  }, function (t, n, e) {
    var r = e(90);

    t.exports = function (t, n) {
      return new (r(t))(0 === n ? 0 : n);
    };
  }, function (t, n, e) {
    var r = e(3),
        o = e(67),
        i = e(4)("species");

    t.exports = function (t) {
      var n;
      return o(t) && ("function" != typeof (n = t.constructor) || n !== Array && !o(n.prototype) ? r(n) && null === (n = n[i]) && (n = void 0) : n = void 0), void 0 === n ? Array : n;
    };
  }, function (t, n, e) {
    "use strict";

    var r = e(52),
        o = e(92);
    t.exports = r ? {}.toString : function () {
      return "[object " + o(this) + "]";
    };
  }, function (t, n, e) {
    var r = e(52),
        o = e(36),
        i = e(4)("toStringTag"),
        u = "Arguments" == o(function () {
      return arguments;
    }());
    t.exports = r ? o : function (t) {
      var n, e, r;
      return void 0 === t ? "Undefined" : null === t ? "Null" : "string" == typeof (e = function (t, n) {
        try {
          return t[n];
        } catch (t) {}
      }(n = Object(t), i)) ? e : u ? o(n) : "Object" == (r = o(n)) && "function" == typeof n.callee ? "Arguments" : r;
    };
  }, function (t, n, e) {
    var r = e(4),
        o = e(14),
        i = e(9),
        u = r("unscopables"),
        c = Array.prototype;
    null == c[u] && i.f(c, u, {
      configurable: !0,
      value: o(null)
    }), t.exports = function (t) {
      c[u][t] = !0;
    };
  }, function (t, n, e) {
    "use strict";

    var r = e(71).IteratorPrototype,
        o = e(14),
        i = e(17),
        u = e(51),
        c = e(53),
        a = function () {
      return this;
    };

    t.exports = function (t, n, e) {
      var f = n + " Iterator";
      return t.prototype = o(r, {
        next: i(1, e)
      }), u(t, f, !1, !0), c[f] = a, t;
    };
  }, function (t, n, e) {
    var r = e(46),
        o = e(50),
        i = e(37),
        u = function (t) {
      return function (n, e) {
        var u,
            c,
            a = o(i(n)),
            f = r(e),
            s = a.length;
        return f < 0 || f >= s ? t ? "" : void 0 : (u = a.charCodeAt(f)) < 55296 || u > 56319 || f + 1 === s || (c = a.charCodeAt(f + 1)) < 56320 || c > 57343 ? t ? a.charAt(f) : u : t ? a.slice(f, f + 2) : c - 56320 + (u - 55296 << 10) + 65536;
      };
    };

    t.exports = {
      codeAt: u(!1),
      charAt: u(!0)
    };
  }, function (t, n) {
    t.exports = {
      CSSRuleList: 0,
      CSSStyleDeclaration: 0,
      CSSValueList: 0,
      ClientRectList: 0,
      DOMRectList: 0,
      DOMStringList: 0,
      DOMTokenList: 1,
      DataTransferItemList: 0,
      FileList: 0,
      HTMLAllCollection: 0,
      HTMLCollection: 0,
      HTMLFormElement: 0,
      HTMLSelectElement: 0,
      MediaList: 0,
      MimeTypeArray: 0,
      NamedNodeMap: 0,
      NodeList: 1,
      PaintRequestList: 0,
      Plugin: 0,
      PluginArray: 0,
      SVGLengthList: 0,
      SVGNumberList: 0,
      SVGPathSegList: 0,
      SVGPointList: 0,
      SVGStringList: 0,
      SVGTransformList: 0,
      SourceBufferList: 0,
      StyleSheetList: 0,
      TextTrackCueList: 0,
      TextTrackList: 0,
      TouchList: 0
    };
  }, function (t, n, e) {
    var r = e(44)("span").classList,
        o = r && r.constructor && r.constructor.prototype;
    t.exports = o === Object.prototype ? void 0 : o;
  }, function (t, n, e) {
    "use strict";

    e.r(n), e.d(n, "AnimatedIconTextButton", function () {
      return v;
    }), e.d(n, "IconButton", function () {
      return w;
    }), e.d(n, "IconTextButton", function () {
      return A;
    }), e.d(n, "TextButton", function () {
      return G;
    });
    e(72), e(24), e(25), e(26), e(27), e(28), e(29), e(30), e(31), e(32), e(16), e(33), e(34);
    var r = e(1),
        o = e.n(r),
        i = e(0),
        u = e.n(i);

    function c(t) {
      return (c = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (t) {
        return typeof t;
      } : function (t) {
        return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
      })(t);
    }

    function a(t, n) {
      for (var e = 0; e < n.length; e++) {
        var r = n[e];
        r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r);
      }
    }

    function f(t, n) {
      return (f = Object.setPrototypeOf || function (t, n) {
        return t.__proto__ = n, t;
      })(t, n);
    }

    function s(t) {
      var n = function () {
        if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
        if (Reflect.construct.sham) return !1;
        if ("function" == typeof Proxy) return !0;

        try {
          return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})), !0;
        } catch (t) {
          return !1;
        }
      }();

      return function () {
        var e,
            r = l(t);

        if (n) {
          var o = l(this).constructor;
          e = Reflect.construct(r, arguments, o);
        } else e = r.apply(this, arguments);

        return p(this, e);
      };
    }

    function p(t, n) {
      if (n && ("object" === c(n) || "function" == typeof n)) return n;
      if (void 0 !== n) throw new TypeError("Derived constructors may only return object or undefined");
      return function (t) {
        if (void 0 === t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return t;
      }(t);
    }

    function l(t) {
      return (l = Object.setPrototypeOf ? Object.getPrototypeOf : function (t) {
        return t.__proto__ || Object.getPrototypeOf(t);
      })(t);
    }

    var y = function (t) {
      !function (t, n) {
        if ("function" != typeof n && null !== n) throw new TypeError("Super expression must either be null or a function");
        t.prototype = Object.create(n && n.prototype, {
          constructor: {
            value: t,
            writable: !0,
            configurable: !0
          }
        }), n && f(t, n);
      }(u, t);
      var n,
          e,
          r,
          i = s(u);

      function u(t) {
        var n;
        return function (t, n) {
          if (!(t instanceof n)) throw new TypeError("Cannot call a class as a function");
        }(this, u), (n = i.call(this, t)).state = {
          animating: !1
        }, n;
      }

      return n = u, (e = [{
        key: "componentDidMount",
        value: function () {
          this.unsubscribeStopAnimation = this.props.stopAnimationListenable.listen(this.handleStopAnimation.bind(this));
        }
      }, {
        key: "componentWillUnmount",
        value: function () {
          this.unsubscribeStopAnimation();
        }
      }, {
        key: "handleClick",
        value: function () {
          this.setState({
            animating: !0
          }), this.props.clickHandler();
        }
      }, {
        key: "handleStopAnimation",
        value: function () {
          this.setState({
            animating: !1
          });
        }
      }, {
        key: "renderIcon",
        value: function () {
          var t = this.state.animating ? this.props.animatingIconClassName : this.props.iconClassName;
          return o.a.createElement("i", {
            className: t,
            "aria-hidden": !0
          });
        }
      }, {
        key: "render",
        value: function () {
          return o.a.createElement("button", {
            type: "button",
            "data-test-id": this.props.dataTestId,
            className: this.props.className,
            onClick: this.handleClick.bind(this),
            disabled: this.props.disabled
          }, this.renderIcon(), this.props.text);
        }
      }]) && a(n.prototype, e), r && a(n, r), u;
    }(o.a.Component);

    y.displayName = "AnimatedIconTextButton", y.propTypes = {
      text: u.a.string,
      clickHandler: u.a.func.isRequired,
      className: u.a.string,
      iconClassName: u.a.string.isRequired,
      animatingIconClassName: u.a.string.isRequired,
      dataTestId: u.a.string,
      stopAnimationListenable: u.a.any.isRequired,
      disabled: u.a.bool
    };
    var v = y;

    function d(t) {
      return (d = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (t) {
        return typeof t;
      } : function (t) {
        return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
      })(t);
    }

    function b(t, n) {
      if (!(t instanceof n)) throw new TypeError("Cannot call a class as a function");
    }

    function h(t, n) {
      for (var e = 0; e < n.length; e++) {
        var r = n[e];
        r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r);
      }
    }

    function m(t, n) {
      return (m = Object.setPrototypeOf || function (t, n) {
        return t.__proto__ = n, t;
      })(t, n);
    }

    function g(t) {
      var n = function () {
        if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
        if (Reflect.construct.sham) return !1;
        if ("function" == typeof Proxy) return !0;

        try {
          return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})), !0;
        } catch (t) {
          return !1;
        }
      }();

      return function () {
        var e,
            r = S(t);

        if (n) {
          var o = S(this).constructor;
          e = Reflect.construct(r, arguments, o);
        } else e = r.apply(this, arguments);

        return O(this, e);
      };
    }

    function O(t, n) {
      if (n && ("object" === d(n) || "function" == typeof n)) return n;
      if (void 0 !== n) throw new TypeError("Derived constructors may only return object or undefined");
      return function (t) {
        if (void 0 === t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return t;
      }(t);
    }

    function S(t) {
      return (S = Object.setPrototypeOf ? Object.getPrototypeOf : function (t) {
        return t.__proto__ || Object.getPrototypeOf(t);
      })(t);
    }

    var x = function (t) {
      !function (t, n) {
        if ("function" != typeof n && null !== n) throw new TypeError("Super expression must either be null or a function");
        t.prototype = Object.create(n && n.prototype, {
          constructor: {
            value: t,
            writable: !0,
            configurable: !0
          }
        }), n && m(t, n);
      }(u, t);
      var n,
          e,
          r,
          i = g(u);

      function u() {
        return b(this, u), i.apply(this, arguments);
      }

      return n = u, (e = [{
        key: "shouldComponentUpdate",
        value: function () {
          return !1;
        }
      }, {
        key: "render",
        value: function () {
          return o.a.createElement("button", {
            type: "button",
            title: this.props.title,
            "data-test-id": this.props.dataTestId,
            className: this.props.className,
            onClick: this.props.clickHandler
          }, o.a.createElement("i", {
            className: this.props.iconClassName,
            "aria-hidden": !0
          }));
        }
      }]) && h(n.prototype, e), r && h(n, r), u;
    }(o.a.Component);

    x.displayName = "IconButton", x.propTypes = {
      title: u.a.string,
      clickHandler: u.a.func.isRequired,
      className: u.a.string,
      iconClassName: u.a.string.isRequired,
      dataTestId: u.a.string
    };
    var w = x;

    function j(t) {
      return (j = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (t) {
        return typeof t;
      } : function (t) {
        return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
      })(t);
    }

    function T(t, n) {
      if (!(t instanceof n)) throw new TypeError("Cannot call a class as a function");
    }

    function P(t, n) {
      for (var e = 0; e < n.length; e++) {
        var r = n[e];
        r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r);
      }
    }

    function _(t, n) {
      return (_ = Object.setPrototypeOf || function (t, n) {
        return t.__proto__ = n, t;
      })(t, n);
    }

    function E(t) {
      var n = function () {
        if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
        if (Reflect.construct.sham) return !1;
        if ("function" == typeof Proxy) return !0;

        try {
          return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})), !0;
        } catch (t) {
          return !1;
        }
      }();

      return function () {
        var e,
            r = R(t);

        if (n) {
          var o = R(this).constructor;
          e = Reflect.construct(r, arguments, o);
        } else e = r.apply(this, arguments);

        return k(this, e);
      };
    }

    function k(t, n) {
      if (n && ("object" === j(n) || "function" == typeof n)) return n;
      if (void 0 !== n) throw new TypeError("Derived constructors may only return object or undefined");
      return function (t) {
        if (void 0 === t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return t;
      }(t);
    }

    function R(t) {
      return (R = Object.setPrototypeOf ? Object.getPrototypeOf : function (t) {
        return t.__proto__ || Object.getPrototypeOf(t);
      })(t);
    }

    var C = function (t) {
      !function (t, n) {
        if ("function" != typeof n && null !== n) throw new TypeError("Super expression must either be null or a function");
        t.prototype = Object.create(n && n.prototype, {
          constructor: {
            value: t,
            writable: !0,
            configurable: !0
          }
        }), n && _(t, n);
      }(u, t);
      var n,
          e,
          r,
          i = E(u);

      function u() {
        return T(this, u), i.apply(this, arguments);
      }

      return n = u, (e = [{
        key: "shouldComponentUpdate",
        value: function () {
          return !1;
        }
      }, {
        key: "render",
        value: function () {
          return o.a.createElement("button", {
            type: "button",
            "data-test-id": this.props.dataTestId,
            className: this.props.className,
            onClick: this.props.clickHandler
          }, o.a.createElement("i", {
            className: this.props.iconClassName,
            "aria-hidden": !0
          }), this.props.text);
        }
      }]) && P(n.prototype, e), r && P(n, r), u;
    }(o.a.Component);

    C.displayName = "IconTextButton", C.propTypes = {
      text: u.a.string,
      clickHandler: u.a.func.isRequired,
      className: u.a.string,
      iconClassName: u.a.string.isRequired,
      dataTestId: u.a.string
    };
    var A = C;

    function I(t) {
      return (I = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (t) {
        return typeof t;
      } : function (t) {
        return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
      })(t);
    }

    function N(t, n) {
      if (!(t instanceof n)) throw new TypeError("Cannot call a class as a function");
    }

    function L(t, n) {
      for (var e = 0; e < n.length; e++) {
        var r = n[e];
        r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(t, r.key, r);
      }
    }

    function M(t, n) {
      return (M = Object.setPrototypeOf || function (t, n) {
        return t.__proto__ = n, t;
      })(t, n);
    }

    function B(t) {
      var n = function () {
        if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
        if (Reflect.construct.sham) return !1;
        if ("function" == typeof Proxy) return !0;

        try {
          return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})), !0;
        } catch (t) {
          return !1;
        }
      }();

      return function () {
        var e,
            r = D(t);

        if (n) {
          var o = D(this).constructor;
          e = Reflect.construct(r, arguments, o);
        } else e = r.apply(this, arguments);

        return F(this, e);
      };
    }

    function F(t, n) {
      if (n && ("object" === I(n) || "function" == typeof n)) return n;
      if (void 0 !== n) throw new TypeError("Derived constructors may only return object or undefined");
      return function (t) {
        if (void 0 === t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
        return t;
      }(t);
    }

    function D(t) {
      return (D = Object.setPrototypeOf ? Object.getPrototypeOf : function (t) {
        return t.__proto__ || Object.getPrototypeOf(t);
      })(t);
    }

    var q = function (t) {
      !function (t, n) {
        if ("function" != typeof n && null !== n) throw new TypeError("Super expression must either be null or a function");
        t.prototype = Object.create(n && n.prototype, {
          constructor: {
            value: t,
            writable: !0,
            configurable: !0
          }
        }), n && M(t, n);
      }(u, t);
      var n,
          e,
          r,
          i = B(u);

      function u() {
        return N(this, u), i.apply(this, arguments);
      }

      return n = u, (e = [{
        key: "render",
        value: function () {
          return o.a.createElement("button", {
            id: this.props.id,
            className: this.props.className,
            "data-test-id": this.props.dataTestId,
            title: this.props.title,
            type: "button",
            disabled: this.props.disabled,
            style: this.props.style,
            onClick: this.props.clickHandler
          }, this.props.text);
        }
      }]) && L(n.prototype, e), r && L(n, r), u;
    }(o.a.Component);

    q.displayName = "TextButton", q.propTypes = {
      text: u.a.string.isRequired,
      title: u.a.string,
      clickHandler: u.a.func.isRequired,
      className: u.a.string,
      dataTestId: u.a.string,
      disabled: u.a.bool,
      id: u.a.string,
      style: u.a.object
    };
    var G = q;
  }]);
});

/***/ }),

/***/ 428:
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(398);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__);
// Imports

var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(false);
// Module
___CSS_LOADER_EXPORT___.push([module.i, ".CompassShellPlugin_info-modal-module-info-modal-banner__15KrH {\n  color: #1a567e;\n  border-color: #c5e4f2;\n  background-color: #e1f2f6;\n  padding: 9px 12px 9px 20px;\n  border-width: 1px;\n  border-style: solid;\n  border-radius: 6px;\n  font-size: 14px;\n}\n.CompassShellPlugin_info-modal-module-info-modal-banner-link___NgHS {\n  font-weight: bold;\n  text-decoration: underline;\n}\n.CompassShellPlugin_info-modal-module-info-modal-shortcuts-title__3daCa {\n  font-weight: bold;\n  padding: 14px 0;\n}\n.CompassShellPlugin_info-modal-module-info-modal-shortcuts__2jJgb .CompassShellPlugin_info-modal-module-info-modal-shortcuts-hotkey__3MLCI {\n  padding: 3px 0;\n}\n.CompassShellPlugin_info-modal-module-info-modal-shortcuts__2jJgb .CompassShellPlugin_info-modal-module-info-modal-shortcuts-hotkey__3MLCI:nth-child(odd) {\n  background-color: #e7eeec;\n}\n.CompassShellPlugin_info-modal-module-info-modal-shortcuts__2jJgb .CompassShellPlugin_info-modal-module-info-modal-shortcuts-hotkey-key__p8XDj {\n  font-weight: bold;\n  padding-left: 14px;\n  padding-right: 10px;\n}\n", ""]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"info-modal-banner": "CompassShellPlugin_info-modal-module-info-modal-banner__15KrH",
	"info-modal-banner-link": "CompassShellPlugin_info-modal-module-info-modal-banner-link___NgHS",
	"info-modal-shortcuts-title": "CompassShellPlugin_info-modal-module-info-modal-shortcuts-title__3daCa",
	"info-modal-shortcuts": "CompassShellPlugin_info-modal-module-info-modal-shortcuts__2jJgb",
	"info-modal-shortcuts-hotkey": "CompassShellPlugin_info-modal-module-info-modal-shortcuts-hotkey__3MLCI",
	"info-modal-shortcuts-hotkey-key": "CompassShellPlugin_info-modal-module-info-modal-shortcuts-hotkey-key__p8XDj"
};
/* harmony default export */ __webpack_exports__["a"] = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ 496:
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(398);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__);
// Imports

var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default()(false);
// Module
___CSS_LOADER_EXPORT___.push([module.i, ".CompassShellPlugin_shell-header-module-compass-shell-header__15C8_ {\n  width: 100%;\n  height: 32px;\n  display: flex;\n  color: #b8c4c2;\n}\n.CompassShellPlugin_shell-header-module-compass-shell-header-left___3yX6 {\n  flex-grow: 1;\n  display: flex;\n  align-items: center;\n}\n.CompassShellPlugin_shell-header-module-compass-shell-header-right-actions__1IsOP {\n  display: flex;\n  padding-top: 2px;\n  padding-right: 4px;\n}\n.CompassShellPlugin_shell-header-module-compass-shell-header-toggle__1nsjY {\n  background: none;\n  border: none;\n  cursor: pointer;\n  padding: 0px 8px;\n  height: 100%;\n  display: flex;\n  vertical-align: middle;\n  flex-direction: row;\n  align-items: center;\n  margin: auto 0;\n  font-weight: bold;\n  font-size: 12px;\n  line-height: 32px;\n  transition: all 200ms;\n  user-select: none;\n  text-transform: uppercase;\n}\n.CompassShellPlugin_shell-header-module-compass-shell-header-toggle__1nsjY:hover {\n  color: #f9fbfa;\n}\n.CompassShellPlugin_shell-header-module-compass-shell-header-operation-in-progress__1MuCv {\n  color: #c3e7ca;\n}\n.CompassShellPlugin_shell-header-module-compass-shell-header-loader-icon__BraQe {\n  margin: 8px 8px 8px 16px;\n}\n.CompassShellPlugin_shell-header-module-compass-shell-header-btn__1ucbe:not(:last-child) {\n  margin-right: 4px;\n}\n", ""]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"compass-shell-header": "CompassShellPlugin_shell-header-module-compass-shell-header__15C8_",
	"compass-shell-header-left": "CompassShellPlugin_shell-header-module-compass-shell-header-left___3yX6",
	"compass-shell-header-right-actions": "CompassShellPlugin_shell-header-module-compass-shell-header-right-actions__1IsOP",
	"compass-shell-header-toggle": "CompassShellPlugin_shell-header-module-compass-shell-header-toggle__1nsjY",
	"compass-shell-header-operation-in-progress": "CompassShellPlugin_shell-header-module-compass-shell-header-operation-in-progress__1MuCv",
	"compass-shell-header-loader-icon": "CompassShellPlugin_shell-header-module-compass-shell-header-loader-icon__BraQe",
	"compass-shell-header-btn": "CompassShellPlugin_shell-header-module-compass-shell-header-btn__1ucbe"
};
/* harmony default export */ __webpack_exports__["a"] = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ 499:
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// EXPORTS
__webpack_require__.d(__webpack_exports__, "CompassShell", function() { return /* reexport */ compass_shell_CompassShell; });

// EXTERNAL MODULE: external "react"
var external_react_ = __webpack_require__(2);
var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);

// EXTERNAL MODULE: /Users/rhys/Documents/mongodb/compass/node_modules/classnames/index.js
var classnames = __webpack_require__(384);
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);

// EXTERNAL MODULE: /Users/rhys/Documents/mongodb/compass/node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js
var injectStylesIntoStyleTag = __webpack_require__(397);
var injectStylesIntoStyleTag_default = /*#__PURE__*/__webpack_require__.n(injectStylesIntoStyleTag);

// EXTERNAL MODULE: /Users/rhys/Documents/mongodb/compass/node_modules/css-loader/dist/cjs.js??ref--5-1!/Users/rhys/Documents/mongodb/compass/node_modules/postcss-loader/lib??ref--5-2!/Users/rhys/Documents/mongodb/compass/node_modules/less-loader/dist/cjs.js??ref--5-3!./src/components/compass-shell/compass-shell.module.less
var compass_shell_module = __webpack_require__(426);

// CONCATENATED MODULE: ./src/components/compass-shell/compass-shell.module.less

            

var options = {};

options.insert = "head";
options.singleton = false;

var update = injectStylesIntoStyleTag_default()(compass_shell_module["a" /* default */], options);



/* harmony default export */ var compass_shell_compass_shell_module = (compass_shell_module["a" /* default */].locals || {});
// EXTERNAL MODULE: external "prop-types"
var external_prop_types_ = __webpack_require__(170);
var external_prop_types_default = /*#__PURE__*/__webpack_require__.n(external_prop_types_);

// EXTERNAL MODULE: ./node_modules/react-redux/es/index.js + 25 modules
var es = __webpack_require__(167);

// EXTERNAL MODULE: /Users/rhys/Documents/mongodb/compass/node_modules/@mongosh/browser-repl/lib/mongosh-browser-repl.js
var mongosh_browser_repl = __webpack_require__(406);

// EXTERNAL MODULE: external "@mongodb-js/compass-components"
var compass_components_ = __webpack_require__(380);

// EXTERNAL MODULE: ../hadron-react-buttons/lib/index.js
var lib = __webpack_require__(427);

// EXTERNAL MODULE: /Users/rhys/Documents/mongodb/compass/node_modules/react-bootstrap/es/Modal.js + 16 modules
var Modal = __webpack_require__(498);

// EXTERNAL MODULE: ../compass-logging/dist/index.js
var dist = __webpack_require__(166);

// EXTERNAL MODULE: ./package.json
var package_0 = __webpack_require__(58);

// EXTERNAL MODULE: /Users/rhys/Documents/mongodb/compass/node_modules/css-loader/dist/cjs.js??ref--5-1!/Users/rhys/Documents/mongodb/compass/node_modules/postcss-loader/lib??ref--5-2!/Users/rhys/Documents/mongodb/compass/node_modules/less-loader/dist/cjs.js??ref--5-3!./src/components/info-modal/info-modal.module.less
var info_modal_module = __webpack_require__(428);

// CONCATENATED MODULE: ./src/components/info-modal/info-modal.module.less

            

var info_modal_module_options = {};

info_modal_module_options.insert = "head";
info_modal_module_options.singleton = false;

var info_modal_module_update = injectStylesIntoStyleTag_default()(info_modal_module["a" /* default */], info_modal_module_options);



/* harmony default export */ var info_modal_info_modal_module = (info_modal_module["a" /* default */].locals || {});
// CONCATENATED MODULE: ./src/components/info-modal/info-modal.jsx
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }






const {
  track
} = Object(dist["createLoggerAndTelemetry"])('COMPASS-IMPORT-EXPORT-UI');

const mongoshVersion = `v${package_0.dependencies['@mongosh/browser-repl'].replace('^', '')}`;

const hotkeys = [{
  key: 'Ctrl+`',
  description: 'Toggle shell.'
}, {
  key: 'Ctrl+A',
  description: 'Moves the cursor to the beginning of the line.'
}, {
  key: 'Ctrl+B',
  description: 'Moves the cursor Backward one character.'
}, {
  key: 'Ctrl+C',
  description: 'Stop currently running command.'
}, {
  key: 'Ctrl+D',
  description: 'Deletes the next character.'
}, {
  key: 'Ctrl+E',
  description: 'Moves the cursor to the end of the line.'
}, {
  key: 'Ctrl+F',
  description: 'Moves the cursor Forward one character.'
}, {
  key: 'Ctrl+H',
  description: 'Erases one character, similar to hitting backspace.'
}, {
  key: 'Ctrl/Cmd+L',
  description: 'Clears the screen, similar to the clear command.'
}, {
  key: 'Ctrl+T',
  description: 'Swap the last two characters before the cursor.'
}, {
  key: 'Ctrl+U',
  description: 'Changes the line to Uppercase.'
}];
/**
 * Show information on how to use the shell in compass.
 */

class info_modal_InfoModal extends external_react_["PureComponent"] {
  constructor(...args) {
    super(...args);

    _defineProperty(this, "showHandler", () => {
      track('Screen', {
        name: 'shell_info_modal'
      });
    });
  }

  /**
   * Render the component.
   *
   * @returns {React.Component} The component.
   */
  render() {
    const {
      hideInfoModal,
      show
    } = this.props;
    return /*#__PURE__*/external_react_default.a.createElement(Modal["a" /* default */], {
      restoreFocus: false,
      onEscapeKeyDown: hideInfoModal,
      show: show,
      onShow: this.showHandler
    }, /*#__PURE__*/external_react_default.a.createElement(Modal["a" /* default */].Header, {
      closeButton: true,
      onHide: hideInfoModal
    }, /*#__PURE__*/external_react_default.a.createElement("h4", null, "mongosh ", mongoshVersion)), /*#__PURE__*/external_react_default.a.createElement(Modal["a" /* default */].Body, null, /*#__PURE__*/external_react_default.a.createElement("div", {
      className: info_modal_info_modal_module['info-modal-banner']
    }, "More information on this release of the\xA0", /*#__PURE__*/external_react_default.a.createElement("a", {
      className: info_modal_info_modal_module['info-modal-banner-link'],
      id: "mongosh-info-link",
      rel: "noreopener",
      href: "https://docs.mongodb.com/compass/beta/embedded-shell/",
      target: "_blank"
    }, "MongoDB Shell")), /*#__PURE__*/external_react_default.a.createElement("div", {
      className: info_modal_info_modal_module['info-modal-shortcuts-title']
    }, "Keyboard Shortcuts"), /*#__PURE__*/external_react_default.a.createElement("div", {
      className: info_modal_info_modal_module['info-modal-shortcuts']
    }, hotkeys.map(shortcut => /*#__PURE__*/external_react_default.a.createElement("div", {
      className: info_modal_info_modal_module['info-modal-shortcuts-hotkey'],
      key: `short-cut-${shortcut.key}`
    }, /*#__PURE__*/external_react_default.a.createElement("span", {
      className: info_modal_info_modal_module['info-modal-shortcuts-hotkey-key']
    }, shortcut.key), shortcut.description)), /*#__PURE__*/external_react_default.a.createElement("div", {
      className: info_modal_info_modal_module['info-modal-shortcuts-hotkey']
    }, /*#__PURE__*/external_react_default.a.createElement("span", {
      className: info_modal_info_modal_module['info-modal-shortcuts-hotkey-key']
    }, "\u2191"), "Cycle backwards through command history."), /*#__PURE__*/external_react_default.a.createElement("div", {
      className: info_modal_info_modal_module['info-modal-shortcuts-hotkey']
    }, /*#__PURE__*/external_react_default.a.createElement("span", {
      className: info_modal_info_modal_module['info-modal-shortcuts-hotkey-key']
    }, "\u2193"), "Cycle forwards through command history."))), /*#__PURE__*/external_react_default.a.createElement(Modal["a" /* default */].Footer, null, /*#__PURE__*/external_react_default.a.createElement(lib["TextButton"], {
      id: "close-info-modal",
      className: "btn btn-default btn-sm",
      text: "Close",
      clickHandler: hideInfoModal
    })));
  }

}

_defineProperty(info_modal_InfoModal, "propTypes", {
  hideInfoModal: external_prop_types_default.a.func.isRequired,
  show: external_prop_types_default.a.bool.isRequired
});

/* harmony default export */ var info_modal = (info_modal_InfoModal);
// CONCATENATED MODULE: ./src/components/info-modal/index.js

/* harmony default export */ var components_info_modal = (info_modal);
// EXTERNAL MODULE: /Users/rhys/Documents/mongodb/compass/node_modules/css-loader/dist/cjs.js??ref--5-1!/Users/rhys/Documents/mongodb/compass/node_modules/postcss-loader/lib??ref--5-2!/Users/rhys/Documents/mongodb/compass/node_modules/less-loader/dist/cjs.js??ref--5-3!./src/components/shell-header/shell-header.module.less
var shell_header_module = __webpack_require__(496);

// CONCATENATED MODULE: ./src/components/shell-header/shell-header.module.less

            

var shell_header_module_options = {};

shell_header_module_options.insert = "head";
shell_header_module_options.singleton = false;

var shell_header_module_update = injectStylesIntoStyleTag_default()(shell_header_module["a" /* default */], shell_header_module_options);



/* harmony default export */ var shell_header_shell_header_module = (shell_header_module["a" /* default */].locals || {});
// CONCATENATED MODULE: ./src/components/shell-header/shell-header.jsx
function shell_header_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }







class shell_header_ShellHeader extends external_react_["Component"] {
  componentDidMount() {
    document.addEventListener('keydown', this.handleKeyboardToggle.bind(this));
  }

  componentWillUnmount() {
    document.removeEventListener('keydown', this.handleKeyboardToggle.bind(this));
  }

  handleKeyboardToggle({
    ctrlKey,
    key
  }) {
    if (ctrlKey && key === '`') {
      this.props.onShellToggleClicked();
    }
  }
  /**
   * Render ShellHeader component.
   *
   * @returns {React.Component} The rendered component.
   */


  render() {
    const {
      isExpanded,
      isOperationInProgress,
      onShellToggleClicked,
      showInfoModal
    } = this.props;
    return /*#__PURE__*/external_react_default.a.createElement("div", {
      className: shell_header_shell_header_module['compass-shell-header']
    }, /*#__PURE__*/external_react_default.a.createElement("div", {
      className: shell_header_shell_header_module['compass-shell-header-left']
    }, /*#__PURE__*/external_react_default.a.createElement("button", {
      "data-test-id": "shell-expand-button",
      className: shell_header_shell_header_module['compass-shell-header-toggle'],
      "aria-label": isExpanded ? 'Close Shell' : 'Open Shell',
      onClick: onShellToggleClicked,
      "aria-pressed": isExpanded
    }, ">_MONGOSH", !isExpanded && isOperationInProgress && /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, /*#__PURE__*/external_react_default.a.createElement(mongosh_browser_repl["ShellLoader"], {
      className: shell_header_shell_header_module['compass-shell-header-loader-icon'],
      size: "12px"
    }), /*#__PURE__*/external_react_default.a.createElement("span", {
      className: shell_header_shell_header_module['compass-shell-header-operation-in-progress']
    }, "Command in progress...")))), /*#__PURE__*/external_react_default.a.createElement("div", {
      className: shell_header_shell_header_module['compass-shell-header-right-actions']
    }, isExpanded && /*#__PURE__*/external_react_default.a.createElement(compass_components_["IconButton"], {
      className: shell_header_shell_header_module['compass-shell-header-btn'],
      variant: "dark",
      "aria-label": "Shell Info",
      "aria-haspopup": "dialog",
      onClick: showInfoModal
    }, /*#__PURE__*/external_react_default.a.createElement(compass_components_["Icon"], {
      glyph: "InfoWithCircle",
      size: "small"
    })), /*#__PURE__*/external_react_default.a.createElement(compass_components_["IconButton"], {
      className: shell_header_shell_header_module['compass-shell-header-btn'],
      variant: "dark",
      "aria-label": isExpanded ? 'Close Shell' : 'Open Shell',
      onClick: onShellToggleClicked,
      "aria-pressed": isExpanded
    }, /*#__PURE__*/external_react_default.a.createElement(compass_components_["Icon"], {
      glyph: isExpanded ? 'ChevronDown' : 'ChevronUp',
      size: "small"
    }))));
  }

}

shell_header_defineProperty(shell_header_ShellHeader, "propTypes", {
  isExpanded: external_prop_types_default.a.bool.isRequired,
  isOperationInProgress: external_prop_types_default.a.bool.isRequired,
  onShellToggleClicked: external_prop_types_default.a.func.isRequired,
  showInfoModal: external_prop_types_default.a.func.isRequired
});

/* harmony default export */ var shell_header = (shell_header_ShellHeader);
// CONCATENATED MODULE: ./src/components/shell-header/index.js

/* harmony default export */ var components_shell_header = (shell_header);

// CONCATENATED MODULE: ./src/components/compass-shell/compass-shell.jsx
function compass_shell_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }










const defaultShellHeightOpened = 240;
const shellHeightClosed = 32;
const shellMinHeightOpened = 100;

function getMaxShellHeight() {
  return Math.max(defaultShellHeightOpened, window.innerHeight - 100);
} // Apply bounds to the shell height when resizing to ensure it's always
// visible and usable to the user.


function boundShellHeight(attemptedHeight) {
  const maxHeight = getMaxShellHeight();
  return Math.min(maxHeight, Math.max(shellMinHeightOpened, attemptedHeight));
}

class compass_shell_CompassShell extends external_react_["Component"] {
  constructor(props) {
    super(props);

    compass_shell_defineProperty(this, "onShellOutputChanged", output => {
      this.shellOutput = output;
    });

    compass_shell_defineProperty(this, "onOperationStarted", () => {
      this.setState({
        isOperationInProgress: true
      });
    });

    compass_shell_defineProperty(this, "onOperationEnd", () => {
      this.setState({
        isOperationInProgress: false
      });
    });

    compass_shell_defineProperty(this, "terminateRuntime", () => {
      if (this.props.runtime) {
        this.props.runtime.terminate();
      }
    });

    compass_shell_defineProperty(this, "saveHistory", async history => {
      if (!this.props.historyStorage) {
        return;
      }

      try {
        await this.props.historyStorage.save(history);
      } catch (error) {
        // eslint-disable-next-line no-console
        console.error(error);
      }
    });

    compass_shell_defineProperty(this, "loadHistory", async () => {
      if (!this.props.historyStorage) {
        return;
      }

      try {
        const history = await this.props.historyStorage.load();
        this.setState({
          initialHistory: history
        });
      } catch (error) {
        // eslint-disable-next-line no-console
        console.error(error);
        this.setState({
          initialHistory: []
        });
      }
    });

    this.shellRef = /*#__PURE__*/external_react_default.a.createRef();
    this.shellOutput = this.props.shellOutput || [];
    this.state = {
      height: shellHeightClosed,
      prevHeight: defaultShellHeightOpened,
      initialHistory: this.props.historyStorage ? null : [],
      isOperationInProgress: false,
      showInfoModal: false
    };
  }

  componentDidMount() {
    this.loadHistory();
    window.addEventListener('beforeunload', this.terminateRuntime);
  }

  componentDidUpdate(prevProps, prevState) {
    const {
      height
    } = this.state;

    if (prevState.height < shellMinHeightOpened && height > shellMinHeightOpened) {
      this.props.emitShellPluginOpened();
    }
  }

  componentWillUnmount() {
    window.removeEventListener('beforeunload', this.terminateRuntime);
  }

  updateHeight(height) {
    this.setState(height > shellMinHeightOpened ? {
      height,
      // Store the previous height to use when toggling open/close
      // when we resize while the shell is expanded.
      prevHeight: height
    } : {
      height
    });
  }

  hideInfoModal() {
    this.setState({
      showInfoModal: false
    });

    if (this.shellRef.current) {
      this.shellRef.current.focusEditor();
    }
  }
  /**
   * Render CompassShell component.
   *
   * @returns {React.Component} The rendered component.
   */


  render() {
    const {
      height,
      prevHeight,
      isOperationInProgress,
      showInfoModal
    } = this.state;

    if (!this.props.runtime || !this.state.initialHistory) {
      return /*#__PURE__*/external_react_default.a.createElement("div", null);
    }

    const isExpanded = height > shellMinHeightOpened;
    const renderedHeight = isExpanded ? boundShellHeight(height) : shellHeightClosed;
    return /*#__PURE__*/external_react_default.a.createElement(external_react_["Fragment"], null, /*#__PURE__*/external_react_default.a.createElement(components_info_modal, {
      show: showInfoModal,
      hideInfoModal: this.hideInfoModal.bind(this)
    }), /*#__PURE__*/external_react_default.a.createElement("div", {
      "data-test-id": "shell-section",
      className: compass_shell_compass_shell_module['compass-shell'],
      style: {
        height: renderedHeight
      },
      id: "content"
    }, /*#__PURE__*/external_react_default.a.createElement(compass_components_["ResizeHandle"], {
      direction: compass_components_["ResizeDirection"].TOP,
      onChange: newHeight => this.updateHeight(newHeight),
      value: height,
      minValue: shellHeightClosed,
      maxValue: getMaxShellHeight(),
      title: "MongoDB Shell"
    }), /*#__PURE__*/external_react_default.a.createElement(components_shell_header, {
      isExpanded: isExpanded,
      onShellToggleClicked: () => isExpanded ? this.updateHeight(shellHeightClosed) : this.updateHeight(prevHeight),
      isOperationInProgress: isOperationInProgress,
      showInfoModal: () => this.setState({
        showInfoModal: true
      })
    }), /*#__PURE__*/external_react_default.a.createElement("div", {
      "data-test-id": "shell-content",
      className: classnames_default()(compass_shell_compass_shell_module['compass-shell-shell-container'], {
        [compass_shell_compass_shell_module['compass-shell-shell-container-visible']]: isExpanded
      })
    }, /*#__PURE__*/external_react_default.a.createElement(mongosh_browser_repl["Shell"], {
      ref: this.shellRef,
      runtime: this.props.runtime,
      initialHistory: this.state.initialHistory,
      initialOutput: this.shellOutput,
      onHistoryChanged: this.saveHistory,
      onOutputChanged: this.onShellOutputChanged,
      onOperationStarted: this.onOperationStarted,
      onOperationEnd: this.onOperationEnd
    }))));
  }

}

compass_shell_defineProperty(compass_shell_CompassShell, "propTypes", {
  emitShellPluginOpened: external_prop_types_default.a.func,
  runtime: external_prop_types_default.a.object,
  shellOutput: external_prop_types_default.a.array,
  historyStorage: external_prop_types_default.a.object
});

compass_shell_defineProperty(compass_shell_CompassShell, "defaultProps", {
  emitShellPluginOpened: () => {},
  runtime: null
});

/* harmony default export */ var compass_shell = (Object(es["b" /* connect */])(state => ({
  emitShellPluginOpened: () => {
    if (state.appRegistry && state.appRegistry.globalAppRegistry) {
      state.appRegistry.globalAppRegistry.emit('compass:compass-shell:opened');
    }
  },
  runtime: state.runtime ? state.runtime.runtime : null
}))(compass_shell_CompassShell));
// CONCATENATED MODULE: ./src/components/compass-shell/index.js

/* harmony default export */ var components_compass_shell = __webpack_exports__["default"] = (compass_shell);


/***/ })

}]);