var mf = Object.create;
var Go = Object.defineProperty;
var hf = Object.getOwnPropertyDescriptor;
var gf = Object.getOwnPropertyNames;
var yf = Object.getPrototypeOf, bf = Object.prototype.hasOwnProperty;
var a = (e, t) => Go(e, "name", { value: t, configurable: !0 }), mo = /* @__PURE__ */ ((e) => typeof require < "u" ? require : typeof Proxy <
"u" ? new Proxy(e, {
  get: (t, o) => (typeof require < "u" ? require : t)[o]
}) : e)(function(e) {
  if (typeof require < "u") return require.apply(this, arguments);
  throw Error('Dynamic require of "' + e + '" is not supported');
});
var we = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports), vf = (e, t) => {
  for (var o in t)
    Go(e, o, { get: t[o], enumerable: !0 });
}, xf = (e, t, o, i) => {
  if (t && typeof t == "object" || typeof t == "function")
    for (let r of gf(t))
      !bf.call(e, r) && r !== o && Go(e, r, { get: () => t[r], enumerable: !(i = hf(t, r)) || i.enumerable });
  return e;
};
var Ve = (e, t, o) => (o = e != null ? mf(yf(e)) : {}, xf(
  // If the importer is in node compatibility mode or this is not an ESM
  // file that has been converted to a CommonJS file using a Babel-
  // compatible transform (i.e. "__esModule" has not been set), then set
  // "default" to the CommonJS "module.exports" for node compatibility.
  t || !e || !e.__esModule ? Go(o, "default", { value: e, enumerable: !0 }) : o,
  e
));

// ../node_modules/prop-types/lib/ReactPropTypesSecret.js
var Qa = we((T_, Ya) => {
  "use strict";
  var py = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
  Ya.exports = py;
});

// ../node_modules/prop-types/factoryWithThrowingShims.js
var el = we((C_, Ja) => {
  "use strict";
  var dy = Qa();
  function Xa() {
  }
  a(Xa, "emptyFunction");
  function Za() {
  }
  a(Za, "emptyFunctionWithReset");
  Za.resetWarningCache = Xa;
  Ja.exports = function() {
    function e(i, r, n, l, u, c) {
      if (c !== dy) {
        var d = new Error(
          "Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. \
Read more at http://fb.me/use-check-prop-types"
        );
        throw d.name = "Invariant Violation", d;
      }
    }
    a(e, "shim"), e.isRequired = e;
    function t() {
      return e;
    }
    a(t, "getShim");
    var o = {
      array: e,
      bigint: e,
      bool: e,
      func: e,
      number: e,
      object: e,
      string: e,
      symbol: e,
      any: e,
      arrayOf: t,
      element: e,
      elementType: e,
      instanceOf: t,
      node: e,
      objectOf: t,
      oneOf: t,
      oneOfType: t,
      shape: t,
      exact: t,
      checkPropTypes: Za,
      resetWarningCache: Xa
    };
    return o.PropTypes = o, o;
  };
});

// ../node_modules/prop-types/index.js
var si = we((P_, tl) => {
  tl.exports = el()();
  var k_, O_;
});

// ../node_modules/react-fast-compare/index.js
var rl = we((A_, ol) => {
  var fy = typeof Element < "u", my = typeof Map == "function", hy = typeof Set == "function", gy = typeof ArrayBuffer == "function" && !!ArrayBuffer.
  isView;
  function fr(e, t) {
    if (e === t) return !0;
    if (e && t && typeof e == "object" && typeof t == "object") {
      if (e.constructor !== t.constructor) return !1;
      var o, i, r;
      if (Array.isArray(e)) {
        if (o = e.length, o != t.length) return !1;
        for (i = o; i-- !== 0; )
          if (!fr(e[i], t[i])) return !1;
        return !0;
      }
      var n;
      if (my && e instanceof Map && t instanceof Map) {
        if (e.size !== t.size) return !1;
        for (n = e.entries(); !(i = n.next()).done; )
          if (!t.has(i.value[0])) return !1;
        for (n = e.entries(); !(i = n.next()).done; )
          if (!fr(i.value[1], t.get(i.value[0]))) return !1;
        return !0;
      }
      if (hy && e instanceof Set && t instanceof Set) {
        if (e.size !== t.size) return !1;
        for (n = e.entries(); !(i = n.next()).done; )
          if (!t.has(i.value[0])) return !1;
        return !0;
      }
      if (gy && ArrayBuffer.isView(e) && ArrayBuffer.isView(t)) {
        if (o = e.length, o != t.length) return !1;
        for (i = o; i-- !== 0; )
          if (e[i] !== t[i]) return !1;
        return !0;
      }
      if (e.constructor === RegExp) return e.source === t.source && e.flags === t.flags;
      if (e.valueOf !== Object.prototype.valueOf && typeof e.valueOf == "function" && typeof t.valueOf == "function") return e.valueOf() ===
      t.valueOf();
      if (e.toString !== Object.prototype.toString && typeof e.toString == "function" && typeof t.toString == "function") return e.toString() ===
      t.toString();
      if (r = Object.keys(e), o = r.length, o !== Object.keys(t).length) return !1;
      for (i = o; i-- !== 0; )
        if (!Object.prototype.hasOwnProperty.call(t, r[i])) return !1;
      if (fy && e instanceof Element) return !1;
      for (i = o; i-- !== 0; )
        if (!((r[i] === "_owner" || r[i] === "__v" || r[i] === "__o") && e.$$typeof) && !fr(e[r[i]], t[r[i]]))
          return !1;
      return !0;
    }
    return e !== e && t !== t;
  }
  a(fr, "equal");
  ol.exports = /* @__PURE__ */ a(function(t, o) {
    try {
      return fr(t, o);
    } catch (i) {
      if ((i.message || "").match(/stack|recursion/i))
        return console.warn("react-fast-compare cannot handle circular refs"), !1;
      throw i;
    }
  }, "isEqual");
});

// ../node_modules/invariant/browser.js
var il = we((M_, nl) => {
  "use strict";
  var yy = /* @__PURE__ */ a(function(e, t, o, i, r, n, l, u) {
    if (!e) {
      var c;
      if (t === void 0)
        c = new Error(
          "Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings."
        );
      else {
        var d = [o, i, r, n, l, u], p = 0;
        c = new Error(
          t.replace(/%s/g, function() {
            return d[p++];
          })
        ), c.name = "Invariant Violation";
      }
      throw c.framesToPop = 1, c;
    }
  }, "invariant");
  nl.exports = yy;
});

// ../node_modules/shallowequal/index.js
var al = we((N_, sl) => {
  sl.exports = /* @__PURE__ */ a(function(t, o, i, r) {
    var n = i ? i.call(r, t, o) : void 0;
    if (n !== void 0)
      return !!n;
    if (t === o)
      return !0;
    if (typeof t != "object" || !t || typeof o != "object" || !o)
      return !1;
    var l = Object.keys(t), u = Object.keys(o);
    if (l.length !== u.length)
      return !1;
    for (var c = Object.prototype.hasOwnProperty.bind(o), d = 0; d < l.length; d++) {
      var p = l[d];
      if (!c(p))
        return !1;
      var f = t[p], h = o[p];
      if (n = i ? i.call(r, f, h, p) : void 0, n === !1 || n === void 0 && f !== h)
        return !1;
    }
    return !0;
  }, "shallowEqual");
});

// ../node_modules/memoizerific/memoizerific.js
var Di = we((Jl, Ai) => {
  (function(e) {
    if (typeof Jl == "object" && typeof Ai < "u")
      Ai.exports = e();
    else if (typeof define == "function" && define.amd)
      define([], e);
    else {
      var t;
      typeof window < "u" ? t = window : typeof global < "u" ? t = global : typeof self < "u" ? t = self : t = this, t.memoizerific = e();
    }
  })(function() {
    var e, t, o;
    return (/* @__PURE__ */ a(function i(r, n, l) {
      function u(p, f) {
        if (!n[p]) {
          if (!r[p]) {
            var h = typeof mo == "function" && mo;
            if (!f && h) return h(p, !0);
            if (c) return c(p, !0);
            var y = new Error("Cannot find module '" + p + "'");
            throw y.code = "MODULE_NOT_FOUND", y;
          }
          var m = n[p] = { exports: {} };
          r[p][0].call(m.exports, function(b) {
            var x = r[p][1][b];
            return u(x || b);
          }, m, m.exports, i, r, n, l);
        }
        return n[p].exports;
      }
      a(u, "s");
      for (var c = typeof mo == "function" && mo, d = 0; d < l.length; d++) u(l[d]);
      return u;
    }, "e"))({ 1: [function(i, r, n) {
      r.exports = function(l) {
        if (typeof Map != "function" || l) {
          var u = i("./similar");
          return new u();
        } else
          return /* @__PURE__ */ new Map();
      };
    }, { "./similar": 2 }], 2: [function(i, r, n) {
      function l() {
        return this.list = [], this.lastItem = void 0, this.size = 0, this;
      }
      a(l, "Similar"), l.prototype.get = function(u) {
        var c;
        if (this.lastItem && this.isEqual(this.lastItem.key, u))
          return this.lastItem.val;
        if (c = this.indexOf(u), c >= 0)
          return this.lastItem = this.list[c], this.list[c].val;
      }, l.prototype.set = function(u, c) {
        var d;
        return this.lastItem && this.isEqual(this.lastItem.key, u) ? (this.lastItem.val = c, this) : (d = this.indexOf(u), d >= 0 ? (this.lastItem =
        this.list[d], this.list[d].val = c, this) : (this.lastItem = { key: u, val: c }, this.list.push(this.lastItem), this.size++, this));
      }, l.prototype.delete = function(u) {
        var c;
        if (this.lastItem && this.isEqual(this.lastItem.key, u) && (this.lastItem = void 0), c = this.indexOf(u), c >= 0)
          return this.size--, this.list.splice(c, 1)[0];
      }, l.prototype.has = function(u) {
        var c;
        return this.lastItem && this.isEqual(this.lastItem.key, u) ? !0 : (c = this.indexOf(u), c >= 0 ? (this.lastItem = this.list[c], !0) :
        !1);
      }, l.prototype.forEach = function(u, c) {
        var d;
        for (d = 0; d < this.size; d++)
          u.call(c || this, this.list[d].val, this.list[d].key, this);
      }, l.prototype.indexOf = function(u) {
        var c;
        for (c = 0; c < this.size; c++)
          if (this.isEqual(this.list[c].key, u))
            return c;
        return -1;
      }, l.prototype.isEqual = function(u, c) {
        return u === c || u !== u && c !== c;
      }, r.exports = l;
    }, {}], 3: [function(i, r, n) {
      var l = i("map-or-similar");
      r.exports = function(p) {
        var f = new l(!1), h = [];
        return function(y) {
          var m = /* @__PURE__ */ a(function() {
            var b = f, x, E, g = arguments.length - 1, v = Array(g + 1), S = !0, w;
            if ((m.numArgs || m.numArgs === 0) && m.numArgs !== g + 1)
              throw new Error("Memoizerific functions should always be called with the same number of arguments");
            for (w = 0; w < g; w++) {
              if (v[w] = {
                cacheItem: b,
                arg: arguments[w]
              }, b.has(arguments[w])) {
                b = b.get(arguments[w]);
                continue;
              }
              S = !1, x = new l(!1), b.set(arguments[w], x), b = x;
            }
            return S && (b.has(arguments[g]) ? E = b.get(arguments[g]) : S = !1), S || (E = y.apply(null, arguments), b.set(arguments[g], E)),
            p > 0 && (v[g] = {
              cacheItem: b,
              arg: arguments[g]
            }, S ? u(h, v) : h.push(v), h.length > p && c(h.shift())), m.wasMemoized = S, m.numArgs = g + 1, E;
          }, "memoizerific");
          return m.limit = p, m.wasMemoized = !1, m.cache = f, m.lru = h, m;
        };
      };
      function u(p, f) {
        var h = p.length, y = f.length, m, b, x;
        for (b = 0; b < h; b++) {
          for (m = !0, x = 0; x < y; x++)
            if (!d(p[b][x].arg, f[x].arg)) {
              m = !1;
              break;
            }
          if (m)
            break;
        }
        p.push(p.splice(b, 1)[0]);
      }
      a(u, "moveToMostRecentLru");
      function c(p) {
        var f = p.length, h = p[f - 1], y, m;
        for (h.cacheItem.delete(h.arg), m = f - 2; m >= 0 && (h = p[m], y = h.cacheItem.get(h.arg), !y || !y.size); m--)
          h.cacheItem.delete(h.arg);
      }
      a(c, "removeCachedResult");
      function d(p, f) {
        return p === f || p !== p && f !== f;
      }
      a(d, "isEqual");
    }, { "map-or-similar": 1 }] }, {}, [3])(3);
  });
});

// ../node_modules/picoquery/lib/string-util.js
var Li = we((Mi) => {
  "use strict";
  Object.defineProperty(Mi, "__esModule", { value: !0 });
  Mi.encodeString = ov;
  var it = Array.from({ length: 256 }, (e, t) => "%" + ((t < 16 ? "0" : "") + t.toString(16)).toUpperCase()), tv = new Int8Array([
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    1,
    0,
    0,
    0,
    0,
    0,
    1,
    1,
    1,
    1,
    0,
    0,
    1,
    1,
    0,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    0,
    0,
    0,
    0,
    1,
    0,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    0,
    0,
    0,
    1,
    0
  ]);
  function ov(e) {
    let t = e.length;
    if (t === 0)
      return "";
    let o = "", i = 0, r = 0;
    e: for (; r < t; r++) {
      let n = e.charCodeAt(r);
      for (; n < 128; ) {
        if (tv[n] !== 1 && (i < r && (o += e.slice(i, r)), i = r + 1, o += it[n]), ++r === t)
          break e;
        n = e.charCodeAt(r);
      }
      if (i < r && (o += e.slice(i, r)), n < 2048) {
        i = r + 1, o += it[192 | n >> 6] + it[128 | n & 63];
        continue;
      }
      if (n < 55296 || n >= 57344) {
        i = r + 1, o += it[224 | n >> 12] + it[128 | n >> 6 & 63] + it[128 | n & 63];
        continue;
      }
      if (++r, r >= t)
        throw new Error("URI malformed");
      let l = e.charCodeAt(r) & 1023;
      i = r + 1, n = 65536 + ((n & 1023) << 10 | l), o += it[240 | n >> 18] + it[128 | n >> 12 & 63] + it[128 | n >> 6 & 63] + it[128 | n & 63];
    }
    return i === 0 ? e : i < t ? o + e.slice(i) : o;
  }
  a(ov, "encodeString");
});

// ../node_modules/picoquery/lib/shared.js
var _r = we((st) => {
  "use strict";
  Object.defineProperty(st, "__esModule", { value: !0 });
  st.defaultOptions = st.defaultShouldSerializeObject = st.defaultValueSerializer = void 0;
  var Ni = Li(), rv = /* @__PURE__ */ a((e) => {
    switch (typeof e) {
      case "string":
        return (0, Ni.encodeString)(e);
      case "bigint":
      case "boolean":
        return "" + e;
      case "number":
        if (Number.isFinite(e))
          return e < 1e21 ? "" + e : (0, Ni.encodeString)("" + e);
        break;
    }
    return e instanceof Date ? (0, Ni.encodeString)(e.toISOString()) : "";
  }, "defaultValueSerializer");
  st.defaultValueSerializer = rv;
  var nv = /* @__PURE__ */ a((e) => e instanceof Date, "defaultShouldSerializeObject");
  st.defaultShouldSerializeObject = nv;
  var tu = /* @__PURE__ */ a((e) => e, "identityFunc");
  st.defaultOptions = {
    nesting: !0,
    nestingSyntax: "dot",
    arrayRepeat: !1,
    arrayRepeatSyntax: "repeat",
    delimiter: 38,
    valueDeserializer: tu,
    valueSerializer: st.defaultValueSerializer,
    keyDeserializer: tu,
    shouldSerializeObject: st.defaultShouldSerializeObject
  };
});

// ../node_modules/picoquery/lib/object-util.js
var Fi = we((kr) => {
  "use strict";
  Object.defineProperty(kr, "__esModule", { value: !0 });
  kr.getDeepObject = av;
  kr.stringifyObject = ou;
  var Rt = _r(), iv = Li();
  function sv(e) {
    return e === "__proto__" || e === "constructor" || e === "prototype";
  }
  a(sv, "isPrototypeKey");
  function av(e, t, o, i, r) {
    if (sv(t))
      return e;
    let n = e[t];
    return typeof n == "object" && n !== null ? n : !i && (r || typeof o == "number" || typeof o == "string" && o * 0 === 0 && o.indexOf(".") ===
    -1) ? e[t] = [] : e[t] = {};
  }
  a(av, "getDeepObject");
  var lv = 20, uv = "[]", cv = "[", pv = "]", dv = ".";
  function ou(e, t, o = 0, i, r) {
    let { nestingSyntax: n = Rt.defaultOptions.nestingSyntax, arrayRepeat: l = Rt.defaultOptions.arrayRepeat, arrayRepeatSyntax: u = Rt.defaultOptions.
    arrayRepeatSyntax, nesting: c = Rt.defaultOptions.nesting, delimiter: d = Rt.defaultOptions.delimiter, valueSerializer: p = Rt.defaultOptions.
    valueSerializer, shouldSerializeObject: f = Rt.defaultOptions.shouldSerializeObject } = t, h = typeof d == "number" ? String.fromCharCode(
    d) : d, y = r === !0 && l, m = n === "dot" || n === "js" && !r;
    if (o > lv)
      return "";
    let b = "", x = !0, E = !1;
    for (let g in e) {
      let v = e[g], S;
      i ? (S = i, y ? u === "bracket" && (S += uv) : m ? (S += dv, S += g) : (S += cv, S += g, S += pv)) : S = g, x || (b += h), typeof v ==
      "object" && v !== null && !f(v) ? (E = v.pop !== void 0, (c || l && E) && (b += ou(v, t, o + 1, S, E))) : (b += (0, iv.encodeString)(S),
      b += "=", b += p(v, g)), x && (x = !1);
    }
    return b;
  }
  a(ou, "stringifyObject");
});

// ../node_modules/fast-decode-uri-component/index.js
var su = we((_A, iu) => {
  "use strict";
  var ru = 12, fv = 0, Ri = [
    // The first part of the table maps bytes to character to a transition.
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    1,
    2,
    2,
    2,
    2,
    2,
    2,
    2,
    2,
    2,
    2,
    2,
    2,
    2,
    2,
    2,
    2,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    3,
    4,
    4,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    5,
    6,
    7,
    7,
    7,
    7,
    7,
    7,
    7,
    7,
    7,
    7,
    7,
    7,
    8,
    7,
    7,
    10,
    9,
    9,
    9,
    11,
    4,
    4,
    4,
    4,
    4,
    4,
    4,
    4,
    4,
    4,
    4,
    // The second part of the table maps a state to a new state when adding a
    // transition.
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    12,
    0,
    0,
    0,
    0,
    24,
    36,
    48,
    60,
    72,
    84,
    96,
    0,
    12,
    12,
    12,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    24,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    24,
    24,
    24,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    24,
    24,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    48,
    48,
    48,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    48,
    48,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    48,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    0,
    // The third part maps the current transition to a mask that needs to apply
    // to the byte.
    127,
    63,
    63,
    63,
    0,
    31,
    15,
    15,
    15,
    7,
    7,
    7
  ];
  function mv(e) {
    var t = e.indexOf("%");
    if (t === -1) return e;
    for (var o = e.length, i = "", r = 0, n = 0, l = t, u = ru; t > -1 && t < o; ) {
      var c = nu(e[t + 1], 4), d = nu(e[t + 2], 0), p = c | d, f = Ri[p];
      if (u = Ri[256 + u + f], n = n << 6 | p & Ri[364 + f], u === ru)
        i += e.slice(r, l), i += n <= 65535 ? String.fromCharCode(n) : String.fromCharCode(
          55232 + (n >> 10),
          56320 + (n & 1023)
        ), n = 0, r = t + 3, t = l = e.indexOf("%", r);
      else {
        if (u === fv)
          return null;
        if (t += 3, t < o && e.charCodeAt(t) === 37) continue;
        return null;
      }
    }
    return i + e.slice(r);
  }
  a(mv, "decodeURIComponent");
  var hv = {
    0: 0,
    1: 1,
    2: 2,
    3: 3,
    4: 4,
    5: 5,
    6: 6,
    7: 7,
    8: 8,
    9: 9,
    a: 10,
    A: 10,
    b: 11,
    B: 11,
    c: 12,
    C: 12,
    d: 13,
    D: 13,
    e: 14,
    E: 14,
    f: 15,
    F: 15
  };
  function nu(e, t) {
    var o = hv[e];
    return o === void 0 ? 255 : o << t;
  }
  a(nu, "hexCodeToInt");
  iu.exports = mv;
});

// ../node_modules/picoquery/lib/parse.js
var cu = we((mt) => {
  "use strict";
  var gv = mt && mt.__importDefault || function(e) {
    return e && e.__esModule ? e : { default: e };
  };
  Object.defineProperty(mt, "__esModule", { value: !0 });
  mt.numberValueDeserializer = mt.numberKeyDeserializer = void 0;
  mt.parse = vv;
  var Or = Fi(), Bt = _r(), au = gv(su()), yv = /* @__PURE__ */ a((e) => {
    let t = Number(e);
    return Number.isNaN(t) ? e : t;
  }, "numberKeyDeserializer");
  mt.numberKeyDeserializer = yv;
  var bv = /* @__PURE__ */ a((e) => {
    let t = Number(e);
    return Number.isNaN(t) ? e : t;
  }, "numberValueDeserializer");
  mt.numberValueDeserializer = bv;
  var lu = /\+/g, uu = /* @__PURE__ */ a(function() {
  }, "Empty");
  uu.prototype = /* @__PURE__ */ Object.create(null);
  function Pr(e, t, o, i, r) {
    let n = e.substring(t, o);
    return i && (n = n.replace(lu, " ")), r && (n = (0, au.default)(n) || n), n;
  }
  a(Pr, "computeKeySlice");
  function vv(e, t) {
    let { valueDeserializer: o = Bt.defaultOptions.valueDeserializer, keyDeserializer: i = Bt.defaultOptions.keyDeserializer, arrayRepeatSyntax: r = Bt.
    defaultOptions.arrayRepeatSyntax, nesting: n = Bt.defaultOptions.nesting, arrayRepeat: l = Bt.defaultOptions.arrayRepeat, nestingSyntax: u = Bt.
    defaultOptions.nestingSyntax, delimiter: c = Bt.defaultOptions.delimiter } = t ?? {}, d = typeof c == "string" ? c.charCodeAt(0) : c, p = u ===
    "js", f = new uu();
    if (typeof e != "string")
      return f;
    let h = e.length, y = "", m = -1, b = -1, x = -1, E = f, g, v = "", S = "", w = !1, k = !1, _ = !1, C = !1, T = !1, O = !1, P = !1, D = 0,
    M = -1, F = -1, Z = -1;
    for (let V = 0; V < h + 1; V++) {
      if (D = V !== h ? e.charCodeAt(V) : d, D === d) {
        if (P = b > m, P || (b = V), x !== b - 1 && (S = Pr(e, x + 1, M > -1 ? M : b, _, w), v = i(S), g !== void 0 && (E = (0, Or.getDeepObject)(
        E, g, v, p && T, p && O))), P || v !== "") {
          P && (y = e.slice(b + 1, V), C && (y = y.replace(lu, " ")), k && (y = (0, au.default)(y) || y));
          let Q = o(y, v);
          if (l) {
            let z = E[v];
            z === void 0 ? M > -1 ? E[v] = [Q] : E[v] = Q : z.pop ? z.push(Q) : E[v] = [z, Q];
          } else
            E[v] = Q;
        }
        y = "", m = V, b = V, w = !1, k = !1, _ = !1, C = !1, T = !1, O = !1, M = -1, x = V, E = f, g = void 0, v = "";
      } else D === 93 ? (l && r === "bracket" && Z === 91 && (M = F), n && (u === "index" || p) && b <= m && (x !== F && (S = Pr(e, x + 1, V,
      _, w), v = i(S), g !== void 0 && (E = (0, Or.getDeepObject)(E, g, v, void 0, p)), g = v, _ = !1, w = !1), x = V, O = !0, T = !1)) : D ===
      46 ? n && (u === "dot" || p) && b <= m && (x !== F && (S = Pr(e, x + 1, V, _, w), v = i(S), g !== void 0 && (E = (0, Or.getDeepObject)(
      E, g, v, p)), g = v, _ = !1, w = !1), T = !0, O = !1, x = V) : D === 91 ? n && (u === "index" || p) && b <= m && (x !== F && (S = Pr(e,
      x + 1, V, _, w), v = i(S), p && g !== void 0 && (E = (0, Or.getDeepObject)(E, g, v, p)), g = v, _ = !1, w = !1, T = !1, O = !0), x = V) :
      D === 61 ? b <= m ? b = V : k = !0 : D === 43 ? b > m ? C = !0 : _ = !0 : D === 37 && (b > m ? k = !0 : w = !0);
      F = V, Z = D;
    }
    return f;
  }
  a(vv, "parse");
});

// ../node_modules/picoquery/lib/stringify.js
var pu = we((Bi) => {
  "use strict";
  Object.defineProperty(Bi, "__esModule", { value: !0 });
  Bi.stringify = Iv;
  var xv = Fi();
  function Iv(e, t) {
    if (e === null || typeof e != "object")
      return "";
    let o = t ?? {};
    return (0, xv.stringifyObject)(e, o);
  }
  a(Iv, "stringify");
});

// ../node_modules/picoquery/lib/main.js
var du = we((Xe) => {
  "use strict";
  var Sv = Xe && Xe.__createBinding || (Object.create ? function(e, t, o, i) {
    i === void 0 && (i = o);
    var r = Object.getOwnPropertyDescriptor(t, o);
    (!r || ("get" in r ? !t.__esModule : r.writable || r.configurable)) && (r = { enumerable: !0, get: /* @__PURE__ */ a(function() {
      return t[o];
    }, "get") }), Object.defineProperty(e, i, r);
  } : function(e, t, o, i) {
    i === void 0 && (i = o), e[i] = t[o];
  }), wv = Xe && Xe.__exportStar || function(e, t) {
    for (var o in e) o !== "default" && !Object.prototype.hasOwnProperty.call(t, o) && Sv(t, e, o);
  };
  Object.defineProperty(Xe, "__esModule", { value: !0 });
  Xe.stringify = Xe.parse = void 0;
  var Ev = cu();
  Object.defineProperty(Xe, "parse", { enumerable: !0, get: /* @__PURE__ */ a(function() {
    return Ev.parse;
  }, "get") });
  var Tv = pu();
  Object.defineProperty(Xe, "stringify", { enumerable: !0, get: /* @__PURE__ */ a(function() {
    return Tv.stringify;
  }, "get") });
  wv(_r(), Xe);
});

// ../node_modules/toggle-selection/index.js
var bu = we((XA, yu) => {
  yu.exports = function() {
    var e = document.getSelection();
    if (!e.rangeCount)
      return function() {
      };
    for (var t = document.activeElement, o = [], i = 0; i < e.rangeCount; i++)
      o.push(e.getRangeAt(i));
    switch (t.tagName.toUpperCase()) {
      // .toUpperCase handles XHTML
      case "INPUT":
      case "TEXTAREA":
        t.blur();
        break;
      default:
        t = null;
        break;
    }
    return e.removeAllRanges(), function() {
      e.type === "Caret" && e.removeAllRanges(), e.rangeCount || o.forEach(function(r) {
        e.addRange(r);
      }), t && t.focus();
    };
  };
});

// ../node_modules/copy-to-clipboard/index.js
var Iu = we((ZA, xu) => {
  "use strict";
  var Av = bu(), vu = {
    "text/plain": "Text",
    "text/html": "Url",
    default: "Text"
  }, Dv = "Copy to clipboard: #{key}, Enter";
  function Mv(e) {
    var t = (/mac os x/i.test(navigator.userAgent) ? "\u2318" : "Ctrl") + "+C";
    return e.replace(/#{\s*key\s*}/g, t);
  }
  a(Mv, "format");
  function Lv(e, t) {
    var o, i, r, n, l, u, c = !1;
    t || (t = {}), o = t.debug || !1;
    try {
      r = Av(), n = document.createRange(), l = document.getSelection(), u = document.createElement("span"), u.textContent = e, u.ariaHidden =
      "true", u.style.all = "unset", u.style.position = "fixed", u.style.top = 0, u.style.clip = "rect(0, 0, 0, 0)", u.style.whiteSpace = "p\
re", u.style.webkitUserSelect = "text", u.style.MozUserSelect = "text", u.style.msUserSelect = "text", u.style.userSelect = "text", u.addEventListener(
      "copy", function(p) {
        if (p.stopPropagation(), t.format)
          if (p.preventDefault(), typeof p.clipboardData > "u") {
            o && console.warn("unable to use e.clipboardData"), o && console.warn("trying IE specific stuff"), window.clipboardData.clearData();
            var f = vu[t.format] || vu.default;
            window.clipboardData.setData(f, e);
          } else
            p.clipboardData.clearData(), p.clipboardData.setData(t.format, e);
        t.onCopy && (p.preventDefault(), t.onCopy(p.clipboardData));
      }), document.body.appendChild(u), n.selectNodeContents(u), l.addRange(n);
      var d = document.execCommand("copy");
      if (!d)
        throw new Error("copy command was unsuccessful");
      c = !0;
    } catch (p) {
      o && console.error("unable to copy using execCommand: ", p), o && console.warn("trying IE specific stuff");
      try {
        window.clipboardData.setData(t.format || "text", e), t.onCopy && t.onCopy(window.clipboardData), c = !0;
      } catch (f) {
        o && console.error("unable to copy using clipboardData: ", f), o && console.error("falling back to prompt"), i = Mv("message" in t ?
        t.message : Dv), window.prompt(i, e);
      }
    } finally {
      l && (typeof l.removeRange == "function" ? l.removeRange(n) : l.removeAllRanges()), u && document.body.removeChild(u), r();
    }
    return c;
  }
  a(Lv, "copy");
  xu.exports = Lv;
});

// ../node_modules/downshift/node_modules/react-is/cjs/react-is.production.min.js
var Ep = we((pe) => {
  "use strict";
  var Zi = Symbol.for("react.element"), Ji = Symbol.for("react.portal"), Kr = Symbol.for("react.fragment"), $r = Symbol.for("react.strict_mo\
de"), Ur = Symbol.for("react.profiler"), Gr = Symbol.for("react.provider"), qr = Symbol.for("react.context"), Dx = Symbol.for("react.server_\
context"), Yr = Symbol.for("react.forward_ref"), Qr = Symbol.for("react.suspense"), Xr = Symbol.for("react.suspense_list"), Zr = Symbol.for(
  "react.memo"), Jr = Symbol.for("react.lazy"), Mx = Symbol.for("react.offscreen"), wp;
  wp = Symbol.for("react.module.reference");
  function Ue(e) {
    if (typeof e == "object" && e !== null) {
      var t = e.$$typeof;
      switch (t) {
        case Zi:
          switch (e = e.type, e) {
            case Kr:
            case Ur:
            case $r:
            case Qr:
            case Xr:
              return e;
            default:
              switch (e = e && e.$$typeof, e) {
                case Dx:
                case qr:
                case Yr:
                case Jr:
                case Zr:
                case Gr:
                  return e;
                default:
                  return t;
              }
          }
        case Ji:
          return t;
      }
    }
  }
  a(Ue, "v");
  pe.ContextConsumer = qr;
  pe.ContextProvider = Gr;
  pe.Element = Zi;
  pe.ForwardRef = Yr;
  pe.Fragment = Kr;
  pe.Lazy = Jr;
  pe.Memo = Zr;
  pe.Portal = Ji;
  pe.Profiler = Ur;
  pe.StrictMode = $r;
  pe.Suspense = Qr;
  pe.SuspenseList = Xr;
  pe.isAsyncMode = function() {
    return !1;
  };
  pe.isConcurrentMode = function() {
    return !1;
  };
  pe.isContextConsumer = function(e) {
    return Ue(e) === qr;
  };
  pe.isContextProvider = function(e) {
    return Ue(e) === Gr;
  };
  pe.isElement = function(e) {
    return typeof e == "object" && e !== null && e.$$typeof === Zi;
  };
  pe.isForwardRef = function(e) {
    return Ue(e) === Yr;
  };
  pe.isFragment = function(e) {
    return Ue(e) === Kr;
  };
  pe.isLazy = function(e) {
    return Ue(e) === Jr;
  };
  pe.isMemo = function(e) {
    return Ue(e) === Zr;
  };
  pe.isPortal = function(e) {
    return Ue(e) === Ji;
  };
  pe.isProfiler = function(e) {
    return Ue(e) === Ur;
  };
  pe.isStrictMode = function(e) {
    return Ue(e) === $r;
  };
  pe.isSuspense = function(e) {
    return Ue(e) === Qr;
  };
  pe.isSuspenseList = function(e) {
    return Ue(e) === Xr;
  };
  pe.isValidElementType = function(e) {
    return typeof e == "string" || typeof e == "function" || e === Kr || e === Ur || e === $r || e === Qr || e === Xr || e === Mx || typeof e ==
    "object" && e !== null && (e.$$typeof === Jr || e.$$typeof === Zr || e.$$typeof === Gr || e.$$typeof === qr || e.$$typeof === Yr || e.$$typeof ===
    wp || e.getModuleId !== void 0);
  };
  pe.typeOf = Ue;
});

// ../node_modules/downshift/node_modules/react-is/index.js
var Cp = we((AR, Tp) => {
  "use strict";
  Tp.exports = Ep();
});

// ../node_modules/fuse.js/dist/fuse.js
var Ld = we((jo, js) => {
  (function(e, t) {
    typeof jo == "object" && typeof js == "object" ? js.exports = t() : typeof define == "function" && define.amd ? define("Fuse", [], t) : typeof jo ==
    "object" ? jo.Fuse = t() : e.Fuse = t();
  })(jo, function() {
    return function(e) {
      var t = {};
      function o(i) {
        if (t[i]) return t[i].exports;
        var r = t[i] = { i, l: !1, exports: {} };
        return e[i].call(r.exports, r, r.exports, o), r.l = !0, r.exports;
      }
      return a(o, "r"), o.m = e, o.c = t, o.d = function(i, r, n) {
        o.o(i, r) || Object.defineProperty(i, r, { enumerable: !0, get: n });
      }, o.r = function(i) {
        typeof Symbol < "u" && Symbol.toStringTag && Object.defineProperty(i, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(
        i, "__esModule", { value: !0 });
      }, o.t = function(i, r) {
        if (1 & r && (i = o(i)), 8 & r || 4 & r && typeof i == "object" && i && i.__esModule) return i;
        var n = /* @__PURE__ */ Object.create(null);
        if (o.r(n), Object.defineProperty(n, "default", { enumerable: !0, value: i }), 2 & r && typeof i != "string") for (var l in i) o.d(n,
        l, function(u) {
          return i[u];
        }.bind(null, l));
        return n;
      }, o.n = function(i) {
        var r = i && i.__esModule ? function() {
          return i.default;
        } : function() {
          return i;
        };
        return o.d(r, "a", r), r;
      }, o.o = function(i, r) {
        return Object.prototype.hasOwnProperty.call(i, r);
      }, o.p = "", o(o.s = 0);
    }([function(e, t, o) {
      function i(p) {
        return (i = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(f) {
          return typeof f;
        } : function(f) {
          return f && typeof Symbol == "function" && f.constructor === Symbol && f !== Symbol.prototype ? "symbol" : typeof f;
        })(p);
      }
      a(i, "n");
      function r(p, f) {
        for (var h = 0; h < f.length; h++) {
          var y = f[h];
          y.enumerable = y.enumerable || !1, y.configurable = !0, "value" in y && (y.writable = !0), Object.defineProperty(p, y.key, y);
        }
      }
      a(r, "o");
      var n = o(1), l = o(7), u = l.get, c = (l.deepValue, l.isArray), d = function() {
        function p(m, b) {
          var x = b.location, E = x === void 0 ? 0 : x, g = b.distance, v = g === void 0 ? 100 : g, S = b.threshold, w = S === void 0 ? 0.6 :
          S, k = b.maxPatternLength, _ = k === void 0 ? 32 : k, C = b.caseSensitive, T = C !== void 0 && C, O = b.tokenSeparator, P = O === void 0 ?
          / +/g : O, D = b.findAllMatches, M = D !== void 0 && D, F = b.minMatchCharLength, Z = F === void 0 ? 1 : F, V = b.id, Q = V === void 0 ?
          null : V, z = b.keys, q = z === void 0 ? [] : z, W = b.shouldSort, re = W === void 0 || W, R = b.getFn, B = R === void 0 ? u : R, L = b.
          sortFn, $ = L === void 0 ? function(fe, Se) {
            return fe.score - Se.score;
          } : L, J = b.tokenize, ie = J !== void 0 && J, te = b.matchAllTokens, de = te !== void 0 && te, ae = b.includeMatches, ce = ae !==
          void 0 && ae, ue = b.includeScore, Ie = ue !== void 0 && ue, ye = b.verbose, Oe = ye !== void 0 && ye;
          (function(fe, Se) {
            if (!(fe instanceof Se)) throw new TypeError("Cannot call a class as a function");
          })(this, p), this.options = { location: E, distance: v, threshold: w, maxPatternLength: _, isCaseSensitive: T, tokenSeparator: P, findAllMatches: M,
          minMatchCharLength: Z, id: Q, keys: q, includeMatches: ce, includeScore: Ie, shouldSort: re, getFn: B, sortFn: $, verbose: Oe, tokenize: ie,
          matchAllTokens: de }, this.setCollection(m), this._processKeys(q);
        }
        a(p, "e");
        var f, h, y;
        return f = p, (h = [{ key: "setCollection", value: /* @__PURE__ */ a(function(m) {
          return this.list = m, m;
        }, "value") }, { key: "_processKeys", value: /* @__PURE__ */ a(function(m) {
          if (this._keyWeights = {}, this._keyNames = [], m.length && typeof m[0] == "string") for (var b = 0, x = m.length; b < x; b += 1) {
            var E = m[b];
            this._keyWeights[E] = 1, this._keyNames.push(E);
          }
          else {
            for (var g = null, v = null, S = 0, w = 0, k = m.length; w < k; w += 1) {
              var _ = m[w];
              if (!_.hasOwnProperty("name")) throw new Error('Missing "name" property in key object');
              var C = _.name;
              if (this._keyNames.push(C), !_.hasOwnProperty("weight")) throw new Error('Missing "weight" property in key object');
              var T = _.weight;
              if (T < 0 || T > 1) throw new Error('"weight" property in key must bein the range of [0, 1)');
              v = v == null ? T : Math.max(v, T), g = g == null ? T : Math.min(g, T), this._keyWeights[C] = T, S += T;
            }
            if (S > 1) throw new Error("Total of weights cannot exceed 1");
          }
        }, "value") }, { key: "search", value: /* @__PURE__ */ a(function(m) {
          var b = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : { limit: !1 };
          this._log(`---------
Search pattern: "`.concat(m, '"'));
          var x = this._prepareSearchers(m), E = x.tokenSearchers, g = x.fullSearcher, v = this._search(E, g);
          return this._computeScore(v), this.options.shouldSort && this._sort(v), b.limit && typeof b.limit == "number" && (v = v.slice(0, b.
          limit)), this._format(v);
        }, "value") }, { key: "_prepareSearchers", value: /* @__PURE__ */ a(function() {
          var m = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "", b = [];
          if (this.options.tokenize) for (var x = m.split(this.options.tokenSeparator), E = 0, g = x.length; E < g; E += 1) b.push(new n(x[E],
          this.options));
          return { tokenSearchers: b, fullSearcher: new n(m, this.options) };
        }, "value") }, { key: "_search", value: /* @__PURE__ */ a(function() {
          var m = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : [], b = arguments.length > 1 ? arguments[1] : void 0, x = this.
          list, E = {}, g = [];
          if (typeof x[0] == "string") {
            for (var v = 0, S = x.length; v < S; v += 1) this._analyze({ key: "", value: x[v], record: v, index: v }, { resultMap: E, results: g,
            tokenSearchers: m, fullSearcher: b });
            return g;
          }
          for (var w = 0, k = x.length; w < k; w += 1) for (var _ = x[w], C = 0, T = this._keyNames.length; C < T; C += 1) {
            var O = this._keyNames[C];
            this._analyze({ key: O, value: this.options.getFn(_, O), record: _, index: w }, { resultMap: E, results: g, tokenSearchers: m, fullSearcher: b });
          }
          return g;
        }, "value") }, { key: "_analyze", value: /* @__PURE__ */ a(function(m, b) {
          var x = this, E = m.key, g = m.arrayIndex, v = g === void 0 ? -1 : g, S = m.value, w = m.record, k = m.index, _ = b.tokenSearchers,
          C = _ === void 0 ? [] : _, T = b.fullSearcher, O = b.resultMap, P = O === void 0 ? {} : O, D = b.results, M = D === void 0 ? [] : D;
          (/* @__PURE__ */ a(function F(Z, V, Q, z) {
            if (V != null) {
              if (typeof V == "string") {
                var q = !1, W = -1, re = 0;
                x._log(`
Key: `.concat(E === "" ? "--" : E));
                var R = T.search(V);
                if (x._log('Full text: "'.concat(V, '", score: ').concat(R.score)), x.options.tokenize) {
                  for (var B = V.split(x.options.tokenSeparator), L = B.length, $ = [], J = 0, ie = C.length; J < ie; J += 1) {
                    var te = C[J];
                    x._log(`
Pattern: "`.concat(te.pattern, '"'));
                    for (var de = !1, ae = 0; ae < L; ae += 1) {
                      var ce = B[ae], ue = te.search(ce), Ie = {};
                      ue.isMatch ? (Ie[ce] = ue.score, q = !0, de = !0, $.push(ue.score)) : (Ie[ce] = 1, x.options.matchAllTokens || $.push(
                      1)), x._log('Token: "'.concat(ce, '", score: ').concat(Ie[ce]));
                    }
                    de && (re += 1);
                  }
                  W = $[0];
                  for (var ye = $.length, Oe = 1; Oe < ye; Oe += 1) W += $[Oe];
                  W /= ye, x._log("Token score average:", W);
                }
                var fe = R.score;
                W > -1 && (fe = (fe + W) / 2), x._log("Score average:", fe);
                var Se = !x.options.tokenize || !x.options.matchAllTokens || re >= C.length;
                if (x._log(`
Check Matches: `.concat(Se)), (q || R.isMatch) && Se) {
                  var _e = { key: E, arrayIndex: Z, value: V, score: fe };
                  x.options.includeMatches && (_e.matchedIndices = R.matchedIndices);
                  var Ae = P[z];
                  Ae ? Ae.output.push(_e) : (P[z] = { item: Q, output: [_e] }, M.push(P[z]));
                }
              } else if (c(V)) for (var et = 0, N = V.length; et < N; et += 1) F(et, V[et], Q, z);
            }
          }, "e"))(v, S, w, k);
        }, "value") }, { key: "_computeScore", value: /* @__PURE__ */ a(function(m) {
          this._log(`

Computing score:
`);
          for (var b = this._keyWeights, x = !!Object.keys(b).length, E = 0, g = m.length; E < g; E += 1) {
            for (var v = m[E], S = v.output, w = S.length, k = 1, _ = 0; _ < w; _ += 1) {
              var C = S[_], T = C.key, O = x ? b[T] : 1, P = C.score === 0 && b && b[T] > 0 ? Number.EPSILON : C.score;
              k *= Math.pow(P, O);
            }
            v.score = k, this._log(v);
          }
        }, "value") }, { key: "_sort", value: /* @__PURE__ */ a(function(m) {
          this._log(`

Sorting....`), m.sort(this.options.sortFn);
        }, "value") }, { key: "_format", value: /* @__PURE__ */ a(function(m) {
          var b = [];
          if (this.options.verbose) {
            var x = [];
            this._log(`

Output:

`, JSON.stringify(m, function(C, T) {
              if (i(T) === "object" && T !== null) {
                if (x.indexOf(T) !== -1) return;
                x.push(T);
              }
              return T;
            }, 2)), x = null;
          }
          var E = [];
          this.options.includeMatches && E.push(function(C, T) {
            var O = C.output;
            T.matches = [];
            for (var P = 0, D = O.length; P < D; P += 1) {
              var M = O[P];
              if (M.matchedIndices.length !== 0) {
                var F = { indices: M.matchedIndices, value: M.value };
                M.key && (F.key = M.key), M.hasOwnProperty("arrayIndex") && M.arrayIndex > -1 && (F.arrayIndex = M.arrayIndex), T.matches.push(
                F);
              }
            }
          }), this.options.includeScore && E.push(function(C, T) {
            T.score = C.score;
          });
          for (var g = 0, v = m.length; g < v; g += 1) {
            var S = m[g];
            if (this.options.id && (S.item = this.options.getFn(S.item, this.options.id)[0]), E.length) {
              for (var w = { item: S.item }, k = 0, _ = E.length; k < _; k += 1) E[k](S, w);
              b.push(w);
            } else b.push(S.item);
          }
          return b;
        }, "value") }, { key: "_log", value: /* @__PURE__ */ a(function() {
          var m;
          this.options.verbose && (m = console).log.apply(m, arguments);
        }, "value") }]) && r(f.prototype, h), y && r(f, y), p;
      }();
      e.exports = d;
    }, function(e, t, o) {
      function i(c, d) {
        for (var p = 0; p < d.length; p++) {
          var f = d[p];
          f.enumerable = f.enumerable || !1, f.configurable = !0, "value" in f && (f.writable = !0), Object.defineProperty(c, f.key, f);
        }
      }
      a(i, "n");
      var r = o(2), n = o(3), l = o(6), u = function() {
        function c(h, y) {
          var m = y.location, b = m === void 0 ? 0 : m, x = y.distance, E = x === void 0 ? 100 : x, g = y.threshold, v = g === void 0 ? 0.6 :
          g, S = y.maxPatternLength, w = S === void 0 ? 32 : S, k = y.isCaseSensitive, _ = k !== void 0 && k, C = y.tokenSeparator, T = C ===
          void 0 ? / +/g : C, O = y.findAllMatches, P = O !== void 0 && O, D = y.minMatchCharLength, M = D === void 0 ? 1 : D, F = y.includeMatches,
          Z = F !== void 0 && F;
          (function(V, Q) {
            if (!(V instanceof Q)) throw new TypeError("Cannot call a class as a function");
          })(this, c), this.options = { location: b, distance: E, threshold: v, maxPatternLength: w, isCaseSensitive: _, tokenSeparator: T, findAllMatches: P,
          includeMatches: Z, minMatchCharLength: M }, this.pattern = _ ? h : h.toLowerCase(), this.pattern.length <= w && (this.patternAlphabet =
          l(this.pattern));
        }
        a(c, "e");
        var d, p, f;
        return d = c, (p = [{ key: "search", value: /* @__PURE__ */ a(function(h) {
          var y = this.options, m = y.isCaseSensitive, b = y.includeMatches;
          if (m || (h = h.toLowerCase()), this.pattern === h) {
            var x = { isMatch: !0, score: 0 };
            return b && (x.matchedIndices = [[0, h.length - 1]]), x;
          }
          var E = this.options, g = E.maxPatternLength, v = E.tokenSeparator;
          if (this.pattern.length > g) return r(h, this.pattern, v);
          var S = this.options, w = S.location, k = S.distance, _ = S.threshold, C = S.findAllMatches, T = S.minMatchCharLength;
          return n(h, this.pattern, this.patternAlphabet, { location: w, distance: k, threshold: _, findAllMatches: C, minMatchCharLength: T,
          includeMatches: b });
        }, "value") }]) && i(d.prototype, p), f && i(d, f), c;
      }();
      e.exports = u;
    }, function(e, t) {
      var o = /[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g;
      e.exports = function(i, r) {
        var n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : / +/g, l = new RegExp(r.replace(o, "\\$&").replace(n, "|")),
        u = i.match(l), c = !!u, d = [];
        if (c) for (var p = 0, f = u.length; p < f; p += 1) {
          var h = u[p];
          d.push([i.indexOf(h), h.length - 1]);
        }
        return { score: c ? 0.5 : 1, isMatch: c, matchedIndices: d };
      };
    }, function(e, t, o) {
      var i = o(4), r = o(5);
      e.exports = function(n, l, u, c) {
        for (var d = c.location, p = d === void 0 ? 0 : d, f = c.distance, h = f === void 0 ? 100 : f, y = c.threshold, m = y === void 0 ? 0.6 :
        y, b = c.findAllMatches, x = b !== void 0 && b, E = c.minMatchCharLength, g = E === void 0 ? 1 : E, v = c.includeMatches, S = v !== void 0 &&
        v, w = p, k = n.length, _ = m, C = n.indexOf(l, w), T = l.length, O = [], P = 0; P < k; P += 1) O[P] = 0;
        if (C !== -1) {
          var D = i(l, { errors: 0, currentLocation: C, expectedLocation: w, distance: h });
          if (_ = Math.min(D, _), (C = n.lastIndexOf(l, w + T)) !== -1) {
            var M = i(l, { errors: 0, currentLocation: C, expectedLocation: w, distance: h });
            _ = Math.min(M, _);
          }
        }
        C = -1;
        for (var F = [], Z = 1, V = T + k, Q = 1 << (T <= 31 ? T - 1 : 30), z = 0; z < T; z += 1) {
          for (var q = 0, W = V; q < W; )
            i(l, { errors: z, currentLocation: w + W, expectedLocation: w, distance: h }) <= _ ? q = W : V = W, W = Math.floor((V - q) / 2 +
            q);
          V = W;
          var re = Math.max(1, w - W + 1), R = x ? k : Math.min(w + W, k) + T, B = Array(R + 2);
          B[R + 1] = (1 << z) - 1;
          for (var L = R; L >= re; L -= 1) {
            var $ = L - 1, J = u[n.charAt($)];
            if (J && (O[$] = 1), B[L] = (B[L + 1] << 1 | 1) & J, z !== 0 && (B[L] |= (F[L + 1] | F[L]) << 1 | 1 | F[L + 1]), B[L] & Q && (Z =
            i(l, { errors: z, currentLocation: $, expectedLocation: w, distance: h })) <= _) {
              if (_ = Z, (C = $) <= w) break;
              re = Math.max(1, 2 * w - C);
            }
          }
          if (i(l, { errors: z + 1, currentLocation: w, expectedLocation: w, distance: h }) > _) break;
          F = B;
        }
        var ie = { isMatch: C >= 0, score: Z === 0 ? 1e-3 : Z };
        return S && (ie.matchedIndices = r(O, g)), ie;
      };
    }, function(e, t) {
      e.exports = function(o, i) {
        var r = i.errors, n = r === void 0 ? 0 : r, l = i.currentLocation, u = l === void 0 ? 0 : l, c = i.expectedLocation, d = c === void 0 ?
        0 : c, p = i.distance, f = p === void 0 ? 100 : p, h = n / o.length, y = Math.abs(d - u);
        return f ? h + y / f : y ? 1 : h;
      };
    }, function(e, t) {
      e.exports = function() {
        for (var o = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : [], i = arguments.length > 1 && arguments[1] !== void 0 ?
        arguments[1] : 1, r = [], n = -1, l = -1, u = 0, c = o.length; u < c; u += 1) {
          var d = o[u];
          d && n === -1 ? n = u : d || n === -1 || ((l = u - 1) - n + 1 >= i && r.push([n, l]), n = -1);
        }
        return o[u - 1] && u - n >= i && r.push([n, u - 1]), r;
      };
    }, function(e, t) {
      e.exports = function(o) {
        for (var i = {}, r = o.length, n = 0; n < r; n += 1) i[o.charAt(n)] = 0;
        for (var l = 0; l < r; l += 1) i[o.charAt(l)] |= 1 << r - l - 1;
        return i;
      };
    }, function(e, t) {
      var o = /* @__PURE__ */ a(function(l) {
        return Array.isArray ? Array.isArray(l) : Object.prototype.toString.call(l) === "[object Array]";
      }, "r"), i = /* @__PURE__ */ a(function(l) {
        return l == null ? "" : function(u) {
          if (typeof u == "string") return u;
          var c = u + "";
          return c == "0" && 1 / u == -1 / 0 ? "-0" : c;
        }(l);
      }, "n"), r = /* @__PURE__ */ a(function(l) {
        return typeof l == "string";
      }, "o"), n = /* @__PURE__ */ a(function(l) {
        return typeof l == "number";
      }, "i");
      e.exports = { get: /* @__PURE__ */ a(function(l, u) {
        var c = [];
        return (/* @__PURE__ */ a(function d(p, f) {
          if (f) {
            var h = f.indexOf("."), y = f, m = null;
            h !== -1 && (y = f.slice(0, h), m = f.slice(h + 1));
            var b = p[y];
            if (b != null) if (m || !r(b) && !n(b)) if (o(b)) for (var x = 0, E = b.length; x < E; x += 1) d(b[x], m);
            else m && d(b, m);
            else c.push(i(b));
          } else c.push(p);
        }, "e"))(l, u), c;
      }, "get"), isArray: o, isString: r, isNum: n, toString: i };
    }]);
  });
});

// ../node_modules/store2/dist/store2.js
var Ud = we((bn, vn) => {
  (function(e, t) {
    var o = {
      version: "2.14.4",
      areas: {},
      apis: {},
      nsdelim: ".",
      // utilities
      inherit: /* @__PURE__ */ a(function(r, n) {
        for (var l in r)
          n.hasOwnProperty(l) || Object.defineProperty(n, l, Object.getOwnPropertyDescriptor(r, l));
        return n;
      }, "inherit"),
      stringify: /* @__PURE__ */ a(function(r, n) {
        return r === void 0 || typeof r == "function" ? r + "" : JSON.stringify(r, n || o.replace);
      }, "stringify"),
      parse: /* @__PURE__ */ a(function(r, n) {
        try {
          return JSON.parse(r, n || o.revive);
        } catch {
          return r;
        }
      }, "parse"),
      // extension hooks
      fn: /* @__PURE__ */ a(function(r, n) {
        o.storeAPI[r] = n;
        for (var l in o.apis)
          o.apis[l][r] = n;
      }, "fn"),
      get: /* @__PURE__ */ a(function(r, n) {
        return r.getItem(n);
      }, "get"),
      set: /* @__PURE__ */ a(function(r, n, l) {
        r.setItem(n, l);
      }, "set"),
      remove: /* @__PURE__ */ a(function(r, n) {
        r.removeItem(n);
      }, "remove"),
      key: /* @__PURE__ */ a(function(r, n) {
        return r.key(n);
      }, "key"),
      length: /* @__PURE__ */ a(function(r) {
        return r.length;
      }, "length"),
      clear: /* @__PURE__ */ a(function(r) {
        r.clear();
      }, "clear"),
      // core functions
      Store: /* @__PURE__ */ a(function(r, n, l) {
        var u = o.inherit(o.storeAPI, function(d, p, f) {
          return arguments.length === 0 ? u.getAll() : typeof p == "function" ? u.transact(d, p, f) : p !== void 0 ? u.set(d, p, f) : typeof d ==
          "string" || typeof d == "number" ? u.get(d) : typeof d == "function" ? u.each(d) : d ? u.setAll(d, p) : u.clear();
        });
        u._id = r;
        try {
          var c = "__store2_test";
          n.setItem(c, "ok"), u._area = n, n.removeItem(c);
        } catch {
          u._area = o.storage("fake");
        }
        return u._ns = l || "", o.areas[r] || (o.areas[r] = u._area), o.apis[u._ns + u._id] || (o.apis[u._ns + u._id] = u), u;
      }, "Store"),
      storeAPI: {
        // admin functions
        area: /* @__PURE__ */ a(function(r, n) {
          var l = this[r];
          return (!l || !l.area) && (l = o.Store(r, n, this._ns), this[r] || (this[r] = l)), l;
        }, "area"),
        namespace: /* @__PURE__ */ a(function(r, n, l) {
          if (l = l || this._delim || o.nsdelim, !r)
            return this._ns ? this._ns.substring(0, this._ns.length - l.length) : "";
          var u = r, c = this[u];
          if ((!c || !c.namespace) && (c = o.Store(this._id, this._area, this._ns + u + l), c._delim = l, this[u] || (this[u] = c), !n))
            for (var d in o.areas)
              c.area(d, o.areas[d]);
          return c;
        }, "namespace"),
        isFake: /* @__PURE__ */ a(function(r) {
          return r ? (this._real = this._area, this._area = o.storage("fake")) : r === !1 && (this._area = this._real || this._area), this._area.
          name === "fake";
        }, "isFake"),
        toString: /* @__PURE__ */ a(function() {
          return "store" + (this._ns ? "." + this.namespace() : "") + "[" + this._id + "]";
        }, "toString"),
        // storage functions
        has: /* @__PURE__ */ a(function(r) {
          return this._area.has ? this._area.has(this._in(r)) : this._in(r) in this._area;
        }, "has"),
        size: /* @__PURE__ */ a(function() {
          return this.keys().length;
        }, "size"),
        each: /* @__PURE__ */ a(function(r, n) {
          for (var l = 0, u = o.length(this._area); l < u; l++) {
            var c = this._out(o.key(this._area, l));
            if (c !== void 0 && r.call(this, c, this.get(c), n) === !1)
              break;
            u > o.length(this._area) && (u--, l--);
          }
          return n || this;
        }, "each"),
        keys: /* @__PURE__ */ a(function(r) {
          return this.each(function(n, l, u) {
            u.push(n);
          }, r || []);
        }, "keys"),
        get: /* @__PURE__ */ a(function(r, n) {
          var l = o.get(this._area, this._in(r)), u;
          return typeof n == "function" && (u = n, n = null), l !== null ? o.parse(l, u) : n ?? l;
        }, "get"),
        getAll: /* @__PURE__ */ a(function(r) {
          return this.each(function(n, l, u) {
            u[n] = l;
          }, r || {});
        }, "getAll"),
        transact: /* @__PURE__ */ a(function(r, n, l) {
          var u = this.get(r, l), c = n(u);
          return this.set(r, c === void 0 ? u : c), this;
        }, "transact"),
        set: /* @__PURE__ */ a(function(r, n, l) {
          var u = this.get(r), c;
          return u != null && l === !1 ? n : (typeof l == "function" && (c = l, l = void 0), o.set(this._area, this._in(r), o.stringify(n, c),
          l) || u);
        }, "set"),
        setAll: /* @__PURE__ */ a(function(r, n) {
          var l, u;
          for (var c in r)
            u = r[c], this.set(c, u, n) !== u && (l = !0);
          return l;
        }, "setAll"),
        add: /* @__PURE__ */ a(function(r, n, l) {
          var u = this.get(r);
          if (u instanceof Array)
            n = u.concat(n);
          else if (u !== null) {
            var c = typeof u;
            if (c === typeof n && c === "object") {
              for (var d in n)
                u[d] = n[d];
              n = u;
            } else
              n = u + n;
          }
          return o.set(this._area, this._in(r), o.stringify(n, l)), n;
        }, "add"),
        remove: /* @__PURE__ */ a(function(r, n) {
          var l = this.get(r, n);
          return o.remove(this._area, this._in(r)), l;
        }, "remove"),
        clear: /* @__PURE__ */ a(function() {
          return this._ns ? this.each(function(r) {
            o.remove(this._area, this._in(r));
          }, 1) : o.clear(this._area), this;
        }, "clear"),
        clearAll: /* @__PURE__ */ a(function() {
          var r = this._area;
          for (var n in o.areas)
            o.areas.hasOwnProperty(n) && (this._area = o.areas[n], this.clear());
          return this._area = r, this;
        }, "clearAll"),
        // internal use functions
        _in: /* @__PURE__ */ a(function(r) {
          return typeof r != "string" && (r = o.stringify(r)), this._ns ? this._ns + r : r;
        }, "_in"),
        _out: /* @__PURE__ */ a(function(r) {
          return this._ns ? r && r.indexOf(this._ns) === 0 ? r.substring(this._ns.length) : void 0 : (
            // so each() knows to skip it
            r
          );
        }, "_out")
      },
      // end _.storeAPI
      storage: /* @__PURE__ */ a(function(r) {
        return o.inherit(o.storageAPI, { items: {}, name: r });
      }, "storage"),
      storageAPI: {
        length: 0,
        has: /* @__PURE__ */ a(function(r) {
          return this.items.hasOwnProperty(r);
        }, "has"),
        key: /* @__PURE__ */ a(function(r) {
          var n = 0;
          for (var l in this.items)
            if (this.has(l) && r === n++)
              return l;
        }, "key"),
        setItem: /* @__PURE__ */ a(function(r, n) {
          this.has(r) || this.length++, this.items[r] = n;
        }, "setItem"),
        removeItem: /* @__PURE__ */ a(function(r) {
          this.has(r) && (delete this.items[r], this.length--);
        }, "removeItem"),
        getItem: /* @__PURE__ */ a(function(r) {
          return this.has(r) ? this.items[r] : null;
        }, "getItem"),
        clear: /* @__PURE__ */ a(function() {
          for (var r in this.items)
            this.removeItem(r);
        }, "clear")
      }
      // end _.storageAPI
    }, i = (
      // safely set this up (throws error in IE10/32bit mode for local files)
      o.Store("local", function() {
        try {
          return localStorage;
        } catch {
        }
      }())
    );
    i.local = i, i._ = o, i.area("session", function() {
      try {
        return sessionStorage;
      } catch {
      }
    }()), i.area("page", o.storage("page")), typeof t == "function" && t.amd !== void 0 ? t("store2", [], function() {
      return i;
    }) : typeof vn < "u" && vn.exports ? vn.exports = i : (e.store && (o.conflict = e.store), e.store = i);
  })(bn, bn && bn.define);
});

// global-externals:react
var s = __REACT__, { Children: gw, Component: Le, Fragment: Ee, Profiler: yw, PureComponent: bw, StrictMode: vw, Suspense: xw, __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED: Iw,
act: Sw, cloneElement: ta, createContext: Qt, createElement: ww, createFactory: Ew, createRef: Tw, forwardRef: oa, isValidElement: Cw, lazy: _w,
memo: _t, startTransition: kw, unstable_act: Ow, useCallback: A, useContext: qo, useDebugValue: Pw, useDeferredValue: ra, useEffect: H, useId: na,
useImperativeHandle: Aw, useInsertionEffect: Dw, useLayoutEffect: Xt, useMemo: G, useReducer: Zt, useRef: U, useState: K, useSyncExternalStore: Mw,
useTransition: ia, version: Lw } = __REACT__;

// global-externals:storybook/internal/channels
var Nw = __STORYBOOK_CHANNELS__, { Channel: Fw, HEARTBEAT_INTERVAL: Rw, HEARTBEAT_MAX_LATENCY: Bw, PostMessageTransport: Hw, WebsocketTransport: zw,
createBrowserChannel: sa } = __STORYBOOK_CHANNELS__;

// global-externals:storybook/internal/core-events
var Vw = __STORYBOOK_CORE_EVENTS__, { ARGTYPES_INFO_REQUEST: aa, ARGTYPES_INFO_RESPONSE: la, CHANNEL_CREATED: ua, CHANNEL_WS_DISCONNECT: ca,
CONFIG_ERROR: jw, CREATE_NEW_STORYFILE_REQUEST: pa, CREATE_NEW_STORYFILE_RESPONSE: da, CURRENT_STORY_WAS_SET: Kw, DOCS_PREPARED: $w, DOCS_RENDERED: Uw,
FILE_COMPONENT_SEARCH_REQUEST: fa, FILE_COMPONENT_SEARCH_RESPONSE: Yo, FORCE_REMOUNT: Sn, FORCE_RE_RENDER: Gw, GLOBALS_UPDATED: qw, NAVIGATE_URL: Yw,
PLAY_FUNCTION_THREW_EXCEPTION: Qw, PRELOAD_ENTRIES: kt, PREVIEW_BUILDER_PROGRESS: ma, PREVIEW_KEYDOWN: Xw, REGISTER_SUBSCRIPTION: Zw, REQUEST_WHATS_NEW_DATA: Jw,
RESET_STORY_ARGS: eE, RESULT_WHATS_NEW_DATA: tE, SAVE_STORY_REQUEST: ha, SAVE_STORY_RESPONSE: ga, SELECT_STORY: oE, SET_CONFIG: rE, SET_CURRENT_STORY: ya,
SET_FILTER: nE, SET_GLOBALS: iE, SET_INDEX: sE, SET_STORIES: aE, SET_WHATS_NEW_CACHE: lE, SHARED_STATE_CHANGED: uE, SHARED_STATE_SET: cE, STORIES_COLLAPSE_ALL: ho,
STORIES_EXPAND_ALL: wn, STORY_ARGS_UPDATED: pE, STORY_CHANGED: dE, STORY_ERRORED: fE, STORY_FINISHED: mE, STORY_HOT_UPDATED: hE, STORY_INDEX_INVALIDATED: gE,
STORY_MISSING: yE, STORY_PREPARED: bE, STORY_RENDERED: vE, STORY_RENDER_PHASE_CHANGED: xE, STORY_SPECIFIED: IE, STORY_THREW_EXCEPTION: SE, STORY_UNCHANGED: wE,
TELEMETRY_ERROR: EE, TOGGLE_WHATS_NEW_NOTIFICATIONS: TE, UNHANDLED_ERRORS_WHILE_PLAYING: CE, UPDATE_GLOBALS: _E, UPDATE_QUERY_PARAMS: kE, UPDATE_STORY_ARGS: OE } = __STORYBOOK_CORE_EVENTS__;

// ../node_modules/@storybook/global/dist/index.mjs
var se = (() => {
  let e;
  return typeof window < "u" ? e = window : typeof globalThis < "u" ? e = globalThis : typeof global < "u" ? e = global : typeof self < "u" ?
  e = self : e = {}, e;
})();

// global-externals:@storybook/icons
var oi = {};
vf(oi, {
  AccessibilityAltIcon: () => wf,
  AccessibilityIcon: () => Ef,
  AccessibilityIgnoredIcon: () => Tf,
  AddIcon: () => Cf,
  AdminIcon: () => _f,
  AlertAltIcon: () => kf,
  AlertIcon: () => go,
  AlignLeftIcon: () => Of,
  AlignRightIcon: () => Pf,
  AppleIcon: () => Af,
  ArrowBottomLeftIcon: () => Df,
  ArrowBottomRightIcon: () => Mf,
  ArrowDownIcon: () => Lf,
  ArrowLeftIcon: () => En,
  ArrowRightIcon: () => Nf,
  ArrowSolidDownIcon: () => Ff,
  ArrowSolidLeftIcon: () => Rf,
  ArrowSolidRightIcon: () => Bf,
  ArrowSolidUpIcon: () => Hf,
  ArrowTopLeftIcon: () => zf,
  ArrowTopRightIcon: () => Wf,
  ArrowUpIcon: () => Vf,
  AzureDevOpsIcon: () => jf,
  BackIcon: () => Kf,
  BasketIcon: () => $f,
  BatchAcceptIcon: () => Uf,
  BatchDenyIcon: () => Gf,
  BeakerIcon: () => qf,
  BellIcon: () => Yf,
  BitbucketIcon: () => Qf,
  BoldIcon: () => Xf,
  BookIcon: () => Zf,
  BookmarkHollowIcon: () => Jf,
  BookmarkIcon: () => em,
  BottomBarIcon: () => yo,
  BottomBarToggleIcon: () => Tn,
  BoxIcon: () => tm,
  BranchIcon: () => om,
  BrowserIcon: () => rm,
  ButtonIcon: () => nm,
  CPUIcon: () => im,
  CalendarIcon: () => sm,
  CameraIcon: () => am,
  CameraStabilizeIcon: () => lm,
  CategoryIcon: () => um,
  CertificateIcon: () => cm,
  ChangedIcon: () => pm,
  ChatIcon: () => dm,
  CheckIcon: () => Be,
  ChevronDownIcon: () => Ot,
  ChevronLeftIcon: () => fm,
  ChevronRightIcon: () => Cn,
  ChevronSmallDownIcon: () => mm,
  ChevronSmallLeftIcon: () => hm,
  ChevronSmallRightIcon: () => gm,
  ChevronSmallUpIcon: () => _n,
  ChevronUpIcon: () => ym,
  ChromaticIcon: () => bm,
  ChromeIcon: () => vm,
  CircleHollowIcon: () => xm,
  CircleIcon: () => kn,
  ClearIcon: () => Im,
  CloseAltIcon: () => bo,
  CloseIcon: () => je,
  CloudHollowIcon: () => Sm,
  CloudIcon: () => wm,
  CogIcon: () => Qo,
  CollapseIcon: () => On,
  CommandIcon: () => Pn,
  CommentAddIcon: () => Em,
  CommentIcon: () => Tm,
  CommentsIcon: () => Cm,
  CommitIcon: () => _m,
  CompassIcon: () => km,
  ComponentDrivenIcon: () => Om,
  ComponentIcon: () => Xo,
  ContrastIcon: () => Pm,
  ContrastIgnoredIcon: () => Am,
  ControlsIcon: () => Dm,
  CopyIcon: () => Mm,
  CreditIcon: () => Lm,
  CrossIcon: () => Nm,
  DashboardIcon: () => Fm,
  DatabaseIcon: () => Rm,
  DeleteIcon: () => Bm,
  DiamondIcon: () => Hm,
  DirectionIcon: () => zm,
  DiscordIcon: () => Wm,
  DocChartIcon: () => Vm,
  DocListIcon: () => jm,
  DocumentIcon: () => Pt,
  DownloadIcon: () => Km,
  DragIcon: () => $m,
  EditIcon: () => Um,
  EllipsisIcon: () => An,
  EmailIcon: () => Gm,
  ExpandAltIcon: () => Dn,
  ExpandIcon: () => Mn,
  EyeCloseIcon: () => Ln,
  EyeIcon: () => Nn,
  FaceHappyIcon: () => qm,
  FaceNeutralIcon: () => Ym,
  FaceSadIcon: () => Qm,
  FacebookIcon: () => Xm,
  FailedIcon: () => Fn,
  FastForwardIcon: () => Zm,
  FigmaIcon: () => Jm,
  FilterIcon: () => Rn,
  FlagIcon: () => eh,
  FolderIcon: () => th,
  FormIcon: () => oh,
  GDriveIcon: () => rh,
  GithubIcon: () => vo,
  GitlabIcon: () => nh,
  GlobeIcon: () => Zo,
  GoogleIcon: () => ih,
  GraphBarIcon: () => sh,
  GraphLineIcon: () => ah,
  GraphqlIcon: () => lh,
  GridAltIcon: () => uh,
  GridIcon: () => ch,
  GrowIcon: () => ph,
  HeartHollowIcon: () => dh,
  HeartIcon: () => Bn,
  HomeIcon: () => fh,
  HourglassIcon: () => mh,
  InfoIcon: () => Hn,
  ItalicIcon: () => hh,
  JumpToIcon: () => gh,
  KeyIcon: () => yh,
  LightningIcon: () => zn,
  LightningOffIcon: () => bh,
  LinkBrokenIcon: () => vh,
  LinkIcon: () => Wn,
  LinkedinIcon: () => xh,
  LinuxIcon: () => Ih,
  ListOrderedIcon: () => Sh,
  ListUnorderedIcon: () => wh,
  LocationIcon: () => Eh,
  LockIcon: () => xo,
  MarkdownIcon: () => Th,
  MarkupIcon: () => Vn,
  MediumIcon: () => Ch,
  MemoryIcon: () => _h,
  MenuIcon: () => Io,
  MergeIcon: () => kh,
  MirrorIcon: () => Oh,
  MobileIcon: () => Ph,
  MoonIcon: () => Ah,
  NutIcon: () => Dh,
  OutboxIcon: () => Mh,
  OutlineIcon: () => Lh,
  PaintBrushIcon: () => Nh,
  PaperClipIcon: () => Fh,
  ParagraphIcon: () => Rh,
  PassedIcon: () => Bh,
  PhoneIcon: () => Hh,
  PhotoDragIcon: () => zh,
  PhotoIcon: () => Wh,
  PhotoStabilizeIcon: () => Vh,
  PinAltIcon: () => jh,
  PinIcon: () => Kh,
  PlayAllHollowIcon: () => jn,
  PlayBackIcon: () => $h,
  PlayHollowIcon: () => Uh,
  PlayIcon: () => Gh,
  PlayNextIcon: () => qh,
  PlusIcon: () => Kn,
  PointerDefaultIcon: () => Yh,
  PointerHandIcon: () => Qh,
  PowerIcon: () => Xh,
  PrintIcon: () => Zh,
  ProceedIcon: () => Jh,
  ProfileIcon: () => eg,
  PullRequestIcon: () => tg,
  QuestionIcon: () => og,
  RSSIcon: () => rg,
  RedirectIcon: () => ng,
  ReduxIcon: () => ig,
  RefreshIcon: () => sg,
  ReplyIcon: () => ag,
  RepoIcon: () => lg,
  RequestChangeIcon: () => ug,
  RewindIcon: () => cg,
  RulerIcon: () => pg,
  SaveIcon: () => dg,
  SearchIcon: () => So,
  ShareAltIcon: () => tt,
  ShareIcon: () => fg,
  ShieldIcon: () => mg,
  SideBySideIcon: () => hg,
  SidebarAltIcon: () => wo,
  SidebarAltToggleIcon: () => gg,
  SidebarIcon: () => yg,
  SidebarToggleIcon: () => bg,
  SpeakerIcon: () => vg,
  StackedIcon: () => xg,
  StarHollowIcon: () => Ig,
  StarIcon: () => Sg,
  StatusFailIcon: () => $n,
  StatusIcon: () => wg,
  StatusPassIcon: () => Un,
  StatusWarnIcon: () => Gn,
  StickerIcon: () => Eg,
  StopAltHollowIcon: () => Tg,
  StopAltIcon: () => Cg,
  StopIcon: () => _g,
  StorybookIcon: () => qn,
  StructureIcon: () => kg,
  SubtractIcon: () => Og,
  SunIcon: () => Pg,
  SupportIcon: () => Ag,
  SweepIcon: () => Yn,
  SwitchAltIcon: () => Dg,
  SyncIcon: () => ct,
  TabletIcon: () => Mg,
  ThumbsUpIcon: () => Lg,
  TimeIcon: () => Qn,
  TimerIcon: () => Ng,
  TransferIcon: () => Fg,
  TrashIcon: () => Xn,
  TwitterIcon: () => Rg,
  TypeIcon: () => Bg,
  UbuntuIcon: () => Hg,
  UndoIcon: () => zg,
  UnfoldIcon: () => Wg,
  UnlockIcon: () => Vg,
  UnpinIcon: () => jg,
  UploadIcon: () => Kg,
  UserAddIcon: () => $g,
  UserAltIcon: () => Ug,
  UserIcon: () => Gg,
  UsersIcon: () => qg,
  VSCodeIcon: () => Yg,
  VerifiedIcon: () => Qg,
  VideoIcon: () => Xg,
  WandIcon: () => Zn,
  WatchIcon: () => Zg,
  WindowsIcon: () => Jg,
  WrenchIcon: () => ey,
  XIcon: () => ty,
  YoutubeIcon: () => oy,
  ZoomIcon: () => Jn,
  ZoomOutIcon: () => ei,
  ZoomResetIcon: () => ti,
  default: () => Sf,
  iconList: () => ry
});
var Sf = __STORYBOOK_ICONS__, { AccessibilityAltIcon: wf, AccessibilityIcon: Ef, AccessibilityIgnoredIcon: Tf, AddIcon: Cf, AdminIcon: _f, AlertAltIcon: kf,
AlertIcon: go, AlignLeftIcon: Of, AlignRightIcon: Pf, AppleIcon: Af, ArrowBottomLeftIcon: Df, ArrowBottomRightIcon: Mf, ArrowDownIcon: Lf, ArrowLeftIcon: En,
ArrowRightIcon: Nf, ArrowSolidDownIcon: Ff, ArrowSolidLeftIcon: Rf, ArrowSolidRightIcon: Bf, ArrowSolidUpIcon: Hf, ArrowTopLeftIcon: zf, ArrowTopRightIcon: Wf,
ArrowUpIcon: Vf, AzureDevOpsIcon: jf, BackIcon: Kf, BasketIcon: $f, BatchAcceptIcon: Uf, BatchDenyIcon: Gf, BeakerIcon: qf, BellIcon: Yf, BitbucketIcon: Qf,
BoldIcon: Xf, BookIcon: Zf, BookmarkHollowIcon: Jf, BookmarkIcon: em, BottomBarIcon: yo, BottomBarToggleIcon: Tn, BoxIcon: tm, BranchIcon: om,
BrowserIcon: rm, ButtonIcon: nm, CPUIcon: im, CalendarIcon: sm, CameraIcon: am, CameraStabilizeIcon: lm, CategoryIcon: um, CertificateIcon: cm,
ChangedIcon: pm, ChatIcon: dm, CheckIcon: Be, ChevronDownIcon: Ot, ChevronLeftIcon: fm, ChevronRightIcon: Cn, ChevronSmallDownIcon: mm, ChevronSmallLeftIcon: hm,
ChevronSmallRightIcon: gm, ChevronSmallUpIcon: _n, ChevronUpIcon: ym, ChromaticIcon: bm, ChromeIcon: vm, CircleHollowIcon: xm, CircleIcon: kn,
ClearIcon: Im, CloseAltIcon: bo, CloseIcon: je, CloudHollowIcon: Sm, CloudIcon: wm, CogIcon: Qo, CollapseIcon: On, CommandIcon: Pn, CommentAddIcon: Em,
CommentIcon: Tm, CommentsIcon: Cm, CommitIcon: _m, CompassIcon: km, ComponentDrivenIcon: Om, ComponentIcon: Xo, ContrastIcon: Pm, ContrastIgnoredIcon: Am,
ControlsIcon: Dm, CopyIcon: Mm, CreditIcon: Lm, CrossIcon: Nm, DashboardIcon: Fm, DatabaseIcon: Rm, DeleteIcon: Bm, DiamondIcon: Hm, DirectionIcon: zm,
DiscordIcon: Wm, DocChartIcon: Vm, DocListIcon: jm, DocumentIcon: Pt, DownloadIcon: Km, DragIcon: $m, EditIcon: Um, EllipsisIcon: An, EmailIcon: Gm,
ExpandAltIcon: Dn, ExpandIcon: Mn, EyeCloseIcon: Ln, EyeIcon: Nn, FaceHappyIcon: qm, FaceNeutralIcon: Ym, FaceSadIcon: Qm, FacebookIcon: Xm,
FailedIcon: Fn, FastForwardIcon: Zm, FigmaIcon: Jm, FilterIcon: Rn, FlagIcon: eh, FolderIcon: th, FormIcon: oh, GDriveIcon: rh, GithubIcon: vo,
GitlabIcon: nh, GlobeIcon: Zo, GoogleIcon: ih, GraphBarIcon: sh, GraphLineIcon: ah, GraphqlIcon: lh, GridAltIcon: uh, GridIcon: ch, GrowIcon: ph,
HeartHollowIcon: dh, HeartIcon: Bn, HomeIcon: fh, HourglassIcon: mh, InfoIcon: Hn, ItalicIcon: hh, JumpToIcon: gh, KeyIcon: yh, LightningIcon: zn,
LightningOffIcon: bh, LinkBrokenIcon: vh, LinkIcon: Wn, LinkedinIcon: xh, LinuxIcon: Ih, ListOrderedIcon: Sh, ListUnorderedIcon: wh, LocationIcon: Eh,
LockIcon: xo, MarkdownIcon: Th, MarkupIcon: Vn, MediumIcon: Ch, MemoryIcon: _h, MenuIcon: Io, MergeIcon: kh, MirrorIcon: Oh, MobileIcon: Ph,
MoonIcon: Ah, NutIcon: Dh, OutboxIcon: Mh, OutlineIcon: Lh, PaintBrushIcon: Nh, PaperClipIcon: Fh, ParagraphIcon: Rh, PassedIcon: Bh, PhoneIcon: Hh,
PhotoDragIcon: zh, PhotoIcon: Wh, PhotoStabilizeIcon: Vh, PinAltIcon: jh, PinIcon: Kh, PlayAllHollowIcon: jn, PlayBackIcon: $h, PlayHollowIcon: Uh,
PlayIcon: Gh, PlayNextIcon: qh, PlusIcon: Kn, PointerDefaultIcon: Yh, PointerHandIcon: Qh, PowerIcon: Xh, PrintIcon: Zh, ProceedIcon: Jh, ProfileIcon: eg,
PullRequestIcon: tg, QuestionIcon: og, RSSIcon: rg, RedirectIcon: ng, ReduxIcon: ig, RefreshIcon: sg, ReplyIcon: ag, RepoIcon: lg, RequestChangeIcon: ug,
RewindIcon: cg, RulerIcon: pg, SaveIcon: dg, SearchIcon: So, ShareAltIcon: tt, ShareIcon: fg, ShieldIcon: mg, SideBySideIcon: hg, SidebarAltIcon: wo,
SidebarAltToggleIcon: gg, SidebarIcon: yg, SidebarToggleIcon: bg, SpeakerIcon: vg, StackedIcon: xg, StarHollowIcon: Ig, StarIcon: Sg, StatusFailIcon: $n,
StatusIcon: wg, StatusPassIcon: Un, StatusWarnIcon: Gn, StickerIcon: Eg, StopAltHollowIcon: Tg, StopAltIcon: Cg, StopIcon: _g, StorybookIcon: qn,
StructureIcon: kg, SubtractIcon: Og, SunIcon: Pg, SupportIcon: Ag, SweepIcon: Yn, SwitchAltIcon: Dg, SyncIcon: ct, TabletIcon: Mg, ThumbsUpIcon: Lg,
TimeIcon: Qn, TimerIcon: Ng, TransferIcon: Fg, TrashIcon: Xn, TwitterIcon: Rg, TypeIcon: Bg, UbuntuIcon: Hg, UndoIcon: zg, UnfoldIcon: Wg, UnlockIcon: Vg,
UnpinIcon: jg, UploadIcon: Kg, UserAddIcon: $g, UserAltIcon: Ug, UserIcon: Gg, UsersIcon: qg, VSCodeIcon: Yg, VerifiedIcon: Qg, VideoIcon: Xg,
WandIcon: Zn, WatchIcon: Zg, WindowsIcon: Jg, WrenchIcon: ey, XIcon: ty, YoutubeIcon: oy, ZoomIcon: Jn, ZoomOutIcon: ei, ZoomResetIcon: ti, iconList: ry } = __STORYBOOK_ICONS__;

// global-externals:storybook/manager-api
var DE = __STORYBOOK_API__, { ActiveTabs: ME, Consumer: me, ManagerContext: LE, Provider: ba, RequestResponseError: NE, addons: He, combineParameters: FE,
controlOrMetaKey: RE, controlOrMetaSymbol: BE, eventMatchesShortcut: HE, eventToShortcut: va, experimental_MockUniversalStore: zE, experimental_UniversalStore: WE,
experimental_getStatusStore: ny, experimental_getTestProviderStore: iy, experimental_requestResponse: Jo, experimental_useStatusStore: Eo, experimental_useTestProviderStore: ri,
experimental_useUniversalStore: VE, internal_fullStatusStore: At, internal_fullTestProviderStore: Jt, internal_universalStatusStore: jE, internal_universalTestProviderStore: KE,
isMacLike: $E, isShortcutTaken: UE, keyToSymbol: GE, merge: er, mockChannel: qE, optionOrAltSymbol: YE, shortcutMatchesShortcut: xa, shortcutToHumanString: Ye,
types: be, useAddonState: QE, useArgTypes: XE, useArgs: ZE, useChannel: Ia, useGlobalTypes: Sa, useGlobals: tr, useParameter: JE, useSharedState: eT,
useStoryPrepared: tT, useStorybookApi: oe, useStorybookState: Ne } = __STORYBOOK_API__;

// global-externals:storybook/theming
var rT = __STORYBOOK_THEMING__, { CacheProvider: nT, ClassNames: iT, Global: eo, ThemeProvider: ni, background: sT, color: wa, convert: aT, create: lT,
createCache: uT, createGlobal: Ea, createReset: cT, css: pT, darken: dT, ensure: Ta, ignoreSsrWarning: fT, isPropValid: mT, jsx: hT, keyframes: Dt,
lighten: gT, styled: I, themes: yT, typography: bT, useTheme: De, withTheme: Ca } = __STORYBOOK_THEMING__;

// global-externals:storybook/internal/components
var xT = __STORYBOOK_COMPONENTS__, { A: IT, ActionBar: ST, AddonPanel: wT, Badge: or, Bar: ET, Blockquote: TT, Button: he, ClipboardCode: CT,
Code: _T, DL: kT, Div: OT, DocumentWrapper: PT, EmptyTabContent: _a, ErrorFormatter: ka, FlexBar: AT, Form: rr, H1: DT, H2: MT, H3: LT, H4: NT,
H5: FT, H6: RT, HR: BT, IconButton: ee, Img: HT, LI: zT, Link: Pe, ListItem: sy, Loader: nr, Modal: Mt, OL: WT, P: VT, Placeholder: jT, Pre: KT,
ProgressSpinner: $T, ResetWrapper: UT, ScrollArea: ir, Separator: yt, Spaced: pt, Span: GT, StorybookIcon: qT, StorybookLogo: sr, SyntaxHighlighter: YT,
TT: QT, TabBar: ar, TabButton: lr, TabWrapper: XT, Table: ZT, Tabs: Oa, TabsState: JT, TooltipLinkList: ot, TooltipMessage: eC, TooltipNote: rt,
UL: tC, WithTooltip: ve, WithTooltipPure: oC, Zoom: Pa, codeCommon: rC, components: nC, createCopyToClipboardFunction: iC, getStoryHref: to,
interleaveSeparators: sC, nameSpaceClassNames: aC, resetComponents: lC, withReset: uC } = __STORYBOOK_COMPONENTS__;

// src/toolbar/utils/normalize-toolbar-arg-type.ts
var ay = {
  type: "item",
  value: ""
}, Aa = /* @__PURE__ */ a((e, t) => ({
  ...t,
  name: t.name || e,
  description: t.description || e,
  toolbar: {
    ...t.toolbar,
    items: t.toolbar.items.map((o) => {
      let i = typeof o == "string" ? { value: o, title: o } : o;
      return i.type === "reset" && t.toolbar.icon && (i.icon = t.toolbar.icon, i.hideIcon = !0), { ...ay, ...i };
    })
  }
}), "normalizeArgType");

// src/toolbar/utils/create-cycle-value-array.ts
var ly = ["reset"], Da = /* @__PURE__ */ a((e) => e.filter((o) => !ly.includes(o.type)).map((o) => o.value), "createCycleValueArray");

// src/toolbar/constants.ts
var bt = "toolbar";

// src/toolbar/utils/register-shortcuts.ts
var Ma = /* @__PURE__ */ a(async (e, t, o) => {
  o && o.next && await e.setAddonShortcut(bt, {
    label: o.next.label,
    defaultShortcut: o.next.keys,
    actionName: `${t}:next`,
    action: o.next.action
  }), o && o.previous && await e.setAddonShortcut(bt, {
    label: o.previous.label,
    defaultShortcut: o.previous.keys,
    actionName: `${t}:previous`,
    action: o.previous.action
  }), o && o.reset && await e.setAddonShortcut(bt, {
    label: o.reset.label,
    defaultShortcut: o.reset.keys,
    actionName: `${t}:reset`,
    action: o.reset.action
  });
}, "registerShortcuts");

// src/toolbar/hoc/withKeyboardCycle.tsx
var La = /* @__PURE__ */ a((e) => /* @__PURE__ */ a((o) => {
  let {
    id: i,
    toolbar: { items: r, shortcuts: n }
  } = o, l = oe(), [u, c] = tr(), d = U([]), p = u[i], f = A(() => {
    c({ [i]: "" });
  }, [c]), h = A(() => {
    let m = d.current, b = m.indexOf(p), E = b === m.length - 1 ? 0 : b + 1, g = d.current[E];
    c({ [i]: g });
  }, [d, p, c]), y = A(() => {
    let m = d.current, b = m.indexOf(p), x = b > -1 ? b : 0, g = x === 0 ? m.length - 1 : x - 1, v = d.current[g];
    c({ [i]: v });
  }, [d, p, c]);
  return H(() => {
    n && Ma(l, i, {
      next: { ...n.next, action: h },
      previous: { ...n.previous, action: y },
      reset: { ...n.reset, action: f }
    });
  }, [l, i, n, h, y, f]), H(() => {
    d.current = Da(r);
  }, []), /* @__PURE__ */ s.createElement(e, { cycleValues: d.current, ...o });
}, "WithKeyboardCycle"), "withKeyboardCycle");

// src/toolbar/utils/get-selected.ts
var Na = /* @__PURE__ */ a(({ currentValue: e, items: t }) => e != null && t.find((i) => i.value === e && i.type !== "reset"), "getSelectedI\
tem"), Fa = /* @__PURE__ */ a(({ currentValue: e, items: t }) => {
  let o = Na({ currentValue: e, items: t });
  if (o)
    return o.icon;
}, "getSelectedIcon"), Ra = /* @__PURE__ */ a(({ currentValue: e, items: t }) => {
  let o = Na({ currentValue: e, items: t });
  if (o)
    return o.title;
}, "getSelectedTitle");

// global-externals:storybook/internal/client-logger
var _C = __STORYBOOK_CLIENT_LOGGER__, { deprecate: Ba, logger: ur, once: Ha, pretty: kC } = __STORYBOOK_CLIENT_LOGGER__;

// src/components/components/icon/icon.tsx
var uy = oi, cy = I.svg`
  display: inline-block;
  shape-rendering: inherit;
  vertical-align: middle;
  fill: currentColor;
  path {
    fill: currentColor;
  }
`, cr = /* @__PURE__ */ a(({
  icon: e,
  useSymbol: t,
  __suppressDeprecationWarning: o = !1,
  ...i
}) => {
  o || Ba(
    `Use of the deprecated Icons ${`(${e})` || ""} component detected. Please use the @storybook/icons component directly. For more informat\
ions, see the migration notes at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#icons-is-deprecated`
  );
  let r = ii[e] || null;
  if (!r)
    return ur.warn(
      `Use of an unknown prop ${`(${e})` || ""} in the Icons component. The Icons component is deprecated. Please use the @storybook/icons c\
omponent directly. For more informations, see the migration notes at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#icons-i\
s-deprecated`
    ), null;
  let n = uy[r];
  return /* @__PURE__ */ s.createElement(n, { ...i });
}, "Icons"), MC = _t(/* @__PURE__ */ a(function({ icons: t = Object.keys(ii) }) {
  return /* @__PURE__ */ s.createElement(
    cy,
    {
      viewBox: "0 0 14 14",
      style: { position: "absolute", width: 0, height: 0 },
      "data-chromatic": "ignore"
    },
    t.map((o) => /* @__PURE__ */ s.createElement("symbol", { id: `icon--${o}`, key: o }, ii[o]))
  );
}, "Symbols")), ii = {
  user: "UserIcon",
  useralt: "UserAltIcon",
  useradd: "UserAddIcon",
  users: "UsersIcon",
  profile: "ProfileIcon",
  facehappy: "FaceHappyIcon",
  faceneutral: "FaceNeutralIcon",
  facesad: "FaceSadIcon",
  accessibility: "AccessibilityIcon",
  accessibilityalt: "AccessibilityAltIcon",
  arrowup: "ChevronUpIcon",
  arrowdown: "ChevronDownIcon",
  arrowleft: "ChevronLeftIcon",
  arrowright: "ChevronRightIcon",
  arrowupalt: "ArrowUpIcon",
  arrowdownalt: "ArrowDownIcon",
  arrowleftalt: "ArrowLeftIcon",
  arrowrightalt: "ArrowRightIcon",
  expandalt: "ExpandAltIcon",
  collapse: "CollapseIcon",
  expand: "ExpandIcon",
  unfold: "UnfoldIcon",
  transfer: "TransferIcon",
  redirect: "RedirectIcon",
  undo: "UndoIcon",
  reply: "ReplyIcon",
  sync: "SyncIcon",
  upload: "UploadIcon",
  download: "DownloadIcon",
  back: "BackIcon",
  proceed: "ProceedIcon",
  refresh: "RefreshIcon",
  globe: "GlobeIcon",
  compass: "CompassIcon",
  location: "LocationIcon",
  pin: "PinIcon",
  time: "TimeIcon",
  dashboard: "DashboardIcon",
  timer: "TimerIcon",
  home: "HomeIcon",
  admin: "AdminIcon",
  info: "InfoIcon",
  question: "QuestionIcon",
  support: "SupportIcon",
  alert: "AlertIcon",
  email: "EmailIcon",
  phone: "PhoneIcon",
  link: "LinkIcon",
  unlink: "LinkBrokenIcon",
  bell: "BellIcon",
  rss: "RSSIcon",
  sharealt: "ShareAltIcon",
  share: "ShareIcon",
  circle: "CircleIcon",
  circlehollow: "CircleHollowIcon",
  bookmarkhollow: "BookmarkHollowIcon",
  bookmark: "BookmarkIcon",
  hearthollow: "HeartHollowIcon",
  heart: "HeartIcon",
  starhollow: "StarHollowIcon",
  star: "StarIcon",
  certificate: "CertificateIcon",
  verified: "VerifiedIcon",
  thumbsup: "ThumbsUpIcon",
  shield: "ShieldIcon",
  basket: "BasketIcon",
  beaker: "BeakerIcon",
  hourglass: "HourglassIcon",
  flag: "FlagIcon",
  cloudhollow: "CloudHollowIcon",
  edit: "EditIcon",
  cog: "CogIcon",
  nut: "NutIcon",
  wrench: "WrenchIcon",
  ellipsis: "EllipsisIcon",
  check: "CheckIcon",
  form: "FormIcon",
  batchdeny: "BatchDenyIcon",
  batchaccept: "BatchAcceptIcon",
  controls: "ControlsIcon",
  plus: "PlusIcon",
  closeAlt: "CloseAltIcon",
  cross: "CrossIcon",
  trash: "TrashIcon",
  pinalt: "PinAltIcon",
  unpin: "UnpinIcon",
  add: "AddIcon",
  subtract: "SubtractIcon",
  close: "CloseIcon",
  delete: "DeleteIcon",
  passed: "PassedIcon",
  changed: "ChangedIcon",
  failed: "FailedIcon",
  clear: "ClearIcon",
  comment: "CommentIcon",
  commentadd: "CommentAddIcon",
  requestchange: "RequestChangeIcon",
  comments: "CommentsIcon",
  lock: "LockIcon",
  unlock: "UnlockIcon",
  key: "KeyIcon",
  outbox: "OutboxIcon",
  credit: "CreditIcon",
  button: "ButtonIcon",
  type: "TypeIcon",
  pointerdefault: "PointerDefaultIcon",
  pointerhand: "PointerHandIcon",
  browser: "BrowserIcon",
  tablet: "TabletIcon",
  mobile: "MobileIcon",
  watch: "WatchIcon",
  sidebar: "SidebarIcon",
  sidebaralt: "SidebarAltIcon",
  sidebaralttoggle: "SidebarAltToggleIcon",
  sidebartoggle: "SidebarToggleIcon",
  bottombar: "BottomBarIcon",
  bottombartoggle: "BottomBarToggleIcon",
  cpu: "CPUIcon",
  database: "DatabaseIcon",
  memory: "MemoryIcon",
  structure: "StructureIcon",
  box: "BoxIcon",
  power: "PowerIcon",
  photo: "PhotoIcon",
  component: "ComponentIcon",
  grid: "GridIcon",
  outline: "OutlineIcon",
  photodrag: "PhotoDragIcon",
  search: "SearchIcon",
  zoom: "ZoomIcon",
  zoomout: "ZoomOutIcon",
  zoomreset: "ZoomResetIcon",
  eye: "EyeIcon",
  eyeclose: "EyeCloseIcon",
  lightning: "LightningIcon",
  lightningoff: "LightningOffIcon",
  contrast: "ContrastIcon",
  switchalt: "SwitchAltIcon",
  mirror: "MirrorIcon",
  grow: "GrowIcon",
  paintbrush: "PaintBrushIcon",
  ruler: "RulerIcon",
  stop: "StopIcon",
  camera: "CameraIcon",
  video: "VideoIcon",
  speaker: "SpeakerIcon",
  play: "PlayIcon",
  playback: "PlayBackIcon",
  playnext: "PlayNextIcon",
  rewind: "RewindIcon",
  fastforward: "FastForwardIcon",
  stopalt: "StopAltIcon",
  sidebyside: "SideBySideIcon",
  stacked: "StackedIcon",
  sun: "SunIcon",
  moon: "MoonIcon",
  book: "BookIcon",
  document: "DocumentIcon",
  copy: "CopyIcon",
  category: "CategoryIcon",
  folder: "FolderIcon",
  print: "PrintIcon",
  graphline: "GraphLineIcon",
  calendar: "CalendarIcon",
  graphbar: "GraphBarIcon",
  menu: "MenuIcon",
  menualt: "MenuIcon",
  filter: "FilterIcon",
  docchart: "DocChartIcon",
  doclist: "DocListIcon",
  markup: "MarkupIcon",
  bold: "BoldIcon",
  paperclip: "PaperClipIcon",
  listordered: "ListOrderedIcon",
  listunordered: "ListUnorderedIcon",
  paragraph: "ParagraphIcon",
  markdown: "MarkdownIcon",
  repository: "RepoIcon",
  commit: "CommitIcon",
  branch: "BranchIcon",
  pullrequest: "PullRequestIcon",
  merge: "MergeIcon",
  apple: "AppleIcon",
  linux: "LinuxIcon",
  ubuntu: "UbuntuIcon",
  windows: "WindowsIcon",
  storybook: "StorybookIcon",
  azuredevops: "AzureDevOpsIcon",
  bitbucket: "BitbucketIcon",
  chrome: "ChromeIcon",
  chromatic: "ChromaticIcon",
  componentdriven: "ComponentDrivenIcon",
  discord: "DiscordIcon",
  facebook: "FacebookIcon",
  figma: "FigmaIcon",
  gdrive: "GDriveIcon",
  github: "GithubIcon",
  gitlab: "GitlabIcon",
  google: "GoogleIcon",
  graphql: "GraphqlIcon",
  medium: "MediumIcon",
  redux: "ReduxIcon",
  twitter: "TwitterIcon",
  youtube: "YoutubeIcon",
  vscode: "VSCodeIcon"
};

// src/toolbar/components/ToolbarMenuButton.tsx
var za = /* @__PURE__ */ a(({
  active: e,
  disabled: t,
  title: o,
  icon: i,
  description: r,
  onClick: n
}) => /* @__PURE__ */ s.createElement(
  ee,
  {
    active: e,
    title: r,
    disabled: t,
    onClick: t ? () => {
    } : n
  },
  i && /* @__PURE__ */ s.createElement(cr, { icon: i, __suppressDeprecationWarning: !0 }),
  o ? `\xA0${o}` : null
), "ToolbarMenuButton");

// src/toolbar/components/ToolbarMenuListItem.tsx
var Wa = /* @__PURE__ */ a(({
  right: e,
  title: t,
  value: o,
  icon: i,
  hideIcon: r,
  onClick: n,
  disabled: l,
  currentValue: u
}) => {
  let c = i && /* @__PURE__ */ s.createElement(cr, { style: { opacity: 1 }, icon: i, __suppressDeprecationWarning: !0 }), d = {
    id: o ?? "_reset",
    active: u === o,
    right: e,
    title: t,
    disabled: l,
    onClick: n
  };
  return i && !r && (d.icon = c), d;
}, "ToolbarMenuListItem");

// src/toolbar/components/ToolbarMenuList.tsx
var Va = La(
  ({
    id: e,
    name: t,
    description: o,
    toolbar: { icon: i, items: r, title: n, preventDynamicIcon: l, dynamicTitle: u }
  }) => {
    let [c, d, p] = tr(), [f, h] = K(!1), y = c[e], m = !!y, b = e in p, x = i, E = n;
    l || (x = Fa({ currentValue: y, items: r }) || x), u && (E = Ra({ currentValue: y, items: r }) || E), !E && !x && console.warn(`Toolbar \
'${t}' has no title or icon`);
    let g = A(
      (v) => {
        d({ [e]: v });
      },
      [e, d]
    );
    return /* @__PURE__ */ s.createElement(
      ve,
      {
        placement: "top",
        tooltip: ({ onHide: v }) => {
          let S = r.filter(({ type: w }) => {
            let k = !0;
            return w === "reset" && !y && (k = !1), k;
          }).map((w) => Wa({
            ...w,
            currentValue: y,
            disabled: b,
            onClick: /* @__PURE__ */ a(() => {
              g(w.value), v();
            }, "onClick")
          }));
          return /* @__PURE__ */ s.createElement(ot, { links: S });
        },
        closeOnOutsideClick: !0,
        onVisibleChange: h
      },
      /* @__PURE__ */ s.createElement(
        za,
        {
          active: f || m,
          disabled: b,
          description: o || "",
          icon: x,
          title: E || ""
        }
      )
    );
  }
);

// src/toolbar/components/ToolbarManager.tsx
var ja = /* @__PURE__ */ a(() => {
  let e = Sa(), t = Object.keys(e).filter((o) => !!e[o].toolbar);
  return t.length ? /* @__PURE__ */ s.createElement(s.Fragment, null, /* @__PURE__ */ s.createElement(yt, null), t.map((o) => {
    let i = Aa(o, e[o]);
    return /* @__PURE__ */ s.createElement(Va, { key: o, id: o, ...i });
  })) : null;
}, "ToolbarManager");

// global-externals:react-dom/client
var a_ = __REACT_DOM_CLIENT__, { createRoot: Ka, hydrateRoot: l_ } = __REACT_DOM_CLIENT__;

// global-externals:storybook/internal/manager-errors
var c_ = __STORYBOOK_CORE_EVENTS_MANAGER_ERRORS__, { Category: p_, ProviderDoesNotExtendBaseProviderError: $a, StatusTypeIdMismatchError: d_,
UncaughtManagerError: f_ } = __STORYBOOK_CORE_EVENTS_MANAGER_ERRORS__;

// global-externals:storybook/internal/router
var h_ = __STORYBOOK_ROUTER__, { BaseLocationProvider: g_, DEEPLY_EQUAL: y_, Link: pr, Location: dr, LocationProvider: Ua, Match: Ga, Route: To,
buildArgsParam: b_, deepDiff: v_, getMatch: x_, parsePath: I_, queryFromLocation: S_, stringifyQuery: w_, useNavigate: qa } = __STORYBOOK_ROUTER__;

// ../node_modules/react-helmet-async/lib/index.module.js
var ne = Ve(si()), ml = Ve(rl()), pi = Ve(il()), hl = Ve(al());
function xe() {
  return xe = Object.assign || function(e) {
    for (var t = 1; t < arguments.length; t++) {
      var o = arguments[t];
      for (var i in o) Object.prototype.hasOwnProperty.call(o, i) && (e[i] = o[i]);
    }
    return e;
  }, xe.apply(this, arguments);
}
a(xe, "a");
function hi(e, t) {
  e.prototype = Object.create(t.prototype), e.prototype.constructor = e, di(e, t);
}
a(hi, "s");
function di(e, t) {
  return di = Object.setPrototypeOf || function(o, i) {
    return o.__proto__ = i, o;
  }, di(e, t);
}
a(di, "c");
function ll(e, t) {
  if (e == null) return {};
  var o, i, r = {}, n = Object.keys(e);
  for (i = 0; i < n.length; i++) t.indexOf(o = n[i]) >= 0 || (r[o] = e[o]);
  return r;
}
a(ll, "u");
var X = { BASE: "base", BODY: "body", HEAD: "head", HTML: "html", LINK: "link", META: "meta", NOSCRIPT: "noscript", SCRIPT: "script", STYLE: "\
style", TITLE: "title", FRAGMENT: "Symbol(react.fragment)" }, by = { rel: ["amphtml", "canonical", "alternate"] }, vy = { type: ["applicatio\
n/ld+json"] }, xy = { charset: "", name: ["robots", "description"], property: ["og:type", "og:title", "og:url", "og:image", "og:image:alt", "\
og:description", "twitter:url", "twitter:title", "twitter:description", "twitter:image", "twitter:image:alt", "twitter:card", "twitter:site"] },
ul = Object.keys(X).map(function(e) {
  return X[e];
}), gr = { accesskey: "accessKey", charset: "charSet", class: "className", contenteditable: "contentEditable", contextmenu: "contextMenu", "\
http-equiv": "httpEquiv", itemprop: "itemProp", tabindex: "tabIndex" }, Iy = Object.keys(gr).reduce(function(e, t) {
  return e[gr[t]] = t, e;
}, {}), ro = /* @__PURE__ */ a(function(e, t) {
  for (var o = e.length - 1; o >= 0; o -= 1) {
    var i = e[o];
    if (Object.prototype.hasOwnProperty.call(i, t)) return i[t];
  }
  return null;
}, "T"), Sy = /* @__PURE__ */ a(function(e) {
  var t = ro(e, X.TITLE), o = ro(e, "titleTemplate");
  if (Array.isArray(t) && (t = t.join("")), o && t) return o.replace(/%s/g, function() {
    return t;
  });
  var i = ro(e, "defaultTitle");
  return t || i || void 0;
}, "g"), wy = /* @__PURE__ */ a(function(e) {
  return ro(e, "onChangeClientState") || function() {
  };
}, "b"), ai = /* @__PURE__ */ a(function(e, t) {
  return t.filter(function(o) {
    return o[e] !== void 0;
  }).map(function(o) {
    return o[e];
  }).reduce(function(o, i) {
    return xe({}, o, i);
  }, {});
}, "v"), Ey = /* @__PURE__ */ a(function(e, t) {
  return t.filter(function(o) {
    return o[X.BASE] !== void 0;
  }).map(function(o) {
    return o[X.BASE];
  }).reverse().reduce(function(o, i) {
    if (!o.length) for (var r = Object.keys(i), n = 0; n < r.length; n += 1) {
      var l = r[n].toLowerCase();
      if (e.indexOf(l) !== -1 && i[l]) return o.concat(i);
    }
    return o;
  }, []);
}, "A"), Co = /* @__PURE__ */ a(function(e, t, o) {
  var i = {};
  return o.filter(function(r) {
    return !!Array.isArray(r[e]) || (r[e] !== void 0 && console && typeof console.warn == "function" && console.warn("Helmet: " + e + ' shou\
ld be of type "Array". Instead found type "' + typeof r[e] + '"'), !1);
  }).map(function(r) {
    return r[e];
  }).reverse().reduce(function(r, n) {
    var l = {};
    n.filter(function(f) {
      for (var h, y = Object.keys(f), m = 0; m < y.length; m += 1) {
        var b = y[m], x = b.toLowerCase();
        t.indexOf(x) === -1 || h === "rel" && f[h].toLowerCase() === "canonical" || x === "rel" && f[x].toLowerCase() === "stylesheet" || (h =
        x), t.indexOf(b) === -1 || b !== "innerHTML" && b !== "cssText" && b !== "itemprop" || (h = b);
      }
      if (!h || !f[h]) return !1;
      var E = f[h].toLowerCase();
      return i[h] || (i[h] = {}), l[h] || (l[h] = {}), !i[h][E] && (l[h][E] = !0, !0);
    }).reverse().forEach(function(f) {
      return r.push(f);
    });
    for (var u = Object.keys(l), c = 0; c < u.length; c += 1) {
      var d = u[c], p = xe({}, i[d], l[d]);
      i[d] = p;
    }
    return r;
  }, []).reverse();
}, "C"), Ty = /* @__PURE__ */ a(function(e, t) {
  if (Array.isArray(e) && e.length) {
    for (var o = 0; o < e.length; o += 1) if (e[o][t]) return !0;
  }
  return !1;
}, "O"), gl = /* @__PURE__ */ a(function(e) {
  return Array.isArray(e) ? e.join("") : e;
}, "S"), li = /* @__PURE__ */ a(function(e, t) {
  return Array.isArray(e) ? e.reduce(function(o, i) {
    return function(r, n) {
      for (var l = Object.keys(r), u = 0; u < l.length; u += 1) if (n[l[u]] && n[l[u]].includes(r[l[u]])) return !0;
      return !1;
    }(i, t) ? o.priority.push(i) : o.default.push(i), o;
  }, { priority: [], default: [] }) : { default: e };
}, "E"), cl = /* @__PURE__ */ a(function(e, t) {
  var o;
  return xe({}, e, ((o = {})[t] = void 0, o));
}, "I"), Cy = [X.NOSCRIPT, X.SCRIPT, X.STYLE], ui = /* @__PURE__ */ a(function(e, t) {
  return t === void 0 && (t = !0), t === !1 ? String(e) : String(e).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(
  /"/g, "&quot;").replace(/'/g, "&#x27;");
}, "w"), pl = /* @__PURE__ */ a(function(e) {
  return Object.keys(e).reduce(function(t, o) {
    var i = e[o] !== void 0 ? o + '="' + e[o] + '"' : "" + o;
    return t ? t + " " + i : i;
  }, "");
}, "x"), dl = /* @__PURE__ */ a(function(e, t) {
  return t === void 0 && (t = {}), Object.keys(e).reduce(function(o, i) {
    return o[gr[i] || i] = e[i], o;
  }, t);
}, "L"), hr = /* @__PURE__ */ a(function(e, t) {
  return t.map(function(o, i) {
    var r, n = ((r = { key: i })["data-rh"] = !0, r);
    return Object.keys(o).forEach(function(l) {
      var u = gr[l] || l;
      u === "innerHTML" || u === "cssText" ? n.dangerouslySetInnerHTML = { __html: o.innerHTML || o.cssText } : n[u] = o[l];
    }), s.createElement(e, n);
  });
}, "j"), Ke = /* @__PURE__ */ a(function(e, t, o) {
  switch (e) {
    case X.TITLE:
      return { toComponent: /* @__PURE__ */ a(function() {
        return r = t.titleAttributes, (n = { key: i = t.title })["data-rh"] = !0, l = dl(r, n), [s.createElement(X.TITLE, l, i)];
        var i, r, n, l;
      }, "toComponent"), toString: /* @__PURE__ */ a(function() {
        return function(i, r, n, l) {
          var u = pl(n), c = gl(r);
          return u ? "<" + i + ' data-rh="true" ' + u + ">" + ui(c, l) + "</" + i + ">" : "<" + i + ' data-rh="true">' + ui(c, l) + "</" + i +
          ">";
        }(e, t.title, t.titleAttributes, o);
      }, "toString") };
    case "bodyAttributes":
    case "htmlAttributes":
      return { toComponent: /* @__PURE__ */ a(function() {
        return dl(t);
      }, "toComponent"), toString: /* @__PURE__ */ a(function() {
        return pl(t);
      }, "toString") };
    default:
      return { toComponent: /* @__PURE__ */ a(function() {
        return hr(e, t);
      }, "toComponent"), toString: /* @__PURE__ */ a(function() {
        return function(i, r, n) {
          return r.reduce(function(l, u) {
            var c = Object.keys(u).filter(function(f) {
              return !(f === "innerHTML" || f === "cssText");
            }).reduce(function(f, h) {
              var y = u[h] === void 0 ? h : h + '="' + ui(u[h], n) + '"';
              return f ? f + " " + y : y;
            }, ""), d = u.innerHTML || u.cssText || "", p = Cy.indexOf(i) === -1;
            return l + "<" + i + ' data-rh="true" ' + c + (p ? "/>" : ">" + d + "</" + i + ">");
          }, "");
        }(e, t, o);
      }, "toString") };
  }
}, "M"), fi = /* @__PURE__ */ a(function(e) {
  var t = e.baseTag, o = e.bodyAttributes, i = e.encode, r = e.htmlAttributes, n = e.noscriptTags, l = e.styleTags, u = e.title, c = u === void 0 ?
  "" : u, d = e.titleAttributes, p = e.linkTags, f = e.metaTags, h = e.scriptTags, y = { toComponent: /* @__PURE__ */ a(function() {
  }, "toComponent"), toString: /* @__PURE__ */ a(function() {
    return "";
  }, "toString") };
  if (e.prioritizeSeoTags) {
    var m = function(b) {
      var x = b.linkTags, E = b.scriptTags, g = b.encode, v = li(b.metaTags, xy), S = li(x, by), w = li(E, vy);
      return { priorityMethods: { toComponent: /* @__PURE__ */ a(function() {
        return [].concat(hr(X.META, v.priority), hr(X.LINK, S.priority), hr(X.SCRIPT, w.priority));
      }, "toComponent"), toString: /* @__PURE__ */ a(function() {
        return Ke(X.META, v.priority, g) + " " + Ke(X.LINK, S.priority, g) + " " + Ke(X.SCRIPT, w.priority, g);
      }, "toString") }, metaTags: v.default, linkTags: S.default, scriptTags: w.default };
    }(e);
    y = m.priorityMethods, p = m.linkTags, f = m.metaTags, h = m.scriptTags;
  }
  return { priority: y, base: Ke(X.BASE, t, i), bodyAttributes: Ke("bodyAttributes", o, i), htmlAttributes: Ke("htmlAttributes", r, i), link: Ke(
  X.LINK, p, i), meta: Ke(X.META, f, i), noscript: Ke(X.NOSCRIPT, n, i), script: Ke(X.SCRIPT, h, i), style: Ke(X.STYLE, l, i), title: Ke(X.TITLE,
  { title: c, titleAttributes: d }, i) };
}, "k"), mr = [], mi = /* @__PURE__ */ a(function(e, t) {
  var o = this;
  t === void 0 && (t = typeof document < "u"), this.instances = [], this.value = { setHelmet: /* @__PURE__ */ a(function(i) {
    o.context.helmet = i;
  }, "setHelmet"), helmetInstances: { get: /* @__PURE__ */ a(function() {
    return o.canUseDOM ? mr : o.instances;
  }, "get"), add: /* @__PURE__ */ a(function(i) {
    (o.canUseDOM ? mr : o.instances).push(i);
  }, "add"), remove: /* @__PURE__ */ a(function(i) {
    var r = (o.canUseDOM ? mr : o.instances).indexOf(i);
    (o.canUseDOM ? mr : o.instances).splice(r, 1);
  }, "remove") } }, this.context = e, this.canUseDOM = t, t || (e.helmet = fi({ baseTag: [], bodyAttributes: {}, encodeSpecialCharacters: !0,
  htmlAttributes: {}, linkTags: [], metaTags: [], noscriptTags: [], scriptTags: [], styleTags: [], title: "", titleAttributes: {} }));
}, "N"), yl = s.createContext({}), _y = ne.default.shape({ setHelmet: ne.default.func, helmetInstances: ne.default.shape({ get: ne.default.func,
add: ne.default.func, remove: ne.default.func }) }), ky = typeof document < "u", vt = /* @__PURE__ */ function(e) {
  function t(o) {
    var i;
    return (i = e.call(this, o) || this).helmetData = new mi(i.props.context, t.canUseDOM), i;
  }
  return a(t, "r"), hi(t, e), t.prototype.render = function() {
    return s.createElement(yl.Provider, { value: this.helmetData.value }, this.props.children);
  }, t;
}(Le);
vt.canUseDOM = ky, vt.propTypes = { context: ne.default.shape({ helmet: ne.default.shape() }), children: ne.default.node.isRequired }, vt.defaultProps =
{ context: {} }, vt.displayName = "HelmetProvider";
var oo = /* @__PURE__ */ a(function(e, t) {
  var o, i = document.head || document.querySelector(X.HEAD), r = i.querySelectorAll(e + "[data-rh]"), n = [].slice.call(r), l = [];
  return t && t.length && t.forEach(function(u) {
    var c = document.createElement(e);
    for (var d in u) Object.prototype.hasOwnProperty.call(u, d) && (d === "innerHTML" ? c.innerHTML = u.innerHTML : d === "cssText" ? c.styleSheet ?
    c.styleSheet.cssText = u.cssText : c.appendChild(document.createTextNode(u.cssText)) : c.setAttribute(d, u[d] === void 0 ? "" : u[d]));
    c.setAttribute("data-rh", "true"), n.some(function(p, f) {
      return o = f, c.isEqualNode(p);
    }) ? n.splice(o, 1) : l.push(c);
  }), n.forEach(function(u) {
    return u.parentNode.removeChild(u);
  }), l.forEach(function(u) {
    return i.appendChild(u);
  }), { oldTags: n, newTags: l };
}, "Y"), ci = /* @__PURE__ */ a(function(e, t) {
  var o = document.getElementsByTagName(e)[0];
  if (o) {
    for (var i = o.getAttribute("data-rh"), r = i ? i.split(",") : [], n = [].concat(r), l = Object.keys(t), u = 0; u < l.length; u += 1) {
      var c = l[u], d = t[c] || "";
      o.getAttribute(c) !== d && o.setAttribute(c, d), r.indexOf(c) === -1 && r.push(c);
      var p = n.indexOf(c);
      p !== -1 && n.splice(p, 1);
    }
    for (var f = n.length - 1; f >= 0; f -= 1) o.removeAttribute(n[f]);
    r.length === n.length ? o.removeAttribute("data-rh") : o.getAttribute("data-rh") !== l.join(",") && o.setAttribute("data-rh", l.join(","));
  }
}, "B"), fl = /* @__PURE__ */ a(function(e, t) {
  var o = e.baseTag, i = e.htmlAttributes, r = e.linkTags, n = e.metaTags, l = e.noscriptTags, u = e.onChangeClientState, c = e.scriptTags, d = e.
  styleTags, p = e.title, f = e.titleAttributes;
  ci(X.BODY, e.bodyAttributes), ci(X.HTML, i), function(b, x) {
    b !== void 0 && document.title !== b && (document.title = gl(b)), ci(X.TITLE, x);
  }(p, f);
  var h = { baseTag: oo(X.BASE, o), linkTags: oo(X.LINK, r), metaTags: oo(X.META, n), noscriptTags: oo(X.NOSCRIPT, l), scriptTags: oo(X.SCRIPT,
  c), styleTags: oo(X.STYLE, d) }, y = {}, m = {};
  Object.keys(h).forEach(function(b) {
    var x = h[b], E = x.newTags, g = x.oldTags;
    E.length && (y[b] = E), g.length && (m[b] = h[b].oldTags);
  }), t && t(), u(e, y, m);
}, "K"), _o = null, yr = /* @__PURE__ */ function(e) {
  function t() {
    for (var i, r = arguments.length, n = new Array(r), l = 0; l < r; l++) n[l] = arguments[l];
    return (i = e.call.apply(e, [this].concat(n)) || this).rendered = !1, i;
  }
  a(t, "e"), hi(t, e);
  var o = t.prototype;
  return o.shouldComponentUpdate = function(i) {
    return !(0, hl.default)(i, this.props);
  }, o.componentDidUpdate = function() {
    this.emitChange();
  }, o.componentWillUnmount = function() {
    this.props.context.helmetInstances.remove(this), this.emitChange();
  }, o.emitChange = function() {
    var i, r, n = this.props.context, l = n.setHelmet, u = null, c = (i = n.helmetInstances.get().map(function(d) {
      var p = xe({}, d.props);
      return delete p.context, p;
    }), { baseTag: Ey(["href"], i), bodyAttributes: ai("bodyAttributes", i), defer: ro(i, "defer"), encode: ro(i, "encodeSpecialCharacters"),
    htmlAttributes: ai("htmlAttributes", i), linkTags: Co(X.LINK, ["rel", "href"], i), metaTags: Co(X.META, ["name", "charset", "http-equiv",
    "property", "itemprop"], i), noscriptTags: Co(X.NOSCRIPT, ["innerHTML"], i), onChangeClientState: wy(i), scriptTags: Co(X.SCRIPT, ["src",
    "innerHTML"], i), styleTags: Co(X.STYLE, ["cssText"], i), title: Sy(i), titleAttributes: ai("titleAttributes", i), prioritizeSeoTags: Ty(
    i, "prioritizeSeoTags") });
    vt.canUseDOM ? (r = c, _o && cancelAnimationFrame(_o), r.defer ? _o = requestAnimationFrame(function() {
      fl(r, function() {
        _o = null;
      });
    }) : (fl(r), _o = null)) : fi && (u = fi(c)), l(u);
  }, o.init = function() {
    this.rendered || (this.rendered = !0, this.props.context.helmetInstances.add(this), this.emitChange());
  }, o.render = function() {
    return this.init(), null;
  }, t;
}(Le);
yr.propTypes = { context: _y.isRequired }, yr.displayName = "HelmetDispatcher";
var Oy = ["children"], Py = ["children"], ko = /* @__PURE__ */ function(e) {
  function t() {
    return e.apply(this, arguments) || this;
  }
  a(t, "r"), hi(t, e);
  var o = t.prototype;
  return o.shouldComponentUpdate = function(i) {
    return !(0, ml.default)(cl(this.props, "helmetData"), cl(i, "helmetData"));
  }, o.mapNestedChildrenToProps = function(i, r) {
    if (!r) return null;
    switch (i.type) {
      case X.SCRIPT:
      case X.NOSCRIPT:
        return { innerHTML: r };
      case X.STYLE:
        return { cssText: r };
      default:
        throw new Error("<" + i.type + " /> elements are self-closing and can not contain children. Refer to our API for more information.");
    }
  }, o.flattenArrayTypeChildren = function(i) {
    var r, n = i.child, l = i.arrayTypeChildren;
    return xe({}, l, ((r = {})[n.type] = [].concat(l[n.type] || [], [xe({}, i.newChildProps, this.mapNestedChildrenToProps(n, i.nestedChildren))]),
    r));
  }, o.mapObjectTypeChildren = function(i) {
    var r, n, l = i.child, u = i.newProps, c = i.newChildProps, d = i.nestedChildren;
    switch (l.type) {
      case X.TITLE:
        return xe({}, u, ((r = {})[l.type] = d, r.titleAttributes = xe({}, c), r));
      case X.BODY:
        return xe({}, u, { bodyAttributes: xe({}, c) });
      case X.HTML:
        return xe({}, u, { htmlAttributes: xe({}, c) });
      default:
        return xe({}, u, ((n = {})[l.type] = xe({}, c), n));
    }
  }, o.mapArrayTypeChildrenToProps = function(i, r) {
    var n = xe({}, r);
    return Object.keys(i).forEach(function(l) {
      var u;
      n = xe({}, n, ((u = {})[l] = i[l], u));
    }), n;
  }, o.warnOnInvalidChildren = function(i, r) {
    return (0, pi.default)(ul.some(function(n) {
      return i.type === n;
    }), typeof i.type == "function" ? "You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to o\
ur API for more information." : "Only elements types " + ul.join(", ") + " are allowed. Helmet does not support rendering <" + i.type + "> e\
lements. Refer to our API for more information."), (0, pi.default)(!r || typeof r == "string" || Array.isArray(r) && !r.some(function(n) {
      return typeof n != "string";
    }), "Helmet expects a string as a child of <" + i.type + ">. Did you forget to wrap your children in braces? ( <" + i.type + ">{``}</" +
    i.type + "> ) Refer to our API for more information."), !0;
  }, o.mapChildrenToProps = function(i, r) {
    var n = this, l = {};
    return s.Children.forEach(i, function(u) {
      if (u && u.props) {
        var c = u.props, d = c.children, p = ll(c, Oy), f = Object.keys(p).reduce(function(y, m) {
          return y[Iy[m] || m] = p[m], y;
        }, {}), h = u.type;
        switch (typeof h == "symbol" ? h = h.toString() : n.warnOnInvalidChildren(u, d), h) {
          case X.FRAGMENT:
            r = n.mapChildrenToProps(d, r);
            break;
          case X.LINK:
          case X.META:
          case X.NOSCRIPT:
          case X.SCRIPT:
          case X.STYLE:
            l = n.flattenArrayTypeChildren({ child: u, arrayTypeChildren: l, newChildProps: f, nestedChildren: d });
            break;
          default:
            r = n.mapObjectTypeChildren({ child: u, newProps: r, newChildProps: f, nestedChildren: d });
        }
      }
    }), this.mapArrayTypeChildrenToProps(l, r);
  }, o.render = function() {
    var i = this.props, r = i.children, n = ll(i, Py), l = xe({}, n), u = n.helmetData;
    return r && (l = this.mapChildrenToProps(r, l)), !u || u instanceof mi || (u = new mi(u.context, u.instances)), u ? /* @__PURE__ */ s.createElement(
    yr, xe({}, l, { context: u.value, helmetData: void 0 })) : /* @__PURE__ */ s.createElement(yl.Consumer, null, function(c) {
      return s.createElement(yr, xe({}, l, { context: c }));
    });
  }, t;
}(Le);
ko.propTypes = { base: ne.default.object, bodyAttributes: ne.default.object, children: ne.default.oneOfType([ne.default.arrayOf(ne.default.node),
ne.default.node]), defaultTitle: ne.default.string, defer: ne.default.bool, encodeSpecialCharacters: ne.default.bool, htmlAttributes: ne.default.
object, link: ne.default.arrayOf(ne.default.object), meta: ne.default.arrayOf(ne.default.object), noscript: ne.default.arrayOf(ne.default.object),
onChangeClientState: ne.default.func, script: ne.default.arrayOf(ne.default.object), style: ne.default.arrayOf(ne.default.object), title: ne.default.
string, titleAttributes: ne.default.object, titleTemplate: ne.default.string, prioritizeSeoTags: ne.default.bool, helmetData: ne.default.object },
ko.defaultProps = { defer: !0, encodeSpecialCharacters: !0, prioritizeSeoTags: !1 }, ko.displayName = "Helmet";

// src/manager/constants.ts
var Qe = "@media (min-width: 600px)";

// src/manager/hooks/useMedia.tsx
function bl(e) {
  let t = /* @__PURE__ */ a((n) => typeof window < "u" ? window.matchMedia(n).matches : !1, "getMatches"), [o, i] = K(t(e));
  function r() {
    i(t(e));
  }
  return a(r, "handleChange"), H(() => {
    let n = window.matchMedia(e);
    return r(), n.addEventListener("change", r), () => {
      n.removeEventListener("change", r);
    };
  }, [e]), o;
}
a(bl, "useMediaQuery");

// src/manager/components/layout/LayoutProvider.tsx
var vl = Qt({
  isMobileMenuOpen: !1,
  setMobileMenuOpen: /* @__PURE__ */ a(() => {
  }, "setMobileMenuOpen"),
  isMobileAboutOpen: !1,
  setMobileAboutOpen: /* @__PURE__ */ a(() => {
  }, "setMobileAboutOpen"),
  isMobilePanelOpen: !1,
  setMobilePanelOpen: /* @__PURE__ */ a(() => {
  }, "setMobilePanelOpen"),
  isDesktop: !1,
  isMobile: !1
}), xl = /* @__PURE__ */ a(({ children: e }) => {
  let [t, o] = K(!1), [i, r] = K(!1), [n, l] = K(!1), u = bl(`(min-width: ${600}px)`), c = !u, d = G(
    () => ({
      isMobileMenuOpen: t,
      setMobileMenuOpen: o,
      isMobileAboutOpen: i,
      setMobileAboutOpen: r,
      isMobilePanelOpen: n,
      setMobilePanelOpen: l,
      isDesktop: u,
      isMobile: c
    }),
    [
      t,
      o,
      i,
      r,
      n,
      l,
      u,
      c
    ]
  );
  return /* @__PURE__ */ s.createElement(vl.Provider, { value: d }, e);
}, "LayoutProvider"), ge = /* @__PURE__ */ a(() => qo(vl), "useLayout");

// ../node_modules/@babel/runtime/helpers/esm/extends.js
function j() {
  return j = Object.assign ? Object.assign.bind() : function(e) {
    for (var t = 1; t < arguments.length; t++) {
      var o = arguments[t];
      for (var i in o) ({}).hasOwnProperty.call(o, i) && (e[i] = o[i]);
    }
    return e;
  }, j.apply(null, arguments);
}
a(j, "_extends");

// ../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js
function Il(e) {
  if (e === void 0) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
  return e;
}
a(Il, "_assertThisInitialized");

// ../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js
function xt(e, t) {
  return xt = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(o, i) {
    return o.__proto__ = i, o;
  }, xt(e, t);
}
a(xt, "_setPrototypeOf");

// ../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js
function no(e, t) {
  e.prototype = Object.create(t.prototype), e.prototype.constructor = e, xt(e, t);
}
a(no, "_inheritsLoose");

// ../node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
function br(e) {
  return br = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(t) {
    return t.__proto__ || Object.getPrototypeOf(t);
  }, br(e);
}
a(br, "_getPrototypeOf");

// ../node_modules/@babel/runtime/helpers/esm/isNativeFunction.js
function Sl(e) {
  try {
    return Function.toString.call(e).indexOf("[native code]") !== -1;
  } catch {
    return typeof e == "function";
  }
}
a(Sl, "_isNativeFunction");

// ../node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js
function gi() {
  try {
    var e = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {
    }));
  } catch {
  }
  return (gi = /* @__PURE__ */ a(function() {
    return !!e;
  }, "_isNativeReflectConstruct"))();
}
a(gi, "_isNativeReflectConstruct");

// ../node_modules/@babel/runtime/helpers/esm/construct.js
function wl(e, t, o) {
  if (gi()) return Reflect.construct.apply(null, arguments);
  var i = [null];
  i.push.apply(i, t);
  var r = new (e.bind.apply(e, i))();
  return o && xt(r, o.prototype), r;
}
a(wl, "_construct");

// ../node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js
function vr(e) {
  var t = typeof Map == "function" ? /* @__PURE__ */ new Map() : void 0;
  return vr = /* @__PURE__ */ a(function(i) {
    if (i === null || !Sl(i)) return i;
    if (typeof i != "function") throw new TypeError("Super expression must either be null or a function");
    if (t !== void 0) {
      if (t.has(i)) return t.get(i);
      t.set(i, r);
    }
    function r() {
      return wl(i, arguments, br(this).constructor);
    }
    return a(r, "Wrapper"), r.prototype = Object.create(i.prototype, {
      constructor: {
        value: r,
        enumerable: !1,
        writable: !0,
        configurable: !0
      }
    }), xt(r, i);
  }, "_wrapNativeSuper"), vr(e);
}
a(vr, "_wrapNativeSuper");

// ../node_modules/polished/dist/polished.esm.js
var Fe = /* @__PURE__ */ function(e) {
  no(t, e);
  function t(o) {
    var i;
    if (1)
      i = e.call(this, "An error occurred. See https://github.com/styled-components/polished/blob/main/src/internalHelpers/errors.md#" + o +
      " for more information.") || this;
    else
      for (var r, n, l; l < r; l++)
        ;
    return Il(i);
  }
  return a(t, "PolishedError"), t;
}(/* @__PURE__ */ vr(Error));
function El(e, t) {
  return e.substr(-t.length) === t;
}
a(El, "endsWith");
var Ay = /^([+-]?(?:\d+|\d*\.\d+))([a-z]*|%)$/;
function Tl(e) {
  if (typeof e != "string") return e;
  var t = e.match(Ay);
  return t ? parseFloat(e) : e;
}
a(Tl, "stripUnit");
var Dy = /* @__PURE__ */ a(function(t) {
  return function(o, i) {
    i === void 0 && (i = "16px");
    var r = o, n = i;
    if (typeof o == "string") {
      if (!El(o, "px"))
        throw new Fe(69, t, o);
      r = Tl(o);
    }
    if (typeof i == "string") {
      if (!El(i, "px"))
        throw new Fe(70, t, i);
      n = Tl(i);
    }
    if (typeof r == "string")
      throw new Fe(71, o, t);
    if (typeof n == "string")
      throw new Fe(72, i, t);
    return "" + r / n + t;
  };
}, "pxtoFactory"), _l = Dy, k1 = _l("em");
var O1 = _l("rem");
function yi(e) {
  return Math.round(e * 255);
}
a(yi, "colorToInt");
function My(e, t, o) {
  return yi(e) + "," + yi(t) + "," + yi(o);
}
a(My, "convertToInt");
function Oo(e, t, o, i) {
  if (i === void 0 && (i = My), t === 0)
    return i(o, o, o);
  var r = (e % 360 + 360) % 360 / 60, n = (1 - Math.abs(2 * o - 1)) * t, l = n * (1 - Math.abs(r % 2 - 1)), u = 0, c = 0, d = 0;
  r >= 0 && r < 1 ? (u = n, c = l) : r >= 1 && r < 2 ? (u = l, c = n) : r >= 2 && r < 3 ? (c = n, d = l) : r >= 3 && r < 4 ? (c = l, d = n) :
  r >= 4 && r < 5 ? (u = l, d = n) : r >= 5 && r < 6 && (u = n, d = l);
  var p = o - n / 2, f = u + p, h = c + p, y = d + p;
  return i(f, h, y);
}
a(Oo, "hslToRgb");
var Cl = {
  aliceblue: "f0f8ff",
  antiquewhite: "faebd7",
  aqua: "00ffff",
  aquamarine: "7fffd4",
  azure: "f0ffff",
  beige: "f5f5dc",
  bisque: "ffe4c4",
  black: "000",
  blanchedalmond: "ffebcd",
  blue: "0000ff",
  blueviolet: "8a2be2",
  brown: "a52a2a",
  burlywood: "deb887",
  cadetblue: "5f9ea0",
  chartreuse: "7fff00",
  chocolate: "d2691e",
  coral: "ff7f50",
  cornflowerblue: "6495ed",
  cornsilk: "fff8dc",
  crimson: "dc143c",
  cyan: "00ffff",
  darkblue: "00008b",
  darkcyan: "008b8b",
  darkgoldenrod: "b8860b",
  darkgray: "a9a9a9",
  darkgreen: "006400",
  darkgrey: "a9a9a9",
  darkkhaki: "bdb76b",
  darkmagenta: "8b008b",
  darkolivegreen: "556b2f",
  darkorange: "ff8c00",
  darkorchid: "9932cc",
  darkred: "8b0000",
  darksalmon: "e9967a",
  darkseagreen: "8fbc8f",
  darkslateblue: "483d8b",
  darkslategray: "2f4f4f",
  darkslategrey: "2f4f4f",
  darkturquoise: "00ced1",
  darkviolet: "9400d3",
  deeppink: "ff1493",
  deepskyblue: "00bfff",
  dimgray: "696969",
  dimgrey: "696969",
  dodgerblue: "1e90ff",
  firebrick: "b22222",
  floralwhite: "fffaf0",
  forestgreen: "228b22",
  fuchsia: "ff00ff",
  gainsboro: "dcdcdc",
  ghostwhite: "f8f8ff",
  gold: "ffd700",
  goldenrod: "daa520",
  gray: "808080",
  green: "008000",
  greenyellow: "adff2f",
  grey: "808080",
  honeydew: "f0fff0",
  hotpink: "ff69b4",
  indianred: "cd5c5c",
  indigo: "4b0082",
  ivory: "fffff0",
  khaki: "f0e68c",
  lavender: "e6e6fa",
  lavenderblush: "fff0f5",
  lawngreen: "7cfc00",
  lemonchiffon: "fffacd",
  lightblue: "add8e6",
  lightcoral: "f08080",
  lightcyan: "e0ffff",
  lightgoldenrodyellow: "fafad2",
  lightgray: "d3d3d3",
  lightgreen: "90ee90",
  lightgrey: "d3d3d3",
  lightpink: "ffb6c1",
  lightsalmon: "ffa07a",
  lightseagreen: "20b2aa",
  lightskyblue: "87cefa",
  lightslategray: "789",
  lightslategrey: "789",
  lightsteelblue: "b0c4de",
  lightyellow: "ffffe0",
  lime: "0f0",
  limegreen: "32cd32",
  linen: "faf0e6",
  magenta: "f0f",
  maroon: "800000",
  mediumaquamarine: "66cdaa",
  mediumblue: "0000cd",
  mediumorchid: "ba55d3",
  mediumpurple: "9370db",
  mediumseagreen: "3cb371",
  mediumslateblue: "7b68ee",
  mediumspringgreen: "00fa9a",
  mediumturquoise: "48d1cc",
  mediumvioletred: "c71585",
  midnightblue: "191970",
  mintcream: "f5fffa",
  mistyrose: "ffe4e1",
  moccasin: "ffe4b5",
  navajowhite: "ffdead",
  navy: "000080",
  oldlace: "fdf5e6",
  olive: "808000",
  olivedrab: "6b8e23",
  orange: "ffa500",
  orangered: "ff4500",
  orchid: "da70d6",
  palegoldenrod: "eee8aa",
  palegreen: "98fb98",
  paleturquoise: "afeeee",
  palevioletred: "db7093",
  papayawhip: "ffefd5",
  peachpuff: "ffdab9",
  peru: "cd853f",
  pink: "ffc0cb",
  plum: "dda0dd",
  powderblue: "b0e0e6",
  purple: "800080",
  rebeccapurple: "639",
  red: "f00",
  rosybrown: "bc8f8f",
  royalblue: "4169e1",
  saddlebrown: "8b4513",
  salmon: "fa8072",
  sandybrown: "f4a460",
  seagreen: "2e8b57",
  seashell: "fff5ee",
  sienna: "a0522d",
  silver: "c0c0c0",
  skyblue: "87ceeb",
  slateblue: "6a5acd",
  slategray: "708090",
  slategrey: "708090",
  snow: "fffafa",
  springgreen: "00ff7f",
  steelblue: "4682b4",
  tan: "d2b48c",
  teal: "008080",
  thistle: "d8bfd8",
  tomato: "ff6347",
  turquoise: "40e0d0",
  violet: "ee82ee",
  wheat: "f5deb3",
  white: "fff",
  whitesmoke: "f5f5f5",
  yellow: "ff0",
  yellowgreen: "9acd32"
};
function Ly(e) {
  if (typeof e != "string") return e;
  var t = e.toLowerCase();
  return Cl[t] ? "#" + Cl[t] : e;
}
a(Ly, "nameToHex");
var Ny = /^#[a-fA-F0-9]{6}$/, Fy = /^#[a-fA-F0-9]{8}$/, Ry = /^#[a-fA-F0-9]{3}$/, By = /^#[a-fA-F0-9]{4}$/, bi = /^rgb\(\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*\)$/i,
Hy = /^rgb(?:a)?\(\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,|\/)\s*([-+]?\d*[.]?\d+[%]?)\s*\)$/i, zy = /^hsl\(\s*(\d{0,3}[.]?[0-9]+(?:deg)?)\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*\)$/i,
Wy = /^hsl(?:a)?\(\s*(\d{0,3}[.]?[0-9]+(?:deg)?)\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,|\/)\s*([-+]?\d*[.]?\d+[%]?)\s*\)$/i;
function io(e) {
  if (typeof e != "string")
    throw new Fe(3);
  var t = Ly(e);
  if (t.match(Ny))
    return {
      red: parseInt("" + t[1] + t[2], 16),
      green: parseInt("" + t[3] + t[4], 16),
      blue: parseInt("" + t[5] + t[6], 16)
    };
  if (t.match(Fy)) {
    var o = parseFloat((parseInt("" + t[7] + t[8], 16) / 255).toFixed(2));
    return {
      red: parseInt("" + t[1] + t[2], 16),
      green: parseInt("" + t[3] + t[4], 16),
      blue: parseInt("" + t[5] + t[6], 16),
      alpha: o
    };
  }
  if (t.match(Ry))
    return {
      red: parseInt("" + t[1] + t[1], 16),
      green: parseInt("" + t[2] + t[2], 16),
      blue: parseInt("" + t[3] + t[3], 16)
    };
  if (t.match(By)) {
    var i = parseFloat((parseInt("" + t[4] + t[4], 16) / 255).toFixed(2));
    return {
      red: parseInt("" + t[1] + t[1], 16),
      green: parseInt("" + t[2] + t[2], 16),
      blue: parseInt("" + t[3] + t[3], 16),
      alpha: i
    };
  }
  var r = bi.exec(t);
  if (r)
    return {
      red: parseInt("" + r[1], 10),
      green: parseInt("" + r[2], 10),
      blue: parseInt("" + r[3], 10)
    };
  var n = Hy.exec(t.substring(0, 50));
  if (n)
    return {
      red: parseInt("" + n[1], 10),
      green: parseInt("" + n[2], 10),
      blue: parseInt("" + n[3], 10),
      alpha: parseFloat("" + n[4]) > 1 ? parseFloat("" + n[4]) / 100 : parseFloat("" + n[4])
    };
  var l = zy.exec(t);
  if (l) {
    var u = parseInt("" + l[1], 10), c = parseInt("" + l[2], 10) / 100, d = parseInt("" + l[3], 10) / 100, p = "rgb(" + Oo(u, c, d) + ")", f = bi.
    exec(p);
    if (!f)
      throw new Fe(4, t, p);
    return {
      red: parseInt("" + f[1], 10),
      green: parseInt("" + f[2], 10),
      blue: parseInt("" + f[3], 10)
    };
  }
  var h = Wy.exec(t.substring(0, 50));
  if (h) {
    var y = parseInt("" + h[1], 10), m = parseInt("" + h[2], 10) / 100, b = parseInt("" + h[3], 10) / 100, x = "rgb(" + Oo(y, m, b) + ")", E = bi.
    exec(x);
    if (!E)
      throw new Fe(4, t, x);
    return {
      red: parseInt("" + E[1], 10),
      green: parseInt("" + E[2], 10),
      blue: parseInt("" + E[3], 10),
      alpha: parseFloat("" + h[4]) > 1 ? parseFloat("" + h[4]) / 100 : parseFloat("" + h[4])
    };
  }
  throw new Fe(5);
}
a(io, "parseToRgb");
function Vy(e) {
  var t = e.red / 255, o = e.green / 255, i = e.blue / 255, r = Math.max(t, o, i), n = Math.min(t, o, i), l = (r + n) / 2;
  if (r === n)
    return e.alpha !== void 0 ? {
      hue: 0,
      saturation: 0,
      lightness: l,
      alpha: e.alpha
    } : {
      hue: 0,
      saturation: 0,
      lightness: l
    };
  var u, c = r - n, d = l > 0.5 ? c / (2 - r - n) : c / (r + n);
  switch (r) {
    case t:
      u = (o - i) / c + (o < i ? 6 : 0);
      break;
    case o:
      u = (i - t) / c + 2;
      break;
    default:
      u = (t - o) / c + 4;
      break;
  }
  return u *= 60, e.alpha !== void 0 ? {
    hue: u,
    saturation: d,
    lightness: l,
    alpha: e.alpha
  } : {
    hue: u,
    saturation: d,
    lightness: l
  };
}
a(Vy, "rgbToHsl");
function It(e) {
  return Vy(io(e));
}
a(It, "parseToHsl");
var jy = /* @__PURE__ */ a(function(t) {
  return t.length === 7 && t[1] === t[2] && t[3] === t[4] && t[5] === t[6] ? "#" + t[1] + t[3] + t[5] : t;
}, "reduceHexValue"), xi = jy;
function Lt(e) {
  var t = e.toString(16);
  return t.length === 1 ? "0" + t : t;
}
a(Lt, "numberToHex");
function vi(e) {
  return Lt(Math.round(e * 255));
}
a(vi, "colorToHex");
function Ky(e, t, o) {
  return xi("#" + vi(e) + vi(t) + vi(o));
}
a(Ky, "convertToHex");
function xr(e, t, o) {
  return Oo(e, t, o, Ky);
}
a(xr, "hslToHex");
function $y(e, t, o) {
  if (typeof e == "number" && typeof t == "number" && typeof o == "number")
    return xr(e, t, o);
  if (typeof e == "object" && t === void 0 && o === void 0)
    return xr(e.hue, e.saturation, e.lightness);
  throw new Fe(1);
}
a($y, "hsl");
function Uy(e, t, o, i) {
  if (typeof e == "number" && typeof t == "number" && typeof o == "number" && typeof i == "number")
    return i >= 1 ? xr(e, t, o) : "rgba(" + Oo(e, t, o) + "," + i + ")";
  if (typeof e == "object" && t === void 0 && o === void 0 && i === void 0)
    return e.alpha >= 1 ? xr(e.hue, e.saturation, e.lightness) : "rgba(" + Oo(e.hue, e.saturation, e.lightness) + "," + e.alpha + ")";
  throw new Fe(2);
}
a(Uy, "hsla");
function Ii(e, t, o) {
  if (typeof e == "number" && typeof t == "number" && typeof o == "number")
    return xi("#" + Lt(e) + Lt(t) + Lt(o));
  if (typeof e == "object" && t === void 0 && o === void 0)
    return xi("#" + Lt(e.red) + Lt(e.green) + Lt(e.blue));
  throw new Fe(6);
}
a(Ii, "rgb");
function so(e, t, o, i) {
  if (typeof e == "string" && typeof t == "number") {
    var r = io(e);
    return "rgba(" + r.red + "," + r.green + "," + r.blue + "," + t + ")";
  } else {
    if (typeof e == "number" && typeof t == "number" && typeof o == "number" && typeof i == "number")
      return i >= 1 ? Ii(e, t, o) : "rgba(" + e + "," + t + "," + o + "," + i + ")";
    if (typeof e == "object" && t === void 0 && o === void 0 && i === void 0)
      return e.alpha >= 1 ? Ii(e.red, e.green, e.blue) : "rgba(" + e.red + "," + e.green + "," + e.blue + "," + e.alpha + ")";
  }
  throw new Fe(7);
}
a(so, "rgba");
var Gy = /* @__PURE__ */ a(function(t) {
  return typeof t.red == "number" && typeof t.green == "number" && typeof t.blue == "number" && (typeof t.alpha != "number" || typeof t.alpha >
  "u");
}, "isRgb"), qy = /* @__PURE__ */ a(function(t) {
  return typeof t.red == "number" && typeof t.green == "number" && typeof t.blue == "number" && typeof t.alpha == "number";
}, "isRgba"), Yy = /* @__PURE__ */ a(function(t) {
  return typeof t.hue == "number" && typeof t.saturation == "number" && typeof t.lightness == "number" && (typeof t.alpha != "number" || typeof t.
  alpha > "u");
}, "isHsl"), Qy = /* @__PURE__ */ a(function(t) {
  return typeof t.hue == "number" && typeof t.saturation == "number" && typeof t.lightness == "number" && typeof t.alpha == "number";
}, "isHsla");
function St(e) {
  if (typeof e != "object") throw new Fe(8);
  if (qy(e)) return so(e);
  if (Gy(e)) return Ii(e);
  if (Qy(e)) return Uy(e);
  if (Yy(e)) return $y(e);
  throw new Fe(8);
}
a(St, "toColorString");
function kl(e, t, o) {
  return /* @__PURE__ */ a(function() {
    var r = o.concat(Array.prototype.slice.call(arguments));
    return r.length >= t ? e.apply(this, r) : kl(e, t, r);
  }, "fn");
}
a(kl, "curried");
function ze(e) {
  return kl(e, e.length, []);
}
a(ze, "curry");
function Xy(e, t) {
  if (t === "transparent") return t;
  var o = It(t);
  return St(j({}, o, {
    hue: o.hue + parseFloat(e)
  }));
}
a(Xy, "adjustHue");
var P1 = ze(Xy);
function ao(e, t, o) {
  return Math.max(e, Math.min(t, o));
}
a(ao, "guard");
function Zy(e, t) {
  if (t === "transparent") return t;
  var o = It(t);
  return St(j({}, o, {
    lightness: ao(0, 1, o.lightness - parseFloat(e))
  }));
}
a(Zy, "darken");
var Jy = ze(Zy), Ir = Jy;
function eb(e, t) {
  if (t === "transparent") return t;
  var o = It(t);
  return St(j({}, o, {
    saturation: ao(0, 1, o.saturation - parseFloat(e))
  }));
}
a(eb, "desaturate");
var A1 = ze(eb);
function tb(e, t) {
  if (t === "transparent") return t;
  var o = It(t);
  return St(j({}, o, {
    lightness: ao(0, 1, o.lightness + parseFloat(e))
  }));
}
a(tb, "lighten");
var ob = ze(tb), Po = ob;
function rb(e, t, o) {
  if (t === "transparent") return o;
  if (o === "transparent") return t;
  if (e === 0) return o;
  var i = io(t), r = j({}, i, {
    alpha: typeof i.alpha == "number" ? i.alpha : 1
  }), n = io(o), l = j({}, n, {
    alpha: typeof n.alpha == "number" ? n.alpha : 1
  }), u = r.alpha - l.alpha, c = parseFloat(e) * 2 - 1, d = c * u === -1 ? c : c + u, p = 1 + c * u, f = (d / p + 1) / 2, h = 1 - f, y = {
    red: Math.floor(r.red * f + l.red * h),
    green: Math.floor(r.green * f + l.green * h),
    blue: Math.floor(r.blue * f + l.blue * h),
    alpha: r.alpha * parseFloat(e) + l.alpha * (1 - parseFloat(e))
  };
  return so(y);
}
a(rb, "mix");
var nb = ze(rb), Ol = nb;
function ib(e, t) {
  if (t === "transparent") return t;
  var o = io(t), i = typeof o.alpha == "number" ? o.alpha : 1, r = j({}, o, {
    alpha: ao(0, 1, (i * 100 + parseFloat(e) * 100) / 100)
  });
  return so(r);
}
a(ib, "opacify");
var D1 = ze(ib);
function sb(e, t) {
  if (t === "transparent") return t;
  var o = It(t);
  return St(j({}, o, {
    saturation: ao(0, 1, o.saturation + parseFloat(e))
  }));
}
a(sb, "saturate");
var M1 = ze(sb);
function ab(e, t) {
  return t === "transparent" ? t : St(j({}, It(t), {
    hue: parseFloat(e)
  }));
}
a(ab, "setHue");
var L1 = ze(ab);
function lb(e, t) {
  return t === "transparent" ? t : St(j({}, It(t), {
    lightness: parseFloat(e)
  }));
}
a(lb, "setLightness");
var N1 = ze(lb);
function ub(e, t) {
  return t === "transparent" ? t : St(j({}, It(t), {
    saturation: parseFloat(e)
  }));
}
a(ub, "setSaturation");
var F1 = ze(ub);
function cb(e, t) {
  return t === "transparent" ? t : Ol(parseFloat(e), "rgb(0, 0, 0)", t);
}
a(cb, "shade");
var R1 = ze(cb);
function pb(e, t) {
  return t === "transparent" ? t : Ol(parseFloat(e), "rgb(255, 255, 255)", t);
}
a(pb, "tint");
var B1 = ze(pb);
function db(e, t) {
  if (t === "transparent") return t;
  var o = io(t), i = typeof o.alpha == "number" ? o.alpha : 1, r = j({}, o, {
    alpha: ao(0, 1, +(i * 100 - parseFloat(e) * 100).toFixed(2) / 100)
  });
  return so(r);
}
a(db, "transparentize");
var fb = ze(db), Te = fb;

// src/manager/components/notifications/NotificationItem.tsx
var mb = Dt({
  "0%": {
    opacity: 0,
    transform: "translateY(30px)"
  },
  "100%": {
    opacity: 1,
    transform: "translateY(0)"
  }
}), hb = Dt({
  "0%": {
    width: "0%"
  },
  "100%": {
    width: "100%"
  }
}), Pl = I.div(
  ({ theme: e }) => ({
    position: "relative",
    display: "flex",
    border: `1px solid ${e.appBorderColor}`,
    padding: "12px 6px 12px 12px",
    borderRadius: e.appBorderRadius + 1,
    alignItems: "center",
    animation: `${mb} 500ms`,
    background: e.base === "light" ? "hsla(203, 50%, 20%, .97)" : "hsla(203, 30%, 95%, .97)",
    boxShadow: "0 2px 5px 0 rgba(0, 0, 0, 0.05), 0 5px 15px 0 rgba(0, 0, 0, 0.1)",
    color: e.color.inverseText,
    textDecoration: "none",
    overflow: "hidden",
    [Qe]: {
      boxShadow: `0 1px 2px 0 rgba(0, 0, 0, 0.05), 0px -5px 20px 10px ${e.background.app}`
    }
  }),
  ({ duration: e, theme: t }) => e && {
    "&::after": {
      content: '""',
      display: "block",
      position: "absolute",
      bottom: 0,
      left: 0,
      height: 3,
      background: t.color.secondary,
      animation: `${hb} ${e}ms linear forwards reverse`
    }
  }
), Al = I(Pl)({
  cursor: "pointer",
  border: "none",
  outline: "none",
  textAlign: "left",
  transition: "all 150ms ease-out",
  transform: "translate3d(0, 0, 0)",
  "&:hover": {
    transform: "translate3d(0, -3px, 0)",
    boxShadow: "0 1px 3px 0 rgba(30,167,253,0.5), 0 2px 5px 0 rgba(0,0,0,0.05), 0 5px 15px 0 rgba(0,0,0,0.1)"
  },
  "&:active": {
    transform: "translate3d(0, 0, 0)",
    boxShadow: "0 1px 3px 0 rgba(30,167,253,0.5), 0 2px 5px 0 rgba(0,0,0,0.05), 0 5px 15px 0 rgba(0,0,0,0.1)"
  },
  "&:focus": {
    boxShadow: "rgba(2,156,253,1) 0 0 0 1px inset, 0 1px 3px 0 rgba(30,167,253,0.5), 0 2px 5px 0 rgba(0,0,0,0.05), 0 5px 15px 0 rgba(0,0,0,0\
.1)"
  }
}), gb = Al.withComponent("div"), yb = Al.withComponent(pr), bb = I.div({
  display: "flex",
  marginRight: 10,
  alignItems: "center",
  svg: {
    width: 16,
    height: 16
  }
}), vb = I.div(({ theme: e }) => ({
  width: "100%",
  display: "flex",
  flexDirection: "column",
  color: e.base === "dark" ? e.color.mediumdark : e.color.mediumlight
})), xb = I.div(({ theme: e, hasIcon: t }) => ({
  height: "100%",
  alignItems: "center",
  whiteSpace: "balance",
  overflow: "hidden",
  textOverflow: "ellipsis",
  fontSize: e.typography.size.s1,
  lineHeight: "16px",
  fontWeight: e.typography.weight.bold
})), Ib = I.div(({ theme: e }) => ({
  color: Te(0.25, e.color.inverseText),
  fontSize: e.typography.size.s1 - 1,
  lineHeight: "14px",
  marginTop: 2,
  whiteSpace: "balance"
})), Si = /* @__PURE__ */ a(({
  icon: e,
  content: { headline: t, subHeadline: o }
}) => /* @__PURE__ */ s.createElement(s.Fragment, null, !e || /* @__PURE__ */ s.createElement(bb, null, e), /* @__PURE__ */ s.createElement(
vb, null, /* @__PURE__ */ s.createElement(xb, { title: t, hasIcon: !!e }, t), o && /* @__PURE__ */ s.createElement(Ib, null, o))), "ItemCont\
ent"), Sb = I(ee)(({ theme: e }) => ({
  width: 28,
  alignSelf: "center",
  marginTop: 0,
  color: e.base === "light" ? "rgba(255,255,255,0.7)" : " #999999"
})), wi = /* @__PURE__ */ a(({ onDismiss: e }) => /* @__PURE__ */ s.createElement(
  Sb,
  {
    title: "Dismiss notification",
    onClick: (t) => {
      t.preventDefault(), t.stopPropagation(), e();
    }
  },
  /* @__PURE__ */ s.createElement(bo, { size: 12 })
), "DismissNotificationItem"), q1 = I.div({
  height: 48
}), wb = /* @__PURE__ */ a(({
  notification: { content: e, duration: t, link: o, onClear: i, onClick: r, id: n, icon: l },
  onDismissNotification: u,
  zIndex: c
}) => {
  let d = A(() => {
    u(n), i && i({ dismissed: !1, timeout: !0 });
  }, [n, u, i]), p = U(null);
  H(() => {
    if (t)
      return p.current = setTimeout(d, t), () => clearTimeout(p.current);
  }, [t, d]);
  let f = A(() => {
    clearTimeout(p.current), u(n), i && i({ dismissed: !0, timeout: !1 });
  }, [n, u, i]);
  return o ? /* @__PURE__ */ s.createElement(yb, { to: o, duration: t, style: { zIndex: c } }, /* @__PURE__ */ s.createElement(Si, { icon: l,
  content: e }), /* @__PURE__ */ s.createElement(wi, { onDismiss: f })) : r ? /* @__PURE__ */ s.createElement(
    gb,
    {
      duration: t,
      onClick: () => r({ onDismiss: f }),
      style: { zIndex: c }
    },
    /* @__PURE__ */ s.createElement(Si, { icon: l, content: e }),
    /* @__PURE__ */ s.createElement(wi, { onDismiss: f })
  ) : /* @__PURE__ */ s.createElement(Pl, { duration: t, style: { zIndex: c } }, /* @__PURE__ */ s.createElement(Si, { icon: l, content: e }),
  /* @__PURE__ */ s.createElement(wi, { onDismiss: f }));
}, "NotificationItem"), Dl = wb;

// src/manager/components/notifications/NotificationList.tsx
var Sr = /* @__PURE__ */ a(({
  notifications: e,
  clearNotification: t
}) => {
  let { isMobile: o } = ge();
  return /* @__PURE__ */ s.createElement(Eb, { isMobile: o }, e && e.map((i, r) => /* @__PURE__ */ s.createElement(
    Dl,
    {
      key: i.id,
      onDismissNotification: (n) => t(n),
      notification: i,
      zIndex: e.length - r
    }
  )));
}, "NotificationList"), Eb = I.div(
  {
    zIndex: 200,
    "> * + *": {
      marginTop: 12
    },
    "&:empty": {
      display: "none"
    }
  },
  ({ isMobile: e }) => e && {
    position: "fixed",
    bottom: 40,
    margin: 20
  }
);

// src/manager/container/Notifications.tsx
var Tb = /* @__PURE__ */ a(({ state: e, api: t }) => ({
  notifications: e.notifications,
  clearNotification: t.clearNotification
}), "mapper"), Ml = /* @__PURE__ */ a((e) => /* @__PURE__ */ s.createElement(me, { filter: Tb }, (t) => /* @__PURE__ */ s.createElement(Sr, {
...e, ...t })), "Notifications");

// ../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
function ke(e, t) {
  if (e == null) return {};
  var o = {};
  for (var i in e) if ({}.hasOwnProperty.call(e, i)) {
    if (t.indexOf(i) !== -1) continue;
    o[i] = e[i];
  }
  return o;
}
a(ke, "_objectWithoutPropertiesLoose");

// global-externals:react-dom
var Ao = __REACT_DOM__, { __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED: ck, createPortal: pk, createRoot: dk, findDOMNode: fk, flushSync: Do,
hydrate: mk, hydrateRoot: hk, render: gk, unmountComponentAtNode: yk, unstable_batchedUpdates: bk, unstable_renderSubtreeIntoContainer: vk, version: xk } = __REACT_DOM__;

// ../node_modules/react-transition-group/esm/config.js
var Ei = {
  disabled: !1
};

// ../node_modules/react-transition-group/esm/TransitionGroupContext.js
var Ti = s.createContext(null);

// ../node_modules/react-transition-group/esm/utils/reflow.js
var Ll = /* @__PURE__ */ a(function(t) {
  return t.scrollTop;
}, "forceReflow");

// ../node_modules/react-transition-group/esm/Transition.js
var Mo = "unmounted", Nt = "exited", Ft = "entering", uo = "entered", Ci = "exiting", dt = /* @__PURE__ */ function(e) {
  no(t, e);
  function t(i, r) {
    var n;
    n = e.call(this, i, r) || this;
    var l = r, u = l && !l.isMounting ? i.enter : i.appear, c;
    return n.appearStatus = null, i.in ? u ? (c = Nt, n.appearStatus = Ft) : c = uo : i.unmountOnExit || i.mountOnEnter ? c = Mo : c = Nt, n.
    state = {
      status: c
    }, n.nextCallback = null, n;
  }
  a(t, "Transition"), t.getDerivedStateFromProps = /* @__PURE__ */ a(function(r, n) {
    var l = r.in;
    return l && n.status === Mo ? {
      status: Nt
    } : null;
  }, "getDerivedStateFromProps");
  var o = t.prototype;
  return o.componentDidMount = /* @__PURE__ */ a(function() {
    this.updateStatus(!0, this.appearStatus);
  }, "componentDidMount"), o.componentDidUpdate = /* @__PURE__ */ a(function(r) {
    var n = null;
    if (r !== this.props) {
      var l = this.state.status;
      this.props.in ? l !== Ft && l !== uo && (n = Ft) : (l === Ft || l === uo) && (n = Ci);
    }
    this.updateStatus(!1, n);
  }, "componentDidUpdate"), o.componentWillUnmount = /* @__PURE__ */ a(function() {
    this.cancelNextCallback();
  }, "componentWillUnmount"), o.getTimeouts = /* @__PURE__ */ a(function() {
    var r = this.props.timeout, n, l, u;
    return n = l = u = r, r != null && typeof r != "number" && (n = r.exit, l = r.enter, u = r.appear !== void 0 ? r.appear : l), {
      exit: n,
      enter: l,
      appear: u
    };
  }, "getTimeouts"), o.updateStatus = /* @__PURE__ */ a(function(r, n) {
    if (r === void 0 && (r = !1), n !== null)
      if (this.cancelNextCallback(), n === Ft) {
        if (this.props.unmountOnExit || this.props.mountOnEnter) {
          var l = this.props.nodeRef ? this.props.nodeRef.current : Ao.findDOMNode(this);
          l && Ll(l);
        }
        this.performEnter(r);
      } else
        this.performExit();
    else this.props.unmountOnExit && this.state.status === Nt && this.setState({
      status: Mo
    });
  }, "updateStatus"), o.performEnter = /* @__PURE__ */ a(function(r) {
    var n = this, l = this.props.enter, u = this.context ? this.context.isMounting : r, c = this.props.nodeRef ? [u] : [Ao.findDOMNode(this),
    u], d = c[0], p = c[1], f = this.getTimeouts(), h = u ? f.appear : f.enter;
    if (!r && !l || Ei.disabled) {
      this.safeSetState({
        status: uo
      }, function() {
        n.props.onEntered(d);
      });
      return;
    }
    this.props.onEnter(d, p), this.safeSetState({
      status: Ft
    }, function() {
      n.props.onEntering(d, p), n.onTransitionEnd(h, function() {
        n.safeSetState({
          status: uo
        }, function() {
          n.props.onEntered(d, p);
        });
      });
    });
  }, "performEnter"), o.performExit = /* @__PURE__ */ a(function() {
    var r = this, n = this.props.exit, l = this.getTimeouts(), u = this.props.nodeRef ? void 0 : Ao.findDOMNode(this);
    if (!n || Ei.disabled) {
      this.safeSetState({
        status: Nt
      }, function() {
        r.props.onExited(u);
      });
      return;
    }
    this.props.onExit(u), this.safeSetState({
      status: Ci
    }, function() {
      r.props.onExiting(u), r.onTransitionEnd(l.exit, function() {
        r.safeSetState({
          status: Nt
        }, function() {
          r.props.onExited(u);
        });
      });
    });
  }, "performExit"), o.cancelNextCallback = /* @__PURE__ */ a(function() {
    this.nextCallback !== null && (this.nextCallback.cancel(), this.nextCallback = null);
  }, "cancelNextCallback"), o.safeSetState = /* @__PURE__ */ a(function(r, n) {
    n = this.setNextCallback(n), this.setState(r, n);
  }, "safeSetState"), o.setNextCallback = /* @__PURE__ */ a(function(r) {
    var n = this, l = !0;
    return this.nextCallback = function(u) {
      l && (l = !1, n.nextCallback = null, r(u));
    }, this.nextCallback.cancel = function() {
      l = !1;
    }, this.nextCallback;
  }, "setNextCallback"), o.onTransitionEnd = /* @__PURE__ */ a(function(r, n) {
    this.setNextCallback(n);
    var l = this.props.nodeRef ? this.props.nodeRef.current : Ao.findDOMNode(this), u = r == null && !this.props.addEndListener;
    if (!l || u) {
      setTimeout(this.nextCallback, 0);
      return;
    }
    if (this.props.addEndListener) {
      var c = this.props.nodeRef ? [this.nextCallback] : [l, this.nextCallback], d = c[0], p = c[1];
      this.props.addEndListener(d, p);
    }
    r != null && setTimeout(this.nextCallback, r);
  }, "onTransitionEnd"), o.render = /* @__PURE__ */ a(function() {
    var r = this.state.status;
    if (r === Mo)
      return null;
    var n = this.props, l = n.children, u = n.in, c = n.mountOnEnter, d = n.unmountOnExit, p = n.appear, f = n.enter, h = n.exit, y = n.timeout,
    m = n.addEndListener, b = n.onEnter, x = n.onEntering, E = n.onEntered, g = n.onExit, v = n.onExiting, S = n.onExited, w = n.nodeRef, k = ke(
    n, ["children", "in", "mountOnEnter", "unmountOnExit", "appear", "enter", "exit", "timeout", "addEndListener", "onEnter", "onEntering", "\
onEntered", "onExit", "onExiting", "onExited", "nodeRef"]);
    return (
      // allows for nested Transitions
      /* @__PURE__ */ s.createElement(Ti.Provider, {
        value: null
      }, typeof l == "function" ? l(r, k) : s.cloneElement(s.Children.only(l), k))
    );
  }, "render"), t;
}(s.Component);
dt.contextType = Ti;
dt.propTypes = {};
function lo() {
}
a(lo, "noop");
dt.defaultProps = {
  in: !1,
  mountOnEnter: !1,
  unmountOnExit: !1,
  appear: !1,
  enter: !0,
  exit: !0,
  onEnter: lo,
  onEntering: lo,
  onEntered: lo,
  onExit: lo,
  onExiting: lo,
  onExited: lo
};
dt.UNMOUNTED = Mo;
dt.EXITED = Nt;
dt.ENTERING = Ft;
dt.ENTERED = uo;
dt.EXITING = Ci;
var ft = dt;

// src/manager/hooks/useModalDialog.ts
function wr({ isOpen: e, onClose: t }) {
  let o = U(null);
  return H(() => {
    let i = o.current;
    i && e && (i.hasAttribute("open") || i.showModal());
  }, [e]), H(() => {
    let i = o.current;
    if (i) {
      let r = /* @__PURE__ */ a((l) => {
        e && (l.preventDefault(), t());
      }, "handleDialogCloseEvent"), n = /* @__PURE__ */ a((l) => {
        l.key === "Escape" && e && (l.preventDefault(), t());
      }, "handleEscapeKey");
      return i.addEventListener("close", r), i.addEventListener("keydown", n), () => {
        i.removeEventListener("close", r), i.removeEventListener("keydown", n);
      };
    }
  }, [e, t]), o;
}
a(wr, "useModalDialog");

// src/manager/components/mobile/navigation/MobileAddonsDrawer.tsx
var Cb = I.dialog(({ theme: e, state: t }) => ({
  position: "fixed",
  bottom: 0,
  left: 0,
  right: 0,
  top: "auto",
  boxSizing: "border-box",
  width: "100%",
  maxWidth: "100vw",
  background: e.background.content,
  height: "42vh",
  zIndex: 11,
  overflow: "hidden",
  border: "none",
  padding: 0,
  margin: 0,
  transform: `translateY(${t === "entering" || t === "entered" ? "0" : "100%"})`,
  transition: `all ${300}ms ease-in-out`,
  "&[open]": {
    position: "fixed",
    bottom: 0,
    left: 0,
    right: 0,
    top: "auto",
    width: "100%",
    maxWidth: "100vw",
    margin: 0
  }
})), _b = I.div(({ state: e }) => ({
  width: "100%",
  height: "100%",
  transition: `all ${300}ms ease-in-out`,
  opacity: e === "entered" || e === "entering" ? 1 : 0
})), Nl = /* @__PURE__ */ a(({
  children: e,
  id: t,
  isOpen: o,
  onClose: i
}) => {
  let r = wr({ isOpen: o, onClose: i }), n = A(() => {
    r.current && r.current.hasAttribute("open") && r.current.close();
  }, []);
  return /* @__PURE__ */ s.createElement(
    ft,
    {
      nodeRef: r,
      in: o,
      timeout: 300,
      mountOnEnter: !0,
      unmountOnExit: !0,
      onExited: () => {
        n();
      }
    },
    (l) => /* @__PURE__ */ s.createElement(Cb, { ref: r, state: l, id: t, "aria-label": "Addon panel" }, /* @__PURE__ */ s.createElement(_b,
    { state: l }, e))
  );
}, "MobileAddonsDrawer");

// src/manager/components/upgrade/UpgradeBlock.tsx
var Er = /* @__PURE__ */ a(({ onNavigateToWhatsNew: e }) => {
  let t = oe(), [o, i] = K("npm");
  return /* @__PURE__ */ s.createElement(kb, null, /* @__PURE__ */ s.createElement("strong", null, "You are on Storybook ", t.getCurrentVersion().
  version), /* @__PURE__ */ s.createElement("p", null, "Run the following script to check for updates and upgrade to the latest version."), /* @__PURE__ */ s.
  createElement(Ob, null, /* @__PURE__ */ s.createElement(_i, { active: o === "npm", onClick: () => i("npm") }, "npm"), /* @__PURE__ */ s.createElement(
  _i, { active: o === "yarn", onClick: () => i("yarn") }, "yarn"), /* @__PURE__ */ s.createElement(_i, { active: o === "pnpm", onClick: () => i(
  "pnpm") }, "pnpm")), /* @__PURE__ */ s.createElement(Pb, null, o === "npm" ? "npx storybook@latest upgrade" : `${o} dlx storybook@latest u\
pgrade`), e && /* @__PURE__ */ s.createElement(Pe, { onClick: e }, "See what's new in Storybook"));
}, "UpgradeBlock"), kb = I.div(({ theme: e }) => ({
  border: "1px solid",
  borderRadius: 5,
  padding: 20,
  marginTop: 0,
  borderColor: e.appBorderColor,
  fontSize: e.typography.size.s2,
  width: "100%",
  [Qe]: {
    maxWidth: 400
  }
})), Ob = I.div({
  display: "flex",
  gap: 2
}), Pb = I.pre(({ theme: e }) => ({
  background: e.base === "light" ? "rgba(0, 0, 0, 0.05)" : e.appBorderColor,
  fontSize: e.typography.size.s2 - 1,
  margin: "4px 0 16px"
})), _i = I.button(({ theme: e, active: t }) => ({
  all: "unset",
  alignItems: "center",
  gap: 10,
  color: e.color.defaultText,
  fontSize: e.typography.size.s2 - 1,
  borderBottom: "2px solid transparent",
  borderBottomColor: t ? e.color.secondary : "none",
  padding: "0 10px 5px",
  marginBottom: "5px",
  cursor: "pointer"
}));

// src/manager/components/mobile/about/MobileAbout.tsx
var Bl = /* @__PURE__ */ a(() => {
  let { isMobileAboutOpen: e, setMobileAboutOpen: t } = ge(), o = U(null);
  return /* @__PURE__ */ s.createElement(
    ft,
    {
      nodeRef: o,
      in: e,
      timeout: 300,
      appear: !0,
      mountOnEnter: !0,
      unmountOnExit: !0
    },
    (i) => /* @__PURE__ */ s.createElement(Ab, { ref: o, state: i, transitionDuration: 300 }, /* @__PURE__ */ s.createElement(Lb, { onClick: () => t(
    !1), title: "Close about section" }, /* @__PURE__ */ s.createElement(En, null), "Back"), /* @__PURE__ */ s.createElement(Db, null, /* @__PURE__ */ s.
    createElement(Fl, { href: "https://github.com/storybookjs/storybook", target: "_blank" }, /* @__PURE__ */ s.createElement(Rl, null, /* @__PURE__ */ s.
    createElement(vo, null), /* @__PURE__ */ s.createElement("span", null, "Github")), /* @__PURE__ */ s.createElement(tt, { width: 12 })), /* @__PURE__ */ s.
    createElement(
      Fl,
      {
        href: "https://storybook.js.org/docs/react/get-started/install/",
        target: "_blank"
      },
      /* @__PURE__ */ s.createElement(Rl, null, /* @__PURE__ */ s.createElement(qn, null), /* @__PURE__ */ s.createElement("span", null, "Do\
cumentation")),
      /* @__PURE__ */ s.createElement(tt, { width: 12 })
    )), /* @__PURE__ */ s.createElement(Er, null), /* @__PURE__ */ s.createElement(Mb, null, "Open source software maintained by", " ", /* @__PURE__ */ s.
    createElement(Pe, { href: "https://chromatic.com", target: "_blank" }, "Chromatic"), " ", "and the", " ", /* @__PURE__ */ s.createElement(
    Pe, { href: "https://github.com/storybookjs/storybook/graphs/contributors" }, "Storybook Community")))
  );
}, "MobileAbout"), Ab = I.div(
  ({ theme: e, state: t, transitionDuration: o }) => ({
    position: "absolute",
    width: "100%",
    height: "100%",
    top: 0,
    left: 0,
    zIndex: 11,
    transition: `all ${o}ms ease-in-out`,
    overflow: "scroll",
    padding: "25px 10px 10px",
    color: e.color.defaultText,
    background: e.background.content,
    opacity: `${(() => {
      switch (t) {
        case "entering":
        case "entered":
          return 1;
        case "exiting":
        case "exited":
          return 0;
        default:
          return 0;
      }
    })()}`,
    transform: `${(() => {
      switch (t) {
        case "entering":
        case "entered":
          return "translateX(0)";
        case "exiting":
        case "exited":
          return "translateX(20px)";
        default:
          return "translateX(0)";
      }
    })()}`
  })
), Db = I.div({
  marginTop: 20,
  marginBottom: 20
}), Fl = I.a(({ theme: e }) => ({
  all: "unset",
  display: "flex",
  alignItems: "center",
  justifyContent: "space-between",
  fontSize: e.typography.size.s2 - 1,
  height: 52,
  borderBottom: `1px solid ${e.appBorderColor}`,
  cursor: "pointer",
  padding: "0 10px",
  "&:last-child": {
    borderBottom: "none"
  }
})), Rl = I.div(({ theme: e }) => ({
  display: "flex",
  alignItems: "center",
  fontSize: e.typography.size.s2 - 1,
  height: 40,
  gap: 5
})), Mb = I.div(({ theme: e }) => ({
  fontSize: e.typography.size.s2 - 1,
  marginTop: 30
})), Lb = I.button(({ theme: e }) => ({
  all: "unset",
  display: "flex",
  alignItems: "center",
  gap: 10,
  color: "currentColor",
  fontSize: e.typography.size.s2 - 1,
  padding: "0 10px"
}));

// src/manager/components/mobile/navigation/MobileMenuDrawer.tsx
var Hl = /* @__PURE__ */ a(({ children: e, id: t }) => {
  let o = U(null), i = U(null), { isMobileMenuOpen: r, setMobileMenuOpen: n, isMobileAboutOpen: l, setMobileAboutOpen: u } = ge(), c = A(() => {
    n(!1);
  }, [n]), d = wr({
    isOpen: r,
    onClose: c
  }), p = A(() => {
    d.current && d.current.hasAttribute("open") && d.current.close();
  }, []);
  return /* @__PURE__ */ s.createElement(s.Fragment, null, /* @__PURE__ */ s.createElement(
    ft,
    {
      nodeRef: d,
      in: r,
      timeout: 300,
      mountOnEnter: !0,
      unmountOnExit: !0,
      onExited: () => {
        u(!1), p();
      }
    },
    (f) => /* @__PURE__ */ s.createElement(Nb, { ref: d, state: f, id: t, "aria-label": "Navigation menu" }, /* @__PURE__ */ s.createElement(
      ft,
      {
        nodeRef: o,
        in: !l,
        timeout: 300
      },
      (h) => /* @__PURE__ */ s.createElement(Fb, { ref: o, state: h }, e)
    ), /* @__PURE__ */ s.createElement(Bl, null))
  ), /* @__PURE__ */ s.createElement(
    ft,
    {
      nodeRef: i,
      in: r,
      timeout: 300,
      mountOnEnter: !0,
      unmountOnExit: !0
    },
    (f) => /* @__PURE__ */ s.createElement(
      Rb,
      {
        ref: i,
        state: f,
        onClick: c,
        "aria-label": "Close navigation menu"
      }
    )
  ));
}, "MobileMenuDrawer"), Nb = I.dialog(({ theme: e, state: t }) => ({
  position: "fixed",
  bottom: 0,
  left: 0,
  right: 0,
  top: "auto",
  boxSizing: "border-box",
  width: "100%",
  maxWidth: "100vw",
  background: e.background.content,
  height: "80%",
  zIndex: 11,
  borderRadius: "10px 10px 0 0",
  transition: `all ${300}ms ease-in-out`,
  overflow: "hidden",
  transform: `${t === "entering" || t === "entered" ? "translateY(0)" : t === "exiting" || t === "exited" ? "translateY(100%)" : "translateY\
(0)"}`,
  border: "none",
  padding: 0,
  margin: 0,
  "&[open]": {
    position: "fixed",
    bottom: 0,
    left: 0,
    right: 0,
    top: "auto",
    width: "100%",
    maxWidth: "100vw",
    margin: 0
  }
})), Fb = I.div(({ theme: e, state: t }) => ({
  position: "absolute",
  width: "100%",
  height: "100%",
  top: 0,
  left: 0,
  zIndex: 1,
  transition: `all ${300}ms ease-in-out`,
  overflow: "hidden",
  opacity: `${t === "entered" || t === "entering" ? 1 : t === "exiting" || t === "exited" ? 0 : 1}`,
  transform: `${(() => {
    switch (t) {
      case "entering":
      case "entered":
        return "translateX(0)";
      case "exiting":
      case "exited":
        return "translateX(-20px)";
      default:
        return "translateX(0)";
    }
  })()}`
})), Rb = I.div(({ state: e }) => ({
  position: "fixed",
  boxSizing: "border-box",
  background: "rgba(0, 0, 0, 0.5)",
  top: 0,
  bottom: 0,
  right: 0,
  left: 0,
  zIndex: 10,
  transition: `all ${300}ms ease-in-out`,
  cursor: "pointer",
  opacity: `${(() => {
    switch (e) {
      case "entering":
      case "entered":
        return 1;
      case "exiting":
      case "exited":
        return 0;
      default:
        return 0;
    }
  })()}`,
  "&:hover": {
    background: "rgba(0, 0, 0, 0.6)"
  }
}));

// src/manager/components/mobile/navigation/MobileNavigation.tsx
function Bb(e, t) {
  let o = { ...e || {} };
  return Object.values(t).forEach((i) => {
    i.index && Object.assign(o, i.index);
  }), o;
}
a(Bb, "combineIndexes");
var Hb = /* @__PURE__ */ a(() => {
  let { index: e, refs: t } = Ne(), o = oe(), i = o.getCurrentStoryData();
  if (!i)
    return "";
  let r = Bb(e, t || {}), n = i.renderLabel?.(i, o) || i.name, l = r[i.id];
  for (; l && "parent" in l && l.parent && r[l.parent] && n.length < 24; )
    l = r[l.parent], n = `${l.renderLabel?.(l, o) || l.name}/${n}`;
  return n;
}, "useFullStoryName"), zl = /* @__PURE__ */ a(({
  menu: e,
  panel: t,
  showPanel: o,
  ...i
}) => {
  let { isMobileMenuOpen: r, isMobilePanelOpen: n, setMobileMenuOpen: l, setMobilePanelOpen: u } = ge(), c = Hb(), d = /* @__PURE__ */ a(() => {
    u(!1);
  }, "handleAddonPanelClose");
  return /* @__PURE__ */ s.createElement(zb, { ...i }, /* @__PURE__ */ s.createElement(Hl, { id: "storybook-mobile-menu" }, e), /* @__PURE__ */ s.
  createElement(
    Nl,
    {
      id: "storybook-mobile-addon-panel",
      isOpen: n,
      onClose: d
    },
    t
  ), !n && /* @__PURE__ */ s.createElement(Wb, { className: "sb-bar", role: "toolbar", "aria-label": "Mobile navigation controls" }, /* @__PURE__ */ s.
  createElement(
    Vb,
    {
      onClick: () => l(!r),
      "aria-label": "Open navigation menu",
      "aria-expanded": r,
      "aria-controls": "storybook-mobile-menu"
    },
    /* @__PURE__ */ s.createElement(Io, null),
    /* @__PURE__ */ s.createElement(jb, null, c)
  ), o && /* @__PURE__ */ s.createElement(
    ee,
    {
      onClick: () => u(!0),
      "aria-label": "Open addon panel",
      "aria-expanded": n,
      "aria-controls": "storybook-mobile-addon-panel"
    },
    /* @__PURE__ */ s.createElement(Tn, null)
  )));
}, "MobileNavigation"), zb = I.div(({ theme: e }) => ({
  bottom: 0,
  left: 0,
  width: "100%",
  zIndex: 10,
  background: e.barBg,
  borderTop: `1px solid ${e.appBorderColor}`
})), Wb = I.div({
  display: "flex",
  alignItems: "center",
  justifyContent: "space-between",
  width: "100%",
  height: 40,
  padding: "0 6px"
}), Vb = I.button(({ theme: e }) => ({
  all: "unset",
  display: "flex",
  alignItems: "center",
  gap: 10,
  color: e.barTextColor,
  fontSize: `${e.typography.size.s2 - 1}px`,
  padding: "0 7px",
  fontWeight: e.typography.weight.bold,
  WebkitLineClamp: 1,
  "> svg": {
    width: 14,
    height: 14,
    flexShrink: 0
  },
  "&:focus-visible": {
    outline: `2px solid ${e.color.secondary}`,
    outlineOffset: 2
  }
})), jb = I.p({
  display: "-webkit-box",
  WebkitLineClamp: 1,
  WebkitBoxOrient: "vertical",
  overflow: "hidden"
});

// src/manager/components/layout/useDragging.ts
var Wl = 30, Tr = 240, Cr = 270, Vl = 0.9;
function jl(e, t, o) {
  return Math.min(Math.max(e, t), o);
}
a(jl, "clamp");
function Kl(e, t, o) {
  return t + (o - t) * e;
}
a(Kl, "interpolate");
function $l({
  setState: e,
  isPanelShown: t,
  isDesktop: o
}) {
  let i = U(null), r = U(null);
  return H(() => {
    let n = i.current, l = r.current, u = document.querySelector("#storybook-preview-wrapper"), c = null, d = /* @__PURE__ */ a((h) => {
      h.preventDefault(), e((y) => ({
        ...y,
        isDragging: !0
      })), h.currentTarget === n ? c = n : h.currentTarget === l && (c = l), window.addEventListener("mousemove", f), window.addEventListener(
      "mouseup", p), u && (u.style.pointerEvents = "none");
    }, "onDragStart"), p = /* @__PURE__ */ a((h) => {
      e((y) => c === l && y.navSize < Tr && y.navSize > 0 ? {
        ...y,
        isDragging: !1,
        navSize: Tr
      } : c === n && y.panelPosition === "right" && y.rightPanelWidth < Cr && y.rightPanelWidth > 0 ? {
        ...y,
        isDragging: !1,
        rightPanelWidth: Cr
      } : {
        ...y,
        isDragging: !1
      }), window.removeEventListener("mousemove", f), window.removeEventListener("mouseup", p), u?.removeAttribute("style"), c = null;
    }, "onDragEnd"), f = /* @__PURE__ */ a((h) => {
      if (h.buttons === 0) {
        p(h);
        return;
      }
      e((y) => {
        if (c === l) {
          let m = h.clientX;
          return m === y.navSize ? y : m <= Wl ? {
            ...y,
            navSize: 0
          } : m <= Tr ? {
            ...y,
            navSize: Kl(Vl, m, Tr)
          } : {
            ...y,
            // @ts-expect-error (non strict)
            navSize: jl(m, 0, h.view.innerWidth)
          };
        }
        if (c === n) {
          let m = y.panelPosition === "bottom" ? "bottomPanelHeight" : "rightPanelWidth", b = y.panelPosition === "bottom" ? (
            // @ts-expect-error (non strict)
            h.view.innerHeight - h.clientY
          ) : (
            // @ts-expect-error (non strict)
            h.view.innerWidth - h.clientX
          );
          if (b === y[m])
            return y;
          if (b <= Wl)
            return {
              ...y,
              [m]: 0
            };
          if (y.panelPosition === "right" && b <= Cr)
            return {
              ...y,
              [m]: Kl(
                Vl,
                b,
                Cr
              )
            };
          let x = (
            // @ts-expect-error (non strict)
            y.panelPosition === "bottom" ? h.view.innerHeight : h.view.innerWidth
          );
          return {
            ...y,
            [m]: jl(b, 0, x)
          };
        }
        return y;
      });
    }, "onDrag");
    return n?.addEventListener("mousedown", d), l?.addEventListener("mousedown", d), () => {
      n?.removeEventListener("mousedown", d), l?.removeEventListener("mousedown", d), u?.removeAttribute("style");
    };
  }, [
    // we need to rerun this effect when the panel is shown/hidden or when changing between mobile/desktop to re-attach the event listeners
    t,
    o,
    e
  ]), { panelResizerRef: i, sidebarResizerRef: r };
}
a($l, "useDragging");

// src/manager/components/layout/Layout.tsx
var Kb = 100, Ul = /* @__PURE__ */ a((e, t) => e.navSize === t.navSize && e.bottomPanelHeight === t.bottomPanelHeight && e.rightPanelWidth ===
t.rightPanelWidth && e.panelPosition === t.panelPosition, "layoutStateIsEqual"), $b = /* @__PURE__ */ a(({
  api: e,
  managerLayoutState: t,
  setManagerLayoutState: o,
  isDesktop: i,
  hasTab: r
}) => {
  let n = s.useRef(t), [l, u] = K({
    ...t,
    isDragging: !1
  });
  H(() => {
    l.isDragging || // don't interrupt user's drag
    Ul(t, n.current) || (n.current = t, u((x) => ({ ...x, ...t })));
  }, [l.isDragging, t, u]), Xt(() => {
    if (l.isDragging || // wait with syncing managerLayoutState until user is done dragging
    Ul(t, l))
      return;
    let x = {
      navSize: l.navSize,
      bottomPanelHeight: l.bottomPanelHeight,
      rightPanelWidth: l.rightPanelWidth
    };
    n.current = {
      ...n.current,
      ...x
    }, o(x);
  }, [l, o]);
  let c = t.viewMode !== "story" && t.viewMode !== "docs", d = t.viewMode === "story" && !r, { panelResizerRef: p, sidebarResizerRef: f } = $l(
  {
    setState: u,
    isPanelShown: d,
    isDesktop: i
  }), { navSize: h, rightPanelWidth: y, bottomPanelHeight: m } = l.isDragging ? l : t;
  return {
    navSize: e.getNavSizeWithCustomisations?.(h) ?? h,
    rightPanelWidth: y,
    bottomPanelHeight: m,
    panelPosition: t.panelPosition,
    panelResizerRef: p,
    sidebarResizerRef: f,
    showPages: c,
    showPanel: d,
    isDragging: l.isDragging
  };
}, "useLayoutSyncingState"), Gl = /* @__PURE__ */ a(({ children: e }) => /* @__PURE__ */ s.createElement(Ga, { path: /(^\/story|docs|onboarding\/|^\/$)/,
startsWith: !1 }, ({ match: t }) => /* @__PURE__ */ s.createElement(Yb, { shown: !!t }, e)), "MainContentMatcher"), Ub = I(zl)({
  order: 1
}), Yl = /* @__PURE__ */ a(({ managerLayoutState: e, setManagerLayoutState: t, hasTab: o, ...i }) => {
  let { isDesktop: r, isMobile: n } = ge(), l = oe(), {
    navSize: u,
    rightPanelWidth: c,
    bottomPanelHeight: d,
    panelPosition: p,
    panelResizerRef: f,
    sidebarResizerRef: h,
    showPages: y,
    showPanel: m,
    isDragging: b
  } = $b({ api: l, managerLayoutState: e, setManagerLayoutState: t, isDesktop: r, hasTab: o });
  return /* @__PURE__ */ s.createElement(
    Gb,
    {
      navSize: u,
      rightPanelWidth: c,
      bottomPanelHeight: d,
      panelPosition: e.panelPosition,
      isDragging: b,
      viewMode: e.viewMode,
      showPanel: m
    },
    y && /* @__PURE__ */ s.createElement(Qb, null, i.slotPages),
    r && /* @__PURE__ */ s.createElement(s.Fragment, null, /* @__PURE__ */ s.createElement(qb, null, /* @__PURE__ */ s.createElement(ql, { ref: h }),
    i.slotSidebar), /* @__PURE__ */ s.createElement(Gl, null, i.slotMain), m && /* @__PURE__ */ s.createElement(Xb, { position: p }, /* @__PURE__ */ s.
    createElement(
      ql,
      {
        orientation: p === "bottom" ? "horizontal" : "vertical",
        position: p === "bottom" ? "left" : "right",
        ref: f
      }
    ), i.slotPanel)),
    n && /* @__PURE__ */ s.createElement(s.Fragment, null, /* @__PURE__ */ s.createElement(
      Ub,
      {
        menu: i.slotSidebar,
        panel: i.slotPanel,
        showPanel: m
      }
    ), /* @__PURE__ */ s.createElement(Gl, null, i.slotMain), /* @__PURE__ */ s.createElement(Ml, null))
  );
}, "Layout"), Gb = I.div(
  ({ navSize: e, rightPanelWidth: t, bottomPanelHeight: o, viewMode: i, panelPosition: r, showPanel: n }) => ({
    width: "100%",
    height: ["100vh", "100dvh"],
    // This array is a special Emotion syntax to set a fallback if 100dvh is not supported
    overflow: "hidden",
    display: "flex",
    flexDirection: "column",
    colorScheme: "light dark",
    [Qe]: {
      display: "grid",
      gap: 0,
      gridTemplateColumns: `minmax(0, ${e}px) minmax(${Kb}px, 1fr) minmax(0, ${t}px)`,
      gridTemplateRows: `1fr minmax(0, ${o}px)`,
      gridTemplateAreas: i === "docs" || !n ? `"sidebar content content"
                  "sidebar content content"` : r === "right" ? `"sidebar content panel"
                  "sidebar content panel"` : `"sidebar content content"
                "sidebar panel   panel"`
    }
  })
), qb = I.div(({ theme: e }) => ({
  backgroundColor: e.background.app,
  gridArea: "sidebar",
  position: "relative",
  borderRight: `1px solid ${e.color.border}`
})), Yb = I.div(({ theme: e, shown: t }) => ({
  flex: 1,
  position: "relative",
  backgroundColor: e.background.content,
  display: t ? "grid" : "none",
  // This is needed to make the content container fill the available space
  overflow: "auto",
  [Qe]: {
    flex: "auto",
    gridArea: "content"
  }
})), Qb = I.div(({ theme: e }) => ({
  gridRowStart: "sidebar-start",
  gridRowEnd: "-1",
  gridColumnStart: "sidebar-end",
  gridColumnEnd: "-1",
  backgroundColor: e.background.content,
  zIndex: 1
})), Xb = I.div(
  ({ theme: e, position: t }) => ({
    gridArea: "panel",
    position: "relative",
    backgroundColor: e.background.content,
    borderTop: t === "bottom" ? `1px solid ${e.color.border}` : void 0,
    borderLeft: t === "right" ? `1px solid ${e.color.border}` : void 0
  })
), ql = I.div(
  ({ theme: e }) => ({
    position: "absolute",
    opacity: 0,
    transition: "opacity 0.2s ease-in-out",
    zIndex: 100,
    "&:after": {
      content: '""',
      display: "block",
      backgroundColor: e.color.secondary
    },
    "&:hover": {
      opacity: 1
    }
  }),
  ({ orientation: e = "vertical", position: t = "left" }) => e === "vertical" ? {
    width: t === "left" ? 10 : 13,
    height: "100%",
    top: 0,
    right: t === "left" ? "-7px" : void 0,
    left: t === "right" ? "-7px" : void 0,
    "&:after": {
      width: 1,
      height: "100%",
      marginLeft: t === "left" ? 3 : 6
    },
    "&:hover": {
      cursor: "col-resize"
    }
  } : {
    width: "100%",
    height: "13px",
    top: "-7px",
    left: 0,
    "&:after": {
      width: "100%",
      height: 1,
      marginTop: 6
    },
    "&:hover": {
      cursor: "row-resize"
    }
  }
);

// global-externals:storybook/internal/types
var VO = __STORYBOOK_TYPES__, { Addon_TypesEnum: Ce } = __STORYBOOK_TYPES__;

// src/core-events/index.ts
var Ql = /* @__PURE__ */ ((N) => (N.CHANNEL_WS_DISCONNECT = "channelWSDisconnect", N.CHANNEL_CREATED = "channelCreated", N.CONFIG_ERROR = "c\
onfigError", N.STORY_INDEX_INVALIDATED = "storyIndexInvalidated", N.STORY_SPECIFIED = "storySpecified", N.SET_CONFIG = "setConfig", N.SET_STORIES =
"setStories", N.SET_INDEX = "setIndex", N.SET_CURRENT_STORY = "setCurrentStory", N.CURRENT_STORY_WAS_SET = "currentStoryWasSet", N.FORCE_RE_RENDER =
"forceReRender", N.FORCE_REMOUNT = "forceRemount", N.PRELOAD_ENTRIES = "preloadStories", N.STORY_PREPARED = "storyPrepared", N.DOCS_PREPARED =
"docsPrepared", N.STORY_CHANGED = "storyChanged", N.STORY_UNCHANGED = "storyUnchanged", N.STORY_RENDERED = "storyRendered", N.STORY_FINISHED =
"storyFinished", N.STORY_MISSING = "storyMissing", N.STORY_ERRORED = "storyErrored", N.STORY_THREW_EXCEPTION = "storyThrewException", N.STORY_RENDER_PHASE_CHANGED =
"storyRenderPhaseChanged", N.STORY_HOT_UPDATED = "storyHotUpdated", N.PLAY_FUNCTION_THREW_EXCEPTION = "playFunctionThrewException", N.UNHANDLED_ERRORS_WHILE_PLAYING =
"unhandledErrorsWhilePlaying", N.UPDATE_STORY_ARGS = "updateStoryArgs", N.STORY_ARGS_UPDATED = "storyArgsUpdated", N.RESET_STORY_ARGS = "res\
etStoryArgs", N.SET_FILTER = "setFilter", N.SET_GLOBALS = "setGlobals", N.UPDATE_GLOBALS = "updateGlobals", N.GLOBALS_UPDATED = "globalsUpda\
ted", N.REGISTER_SUBSCRIPTION = "registerSubscription", N.PREVIEW_KEYDOWN = "previewKeydown", N.PREVIEW_BUILDER_PROGRESS = "preview_builder_\
progress", N.SELECT_STORY = "selectStory", N.STORIES_COLLAPSE_ALL = "storiesCollapseAll", N.STORIES_EXPAND_ALL = "storiesExpandAll", N.DOCS_RENDERED =
"docsRendered", N.SHARED_STATE_CHANGED = "sharedStateChanged", N.SHARED_STATE_SET = "sharedStateSet", N.NAVIGATE_URL = "navigateUrl", N.UPDATE_QUERY_PARAMS =
"updateQueryParams", N.REQUEST_WHATS_NEW_DATA = "requestWhatsNewData", N.RESULT_WHATS_NEW_DATA = "resultWhatsNewData", N.SET_WHATS_NEW_CACHE =
"setWhatsNewCache", N.TOGGLE_WHATS_NEW_NOTIFICATIONS = "toggleWhatsNewNotifications", N.TELEMETRY_ERROR = "telemetryError", N.FILE_COMPONENT_SEARCH_REQUEST =
"fileComponentSearchRequest", N.FILE_COMPONENT_SEARCH_RESPONSE = "fileComponentSearchResponse", N.SAVE_STORY_REQUEST = "saveStoryRequest", N.
SAVE_STORY_RESPONSE = "saveStoryResponse", N.ARGTYPES_INFO_REQUEST = "argtypesInfoRequest", N.ARGTYPES_INFO_RESPONSE = "argtypesInfoResponse",
N.CREATE_NEW_STORYFILE_REQUEST = "createNewStoryfileRequest", N.CREATE_NEW_STORYFILE_RESPONSE = "createNewStoryfileResponse", N))(Ql || {});
var {
  CHANNEL_WS_DISCONNECT: KO,
  CHANNEL_CREATED: $O,
  CONFIG_ERROR: UO,
  CREATE_NEW_STORYFILE_REQUEST: GO,
  CREATE_NEW_STORYFILE_RESPONSE: qO,
  CURRENT_STORY_WAS_SET: YO,
  DOCS_PREPARED: QO,
  DOCS_RENDERED: XO,
  FILE_COMPONENT_SEARCH_REQUEST: ZO,
  FILE_COMPONENT_SEARCH_RESPONSE: JO,
  FORCE_RE_RENDER: eP,
  FORCE_REMOUNT: tP,
  GLOBALS_UPDATED: oP,
  NAVIGATE_URL: rP,
  PLAY_FUNCTION_THREW_EXCEPTION: nP,
  UNHANDLED_ERRORS_WHILE_PLAYING: iP,
  PRELOAD_ENTRIES: sP,
  PREVIEW_BUILDER_PROGRESS: aP,
  PREVIEW_KEYDOWN: lP,
  REGISTER_SUBSCRIPTION: uP,
  RESET_STORY_ARGS: cP,
  SELECT_STORY: pP,
  SET_CONFIG: dP,
  SET_CURRENT_STORY: fP,
  SET_FILTER: mP,
  SET_GLOBALS: hP,
  SET_INDEX: gP,
  SET_STORIES: yP,
  SHARED_STATE_CHANGED: bP,
  SHARED_STATE_SET: vP,
  STORIES_COLLAPSE_ALL: xP,
  STORIES_EXPAND_ALL: IP,
  STORY_ARGS_UPDATED: SP,
  STORY_CHANGED: wP,
  STORY_ERRORED: EP,
  STORY_INDEX_INVALIDATED: TP,
  STORY_MISSING: CP,
  STORY_PREPARED: Xl,
  STORY_RENDER_PHASE_CHANGED: _P,
  STORY_RENDERED: kP,
  STORY_FINISHED: OP,
  STORY_SPECIFIED: PP,
  STORY_THREW_EXCEPTION: AP,
  STORY_UNCHANGED: DP,
  STORY_HOT_UPDATED: MP,
  UPDATE_GLOBALS: LP,
  UPDATE_QUERY_PARAMS: NP,
  UPDATE_STORY_ARGS: FP,
  REQUEST_WHATS_NEW_DATA: RP,
  RESULT_WHATS_NEW_DATA: BP,
  SET_WHATS_NEW_CACHE: HP,
  TOGGLE_WHATS_NEW_NOTIFICATIONS: zP,
  TELEMETRY_ERROR: WP,
  SAVE_STORY_REQUEST: VP,
  SAVE_STORY_RESPONSE: jP,
  ARGTYPES_INFO_REQUEST: KP,
  ARGTYPES_INFO_RESPONSE: $P
} = Ql;

// src/manager/components/panel/Panel.tsx
var Pi = class Pi extends Le {
  constructor(t) {
    super(t), this.state = { hasError: !1 };
  }
  componentDidCatch(t, o) {
    this.setState({ hasError: !0 }), console.error(t, o);
  }
  // @ts-expect-error (we know this is broken)
  render() {
    let { hasError: t } = this.state, { children: o } = this.props;
    return t ? /* @__PURE__ */ s.createElement("h1", null, "Something went wrong.") : o;
  }
};
a(Pi, "SafeTab");
var ki = Pi, Oi = s.memo(
  ({
    panels: e,
    shortcuts: t,
    actions: o,
    selectedPanel: i = null,
    panelPosition: r = "right",
    absolute: n = !0
  }) => {
    let { isDesktop: l, setMobilePanelOpen: u } = ge();
    return /* @__PURE__ */ s.createElement(
      Oa,
      {
        absolute: n,
        ...i && e[i] ? { selected: i } : {},
        menuName: "Addons",
        actions: o,
        showToolsWhenEmpty: !0,
        emptyState: /* @__PURE__ */ s.createElement(
          _a,
          {
            title: "Storybook add-ons",
            description: /* @__PURE__ */ s.createElement(s.Fragment, null, "Integrate your tools with Storybook to connect workflows and unl\
ock advanced features."),
            footer: /* @__PURE__ */ s.createElement(Pe, { href: "https://storybook.js.org/integrations", target: "_blank", withArrow: !0 }, /* @__PURE__ */ s.
            createElement(Pt, null), " Explore integrations catalog")
          }
        ),
        tools: /* @__PURE__ */ s.createElement(Zb, null, l ? /* @__PURE__ */ s.createElement(s.Fragment, null, /* @__PURE__ */ s.createElement(
          ee,
          {
            key: "position",
            onClick: o.togglePosition,
            title: `Change addon orientation [${Ye(
              t.panelPosition
            )}]`
          },
          r === "bottom" ? /* @__PURE__ */ s.createElement(wo, null) : /* @__PURE__ */ s.createElement(yo, null)
        ), /* @__PURE__ */ s.createElement(
          ee,
          {
            key: "visibility",
            onClick: o.toggleVisibility,
            title: `Hide addons [${Ye(t.togglePanel)}]`
          },
          /* @__PURE__ */ s.createElement(je, null)
        )) : /* @__PURE__ */ s.createElement(ee, { onClick: () => u(!1), "aria-label": "Close addon panel" }, /* @__PURE__ */ s.createElement(
        je, null))),
        id: "storybook-panel-root"
      },
      Object.entries(e).map(([c, d]) => (
        // @ts-expect-error (we know this is broken)
        /* @__PURE__ */ s.createElement(ki, { key: c, id: c, title: typeof d.title == "function" ? /* @__PURE__ */ s.createElement(d.title, null) :
        d.title }, d.render)
      ))
    );
  }
);
Oi.displayName = "AddonPanel";
var Zb = I.div({
  display: "flex",
  alignItems: "center",
  gap: 6
});

// src/manager/container/Panel.tsx
var Jb = /* @__PURE__ */ a((e) => {
  let t = oe(), o = Ne(), [i, r] = K(t.getCurrentStoryData());
  Ia(
    {
      [Xl]: () => {
        r(t.getCurrentStoryData());
      }
    },
    []
  );
  let { parameters: n, type: l } = i ?? {}, u = G(
    () => ({
      onSelect: /* @__PURE__ */ a((d) => t.setSelectedPanel(d), "onSelect"),
      toggleVisibility: /* @__PURE__ */ a(() => t.togglePanel(), "toggleVisibility"),
      togglePosition: /* @__PURE__ */ a(() => t.togglePanelPosition(), "togglePosition")
    }),
    [t]
  ), c = G(() => {
    let d = t.getElements(Ce.PANEL);
    if (!d || l !== "story")
      return d;
    let p = {};
    return Object.entries(d).forEach(([f, h]) => {
      let { paramKey: y } = h;
      y && n && n[y] && n[y].disable || h.disabled === !0 || typeof h.disabled == "function" && h.disabled(n) || (p[f] = h);
    }), p;
  }, [t, l, n]);
  return /* @__PURE__ */ s.createElement(
    Oi,
    {
      panels: c,
      selectedPanel: t.getSelectedPanel(),
      panelPosition: o.layout.panelPosition,
      actions: u,
      shortcuts: t.getShortcutKeys(),
      ...e
    }
  );
}, "Panel"), Zl = Jb;

// src/manager/container/Preview.tsx
var No = Ve(Di(), 1);

// src/manager/components/preview/Iframe.tsx
var ev = I.iframe(({ theme: e }) => ({
  backgroundColor: e.background.preview,
  display: "block",
  boxSizing: "content-box",
  height: "100%",
  width: "100%",
  border: "0 none",
  transition: "background-position 0s, visibility 0s",
  backgroundPosition: "-1px -1px, -1px -1px, -1px -1px, -1px -1px",
  margin: "auto",
  boxShadow: "0 0 100px 100vw rgba(0,0,0,0.5)"
}));
function eu(e) {
  let { active: t, id: o, title: i, src: r, allowFullScreen: n, scale: l, ...u } = e, c = s.useRef(null);
  return /* @__PURE__ */ s.createElement(Pa.IFrame, { scale: l, active: t, iFrameRef: c }, /* @__PURE__ */ s.createElement(
    ev,
    {
      "data-is-storybook": t ? "true" : "false",
      onLoad: (d) => d.currentTarget.setAttribute("data-is-loaded", "true"),
      id: o,
      title: i,
      src: r,
      allow: "clipboard-write;",
      allowFullScreen: n,
      ref: c,
      ...u
    }
  ));
}
a(eu, "IFrame");

// src/manager/components/preview/utils/stringifyQueryParams.tsx
var fu = Ve(du(), 1);
var mu = /* @__PURE__ */ a((e) => {
  let t = (0, fu.stringify)(e);
  return t === "" ? "" : `&${t}`;
}, "stringifyQueryParams");

// src/manager/components/preview/FramesRenderer.tsx
var Cv = /* @__PURE__ */ a((e, t) => e && t[e] ? `storybook-ref-${e}` : "storybook-preview-iframe", "getActive"), _v = I(he)(({ theme: e }) => ({
  display: "none",
  "@media (min-width: 600px)": {
    position: "absolute",
    display: "block",
    top: 10,
    right: 15,
    padding: "10px 15px",
    fontSize: e.typography.size.s1,
    transform: "translateY(-100px)",
    "&:focus": {
      transform: "translateY(0)",
      zIndex: 1
    }
  }
})), kv = /* @__PURE__ */ a(({ api: e, state: t }) => ({
  isFullscreen: e.getIsFullscreen(),
  isNavShown: e.getIsNavShown(),
  selectedStoryId: t.storyId
}), "whenSidebarIsVisible"), Ov = {
  '#root [data-is-storybook="false"]': {
    display: "none"
  },
  '#root [data-is-storybook="true"]': {
    display: "block"
  }
}, hu = /* @__PURE__ */ a(({
  refs: e,
  scale: t,
  viewMode: o = "story",
  refId: i,
  queryParams: r = {},
  baseUrl: n,
  storyId: l = "*"
}) => {
  let u = e[i]?.version, c = mu({
    ...r,
    ...u && { version: u }
  }), d = Cv(i, e), { current: p } = U({}), f = Object.values(e).filter((h) => h.type === "auto-inject" || h.id === i, {});
  return p["storybook-preview-iframe"] || (p["storybook-preview-iframe"] = to(n, l, {
    ...r,
    ...u && { version: u },
    viewMode: o
  })), f.forEach((h) => {
    let y = `storybook-ref-${h.id}`, m = p[y]?.split("/iframe.html")[0];
    if (!m || h.url !== m) {
      let b = `${h.url}/iframe.html?id=${l}&viewMode=${o}&refId=${h.id}${c}`;
      p[y] = b;
    }
  }), /* @__PURE__ */ s.createElement(Ee, null, /* @__PURE__ */ s.createElement(eo, { styles: Ov }), /* @__PURE__ */ s.createElement(me, { filter: kv },
  ({ isFullscreen: h, isNavShown: y, selectedStoryId: m }) => h || !y || !m ? null : /* @__PURE__ */ s.createElement(_v, { asChild: !0 }, /* @__PURE__ */ s.
  createElement("a", { href: `#${m}`, tabIndex: 0, title: "Skip to sidebar" }, "Skip to sidebar"))), Object.entries(p).map(([h, y]) => /* @__PURE__ */ s.
  createElement(Ee, { key: h }, /* @__PURE__ */ s.createElement(
    eu,
    {
      active: h === d,
      key: h,
      id: h,
      title: h,
      src: y,
      allowFullScreen: !0,
      scale: t
    }
  ))));
}, "FramesRenderer");

// src/manager/components/preview/tools/addons.tsx
var Pv = /* @__PURE__ */ a(({ api: e, state: t }) => ({
  isVisible: e.getIsPanelShown(),
  singleStory: t.singleStory,
  panelPosition: t.layout.panelPosition,
  toggle: /* @__PURE__ */ a(() => e.togglePanel(), "toggle")
}), "menuMapper"), gu = {
  title: "addons",
  id: "addons",
  type: be.TOOL,
  match: /* @__PURE__ */ a(({ viewMode: e, tabId: t }) => e === "story" && !t, "match"),
  render: /* @__PURE__ */ a(() => /* @__PURE__ */ s.createElement(me, { filter: Pv }, ({ isVisible: e, toggle: t, singleStory: o, panelPosition: i }) => !o &&
  !e && /* @__PURE__ */ s.createElement(s.Fragment, null, /* @__PURE__ */ s.createElement(ee, { "aria-label": "Show addons", key: "addons", onClick: t,
  title: "Show addons" }, i === "bottom" ? /* @__PURE__ */ s.createElement(yo, null) : /* @__PURE__ */ s.createElement(wo, null)))), "render")
};

// src/manager/components/preview/tools/copy.tsx
var Su = Ve(Iu(), 1);
var { PREVIEW_URL: Nv, document: Fv } = se, Rv = /* @__PURE__ */ a(({ state: e }) => {
  let { storyId: t, refId: o, refs: i } = e, { location: r } = Fv, n = i[o], l = `${r.origin}${r.pathname}`;
  return l.endsWith("/") || (l += "/"), {
    refId: o,
    baseUrl: n ? `${n.url}/iframe.html` : Nv || `${l}iframe.html`,
    storyId: t,
    queryParams: e.customQueryParams
  };
}, "copyMapper"), wu = {
  title: "copy",
  id: "copy",
  type: be.TOOL,
  match: /* @__PURE__ */ a(({ viewMode: e, tabId: t }) => e === "story" && !t, "match"),
  render: /* @__PURE__ */ a(() => /* @__PURE__ */ s.createElement(me, { filter: Rv }, ({ baseUrl: e, storyId: t, queryParams: o }) => t ? /* @__PURE__ */ s.
  createElement(
    ee,
    {
      key: "copy",
      onClick: () => (0, Su.default)(to(e, t, o)),
      title: "Copy canvas link"
    },
    /* @__PURE__ */ s.createElement(Wn, null)
  ) : null), "render")
};

// src/manager/components/preview/tools/eject.tsx
var { PREVIEW_URL: Bv } = se, Hv = /* @__PURE__ */ a(({ state: e }) => {
  let { storyId: t, refId: o, refs: i } = e, r = i[o];
  return {
    refId: o,
    baseUrl: r ? `${r.url}/iframe.html` : Bv || "iframe.html",
    storyId: t,
    queryParams: e.customQueryParams
  };
}, "ejectMapper"), Eu = {
  title: "eject",
  id: "eject",
  type: be.TOOL,
  match: /* @__PURE__ */ a(({ viewMode: e, tabId: t }) => e === "story" && !t, "match"),
  render: /* @__PURE__ */ a(() => /* @__PURE__ */ s.createElement(me, { filter: Hv }, ({ baseUrl: e, storyId: t, queryParams: o }) => t ? /* @__PURE__ */ s.
  createElement(ee, { key: "opener", asChild: !0 }, /* @__PURE__ */ s.createElement(
    "a",
    {
      href: to(e, t, o),
      target: "_blank",
      rel: "noopener noreferrer",
      title: "Open canvas in new tab"
    },
    /* @__PURE__ */ s.createElement(tt, null)
  )) : null), "render")
};

// src/manager/components/preview/tools/remount.tsx
var zv = I(ee)(({ theme: e, animating: t, disabled: o }) => ({
  opacity: o ? 0.5 : 1,
  svg: {
    animation: t ? `${e.animation.rotate360} 1000ms ease-out` : void 0
  }
})), Wv = /* @__PURE__ */ a(({ api: e, state: t }) => {
  let { storyId: o } = t;
  return {
    storyId: o,
    remount: /* @__PURE__ */ a(() => e.emit(Sn, { storyId: t.storyId }), "remount"),
    api: e
  };
}, "menuMapper"), Tu = {
  title: "remount",
  id: "remount",
  type: be.TOOL,
  match: /* @__PURE__ */ a(({ viewMode: e, tabId: t }) => e === "story" && !t, "match"),
  render: /* @__PURE__ */ a(() => /* @__PURE__ */ s.createElement(me, { filter: Wv }, ({ remount: e, storyId: t, api: o }) => {
    let [i, r] = K(!1), n = /* @__PURE__ */ a(() => {
      t && e();
    }, "remountComponent");
    return o.on(Sn, () => {
      r(!0);
    }), /* @__PURE__ */ s.createElement(
      zv,
      {
        key: "remount",
        title: "Remount component",
        onClick: n,
        onAnimationEnd: () => r(!1),
        animating: i,
        disabled: !t
      },
      /* @__PURE__ */ s.createElement(ct, null)
    );
  }), "render")
};

// src/manager/components/preview/tools/zoom.tsx
var Lo = 1, Cu = Qt({ value: Lo, set: /* @__PURE__ */ a((e) => {
}, "set") }), zi = class zi extends Le {
  constructor() {
    super(...arguments);
    this.state = {
      value: Lo
    };
    this.set = /* @__PURE__ */ a((o) => this.setState({ value: o }), "set");
  }
  render() {
    let { children: o, shouldScale: i } = this.props, { set: r } = this, { value: n } = this.state;
    return /* @__PURE__ */ s.createElement(Cu.Provider, { value: { value: i ? n : Lo, set: r } }, o);
  }
};
a(zi, "ZoomProvider");
var Ar = zi, { Consumer: Hi } = Cu, Vv = _t(/* @__PURE__ */ a(function({ zoomIn: t, zoomOut: o, reset: i }) {
  return /* @__PURE__ */ s.createElement(s.Fragment, null, /* @__PURE__ */ s.createElement(ee, { key: "zoomin", onClick: t, title: "Zoom in" },
  /* @__PURE__ */ s.createElement(Jn, null)), /* @__PURE__ */ s.createElement(ee, { key: "zoomout", onClick: o, title: "Zoom out" }, /* @__PURE__ */ s.
  createElement(ei, null)), /* @__PURE__ */ s.createElement(ee, { key: "zoomreset", onClick: i, title: "Reset zoom" }, /* @__PURE__ */ s.createElement(
  ti, null)));
}, "Zoom"));
var jv = _t(/* @__PURE__ */ a(function({
  set: t,
  value: o
}) {
  let i = A(
    (l) => {
      l.preventDefault(), t(0.8 * o);
    },
    [t, o]
  ), r = A(
    (l) => {
      l.preventDefault(), t(1.25 * o);
    },
    [t, o]
  ), n = A(
    (l) => {
      l.preventDefault(), t(Lo);
    },
    [t, Lo]
  );
  return /* @__PURE__ */ s.createElement(Vv, { key: "zoom", zoomIn: i, zoomOut: r, reset: n });
}, "ZoomWrapper"));
function Kv() {
  return /* @__PURE__ */ s.createElement(s.Fragment, null, /* @__PURE__ */ s.createElement(Hi, null, ({ set: e, value: t }) => /* @__PURE__ */ s.
  createElement(jv, { set: e, value: t })), /* @__PURE__ */ s.createElement(yt, null));
}
a(Kv, "ZoomToolRenderer");
var _u = {
  title: "zoom",
  id: "zoom",
  type: be.TOOL,
  match: /* @__PURE__ */ a(({ viewMode: e, tabId: t }) => e === "story" && !t, "match"),
  render: Kv
};

// src/manager/components/preview/Toolbar.tsx
var $v = /* @__PURE__ */ a(({ api: e, state: t }) => ({
  toggle: e.toggleFullscreen,
  isFullscreen: e.getIsFullscreen(),
  shortcut: Ye(e.getShortcutKeys().fullScreen),
  hasPanel: Object.keys(e.getElements(Ce.PANEL)).length > 0,
  singleStory: t.singleStory
}), "fullScreenMapper"), Ou = {
  title: "fullscreen",
  id: "fullscreen",
  type: be.TOOL,
  // @ts-expect-error (non strict)
  match: /* @__PURE__ */ a((e) => ["story", "docs"].includes(e.viewMode), "match"),
  render: /* @__PURE__ */ a(() => {
    let { isMobile: e } = ge();
    return e ? null : /* @__PURE__ */ s.createElement(me, { filter: $v }, ({ toggle: t, isFullscreen: o, shortcut: i, hasPanel: r, singleStory: n }) => (!n ||
    n && r) && /* @__PURE__ */ s.createElement(
      ee,
      {
        key: "full",
        onClick: t,
        title: `${o ? "Exit full screen" : "Go full screen"} [${i}]`,
        "aria-label": o ? "Exit full screen" : "Go full screen"
      },
      o ? /* @__PURE__ */ s.createElement(je, null) : /* @__PURE__ */ s.createElement(Mn, null)
    ));
  }, "render")
};
var Pu = s.memo(/* @__PURE__ */ a(function({
  isShown: t,
  tools: o,
  toolsExtra: i,
  tabs: r,
  tabId: n,
  api: l
}) {
  let u = na();
  return r || o || i ? /* @__PURE__ */ s.createElement(
    Gv,
    {
      className: "sb-bar",
      key: "toolbar",
      shown: t,
      "data-test-id": "sb-preview-toolbar",
      "aria-labelledby": u
    },
    /* @__PURE__ */ s.createElement("span", { className: "sb-sr-only", id: u }, "Toolbar"),
    /* @__PURE__ */ s.createElement(qv, null, /* @__PURE__ */ s.createElement(Au, null, r.length > 1 ? /* @__PURE__ */ s.createElement(Ee, null,
    /* @__PURE__ */ s.createElement(ar, { key: "tabs" }, r.map((c, d) => /* @__PURE__ */ s.createElement(
      lr,
      {
        disabled: !!c.disabled,
        active: c.id === n || c.id === "canvas" && !n,
        onClick: () => {
          l.applyQueryParams({ tab: c.id === "canvas" ? void 0 : c.id });
        },
        key: c.id || `tab-${d}`
      },
      c.title
    ))), /* @__PURE__ */ s.createElement(yt, null)) : null, /* @__PURE__ */ s.createElement(ku, { key: "left", list: o })), /* @__PURE__ */ s.
    createElement(Yv, null, /* @__PURE__ */ s.createElement(ku, { key: "right", list: i })))
  ) : null;
}, "ToolbarComp")), ku = s.memo(/* @__PURE__ */ a(function({ list: t }) {
  return /* @__PURE__ */ s.createElement(s.Fragment, null, t.filter(Boolean).map(({ render: o, id: i, ...r }, n) => (
    // @ts-expect-error (Converted from ts-ignore)
    /* @__PURE__ */ s.createElement(o, { key: i || r.key || `f-${n}` })
  )));
}, "Tools"));
function Uv(e, t) {
  let o = t?.type === "story" && t?.prepared ? t?.parameters : {}, i = "toolbar" in o ? o.toolbar : void 0, { toolbar: r } = He.getConfig(),
  n = er(
    r || {},
    i || {}
  );
  return n ? !!n[e?.id]?.hidden : !1;
}
a(Uv, "toolbarItemHasBeenExcluded");
function Wi(e, t, o, i, r, n) {
  let l = /* @__PURE__ */ a((u) => u && (!u.match || u.match({
    storyId: t?.id,
    refId: t?.refId,
    viewMode: o,
    location: i,
    path: r,
    tabId: n
  })) && !Uv(u, t), "filter");
  return e.filter(l);
}
a(Wi, "filterToolsSide");
var Gv = I.section(({ theme: e, shown: t }) => ({
  position: "relative",
  color: e.barTextColor,
  width: "100%",
  flexShrink: 0,
  overflowX: "auto",
  overflowY: "hidden",
  marginTop: t ? 0 : -40,
  boxShadow: `${e.appBorderColor}  0 -1px 0 0 inset`,
  background: e.barBg,
  scrollbarColor: `${e.barTextColor} ${e.barBg}`,
  scrollbarWidth: "thin",
  zIndex: 4
})), qv = I.div({
  width: "calc(100% - 20px)",
  display: "flex",
  justifyContent: "space-between",
  flexWrap: "nowrap",
  flexShrink: 0,
  height: 40,
  marginLeft: 10,
  marginRight: 10
}), Au = I.div({
  display: "flex",
  whiteSpace: "nowrap",
  flexBasis: "auto",
  gap: 6,
  alignItems: "center"
}), Yv = I(Au)({
  marginLeft: 30
});

// src/manager/components/preview/utils/components.ts
var Du = I.main({
  display: "flex",
  flexDirection: "column",
  width: "100%",
  height: "100%",
  overflow: "hidden"
}), Mu = I.div({
  overflow: "auto",
  width: "100%",
  zIndex: 3,
  background: "transparent",
  flex: 1
}), Lu = I.div(
  {
    alignContent: "center",
    alignItems: "center",
    justifyContent: "center",
    justifyItems: "center",
    overflow: "auto",
    gridTemplateColumns: "100%",
    gridTemplateRows: "100%",
    position: "relative",
    width: "100%",
    height: "100%"
  },
  ({ show: e }) => ({ display: e ? "grid" : "none" })
), HD = I(pr)({
  color: "inherit",
  textDecoration: "inherit",
  display: "inline-block"
}), zD = I.span({
  // Hides full screen icon at mobile breakpoint defined in app.js
  "@media (max-width: 599px)": {
    display: "none"
  }
}), Dr = I.div(({ theme: e }) => ({
  alignContent: "center",
  alignItems: "center",
  justifyContent: "center",
  justifyItems: "center",
  overflow: "auto",
  display: "grid",
  gridTemplateColumns: "100%",
  gridTemplateRows: "100%",
  position: "relative",
  width: "100%",
  height: "100%"
})), Nu = I.div(({ theme: e }) => ({
  position: "absolute",
  top: 0,
  left: 0,
  bottom: 0,
  right: 0,
  background: e.background.preview,
  zIndex: 1
}));

// src/manager/components/preview/Wrappers.tsx
var Fu = /* @__PURE__ */ a(({
  wrappers: e,
  id: t,
  storyId: o,
  children: i
}) => /* @__PURE__ */ s.createElement(Ee, null, e.reduceRight(
  (r, n, l) => /* @__PURE__ */ s.createElement(n.render, { index: l, children: r, id: t, storyId: o }),
  i
)), "ApplyWrappers"), Ru = [
  {
    id: "iframe-wrapper",
    type: Ce.PREVIEW,
    render: /* @__PURE__ */ a((e) => /* @__PURE__ */ s.createElement(Dr, { id: "storybook-preview-wrapper" }, e.children), "render")
  }
];

// src/manager/components/preview/Preview.tsx
var Xv = /* @__PURE__ */ a(({ state: e, api: t }) => ({
  storyId: e.storyId,
  refId: e.refId,
  viewMode: e.viewMode,
  customCanvas: t.renderPreview,
  queryParams: e.customQueryParams,
  getElements: t.getElements,
  entry: t.getData(e.storyId, e.refId),
  previewInitialized: e.previewInitialized,
  refs: e.refs
}), "canvasMapper"), Bu = /* @__PURE__ */ a(() => ({
  id: "canvas",
  type: be.TAB,
  title: "Canvas",
  route: /* @__PURE__ */ a(({ storyId: e, refId: t }) => t ? `/story/${t}_${e}` : `/story/${e}`, "route"),
  match: /* @__PURE__ */ a(({ viewMode: e }) => !!(e && e.match(/^(story|docs)$/)), "match"),
  render: /* @__PURE__ */ a(() => null, "render")
}), "createCanvasTab"), Hu = s.memo(/* @__PURE__ */ a(function(t) {
  let {
    api: o,
    id: i,
    options: r,
    viewMode: n,
    storyId: l,
    entry: u = void 0,
    description: c,
    baseUrl: d,
    withLoader: p = !0,
    tools: f,
    toolsExtra: h,
    tabs: y,
    wrappers: m,
    tabId: b
  } = t, x = y.find((w) => w.id === b)?.render, E = n === "story", { showToolbar: g } = r, v = o.getShowToolbarWithCustomisations(g), S = U(
  l);
  return H(() => {
    if (u && n) {
      if (l === S.current)
        return;
      if (S.current = l, n.match(/docs|story/)) {
        let { refId: w, id: k } = u;
        o.emit(ya, {
          storyId: k,
          viewMode: n,
          options: { target: w }
        });
      }
    }
  }, [u, n, l, o]), /* @__PURE__ */ s.createElement(Ee, null, i === "main" && /* @__PURE__ */ s.createElement(ko, { key: "description" }, /* @__PURE__ */ s.
  createElement("title", null, c)), /* @__PURE__ */ s.createElement(Ar, { shouldScale: E }, /* @__PURE__ */ s.createElement(Du, null, /* @__PURE__ */ s.
  createElement(
    Pu,
    {
      key: "tools",
      isShown: v,
      tabId: b,
      tabs: y,
      tools: f,
      toolsExtra: h,
      api: o
    }
  ), /* @__PURE__ */ s.createElement(Mu, { key: "frame" }, x && /* @__PURE__ */ s.createElement(Dr, null, x({ active: !0 })), /* @__PURE__ */ s.
  createElement(Lu, { show: !b }, /* @__PURE__ */ s.createElement(Zv, { withLoader: p, baseUrl: d, wrappers: m }))))));
}, "Preview"));
var Zv = /* @__PURE__ */ a(({ baseUrl: e, withLoader: t, wrappers: o }) => /* @__PURE__ */ s.createElement(me, { filter: Xv }, ({
  entry: i,
  refs: r,
  customCanvas: n,
  storyId: l,
  refId: u,
  viewMode: c,
  queryParams: d,
  previewInitialized: p
}) => {
  let f = "canvas", [h, y] = K(void 0);
  H(() => {
    if (se.CONFIG_TYPE === "DEVELOPMENT")
      try {
        He.getChannel().on(ma, (v) => {
          y(v);
        });
      } catch {
      }
  }, []);
  let m = !!r[u] && !r[u].previewInitialized, b = !(h?.value === 1 || h === void 0), x = !u && (!p || b), E = i && m || x;
  return /* @__PURE__ */ s.createElement(Hi, null, ({ value: g }) => /* @__PURE__ */ s.createElement(s.Fragment, null, t && E && /* @__PURE__ */ s.
  createElement(Nu, null, /* @__PURE__ */ s.createElement(nr, { id: "preview-loader", role: "progressbar", progress: h })), /* @__PURE__ */ s.
  createElement(Fu, { id: f, storyId: l, viewMode: c, wrappers: o }, n ? n(l, c, f, e, g, d) : /* @__PURE__ */ s.createElement(
    hu,
    {
      baseUrl: e,
      refs: r,
      scale: g,
      entry: i,
      viewMode: c,
      refId: u,
      queryParams: d,
      storyId: l
    }
  ))));
}), "Canvas");
function zu(e, t) {
  let { previewTabs: o } = He.getConfig(), i = t ? t.previewTabs : void 0;
  if (o || i) {
    let r = er(o || {}, i || {}), n = Object.keys(r).map((l, u) => ({
      index: u,
      ...typeof r[l] == "string" ? { title: r[l] } : r[l],
      id: l
    }));
    return e.filter((l) => {
      let u = n.find((c) => c.id === l.id);
      return u === void 0 || u.id === "canvas" || !u.hidden;
    }).map((l, u) => ({ ...l, index: u })).sort((l, u) => {
      let c = n.find((h) => h.id === l.id), d = c ? c.index : n.length + l.index, p = n.find((h) => h.id === u.id), f = p ? p.index : n.length +
      u.index;
      return d - f;
    }).map((l) => {
      let u = n.find((c) => c.id === l.id);
      return u ? {
        ...l,
        title: u.title || l.title,
        disabled: u.disabled,
        hidden: u.hidden
      } : l;
    });
  }
  return e;
}
a(zu, "filterTabs");

// src/manager/components/preview/tools/menu.tsx
var Jv = /* @__PURE__ */ a(({ api: e, state: t }) => ({
  isVisible: e.getIsNavShown(),
  singleStory: t.singleStory,
  toggle: /* @__PURE__ */ a(() => e.toggleNav(), "toggle")
}), "menuMapper"), Wu = {
  title: "menu",
  id: "menu",
  type: be.TOOL,
  // @ts-expect-error (non strict)
  match: /* @__PURE__ */ a(({ viewMode: e }) => ["story", "docs"].includes(e), "match"),
  render: /* @__PURE__ */ a(() => /* @__PURE__ */ s.createElement(me, { filter: Jv }, ({ isVisible: e, toggle: t, singleStory: o }) => !o &&
  !e && /* @__PURE__ */ s.createElement(s.Fragment, null, /* @__PURE__ */ s.createElement(ee, { "aria-label": "Show sidebar", key: "menu", onClick: t,
  title: "Show sidebar" }, /* @__PURE__ */ s.createElement(Io, null)), /* @__PURE__ */ s.createElement(yt, null))), "render")
};

// src/manager/container/Preview.tsx
var e0 = [Bu()], t0 = [Wu, Tu, _u], o0 = [gu, Ou, Eu, wu], r0 = [], n0 = (0, No.default)(1)(
  (e, t, o, i) => i ? zu([...e0, ...Object.values(t)], o) : r0
), i0 = (0, No.default)(1)(
  (e, t, o) => Wi([...t0, ...Object.values(t)], ...o)
), s0 = (0, No.default)(1)(
  (e, t, o) => Wi([...o0, ...Object.values(t)], ...o)
), a0 = (0, No.default)(1)((e, t) => [
  ...Ru,
  ...Object.values(t)
]), { PREVIEW_URL: l0 } = se, u0 = /* @__PURE__ */ a((e) => e.split("/").join(" / ").replace(/\s\s/, " "), "splitTitleAddExtraSpace"), c0 = /* @__PURE__ */ a(
(e) => {
  if (e?.type === "story" || e?.type === "docs") {
    let { title: t, name: o } = e;
    return t && o ? u0(`${t} - ${o} \u22C5 Storybook`) : "Storybook";
  }
  return e?.name ? `${e.name} \u22C5 Storybook` : "Storybook";
}, "getDescription"), p0 = /* @__PURE__ */ a(({
  api: e,
  state: t
  // @ts-expect-error (non strict)
}) => {
  let { layout: o, location: i, customQueryParams: r, storyId: n, refs: l, viewMode: u, path: c, refId: d } = t, p = e.getData(n, d), f = Object.
  values(e.getElements(Ce.TAB)), h = Object.values(e.getElements(Ce.PREVIEW)), y = Object.values(e.getElements(Ce.TOOL)), m = Object.values(
  e.getElements(Ce.TOOLEXTRA)), b = e.getQueryParam("tab"), x = i0(y.length, e.getElements(Ce.TOOL), [
    p,
    u,
    i,
    c,
    // @ts-expect-error (non strict)
    b
  ]), E = s0(
    m.length,
    e.getElements(Ce.TOOLEXTRA),
    // @ts-expect-error (non strict)
    [p, u, i, c, b]
  );
  return {
    api: e,
    entry: p,
    options: o,
    description: c0(p),
    viewMode: u,
    refs: l,
    storyId: n,
    baseUrl: l0 || "iframe.html",
    queryParams: r,
    tools: x,
    toolsExtra: E,
    tabs: n0(
      f.length,
      e.getElements(Ce.TAB),
      p ? p.parameters : void 0,
      o.showTabs
    ),
    wrappers: a0(
      h.length,
      e.getElements(Ce.PREVIEW)
    ),
    tabId: b
  };
}, "mapper"), d0 = s.memo(/* @__PURE__ */ a(function(t) {
  return /* @__PURE__ */ s.createElement(me, { filter: p0 }, (o) => /* @__PURE__ */ s.createElement(Hu, { ...t, ...o }));
}, "PreviewConnected")), Vu = d0;

// src/manager/hooks/useDebounce.ts
function ju(e, t) {
  let [o, i] = K(e);
  return H(() => {
    let r = setTimeout(() => {
      i(e);
    }, t);
    return () => {
      clearTimeout(r);
    };
  }, [e, t]), o;
}
a(ju, "useDebounce");

// src/manager/hooks/useMeasure.tsx
function Ku() {
  let [e, t] = s.useState({
    width: null,
    height: null
  }), o = s.useRef(null);
  return [s.useCallback((r) => {
    if (o.current && (o.current.disconnect(), o.current = null), r?.nodeType === Node.ELEMENT_NODE) {
      let n = new ResizeObserver(([l]) => {
        if (l && l.borderBoxSize) {
          let { inlineSize: u, blockSize: c } = l.borderBoxSize[0];
          t({ width: u, height: c });
        }
      });
      n.observe(r), o.current = n;
    }
  }, []), e];
}
a(Ku, "useMeasure");

// ../node_modules/@tanstack/virtual-core/dist/esm/utils.js
function Ht(e, t, o) {
  let i = o.initialDeps ?? [], r;
  function n() {
    var l, u, c, d;
    let p;
    o.key && ((l = o.debug) != null && l.call(o)) && (p = Date.now());
    let f = e();
    if (!(f.length !== i.length || f.some((m, b) => i[b] !== m)))
      return r;
    i = f;
    let y;
    if (o.key && ((u = o.debug) != null && u.call(o)) && (y = Date.now()), r = t(...f), o.key && ((c = o.debug) != null && c.call(o))) {
      let m = Math.round((Date.now() - p) * 100) / 100, b = Math.round((Date.now() - y) * 100) / 100, x = b / 16, E = /* @__PURE__ */ a((g, v) => {
        for (g = String(g); g.length < v; )
          g = " " + g;
        return g;
      }, "pad");
      console.info(
        `%c\u23F1 ${E(b, 5)} /${E(m, 5)} ms`,
        `
            font-size: .6rem;
            font-weight: bold;
            color: hsl(${Math.max(
          0,
          Math.min(120 - 120 * x, 120)
        )}deg 100% 31%);`,
        o?.key
      );
    }
    return (d = o?.onChange) == null || d.call(o, r), r;
  }
  return a(n, "memoizedFunction"), n.updateDeps = (l) => {
    i = l;
  }, n;
}
a(Ht, "memo");
function Mr(e, t) {
  if (e === void 0)
    throw new Error(`Unexpected undefined${t ? `: ${t}` : ""}`);
  return e;
}
a(Mr, "notUndefined");
var $u = /* @__PURE__ */ a((e, t) => Math.abs(e - t) < 1, "approxEqual"), Uu = /* @__PURE__ */ a((e, t, o) => {
  let i;
  return function(...r) {
    e.clearTimeout(i), i = e.setTimeout(() => t.apply(this, r), o);
  };
}, "debounce");

// ../node_modules/@tanstack/virtual-core/dist/esm/index.js
var f0 = /* @__PURE__ */ a((e) => e, "defaultKeyExtractor"), m0 = /* @__PURE__ */ a((e) => {
  let t = Math.max(e.startIndex - e.overscan, 0), o = Math.min(e.endIndex + e.overscan, e.count - 1), i = [];
  for (let r = t; r <= o; r++)
    i.push(r);
  return i;
}, "defaultRangeExtractor"), Yu = /* @__PURE__ */ a((e, t) => {
  let o = e.scrollElement;
  if (!o)
    return;
  let i = e.targetWindow;
  if (!i)
    return;
  let r = /* @__PURE__ */ a((l) => {
    let { width: u, height: c } = l;
    t({ width: Math.round(u), height: Math.round(c) });
  }, "handler");
  if (r(o.getBoundingClientRect()), !i.ResizeObserver)
    return () => {
    };
  let n = new i.ResizeObserver((l) => {
    let u = /* @__PURE__ */ a(() => {
      let c = l[0];
      if (c?.borderBoxSize) {
        let d = c.borderBoxSize[0];
        if (d) {
          r({ width: d.inlineSize, height: d.blockSize });
          return;
        }
      }
      r(o.getBoundingClientRect());
    }, "run");
    e.options.useAnimationFrameWithResizeObserver ? requestAnimationFrame(u) : u();
  });
  return n.observe(o, { box: "border-box" }), () => {
    n.unobserve(o);
  };
}, "observeElementRect"), Gu = {
  passive: !0
};
var qu = typeof window > "u" ? !0 : "onscrollend" in window, Qu = /* @__PURE__ */ a((e, t) => {
  let o = e.scrollElement;
  if (!o)
    return;
  let i = e.targetWindow;
  if (!i)
    return;
  let r = 0, n = e.options.useScrollendEvent && qu ? () => {
  } : Uu(
    i,
    () => {
      t(r, !1);
    },
    e.options.isScrollingResetDelay
  ), l = /* @__PURE__ */ a((p) => () => {
    let { horizontal: f, isRtl: h } = e.options;
    r = f ? o.scrollLeft * (h && -1 || 1) : o.scrollTop, n(), t(r, p);
  }, "createHandler"), u = l(!0), c = l(!1);
  c(), o.addEventListener("scroll", u, Gu);
  let d = e.options.useScrollendEvent && qu;
  return d && o.addEventListener("scrollend", c, Gu), () => {
    o.removeEventListener("scroll", u), d && o.removeEventListener("scrollend", c);
  };
}, "observeElementOffset");
var h0 = /* @__PURE__ */ a((e, t, o) => {
  if (t?.borderBoxSize) {
    let i = t.borderBoxSize[0];
    if (i)
      return Math.round(
        i[o.options.horizontal ? "inlineSize" : "blockSize"]
      );
  }
  return Math.round(
    e.getBoundingClientRect()[o.options.horizontal ? "width" : "height"]
  );
}, "measureElement");
var Xu = /* @__PURE__ */ a((e, {
  adjustments: t = 0,
  behavior: o
}, i) => {
  var r, n;
  let l = e + t;
  (n = (r = i.scrollElement) == null ? void 0 : r.scrollTo) == null || n.call(r, {
    [i.options.horizontal ? "left" : "top"]: l,
    behavior: o
  });
}, "elementScroll"), Vi = class Vi {
  constructor(t) {
    this.unsubs = [], this.scrollElement = null, this.targetWindow = null, this.isScrolling = !1, this.scrollToIndexTimeoutId = null, this.measurementsCache =
    [], this.itemSizeCache = /* @__PURE__ */ new Map(), this.pendingMeasuredCacheIndexes = [], this.scrollRect = null, this.scrollOffset = null,
    this.scrollDirection = null, this.scrollAdjustments = 0, this.elementsCache = /* @__PURE__ */ new Map(), this.observer = /* @__PURE__ */ (() => {
      let o = null, i = /* @__PURE__ */ a(() => o || (!this.targetWindow || !this.targetWindow.ResizeObserver ? null : o = new this.targetWindow.
      ResizeObserver((r) => {
        r.forEach((n) => {
          let l = /* @__PURE__ */ a(() => {
            this._measureElement(n.target, n);
          }, "run");
          this.options.useAnimationFrameWithResizeObserver ? requestAnimationFrame(l) : l();
        });
      })), "get");
      return {
        disconnect: /* @__PURE__ */ a(() => {
          var r;
          (r = i()) == null || r.disconnect(), o = null;
        }, "disconnect"),
        observe: /* @__PURE__ */ a((r) => {
          var n;
          return (n = i()) == null ? void 0 : n.observe(r, { box: "border-box" });
        }, "observe"),
        unobserve: /* @__PURE__ */ a((r) => {
          var n;
          return (n = i()) == null ? void 0 : n.unobserve(r);
        }, "unobserve")
      };
    })(), this.range = null, this.setOptions = (o) => {
      Object.entries(o).forEach(([i, r]) => {
        typeof r > "u" && delete o[i];
      }), this.options = {
        debug: !1,
        initialOffset: 0,
        overscan: 1,
        paddingStart: 0,
        paddingEnd: 0,
        scrollPaddingStart: 0,
        scrollPaddingEnd: 0,
        horizontal: !1,
        getItemKey: f0,
        rangeExtractor: m0,
        onChange: /* @__PURE__ */ a(() => {
        }, "onChange"),
        measureElement: h0,
        initialRect: { width: 0, height: 0 },
        scrollMargin: 0,
        gap: 0,
        indexAttribute: "data-index",
        initialMeasurementsCache: [],
        lanes: 1,
        isScrollingResetDelay: 150,
        enabled: !0,
        isRtl: !1,
        useScrollendEvent: !1,
        useAnimationFrameWithResizeObserver: !1,
        ...o
      };
    }, this.notify = (o) => {
      var i, r;
      (r = (i = this.options).onChange) == null || r.call(i, this, o);
    }, this.maybeNotify = Ht(
      () => (this.calculateRange(), [
        this.isScrolling,
        this.range ? this.range.startIndex : null,
        this.range ? this.range.endIndex : null
      ]),
      (o) => {
        this.notify(o);
      },
      {
        key: !1,
        debug: /* @__PURE__ */ a(() => this.options.debug, "debug"),
        initialDeps: [
          this.isScrolling,
          this.range ? this.range.startIndex : null,
          this.range ? this.range.endIndex : null
        ]
      }
    ), this.cleanup = () => {
      this.unsubs.filter(Boolean).forEach((o) => o()), this.unsubs = [], this.observer.disconnect(), this.scrollElement = null, this.targetWindow =
      null;
    }, this._didMount = () => () => {
      this.cleanup();
    }, this._willUpdate = () => {
      var o;
      let i = this.options.enabled ? this.options.getScrollElement() : null;
      if (this.scrollElement !== i) {
        if (this.cleanup(), !i) {
          this.maybeNotify();
          return;
        }
        this.scrollElement = i, this.scrollElement && "ownerDocument" in this.scrollElement ? this.targetWindow = this.scrollElement.ownerDocument.
        defaultView : this.targetWindow = ((o = this.scrollElement) == null ? void 0 : o.window) ?? null, this.elementsCache.forEach((r) => {
          this.observer.observe(r);
        }), this._scrollToOffset(this.getScrollOffset(), {
          adjustments: void 0,
          behavior: void 0
        }), this.unsubs.push(
          this.options.observeElementRect(this, (r) => {
            this.scrollRect = r, this.maybeNotify();
          })
        ), this.unsubs.push(
          this.options.observeElementOffset(this, (r, n) => {
            this.scrollAdjustments = 0, this.scrollDirection = n ? this.getScrollOffset() < r ? "forward" : "backward" : null, this.scrollOffset =
            r, this.isScrolling = n, this.maybeNotify();
          })
        );
      }
    }, this.getSize = () => this.options.enabled ? (this.scrollRect = this.scrollRect ?? this.options.initialRect, this.scrollRect[this.options.
    horizontal ? "width" : "height"]) : (this.scrollRect = null, 0), this.getScrollOffset = () => this.options.enabled ? (this.scrollOffset =
    this.scrollOffset ?? (typeof this.options.initialOffset == "function" ? this.options.initialOffset() : this.options.initialOffset), this.
    scrollOffset) : (this.scrollOffset = null, 0), this.getFurthestMeasurement = (o, i) => {
      let r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
      for (let l = i - 1; l >= 0; l--) {
        let u = o[l];
        if (r.has(u.lane))
          continue;
        let c = n.get(
          u.lane
        );
        if (c == null || u.end > c.end ? n.set(u.lane, u) : u.end < c.end && r.set(u.lane, !0), r.size === this.options.lanes)
          break;
      }
      return n.size === this.options.lanes ? Array.from(n.values()).sort((l, u) => l.end === u.end ? l.index - u.index : l.end - u.end)[0] :
      void 0;
    }, this.getMeasurementOptions = Ht(
      () => [
        this.options.count,
        this.options.paddingStart,
        this.options.scrollMargin,
        this.options.getItemKey,
        this.options.enabled
      ],
      (o, i, r, n, l) => (this.pendingMeasuredCacheIndexes = [], {
        count: o,
        paddingStart: i,
        scrollMargin: r,
        getItemKey: n,
        enabled: l
      }),
      {
        key: !1
      }
    ), this.getMeasurements = Ht(
      () => [this.getMeasurementOptions(), this.itemSizeCache],
      ({ count: o, paddingStart: i, scrollMargin: r, getItemKey: n, enabled: l }, u) => {
        if (!l)
          return this.measurementsCache = [], this.itemSizeCache.clear(), [];
        this.measurementsCache.length === 0 && (this.measurementsCache = this.options.initialMeasurementsCache, this.measurementsCache.forEach(
        (p) => {
          this.itemSizeCache.set(p.key, p.size);
        }));
        let c = this.pendingMeasuredCacheIndexes.length > 0 ? Math.min(...this.pendingMeasuredCacheIndexes) : 0;
        this.pendingMeasuredCacheIndexes = [];
        let d = this.measurementsCache.slice(0, c);
        for (let p = c; p < o; p++) {
          let f = n(p), h = this.options.lanes === 1 ? d[p - 1] : this.getFurthestMeasurement(d, p), y = h ? h.end + this.options.gap : i + r,
          m = u.get(f), b = typeof m == "number" ? m : this.options.estimateSize(p), x = y + b, E = h ? h.lane : p % this.options.lanes;
          d[p] = {
            index: p,
            start: y,
            size: b,
            end: x,
            key: f,
            lane: E
          };
        }
        return this.measurementsCache = d, d;
      },
      {
        key: !1,
        debug: /* @__PURE__ */ a(() => this.options.debug, "debug")
      }
    ), this.calculateRange = Ht(
      () => [
        this.getMeasurements(),
        this.getSize(),
        this.getScrollOffset(),
        this.options.lanes
      ],
      (o, i, r, n) => this.range = o.length > 0 && i > 0 ? g0({
        measurements: o,
        outerSize: i,
        scrollOffset: r,
        lanes: n
      }) : null,
      {
        key: !1,
        debug: /* @__PURE__ */ a(() => this.options.debug, "debug")
      }
    ), this.getVirtualIndexes = Ht(
      () => {
        let o = null, i = null, r = this.calculateRange();
        return r && (o = r.startIndex, i = r.endIndex), this.maybeNotify.updateDeps([this.isScrolling, o, i]), [
          this.options.rangeExtractor,
          this.options.overscan,
          this.options.count,
          o,
          i
        ];
      },
      (o, i, r, n, l) => n === null || l === null ? [] : o({
        startIndex: n,
        endIndex: l,
        overscan: i,
        count: r
      }),
      {
        key: !1,
        debug: /* @__PURE__ */ a(() => this.options.debug, "debug")
      }
    ), this.indexFromElement = (o) => {
      let i = this.options.indexAttribute, r = o.getAttribute(i);
      return r ? parseInt(r, 10) : (console.warn(
        `Missing attribute name '${i}={index}' on measured element.`
      ), -1);
    }, this._measureElement = (o, i) => {
      let r = this.indexFromElement(o), n = this.measurementsCache[r];
      if (!n)
        return;
      let l = n.key, u = this.elementsCache.get(l);
      u !== o && (u && this.observer.unobserve(u), this.observer.observe(o), this.elementsCache.set(l, o)), o.isConnected && this.resizeItem(
      r, this.options.measureElement(o, i, this));
    }, this.resizeItem = (o, i) => {
      let r = this.measurementsCache[o];
      if (!r)
        return;
      let n = this.itemSizeCache.get(r.key) ?? r.size, l = i - n;
      l !== 0 && ((this.shouldAdjustScrollPositionOnItemSizeChange !== void 0 ? this.shouldAdjustScrollPositionOnItemSizeChange(r, l, this) :
      r.start < this.getScrollOffset() + this.scrollAdjustments) && this._scrollToOffset(this.getScrollOffset(), {
        adjustments: this.scrollAdjustments += l,
        behavior: void 0
      }), this.pendingMeasuredCacheIndexes.push(r.index), this.itemSizeCache = new Map(this.itemSizeCache.set(r.key, i)), this.notify(!1));
    }, this.measureElement = (o) => {
      if (!o) {
        this.elementsCache.forEach((i, r) => {
          i.isConnected || (this.observer.unobserve(i), this.elementsCache.delete(r));
        });
        return;
      }
      this._measureElement(o, void 0);
    }, this.getVirtualItems = Ht(
      () => [this.getVirtualIndexes(), this.getMeasurements()],
      (o, i) => {
        let r = [];
        for (let n = 0, l = o.length; n < l; n++) {
          let u = o[n], c = i[u];
          r.push(c);
        }
        return r;
      },
      {
        key: !1,
        debug: /* @__PURE__ */ a(() => this.options.debug, "debug")
      }
    ), this.getVirtualItemForOffset = (o) => {
      let i = this.getMeasurements();
      if (i.length !== 0)
        return Mr(
          i[Zu(
            0,
            i.length - 1,
            (r) => Mr(i[r]).start,
            o
          )]
        );
    }, this.getOffsetForAlignment = (o, i, r = 0) => {
      let n = this.getSize(), l = this.getScrollOffset();
      i === "auto" && (i = o >= l + n ? "end" : "start"), i === "center" ? o += (r - n) / 2 : i === "end" && (o -= n);
      let u = this.options.horizontal ? "scrollWidth" : "scrollHeight", d = (this.scrollElement ? "document" in this.scrollElement ? this.scrollElement.
      document.documentElement[u] : this.scrollElement[u] : 0) - n;
      return Math.max(Math.min(d, o), 0);
    }, this.getOffsetForIndex = (o, i = "auto") => {
      o = Math.max(0, Math.min(o, this.options.count - 1));
      let r = this.measurementsCache[o];
      if (!r)
        return;
      let n = this.getSize(), l = this.getScrollOffset();
      if (i === "auto")
        if (r.end >= l + n - this.options.scrollPaddingEnd)
          i = "end";
        else if (r.start <= l + this.options.scrollPaddingStart)
          i = "start";
        else
          return [l, i];
      let u = i === "end" ? r.end + this.options.scrollPaddingEnd : r.start - this.options.scrollPaddingStart;
      return [
        this.getOffsetForAlignment(u, i, r.size),
        i
      ];
    }, this.isDynamicMode = () => this.elementsCache.size > 0, this.cancelScrollToIndex = () => {
      this.scrollToIndexTimeoutId !== null && this.targetWindow && (this.targetWindow.clearTimeout(this.scrollToIndexTimeoutId), this.scrollToIndexTimeoutId =
      null);
    }, this.scrollToOffset = (o, { align: i = "start", behavior: r } = {}) => {
      this.cancelScrollToIndex(), r === "smooth" && this.isDynamicMode() && console.warn(
        "The `smooth` scroll behavior is not fully supported with dynamic size."
      ), this._scrollToOffset(this.getOffsetForAlignment(o, i), {
        adjustments: void 0,
        behavior: r
      });
    }, this.scrollToIndex = (o, { align: i = "auto", behavior: r } = {}) => {
      o = Math.max(0, Math.min(o, this.options.count - 1)), this.cancelScrollToIndex(), r === "smooth" && this.isDynamicMode() && console.warn(
        "The `smooth` scroll behavior is not fully supported with dynamic size."
      );
      let n = this.getOffsetForIndex(o, i);
      if (!n) return;
      let [l, u] = n;
      this._scrollToOffset(l, { adjustments: void 0, behavior: r }), r !== "smooth" && this.isDynamicMode() && this.targetWindow && (this.scrollToIndexTimeoutId =
      this.targetWindow.setTimeout(() => {
        if (this.scrollToIndexTimeoutId = null, this.elementsCache.has(
          this.options.getItemKey(o)
        )) {
          let [d] = Mr(
            this.getOffsetForIndex(o, u)
          );
          $u(d, this.getScrollOffset()) || this.scrollToIndex(o, { align: u, behavior: r });
        } else
          this.scrollToIndex(o, { align: u, behavior: r });
      }));
    }, this.scrollBy = (o, { behavior: i } = {}) => {
      this.cancelScrollToIndex(), i === "smooth" && this.isDynamicMode() && console.warn(
        "The `smooth` scroll behavior is not fully supported with dynamic size."
      ), this._scrollToOffset(this.getScrollOffset() + o, {
        adjustments: void 0,
        behavior: i
      });
    }, this.getTotalSize = () => {
      var o;
      let i = this.getMeasurements(), r;
      if (i.length === 0)
        r = this.options.paddingStart;
      else if (this.options.lanes === 1)
        r = ((o = i[i.length - 1]) == null ? void 0 : o.end) ?? 0;
      else {
        let n = Array(this.options.lanes).fill(null), l = i.length - 1;
        for (; l >= 0 && n.some((u) => u === null); ) {
          let u = i[l];
          n[u.lane] === null && (n[u.lane] = u.end), l--;
        }
        r = Math.max(...n.filter((u) => u !== null));
      }
      return Math.max(
        r - this.options.scrollMargin + this.options.paddingEnd,
        0
      );
    }, this._scrollToOffset = (o, {
      adjustments: i,
      behavior: r
    }) => {
      this.options.scrollToFn(o, { behavior: r, adjustments: i }, this);
    }, this.measure = () => {
      this.itemSizeCache = /* @__PURE__ */ new Map(), this.notify(!1);
    }, this.setOptions(t);
  }
};
a(Vi, "Virtualizer");
var Lr = Vi, Zu = /* @__PURE__ */ a((e, t, o, i) => {
  for (; e <= t; ) {
    let r = (e + t) / 2 | 0, n = o(r);
    if (n < i)
      e = r + 1;
    else if (n > i)
      t = r - 1;
    else
      return r;
  }
  return e > 0 ? e - 1 : 0;
}, "findNearestBinarySearch");
function g0({
  measurements: e,
  outerSize: t,
  scrollOffset: o,
  lanes: i
}) {
  let r = e.length - 1, n = /* @__PURE__ */ a((c) => e[c].start, "getOffset");
  if (e.length <= i)
    return {
      startIndex: 0,
      endIndex: r
    };
  let l = Zu(
    0,
    r,
    n,
    o
  ), u = l;
  if (i === 1)
    for (; u < r && e[u].end < o + t; )
      u++;
  else if (i > 1) {
    let c = Array(i).fill(0);
    for (; u < r && c.some((p) => p < o + t); ) {
      let p = e[u];
      c[p.lane] = p.end, u++;
    }
    let d = Array(i).fill(o + t);
    for (; l >= 0 && d.some((p) => p >= o); ) {
      let p = e[l];
      d[p.lane] = p.start, l--;
    }
    l = Math.max(0, l - l % i), u = Math.min(r, u + (i - 1 - u % i));
  }
  return { startIndex: l, endIndex: u };
}
a(g0, "calculateRange");

// ../node_modules/@tanstack/react-virtual/dist/esm/index.js
var Ju = typeof document < "u" ? Xt : H;
function y0(e) {
  let t = Zt(() => ({}), {})[1], o = {
    ...e,
    onChange: /* @__PURE__ */ a((r, n) => {
      var l;
      n ? Do(t) : t(), (l = e.onChange) == null || l.call(e, r, n);
    }, "onChange")
  }, [i] = K(
    () => new Lr(o)
  );
  return i.setOptions(o), Ju(() => i._didMount(), []), Ju(() => i._willUpdate()), i;
}
a(y0, "useVirtualizerBase");
function ec(e) {
  return y0({
    observeElementRect: Yu,
    observeElementOffset: Qu,
    scrollToFn: Xu,
    ...e
  });
}
a(ec, "useVirtualizer");

// src/manager/components/sidebar/FIleSearchList.utils.tsx
var tc = /* @__PURE__ */ a(({
  parentRef: e,
  rowVirtualizer: t,
  selectedItem: o
}) => {
  H(() => {
    let i = /* @__PURE__ */ a((r) => {
      if (!e.current)
        return;
      let n = t.options.count, l = document.activeElement, u = parseInt(l.getAttribute("data-index") || "-1", 10), c = l.tagName === "INPUT",
      d = /* @__PURE__ */ a(() => document.querySelector('[data-index="0"]'), "getFirstElement"), p = /* @__PURE__ */ a(() => document.querySelector(
      `[data-index="${n - 1}"]`), "getLastElement");
      if (r.code === "ArrowDown" && l) {
        if (r.stopPropagation(), c) {
          d()?.focus();
          return;
        }
        if (u === n - 1) {
          Do(() => {
            t.scrollToIndex(0, { align: "start" });
          }), setTimeout(() => {
            d()?.focus();
          }, 100);
          return;
        }
        if (o === u) {
          document.querySelector(
            `[data-index-position="${o}_first"]`
          )?.focus();
          return;
        }
        if (o !== null && l.getAttribute("data-index-position")?.includes("last")) {
          document.querySelector(
            `[data-index="${o + 1}"]`
          )?.focus();
          return;
        }
        l.nextElementSibling?.focus();
      }
      if (r.code === "ArrowUp" && l) {
        if (c) {
          Do(() => {
            t.scrollToIndex(n - 1, { align: "start" });
          }), setTimeout(() => {
            p()?.focus();
          }, 100);
          return;
        }
        if (o !== null && l.getAttribute("data-index-position")?.includes("first")) {
          document.querySelector(
            `[data-index="${o}"]`
          )?.focus();
          return;
        }
        l.previousElementSibling?.focus();
      }
    }, "handleArrowKeys");
    return document.addEventListener("keydown", i, { capture: !0 }), () => {
      document.removeEventListener("keydown", i, { capture: !0 });
    };
  }, [t, o, e]);
}, "useArrowKeyNavigation");

// src/manager/components/sidebar/FileList.tsx
var oc = I("div")(({ theme: e }) => ({
  marginTop: "-16px",
  // after element which fades out the list
  "&::after": {
    content: '""',
    position: "fixed",
    pointerEvents: "none",
    bottom: 0,
    left: 0,
    right: 0,
    height: "80px",
    background: `linear-gradient(${so(e.barBg, 0)} 10%, ${e.barBg} 80%)`
  }
})), Nr = I("div")(({ theme: e }) => ({
  height: "280px",
  overflow: "auto",
  msOverflowStyle: "none",
  scrollbarWidth: "none",
  position: "relative",
  "::-webkit-scrollbar": {
    display: "none"
  }
})), rc = I("li")(({ theme: e }) => ({
  ":focus-visible": {
    outline: "none",
    ".file-list-item": {
      borderRadius: "4px",
      background: e.base === "dark" ? "rgba(255,255,255,.1)" : e.color.mediumlight,
      "> svg": {
        display: "flex"
      }
    }
  }
})), Fr = I("div")(({ theme: e }) => ({
  display: "flex",
  flexDirection: "column",
  position: "relative"
})), nc = I.div(({ theme: e, selected: t, disabled: o, error: i }) => ({
  display: "flex",
  alignItems: "flex-start",
  gap: "8px",
  alignSelf: "stretch",
  padding: "8px 16px",
  cursor: "pointer",
  borderRadius: "4px",
  ...t && {
    borderRadius: "4px",
    background: e.base === "dark" ? "rgba(255,255,255,.1)" : e.color.mediumlight,
    "> svg": {
      display: "flex"
    }
  },
  ...o && {
    cursor: "not-allowed",
    div: {
      color: `${e.color.mediumdark} !important`
    }
  },
  ...i && {
    background: e.base === "light" ? "#00000011" : "#00000033"
  },
  "&:hover": {
    background: i ? "#00000022" : e.base === "dark" ? "rgba(255,255,255,.1)" : e.color.mediumlight,
    "> svg": {
      display: "flex"
    }
  }
})), ic = I("ul")({
  margin: 0,
  padding: "0 0 0 0",
  width: "100%",
  position: "relative"
}), sc = I("div")({
  display: "flex",
  flexDirection: "column",
  alignItems: "flex-start",
  width: "calc(100% - 50px)"
}), ac = I("div")(({ theme: e, error: t }) => ({
  color: t ? e.color.negativeText : e.color.secondary
})), lc = I("div")(({ theme: e, error: t }) => ({
  color: t ? e.color.negativeText : e.base === "dark" ? e.color.lighter : e.color.darkest,
  fontSize: "14px",
  whiteSpace: "nowrap",
  textOverflow: "ellipsis",
  overflow: "hidden",
  maxWidth: "100%"
})), uc = I("div")(({ theme: e }) => ({
  color: e.color.mediumdark,
  fontSize: "14px",
  whiteSpace: "nowrap",
  textOverflow: "ellipsis",
  overflow: "hidden",
  maxWidth: "100%"
})), cc = I("ul")(({ theme: e }) => ({
  margin: 0,
  padding: 0
})), pc = I("li")(({ theme: e, error: t }) => ({
  padding: "8px 16px 8px 16px",
  marginLeft: "30px",
  display: "flex",
  gap: "8px",
  alignItems: "center",
  justifyContent: "space-between",
  fontSize: "14px",
  cursor: "pointer",
  borderRadius: "4px",
  ":focus-visible": {
    outline: "none"
  },
  ...t && {
    background: "#F9ECEC",
    color: e.color.negativeText
  },
  "&:hover,:focus-visible": {
    background: t ? "#F9ECEC" : e.base === "dark" ? "rgba(255, 255, 255, 0.1)" : e.color.mediumlight,
    "> svg": {
      display: "flex"
    }
  },
  "> div > svg": {
    color: t ? e.color.negativeText : e.color.secondary
  }
})), dc = I("div")(({ theme: e }) => ({
  display: "flex",
  alignItems: "center",
  gap: "8px",
  width: "calc(100% - 20px)"
})), fc = I("span")(({ theme: e }) => ({
  whiteSpace: "nowrap",
  textOverflow: "ellipsis",
  overflow: "hidden",
  maxWidth: "calc(100% - 160px)",
  display: "inline-block"
})), mc = I("span")(({ theme: e }) => ({
  display: "inline-block",
  padding: `1px ${e.appBorderRadius}px`,
  borderRadius: "2px",
  fontSize: "10px",
  color: e.base === "dark" ? e.color.lightest : "#727272",
  backgroundColor: e.base === "dark" ? "rgba(255, 255, 255, 0.1)" : "#F2F4F5"
})), hc = I("div")(({ theme: e }) => ({
  textAlign: "center",
  maxWidth: "334px",
  margin: "16px auto 50px auto",
  fontSize: "14px",
  color: e.base === "dark" ? e.color.lightest : "#000"
})), gc = I("p")(({ theme: e }) => ({
  margin: 0,
  color: e.base === "dark" ? e.color.defaultText : e.color.mediumdark
}));

// src/manager/components/sidebar/FileSearchListSkeleton.tsx
var b0 = I("div")(({ theme: e }) => ({
  display: "flex",
  alignItems: "flex-start",
  gap: "8px",
  alignSelf: "stretch",
  padding: "8px 16px"
})), v0 = I("div")({
  display: "flex",
  flexDirection: "column",
  alignItems: "flex-start",
  width: "100%",
  borderRadius: "3px"
}), x0 = I.div(({ theme: e }) => ({
  width: "14px",
  height: "14px",
  borderRadius: "3px",
  marginTop: "1px",
  background: e.base === "dark" ? "rgba(255,255,255,.1)" : "rgba(0,0,0,.1)",
  animation: `${e.animation.glow} 1.5s ease-in-out infinite`
})), yc = I.div(({ theme: e }) => ({
  height: "16px",
  borderRadius: "3px",
  background: e.base === "dark" ? "rgba(255,255,255,.1)" : "rgba(0,0,0,.1)",
  animation: `${e.animation.glow} 1.5s ease-in-out infinite`,
  width: "100%",
  maxWidth: "100%",
  "+ div": {
    marginTop: "6px"
  }
})), bc = /* @__PURE__ */ a(() => /* @__PURE__ */ s.createElement(Nr, null, [1, 2, 3].map((e) => /* @__PURE__ */ s.createElement(Fr, { key: e },
/* @__PURE__ */ s.createElement(b0, null, /* @__PURE__ */ s.createElement(x0, null), /* @__PURE__ */ s.createElement(v0, null, /* @__PURE__ */ s.
createElement(yc, { style: { width: "90px" } }), /* @__PURE__ */ s.createElement(yc, { style: { width: "300px" } })))))), "FileSearchListLoa\
dingSkeleton");

// src/manager/components/sidebar/FileSearchList.tsx
var vc = I(Cn)(({ theme: e }) => ({
  display: "none",
  alignSelf: "center",
  color: e.color.mediumdark
})), I0 = I(Ot)(({ theme: e }) => ({
  display: "none",
  alignSelf: "center",
  color: e.color.mediumdark
})), xc = _t(/* @__PURE__ */ a(function({
  isLoading: t,
  searchResults: o,
  onNewStory: i,
  errorItemId: r
}) {
  let [n, l] = K(null), u = s.useRef(), c = G(() => [...o ?? []].sort((m, b) => {
    let x = m.exportedComponents === null || m.exportedComponents?.length === 0, E = m.storyFileExists, g = b.exportedComponents === null ||
    b.exportedComponents?.length === 0, v = b.storyFileExists;
    return E && !v ? -1 : v && !E || x && !g ? 1 : !x && g ? -1 : 0;
  }), [o]), d = o?.length || 0, p = ec({
    count: d,
    // @ts-expect-error (non strict)
    getScrollElement: /* @__PURE__ */ a(() => u.current, "getScrollElement"),
    paddingStart: 16,
    paddingEnd: 40,
    estimateSize: /* @__PURE__ */ a(() => 54, "estimateSize"),
    overscan: 2
  });
  tc({ rowVirtualizer: p, parentRef: u, selectedItem: n });
  let f = A(
    ({ virtualItem: m, searchResult: b, itemId: x }) => {
      b?.exportedComponents?.length > 1 ? l((E) => E === m.index ? null : m.index) : b?.exportedComponents?.length === 1 && i({
        componentExportName: b.exportedComponents[0].name,
        componentFilePath: b.filepath,
        componentIsDefaultExport: b.exportedComponents[0].default,
        selectedItemId: x,
        componentExportCount: 1
      });
    },
    [i]
  ), h = A(
    ({ searchResult: m, component: b, id: x }) => {
      i({
        componentExportName: b.name,
        componentFilePath: m.filepath,
        componentIsDefaultExport: b.default,
        selectedItemId: x,
        // @ts-expect-error (non strict)
        componentExportCount: m.exportedComponents.length
      });
    },
    [i]
  ), y = A(
    ({ virtualItem: m, selected: b, searchResult: x }) => {
      let E = r === x.filepath, g = b === m.index;
      return /* @__PURE__ */ s.createElement(
        Fr,
        {
          "aria-expanded": g,
          "aria-controls": `file-list-export-${m.index}`,
          id: `file-list-item-wrapper-${m.index}`
        },
        /* @__PURE__ */ s.createElement(
          nc,
          {
            className: "file-list-item",
            selected: g,
            error: E,
            disabled: x.exportedComponents === null || x.exportedComponents?.length === 0
          },
          /* @__PURE__ */ s.createElement(ac, { error: E }, /* @__PURE__ */ s.createElement(Xo, null)),
          /* @__PURE__ */ s.createElement(sc, null, /* @__PURE__ */ s.createElement(lc, { error: E }, x.filepath.split("/").at(-1)), /* @__PURE__ */ s.
          createElement(uc, null, x.filepath)),
          g ? /* @__PURE__ */ s.createElement(I0, null) : /* @__PURE__ */ s.createElement(vc, null)
        ),
        x?.exportedComponents?.length > 1 && g && /* @__PURE__ */ s.createElement(
          cc,
          {
            role: "region",
            id: `file-list-export-${m.index}`,
            "aria-labelledby": `file-list-item-wrapper-${m.index}`,
            onClick: (v) => {
              v.stopPropagation();
            },
            onKeyUp: (v) => {
              v.key === "Enter" && v.stopPropagation();
            }
          },
          x.exportedComponents?.map((v, S) => {
            let w = r === `${x.filepath}_${S}`, k = S === 0 ? "first" : (
              // @ts-expect-error (non strict)
              S === x.exportedComponents.length - 1 ? "last" : "middle"
            );
            return /* @__PURE__ */ s.createElement(
              pc,
              {
                tabIndex: 0,
                "data-index-position": `${m.index}_${k}`,
                key: v.name,
                error: w,
                onClick: () => {
                  h({
                    searchResult: x,
                    component: v,
                    id: `${x.filepath}_${S}`
                  });
                },
                onKeyUp: (_) => {
                  _.key === "Enter" && h({
                    searchResult: x,
                    component: v,
                    id: `${x.filepath}_${S}`
                  });
                }
              },
              /* @__PURE__ */ s.createElement(dc, null, /* @__PURE__ */ s.createElement(Xo, null), v.default ? /* @__PURE__ */ s.createElement(
              s.Fragment, null, /* @__PURE__ */ s.createElement(fc, null, x.filepath.split("/").at(-1)?.split(".")?.at(0)), /* @__PURE__ */ s.
              createElement(mc, null, "Default export")) : v.name),
              /* @__PURE__ */ s.createElement(vc, null)
            );
          })
        )
      );
    },
    [h, r]
  );
  return t && (o === null || o?.length === 0) ? /* @__PURE__ */ s.createElement(bc, null) : o?.length === 0 ? /* @__PURE__ */ s.createElement(
  hc, null, /* @__PURE__ */ s.createElement("p", null, "We could not find any file with that name"), /* @__PURE__ */ s.createElement(gc, null,
  "You may want to try using different keywords, check for typos, and adjust your filters")) : c?.length > 0 ? /* @__PURE__ */ s.createElement(
  oc, null, /* @__PURE__ */ s.createElement(Nr, { ref: u }, /* @__PURE__ */ s.createElement(
    ic,
    {
      style: {
        height: `${p.getTotalSize()}px`
      }
    },
    p.getVirtualItems().map((m) => {
      let b = c[m.index], x = b.exportedComponents === null || b.exportedComponents?.length === 0, E = {};
      return /* @__PURE__ */ s.createElement(
        rc,
        {
          key: m.key,
          "data-index": m.index,
          ref: p.measureElement,
          onClick: () => {
            f({
              virtualItem: m,
              itemId: b.filepath,
              searchResult: b
            });
          },
          onKeyUp: (g) => {
            g.key === "Enter" && f({
              virtualItem: m,
              itemId: b.filepath,
              searchResult: b
            });
          },
          style: {
            position: "absolute",
            top: 0,
            left: 0,
            width: "100%",
            transform: `translateY(${m.start}px)`
          },
          tabIndex: 0
        },
        x ? /* @__PURE__ */ s.createElement(
          ve,
          {
            ...E,
            style: { width: "100%" },
            hasChrome: !1,
            closeOnOutsideClick: !0,
            tooltip: /* @__PURE__ */ s.createElement(
              rt,
              {
                note: x ? "We can't evaluate exports for this file. You can't create a story for it automatically" : null
              }
            )
          },
          /* @__PURE__ */ s.createElement(
            y,
            {
              searchResult: b,
              selected: n,
              virtualItem: m
            }
          )
        ) : /* @__PURE__ */ s.createElement(
          y,
          {
            ...E,
            key: m.index,
            searchResult: b,
            selected: n,
            virtualItem: m
          }
        )
      );
    })
  ))) : null;
}, "FileSearchList"));

// src/manager/components/sidebar/FileSearchModal.tsx
var S0 = 418, w0 = I(Mt)(() => ({
  boxShadow: "none",
  background: "transparent",
  overflow: "visible"
})), E0 = I.div(({ theme: e, height: t }) => ({
  backgroundColor: e.background.bar,
  borderRadius: 6,
  boxShadow: "rgba(255, 255, 255, 0.05) 0 0 0 1px inset, rgba(14, 18, 22, 0.35) 0px 10px 18px -10px",
  padding: "16px",
  transition: "height 0.3s",
  height: t ? `${t + 32}px` : "auto",
  overflow: "hidden"
})), T0 = I(Mt.Content)(({ theme: e }) => ({
  margin: 0,
  color: e.base === "dark" ? e.color.lighter : e.color.mediumdark
})), C0 = I(rr.Input)(({ theme: e }) => ({
  paddingLeft: 40,
  paddingRight: 28,
  fontSize: 14,
  height: 40,
  ...e.base === "light" && {
    color: e.color.darkest
  },
  "::placeholder": {
    color: e.color.mediumdark
  },
  "&:invalid:not(:placeholder-shown)": {
    boxShadow: `${e.color.negative} 0 0 0 1px inset`
  },
  "&::-webkit-search-decoration, &::-webkit-search-cancel-button, &::-webkit-search-results-button, &::-webkit-search-results-decoration": {
    display: "none"
  }
})), _0 = I.div({
  display: "flex",
  flexDirection: "column",
  flexGrow: 1,
  position: "relative"
}), k0 = I.div(({ theme: e }) => ({
  position: "absolute",
  top: 0,
  left: 16,
  zIndex: 1,
  pointerEvents: "none",
  color: e.darkest,
  display: "flex",
  alignItems: "center",
  height: "100%"
})), O0 = I.div(({ theme: e }) => ({
  position: "absolute",
  top: 0,
  right: 16,
  zIndex: 1,
  color: e.darkest,
  display: "flex",
  alignItems: "center",
  height: "100%",
  "@keyframes spin": {
    from: { transform: "rotate(0deg)" },
    to: { transform: "rotate(360deg)" }
  },
  animation: "spin 1s linear infinite"
})), P0 = I(Mt.Error)({
  position: "absolute",
  padding: "8px 40px 8px 16px",
  bottom: 0,
  maxHeight: "initial",
  width: "100%",
  div: {
    wordBreak: "break-word"
  },
  "> div": {
    padding: 0
  }
}), A0 = I(bo)({
  position: "absolute",
  top: 4,
  right: -24,
  cursor: "pointer"
}), Ic = /* @__PURE__ */ a(({
  open: e,
  onOpenChange: t,
  fileSearchQuery: o,
  setFileSearchQuery: i,
  isLoading: r,
  error: n,
  searchResults: l,
  onCreateNewStory: u,
  setError: c,
  container: d
}) => {
  let [p, f] = Ku(), [h, y] = K(f.height), [, m] = ia(), [b, x] = K(o);
  return H(() => {
    h < f.height && y(f.height);
  }, [f.height, h]), /* @__PURE__ */ s.createElement(
    w0,
    {
      height: S0,
      width: 440,
      open: e,
      onOpenChange: t,
      onEscapeKeyDown: () => {
        t(!1);
      },
      onInteractOutside: () => {
        t(!1);
      },
      container: d
    },
    /* @__PURE__ */ s.createElement(E0, { height: o === "" ? f.height : h }, /* @__PURE__ */ s.createElement(T0, { ref: p }, /* @__PURE__ */ s.
    createElement(Mt.Header, null, /* @__PURE__ */ s.createElement(Mt.Title, null, "Add a new story"), /* @__PURE__ */ s.createElement(Mt.Description,
    null, "We will create a new story for your component")), /* @__PURE__ */ s.createElement(_0, null, /* @__PURE__ */ s.createElement(k0, null,
    /* @__PURE__ */ s.createElement(So, null)), /* @__PURE__ */ s.createElement(
      C0,
      {
        placeholder: "./components/**/*.tsx",
        type: "search",
        required: !0,
        autoFocus: !0,
        value: b,
        onChange: (E) => {
          let g = E.target.value;
          x(g), m(() => {
            i(g);
          });
        }
      }
    ), r && /* @__PURE__ */ s.createElement(O0, null, /* @__PURE__ */ s.createElement(ct, null))), /* @__PURE__ */ s.createElement(
      xc,
      {
        errorItemId: n?.selectedItemId,
        isLoading: r,
        searchResults: l,
        onNewStory: u
      }
    ))),
    n && o !== "" && /* @__PURE__ */ s.createElement(P0, null, /* @__PURE__ */ s.createElement("div", null, n.error), /* @__PURE__ */ s.createElement(
      A0,
      {
        onClick: () => {
          c(null);
        }
      }
    ))
  );
}, "FileSearchModal");

// src/manager/components/sidebar/FileSearchModal.utils.tsx
function Sc(e) {
  return Object.keys(e).reduce(
    (o, i) => {
      let r = e[i];
      if (typeof r.control == "object" && "type" in r.control)
        switch (r.control.type) {
          case "object":
            o[i] = {};
            break;
          case "inline-radio":
          case "radio":
          case "inline-check":
          case "check":
          case "select":
          case "multi-select":
            o[i] = r.control.options?.[0];
            break;
          case "color":
            o[i] = "#000000";
            break;
          default:
            break;
        }
      return Rr(r.type, o, i), o;
    },
    {}
  );
}
a(Sc, "extractSeededRequiredArgs");
function Rr(e, t, o) {
  if (!(typeof e == "string" || !e.required))
    switch (e.name) {
      case "boolean":
        t[o] = !0;
        break;
      case "number":
        t[o] = 0;
        break;
      case "string":
        t[o] = o;
        break;
      case "array":
        t[o] = [];
        break;
      case "object":
        t[o] = {}, Object.entries(e.value ?? {}).forEach(([i, r]) => {
          Rr(r, t[o], i);
        });
        break;
      case "function":
        t[o] = () => {
        };
        break;
      case "intersection":
        e.value?.every((i) => i.name === "object") && (t[o] = {}, e.value?.forEach((i) => {
          i.name === "object" && Object.entries(i.value ?? {}).forEach(([r, n]) => {
            Rr(n, t[o], r);
          });
        }));
        break;
      case "union":
        e.value?.[0] !== void 0 && Rr(e.value[0], t, o);
        break;
      case "enum":
        e.value?.[0] !== void 0 && (t[o] = e.value?.[0]);
        break;
      case "other":
        typeof e.value == "string" && e.value === "tuple" && (t[o] = []);
        break;
      default:
        break;
    }
}
a(Rr, "setArgType");
async function Br(e, t, o = 1) {
  if (o > 10)
    throw new Error("We could not select the new story. Please try again.");
  try {
    await e(t);
  } catch {
    return await new Promise((r) => setTimeout(r, 500)), Br(e, t, o + 1);
  }
}
a(Br, "trySelectNewStory");

// src/manager/components/sidebar/CreateNewStoryFileModal.tsx
var D0 = /* @__PURE__ */ a((e) => JSON.stringify(e, (t, o) => typeof o == "function" ? "__sb_empty_function_arg__" : o), "stringifyArgs"), wc = /* @__PURE__ */ a(
({ open: e, onOpenChange: t }) => {
  let [o, i] = K(!1), [r, n] = K(""), l = ju(r, 600), u = ra(l), c = U(null), [d, p] = K(
    null
  ), f = oe(), [h, y] = K(null), m = A(
    (g) => {
      f.addNotification({
        id: "create-new-story-file-success",
        content: {
          headline: "Story file created",
          subHeadline: `${g} was created`
        },
        duration: 8e3,
        icon: /* @__PURE__ */ s.createElement(Be, null)
      }), t(!1);
    },
    [f, t]
  ), b = A(() => {
    f.addNotification({
      id: "create-new-story-file-error",
      content: {
        headline: "Story already exists",
        subHeadline: "Successfully navigated to existing story"
      },
      duration: 8e3,
      icon: /* @__PURE__ */ s.createElement(Be, null)
    }), t(!1);
  }, [f, t]), x = A(() => {
    i(!0);
    let g = He.getChannel(), v = /* @__PURE__ */ a((S) => {
      S.id === u && (S.success ? y(S.payload.files) : p({ error: S.error }), g.off(Yo, v), i(!1), c.current = null);
    }, "set");
    return g.on(Yo, v), u !== "" && c.current !== u ? (c.current = u, g.emit(fa, {
      id: u,
      payload: {}
    })) : (y(null), i(!1)), () => {
      g.off(Yo, v);
    };
  }, [u]), E = A(
    async ({
      componentExportName: g,
      componentFilePath: v,
      componentIsDefaultExport: S,
      componentExportCount: w,
      selectedItemId: k
    }) => {
      try {
        let _ = He.getChannel(), C = await Jo(_, pa, da, {
          componentExportName: g,
          componentFilePath: v,
          componentIsDefaultExport: S,
          componentExportCount: w
        });
        p(null);
        let T = C.storyId;
        await Br(f.selectStory, T);
        try {
          let P = (await Jo(_, aa, la, {
            storyId: T
          })).argTypes, D = Sc(P);
          await Jo(
            _,
            ha,
            ga,
            {
              args: D0(D),
              importPath: C.storyFilePath,
              csfId: T
            }
          );
        } catch {
        }
        m(g), x();
      } catch (_) {
        switch (_?.payload?.type) {
          case "STORY_FILE_EXISTS":
            let C = _;
            await Br(f.selectStory, C.payload.kind), b();
            break;
          default:
            p({ selectedItemId: k, error: _?.message });
            break;
        }
      }
    },
    [f?.selectStory, m, x, b]
  );
  return H(() => {
    p(null);
  }, [u]), H(() => x(), [x]), /* @__PURE__ */ s.createElement(
    Ic,
    {
      error: d,
      fileSearchQuery: r,
      fileSearchQueryDeferred: u,
      onCreateNewStory: E,
      isLoading: o,
      onOpenChange: t,
      open: e,
      searchResults: h,
      setError: p,
      setFileSearchQuery: n
    }
  );
}, "CreateNewStoryFileModal");

// src/manager/components/sidebar/HighlightStyles.tsx
var Ec = /* @__PURE__ */ a(({ refId: e, itemId: t }) => /* @__PURE__ */ s.createElement(
  eo,
  {
    styles: ({ color: o }) => {
      let i = Te(0.85, o.secondary);
      return {
        [`[data-ref-id="${e}"][data-item-id="${t}"]:not([data-selected="true"])`]: {
          '&[data-nodetype="component"], &[data-nodetype="group"]': {
            background: i,
            "&:hover, &:focus": { background: i }
          },
          '&[data-nodetype="story"], &[data-nodetype="document"]': {
            color: o.defaultText,
            background: i,
            "&:hover, &:focus": { background: i }
          }
        }
      };
    }
  }
), "HighlightStyles");

// src/manager/utils/tree.ts
var co = Ve(Di(), 1);
var { document: ji, window: M0 } = se, Hr = /* @__PURE__ */ a((e, t) => !t || t === lt ? e : `${t}_${e}`, "createId"), _c = /* @__PURE__ */ a(
(e, t) => `${ji.location.pathname}?path=/${e.type}/${Hr(e.id, t)}`, "getLink");
var Tc = (0, co.default)(1e3)((e, t) => t[e]), L0 = (0, co.default)(1e3)((e, t) => {
  let o = Tc(e, t);
  return o && o.type !== "root" ? Tc(o.parent, t) : void 0;
}), kc = (0, co.default)(1e3)((e, t) => {
  let o = L0(e, t);
  return o ? [o, ...kc(o.id, t)] : [];
}), Fo = (0, co.default)(1e3)(
  (e, t) => kc(t, e).map((o) => o.id)
), at = (0, co.default)(1e3)((e, t, o) => {
  let i = e[t];
  return !i || i.type === "story" || i.type === "docs" || !i.children ? [] : i.children.reduce((r, n) => {
    let l = e[n];
    return !l || o && (l.type === "story" || l.type === "docs") || r.push(n, ...at(e, n, o)), r;
  }, []);
});
function Oc(e, t) {
  let o = e.type !== "root" && e.parent ? t.index[e.parent] : null;
  return o ? [...Oc(o, t), o.name] : t.id === lt ? [] : [t.title || t.id];
}
a(Oc, "getPath");
var Ki = /* @__PURE__ */ a((e, t) => ({ ...e, refId: t.id, path: Oc(e, t) }), "searchItem");
function Pc(e, t, o) {
  let i = t + o % e.length;
  return i < 0 && (i = e.length + i), i >= e.length && (i -= e.length), i;
}
a(Pc, "cycle");
var zt = /* @__PURE__ */ a((e, t = !1) => {
  if (!e)
    return;
  let { top: o, bottom: i } = e.getBoundingClientRect();
  if (!o || !i)
    return;
  let r = ji?.querySelector("#sidebar-bottom-wrapper")?.getBoundingClientRect().top || M0.innerHeight || ji.documentElement.clientHeight;
  i > r && e.scrollIntoView({ block: t ? "center" : "nearest" });
}, "scrollIntoView"), Ac = /* @__PURE__ */ a((e, t, o, i) => {
  switch (!0) {
    case t:
      return "auth";
    case o:
      return "error";
    case e:
      return "loading";
    case i:
      return "empty";
    default:
      return "ready";
  }
}, "getStateType"), Wt = /* @__PURE__ */ a((e, t) => !e || !t ? !1 : e === t ? !0 : Wt(e.parentElement || void 0, t), "isAncestor"), Cc = /* @__PURE__ */ a(
(e) => e.replaceAll(/(\s|-|_)/gi, ""), "removeNoiseFromName"), Dc = /* @__PURE__ */ a((e, t) => Cc(e) === Cc(t), "isStoryHoistable");

// src/manager/components/sidebar/Loader.tsx
var Mc = [0, 0, 1, 1, 2, 3, 3, 3, 1, 1, 1, 2, 2, 2, 3], N0 = I.div(
  {
    cursor: "progress",
    fontSize: 13,
    height: "16px",
    marginTop: 4,
    marginBottom: 4,
    alignItems: "center",
    overflow: "hidden"
  },
  ({ depth: e = 0 }) => ({
    marginLeft: e * 15,
    maxWidth: 85 - e * 5
  }),
  ({ theme: e }) => e.animation.inlineGlow,
  ({ theme: e }) => ({
    background: e.appBorderColor
  })
), Ro = I.div({
  display: "flex",
  flexDirection: "column",
  paddingLeft: 20,
  paddingRight: 20
}), Lc = /* @__PURE__ */ a(({ size: e }) => {
  let t = Math.ceil(e / Mc.length), o = Array.from(Array(t)).fill(Mc).flat().slice(0, e);
  return /* @__PURE__ */ s.createElement(Ee, null, o.map((i, r) => /* @__PURE__ */ s.createElement(N0, { depth: i, key: r })));
}, "Loader");

// src/manager/components/sidebar/RefBlocks.tsx
var { window: Nc } = se, F0 = I.div(({ theme: e }) => ({
  fontSize: e.typography.size.s2,
  lineHeight: "20px",
  margin: 0
})), $i = I.div(({ theme: e }) => ({
  fontSize: e.typography.size.s2,
  lineHeight: "20px",
  margin: 0,
  code: {
    fontSize: e.typography.size.s1
  },
  ul: {
    paddingLeft: 20,
    marginTop: 8,
    marginBottom: 8
  }
})), R0 = I.pre(
  {
    width: 420,
    boxSizing: "border-box",
    borderRadius: 8,
    overflow: "auto",
    whiteSpace: "pre"
  },
  ({ theme: e }) => ({
    color: e.color.dark
  })
), Fc = /* @__PURE__ */ a(({ loginUrl: e, id: t }) => {
  let [o, i] = K(!1), r = A(() => {
    Nc.document.location.reload();
  }, []), n = A((l) => {
    l.preventDefault();
    let u = Nc.open(e, `storybook_auth_${t}`, "resizable,scrollbars"), c = setInterval(() => {
      u ? u.closed && (clearInterval(c), i(!0)) : (ur.error("unable to access loginUrl window"), clearInterval(c));
    }, 1e3);
  }, []);
  return /* @__PURE__ */ s.createElement(Ro, null, /* @__PURE__ */ s.createElement(pt, null, o ? /* @__PURE__ */ s.createElement(Ee, null, /* @__PURE__ */ s.
  createElement($i, null, "Authentication on ", /* @__PURE__ */ s.createElement("strong", null, e), " concluded. Refresh the page to fetch t\
his Storybook."), /* @__PURE__ */ s.createElement("div", null, /* @__PURE__ */ s.createElement(he, { size: "small", variant: "outline", onClick: r },
  /* @__PURE__ */ s.createElement(ct, null), "Refresh now"))) : /* @__PURE__ */ s.createElement(Ee, null, /* @__PURE__ */ s.createElement($i,
  null, "Sign in to browse this Storybook."), /* @__PURE__ */ s.createElement("div", null, /* @__PURE__ */ s.createElement(he, { size: "smal\
l", variant: "outline", onClick: n }, /* @__PURE__ */ s.createElement(xo, null), "Sign in")))));
}, "AuthBlock"), Rc = /* @__PURE__ */ a(({ error: e }) => /* @__PURE__ */ s.createElement(Ro, null, /* @__PURE__ */ s.createElement(pt, null,
/* @__PURE__ */ s.createElement(F0, null, "Oh no! Something went wrong loading this Storybook.", /* @__PURE__ */ s.createElement("br", null),
/* @__PURE__ */ s.createElement(
  ve,
  {
    tooltip: /* @__PURE__ */ s.createElement(R0, null, /* @__PURE__ */ s.createElement(ka, { error: e }))
  },
  /* @__PURE__ */ s.createElement(Pe, { isButton: !0 }, "View error ", /* @__PURE__ */ s.createElement(Ot, null))
), " ", /* @__PURE__ */ s.createElement(Pe, { withArrow: !0, href: "https://storybook.js.org/docs", cancel: !1, target: "_blank" }, "View do\
cs")))), "ErrorBlock"), B0 = I(pt)({
  display: "flex"
}), H0 = I(pt)({
  flex: 1
}), Bc = /* @__PURE__ */ a(({ isMain: e }) => /* @__PURE__ */ s.createElement(Ro, null, /* @__PURE__ */ s.createElement(B0, { col: 1 }, /* @__PURE__ */ s.
createElement(H0, null, /* @__PURE__ */ s.createElement($i, null, e ? /* @__PURE__ */ s.createElement(s.Fragment, null, "Oh no! Your Storybo\
ok is empty. Possible reasons why:", /* @__PURE__ */ s.createElement("ul", null, /* @__PURE__ */ s.createElement("li", null, "The glob speci\
fied in ", /* @__PURE__ */ s.createElement("code", null, "main.js"), " isn't correct."), /* @__PURE__ */ s.createElement("li", null, "No sto\
ries are defined in your story files."), /* @__PURE__ */ s.createElement("li", null, "You're using filter-functions, and all stories are fil\
tered away.")), " ") : /* @__PURE__ */ s.createElement(s.Fragment, null, "This composed storybook is empty, maybe you're using filter-functi\
ons, and all stories are filtered away."))))), "EmptyBlock"), Hc = /* @__PURE__ */ a(({ isMain: e }) => /* @__PURE__ */ s.createElement(Ro, null,
/* @__PURE__ */ s.createElement(Lc, { size: e ? 17 : 5 })), "LoaderBlock");

// src/manager/components/sidebar/RefIndicator.tsx
var { document: z0, window: W0 } = se, V0 = I.aside(({ theme: e }) => ({
  height: 16,
  display: "flex",
  alignItems: "center",
  "& > * + *": {
    marginLeft: e.layoutMargin
  }
})), j0 = I.button(({ theme: e }) => ({
  height: 20,
  width: 20,
  padding: 0,
  margin: 0,
  display: "flex",
  alignItems: "center",
  justifyContent: "center",
  background: "transparent",
  outline: "none",
  border: "1px solid transparent",
  borderRadius: "100%",
  cursor: "pointer",
  color: e.base === "light" ? Te(0.3, e.color.defaultText) : Te(0.6, e.color.defaultText),
  "&:hover": {
    color: e.barSelectedColor
  },
  "&:focus": {
    color: e.barSelectedColor,
    borderColor: e.color.secondary
  },
  svg: {
    height: 10,
    width: 10,
    transition: "all 150ms ease-out",
    color: "inherit"
  }
})), Vt = I.span(({ theme: e }) => ({
  fontWeight: e.typography.weight.bold
})), jt = I.a(({ theme: e }) => ({
  textDecoration: "none",
  lineHeight: "16px",
  padding: 15,
  display: "flex",
  flexDirection: "row",
  alignItems: "flex-start",
  color: e.color.defaultText,
  "&:not(:last-child)": {
    borderBottom: `1px solid ${e.appBorderColor}`
  },
  "&:hover": {
    background: e.background.hoverable,
    color: e.color.darker
  },
  "&:link": {
    color: e.color.darker
  },
  "&:active": {
    color: e.color.darker
  },
  "&:focus": {
    color: e.color.darker
  },
  "& > *": {
    flex: 1
  },
  "& > svg": {
    marginTop: 3,
    width: 16,
    height: 16,
    marginRight: 10,
    flex: "unset"
  }
})), K0 = I.div({
  width: 280,
  boxSizing: "border-box",
  borderRadius: 8,
  overflow: "hidden"
}), $0 = I.div(({ theme: e }) => ({
  display: "flex",
  alignItems: "center",
  fontSize: e.typography.size.s1,
  fontWeight: e.typography.weight.regular,
  color: e.base === "light" ? Te(0.3, e.color.defaultText) : Te(0.6, e.color.defaultText),
  "& > * + *": {
    marginLeft: 4
  },
  svg: {
    height: 10,
    width: 10
  }
})), U0 = /* @__PURE__ */ a(({ url: e, versions: t }) => {
  let o = G(() => {
    let i = Object.entries(t).find(([r, n]) => n === e);
    return i && i[0] ? i[0] : "current";
  }, [e, t]);
  return /* @__PURE__ */ s.createElement($0, null, /* @__PURE__ */ s.createElement("span", null, o), /* @__PURE__ */ s.createElement(Ot, null));
}, "CurrentVersion"), zc = s.memo(
  oa(
    ({ state: e, ...t }, o) => {
      let i = oe(), r = G(() => Object.values(t.index || {}), [t.index]), n = G(
        () => r.filter((u) => u.type === "component").length,
        [r]
      ), l = G(
        () => r.filter((u) => u.type === "docs" || u.type === "story").length,
        [r]
      );
      return /* @__PURE__ */ s.createElement(V0, { ref: o }, /* @__PURE__ */ s.createElement(
        ve,
        {
          placement: "bottom-start",
          trigger: "click",
          closeOnOutsideClick: !0,
          tooltip: /* @__PURE__ */ s.createElement(K0, null, /* @__PURE__ */ s.createElement(pt, { row: 0 }, e === "loading" && /* @__PURE__ */ s.
          createElement(Z0, { url: t.url }), (e === "error" || e === "empty") && /* @__PURE__ */ s.createElement(X0, { url: t.url }), e === "\
ready" && /* @__PURE__ */ s.createElement(s.Fragment, null, /* @__PURE__ */ s.createElement(G0, { url: t.url, componentCount: n, leafCount: l }),
          t.sourceUrl && /* @__PURE__ */ s.createElement(q0, { url: t.sourceUrl })), e === "auth" && /* @__PURE__ */ s.createElement(Y0, { ...t }),
          t.type === "auto-inject" && e !== "error" && /* @__PURE__ */ s.createElement(J0, null), e !== "loading" && /* @__PURE__ */ s.createElement(
          Q0, null)))
        },
        /* @__PURE__ */ s.createElement(j0, { "data-action": "toggle-indicator", "aria-label": "toggle indicator" }, /* @__PURE__ */ s.createElement(
        Zo, null))
      ), t.versions && Object.keys(t.versions).length ? /* @__PURE__ */ s.createElement(
        ve,
        {
          placement: "bottom-start",
          trigger: "click",
          closeOnOutsideClick: !0,
          tooltip: (u) => /* @__PURE__ */ s.createElement(
            ot,
            {
              links: Object.entries(t.versions).map(([c, d]) => ({
                icon: d === t.url ? /* @__PURE__ */ s.createElement(Be, null) : void 0,
                id: c,
                title: c,
                href: d,
                onClick: /* @__PURE__ */ a((p, f) => {
                  p.preventDefault(), i.changeRefVersion(t.id, f.href), u.onHide();
                }, "onClick")
              }))
            }
          )
        },
        /* @__PURE__ */ s.createElement(U0, { url: t.url, versions: t.versions })
      ) : null);
    }
  )
), G0 = /* @__PURE__ */ a(({ url: e, componentCount: t, leafCount: o }) => {
  let i = De();
  return /* @__PURE__ */ s.createElement(jt, { href: e.replace(/\/?$/, "/index.html"), target: "_blank" }, /* @__PURE__ */ s.createElement(Zo,
  { color: i.color.secondary }), /* @__PURE__ */ s.createElement("div", null, /* @__PURE__ */ s.createElement(Vt, null, "View external Story\
book"), /* @__PURE__ */ s.createElement("div", null, "Explore ", t, " components and ", o, " stories in a new browser tab.")));
}, "ReadyMessage"), q0 = /* @__PURE__ */ a(({ url: e }) => {
  let t = De();
  return /* @__PURE__ */ s.createElement(jt, { href: e, target: "_blank" }, /* @__PURE__ */ s.createElement(Vn, { color: t.color.secondary }),
  /* @__PURE__ */ s.createElement("div", null, /* @__PURE__ */ s.createElement(Vt, null, "View source code")));
}, "SourceCodeMessage"), Y0 = /* @__PURE__ */ a(({ loginUrl: e, id: t }) => {
  let o = De(), i = A((r) => {
    r.preventDefault();
    let n = W0.open(e, `storybook_auth_${t}`, "resizable,scrollbars"), l = setInterval(() => {
      n ? n.closed && (clearInterval(l), z0.location.reload()) : clearInterval(l);
    }, 1e3);
  }, []);
  return /* @__PURE__ */ s.createElement(jt, { onClick: i }, /* @__PURE__ */ s.createElement(xo, { color: o.color.gold }), /* @__PURE__ */ s.
  createElement("div", null, /* @__PURE__ */ s.createElement(Vt, null, "Log in required"), /* @__PURE__ */ s.createElement("div", null, "You\
 need to authenticate to view this Storybook's components.")));
}, "LoginRequiredMessage"), Q0 = /* @__PURE__ */ a(() => {
  let e = De();
  return /* @__PURE__ */ s.createElement(jt, { href: "https://storybook.js.org/docs/sharing/storybook-composition", target: "_blank" }, /* @__PURE__ */ s.
  createElement(Pt, { color: e.color.green }), /* @__PURE__ */ s.createElement("div", null, /* @__PURE__ */ s.createElement(Vt, null, "Read \
Composition docs"), /* @__PURE__ */ s.createElement("div", null, "Learn how to combine multiple Storybooks into one.")));
}, "ReadDocsMessage"), X0 = /* @__PURE__ */ a(({ url: e }) => {
  let t = De();
  return /* @__PURE__ */ s.createElement(jt, { href: e.replace(/\/?$/, "/index.html"), target: "_blank" }, /* @__PURE__ */ s.createElement(go,
  { color: t.color.negative }), /* @__PURE__ */ s.createElement("div", null, /* @__PURE__ */ s.createElement(Vt, null, "Something went wrong"),
  /* @__PURE__ */ s.createElement("div", null, "This external Storybook didn't load. Debug it in a new tab now.")));
}, "ErrorOccurredMessage"), Z0 = /* @__PURE__ */ a(({ url: e }) => {
  let t = De();
  return /* @__PURE__ */ s.createElement(jt, { href: e.replace(/\/?$/, "/index.html"), target: "_blank" }, /* @__PURE__ */ s.createElement(Qn,
  { color: t.color.secondary }), /* @__PURE__ */ s.createElement("div", null, /* @__PURE__ */ s.createElement(Vt, null, "Please wait"), /* @__PURE__ */ s.
  createElement("div", null, "This Storybook is loading.")));
}, "LoadingMessage"), J0 = /* @__PURE__ */ a(() => {
  let e = De();
  return /* @__PURE__ */ s.createElement(jt, { href: "https://storybook.js.org/docs/sharing/storybook-composition", target: "_blank" }, /* @__PURE__ */ s.
  createElement(zn, { color: e.color.gold }), /* @__PURE__ */ s.createElement("div", null, /* @__PURE__ */ s.createElement(Vt, null, "Reduce\
 lag"), /* @__PURE__ */ s.createElement("div", null, "Learn how to speed up Composition performance.")));
}, "PerformanceDegradedMessage");

// src/manager/components/sidebar/IconSymbols.tsx
var ex = I.svg`
  position: absolute;
  width: 0;
  height: 0;
  display: inline-block;
  shape-rendering: inherit;
  vertical-align: middle;
`, Wc = "icon--group", Vc = "icon--component", jc = "icon--document", Kc = "icon--story", $c = "icon--success", Uc = "icon--error", Gc = "ic\
on--warning", qc = "icon--dot", Yc = /* @__PURE__ */ a(() => /* @__PURE__ */ s.createElement(ex, { "data-chromatic": "ignore" }, /* @__PURE__ */ s.
createElement("symbol", { id: Wc }, /* @__PURE__ */ s.createElement(
  "path",
  {
    fillRule: "evenodd",
    clipRule: "evenodd",
    d: "M6.586 3.504l-1.5-1.5H1v9h12v-7.5H6.586zm.414-1L5.793 1.297a1 1 0 00-.707-.293H.5a.5.5 0 00-.5.5v10a.5.5 0 00.5.5h13a.5.5 0 00.5-.5v\
-8.5a.5.5 0 00-.5-.5H7z",
    fill: "currentColor"
  }
)), /* @__PURE__ */ s.createElement("symbol", { id: Vc }, /* @__PURE__ */ s.createElement(
  "path",
  {
    fillRule: "evenodd",
    clipRule: "evenodd",
    d: "M3.5 1.004a2.5 2.5 0 00-2.5 2.5v7a2.5 2.5 0 002.5 2.5h7a2.5 2.5 0 002.5-2.5v-7a2.5 2.5 0 00-2.5-2.5h-7zm8.5 5.5H7.5v-4.5h3a1.5 1.5 0\
 011.5 1.5v3zm0 1v3a1.5 1.5 0 01-1.5 1.5h-3v-4.5H12zm-5.5 4.5v-4.5H2v3a1.5 1.5 0 001.5 1.5h3zM2 6.504h4.5v-4.5h-3a1.5 1.5 0 00-1.5 1.5v3z",
    fill: "currentColor"
  }
)), /* @__PURE__ */ s.createElement("symbol", { id: jc }, /* @__PURE__ */ s.createElement(
  "path",
  {
    d: "M4 5.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zM4.5 7.5a.5.5 0 000 1h5a.5.5 0 000-1h-5zM4 10.5a.5.5 0 01.5-.5h5a.5.5 0 010 \
1h-5a.5.5 0 01-.5-.5z",
    fill: "currentColor"
  }
), /* @__PURE__ */ s.createElement(
  "path",
  {
    fillRule: "evenodd",
    clipRule: "evenodd",
    d: "M1.5 0a.5.5 0 00-.5.5v13a.5.5 0 00.5.5h11a.5.5 0 00.5-.5V3.207a.5.5 0 00-.146-.353L10.146.146A.5.5 0 009.793 0H1.5zM2 1h7.5v2a.5.5 0\
 00.5.5h2V13H2V1z",
    fill: "currentColor"
  }
)), /* @__PURE__ */ s.createElement("symbol", { id: Kc }, /* @__PURE__ */ s.createElement(
  "path",
  {
    fillRule: "evenodd",
    clipRule: "evenodd",
    d: "M3.5 0h7a.5.5 0 01.5.5v13a.5.5 0 01-.454.498.462.462 0 01-.371-.118L7 11.159l-3.175 2.72a.46.46 0 01-.379.118A.5.5 0 013 13.5V.5a.5.\
5 0 01.5-.5zM4 12.413l2.664-2.284a.454.454 0 01.377-.128.498.498 0 01.284.12L10 12.412V1H4v11.413z",
    fill: "currentColor"
  }
)), /* @__PURE__ */ s.createElement("symbol", { id: $c }, /* @__PURE__ */ s.createElement(
  "path",
  {
    fillRule: "evenodd",
    clipRule: "evenodd",
    d: "M10.854 4.146a.5.5 0 010 .708l-5 5a.5.5 0 01-.708 0l-2-2a.5.5 0 11.708-.708L5.5 8.793l4.646-4.647a.5.5 0 01.708 0z",
    fill: "currentColor"
  }
)), /* @__PURE__ */ s.createElement("symbol", { id: Uc }, /* @__PURE__ */ s.createElement(
  "path",
  {
    fillRule: "evenodd",
    clipRule: "evenodd",
    d: "M7 4a3 3 0 100 6 3 3 0 000-6zM3 7a4 4 0 118 0 4 4 0 01-8 0z",
    fill: "currentColor"
  }
)), /* @__PURE__ */ s.createElement("symbol", { id: Gc }, /* @__PURE__ */ s.createElement(
  "path",
  {
    fillRule: "evenodd",
    clipRule: "evenodd",
    d: "M7.206 3.044a.498.498 0 01.23.212l3.492 5.985a.494.494 0 01.006.507.497.497 0 01-.443.252H3.51a.499.499 0 01-.437-.76l3.492-5.984a.4\
97.497 0 01.642-.212zM7 4.492L4.37 9h5.26L7 4.492z",
    fill: "currentColor"
  }
)), /* @__PURE__ */ s.createElement("symbol", { id: qc }, /* @__PURE__ */ s.createElement("circle", { cx: "3", cy: "3", r: "3", fill: "curre\
ntColor" }))), "IconSymbols"), Me = /* @__PURE__ */ a(({ type: e }) => e === "group" ? /* @__PURE__ */ s.createElement("use", { xlinkHref: `\
#${Wc}` }) : e === "component" ? /* @__PURE__ */ s.createElement("use", { xlinkHref: `#${Vc}` }) : e === "document" ? /* @__PURE__ */ s.createElement(
"use", { xlinkHref: `#${jc}` }) : e === "story" ? /* @__PURE__ */ s.createElement("use", { xlinkHref: `#${Kc}` }) : e === "success" ? /* @__PURE__ */ s.
createElement("use", { xlinkHref: `#${$c}` }) : e === "error" ? /* @__PURE__ */ s.createElement("use", { xlinkHref: `#${Uc}` }) : e === "war\
ning" ? /* @__PURE__ */ s.createElement("use", { xlinkHref: `#${Gc}` }) : e === "dot" ? /* @__PURE__ */ s.createElement("use", { xlinkHref: `\
#${qc}` }) : null, "UseSymbol");

// src/manager/utils/status.tsx
var tx = I(kn)({
  // specificity hack
  "&&&": {
    width: 6,
    height: 6
  }
}), ox = I(tx)(({ theme: { animation: e, color: t, base: o } }) => ({
  // specificity hack
  animation: `${e.glow} 1.5s ease-in-out infinite`,
  color: o === "light" ? t.mediumdark : t.darker
})), rx = [
  "status-value:unknown",
  "status-value:pending",
  "status-value:success",
  "status-value:warning",
  "status-value:error"
], Bo = {
  "status-value:unknown": [null, null],
  "status-value:pending": [/* @__PURE__ */ s.createElement(ox, { key: "icon" }), "currentColor"],
  "status-value:success": [
    /* @__PURE__ */ s.createElement("svg", { key: "icon", viewBox: "0 0 14 14", width: "14", height: "14" }, /* @__PURE__ */ s.createElement(
    Me, { type: "success" })),
    "currentColor"
  ],
  "status-value:warning": [
    /* @__PURE__ */ s.createElement("svg", { key: "icon", viewBox: "0 0 14 14", width: "14", height: "14" }, /* @__PURE__ */ s.createElement(
    Me, { type: "warning" })),
    "#A15C20"
  ],
  "status-value:error": [
    /* @__PURE__ */ s.createElement("svg", { key: "icon", viewBox: "0 0 14 14", width: "14", height: "14" }, /* @__PURE__ */ s.createElement(
    Me, { type: "error" })),
    "#D43900"
  ]
}, Ho = /* @__PURE__ */ a((e) => rx.reduce(
  (t, o) => e.includes(o) ? o : t,
  "status-value:unknown"
), "getMostCriticalStatusValue");
function zr(e, t) {
  return Object.values(e).reduce((o, i) => {
    if (i.type === "group" || i.type === "component") {
      let r = at(e, i.id, !1).map((l) => e[l]).filter((l) => l.type === "story"), n = Ho(
        // @ts-expect-error (non strict)
        r.flatMap((l) => Object.values(t[l.id] || {})).map((l) => l.value)
      );
      n && (o[i.id] = n);
    }
    return o;
  }, {});
}
a(zr, "getGroupStatus");

// src/manager/components/sidebar/StatusButton.tsx
var Qc = /* @__PURE__ */ a(({ theme: e, status: t }) => {
  let o = e.base === "light" ? Te(0.3, e.color.defaultText) : Te(0.6, e.color.defaultText);
  return {
    color: {
      "status-value:pending": o,
      "status-value:success": e.color.positive,
      "status-value:error": e.color.negative,
      "status-value:warning": e.color.warning,
      "status-value:unknown": o
    }[t]
  };
}, "withStatusColor"), Xc = I.div(Qc, {
  margin: 3
}), zo = I(ee)(
  Qc,
  ({ theme: e, height: t, width: o }) => ({
    transition: "none",
    display: "inline-flex",
    alignItems: "center",
    justifyContent: "center",
    width: o || 28,
    height: t || 28,
    "&:hover": {
      color: e.color.secondary,
      background: e.base === "dark" ? Ir(0.3, e.color.secondary) : Po(0.4, e.color.secondary)
    },
    '[data-selected="true"] &': {
      background: e.color.secondary,
      boxShadow: `0 0 5px 5px ${e.color.secondary}`,
      "&:hover": {
        background: Po(0.1, e.color.secondary)
      }
    },
    "&:focus": {
      color: e.color.secondary,
      borderColor: e.color.secondary,
      "&:not(:focus-visible)": {
        borderColor: "transparent"
      }
    }
  }),
  ({ theme: e, selectedItem: t }) => t && {
    "&:hover": {
      boxShadow: `inset 0 0 0 2px ${e.color.secondary}`,
      background: "rgba(255, 255, 255, 0.2)"
    }
  }
);

// src/manager/components/sidebar/ContextMenu.tsx
var nx = {
  onMouseEnter: /* @__PURE__ */ a(() => {
  }, "onMouseEnter"),
  node: null
}, ix = I(ve)({
  position: "absolute",
  right: 0,
  zIndex: 1
}), sx = I(zo)({
  background: "var(--tree-node-background-hover)",
  boxShadow: "0 0 5px 5px var(--tree-node-background-hover)"
}), Zc = /* @__PURE__ */ a((e, t, o) => {
  let [i, r] = K(0), [n, l] = K(!1), u = G(() => ({
    onMouseEnter: /* @__PURE__ */ a(() => {
      r((p) => p + 1);
    }, "onMouseEnter"),
    onOpen: /* @__PURE__ */ a((p) => {
      p.stopPropagation(), l(!0);
    }, "onOpen"),
    onClose: /* @__PURE__ */ a(() => {
      l(!1);
    }, "onClose")
  }), []), d = G(() => {
    let p = o.getElements(Ce.experimental_TEST_PROVIDER);
    return i ? Jc(p, e) : [];
  }, [o, e, i]).length > 0 || t.length > 0;
  return G(() => globalThis.CONFIG_TYPE !== "DEVELOPMENT" ? nx : {
    onMouseEnter: u.onMouseEnter,
    node: d ? /* @__PURE__ */ s.createElement(
      ix,
      {
        "data-displayed": n ? "on" : "off",
        closeOnOutsideClick: !0,
        placement: "bottom-end",
        "data-testid": "context-menu",
        onVisibleChange: (p) => {
          p ? l(!0) : u.onClose();
        },
        tooltip: /* @__PURE__ */ s.createElement(ax, { context: e, links: t })
      },
      /* @__PURE__ */ s.createElement(sx, { type: "button", status: "status-value:pending" }, /* @__PURE__ */ s.createElement(An, null))
    ) : null
  }, [e, u, n, d, t]);
}, "useContextMenu"), ax = /* @__PURE__ */ a(({
  context: e,
  links: t,
  ...o
}) => {
  let i = oe().getElements(
    Ce.experimental_TEST_PROVIDER
  ), r = Jc(i, e), l = (Array.isArray(t[0]) ? t : [t]).concat([r]);
  return /* @__PURE__ */ s.createElement(ot, { ...o, links: l });
}, "LiveContextMenu");
function Jc(e, t) {
  return Object.entries(e).map(([o, i]) => {
    if (!i)
      return null;
    let r = i.sidebarContextMenu?.({ context: t });
    return r ? {
      id: o,
      content: r
    } : null;
  }).filter(Boolean);
}
a(Jc, "generateTestProviderLinks");

// src/manager/components/sidebar/StatusContext.tsx
var Ui = Qt({}), ep = /* @__PURE__ */ a((e) => {
  let { data: t, allStatuses: o, groupStatus: i } = qo(Ui), r = {
    counts: {
      "status-value:pending": 0,
      "status-value:success": 0,
      "status-value:error": 0,
      "status-value:warning": 0,
      "status-value:unknown": 0
    },
    statusesByValue: {
      "status-value:pending": {},
      "status-value:success": {},
      "status-value:error": {},
      "status-value:warning": {},
      "status-value:unknown": {}
    }
  };
  if (t && o && i && ["status-value:pending", "status-value:warning", "status-value:error"].includes(
    i[e.id]
  ))
    for (let n of at(t, e.id, !1))
      for (let l of Object.values(o[n] ?? {}))
        r.counts[l.value]++, r.statusesByValue[l.value][n] ??= [], r.statusesByValue[l.value][n].push(l);
  return r;
}, "useStatusSummary");

// src/manager/components/sidebar/components/CollapseIcon.tsx
var lx = I.div(({ theme: e, isExpanded: t }) => ({
  width: 8,
  height: 8,
  display: "flex",
  justifyContent: "center",
  alignItems: "center",
  color: Te(0.4, e.textMutedColor),
  transform: t ? "rotateZ(90deg)" : "none",
  transition: "transform .1s ease-out"
})), Kt = /* @__PURE__ */ a(({ isExpanded: e }) => /* @__PURE__ */ s.createElement(lx, { isExpanded: e }, /* @__PURE__ */ s.createElement("s\
vg", { xmlns: "http://www.w3.org/2000/svg", width: "8", height: "8", fill: "none" }, /* @__PURE__ */ s.createElement(
  "path",
  {
    fill: "#73828C",
    fillRule: "evenodd",
    d: "M1.896 7.146a.5.5 0 1 0 .708.708l3.5-3.5a.5.5 0 0 0 0-.708l-3.5-3.5a.5.5 0 1 0-.708.708L5.043 4 1.896 7.146Z",
    clipRule: "evenodd"
  }
))), "CollapseIcon");

// src/manager/components/sidebar/TreeNode.tsx
var wt = I.svg(
  ({ theme: e, type: t }) => ({
    width: 14,
    height: 14,
    flex: "0 0 auto",
    color: t === "group" ? e.base === "dark" ? e.color.primary : e.color.ultraviolet : t === "component" ? e.color.secondary : t === "docume\
nt" ? e.base === "dark" ? e.color.gold : "#ff8300" : t === "story" ? e.color.seafoam : "currentColor"
  })
), tp = I.button(({ theme: e, depth: t = 0, isExpandable: o = !1 }) => ({
  width: "100%",
  border: "none",
  cursor: "pointer",
  display: "flex",
  alignItems: "start",
  textAlign: "left",
  paddingLeft: `${(o ? 8 : 22) + t * 18}px`,
  color: "inherit",
  fontSize: `${e.typography.size.s2}px`,
  background: "transparent",
  minHeight: 28,
  borderRadius: 4,
  gap: 6,
  paddingTop: 5,
  paddingBottom: 4
})), op = I.a(({ theme: e, depth: t = 0 }) => ({
  width: "100%",
  cursor: "pointer",
  color: "inherit",
  display: "flex",
  gap: 6,
  flex: 1,
  alignItems: "start",
  paddingLeft: `${22 + t * 18}px`,
  paddingTop: 5,
  paddingBottom: 4,
  fontSize: `${e.typography.size.s2}px`,
  textDecoration: "none",
  overflowWrap: "break-word",
  wordWrap: "break-word",
  wordBreak: "break-word"
})), rp = I.div(({ theme: e }) => ({
  display: "flex",
  alignItems: "center",
  justifyContent: "space-between",
  marginTop: 16,
  marginBottom: 4,
  fontSize: `${e.typography.size.s1 - 1}px`,
  fontWeight: e.typography.weight.bold,
  lineHeight: "16px",
  minHeight: 28,
  letterSpacing: "0.16em",
  textTransform: "uppercase",
  color: e.textMutedColor
})), Wr = I.div({
  display: "flex",
  alignItems: "center",
  gap: 6,
  marginTop: 2
}), np = s.memo(/* @__PURE__ */ a(function({
  children: t,
  isExpanded: o = !1,
  isExpandable: i = !1,
  ...r
}) {
  return /* @__PURE__ */ s.createElement(tp, { isExpandable: i, tabIndex: -1, ...r }, /* @__PURE__ */ s.createElement(Wr, null, i && /* @__PURE__ */ s.
  createElement(Kt, { isExpanded: o }), /* @__PURE__ */ s.createElement(wt, { viewBox: "0 0 14 14", width: "14", height: "14", type: "group" },
  /* @__PURE__ */ s.createElement(Me, { type: "group" }))), t);
}, "GroupNode")), ip = s.memo(
  /* @__PURE__ */ a(function({ theme: t, children: o, isExpanded: i, isExpandable: r, isSelected: n, ...l }) {
    return /* @__PURE__ */ s.createElement(tp, { isExpandable: r, tabIndex: -1, ...l }, /* @__PURE__ */ s.createElement(Wr, null, r && /* @__PURE__ */ s.
    createElement(Kt, { isExpanded: i }), /* @__PURE__ */ s.createElement(wt, { viewBox: "0 0 14 14", width: "12", height: "12", type: "comp\
onent" }, /* @__PURE__ */ s.createElement(Me, { type: "component" }))), o);
  }, "ComponentNode")
), sp = s.memo(
  /* @__PURE__ */ a(function({ theme: t, children: o, docsMode: i, ...r }) {
    return /* @__PURE__ */ s.createElement(op, { tabIndex: -1, ...r }, /* @__PURE__ */ s.createElement(Wr, null, /* @__PURE__ */ s.createElement(
    wt, { viewBox: "0 0 14 14", width: "12", height: "12", type: "document" }, /* @__PURE__ */ s.createElement(Me, { type: "document" }))), o);
  }, "DocumentNode")
), ap = s.memo(/* @__PURE__ */ a(function({
  theme: t,
  children: o,
  ...i
}) {
  return /* @__PURE__ */ s.createElement(op, { tabIndex: -1, ...i }, /* @__PURE__ */ s.createElement(Wr, null, /* @__PURE__ */ s.createElement(
  wt, { viewBox: "0 0 14 14", width: "12", height: "12", type: "story" }, /* @__PURE__ */ s.createElement(Me, { type: "story" }))), o);
}, "StoryNode"));

// ../node_modules/es-toolkit/dist/function/debounce.mjs
function Vr(e, t, { signal: o, edges: i } = {}) {
  let r, n = null, l = i != null && i.includes("leading"), u = i == null || i.includes("trailing"), c = /* @__PURE__ */ a(() => {
    n !== null && (e.apply(r, n), r = void 0, n = null);
  }, "invoke"), d = /* @__PURE__ */ a(() => {
    u && c(), y();
  }, "onTimerEnd"), p = null, f = /* @__PURE__ */ a(() => {
    p != null && clearTimeout(p), p = setTimeout(() => {
      p = null, d();
    }, t);
  }, "schedule"), h = /* @__PURE__ */ a(() => {
    p !== null && (clearTimeout(p), p = null);
  }, "cancelTimer"), y = /* @__PURE__ */ a(() => {
    h(), r = void 0, n = null;
  }, "cancel"), m = /* @__PURE__ */ a(() => {
    h(), c();
  }, "flush"), b = /* @__PURE__ */ a(function(...x) {
    if (o?.aborted)
      return;
    r = this, n = x;
    let E = p == null;
    f(), l && E && c();
  }, "debounced");
  return b.schedule = f, b.cancel = y, b.flush = m, o?.addEventListener("abort", y, { once: !0 }), b;
}
a(Vr, "debounce");

// ../node_modules/es-toolkit/dist/function/throttle.mjs
function Gi(e, t, { signal: o, edges: i = ["leading", "trailing"] } = {}) {
  let r = null, n = Vr(e, t, { signal: o, edges: i }), l = /* @__PURE__ */ a(function(...u) {
    r == null ? r = Date.now() : Date.now() - r >= t && (r = Date.now(), n.cancel()), n(...u);
  }, "throttled");
  return l.cancel = n.cancel, l.flush = n.flush, l;
}
a(Gi, "throttle");

// ../node_modules/es-toolkit/dist/compat/function/debounce.mjs
function qi(e, t = 0, o = {}) {
  typeof o != "object" && (o = {});
  let { signal: i, leading: r = !1, trailing: n = !0, maxWait: l } = o, u = Array(2);
  r && (u[0] = "leading"), n && (u[1] = "trailing");
  let c, d = null, p = Vr(function(...y) {
    c = e.apply(this, y), d = null;
  }, t, { signal: i, edges: u }), f = /* @__PURE__ */ a(function(...y) {
    if (l != null) {
      if (d === null)
        d = Date.now();
      else if (Date.now() - d >= l)
        return c = e.apply(this, y), d = Date.now(), p.cancel(), p.schedule(), c;
    }
    return p.apply(this, y), c;
  }, "debounced"), h = /* @__PURE__ */ a(() => (p.flush(), c), "flush");
  return f.cancel = p.cancel, f.flush = h, f;
}
a(qi, "debounce");

// src/manager/keybinding.ts
var ux = {
  // event.code => event.key
  Space: " ",
  Slash: "/",
  ArrowLeft: "ArrowLeft",
  ArrowUp: "ArrowUp",
  ArrowRight: "ArrowRight",
  ArrowDown: "ArrowDown",
  Escape: "Escape",
  Enter: "Enter"
}, cx = { alt: !1, ctrl: !1, meta: !1, shift: !1 }, Et = /* @__PURE__ */ a((e, t) => {
  let { alt: o, ctrl: i, meta: r, shift: n } = e === !1 ? cx : e;
  return !(typeof o == "boolean" && o !== t.altKey || typeof i == "boolean" && i !== t.ctrlKey || typeof r == "boolean" && r !== t.metaKey ||
  typeof n == "boolean" && n !== t.shiftKey);
}, "matchesModifiers"), $e = /* @__PURE__ */ a((e, t) => t.code ? t.code === e : t.key === ux[e], "matchesKeyCode");

// src/manager/components/sidebar/useExpanded.ts
var { document: Yi } = se, px = /* @__PURE__ */ a(({
  refId: e,
  data: t,
  initialExpanded: o,
  highlightedRef: i,
  rootIds: r
}) => {
  let n = i.current?.refId === e ? Fo(t, i.current?.itemId) : [];
  return [...r, ...n].reduce(
    // @ts-expect-error (non strict)
    (l, u) => Object.assign(l, { [u]: u in o ? o[u] : !0 }),
    {}
  );
}, "initializeExpanded"), dx = /* @__PURE__ */ a(() => {
}, "noop"), lp = /* @__PURE__ */ a(({
  containerRef: e,
  isBrowsing: t,
  refId: o,
  data: i,
  initialExpanded: r,
  rootIds: n,
  highlightedRef: l,
  setHighlightedItemId: u,
  selectedStoryId: c,
  onSelectStoryId: d
}) => {
  let p = oe(), [f, h] = Zt(
    (g, { ids: v, value: S }) => v.reduce((w, k) => Object.assign(w, { [k]: S }), { ...g }),
    // @ts-expect-error (non strict)
    { refId: o, data: i, highlightedRef: l, rootIds: n, initialExpanded: r },
    px
  ), y = A(
    (g) => e.current?.querySelector(`[data-item-id="${g}"]`),
    [e]
  ), m = A(
    (g) => {
      u(g.getAttribute("data-item-id")), zt(g);
    },
    [u]
  ), b = A(
    ({ ids: g, value: v }) => {
      if (h({ ids: g, value: v }), g.length === 1) {
        let S = e.current?.querySelector(
          `[data-item-id="${g[0]}"][data-ref-id="${o}"]`
        );
        S && m(S);
      }
    },
    [e, m, o]
  );
  H(() => {
    h({ ids: Fo(i, c), value: !0 });
  }, [i, c]);
  let x = A(() => {
    let g = Object.keys(i).filter((v) => !n.includes(v));
    h({ ids: g, value: !1 });
  }, [i, n]), E = A(() => {
    h({ ids: Object.keys(i), value: !0 });
  }, [i]);
  return H(() => p ? (p.on(ho, x), p.on(wn, E), () => {
    p.off(ho, x), p.off(wn, E);
  }) : dx, [p, x, E]), H(() => {
    let g = Yi.getElementById("storybook-explorer-menu"), v = Gi((S) => {
      let w = l.current?.refId === o && l.current?.itemId;
      if (!t || !e.current || !w || S.repeat || !Et(!1, S))
        return;
      let k = $e("Enter", S), _ = $e("Space", S), C = $e("ArrowLeft", S), T = $e("ArrowRight", S);
      if (!(k || _ || C || T))
        return;
      let O = y(w);
      if (!O || O.getAttribute("data-ref-id") !== o)
        return;
      let P = S.target;
      if (!Wt(g, P) && !Wt(P, g))
        return;
      if (P.hasAttribute("data-action")) {
        if (k || _)
          return;
        P.blur();
      }
      let D = O.getAttribute("data-nodetype");
      (k || _) && ["component", "story", "document"].includes(D) && d(w);
      let M = O.getAttribute("aria-expanded");
      if (C) {
        if (M === "true") {
          h({ ids: [w], value: !1 });
          return;
        }
        let F = O.getAttribute("data-parent-id"), Z = F && y(F);
        if (Z && Z.getAttribute("data-highlightable") === "true") {
          m(Z);
          return;
        }
        h({ ids: at(i, w, !0), value: !1 });
        return;
      }
      T && (M === "false" ? b({ ids: [w], value: !0 }) : M === "true" && b({ ids: at(i, w, !0), value: !0 }));
    }, 60);
    return Yi.addEventListener("keydown", v), () => Yi.removeEventListener("keydown", v);
  }, [
    e,
    t,
    o,
    i,
    l,
    u,
    d
  ]), [f, b];
}, "useExpanded");

// src/manager/components/sidebar/Tree.tsx
var fx = I.div((e) => ({
  marginTop: e.hasOrphans ? 20 : 0,
  marginBottom: 20
})), mx = I.button(({ theme: e }) => ({
  all: "unset",
  display: "flex",
  padding: "0px 8px",
  borderRadius: 4,
  transition: "color 150ms, box-shadow 150ms",
  gap: 6,
  alignItems: "center",
  cursor: "pointer",
  height: 28,
  "&:hover, &:focus": {
    outline: "none",
    background: "var(--tree-node-background-hover)"
  }
})), up = I.div(({ theme: e }) => ({
  position: "relative",
  display: "flex",
  justifyContent: "space-between",
  alignItems: "flex-start",
  color: e.color.defaultText,
  background: "transparent",
  minHeight: 28,
  borderRadius: 4,
  overflow: "hidden",
  "--tree-node-background-hover": e.background.content,
  [Qe]: {
    "--tree-node-background-hover": e.background.app
  },
  "&:hover, &:focus": {
    "--tree-node-background-hover": e.base === "dark" ? Ir(0.35, e.color.secondary) : Po(0.45, e.color.secondary),
    background: "var(--tree-node-background-hover)",
    outline: "none"
  },
  '& [data-displayed="off"]': {
    visibility: "hidden"
  },
  '&:hover [data-displayed="off"]': {
    visibility: "visible"
  },
  '& [data-displayed="on"] + *': {
    visibility: "hidden"
  },
  '&:hover [data-displayed="off"] + *': {
    visibility: "hidden"
  },
  '&[data-selected="true"]': {
    color: e.color.lightest,
    background: e.color.secondary,
    fontWeight: e.typography.weight.bold,
    "&&:hover, &&:focus": {
      "--tree-node-background-hover": e.color.secondary,
      background: "var(--tree-node-background-hover)"
    },
    svg: { color: e.color.lightest }
  },
  a: { color: "currentColor" }
})), hx = I(he)(({ theme: e }) => ({
  display: "none",
  "@media (min-width: 600px)": {
    display: "block",
    fontSize: "10px",
    overflow: "hidden",
    width: 1,
    height: "20px",
    boxSizing: "border-box",
    opacity: 0,
    padding: 0,
    "&:focus": {
      opacity: 1,
      padding: "5px 10px",
      background: "white",
      color: e.color.secondary,
      width: "auto"
    }
  }
})), gx = /* @__PURE__ */ a((e) => {
  let t = De();
  return /* @__PURE__ */ s.createElement(Un, { ...e, color: t.color.positive });
}, "SuccessStatusIcon"), yx = /* @__PURE__ */ a((e) => {
  let t = De();
  return /* @__PURE__ */ s.createElement($n, { ...e, color: t.color.negative });
}, "ErrorStatusIcon"), bx = /* @__PURE__ */ a((e) => {
  let t = De();
  return /* @__PURE__ */ s.createElement(Gn, { ...e, color: t.color.warning });
}, "WarnStatusIcon"), vx = /* @__PURE__ */ a((e) => {
  let t = De();
  return /* @__PURE__ */ s.createElement(ct, { ...e, size: 12, color: t.color.defaultText });
}, "PendingStatusIcon"), Qi = {
  "status-value:success": /* @__PURE__ */ s.createElement(gx, null),
  "status-value:error": /* @__PURE__ */ s.createElement(yx, null),
  "status-value:warning": /* @__PURE__ */ s.createElement(bx, null),
  "status-value:pending": /* @__PURE__ */ s.createElement(vx, null),
  "status-value:unknown": null
};
var cp = [
  "status-value:success",
  "status-value:error",
  "status-value:warning",
  "status-value:pending",
  "status-value:unknown"
], pp = s.memo(/* @__PURE__ */ a(function({
  item: t,
  statuses: o,
  groupStatus: i,
  refId: r,
  docsMode: n,
  isOrphan: l,
  isDisplayed: u,
  isSelected: c,
  isFullyExpanded: d,
  setFullyExpanded: p,
  isExpanded: f,
  setExpanded: h,
  onSelectStoryId: y,
  api: m
}) {
  let { isDesktop: b, isMobile: x, setMobileMenuOpen: E } = ge(), { counts: g, statusesByValue: v } = ep(t);
  if (!u)
    return null;
  let S = G(() => {
    if (t.type === "story" || t.type === "docs")
      return Object.entries(o).filter(([, _]) => _.sidebarContextMenu !== !1).sort((_, C) => cp.indexOf(_[1].value) - cp.indexOf(C[1].value)).
      map(([_, C]) => ({
        id: _,
        title: C.title,
        description: C.description,
        "aria-label": `Test status for ${C.title}: ${C.value}`,
        icon: Qi[C.value],
        onClick: /* @__PURE__ */ a(() => {
          y(t.id), At.selectStatuses([C]);
        }, "onClick")
      }));
    if (t.type === "component" || t.type === "group") {
      let _ = [], C = g["status-value:error"], T = g["status-value:warning"];
      return C && _.push({
        id: "errors",
        icon: Qi["status-value:error"],
        title: `${C} ${C === 1 ? "story" : "stories"} with errors`,
        onClick: /* @__PURE__ */ a(() => {
          let [O] = Object.entries(v["status-value:error"])[0];
          y(O);
          let P = Object.values(v["status-value:error"]).flat();
          At.selectStatuses(P);
        }, "onClick")
      }), T && _.push({
        id: "warnings",
        icon: Qi["status-value:warning"],
        title: `${T} ${T === 1 ? "story" : "stories"} with warnings`,
        onClick: /* @__PURE__ */ a(() => {
          let [O] = Object.entries(v["status-value:warning"])[0];
          y(O);
          let P = Object.values(v["status-value:warning"]).flat();
          At.selectStatuses(P);
        }, "onClick")
      }), _;
    }
    return [];
  }, [g, t.id, t.type, y, o, v]), w = Hr(t.id, r), k = r === "storybook_internal" ? Zc(t, S, m) : { node: null, onMouseEnter: /* @__PURE__ */ a(
  () => {
  }, "onMouseEnter") };
  if (t.type === "story" || t.type === "docs") {
    let _ = t.type === "docs" ? sp : ap, C = Ho(
      Object.values(o || {}).map((P) => P.value)
    ), [T, O] = Bo[C];
    return /* @__PURE__ */ s.createElement(
      up,
      {
        key: w,
        className: "sidebar-item",
        "data-selected": c,
        "data-ref-id": r,
        "data-item-id": t.id,
        "data-parent-id": t.parent,
        "data-nodetype": t.type === "docs" ? "document" : "story",
        "data-highlightable": u,
        onMouseEnter: k.onMouseEnter
      },
      /* @__PURE__ */ s.createElement(
        _,
        {
          style: c ? {} : { color: O },
          href: _c(t, r),
          id: w,
          depth: l ? t.depth : t.depth - 1,
          onClick: (P) => {
            P.preventDefault(), y(t.id), x && E(!1);
          },
          ...t.type === "docs" && { docsMode: n }
        },
        t.renderLabel?.(t, m) || t.name
      ),
      c && /* @__PURE__ */ s.createElement(hx, { asChild: !0 }, /* @__PURE__ */ s.createElement("a", { href: "#storybook-preview-wrapper" },
      "Skip to canvas")),
      k.node,
      T ? /* @__PURE__ */ s.createElement(
        zo,
        {
          "aria-label": `Test status: ${C.replace("status-value:", "")}`,
          role: "status",
          type: "button",
          status: C,
          selectedItem: c
        },
        T
      ) : null
    );
  }
  if (t.type === "root")
    return /* @__PURE__ */ s.createElement(
      rp,
      {
        key: w,
        id: w,
        className: "sidebar-subheading",
        "data-ref-id": r,
        "data-item-id": t.id,
        "data-nodetype": "root"
      },
      /* @__PURE__ */ s.createElement(
        mx,
        {
          type: "button",
          "data-action": "collapse-root",
          onClick: (_) => {
            _.preventDefault(), h({ ids: [t.id], value: !f });
          },
          "aria-expanded": f
        },
        /* @__PURE__ */ s.createElement(Kt, { isExpanded: f }),
        t.renderLabel?.(t, m) || t.name
      ),
      f && /* @__PURE__ */ s.createElement(
        ee,
        {
          className: "sidebar-subheading-action",
          "aria-label": d ? "Expand" : "Collapse",
          "data-action": "expand-all",
          "data-expanded": d,
          onClick: (_) => {
            _.preventDefault(), p();
          }
        },
        d ? /* @__PURE__ */ s.createElement(On, null) : /* @__PURE__ */ s.createElement(Dn, null)
      )
    );
  if (t.type === "component" || t.type === "group") {
    let _ = i?.[t.id], C = _ ? Bo[_][1] : null, T = t.type === "component" ? ip : np;
    return /* @__PURE__ */ s.createElement(
      up,
      {
        key: w,
        className: "sidebar-item",
        "data-ref-id": r,
        "data-item-id": t.id,
        "data-parent-id": t.parent,
        "data-nodetype": t.type,
        "data-highlightable": u,
        onMouseEnter: k.onMouseEnter
      },
      /* @__PURE__ */ s.createElement(
        T,
        {
          id: w,
          style: C ? { color: C } : {},
          "aria-controls": t.children && t.children.join(" "),
          "aria-expanded": f,
          depth: l ? t.depth : t.depth - 1,
          isComponent: t.type === "component",
          isExpandable: t.children && t.children.length > 0,
          isExpanded: f,
          onClick: (O) => {
            O.preventDefault(), h({ ids: [t.id], value: !f }), t.type === "component" && !f && b && y(t.id);
          },
          onMouseEnter: () => {
            t.type === "component" && m.emit(kt, {
              ids: [t.children[0]],
              options: { target: r }
            });
          }
        },
        t.renderLabel?.(t, m) || t.name
      ),
      k.node,
      ["status-value:error", "status-value:warning"].includes(_) && /* @__PURE__ */ s.createElement(zo, { type: "button", status: _ }, /* @__PURE__ */ s.
      createElement("svg", { key: "icon", viewBox: "0 0 6 6", width: "6", height: "6", type: "dot" }, /* @__PURE__ */ s.createElement(Me, { type: "\
dot" })))
    );
  }
  return null;
}, "Node")), xx = s.memo(/* @__PURE__ */ a(function({
  setExpanded: t,
  isFullyExpanded: o,
  expandableDescendants: i,
  ...r
}) {
  let n = A(
    () => t({ ids: i, value: !o }),
    [t, o, i]
  );
  return /* @__PURE__ */ s.createElement(
    pp,
    {
      ...r,
      setExpanded: t,
      isFullyExpanded: o,
      setFullyExpanded: n
    }
  );
}, "Root")), dp = s.memo(/* @__PURE__ */ a(function({
  isBrowsing: t,
  isMain: o,
  refId: i,
  data: r,
  allStatuses: n,
  docsMode: l,
  highlightedRef: u,
  setHighlightedItemId: c,
  selectedStoryId: d,
  onSelectStoryId: p
}) {
  let f = U(null), h = oe(), [y, m, b] = G(
    () => Object.keys(r).reduce(
      (T, O) => {
        let P = r[O];
        return P.type === "root" ? T[0].push(O) : P.parent || T[1].push(O), P.type === "root" && P.startCollapsed && (T[2][O] = !1), T;
      },
      [[], [], {}]
    ),
    [r]
  ), { expandableDescendants: x } = G(() => [...m, ...y].reduce(
    (T, O) => (T.expandableDescendants[O] = at(r, O, !1).filter(
      (P) => !["story", "docs"].includes(r[P].type)
    ), T),
    { orphansFirst: [], expandableDescendants: {} }
  ), [r, y, m]), E = G(() => Object.keys(r).filter((T) => {
    let O = r[T];
    if (O.type !== "component")
      return !1;
    let { children: P = [], name: D } = O;
    if (P.length !== 1)
      return !1;
    let M = r[P[0]];
    return M.type === "docs" ? !0 : M.type === "story" ? Dc(M.name, D) : !1;
  }), [r]), g = G(
    () => Object.keys(r).filter((T) => !E.includes(T)),
    [E]
  ), v = G(() => E.reduce(
    (T, O) => {
      let { children: P, parent: D, name: M } = r[O], [F] = P;
      if (D) {
        let Z = [...r[D].children];
        Z[Z.indexOf(O)] = F, T[D] = { ...r[D], children: Z };
      }
      return T[F] = {
        ...r[F],
        name: M,
        parent: D,
        depth: r[F].depth - 1
      }, T;
    },
    { ...r }
  ), [r]), S = G(() => g.reduce(
    (T, O) => Object.assign(T, { [O]: Fo(v, O) }),
    {}
  ), [g, v]), [w, k] = lp({
    // @ts-expect-error (non strict)
    containerRef: f,
    isBrowsing: t,
    refId: i,
    data: v,
    initialExpanded: b,
    rootIds: y,
    highlightedRef: u,
    setHighlightedItemId: c,
    selectedStoryId: d,
    onSelectStoryId: p
  }), _ = G(
    () => zr(v, n ?? {}),
    [v, n]
  ), C = G(() => g.map((T) => {
    let O = v[T], P = Hr(T, i);
    if (O.type === "root") {
      let M = x[O.id], F = M.every((Z) => w[Z]);
      return (
        // @ts-expect-error (TODO)
        /* @__PURE__ */ s.createElement(
          xx,
          {
            api: h,
            key: P,
            item: O,
            refId: i,
            collapsedData: v,
            isOrphan: !1,
            isDisplayed: !0,
            isSelected: d === T,
            isExpanded: !!w[T],
            setExpanded: k,
            isFullyExpanded: F,
            expandableDescendants: M,
            onSelectStoryId: p
          }
        )
      );
    }
    let D = !O.parent || S[T].every((M) => w[M]);
    return D === !1 ? null : /* @__PURE__ */ s.createElement(
      pp,
      {
        api: h,
        collapsedData: v,
        key: P,
        item: O,
        statuses: n?.[T] ?? {},
        groupStatus: _,
        refId: i,
        docsMode: l,
        isOrphan: m.some((M) => T === M || T.startsWith(`${M}-`)),
        isDisplayed: D,
        isSelected: d === T,
        isExpanded: !!w[T],
        setExpanded: k,
        onSelectStoryId: p
      }
    );
  }), [
    S,
    h,
    v,
    g,
    l,
    x,
    w,
    _,
    p,
    m,
    i,
    d,
    k,
    n
  ]);
  return /* @__PURE__ */ s.createElement(Ui.Provider, { value: { data: r, allStatuses: n, groupStatus: _ } }, /* @__PURE__ */ s.createElement(
  fx, { ref: f, hasOrphans: o && m.length > 0 }, /* @__PURE__ */ s.createElement(Yc, null), C));
}, "Tree"));

// src/manager/components/sidebar/Refs.tsx
var Ix = I.div(({ isMain: e }) => ({
  position: "relative",
  marginTop: e ? void 0 : 0
})), Sx = I.div(({ theme: e }) => ({
  fontWeight: e.typography.weight.bold,
  fontSize: e.typography.size.s2,
  // Similar to ListItem.tsx
  textDecoration: "none",
  lineHeight: "16px",
  display: "flex",
  alignItems: "center",
  justifyContent: "space-between",
  background: "transparent",
  width: "100%",
  marginTop: 20,
  paddingTop: 16,
  paddingBottom: 12,
  borderTop: `1px solid ${e.appBorderColor}`,
  color: e.base === "light" ? e.color.defaultText : Te(0.2, e.color.defaultText)
})), wx = I.div({
  textOverflow: "ellipsis",
  whiteSpace: "nowrap",
  flex: 1,
  overflow: "hidden",
  marginLeft: 2
}), Ex = I.button(({ theme: e }) => ({
  all: "unset",
  display: "flex",
  padding: "0px 8px",
  gap: 6,
  alignItems: "center",
  cursor: "pointer",
  overflow: "hidden",
  "&:focus": {
    borderColor: e.color.secondary,
    "span:first-of-type": {
      borderLeftColor: e.color.secondary
    }
  }
})), fp = s.memo(/* @__PURE__ */ a(function(t) {
  let { docsOptions: o } = Ne(), i = oe(), {
    filteredIndex: r,
    id: n,
    title: l = n,
    isLoading: u,
    isBrowsing: c,
    selectedStoryId: d,
    highlightedRef: p,
    setHighlighted: f,
    loginUrl: h,
    type: y,
    expanded: m = !0,
    indexError: b,
    previewInitialized: x,
    allStatuses: E
  } = t, g = G(() => r ? Object.keys(r).length : 0, [r]), v = U(null), S = n === lt, k = u || (y === "auto-inject" && !x || y === "server-ch\
ecked") || y === "unknown", O = Ac(k, !!h && g === 0, !!b, !k && g === 0), [P, D] = K(m);
  H(() => {
    r && d && r[d] && D(!0);
  }, [D, r, d]);
  let M = A(() => D((V) => !V), [D]), F = A(
    (V) => f({ itemId: V, refId: n }),
    [f]
  ), Z = A(
    // @ts-expect-error (non strict)
    (V) => i && i.selectStory(V, void 0, { ref: !S && n }),
    [i, S, n]
  );
  return /* @__PURE__ */ s.createElement(s.Fragment, null, S || /* @__PURE__ */ s.createElement(
    Sx,
    {
      "aria-label": `${P ? "Hide" : "Show"} ${l} stories`,
      "aria-expanded": P
    },
    /* @__PURE__ */ s.createElement(Ex, { "data-action": "collapse-ref", onClick: M }, /* @__PURE__ */ s.createElement(Kt, { isExpanded: P }),
    /* @__PURE__ */ s.createElement(wx, { title: l }, l)),
    /* @__PURE__ */ s.createElement(zc, { ...t, state: O, ref: v })
  ), P && /* @__PURE__ */ s.createElement(Ix, { "data-title": l, isMain: S }, O === "auth" && /* @__PURE__ */ s.createElement(Fc, { id: n, loginUrl: h }),
  O === "error" && /* @__PURE__ */ s.createElement(Rc, { error: b }), O === "loading" && /* @__PURE__ */ s.createElement(Hc, { isMain: S }),
  O === "empty" && /* @__PURE__ */ s.createElement(Bc, { isMain: S }), O === "ready" && /* @__PURE__ */ s.createElement(
    dp,
    {
      allStatuses: E,
      isBrowsing: c,
      isMain: S,
      refId: n,
      data: r,
      docsMode: o.docsMode,
      selectedStoryId: d,
      onSelectStoryId: Z,
      highlightedRef: p,
      setHighlightedItemId: F
    }
  )));
}, "Ref"));

// src/manager/components/sidebar/useHighlighted.ts
var { document: jr, window: mp } = se, hp = /* @__PURE__ */ a((e) => e ? { itemId: e.storyId, refId: e.refId } : null, "fromSelection"), gp = /* @__PURE__ */ a(
(e, t = {}, o = 1) => {
  let { containerRef: i, center: r = !1, attempts: n = 3, delay: l = 500 } = t, u = (i ? i.current : jr)?.querySelector(e);
  u ? zt(u, r) : o <= n && setTimeout(gp, l, e, t, o + 1);
}, "scrollToSelector"), yp = /* @__PURE__ */ a(({
  containerRef: e,
  isLoading: t,
  isBrowsing: o,
  selected: i
}) => {
  let r = hp(i), n = U(r), [l, u] = K(r), c = oe(), d = A(
    (f) => {
      n.current = f, u(f);
    },
    [n]
  ), p = A(
    (f, h = !1) => {
      let y = f.getAttribute("data-item-id"), m = f.getAttribute("data-ref-id");
      !y || !m || (d({ itemId: y, refId: m }), zt(f, h));
    },
    [d]
  );
  return H(() => {
    let f = hp(i);
    d(f), f && gp(`[data-item-id="${f.itemId}"][data-ref-id="${f.refId}"]`, {
      containerRef: e,
      center: !0
    });
  }, [e, i, d]), H(() => {
    let f = jr.getElementById("storybook-explorer-menu"), h, y = /* @__PURE__ */ a((m) => {
      if (t || !o || !e.current || !Et(!1, m))
        return;
      let b = $e("ArrowUp", m), x = $e("ArrowDown", m);
      if (!(b || x))
        return;
      let E = mp.requestAnimationFrame(() => {
        mp.cancelAnimationFrame(h), h = E;
        let g = m.target;
        if (!Wt(f, g) && !Wt(g, f))
          return;
        g.hasAttribute("data-action") && g.blur();
        let v = Array.from(
          e.current?.querySelectorAll("[data-highlightable=true]") || []
        ), S = v.findIndex(
          (_) => _.getAttribute("data-item-id") === n.current?.itemId && _.getAttribute("data-ref-id") === n.current?.refId
        ), w = Pc(v, S, b ? -1 : 1), k = b ? w === v.length - 1 : w === 0;
        if (p(v[w], k), v[w].getAttribute("data-nodetype") === "component") {
          let { itemId: _, refId: C } = n.current, T = c.resolveStory(_, C === "storybook_internal" ? void 0 : C);
          T.type === "component" && c.emit(kt, {
            // @ts-expect-error (non strict)
            ids: [T.children[0]],
            options: { target: C }
          });
        }
      });
    }, "navigateTree");
    return jr.addEventListener("keydown", y), () => jr.removeEventListener("keydown", y);
  }, [t, o, n, p]), [l, d, n];
}, "useHighlighted");

// src/manager/components/sidebar/Explorer.tsx
var bp = s.memo(/* @__PURE__ */ a(function({
  isLoading: t,
  isBrowsing: o,
  dataset: i,
  selected: r
}) {
  let n = U(null), [l, u, c] = yp({
    containerRef: n,
    isLoading: t,
    isBrowsing: o,
    selected: r
  });
  return /* @__PURE__ */ s.createElement(
    "div",
    {
      ref: n,
      id: "storybook-explorer-tree",
      "data-highlighted-ref-id": l?.refId,
      "data-highlighted-item-id": l?.itemId
    },
    l && /* @__PURE__ */ s.createElement(Ec, { ...l }),
    i.entries.map(([d, p]) => /* @__PURE__ */ s.createElement(
      fp,
      {
        ...p,
        key: d,
        isLoading: t,
        isBrowsing: o,
        selectedStoryId: r?.refId === p.id ? r.storyId : null,
        highlightedRef: c,
        setHighlighted: u
      }
    ))
  );
}, "Explorer"));

// src/manager/components/sidebar/Brand.tsx
var Tx = I(sr)(({ theme: e }) => ({
  width: "auto",
  height: "22px !important",
  display: "block",
  color: e.base === "light" ? e.color.defaultText : e.color.lightest
})), Cx = I.img({
  display: "block",
  maxWidth: "150px !important",
  maxHeight: "100px"
}), vp = I.a(({ theme: e }) => ({
  display: "inline-block",
  height: "100%",
  margin: "-3px -4px",
  padding: "2px 3px",
  border: "1px solid transparent",
  borderRadius: 3,
  color: "inherit",
  textDecoration: "none",
  "&:focus": {
    outline: 0,
    borderColor: e.color.secondary
  }
})), xp = Ca(({ theme: e }) => {
  let { title: t = "Storybook", url: o = "./", image: i, target: r } = e.brand, n = r || (o === "./" ? "" : "_blank");
  if (i === null)
    return t === null ? null : o ? /* @__PURE__ */ s.createElement(vp, { href: o, target: n, dangerouslySetInnerHTML: { __html: t } }) : /* @__PURE__ */ s.
    createElement("div", { dangerouslySetInnerHTML: { __html: t } });
  let l = i ? /* @__PURE__ */ s.createElement(Cx, { src: i, alt: t }) : /* @__PURE__ */ s.createElement(Tx, { alt: t });
  return o ? /* @__PURE__ */ s.createElement(vp, { title: t, href: o, target: n }, l) : /* @__PURE__ */ s.createElement("div", null, l);
});

// src/manager/components/sidebar/Menu.tsx
var Xi = I(ee)(({ highlighted: e, theme: t, isMobile: o }) => ({
  position: "relative",
  overflow: "visible",
  marginTop: 0,
  zIndex: 1,
  ...o && {
    width: 36,
    height: 36
  },
  ...e && {
    "&:before, &:after": {
      content: '""',
      position: "absolute",
      top: 6,
      right: 6,
      width: 5,
      height: 5,
      zIndex: 2,
      borderRadius: "50%",
      background: t.background.app,
      border: `1px solid ${t.background.app}`,
      boxShadow: `0 0 0 2px ${t.background.app}`
    },
    "&:after": {
      background: t.color.positive,
      border: "1px solid rgba(0, 0, 0, 0.1)",
      boxShadow: `0 0 0 2px ${t.background.app}`
    },
    "&:hover:after, &:focus-visible:after": {
      boxShadow: `0 0 0 2px ${Te(0.88, t.color.secondary)}`
    }
  }
})), _x = I.div({
  display: "flex",
  gap: 6
}), kx = /* @__PURE__ */ a(({ menu: e, onClick: t }) => /* @__PURE__ */ s.createElement(ot, { links: e, onClick: t }), "SidebarMenuList"), Ip = /* @__PURE__ */ a(
({ menu: e, isHighlighted: t, onClick: o }) => {
  let [i, r] = K(!1), { isMobile: n, setMobileMenuOpen: l } = ge();
  return n ? /* @__PURE__ */ s.createElement(_x, null, /* @__PURE__ */ s.createElement(
    Xi,
    {
      title: "About Storybook",
      "aria-label": "About Storybook",
      highlighted: !!t,
      active: !1,
      onClick: o,
      isMobile: !0
    },
    /* @__PURE__ */ s.createElement(Qo, null)
  ), /* @__PURE__ */ s.createElement(
    Xi,
    {
      title: "Close menu",
      "aria-label": "Close menu",
      highlighted: !1,
      active: !1,
      onClick: () => l(!1),
      isMobile: !0
    },
    /* @__PURE__ */ s.createElement(je, null)
  )) : /* @__PURE__ */ s.createElement(
    ve,
    {
      placement: "top",
      closeOnOutsideClick: !0,
      tooltip: ({ onHide: u }) => /* @__PURE__ */ s.createElement(kx, { onClick: u, menu: e }),
      onVisibleChange: r
    },
    /* @__PURE__ */ s.createElement(
      Xi,
      {
        title: "Shortcuts",
        "aria-label": "Shortcuts",
        highlighted: !!t,
        active: i,
        size: "medium",
        isMobile: !1
      },
      /* @__PURE__ */ s.createElement(Qo, null)
    )
  );
}, "SidebarMenu");

// src/manager/components/sidebar/Heading.tsx
var Ox = I.div(({ theme: e }) => ({
  fontSize: e.typography.size.s2,
  fontWeight: e.typography.weight.bold,
  color: e.color.defaultText,
  marginRight: 20,
  display: "flex",
  width: "100%",
  alignItems: "center",
  minHeight: 22,
  "& > * > *": {
    maxWidth: "100%"
  },
  "& > *": {
    maxWidth: "100%",
    height: "auto",
    display: "block",
    flex: "1 1 auto"
  }
})), Px = I.div({
  display: "flex",
  alignItems: "center",
  justifyContent: "space-between",
  position: "relative",
  minHeight: 42,
  paddingLeft: 8
}), Ax = I(he)(({ theme: e }) => ({
  display: "none",
  "@media (min-width: 600px)": {
    display: "block",
    position: "absolute",
    fontSize: e.typography.size.s1,
    zIndex: 3,
    border: 0,
    width: 1,
    height: 1,
    padding: 0,
    margin: -1,
    overflow: "hidden",
    clip: "rect(0, 0, 0, 0)",
    whiteSpace: "nowrap",
    wordWrap: "normal",
    opacity: 0,
    transition: "opacity 150ms ease-out",
    "&:focus": {
      width: "100%",
      height: "inherit",
      padding: "10px 15px",
      margin: 0,
      clip: "unset",
      overflow: "unset",
      opacity: 1
    }
  }
})), Sp = /* @__PURE__ */ a(({
  menuHighlighted: e = !1,
  menu: t,
  skipLinkHref: o,
  isLoading: i,
  onMenuClick: r,
  ...n
}) => /* @__PURE__ */ s.createElement(Px, { ...n }, o && /* @__PURE__ */ s.createElement(Ax, { asChild: !0 }, /* @__PURE__ */ s.createElement(
"a", { href: o, tabIndex: 0 }, "Skip to canvas")), /* @__PURE__ */ s.createElement(Ox, null, /* @__PURE__ */ s.createElement(xp, null)), /* @__PURE__ */ s.
createElement(Ip, { menu: t, isHighlighted: e, onClick: r })), "Heading");

// ../node_modules/downshift/dist/downshift.esm.js
var Y = Ve(si());
var Nx = Ve(Cp());

// ../node_modules/compute-scroll-into-view/dist/index.js
var _p = /* @__PURE__ */ a((e) => typeof e == "object" && e != null && e.nodeType === 1, "t"), kp = /* @__PURE__ */ a((e, t) => (!t || e !==
"hidden") && e !== "visible" && e !== "clip", "e"), en = /* @__PURE__ */ a((e, t) => {
  if (e.clientHeight < e.scrollHeight || e.clientWidth < e.scrollWidth) {
    let o = getComputedStyle(e, null);
    return kp(o.overflowY, t) || kp(o.overflowX, t) || ((i) => {
      let r = ((n) => {
        if (!n.ownerDocument || !n.ownerDocument.defaultView) return null;
        try {
          return n.ownerDocument.defaultView.frameElement;
        } catch {
          return null;
        }
      })(i);
      return !!r && (r.clientHeight < i.scrollHeight || r.clientWidth < i.scrollWidth);
    })(e);
  }
  return !1;
}, "n"), tn = /* @__PURE__ */ a((e, t, o, i, r, n, l, u) => n < e && l > t || n > e && l < t ? 0 : n <= e && u <= o || l >= t && u >= o ? n -
e - i : l > t && u < o || n < e && u > o ? l - t + r : 0, "o"), Lx = /* @__PURE__ */ a((e) => {
  let t = e.parentElement;
  return t ?? (e.getRootNode().host || null);
}, "l"), Op = /* @__PURE__ */ a((e, t) => {
  var o, i, r, n;
  if (typeof document > "u") return [];
  let { scrollMode: l, block: u, inline: c, boundary: d, skipOverflowHiddenElements: p } = t, f = typeof d == "function" ? d : (V) => V !== d;
  if (!_p(e)) throw new TypeError("Invalid target");
  let h = document.scrollingElement || document.documentElement, y = [], m = e;
  for (; _p(m) && f(m); ) {
    if (m = Lx(m), m === h) {
      y.push(m);
      break;
    }
    m != null && m === document.body && en(m) && !en(document.documentElement) || m != null && en(m, p) && y.push(m);
  }
  let b = (i = (o = window.visualViewport) == null ? void 0 : o.width) != null ? i : innerWidth, x = (n = (r = window.visualViewport) == null ?
  void 0 : r.height) != null ? n : innerHeight, { scrollX: E, scrollY: g } = window, { height: v, width: S, top: w, right: k, bottom: _, left: C } = e.
  getBoundingClientRect(), { top: T, right: O, bottom: P, left: D } = ((V) => {
    let Q = window.getComputedStyle(V);
    return { top: parseFloat(Q.scrollMarginTop) || 0, right: parseFloat(Q.scrollMarginRight) || 0, bottom: parseFloat(Q.scrollMarginBottom) ||
    0, left: parseFloat(Q.scrollMarginLeft) || 0 };
  })(e), M = u === "start" || u === "nearest" ? w - T : u === "end" ? _ + P : w + v / 2 - T + P, F = c === "center" ? C + S / 2 - D + O : c ===
  "end" ? k + O : C - D, Z = [];
  for (let V = 0; V < y.length; V++) {
    let Q = y[V], { height: z, width: q, top: W, right: re, bottom: R, left: B } = Q.getBoundingClientRect();
    if (l === "if-needed" && w >= 0 && C >= 0 && _ <= x && k <= b && (Q === h && !en(Q) || w >= W && _ <= R && C >= B && k <= re)) return Z;
    let L = getComputedStyle(Q), $ = parseInt(L.borderLeftWidth, 10), J = parseInt(L.borderTopWidth, 10), ie = parseInt(L.borderRightWidth, 10),
    te = parseInt(L.borderBottomWidth, 10), de = 0, ae = 0, ce = "offsetWidth" in Q ? Q.offsetWidth - Q.clientWidth - $ - ie : 0, ue = "offs\
etHeight" in Q ? Q.offsetHeight - Q.clientHeight - J - te : 0, Ie = "offsetWidth" in Q ? Q.offsetWidth === 0 ? 0 : q / Q.offsetWidth : 0, ye = "\
offsetHeight" in Q ? Q.offsetHeight === 0 ? 0 : z / Q.offsetHeight : 0;
    if (h === Q) de = u === "start" ? M : u === "end" ? M - x : u === "nearest" ? tn(g, g + x, x, J, te, g + M, g + M + v, v) : M - x / 2, ae =
    c === "start" ? F : c === "center" ? F - b / 2 : c === "end" ? F - b : tn(E, E + b, b, $, ie, E + F, E + F + S, S), de = Math.max(0, de +
    g), ae = Math.max(0, ae + E);
    else {
      de = u === "start" ? M - W - J : u === "end" ? M - R + te + ue : u === "nearest" ? tn(W, R, z, J, te + ue, M, M + v, v) : M - (W + z /
      2) + ue / 2, ae = c === "start" ? F - B - $ : c === "center" ? F - (B + q / 2) + ce / 2 : c === "end" ? F - re + ie + ce : tn(B, re, q,
      $, ie + ce, F, F + S, S);
      let { scrollLeft: Oe, scrollTop: fe } = Q;
      de = ye === 0 ? 0 : Math.max(0, Math.min(fe + de / ye, Q.scrollHeight - z / ye + ue)), ae = Ie === 0 ? 0 : Math.max(0, Math.min(Oe + ae /
      Ie, Q.scrollWidth - q / Ie + ce)), M += fe - de, F += Oe - ae;
    }
    Z.push({ el: Q, top: de, left: ae });
  }
  return Z;
}, "r");

// ../node_modules/tslib/tslib.es6.mjs
var $t = /* @__PURE__ */ a(function() {
  return $t = Object.assign || /* @__PURE__ */ a(function(t) {
    for (var o, i = 1, r = arguments.length; i < r; i++) {
      o = arguments[i];
      for (var n in o) Object.prototype.hasOwnProperty.call(o, n) && (t[n] = o[n]);
    }
    return t;
  }, "__assign"), $t.apply(this, arguments);
}, "__assign");

// ../node_modules/downshift/dist/downshift.esm.js
var Fx = 0;
function Pp(e) {
  return typeof e == "function" ? e : Re;
}
a(Pp, "cbToCb");
function Re() {
}
a(Re, "noop");
function Rp(e, t) {
  if (e) {
    var o = Op(e, {
      boundary: t,
      block: "nearest",
      scrollMode: "if-needed"
    });
    o.forEach(function(i) {
      var r = i.el, n = i.top, l = i.left;
      r.scrollTop = n, r.scrollLeft = l;
    });
  }
}
a(Rp, "scrollIntoView");
function Ap(e, t, o) {
  var i = e === t || t instanceof o.Node && e.contains && e.contains(t);
  return i;
}
a(Ap, "isOrContainsNode");
function hn(e, t) {
  var o;
  function i() {
    o && clearTimeout(o);
  }
  a(i, "cancel");
  function r() {
    for (var n = arguments.length, l = new Array(n), u = 0; u < n; u++)
      l[u] = arguments[u];
    i(), o = setTimeout(function() {
      o = null, e.apply(void 0, l);
    }, t);
  }
  return a(r, "wrapper"), r.cancel = i, r;
}
a(hn, "debounce");
function le() {
  for (var e = arguments.length, t = new Array(e), o = 0; o < e; o++)
    t[o] = arguments[o];
  return function(i) {
    for (var r = arguments.length, n = new Array(r > 1 ? r - 1 : 0), l = 1; l < r; l++)
      n[l - 1] = arguments[l];
    return t.some(function(u) {
      return u && u.apply(void 0, [i].concat(n)), i.preventDownshiftDefault || i.hasOwnProperty("nativeEvent") && i.nativeEvent.preventDownshiftDefault;
    });
  };
}
a(le, "callAllEventHandlers");
function Ze() {
  for (var e = arguments.length, t = new Array(e), o = 0; o < e; o++)
    t[o] = arguments[o];
  return function(i) {
    t.forEach(function(r) {
      typeof r == "function" ? r(i) : r && (r.current = i);
    });
  };
}
a(Ze, "handleRefs");
function Bp() {
  return String(Fx++);
}
a(Bp, "generateId");
function Rx(e) {
  var t = e.isOpen, o = e.resultCount, i = e.previousResultCount;
  return t ? o ? o !== i ? o + " result" + (o === 1 ? " is" : "s are") + " available, use up and down arrow keys to navigate. Press Enter ke\
y to select." : "" : "No results are available." : "";
}
a(Rx, "getA11yStatusMessage");
function Dp(e, t) {
  return e = Array.isArray(e) ? (
    /* istanbul ignore next (preact) */
    e[0]
  ) : e, !e && t ? t : e;
}
a(Dp, "unwrapArray");
function Bx(e) {
  return typeof e.type == "string";
}
a(Bx, "isDOMElement");
function Hx(e) {
  return e.props;
}
a(Hx, "getElementProps");
var zx = ["highlightedIndex", "inputValue", "isOpen", "selectedItem", "type"];
function on(e) {
  e === void 0 && (e = {});
  var t = {};
  return zx.forEach(function(o) {
    e.hasOwnProperty(o) && (t[o] = e[o]);
  }), t;
}
a(on, "pickState");
function Vo(e, t) {
  return !e || !t ? e : Object.keys(e).reduce(function(o, i) {
    return o[i] = ln(t, i) ? t[i] : e[i], o;
  }, {});
}
a(Vo, "getState");
function ln(e, t) {
  return e[t] !== void 0;
}
a(ln, "isControlledProp");
function po(e) {
  var t = e.key, o = e.keyCode;
  return o >= 37 && o <= 40 && t.indexOf("Arrow") !== 0 ? "Arrow" + t : t;
}
a(po, "normalizeArrowKey");
function Je(e, t, o, i, r) {
  r === void 0 && (r = !1);
  var n = o.length;
  if (n === 0)
    return -1;
  var l = n - 1;
  (typeof e != "number" || e < 0 || e > l) && (e = t > 0 ? -1 : l + 1);
  var u = e + t;
  u < 0 ? u = r ? l : 0 : u > l && (u = r ? 0 : l);
  var c = Tt(u, t < 0, o, i, r);
  return c === -1 ? e >= n ? -1 : e : c;
}
a(Je, "getHighlightedIndex");
function Tt(e, t, o, i, r) {
  r === void 0 && (r = !1);
  var n = o.length;
  if (t) {
    for (var l = e; l >= 0; l--)
      if (!i(o[l], l))
        return l;
  } else
    for (var u = e; u < n; u++)
      if (!i(o[u], u))
        return u;
  return r ? Tt(t ? n - 1 : 0, t, o, i) : -1;
}
a(Tt, "getNonDisabledIndex");
function un(e, t, o, i) {
  return i === void 0 && (i = !0), o && t.some(function(r) {
    return r && (Ap(r, e, o) || i && Ap(r, o.document.activeElement, o));
  });
}
a(un, "targetWithinDownshift");
var Wx = hn(function(e) {
  Hp(e).textContent = "";
}, 500);
function Hp(e) {
  var t = e.getElementById("a11y-status-message");
  return t || (t = e.createElement("div"), t.setAttribute("id", "a11y-status-message"), t.setAttribute("role", "status"), t.setAttribute("ar\
ia-live", "polite"), t.setAttribute("aria-relevant", "additions text"), Object.assign(t.style, {
    border: "0",
    clip: "rect(0 0 0 0)",
    height: "1px",
    margin: "-1px",
    overflow: "hidden",
    padding: "0",
    position: "absolute",
    width: "1px"
  }), e.body.appendChild(t), t);
}
a(Hp, "getStatusDiv");
function zp(e, t) {
  if (!(!e || !t)) {
    var o = Hp(t);
    o.textContent = e, Wx(t);
  }
}
a(zp, "setStatus");
function Vx(e) {
  var t = e?.getElementById("a11y-status-message");
  t && t.remove();
}
a(Vx, "cleanupStatusDiv");
var Wp = 0, Vp = 1, jp = 2, rn = 3, nn = 4, Kp = 5, $p = 6, Up = 7, Gp = 8, qp = 9, Yp = 10, Qp = 11, Xp = 12, Zp = 13, Jp = 14, ed = 15, td = 16,
jx = /* @__PURE__ */ Object.freeze({
  __proto__: null,
  blurButton: Jp,
  blurInput: Yp,
  changeInput: Qp,
  clickButton: Zp,
  clickItem: qp,
  controlledPropUpdatedSelectedItem: ed,
  itemMouseEnter: jp,
  keyDownArrowDown: nn,
  keyDownArrowUp: rn,
  keyDownEnd: Gp,
  keyDownEnter: $p,
  keyDownEscape: Kp,
  keyDownHome: Up,
  keyDownSpaceButton: Xp,
  mouseUp: Vp,
  touchEnd: td,
  unknown: Wp
}), Kx = ["refKey", "ref"], $x = ["onClick", "onPress", "onKeyDown", "onKeyUp", "onBlur"], Ux = ["onKeyDown", "onBlur", "onChange", "onInput",
"onChangeText"], Gx = ["refKey", "ref"], qx = ["onMouseMove", "onMouseDown", "onClick", "onPress", "index", "item"], qt = /* @__PURE__ */ function() {
  var e = /* @__PURE__ */ function(t) {
    function o(r) {
      var n;
      n = t.call(this, r) || this, n.id = n.props.id || "downshift-" + Bp(), n.menuId = n.props.menuId || n.id + "-menu", n.labelId = n.props.
      labelId || n.id + "-label", n.inputId = n.props.inputId || n.id + "-input", n.getItemId = n.props.getItemId || function(g) {
        return n.id + "-item-" + g;
      }, n.items = [], n.itemCount = null, n.previousResultCount = 0, n.timeoutIds = [], n.internalSetTimeout = function(g, v) {
        var S = setTimeout(function() {
          n.timeoutIds = n.timeoutIds.filter(function(w) {
            return w !== S;
          }), g();
        }, v);
        n.timeoutIds.push(S);
      }, n.setItemCount = function(g) {
        n.itemCount = g;
      }, n.unsetItemCount = function() {
        n.itemCount = null;
      }, n.isItemDisabled = function(g, v) {
        var S = n.getItemNodeFromIndex(v);
        return S && S.hasAttribute("disabled");
      }, n.setHighlightedIndex = function(g, v) {
        g === void 0 && (g = n.props.defaultHighlightedIndex), v === void 0 && (v = {}), v = on(v), n.internalSetState(j({
          highlightedIndex: g
        }, v));
      }, n.clearSelection = function(g) {
        n.internalSetState({
          selectedItem: null,
          inputValue: "",
          highlightedIndex: n.props.defaultHighlightedIndex,
          isOpen: n.props.defaultIsOpen
        }, g);
      }, n.selectItem = function(g, v, S) {
        v = on(v), n.internalSetState(j({
          isOpen: n.props.defaultIsOpen,
          highlightedIndex: n.props.defaultHighlightedIndex,
          selectedItem: g,
          inputValue: n.props.itemToString(g)
        }, v), S);
      }, n.selectItemAtIndex = function(g, v, S) {
        var w = n.items[g];
        w != null && n.selectItem(w, v, S);
      }, n.selectHighlightedItem = function(g, v) {
        return n.selectItemAtIndex(n.getState().highlightedIndex, g, v);
      }, n.internalSetState = function(g, v) {
        var S, w, k = {}, _ = typeof g == "function";
        return !_ && g.hasOwnProperty("inputValue") && n.props.onInputValueChange(g.inputValue, j({}, n.getStateAndHelpers(), g)), n.setState(
        function(C) {
          var T;
          C = n.getState(C);
          var O = _ ? g(C) : g;
          O = n.props.stateReducer(C, O), S = O.hasOwnProperty("selectedItem");
          var P = {};
          return S && O.selectedItem !== C.selectedItem && (w = O.selectedItem), (T = O).type || (T.type = Wp), Object.keys(O).forEach(function(D) {
            C[D] !== O[D] && (k[D] = O[D]), D !== "type" && (O[D], ln(n.props, D) || (P[D] = O[D]));
          }), _ && O.hasOwnProperty("inputValue") && n.props.onInputValueChange(O.inputValue, j({}, n.getStateAndHelpers(), O)), P;
        }, function() {
          Pp(v)();
          var C = Object.keys(k).length > 1;
          C && n.props.onStateChange(k, n.getStateAndHelpers()), S && n.props.onSelect(g.selectedItem, n.getStateAndHelpers()), w !== void 0 &&
          n.props.onChange(w, n.getStateAndHelpers()), n.props.onUserAction(k, n.getStateAndHelpers());
        });
      }, n.rootRef = function(g) {
        return n._rootNode = g;
      }, n.getRootProps = function(g, v) {
        var S, w = g === void 0 ? {} : g, k = w.refKey, _ = k === void 0 ? "ref" : k, C = w.ref, T = ke(w, Kx), O = v === void 0 ? {} : v, P = O.
        suppressRefError, D = P === void 0 ? !1 : P;
        n.getRootProps.called = !0, n.getRootProps.refKey = _, n.getRootProps.suppressRefError = D;
        var M = n.getState(), F = M.isOpen;
        return j((S = {}, S[_] = Ze(C, n.rootRef), S.role = "combobox", S["aria-expanded"] = F, S["aria-haspopup"] = "listbox", S["aria-owns"] =
        F ? n.menuId : void 0, S["aria-labelledby"] = n.labelId, S), T);
      }, n.keyDownHandlers = {
        ArrowDown: /* @__PURE__ */ a(function(v) {
          var S = this;
          if (v.preventDefault(), this.getState().isOpen) {
            var w = v.shiftKey ? 5 : 1;
            this.moveHighlightedIndex(w, {
              type: nn
            });
          } else
            this.internalSetState({
              isOpen: !0,
              type: nn
            }, function() {
              var k = S.getItemCount();
              if (k > 0) {
                var _ = S.getState(), C = _.highlightedIndex, T = Je(C, 1, {
                  length: k
                }, S.isItemDisabled, !0);
                S.setHighlightedIndex(T, {
                  type: nn
                });
              }
            });
        }, "ArrowDown"),
        ArrowUp: /* @__PURE__ */ a(function(v) {
          var S = this;
          if (v.preventDefault(), this.getState().isOpen) {
            var w = v.shiftKey ? -5 : -1;
            this.moveHighlightedIndex(w, {
              type: rn
            });
          } else
            this.internalSetState({
              isOpen: !0,
              type: rn
            }, function() {
              var k = S.getItemCount();
              if (k > 0) {
                var _ = S.getState(), C = _.highlightedIndex, T = Je(C, -1, {
                  length: k
                }, S.isItemDisabled, !0);
                S.setHighlightedIndex(T, {
                  type: rn
                });
              }
            });
        }, "ArrowUp"),
        Enter: /* @__PURE__ */ a(function(v) {
          if (v.which !== 229) {
            var S = this.getState(), w = S.isOpen, k = S.highlightedIndex;
            if (w && k != null) {
              v.preventDefault();
              var _ = this.items[k], C = this.getItemNodeFromIndex(k);
              if (_ == null || C && C.hasAttribute("disabled"))
                return;
              this.selectHighlightedItem({
                type: $p
              });
            }
          }
        }, "Enter"),
        Escape: /* @__PURE__ */ a(function(v) {
          v.preventDefault(), this.reset(j({
            type: Kp
          }, !this.state.isOpen && {
            selectedItem: null,
            inputValue: ""
          }));
        }, "Escape")
      }, n.buttonKeyDownHandlers = j({}, n.keyDownHandlers, {
        " ": /* @__PURE__ */ a(function(v) {
          v.preventDefault(), this.toggleMenu({
            type: Xp
          });
        }, "_")
      }), n.inputKeyDownHandlers = j({}, n.keyDownHandlers, {
        Home: /* @__PURE__ */ a(function(v) {
          var S = this.getState(), w = S.isOpen;
          if (w) {
            v.preventDefault();
            var k = this.getItemCount();
            if (!(k <= 0 || !w)) {
              var _ = Tt(0, !1, {
                length: k
              }, this.isItemDisabled);
              this.setHighlightedIndex(_, {
                type: Up
              });
            }
          }
        }, "Home"),
        End: /* @__PURE__ */ a(function(v) {
          var S = this.getState(), w = S.isOpen;
          if (w) {
            v.preventDefault();
            var k = this.getItemCount();
            if (!(k <= 0 || !w)) {
              var _ = Tt(k - 1, !0, {
                length: k
              }, this.isItemDisabled);
              this.setHighlightedIndex(_, {
                type: Gp
              });
            }
          }
        }, "End")
      }), n.getToggleButtonProps = function(g) {
        var v = g === void 0 ? {} : g, S = v.onClick;
        v.onPress;
        var w = v.onKeyDown, k = v.onKeyUp, _ = v.onBlur, C = ke(v, $x), T = n.getState(), O = T.isOpen, P = {
          onClick: le(S, n.buttonHandleClick),
          onKeyDown: le(w, n.buttonHandleKeyDown),
          onKeyUp: le(k, n.buttonHandleKeyUp),
          onBlur: le(_, n.buttonHandleBlur)
        }, D = C.disabled ? {} : P;
        return j({
          type: "button",
          role: "button",
          "aria-label": O ? "close menu" : "open menu",
          "aria-haspopup": !0,
          "data-toggle": !0
        }, D, C);
      }, n.buttonHandleKeyUp = function(g) {
        g.preventDefault();
      }, n.buttonHandleKeyDown = function(g) {
        var v = po(g);
        n.buttonKeyDownHandlers[v] && n.buttonKeyDownHandlers[v].call(n, g);
      }, n.buttonHandleClick = function(g) {
        if (g.preventDefault(), n.props.environment) {
          var v = n.props.environment.document, S = v.body, w = v.activeElement;
          S && S === w && g.target.focus();
        }
        n.internalSetTimeout(function() {
          return n.toggleMenu({
            type: Zp
          });
        });
      }, n.buttonHandleBlur = function(g) {
        var v = g.target;
        n.internalSetTimeout(function() {
          if (!(n.isMouseDown || !n.props.environment)) {
            var S = n.props.environment.document.activeElement;
            (S == null || S.id !== n.inputId) && S !== v && n.reset({
              type: Jp
            });
          }
        });
      }, n.getLabelProps = function(g) {
        return j({
          htmlFor: n.inputId,
          id: n.labelId
        }, g);
      }, n.getInputProps = function(g) {
        var v = g === void 0 ? {} : g, S = v.onKeyDown, w = v.onBlur, k = v.onChange, _ = v.onInput;
        v.onChangeText;
        var C = ke(v, Ux), T, O = {};
        T = "onChange";
        var P = n.getState(), D = P.inputValue, M = P.isOpen, F = P.highlightedIndex;
        if (!C.disabled) {
          var Z;
          O = (Z = {}, Z[T] = le(k, _, n.inputHandleChange), Z.onKeyDown = le(S, n.inputHandleKeyDown), Z.onBlur = le(w, n.inputHandleBlur),
          Z);
        }
        return j({
          "aria-autocomplete": "list",
          "aria-activedescendant": M && typeof F == "number" && F >= 0 ? n.getItemId(F) : void 0,
          "aria-controls": M ? n.menuId : void 0,
          "aria-labelledby": C && C["aria-label"] ? void 0 : n.labelId,
          // https://developer.mozilla.org/en-US/docs/Web/Security/Securing_your_site/Turning_off_form_autocompletion
          // revert back since autocomplete="nope" is ignored on latest Chrome and Opera
          autoComplete: "off",
          value: D,
          id: n.inputId
        }, O, C);
      }, n.inputHandleKeyDown = function(g) {
        var v = po(g);
        v && n.inputKeyDownHandlers[v] && n.inputKeyDownHandlers[v].call(n, g);
      }, n.inputHandleChange = function(g) {
        n.internalSetState({
          type: Qp,
          isOpen: !0,
          inputValue: g.target.value,
          highlightedIndex: n.props.defaultHighlightedIndex
        });
      }, n.inputHandleBlur = function() {
        n.internalSetTimeout(function() {
          var g;
          if (!(n.isMouseDown || !n.props.environment)) {
            var v = n.props.environment.document.activeElement, S = (v == null || (g = v.dataset) == null ? void 0 : g.toggle) && n._rootNode &&
            n._rootNode.contains(v);
            S || n.reset({
              type: Yp
            });
          }
        });
      }, n.menuRef = function(g) {
        n._menuNode = g;
      }, n.getMenuProps = function(g, v) {
        var S, w = g === void 0 ? {} : g, k = w.refKey, _ = k === void 0 ? "ref" : k, C = w.ref, T = ke(w, Gx), O = v === void 0 ? {} : v, P = O.
        suppressRefError, D = P === void 0 ? !1 : P;
        return n.getMenuProps.called = !0, n.getMenuProps.refKey = _, n.getMenuProps.suppressRefError = D, j((S = {}, S[_] = Ze(C, n.menuRef),
        S.role = "listbox", S["aria-labelledby"] = T && T["aria-label"] ? void 0 : n.labelId, S.id = n.menuId, S), T);
      }, n.getItemProps = function(g) {
        var v, S = g === void 0 ? {} : g, w = S.onMouseMove, k = S.onMouseDown, _ = S.onClick;
        S.onPress;
        var C = S.index, T = S.item, O = T === void 0 ? (
          /* istanbul ignore next */
          void 0
        ) : T, P = ke(S, qx);
        C === void 0 ? (n.items.push(O), C = n.items.indexOf(O)) : n.items[C] = O;
        var D = "onClick", M = _, F = (v = {
          // onMouseMove is used over onMouseEnter here. onMouseMove
          // is only triggered on actual mouse movement while onMouseEnter
          // can fire on DOM changes, interrupting keyboard navigation
          onMouseMove: le(w, function() {
            C !== n.getState().highlightedIndex && (n.setHighlightedIndex(C, {
              type: jp
            }), n.avoidScrolling = !0, n.internalSetTimeout(function() {
              return n.avoidScrolling = !1;
            }, 250));
          }),
          onMouseDown: le(k, function(V) {
            V.preventDefault();
          })
        }, v[D] = le(M, function() {
          n.selectItemAtIndex(C, {
            type: qp
          });
        }), v), Z = P.disabled ? {
          onMouseDown: F.onMouseDown
        } : F;
        return j({
          id: n.getItemId(C),
          role: "option",
          "aria-selected": n.getState().highlightedIndex === C
        }, Z, P);
      }, n.clearItems = function() {
        n.items = [];
      }, n.reset = function(g, v) {
        g === void 0 && (g = {}), g = on(g), n.internalSetState(function(S) {
          var w = S.selectedItem;
          return j({
            isOpen: n.props.defaultIsOpen,
            highlightedIndex: n.props.defaultHighlightedIndex,
            inputValue: n.props.itemToString(w)
          }, g);
        }, v);
      }, n.toggleMenu = function(g, v) {
        g === void 0 && (g = {}), g = on(g), n.internalSetState(function(S) {
          var w = S.isOpen;
          return j({
            isOpen: !w
          }, w && {
            highlightedIndex: n.props.defaultHighlightedIndex
          }, g);
        }, function() {
          var S = n.getState(), w = S.isOpen, k = S.highlightedIndex;
          w && n.getItemCount() > 0 && typeof k == "number" && n.setHighlightedIndex(k, g), Pp(v)();
        });
      }, n.openMenu = function(g) {
        n.internalSetState({
          isOpen: !0
        }, g);
      }, n.closeMenu = function(g) {
        n.internalSetState({
          isOpen: !1
        }, g);
      }, n.updateStatus = hn(function() {
        var g;
        if ((g = n.props) != null && (g = g.environment) != null && g.document) {
          var v = n.getState(), S = n.items[v.highlightedIndex], w = n.getItemCount(), k = n.props.getA11yStatusMessage(j({
            itemToString: n.props.itemToString,
            previousResultCount: n.previousResultCount,
            resultCount: w,
            highlightedItem: S
          }, v));
          n.previousResultCount = w, zp(k, n.props.environment.document);
        }
      }, 200);
      var l = n.props, u = l.defaultHighlightedIndex, c = l.initialHighlightedIndex, d = c === void 0 ? u : c, p = l.defaultIsOpen, f = l.initialIsOpen,
      h = f === void 0 ? p : f, y = l.initialInputValue, m = y === void 0 ? "" : y, b = l.initialSelectedItem, x = b === void 0 ? null : b, E = n.
      getState({
        highlightedIndex: d,
        isOpen: h,
        inputValue: m,
        selectedItem: x
      });
      return E.selectedItem != null && n.props.initialInputValue === void 0 && (E.inputValue = n.props.itemToString(E.selectedItem)), n.state =
      E, n;
    }
    a(o, "Downshift"), no(o, t);
    var i = o.prototype;
    return i.internalClearTimeouts = /* @__PURE__ */ a(function() {
      this.timeoutIds.forEach(function(n) {
        clearTimeout(n);
      }), this.timeoutIds = [];
    }, "internalClearTimeouts"), i.getState = /* @__PURE__ */ a(function(n) {
      return n === void 0 && (n = this.state), Vo(n, this.props);
    }, "getState$1"), i.getItemCount = /* @__PURE__ */ a(function() {
      var n = this.items.length;
      return this.itemCount != null ? n = this.itemCount : this.props.itemCount !== void 0 && (n = this.props.itemCount), n;
    }, "getItemCount"), i.getItemNodeFromIndex = /* @__PURE__ */ a(function(n) {
      return this.props.environment ? this.props.environment.document.getElementById(this.getItemId(n)) : null;
    }, "getItemNodeFromIndex"), i.scrollHighlightedItemIntoView = /* @__PURE__ */ a(function() {
      {
        var n = this.getItemNodeFromIndex(this.getState().highlightedIndex);
        this.props.scrollIntoView(n, this._menuNode);
      }
    }, "scrollHighlightedItemIntoView"), i.moveHighlightedIndex = /* @__PURE__ */ a(function(n, l) {
      var u = this.getItemCount(), c = this.getState(), d = c.highlightedIndex;
      if (u > 0) {
        var p = Je(d, n, {
          length: u
        }, this.isItemDisabled, !0);
        this.setHighlightedIndex(p, l);
      }
    }, "moveHighlightedIndex"), i.getStateAndHelpers = /* @__PURE__ */ a(function() {
      var n = this.getState(), l = n.highlightedIndex, u = n.inputValue, c = n.selectedItem, d = n.isOpen, p = this.props.itemToString, f = this.
      id, h = this.getRootProps, y = this.getToggleButtonProps, m = this.getLabelProps, b = this.getMenuProps, x = this.getInputProps, E = this.
      getItemProps, g = this.openMenu, v = this.closeMenu, S = this.toggleMenu, w = this.selectItem, k = this.selectItemAtIndex, _ = this.selectHighlightedItem,
      C = this.setHighlightedIndex, T = this.clearSelection, O = this.clearItems, P = this.reset, D = this.setItemCount, M = this.unsetItemCount,
      F = this.internalSetState;
      return {
        // prop getters
        getRootProps: h,
        getToggleButtonProps: y,
        getLabelProps: m,
        getMenuProps: b,
        getInputProps: x,
        getItemProps: E,
        // actions
        reset: P,
        openMenu: g,
        closeMenu: v,
        toggleMenu: S,
        selectItem: w,
        selectItemAtIndex: k,
        selectHighlightedItem: _,
        setHighlightedIndex: C,
        clearSelection: T,
        clearItems: O,
        setItemCount: D,
        unsetItemCount: M,
        setState: F,
        // props
        itemToString: p,
        // derived
        id: f,
        // state
        highlightedIndex: l,
        inputValue: u,
        isOpen: d,
        selectedItem: c
      };
    }, "getStateAndHelpers"), i.componentDidMount = /* @__PURE__ */ a(function() {
      var n = this;
      if (!this.props.environment)
        this.cleanup = function() {
          n.internalClearTimeouts();
        };
      else {
        var l = /* @__PURE__ */ a(function() {
          n.isMouseDown = !0;
        }, "onMouseDown"), u = /* @__PURE__ */ a(function(y) {
          n.isMouseDown = !1;
          var m = un(y.target, [n._rootNode, n._menuNode], n.props.environment);
          !m && n.getState().isOpen && n.reset({
            type: Vp
          }, function() {
            return n.props.onOuterClick(n.getStateAndHelpers());
          });
        }, "onMouseUp"), c = /* @__PURE__ */ a(function() {
          n.isTouchMove = !1;
        }, "onTouchStart"), d = /* @__PURE__ */ a(function() {
          n.isTouchMove = !0;
        }, "onTouchMove"), p = /* @__PURE__ */ a(function(y) {
          var m = un(y.target, [n._rootNode, n._menuNode], n.props.environment, !1);
          !n.isTouchMove && !m && n.getState().isOpen && n.reset({
            type: td
          }, function() {
            return n.props.onOuterClick(n.getStateAndHelpers());
          });
        }, "onTouchEnd"), f = this.props.environment;
        f.addEventListener("mousedown", l), f.addEventListener("mouseup", u), f.addEventListener("touchstart", c), f.addEventListener("touch\
move", d), f.addEventListener("touchend", p), this.cleanup = function() {
          n.internalClearTimeouts(), n.updateStatus.cancel(), f.removeEventListener("mousedown", l), f.removeEventListener("mouseup", u), f.
          removeEventListener("touchstart", c), f.removeEventListener("touchmove", d), f.removeEventListener("touchend", p);
        };
      }
    }, "componentDidMount"), i.shouldScroll = /* @__PURE__ */ a(function(n, l) {
      var u = this.props.highlightedIndex === void 0 ? this.getState() : this.props, c = u.highlightedIndex, d = l.highlightedIndex === void 0 ?
      n : l, p = d.highlightedIndex, f = c && this.getState().isOpen && !n.isOpen, h = c !== p;
      return f || h;
    }, "shouldScroll"), i.componentDidUpdate = /* @__PURE__ */ a(function(n, l) {
      ln(this.props, "selectedItem") && this.props.selectedItemChanged(n.selectedItem, this.props.selectedItem) && this.internalSetState({
        type: ed,
        inputValue: this.props.itemToString(this.props.selectedItem)
      }), !this.avoidScrolling && this.shouldScroll(l, n) && this.scrollHighlightedItemIntoView(), this.updateStatus();
    }, "componentDidUpdate"), i.componentWillUnmount = /* @__PURE__ */ a(function() {
      this.cleanup();
    }, "componentWillUnmount"), i.render = /* @__PURE__ */ a(function() {
      var n = Dp(this.props.children, Re);
      this.clearItems(), this.getRootProps.called = !1, this.getRootProps.refKey = void 0, this.getRootProps.suppressRefError = void 0, this.
      getMenuProps.called = !1, this.getMenuProps.refKey = void 0, this.getMenuProps.suppressRefError = void 0, this.getLabelProps.called = !1,
      this.getInputProps.called = !1;
      var l = Dp(n(this.getStateAndHelpers()));
      if (!l)
        return null;
      if (this.getRootProps.called || this.props.suppressRefError)
        return l;
      if (Bx(l))
        return /* @__PURE__ */ ta(l, this.getRootProps(Hx(l)));
    }, "render"), o;
  }(Le);
  return e.defaultProps = {
    defaultHighlightedIndex: null,
    defaultIsOpen: !1,
    getA11yStatusMessage: Rx,
    itemToString: /* @__PURE__ */ a(function(o) {
      return o == null ? "" : String(o);
    }, "itemToString"),
    onStateChange: Re,
    onInputValueChange: Re,
    onUserAction: Re,
    onChange: Re,
    onSelect: Re,
    onOuterClick: Re,
    selectedItemChanged: /* @__PURE__ */ a(function(o, i) {
      return o !== i;
    }, "selectedItemChanged"),
    environment: (
      /* istanbul ignore next (ssr) */
      typeof window > "u" ? void 0 : window
    ),
    stateReducer: /* @__PURE__ */ a(function(o, i) {
      return i;
    }, "stateReducer"),
    suppressRefError: !1,
    scrollIntoView: Rp
  }, e.stateChangeTypes = jx, e;
}();
var od = {
  highlightedIndex: -1,
  isOpen: !1,
  selectedItem: null,
  inputValue: ""
};
function Yx(e, t, o) {
  var i = e.props, r = e.type, n = {};
  Object.keys(t).forEach(function(l) {
    Qx(l, e, t, o), o[l] !== t[l] && (n[l] = o[l]);
  }), i.onStateChange && Object.keys(n).length && i.onStateChange(j({
    type: r
  }, n));
}
a(Yx, "callOnChangeProps");
function Qx(e, t, o, i) {
  var r = t.props, n = t.type, l = "on" + os(e) + "Change";
  r[l] && i[e] !== void 0 && i[e] !== o[e] && r[l](j({
    type: n
  }, i));
}
a(Qx, "invokeOnChangeHandler");
function Xx(e, t) {
  return t.changes;
}
a(Xx, "stateReducer");
var Mp = hn(function(e, t) {
  zp(e, t);
}, 200), Zx = typeof window < "u" && typeof window.document < "u" && typeof window.document.createElement < "u" ? Xt : H, rd = "useId" in s ?
/* @__PURE__ */ a(function(t) {
  var o = t.id, i = t.labelId, r = t.menuId, n = t.getItemId, l = t.toggleButtonId, u = t.inputId, c = "downshift-" + s.useId();
  o || (o = c);
  var d = U({
    labelId: i || o + "-label",
    menuId: r || o + "-menu",
    getItemId: n || function(p) {
      return o + "-item-" + p;
    },
    toggleButtonId: l || o + "-toggle-button",
    inputId: u || o + "-input"
  });
  return d.current;
}, "useElementIds") : /* @__PURE__ */ a(function(t) {
  var o = t.id, i = o === void 0 ? "downshift-" + Bp() : o, r = t.labelId, n = t.menuId, l = t.getItemId, u = t.toggleButtonId, c = t.inputId,
  d = U({
    labelId: r || i + "-label",
    menuId: n || i + "-menu",
    getItemId: l || function(p) {
      return i + "-item-" + p;
    },
    toggleButtonId: u || i + "-toggle-button",
    inputId: c || i + "-input"
  });
  return d.current;
}, "useElementIds");
function ts(e, t, o, i) {
  var r, n;
  if (e === void 0) {
    if (t === void 0)
      throw new Error(i);
    r = o[t], n = t;
  } else
    n = t === void 0 ? o.indexOf(e) : t, r = e;
  return [r, n];
}
a(ts, "getItemAndIndex");
function Jx(e) {
  return /^\S{1}$/.test(e);
}
a(Jx, "isAcceptedCharacterKey");
function os(e) {
  return "" + e.slice(0, 1).toUpperCase() + e.slice(1);
}
a(os, "capitalizeString");
function gn(e) {
  var t = U(e);
  return t.current = e, t;
}
a(gn, "useLatestRef");
function nd(e, t, o, i) {
  var r = U(), n = U(), l = A(function(y, m) {
    n.current = m, y = Vo(y, m.props);
    var b = e(y, m), x = m.props.stateReducer(y, j({}, m, {
      changes: b
    }));
    return x;
  }, [e]), u = Zt(l, t, o), c = u[0], d = u[1], p = gn(t), f = A(function(y) {
    return d(j({
      props: p.current
    }, y));
  }, [p]), h = n.current;
  return H(function() {
    var y = Vo(r.current, h?.props), m = h && r.current && !i(y, c);
    m && Yx(h, y, c), r.current = c;
  }, [c, h, i]), [c, f];
}
a(nd, "useEnhancedReducer");
function id(e, t, o, i) {
  var r = nd(e, t, o, i), n = r[0], l = r[1];
  return [Vo(n, t), l];
}
a(id, "useControlledReducer$1");
var Wo = {
  itemToString: /* @__PURE__ */ a(function(t) {
    return t ? String(t) : "";
  }, "itemToString"),
  itemToKey: /* @__PURE__ */ a(function(t) {
    return t;
  }, "itemToKey"),
  stateReducer: Xx,
  scrollIntoView: Rp,
  environment: (
    /* istanbul ignore next (ssr) */
    typeof window > "u" ? void 0 : window
  )
};
function ut(e, t, o) {
  o === void 0 && (o = od);
  var i = e["default" + os(t)];
  return i !== void 0 ? i : o[t];
}
a(ut, "getDefaultValue$1");
function Ut(e, t, o) {
  o === void 0 && (o = od);
  var i = e[t];
  if (i !== void 0)
    return i;
  var r = e["initial" + os(t)];
  return r !== void 0 ? r : ut(e, t, o);
}
a(Ut, "getInitialValue$1");
function sd(e) {
  var t = Ut(e, "selectedItem"), o = Ut(e, "isOpen"), i = eI(e), r = Ut(e, "inputValue");
  return {
    highlightedIndex: i < 0 && t && o ? e.items.findIndex(function(n) {
      return e.itemToKey(n) === e.itemToKey(t);
    }) : i,
    isOpen: o,
    selectedItem: t,
    inputValue: r
  };
}
a(sd, "getInitialState$2");
function Gt(e, t, o) {
  var i = e.items, r = e.initialHighlightedIndex, n = e.defaultHighlightedIndex, l = e.isItemDisabled, u = e.itemToKey, c = t.selectedItem, d = t.
  highlightedIndex;
  return i.length === 0 ? -1 : r !== void 0 && d === r && !l(i[r], r) ? r : n !== void 0 && !l(i[n], n) ? n : c ? i.findIndex(function(p) {
    return u(c) === u(p);
  }) : o < 0 && !l(i[i.length - 1], i.length - 1) ? i.length - 1 : o > 0 && !l(i[0], 0) ? 0 : -1;
}
a(Gt, "getHighlightedIndexOnOpen");
function ad(e, t, o) {
  var i = U({
    isMouseDown: !1,
    isTouchMove: !1,
    isTouchEnd: !1
  });
  return H(function() {
    if (!e)
      return Re;
    var r = o.map(function(p) {
      return p.current;
    });
    function n() {
      i.current.isTouchEnd = !1, i.current.isMouseDown = !0;
    }
    a(n, "onMouseDown");
    function l(p) {
      i.current.isMouseDown = !1, un(p.target, r, e) || t();
    }
    a(l, "onMouseUp");
    function u() {
      i.current.isTouchEnd = !1, i.current.isTouchMove = !1;
    }
    a(u, "onTouchStart");
    function c() {
      i.current.isTouchMove = !0;
    }
    a(c, "onTouchMove");
    function d(p) {
      i.current.isTouchEnd = !0, !i.current.isTouchMove && !un(p.target, r, e, !1) && t();
    }
    return a(d, "onTouchEnd"), e.addEventListener("mousedown", n), e.addEventListener("mouseup", l), e.addEventListener("touchstart", u), e.
    addEventListener("touchmove", c), e.addEventListener("touchend", d), /* @__PURE__ */ a(function() {
      e.removeEventListener("mousedown", n), e.removeEventListener("mouseup", l), e.removeEventListener("touchstart", u), e.removeEventListener(
      "touchmove", c), e.removeEventListener("touchend", d);
    }, "cleanup");
  }, [o, e, t]), i.current;
}
a(ad, "useMouseAndTouchTracker");
var rs = /* @__PURE__ */ a(function() {
  return Re;
}, "useGetterPropsCalledChecker");
function ns(e, t, o, i) {
  i === void 0 && (i = {});
  var r = i.document, n = yn();
  H(function() {
    if (!(!e || n || !r)) {
      var l = e(t);
      Mp(l, r);
    }
  }, o), H(function() {
    return function() {
      Mp.cancel(), Vx(r);
    };
  }, [r]);
}
a(ns, "useA11yMessageStatus");
function ld(e) {
  var t = e.highlightedIndex, o = e.isOpen, i = e.itemRefs, r = e.getItemNodeFromIndex, n = e.menuElement, l = e.scrollIntoView, u = U(!0);
  return Zx(function() {
    t < 0 || !o || !Object.keys(i.current).length || (u.current === !1 ? u.current = !0 : l(r(t), n));
  }, [t]), u;
}
a(ld, "useScrollIntoView");
var is = Re;
function cn(e, t, o) {
  var i;
  o === void 0 && (o = !0);
  var r = ((i = e.items) == null ? void 0 : i.length) && t >= 0;
  return j({
    isOpen: !1,
    highlightedIndex: -1
  }, r && j({
    selectedItem: e.items[t],
    isOpen: ut(e, "isOpen"),
    highlightedIndex: ut(e, "highlightedIndex")
  }, o && {
    inputValue: e.itemToString(e.items[t])
  }));
}
a(cn, "getChangesOnSelection");
function ud(e, t) {
  return e.isOpen === t.isOpen && e.inputValue === t.inputValue && e.highlightedIndex === t.highlightedIndex && e.selectedItem === t.selectedItem;
}
a(ud, "isDropdownsStateEqual");
function yn() {
  var e = s.useRef(!0);
  return s.useEffect(function() {
    return e.current = !1, function() {
      e.current = !0;
    };
  }, []), e.current;
}
a(yn, "useIsInitialMount");
function pn(e) {
  var t = ut(e, "highlightedIndex");
  return t > -1 && e.isItemDisabled(e.items[t], t) ? -1 : t;
}
a(pn, "getDefaultHighlightedIndex");
function eI(e) {
  var t = Ut(e, "highlightedIndex");
  return t > -1 && e.isItemDisabled(e.items[t], t) ? -1 : t;
}
a(eI, "getInitialHighlightedIndex");
var sn = {
  environment: Y.default.shape({
    addEventListener: Y.default.func.isRequired,
    removeEventListener: Y.default.func.isRequired,
    document: Y.default.shape({
      createElement: Y.default.func.isRequired,
      getElementById: Y.default.func.isRequired,
      activeElement: Y.default.any.isRequired,
      body: Y.default.any.isRequired
    }).isRequired,
    Node: Y.default.func.isRequired
  }),
  itemToString: Y.default.func,
  itemToKey: Y.default.func,
  stateReducer: Y.default.func
}, cd = j({}, sn, {
  getA11yStatusMessage: Y.default.func,
  highlightedIndex: Y.default.number,
  defaultHighlightedIndex: Y.default.number,
  initialHighlightedIndex: Y.default.number,
  isOpen: Y.default.bool,
  defaultIsOpen: Y.default.bool,
  initialIsOpen: Y.default.bool,
  selectedItem: Y.default.any,
  initialSelectedItem: Y.default.any,
  defaultSelectedItem: Y.default.any,
  id: Y.default.string,
  labelId: Y.default.string,
  menuId: Y.default.string,
  getItemId: Y.default.func,
  toggleButtonId: Y.default.string,
  onSelectedItemChange: Y.default.func,
  onHighlightedIndexChange: Y.default.func,
  onStateChange: Y.default.func,
  onIsOpenChange: Y.default.func,
  scrollIntoView: Y.default.func
});
function pd(e, t, o) {
  var i = t.type, r = t.props, n;
  switch (i) {
    case o.ItemMouseMove:
      n = {
        highlightedIndex: t.disabled ? -1 : t.index
      };
      break;
    case o.MenuMouseLeave:
      n = {
        highlightedIndex: -1
      };
      break;
    case o.ToggleButtonClick:
    case o.FunctionToggleMenu:
      n = {
        isOpen: !e.isOpen,
        highlightedIndex: e.isOpen ? -1 : Gt(r, e, 0)
      };
      break;
    case o.FunctionOpenMenu:
      n = {
        isOpen: !0,
        highlightedIndex: Gt(r, e, 0)
      };
      break;
    case o.FunctionCloseMenu:
      n = {
        isOpen: !1
      };
      break;
    case o.FunctionSetHighlightedIndex:
      n = {
        highlightedIndex: r.isItemDisabled(r.items[t.highlightedIndex], t.highlightedIndex) ? -1 : t.highlightedIndex
      };
      break;
    case o.FunctionSetInputValue:
      n = {
        inputValue: t.inputValue
      };
      break;
    case o.FunctionReset:
      n = {
        highlightedIndex: pn(r),
        isOpen: ut(r, "isOpen"),
        selectedItem: ut(r, "selectedItem"),
        inputValue: ut(r, "inputValue")
      };
      break;
    default:
      throw new Error("Reducer called without proper action type.");
  }
  return j({}, e, n);
}
a(pd, "downshiftCommonReducer");
function tI(e) {
  for (var t = e.keysSoFar, o = e.highlightedIndex, i = e.items, r = e.itemToString, n = e.isItemDisabled, l = t.toLowerCase(), u = 0; u < i.
  length; u++) {
    var c = (u + o + (t.length < 2 ? 1 : 0)) % i.length, d = i[c];
    if (d !== void 0 && r(d).toLowerCase().startsWith(l) && !n(d, c))
      return c;
  }
  return o;
}
a(tI, "getItemIndexByCharacterKey");
var VR = $t($t({}, cd), { items: Y.default.array.isRequired, isItemDisabled: Y.default.func }), oI = $t($t({}, Wo), { isItemDisabled: /* @__PURE__ */ a(
function() {
  return !1;
}, "isItemDisabled") }), rI = Re, an = 0, ss = 1, as = 2, dn = 3, ls = 4, us = 5, cs = 6, ps = 7, ds = 8, fs = 9, ms = 10, fn = 11, dd = 12,
fd = 13, hs = 14, md = 15, hd = 16, gd = 17, yd = 18, gs = 19, es = 20, bd = 21, vd = /* @__PURE__ */ Object.freeze({
  __proto__: null,
  FunctionCloseMenu: gd,
  FunctionOpenMenu: hd,
  FunctionReset: bd,
  FunctionSelectItem: gs,
  FunctionSetHighlightedIndex: yd,
  FunctionSetInputValue: es,
  FunctionToggleMenu: md,
  ItemClick: hs,
  ItemMouseMove: fd,
  MenuMouseLeave: dd,
  ToggleButtonBlur: fn,
  ToggleButtonClick: an,
  ToggleButtonKeyDownArrowDown: ss,
  ToggleButtonKeyDownArrowUp: as,
  ToggleButtonKeyDownCharacter: dn,
  ToggleButtonKeyDownEnd: cs,
  ToggleButtonKeyDownEnter: ps,
  ToggleButtonKeyDownEscape: ls,
  ToggleButtonKeyDownHome: us,
  ToggleButtonKeyDownPageDown: ms,
  ToggleButtonKeyDownPageUp: fs,
  ToggleButtonKeyDownSpaceButton: ds
});
function nI(e, t) {
  var o, i = t.type, r = t.props, n = t.altKey, l;
  switch (i) {
    case hs:
      l = {
        isOpen: ut(r, "isOpen"),
        highlightedIndex: pn(r),
        selectedItem: r.items[t.index]
      };
      break;
    case dn:
      {
        var u = t.key, c = "" + e.inputValue + u, d = !e.isOpen && e.selectedItem ? r.items.findIndex(function(y) {
          return r.itemToKey(y) === r.itemToKey(e.selectedItem);
        }) : e.highlightedIndex, p = tI({
          keysSoFar: c,
          highlightedIndex: d,
          items: r.items,
          itemToString: r.itemToString,
          isItemDisabled: r.isItemDisabled
        });
        l = {
          inputValue: c,
          highlightedIndex: p,
          isOpen: !0
        };
      }
      break;
    case ss:
      {
        var f = e.isOpen ? Je(e.highlightedIndex, 1, r.items, r.isItemDisabled) : n && e.selectedItem == null ? -1 : Gt(r, e, 1);
        l = {
          highlightedIndex: f,
          isOpen: !0
        };
      }
      break;
    case as:
      if (e.isOpen && n)
        l = cn(r, e.highlightedIndex, !1);
      else {
        var h = e.isOpen ? Je(e.highlightedIndex, -1, r.items, r.isItemDisabled) : Gt(r, e, -1);
        l = {
          highlightedIndex: h,
          isOpen: !0
        };
      }
      break;
    // only triggered when menu is open.
    case ps:
    case ds:
      l = cn(r, e.highlightedIndex, !1);
      break;
    case us:
      l = {
        highlightedIndex: Tt(0, !1, r.items, r.isItemDisabled),
        isOpen: !0
      };
      break;
    case cs:
      l = {
        highlightedIndex: Tt(r.items.length - 1, !0, r.items, r.isItemDisabled),
        isOpen: !0
      };
      break;
    case fs:
      l = {
        highlightedIndex: Je(e.highlightedIndex, -10, r.items, r.isItemDisabled)
      };
      break;
    case ms:
      l = {
        highlightedIndex: Je(e.highlightedIndex, 10, r.items, r.isItemDisabled)
      };
      break;
    case ls:
      l = {
        isOpen: !1,
        highlightedIndex: -1
      };
      break;
    case fn:
      l = j({
        isOpen: !1,
        highlightedIndex: -1
      }, e.highlightedIndex >= 0 && ((o = r.items) == null ? void 0 : o.length) && {
        selectedItem: r.items[e.highlightedIndex]
      });
      break;
    case gs:
      l = {
        selectedItem: t.selectedItem
      };
      break;
    default:
      return pd(e, t, vd);
  }
  return j({}, e, l);
}
a(nI, "downshiftSelectReducer");
var iI = ["onClick"], sI = ["onMouseLeave", "refKey", "ref"], aI = ["onBlur", "onClick", "onPress", "onKeyDown", "refKey", "ref"], lI = ["it\
em", "index", "onMouseMove", "onClick", "onMouseDown", "onPress", "refKey", "disabled", "ref"];
xd.stateChangeTypes = vd;
function xd(e) {
  e === void 0 && (e = {}), rI(e, xd);
  var t = j({}, oI, e), o = t.scrollIntoView, i = t.environment, r = t.getA11yStatusMessage, n = id(nI, t, sd, ud), l = n[0], u = n[1], c = l.
  isOpen, d = l.highlightedIndex, p = l.selectedItem, f = l.inputValue, h = U(null), y = U(null), m = U({}), b = U(null), x = rd(t), E = gn(
  {
    state: l,
    props: t
  }), g = A(function(z) {
    return m.current[x.getItemId(z)];
  }, [x]);
  ns(r, l, [c, d, p, f], i);
  var v = ld({
    menuElement: y.current,
    highlightedIndex: d,
    isOpen: c,
    itemRefs: m,
    scrollIntoView: o,
    getItemNodeFromIndex: g
  });
  H(function() {
    return b.current = hn(function(z) {
      z({
        type: es,
        inputValue: ""
      });
    }, 500), function() {
      b.current.cancel();
    };
  }, []), H(function() {
    f && b.current(u);
  }, [u, f]), is({
    props: t,
    state: l
  }), H(function() {
    var z = Ut(t, "isOpen");
    z && h.current && h.current.focus();
  }, []);
  var S = ad(i, A(/* @__PURE__ */ a(function() {
    E.current.state.isOpen && u({
      type: fn
    });
  }, "handleBlur"), [u, E]), G(function() {
    return [y, h];
  }, [y.current, h.current])), w = rs("getMenuProps", "getToggleButtonProps");
  H(function() {
    c || (m.current = {});
  }, [c]);
  var k = G(function() {
    return {
      ArrowDown: /* @__PURE__ */ a(function(q) {
        q.preventDefault(), u({
          type: ss,
          altKey: q.altKey
        });
      }, "ArrowDown"),
      ArrowUp: /* @__PURE__ */ a(function(q) {
        q.preventDefault(), u({
          type: as,
          altKey: q.altKey
        });
      }, "ArrowUp"),
      Home: /* @__PURE__ */ a(function(q) {
        q.preventDefault(), u({
          type: us
        });
      }, "Home"),
      End: /* @__PURE__ */ a(function(q) {
        q.preventDefault(), u({
          type: cs
        });
      }, "End"),
      Escape: /* @__PURE__ */ a(function() {
        E.current.state.isOpen && u({
          type: ls
        });
      }, "Escape"),
      Enter: /* @__PURE__ */ a(function(q) {
        q.preventDefault(), u({
          type: E.current.state.isOpen ? ps : an
        });
      }, "Enter"),
      PageUp: /* @__PURE__ */ a(function(q) {
        E.current.state.isOpen && (q.preventDefault(), u({
          type: fs
        }));
      }, "PageUp"),
      PageDown: /* @__PURE__ */ a(function(q) {
        E.current.state.isOpen && (q.preventDefault(), u({
          type: ms
        }));
      }, "PageDown"),
      " ": /* @__PURE__ */ a(function(q) {
        q.preventDefault();
        var W = E.current.state;
        if (!W.isOpen) {
          u({
            type: an
          });
          return;
        }
        W.inputValue ? u({
          type: dn,
          key: " "
        }) : u({
          type: ds
        });
      }, "_")
    };
  }, [u, E]), _ = A(function() {
    u({
      type: md
    });
  }, [u]), C = A(function() {
    u({
      type: gd
    });
  }, [u]), T = A(function() {
    u({
      type: hd
    });
  }, [u]), O = A(function(z) {
    u({
      type: yd,
      highlightedIndex: z
    });
  }, [u]), P = A(function(z) {
    u({
      type: gs,
      selectedItem: z
    });
  }, [u]), D = A(function() {
    u({
      type: bd
    });
  }, [u]), M = A(function(z) {
    u({
      type: es,
      inputValue: z
    });
  }, [u]), F = A(function(z) {
    var q = z === void 0 ? {} : z, W = q.onClick, re = ke(q, iI), R = /* @__PURE__ */ a(function() {
      var L;
      (L = h.current) == null || L.focus();
    }, "labelHandleClick");
    return j({
      id: x.labelId,
      htmlFor: x.toggleButtonId,
      onClick: le(W, R)
    }, re);
  }, [x]), Z = A(function(z, q) {
    var W, re = z === void 0 ? {} : z, R = re.onMouseLeave, B = re.refKey, L = B === void 0 ? "ref" : B, $ = re.ref, J = ke(re, sI), ie = q ===
    void 0 ? {} : q, te = ie.suppressRefError, de = te === void 0 ? !1 : te, ae = /* @__PURE__ */ a(function() {
      u({
        type: dd
      });
    }, "menuHandleMouseLeave");
    return w("getMenuProps", de, L, y), j((W = {}, W[L] = Ze($, function(ce) {
      y.current = ce;
    }), W.id = x.menuId, W.role = "listbox", W["aria-labelledby"] = J && J["aria-label"] ? void 0 : "" + x.labelId, W.onMouseLeave = le(R, ae),
    W), J);
  }, [u, w, x]), V = A(function(z, q) {
    var W, re = z === void 0 ? {} : z, R = re.onBlur, B = re.onClick;
    re.onPress;
    var L = re.onKeyDown, $ = re.refKey, J = $ === void 0 ? "ref" : $, ie = re.ref, te = ke(re, aI), de = q === void 0 ? {} : q, ae = de.suppressRefError,
    ce = ae === void 0 ? !1 : ae, ue = E.current.state, Ie = /* @__PURE__ */ a(function() {
      u({
        type: an
      });
    }, "toggleButtonHandleClick"), ye = /* @__PURE__ */ a(function() {
      ue.isOpen && !S.isMouseDown && u({
        type: fn
      });
    }, "toggleButtonHandleBlur"), Oe = /* @__PURE__ */ a(function(_e) {
      var Ae = po(_e);
      Ae && k[Ae] ? k[Ae](_e) : Jx(Ae) && u({
        type: dn,
        key: Ae
      });
    }, "toggleButtonHandleKeyDown"), fe = j((W = {}, W[J] = Ze(ie, function(Se) {
      h.current = Se;
    }), W["aria-activedescendant"] = ue.isOpen && ue.highlightedIndex > -1 ? x.getItemId(ue.highlightedIndex) : "", W["aria-controls"] = x.menuId,
    W["aria-expanded"] = E.current.state.isOpen, W["aria-haspopup"] = "listbox", W["aria-labelledby"] = te && te["aria-label"] ? void 0 : "" +
    x.labelId, W.id = x.toggleButtonId, W.role = "combobox", W.tabIndex = 0, W.onBlur = le(R, ye), W), te);
    return te.disabled || (fe.onClick = le(B, Ie), fe.onKeyDown = le(L, Oe)), w("getToggleButtonProps", ce, J, h), fe;
  }, [u, x, E, S, w, k]), Q = A(function(z) {
    var q, W = z === void 0 ? {} : z, re = W.item, R = W.index, B = W.onMouseMove, L = W.onClick, $ = W.onMouseDown;
    W.onPress;
    var J = W.refKey, ie = J === void 0 ? "ref" : J, te = W.disabled, de = W.ref, ae = ke(W, lI);
    te !== void 0 && console.warn('Passing "disabled" as an argument to getItemProps is not supported anymore. Please use the isItemDisabled\
 prop from useSelect.');
    var ce = E.current, ue = ce.state, Ie = ce.props, ye = ts(re, R, Ie.items, "Pass either item or index to getItemProps!"), Oe = ye[0], fe = ye[1],
    Se = Ie.isItemDisabled(Oe, fe), _e = /* @__PURE__ */ a(function() {
      S.isTouchEnd || fe === ue.highlightedIndex || (v.current = !1, u({
        type: fd,
        index: fe,
        disabled: Se
      }));
    }, "itemHandleMouseMove"), Ae = /* @__PURE__ */ a(function() {
      u({
        type: hs,
        index: fe
      });
    }, "itemHandleClick"), et = /* @__PURE__ */ a(function(fo) {
      return fo.preventDefault();
    }, "itemHandleMouseDown"), N = j((q = {}, q[ie] = Ze(de, function(Ge) {
      Ge && (m.current[x.getItemId(fe)] = Ge);
    }), q["aria-disabled"] = Se, q["aria-selected"] = Oe === ue.selectedItem, q.id = x.getItemId(fe), q.role = "option", q), ae);
    return Se || (N.onClick = le(L, Ae)), N.onMouseMove = le(B, _e), N.onMouseDown = le($, et), N;
  }, [E, x, S, v, u]);
  return {
    // prop getters.
    getToggleButtonProps: V,
    getLabelProps: F,
    getMenuProps: Z,
    getItemProps: Q,
    // actions.
    toggleMenu: _,
    openMenu: T,
    closeMenu: C,
    setHighlightedIndex: O,
    selectItem: P,
    reset: D,
    setInputValue: M,
    // state.
    highlightedIndex: d,
    isOpen: c,
    selectedItem: p,
    inputValue: f
  };
}
a(xd, "useSelect");
var ys = 0, bs = 1, vs = 2, xs = 3, Is = 4, Ss = 5, ws = 6, Es = 7, Ts = 8, mn = 9, Cs = 10, Id = 11, Sd = 12, _s = 13, wd = 14, Ed = 15, Td = 16,
Cd = 17, _d = 18, ks = 19, kd = 20, Od = 21, Os = 22, Pd = /* @__PURE__ */ Object.freeze({
  __proto__: null,
  ControlledPropUpdatedSelectedItem: Os,
  FunctionCloseMenu: Cd,
  FunctionOpenMenu: Td,
  FunctionReset: Od,
  FunctionSelectItem: ks,
  FunctionSetHighlightedIndex: _d,
  FunctionSetInputValue: kd,
  FunctionToggleMenu: Ed,
  InputBlur: mn,
  InputChange: Ts,
  InputClick: Cs,
  InputKeyDownArrowDown: ys,
  InputKeyDownArrowUp: bs,
  InputKeyDownEnd: Is,
  InputKeyDownEnter: Es,
  InputKeyDownEscape: vs,
  InputKeyDownHome: xs,
  InputKeyDownPageDown: ws,
  InputKeyDownPageUp: Ss,
  ItemClick: _s,
  ItemMouseMove: Sd,
  MenuMouseLeave: Id,
  ToggleButtonClick: wd
});
function uI(e) {
  var t = sd(e), o = t.selectedItem, i = t.inputValue;
  return i === "" && o && e.defaultInputValue === void 0 && e.initialInputValue === void 0 && e.inputValue === void 0 && (i = e.itemToString(
  o)), j({}, t, {
    inputValue: i
  });
}
a(uI, "getInitialState$1");
var jR = j({}, cd, {
  items: Y.default.array.isRequired,
  isItemDisabled: Y.default.func,
  inputValue: Y.default.string,
  defaultInputValue: Y.default.string,
  initialInputValue: Y.default.string,
  inputId: Y.default.string,
  onInputValueChange: Y.default.func
});
function cI(e, t, o, i) {
  var r = U(), n = nd(e, t, o, i), l = n[0], u = n[1], c = yn();
  return H(function() {
    if (ln(t, "selectedItem")) {
      if (!c) {
        var d = t.itemToKey(t.selectedItem) !== t.itemToKey(r.current);
        d && u({
          type: Os,
          inputValue: t.itemToString(t.selectedItem)
        });
      }
      r.current = l.selectedItem === r.current ? t.selectedItem : l.selectedItem;
    }
  }, [l.selectedItem, t.selectedItem]), [Vo(l, t), u];
}
a(cI, "useControlledReducer");
var pI = Re, dI = j({}, Wo, {
  isItemDisabled: /* @__PURE__ */ a(function() {
    return !1;
  }, "isItemDisabled")
});
function fI(e, t) {
  var o, i = t.type, r = t.props, n = t.altKey, l;
  switch (i) {
    case _s:
      l = {
        isOpen: ut(r, "isOpen"),
        highlightedIndex: pn(r),
        selectedItem: r.items[t.index],
        inputValue: r.itemToString(r.items[t.index])
      };
      break;
    case ys:
      e.isOpen ? l = {
        highlightedIndex: Je(e.highlightedIndex, 1, r.items, r.isItemDisabled, !0)
      } : l = {
        highlightedIndex: n && e.selectedItem == null ? -1 : Gt(r, e, 1),
        isOpen: r.items.length >= 0
      };
      break;
    case bs:
      e.isOpen ? n ? l = cn(r, e.highlightedIndex) : l = {
        highlightedIndex: Je(e.highlightedIndex, -1, r.items, r.isItemDisabled, !0)
      } : l = {
        highlightedIndex: Gt(r, e, -1),
        isOpen: r.items.length >= 0
      };
      break;
    case Es:
      l = cn(r, e.highlightedIndex);
      break;
    case vs:
      l = j({
        isOpen: !1,
        highlightedIndex: -1
      }, !e.isOpen && {
        selectedItem: null,
        inputValue: ""
      });
      break;
    case Ss:
      l = {
        highlightedIndex: Je(e.highlightedIndex, -10, r.items, r.isItemDisabled, !0)
      };
      break;
    case ws:
      l = {
        highlightedIndex: Je(e.highlightedIndex, 10, r.items, r.isItemDisabled, !0)
      };
      break;
    case xs:
      l = {
        highlightedIndex: Tt(0, !1, r.items, r.isItemDisabled)
      };
      break;
    case Is:
      l = {
        highlightedIndex: Tt(r.items.length - 1, !0, r.items, r.isItemDisabled)
      };
      break;
    case mn:
      l = j({
        isOpen: !1,
        highlightedIndex: -1
      }, e.highlightedIndex >= 0 && ((o = r.items) == null ? void 0 : o.length) && t.selectItem && {
        selectedItem: r.items[e.highlightedIndex],
        inputValue: r.itemToString(r.items[e.highlightedIndex])
      });
      break;
    case Ts:
      l = {
        isOpen: !0,
        highlightedIndex: pn(r),
        inputValue: t.inputValue
      };
      break;
    case Cs:
      l = {
        isOpen: !e.isOpen,
        highlightedIndex: e.isOpen ? -1 : Gt(r, e, 0)
      };
      break;
    case ks:
      l = {
        selectedItem: t.selectedItem,
        inputValue: r.itemToString(t.selectedItem)
      };
      break;
    case Os:
      l = {
        inputValue: t.inputValue
      };
      break;
    default:
      return pd(e, t, Pd);
  }
  return j({}, e, l);
}
a(fI, "downshiftUseComboboxReducer");
var mI = ["onMouseLeave", "refKey", "ref"], hI = ["item", "index", "refKey", "ref", "onMouseMove", "onMouseDown", "onClick", "onPress", "dis\
abled"], gI = ["onClick", "onPress", "refKey", "ref"], yI = ["onKeyDown", "onChange", "onInput", "onBlur", "onChangeText", "onClick", "refKe\
y", "ref"];
Ad.stateChangeTypes = Pd;
function Ad(e) {
  e === void 0 && (e = {}), pI(e, Ad);
  var t = j({}, dI, e), o = t.items, i = t.scrollIntoView, r = t.environment, n = t.getA11yStatusMessage, l = cI(fI, t, uI, ud), u = l[0], c = l[1],
  d = u.isOpen, p = u.highlightedIndex, f = u.selectedItem, h = u.inputValue, y = U(null), m = U({}), b = U(null), x = U(null), E = yn(), g = rd(
  t), v = U(), S = gn({
    state: u,
    props: t
  }), w = A(function(R) {
    return m.current[g.getItemId(R)];
  }, [g]);
  ns(n, u, [d, p, f, h], r);
  var k = ld({
    menuElement: y.current,
    highlightedIndex: p,
    isOpen: d,
    itemRefs: m,
    scrollIntoView: i,
    getItemNodeFromIndex: w
  });
  is({
    props: t,
    state: u
  }), H(function() {
    var R = Ut(t, "isOpen");
    R && b.current && b.current.focus();
  }, []), H(function() {
    E || (v.current = o.length);
  });
  var _ = ad(r, A(/* @__PURE__ */ a(function() {
    S.current.state.isOpen && c({
      type: mn,
      selectItem: !1
    });
  }, "handleBlur"), [c, S]), G(function() {
    return [y, x, b];
  }, [y.current, x.current, b.current])), C = rs("getInputProps", "getMenuProps");
  H(function() {
    d || (m.current = {});
  }, [d]), H(function() {
    var R;
    !d || !(r != null && r.document) || !(b != null && (R = b.current) != null && R.focus) || r.document.activeElement !== b.current && b.current.
    focus();
  }, [d, r]);
  var T = G(function() {
    return {
      ArrowDown: /* @__PURE__ */ a(function(B) {
        B.preventDefault(), c({
          type: ys,
          altKey: B.altKey
        });
      }, "ArrowDown"),
      ArrowUp: /* @__PURE__ */ a(function(B) {
        B.preventDefault(), c({
          type: bs,
          altKey: B.altKey
        });
      }, "ArrowUp"),
      Home: /* @__PURE__ */ a(function(B) {
        S.current.state.isOpen && (B.preventDefault(), c({
          type: xs
        }));
      }, "Home"),
      End: /* @__PURE__ */ a(function(B) {
        S.current.state.isOpen && (B.preventDefault(), c({
          type: Is
        }));
      }, "End"),
      Escape: /* @__PURE__ */ a(function(B) {
        var L = S.current.state;
        (L.isOpen || L.inputValue || L.selectedItem || L.highlightedIndex > -1) && (B.preventDefault(), c({
          type: vs
        }));
      }, "Escape"),
      Enter: /* @__PURE__ */ a(function(B) {
        var L = S.current.state;
        !L.isOpen || B.which === 229 || (B.preventDefault(), c({
          type: Es
        }));
      }, "Enter"),
      PageUp: /* @__PURE__ */ a(function(B) {
        S.current.state.isOpen && (B.preventDefault(), c({
          type: Ss
        }));
      }, "PageUp"),
      PageDown: /* @__PURE__ */ a(function(B) {
        S.current.state.isOpen && (B.preventDefault(), c({
          type: ws
        }));
      }, "PageDown")
    };
  }, [c, S]), O = A(function(R) {
    return j({
      id: g.labelId,
      htmlFor: g.inputId
    }, R);
  }, [g]), P = A(function(R, B) {
    var L, $ = R === void 0 ? {} : R, J = $.onMouseLeave, ie = $.refKey, te = ie === void 0 ? "ref" : ie, de = $.ref, ae = ke($, mI), ce = B ===
    void 0 ? {} : B, ue = ce.suppressRefError, Ie = ue === void 0 ? !1 : ue;
    return C("getMenuProps", Ie, te, y), j((L = {}, L[te] = Ze(de, function(ye) {
      y.current = ye;
    }), L.id = g.menuId, L.role = "listbox", L["aria-labelledby"] = ae && ae["aria-label"] ? void 0 : "" + g.labelId, L.onMouseLeave = le(J,
    function() {
      c({
        type: Id
      });
    }), L), ae);
  }, [c, C, g]), D = A(function(R) {
    var B, L, $ = R === void 0 ? {} : R, J = $.item, ie = $.index, te = $.refKey, de = te === void 0 ? "ref" : te, ae = $.ref, ce = $.onMouseMove,
    ue = $.onMouseDown, Ie = $.onClick;
    $.onPress;
    var ye = $.disabled, Oe = ke($, hI);
    ye !== void 0 && console.warn('Passing "disabled" as an argument to getItemProps is not supported anymore. Please use the isItemDisabled\
 prop from useCombobox.');
    var fe = S.current, Se = fe.props, _e = fe.state, Ae = ts(J, ie, Se.items, "Pass either item or index to getItemProps!"), et = Ae[0], N = Ae[1],
    Ge = Se.isItemDisabled(et, N), fo = "onClick", Uo = Ie, ht = /* @__PURE__ */ a(function() {
      _.isTouchEnd || N === _e.highlightedIndex || (k.current = !1, c({
        type: Sd,
        index: N,
        disabled: Ge
      }));
    }, "itemHandleMouseMove"), Ct = /* @__PURE__ */ a(function() {
      c({
        type: _s,
        index: N
      });
    }, "itemHandleClick"), gt = /* @__PURE__ */ a(function(ff) {
      return ff.preventDefault();
    }, "itemHandleMouseDown");
    return j((B = {}, B[de] = Ze(ae, function(qe) {
      qe && (m.current[g.getItemId(N)] = qe);
    }), B["aria-disabled"] = Ge, B["aria-selected"] = N === _e.highlightedIndex, B.id = g.getItemId(N), B.role = "option", B), !Ge && (L = {},
    L[fo] = le(Uo, Ct), L), {
      onMouseMove: le(ce, ht),
      onMouseDown: le(ue, gt)
    }, Oe);
  }, [c, g, S, _, k]), M = A(function(R) {
    var B, L = R === void 0 ? {} : R, $ = L.onClick;
    L.onPress;
    var J = L.refKey, ie = J === void 0 ? "ref" : J, te = L.ref, de = ke(L, gI), ae = S.current.state, ce = /* @__PURE__ */ a(function() {
      c({
        type: wd
      });
    }, "toggleButtonHandleClick");
    return j((B = {}, B[ie] = Ze(te, function(ue) {
      x.current = ue;
    }), B["aria-controls"] = g.menuId, B["aria-expanded"] = ae.isOpen, B.id = g.toggleButtonId, B.tabIndex = -1, B), !de.disabled && j({}, {
      onClick: le($, ce)
    }), de);
  }, [c, S, g]), F = A(function(R, B) {
    var L, $ = R === void 0 ? {} : R, J = $.onKeyDown, ie = $.onChange, te = $.onInput, de = $.onBlur;
    $.onChangeText;
    var ae = $.onClick, ce = $.refKey, ue = ce === void 0 ? "ref" : ce, Ie = $.ref, ye = ke($, yI), Oe = B === void 0 ? {} : B, fe = Oe.suppressRefError,
    Se = fe === void 0 ? !1 : fe;
    C("getInputProps", Se, ue, b);
    var _e = S.current.state, Ae = /* @__PURE__ */ a(function(gt) {
      var qe = po(gt);
      qe && T[qe] && T[qe](gt);
    }, "inputHandleKeyDown"), et = /* @__PURE__ */ a(function(gt) {
      c({
        type: Ts,
        inputValue: gt.target.value
      });
    }, "inputHandleChange"), N = /* @__PURE__ */ a(function(gt) {
      if (r != null && r.document && _e.isOpen && !_.isMouseDown) {
        var qe = gt.relatedTarget === null && r.document.activeElement !== r.document.body;
        c({
          type: mn,
          selectItem: !qe
        });
      }
    }, "inputHandleBlur"), Ge = /* @__PURE__ */ a(function() {
      c({
        type: Cs
      });
    }, "inputHandleClick"), fo = "onChange", Uo = {};
    if (!ye.disabled) {
      var ht;
      Uo = (ht = {}, ht[fo] = le(ie, te, et), ht.onKeyDown = le(J, Ae), ht.onBlur = le(de, N), ht.onClick = le(ae, Ge), ht);
    }
    return j((L = {}, L[ue] = Ze(Ie, function(Ct) {
      b.current = Ct;
    }), L["aria-activedescendant"] = _e.isOpen && _e.highlightedIndex > -1 ? g.getItemId(_e.highlightedIndex) : "", L["aria-autocomplete"] =
    "list", L["aria-controls"] = g.menuId, L["aria-expanded"] = _e.isOpen, L["aria-labelledby"] = ye && ye["aria-label"] ? void 0 : g.labelId,
    L.autoComplete = "off", L.id = g.inputId, L.role = "combobox", L.value = _e.inputValue, L), Uo, ye);
  }, [c, g, r, T, S, _, C]), Z = A(function() {
    c({
      type: Ed
    });
  }, [c]), V = A(function() {
    c({
      type: Cd
    });
  }, [c]), Q = A(function() {
    c({
      type: Td
    });
  }, [c]), z = A(function(R) {
    c({
      type: _d,
      highlightedIndex: R
    });
  }, [c]), q = A(function(R) {
    c({
      type: ks,
      selectedItem: R
    });
  }, [c]), W = A(function(R) {
    c({
      type: kd,
      inputValue: R
    });
  }, [c]), re = A(function() {
    c({
      type: Od
    });
  }, [c]);
  return {
    // prop getters.
    getItemProps: D,
    getLabelProps: O,
    getMenuProps: P,
    getInputProps: F,
    getToggleButtonProps: M,
    // actions.
    toggleMenu: Z,
    openMenu: Q,
    closeMenu: V,
    setHighlightedIndex: z,
    setInputValue: W,
    selectItem: q,
    reset: re,
    // state.
    highlightedIndex: p,
    isOpen: d,
    selectedItem: f,
    inputValue: h
  };
}
a(Ad, "useCombobox");
var Dd = {
  activeIndex: -1,
  selectedItems: []
};
function Lp(e, t) {
  return Ut(e, t, Dd);
}
a(Lp, "getInitialValue");
function Np(e, t) {
  return ut(e, t, Dd);
}
a(Np, "getDefaultValue");
function bI(e) {
  var t = Lp(e, "activeIndex"), o = Lp(e, "selectedItems");
  return {
    activeIndex: t,
    selectedItems: o
  };
}
a(bI, "getInitialState");
function Fp(e) {
  if (e.shiftKey || e.metaKey || e.ctrlKey || e.altKey)
    return !1;
  var t = e.target;
  return !(t instanceof HTMLInputElement && // if element is a text input
  t.value !== "" && // and we have text in it
  // and cursor is either not at the start or is currently highlighting text.
  (t.selectionStart !== 0 || t.selectionEnd !== 0));
}
a(Fp, "isKeyDownOperationPermitted");
function vI(e, t) {
  return e.selectedItems === t.selectedItems && e.activeIndex === t.activeIndex;
}
a(vI, "isStateEqual");
var KR = {
  stateReducer: sn.stateReducer,
  itemToKey: sn.itemToKey,
  environment: sn.environment,
  selectedItems: Y.default.array,
  initialSelectedItems: Y.default.array,
  defaultSelectedItems: Y.default.array,
  getA11yStatusMessage: Y.default.func,
  activeIndex: Y.default.number,
  initialActiveIndex: Y.default.number,
  defaultActiveIndex: Y.default.number,
  onActiveIndexChange: Y.default.func,
  onSelectedItemsChange: Y.default.func,
  keyNavigationNext: Y.default.string,
  keyNavigationPrevious: Y.default.string
}, xI = {
  itemToKey: Wo.itemToKey,
  stateReducer: Wo.stateReducer,
  environment: Wo.environment,
  keyNavigationNext: "ArrowRight",
  keyNavigationPrevious: "ArrowLeft"
}, II = Re, Ps = 0, As = 1, Ds = 2, Ms = 3, Ls = 4, Ns = 5, Fs = 6, Rs = 7, Bs = 8, Hs = 9, zs = 10, Ws = 11, Vs = 12, SI = /* @__PURE__ */ Object.
freeze({
  __proto__: null,
  DropdownClick: Rs,
  DropdownKeyDownBackspace: Fs,
  DropdownKeyDownNavigationPrevious: Ns,
  FunctionAddSelectedItem: Bs,
  FunctionRemoveSelectedItem: Hs,
  FunctionReset: Vs,
  FunctionSetActiveIndex: Ws,
  FunctionSetSelectedItems: zs,
  SelectedItemClick: Ps,
  SelectedItemKeyDownBackspace: Ds,
  SelectedItemKeyDownDelete: As,
  SelectedItemKeyDownNavigationNext: Ms,
  SelectedItemKeyDownNavigationPrevious: Ls
});
function wI(e, t) {
  var o = t.type, i = t.index, r = t.props, n = t.selectedItem, l = e.activeIndex, u = e.selectedItems, c;
  switch (o) {
    case Ps:
      c = {
        activeIndex: i
      };
      break;
    case Ls:
      c = {
        activeIndex: l - 1 < 0 ? 0 : l - 1
      };
      break;
    case Ms:
      c = {
        activeIndex: l + 1 >= u.length ? -1 : l + 1
      };
      break;
    case Ds:
    case As: {
      if (l < 0)
        break;
      var d = l;
      u.length === 1 ? d = -1 : l === u.length - 1 && (d = u.length - 2), c = j({
        selectedItems: [].concat(u.slice(0, l), u.slice(l + 1))
      }, {
        activeIndex: d
      });
      break;
    }
    case Ns:
      c = {
        activeIndex: u.length - 1
      };
      break;
    case Fs:
      c = {
        selectedItems: u.slice(0, u.length - 1)
      };
      break;
    case Bs:
      c = {
        selectedItems: [].concat(u, [n])
      };
      break;
    case Rs:
      c = {
        activeIndex: -1
      };
      break;
    case Hs: {
      var p = l, f = u.findIndex(function(m) {
        return r.itemToKey(m) === r.itemToKey(n);
      });
      if (f < 0)
        break;
      u.length === 1 ? p = -1 : f === u.length - 1 && (p = u.length - 2), c = {
        selectedItems: [].concat(u.slice(0, f), u.slice(f + 1)),
        activeIndex: p
      };
      break;
    }
    case zs: {
      var h = t.selectedItems;
      c = {
        selectedItems: h
      };
      break;
    }
    case Ws: {
      var y = t.activeIndex;
      c = {
        activeIndex: y
      };
      break;
    }
    case Vs:
      c = {
        activeIndex: Np(r, "activeIndex"),
        selectedItems: Np(r, "selectedItems")
      };
      break;
    default:
      throw new Error("Reducer called without proper action type.");
  }
  return j({}, e, c);
}
a(wI, "downshiftMultipleSelectionReducer");
var EI = ["refKey", "ref", "onClick", "onKeyDown", "selectedItem", "index"], TI = ["refKey", "ref", "onKeyDown", "onClick", "preventKeyActio\
n"];
Md.stateChangeTypes = SI;
function Md(e) {
  e === void 0 && (e = {}), II(e, Md);
  var t = j({}, xI, e), o = t.getA11yStatusMessage, i = t.environment, r = t.keyNavigationNext, n = t.keyNavigationPrevious, l = id(wI, t, bI,
  vI), u = l[0], c = l[1], d = u.activeIndex, p = u.selectedItems, f = yn(), h = U(null), y = U();
  y.current = [];
  var m = gn({
    state: u,
    props: t
  });
  ns(o, u, [d, p], i), H(function() {
    f || (d === -1 && h.current ? h.current.focus() : y.current[d] && y.current[d].focus());
  }, [d]), is({
    props: t,
    state: u
  });
  var b = rs("getDropdownProps"), x = G(function() {
    var T;
    return T = {}, T[n] = function() {
      c({
        type: Ls
      });
    }, T[r] = function() {
      c({
        type: Ms
      });
    }, T.Delete = /* @__PURE__ */ a(function() {
      c({
        type: As
      });
    }, "Delete"), T.Backspace = /* @__PURE__ */ a(function() {
      c({
        type: Ds
      });
    }, "Backspace"), T;
  }, [c, r, n]), E = G(function() {
    var T;
    return T = {}, T[n] = function(O) {
      Fp(O) && c({
        type: Ns
      });
    }, T.Backspace = /* @__PURE__ */ a(function(P) {
      Fp(P) && c({
        type: Fs
      });
    }, "Backspace"), T;
  }, [c, n]), g = A(function(T) {
    var O, P = T === void 0 ? {} : T, D = P.refKey, M = D === void 0 ? "ref" : D, F = P.ref, Z = P.onClick, V = P.onKeyDown, Q = P.selectedItem,
    z = P.index, q = ke(P, EI), W = m.current.state, re = ts(Q, z, W.selectedItems, "Pass either item or index to getSelectedItemProps!"), R = re[1],
    B = R > -1 && R === W.activeIndex, L = /* @__PURE__ */ a(function() {
      c({
        type: Ps,
        index: R
      });
    }, "selectedItemHandleClick"), $ = /* @__PURE__ */ a(function(ie) {
      var te = po(ie);
      te && x[te] && x[te](ie);
    }, "selectedItemHandleKeyDown");
    return j((O = {}, O[M] = Ze(F, function(J) {
      J && y.current.push(J);
    }), O.tabIndex = B ? 0 : -1, O.onClick = le(Z, L), O.onKeyDown = le(V, $), O), q);
  }, [c, m, x]), v = A(function(T, O) {
    var P, D = T === void 0 ? {} : T, M = D.refKey, F = M === void 0 ? "ref" : M, Z = D.ref, V = D.onKeyDown, Q = D.onClick, z = D.preventKeyAction,
    q = z === void 0 ? !1 : z, W = ke(D, TI), re = O === void 0 ? {} : O, R = re.suppressRefError, B = R === void 0 ? !1 : R;
    b("getDropdownProps", B, F, h);
    var L = /* @__PURE__ */ a(function(ie) {
      var te = po(ie);
      te && E[te] && E[te](ie);
    }, "dropdownHandleKeyDown"), $ = /* @__PURE__ */ a(function() {
      c({
        type: Rs
      });
    }, "dropdownHandleClick");
    return j((P = {}, P[F] = Ze(Z, function(J) {
      J && (h.current = J);
    }), P), !q && {
      onKeyDown: le(V, L),
      onClick: le(Q, $)
    }, W);
  }, [c, E, b]), S = A(function(T) {
    c({
      type: Bs,
      selectedItem: T
    });
  }, [c]), w = A(function(T) {
    c({
      type: Hs,
      selectedItem: T
    });
  }, [c]), k = A(function(T) {
    c({
      type: zs,
      selectedItems: T
    });
  }, [c]), _ = A(function(T) {
    c({
      type: Ws,
      activeIndex: T
    });
  }, [c]), C = A(function() {
    c({
      type: Vs
    });
  }, [c]);
  return {
    getSelectedItemProps: g,
    getDropdownProps: v,
    addSelectedItem: S,
    removeSelectedItem: w,
    setSelectedItems: k,
    setActiveIndex: _,
    reset: C,
    selectedItems: p,
    activeIndex: d
  };
}
a(Md, "useMultipleSelection");

// src/manager/components/sidebar/Search.tsx
var Nd = Ve(Ld(), 1);

// src/manager/components/sidebar/types.ts
function Ko(e) {
  return !!(e && e.showAll);
}
a(Ko, "isExpandType");
function Ks(e) {
  return !!(e && e.item);
}
a(Ks, "isSearchResult");

// src/manager/components/sidebar/Search.tsx
var { document: CI } = se, $s = 50, _I = {
  shouldSort: !0,
  tokenize: !0,
  findAllMatches: !0,
  includeScore: !0,
  includeMatches: !0,
  threshold: 0.2,
  location: 0,
  distance: 100,
  maxPatternLength: 32,
  minMatchCharLength: 1,
  keys: [
    { name: "name", weight: 0.7 },
    { name: "path", weight: 0.3 }
  ]
}, kI = I.div({
  display: "flex",
  flexDirection: "row",
  columnGap: 6
}), OI = I.label({
  position: "absolute",
  left: -1e4,
  top: "auto",
  width: 1,
  height: 1,
  overflow: "hidden"
}), PI = I.div(({ theme: e, isMobile: t }) => ({
  display: "flex",
  flexDirection: "row",
  alignItems: "center",
  padding: t ? 4 : 2,
  flexGrow: 1,
  height: t ? 36 : 32,
  width: "100%",
  boxShadow: `${e.button.border} 0 0 0 1px inset`,
  borderRadius: e.appBorderRadius + 2,
  "&:has(input:focus), &:has(input:active)": {
    boxShadow: `${e.color.secondary} 0 0 0 1px inset`,
    background: e.background.app
  }
})), AI = I.div(({ theme: e, onClick: t }) => ({
  cursor: t ? "pointer" : "default",
  flex: "0 0 28px",
  height: "100%",
  pointerEvents: t ? "auto" : "none",
  color: e.textMutedColor,
  display: "flex",
  alignItems: "center",
  justifyContent: "center"
})), DI = I.input(({ theme: e, isMobile: t }) => ({
  appearance: "none",
  height: 28,
  width: "100%",
  padding: 0,
  border: 0,
  background: "transparent",
  fontSize: t ? "16px" : `${e.typography.size.s1 + 1}px`,
  fontFamily: "inherit",
  transition: "all 150ms",
  color: e.color.defaultText,
  outline: 0,
  "&::placeholder": {
    color: e.textMutedColor,
    opacity: 1
  },
  "&:valid ~ code, &:focus ~ code": {
    display: "none"
  },
  "&:invalid ~ svg": {
    display: "none"
  },
  "&:valid ~ svg": {
    display: "block"
  },
  "&::-ms-clear": {
    display: "none"
  },
  "&::-webkit-search-decoration, &::-webkit-search-cancel-button, &::-webkit-search-results-button, &::-webkit-search-results-decoration": {
    display: "none"
  }
})), MI = I.code(({ theme: e }) => ({
  margin: 5,
  marginTop: 6,
  height: 16,
  lineHeight: "16px",
  textAlign: "center",
  fontSize: "11px",
  color: e.base === "light" ? e.color.dark : e.textMutedColor,
  userSelect: "none",
  pointerEvents: "none",
  display: "flex",
  alignItems: "center",
  gap: 4,
  flexShrink: 0
})), LI = I.span({
  fontSize: "14px"
}), NI = I.div({
  display: "flex",
  alignItems: "center",
  gap: 2
}), FI = I.div({ outline: 0 }), Fd = s.memo(/* @__PURE__ */ a(function({
  children: t,
  dataset: o,
  enableShortcuts: i = !0,
  getLastViewed: r,
  initialQuery: n = "",
  searchBarContent: l,
  searchFieldContent: u
}) {
  let c = oe(), d = U(null), [p, f] = K("Find components"), [h, y] = K(!1), m = c ? Ye(c.getShortcutKeys().search) : "/", b = A(() => {
    let w = o.entries.reduce((k, [_, { index: C, allStatuses: T }]) => {
      let O = zr(C || {}, T ?? {});
      return C && k.push(
        ...Object.values(C).map((P) => {
          let D = T?.[P.id], M = D ? Ho(Object.values(D).map((F) => F.value)) : null;
          return {
            ...Ki(P, o.hash[_]),
            status: M ?? O[P.id] ?? null
          };
        })
      ), k;
    }, []);
    return new Nd.default(w, _I);
  }, [o]), x = A(
    (w) => {
      let k = b();
      if (!w)
        return [];
      let _ = [], C = /* @__PURE__ */ new Set(), T = k.search(w).filter(({ item: O }) => !(O.type === "component" || O.type === "docs" || O.
      type === "story") || // @ts-expect-error (non strict)
      C.has(O.parent) ? !1 : (C.add(O.id), !0));
      return T.length && (_ = T.slice(0, h ? 1e3 : $s), T.length > $s && !h && _.push({
        showAll: /* @__PURE__ */ a(() => y(!0), "showAll"),
        totalCount: T.length,
        moreCount: T.length - $s
      })), _;
    },
    [h, b]
  ), E = A(
    (w) => {
      if (Ks(w)) {
        let { id: k, refId: _ } = w.item;
        c?.selectStory(k, void 0, { ref: _ !== lt && _ }), d.current.blur(), y(!1);
        return;
      }
      Ko(w) && w.showAll();
    },
    [c]
  ), g = A((w, k) => {
    y(!1);
  }, []), v = A(
    (w, k) => {
      switch (k.type) {
        case qt.stateChangeTypes.blurInput:
          return {
            ...k,
            // Prevent clearing the input on blur
            inputValue: w.inputValue,
            // Return to the tree view after selecting an item
            isOpen: w.inputValue && !w.selectedItem
          };
        case qt.stateChangeTypes.mouseUp:
          return w;
        case qt.stateChangeTypes.keyDownEscape:
          return w.inputValue ? { ...k, inputValue: "", isOpen: !0, selectedItem: null } : { ...k, isOpen: !1, selectedItem: null };
        case qt.stateChangeTypes.clickItem:
        case qt.stateChangeTypes.keyDownEnter:
          return Ks(k.selectedItem) ? { ...k, inputValue: w.inputValue } : Ko(k.selectedItem) ? w : k;
        default:
          return k;
      }
    },
    []
  ), { isMobile: S } = ge();
  return (
    // @ts-expect-error (non strict)
    /* @__PURE__ */ s.createElement(
      qt,
      {
        initialInputValue: n,
        stateReducer: v,
        itemToString: (w) => w?.item?.name || "",
        scrollIntoView: (w) => zt(w),
        onSelect: E,
        onInputValueChange: g
      },
      ({
        isOpen: w,
        openMenu: k,
        closeMenu: _,
        inputValue: C,
        clearSelection: T,
        getInputProps: O,
        getItemProps: P,
        getLabelProps: D,
        getMenuProps: M,
        getRootProps: F,
        highlightedIndex: Z
      }) => {
        let V = C ? C.trim() : "", Q = V ? x(V) : [], z = !V && r();
        z && z.length && (Q = z.reduce((R, { storyId: B, refId: L }) => {
          let $ = o.hash[L];
          if ($ && $.index && $.index[B]) {
            let J = $.index[B], ie = J.type === "story" ? $.index[J.parent] : J;
            R.some((te) => te.item.refId === L && te.item.id === ie.id) || R.push({ item: Ki(ie, o.hash[L]), matches: [], score: 0 });
          }
          return R;
        }, []));
        let q = "storybook-explorer-searchfield", W = O({
          id: q,
          ref: d,
          required: !0,
          type: "search",
          placeholder: p,
          onFocus: /* @__PURE__ */ a(() => {
            k(), f("Type to find...");
          }, "onFocus"),
          onBlur: /* @__PURE__ */ a(() => f("Find components"), "onBlur"),
          onKeyDown: /* @__PURE__ */ a((R) => {
            R.key === "Escape" && C.length === 0 && d.current.blur();
          }, "onKeyDown")
        }), re = D({
          htmlFor: q
        });
        return /* @__PURE__ */ s.createElement(s.Fragment, null, /* @__PURE__ */ s.createElement(OI, { ...re }, "Search for components"), /* @__PURE__ */ s.
        createElement(kI, null, /* @__PURE__ */ s.createElement(
          PI,
          {
            ...F({ refKey: "" }, { suppressRefError: !0 }),
            isMobile: S,
            className: "search-field"
          },
          /* @__PURE__ */ s.createElement(AI, null, /* @__PURE__ */ s.createElement(So, null)),
          /* @__PURE__ */ s.createElement(DI, { ...W, isMobile: S }),
          !S && i && !w && /* @__PURE__ */ s.createElement(MI, null, m === "\u2318 K" ? /* @__PURE__ */ s.createElement(s.Fragment, null, /* @__PURE__ */ s.
          createElement(LI, null, "\u2318"), "K") : m),
          /* @__PURE__ */ s.createElement(NI, null, w && /* @__PURE__ */ s.createElement(ee, { onClick: () => T() }, /* @__PURE__ */ s.createElement(
          je, null)), u)
        ), l), /* @__PURE__ */ s.createElement(FI, { tabIndex: 0, id: "storybook-explorer-menu" }, t({
          query: V,
          results: Q,
          isBrowsing: !w && CI.activeElement !== d.current,
          closeMenu: _,
          getMenuProps: M,
          getItemProps: P,
          highlightedIndex: Z
        })));
      }
    )
  );
}, "Search"));

// src/manager/components/sidebar/SearchResults.tsx
var { document: Rd } = se, RI = I.ol({
  listStyle: "none",
  margin: 0,
  padding: 0
}), BI = I.li(({ theme: e, isHighlighted: t }) => ({
  width: "100%",
  border: "none",
  cursor: "pointer",
  display: "flex",
  alignItems: "start",
  justifyContent: "space-between",
  textAlign: "left",
  color: "inherit",
  fontSize: `${e.typography.size.s2}px`,
  background: t ? e.background.hoverable : "transparent",
  minHeight: 28,
  borderRadius: 4,
  gap: 6,
  paddingTop: 7,
  paddingBottom: 7,
  paddingLeft: 8,
  paddingRight: 8,
  "&:hover, &:focus": {
    background: Te(0.93, e.color.secondary),
    outline: "none"
  }
})), HI = I.div({
  marginTop: 2
}), zI = I.div({
  flex: 1,
  display: "flex",
  flexDirection: "column"
}), WI = I.div(({ theme: e }) => ({
  marginTop: 20,
  textAlign: "center",
  fontSize: `${e.typography.size.s2}px`,
  lineHeight: "18px",
  color: e.color.defaultText,
  small: {
    color: e.textMutedColor,
    fontSize: `${e.typography.size.s1}px`
  }
})), VI = I.mark(({ theme: e }) => ({
  background: "transparent",
  color: e.color.secondary
})), jI = I.div({
  marginTop: 8
}), KI = I.div(({ theme: e }) => ({
  display: "flex",
  justifyContent: "space-between",
  fontSize: `${e.typography.size.s1 - 1}px`,
  fontWeight: e.typography.weight.bold,
  minHeight: 28,
  letterSpacing: "0.16em",
  textTransform: "uppercase",
  color: e.textMutedColor,
  marginTop: 16,
  marginBottom: 4,
  alignItems: "center",
  ".search-result-recentlyOpened-clear": {
    visibility: "hidden"
  },
  "&:hover": {
    ".search-result-recentlyOpened-clear": {
      visibility: "visible"
    }
  }
})), Bd = s.memo(/* @__PURE__ */ a(function({
  children: t,
  match: o
}) {
  if (!o)
    return t;
  let { value: i, indices: r } = o, { nodes: n } = r.reduce(
    ({ cursor: l, nodes: u }, [c, d], p, { length: f }) => (u.push(/* @__PURE__ */ s.createElement("span", { key: `${p}-1` }, i.slice(l, c))),
    u.push(/* @__PURE__ */ s.createElement(VI, { key: `${p}-2` }, i.slice(c, d + 1))), p === f - 1 && u.push(/* @__PURE__ */ s.createElement(
    "span", { key: `${p}-3` }, i.slice(d + 1))), { cursor: d + 1, nodes: u }),
    { cursor: 0, nodes: [] }
  );
  return /* @__PURE__ */ s.createElement("span", null, n);
}, "Highlight")), $I = I.div(({ theme: e }) => ({
  display: "grid",
  justifyContent: "start",
  gridAutoColumns: "auto",
  gridAutoFlow: "column",
  "& > span": {
    display: "block",
    whiteSpace: "nowrap",
    overflow: "hidden",
    textOverflow: "ellipsis"
  }
})), UI = I.div(({ theme: e }) => ({
  display: "grid",
  justifyContent: "start",
  gridAutoColumns: "auto",
  gridAutoFlow: "column",
  fontSize: `${e.typography.size.s1 - 1}px`,
  "& > span": {
    display: "block",
    whiteSpace: "nowrap",
    overflow: "hidden",
    textOverflow: "ellipsis"
  },
  "& > span + span": {
    "&:before": {
      content: "' / '"
    }
  }
})), GI = s.memo(/* @__PURE__ */ a(function({ item: t, matches: o, onClick: i, ...r }) {
  let n = A(
    (p) => {
      p.preventDefault(), i?.(p);
    },
    [i]
  ), l = oe();
  H(() => {
    l && r.isHighlighted && t.type === "component" && l.emit(kt, { ids: [t.children[0]] }, { options: { target: t.refId } });
  }, [r.isHighlighted, t]);
  let u = o.find((p) => p.key === "name"), c = o.filter((p) => p.key === "path"), [d] = t.status ? Bo[t.status] : [];
  return /* @__PURE__ */ s.createElement(BI, { ...r, onClick: n }, /* @__PURE__ */ s.createElement(HI, null, t.type === "component" && /* @__PURE__ */ s.
  createElement(wt, { viewBox: "0 0 14 14", width: "14", height: "14", type: "component" }, /* @__PURE__ */ s.createElement(Me, { type: "com\
ponent" })), t.type === "story" && /* @__PURE__ */ s.createElement(wt, { viewBox: "0 0 14 14", width: "14", height: "14", type: "story" }, /* @__PURE__ */ s.
  createElement(Me, { type: "story" })), !(t.type === "component" || t.type === "story") && /* @__PURE__ */ s.createElement(wt, { viewBox: "\
0 0 14 14", width: "14", height: "14", type: "document" }, /* @__PURE__ */ s.createElement(Me, { type: "document" }))), /* @__PURE__ */ s.createElement(
  zI, { className: "search-result-item--label" }, /* @__PURE__ */ s.createElement($I, null, /* @__PURE__ */ s.createElement(Bd, { match: u },
  t.name)), /* @__PURE__ */ s.createElement(UI, null, t.path.map((p, f) => /* @__PURE__ */ s.createElement("span", { key: f }, /* @__PURE__ */ s.
  createElement(Bd, { match: c.find((h) => h.arrayIndex === f) }, p))))), t.status ? /* @__PURE__ */ s.createElement(Xc, { status: t.status },
  d) : null);
}, "Result")), Hd = s.memo(/* @__PURE__ */ a(function({
  query: t,
  results: o,
  closeMenu: i,
  getMenuProps: r,
  getItemProps: n,
  highlightedIndex: l,
  isLoading: u = !1,
  enableShortcuts: c = !0,
  clearLastViewed: d
}) {
  let p = oe();
  H(() => {
    let y = /* @__PURE__ */ a((m) => {
      if (!(!c || u || m.repeat) && Et(!1, m) && $e("Escape", m)) {
        if (m.target?.id === "storybook-explorer-searchfield")
          return;
        m.preventDefault(), i();
      }
    }, "handleEscape");
    return Rd.addEventListener("keydown", y), () => Rd.removeEventListener("keydown", y);
  }, [i, c, u]);
  let f = A((y) => {
    if (!p)
      return;
    let m = y.currentTarget, b = m.getAttribute("data-id"), x = m.getAttribute("data-refid"), E = p.resolveStory(b, x === "storybook_interna\
l" ? void 0 : x);
    E?.type === "component" && p.emit(kt, {
      // @ts-expect-error (TODO)
      ids: [E.isLeaf ? E.id : E.children[0]],
      options: { target: x }
    });
  }, []), h = /* @__PURE__ */ a(() => {
    d(), i();
  }, "handleClearLastViewed");
  return /* @__PURE__ */ s.createElement(RI, { ...r(), key: "results-list" }, o.length > 0 && !t && /* @__PURE__ */ s.createElement(KI, { className: "\
search-result-recentlyOpened" }, "Recently opened", /* @__PURE__ */ s.createElement(
    ee,
    {
      className: "search-result-recentlyOpened-clear",
      onClick: h
    },
    /* @__PURE__ */ s.createElement(Xn, null)
  )), o.length === 0 && t && /* @__PURE__ */ s.createElement("li", null, /* @__PURE__ */ s.createElement(WI, null, /* @__PURE__ */ s.createElement(
  "strong", null, "No components found"), /* @__PURE__ */ s.createElement("br", null), /* @__PURE__ */ s.createElement("small", null, "Find \
components by name or path."))), o.map((y, m) => {
    if (Ko(y)) {
      let E = { ...o, ...n({ key: m, index: m, item: y }) }, { key: g, ...v } = E;
      return /* @__PURE__ */ s.createElement(jI, { key: "search-result-expand" }, /* @__PURE__ */ s.createElement(he, { key: g, ...v, size: "\
small" }, "Show ", y.moreCount, " more results"));
    }
    let { item: b } = y, x = `${b.refId}::${b.id}`;
    return /* @__PURE__ */ s.createElement(
      GI,
      {
        ...y,
        ...n({ key: x, index: m, item: y }),
        isHighlighted: l === m,
        key: x,
        "data-id": y.item.id,
        "data-refid": y.item.refId,
        onMouseOver: f,
        className: "search-result-item"
      }
    );
  }));
}, "SearchResults"));

// src/manager/components/sidebar/useDynamicFavicon.ts
var qI = ["active", "critical", "negative", "positive", "warning"], $o, YI = /* @__PURE__ */ a((e = "./favicon.svg", t) => {
  $o ??= e;
  let o = $o + (t && qI.includes(t) ? `?status=${t}` : "");
  return new Promise((i) => {
    let r = new Image();
    r.onload = () => i({ href: o, status: t }), r.onerror = () => i({ href: $o, status: t }), r.src = o;
  });
}, "getFaviconUrl"), zd = /* @__PURE__ */ a((e) => {
  let t = U(document.head.querySelectorAll("link[rel*='icon']"));
  H(() => {
    let o = !0, [i, ...r] = t.current;
    if (i && !r.length)
      return YI(i.href, e).then(
        (n) => {
          o && n.status === e && i.dataset.status !== e && (i.href = n.href, n.status ? i.dataset.status = n.status : delete i.dataset.status);
        },
        () => {
          o && (i.href = $o);
        }
      ), () => {
        o = !1, i.href = $o;
      };
  }, [e]);
}, "useDynamicFavicon");

// src/manager/components/sidebar/TestingModule.tsx
var Us = 500, QI = Dt({
  "0%": { transform: "rotate(0deg)" },
  "10%": { transform: "rotate(10deg)" },
  "40%": { transform: "rotate(170deg)" },
  "50%": { transform: "rotate(180deg)" },
  "60%": { transform: "rotate(190deg)" },
  "90%": { transform: "rotate(350deg)" },
  "100%": { transform: "rotate(360deg)" }
}), XI = I.div(({ crashed: e, failed: t, running: o, updated: i, theme: r }) => ({
  position: "relative",
  lineHeight: "16px",
  width: "100%",
  padding: 1,
  overflow: "hidden",
  backgroundColor: `var(--sb-sidebar-bottom-card-background, ${r.background.content})`,
  borderRadius: `var(--sb-sidebar-bottom-card-border-radius, ${r.appBorderRadius + 1}px)`,
  boxShadow: `inset 0 0 0 1px ${e && !o ? r.color.negative : i ? r.color.positive : r.appBorderColor}, var(--sb-sidebar-bottom-card-box-shad\
ow, 0 1px 2px 0 rgba(0, 0, 0, 0.05), 0px -5px 20px 10px ${r.background.app})`,
  transition: "box-shadow 1s",
  "&:after": {
    content: '""',
    display: o ? "block" : "none",
    position: "absolute",
    left: "50%",
    top: "50%",
    marginLeft: "calc(max(100vw, 100vh) * -0.5)",
    marginTop: "calc(max(100vw, 100vh) * -0.5)",
    height: "max(100vw, 100vh)",
    width: "max(100vw, 100vh)",
    animation: `${QI} 3s linear infinite`,
    background: t ? (
      // Hardcoded colors to prevent themes from messing with them (orange+gold, secondary+seafoam)
      "conic-gradient(transparent 90deg, #FC521F 150deg, #FFAE00 210deg, transparent 270deg)"
    ) : "conic-gradient(transparent 90deg, #029CFD 150deg, #37D5D3 210deg, transparent 270deg)",
    opacity: 1,
    willChange: "auto"
  }
})), ZI = I.div(({ theme: e }) => ({
  position: "relative",
  zIndex: 1,
  borderRadius: e.appBorderRadius,
  backgroundColor: e.background.content,
  display: "flex",
  flexDirection: "column-reverse",
  "&:hover #testing-module-collapse-toggle": {
    opacity: 1
  }
})), JI = I.div(({ theme: e }) => ({
  overflow: "hidden",
  willChange: "auto",
  boxShadow: `inset 0 -1px 0 ${e.appBorderColor}`
})), eS = I.div({
  display: "flex",
  flexDirection: "column"
}), tS = I.div(({ onClick: e }) => ({
  display: "flex",
  width: "100%",
  cursor: e ? "pointer" : "default",
  userSelect: "none",
  alignItems: "center",
  justifyContent: "space-between",
  overflow: "hidden",
  padding: 4,
  gap: 4
})), oS = I.div({
  display: "flex",
  flexBasis: "100%",
  containerType: "inline-size"
}), rS = I.div({
  display: "flex",
  justifyContent: "flex-end",
  gap: 4
}), nS = I(he)({
  opacity: 0,
  transition: "opacity 250ms",
  willChange: "auto",
  "&:focus, &:hover": {
    opacity: 1
  }
}), iS = I(he)({
  // 90px is the width of the button when the label is visible
  "@container (max-width: 90px)": {
    span: {
      display: "none"
    }
  }
}), Wd = I(he)(
  { minWidth: 28 },
  ({ active: e, status: t, theme: o }) => !e && (o.base === "light" ? {
    background: {
      negative: o.background.negative,
      warning: o.background.warning
    }[t],
    color: {
      negative: o.color.negativeText,
      warning: o.color.warningText
    }[t]
  } : {
    background: {
      negative: `${o.color.negative}22`,
      warning: `${o.color.warning}22`
    }[t],
    color: {
      negative: o.color.negative,
      warning: o.color.warning
    }[t]
  })
), sS = I.div(({ theme: e }) => ({
  padding: 4,
  "&:not(:last-child)": {
    boxShadow: `inset 0 -1px 0 ${e.appBorderColor}`
  }
})), Vd = /* @__PURE__ */ a(({
  registeredTestProviders: e,
  testProviderStates: t,
  hasStatuses: o,
  clearStatuses: i,
  onRunAll: r,
  errorCount: n,
  errorsActive: l,
  setErrorsActive: u,
  warningCount: c,
  warningsActive: d,
  setWarningsActive: p,
  successCount: f
}) => {
  let h = U(null), y = U(null), [m, b] = K(Us), [x, E] = K(!0), [g, v] = K(!1), [S, w] = K(!1), k = U();
  H(() => {
    let P = Jt.onSettingsChanged(() => {
      w(!0), clearTimeout(k.current), k.current = setTimeout(() => {
        w(!1);
      }, 1e3);
    });
    return () => {
      P(), clearTimeout(k.current);
    };
  }, []), H(() => {
    if (y.current) {
      b(y.current?.getBoundingClientRect().height || Us);
      let P = new ResizeObserver(() => {
        requestAnimationFrame(() => {
          if (y.current && !x) {
            let D = y.current?.getBoundingClientRect().height || Us;
            b(D);
          }
        });
      });
      return P.observe(y.current), () => P.disconnect();
    }
  }, [x]);
  let _ = A((P, D) => {
    P?.stopPropagation(), v(!0), E((M) => D ?? !M), h.current && clearTimeout(h.current), h.current = setTimeout(() => {
      v(!1);
    }, 250);
  }, []), C = Object.values(t).some(
    (P) => P === "test-provider-state:running"
  ), T = Object.values(t).some(
    (P) => P === "test-provider-state:crashed"
  ), O = Object.values(e).length > 0;
  return H(() => {
    T && x && _(void 0, !1);
  }, [T, x, _]), zd(
    T ? "critical" : n > 0 ? "negative" : c > 0 ? "warning" : C ? "active" : f > 0 ? "positive" : void 0
  ), !O && !n && !c ? null : /* @__PURE__ */ s.createElement(
    XI,
    {
      id: "storybook-testing-module",
      running: C,
      crashed: T,
      failed: n > 0,
      updated: S,
      "data-updated": S
    },
    /* @__PURE__ */ s.createElement(ZI, null, /* @__PURE__ */ s.createElement(tS, { ...O ? { onClick: /* @__PURE__ */ a((P) => _(P), "onClic\
k") } : {} }, /* @__PURE__ */ s.createElement(oS, null, O && /* @__PURE__ */ s.createElement(
      ve,
      {
        hasChrome: !1,
        tooltip: /* @__PURE__ */ s.createElement(rt, { note: C ? "Running tests..." : "Start all tests" }),
        trigger: "hover"
      },
      /* @__PURE__ */ s.createElement(
        iS,
        {
          size: "medium",
          variant: "ghost",
          padding: "small",
          onClick: (P) => {
            P.stopPropagation(), r();
          },
          disabled: C
        },
        /* @__PURE__ */ s.createElement(jn, null),
        /* @__PURE__ */ s.createElement("span", null, C ? "Running..." : "Run tests")
      )
    )), /* @__PURE__ */ s.createElement(rS, null, O && /* @__PURE__ */ s.createElement(
      ve,
      {
        hasChrome: !1,
        tooltip: /* @__PURE__ */ s.createElement(
          rt,
          {
            note: x ? "Expand testing module" : "Collapse testing module"
          }
        ),
        trigger: "hover"
      },
      /* @__PURE__ */ s.createElement(
        nS,
        {
          size: "medium",
          variant: "ghost",
          padding: "small",
          onClick: (P) => _(P),
          id: "testing-module-collapse-toggle",
          "aria-label": x ? "Expand testing module" : "Collapse testing module"
        },
        /* @__PURE__ */ s.createElement(
          _n,
          {
            style: {
              transform: x ? "none" : "rotate(180deg)",
              transition: "transform 250ms",
              willChange: "auto"
            }
          }
        )
      )
    ), n > 0 && /* @__PURE__ */ s.createElement(
      ve,
      {
        hasChrome: !1,
        tooltip: /* @__PURE__ */ s.createElement(rt, { note: "Toggle errors" }),
        trigger: "hover"
      },
      /* @__PURE__ */ s.createElement(
        Wd,
        {
          id: "errors-found-filter",
          size: "medium",
          variant: "ghost",
          padding: n < 10 ? "medium" : "small",
          status: "negative",
          active: l,
          onClick: (P) => {
            P.stopPropagation(), u(!l);
          },
          "aria-label": "Toggle errors"
        },
        n < 1e3 ? n : "999+"
      )
    ), c > 0 && /* @__PURE__ */ s.createElement(
      ve,
      {
        hasChrome: !1,
        tooltip: /* @__PURE__ */ s.createElement(rt, { note: "Toggle warnings" }),
        trigger: "hover"
      },
      /* @__PURE__ */ s.createElement(
        Wd,
        {
          id: "warnings-found-filter",
          size: "medium",
          variant: "ghost",
          padding: c < 10 ? "medium" : "small",
          status: "warning",
          active: d,
          onClick: (P) => {
            P.stopPropagation(), p(!d);
          },
          "aria-label": "Toggle warnings"
        },
        c < 1e3 ? c : "999+"
      )
    ), o && /* @__PURE__ */ s.createElement(
      ve,
      {
        hasChrome: !1,
        tooltip: /* @__PURE__ */ s.createElement(
          rt,
          {
            note: C ? "Can't clear statuses while tests are running" : "Clear all statuses"
          }
        ),
        trigger: "hover"
      },
      /* @__PURE__ */ s.createElement(
        ee,
        {
          id: "clear-statuses",
          size: "medium",
          onClick: (P) => {
            P.stopPropagation(), i();
          },
          disabled: C,
          "aria-label": C ? "Can't clear statuses while tests are running" : "Clear all statuses"
        },
        /* @__PURE__ */ s.createElement(Yn, null)
      )
    ))), O && /* @__PURE__ */ s.createElement(
      JI,
      {
        "data-testid": "collapse",
        ...x && { inert: "" },
        style: {
          transition: g ? "max-height 250ms" : "max-height 0ms",
          display: O ? "block" : "none",
          maxHeight: x ? 0 : m
        }
      },
      /* @__PURE__ */ s.createElement(eS, { ref: y }, Object.values(e).map((P) => {
        let { render: D, id: M } = P;
        return D ? /* @__PURE__ */ s.createElement(sS, { key: M, "data-module-id": M }, /* @__PURE__ */ s.createElement(D, null)) : (Ha.warn(
          `No render function found for test provider with id '${M}', skipping...`
        ), null);
      }))
    ))
  );
}, "TestingModule");

// src/manager/components/sidebar/SidebarBottom.tsx
var aS = "sidebar-bottom-spacer", lS = "sidebar-bottom-wrapper", uS = /* @__PURE__ */ a(() => !0, "filterNone"), cS = /* @__PURE__ */ a(({ statuses: e = {} }) => Object.
values(e).some(({ value: t }) => t === "status-value:warning"), "filterWarn"), pS = /* @__PURE__ */ a(({ statuses: e = {} }) => Object.values(
e).some(({ value: t }) => t === "status-value:error"), "filterError"), dS = /* @__PURE__ */ a(({ statuses: e = {} }) => Object.values(e).some(
  ({ value: t }) => ["status-value:warning", "status-value:error"].includes(t)
), "filterBoth"), fS = /* @__PURE__ */ a((e = !1, t = !1) => e && t ? dS : e ? cS : t ? pS : uS, "getFilter"), mS = I.div({
  pointerEvents: "none"
}), hS = I.div(({ theme: e }) => ({
  position: "absolute",
  bottom: 0,
  left: 0,
  right: 0,
  padding: "12px 0",
  margin: "0 12px",
  display: "flex",
  flexDirection: "column",
  gap: 12,
  color: e.color.defaultText,
  fontSize: e.typography.size.s1,
  overflow: "hidden",
  "&:empty": {
    display: "none"
  },
  // Integrators can use these to style their custom additions
  "--sb-sidebar-bottom-card-background": e.background.content,
  "--sb-sidebar-bottom-card-border": `1px solid ${e.appBorderColor}`,
  "--sb-sidebar-bottom-card-border-radius": `${e.appBorderRadius + 1}px`,
  "--sb-sidebar-bottom-card-box-shadow": `0 1px 2px 0 rgba(0, 0, 0, 0.05), 0px -5px 20px 10px ${e.background.app}`
})), gS = /* @__PURE__ */ a(({
  api: e,
  notifications: t = [],
  errorCount: o,
  warningCount: i,
  successCount: r,
  hasStatuses: n,
  isDevelopment: l,
  testProviderStates: u,
  registeredTestProviders: c,
  onRunAll: d
}) => {
  let p = U(null), f = U(null), [h, y] = K(!1), [m, b] = K(!1);
  return H(() => {
    if (p.current && f.current) {
      let x = new ResizeObserver(() => {
        p.current && f.current && (p.current.style.height = `${f.current.scrollHeight}px`);
      });
      return x.observe(f.current), () => x.disconnect();
    }
  }, []), H(() => {
    let x = fS(i > 0 && h, o > 0 && m);
    e.experimental_setFilter("sidebar-bottom-filter", x);
  }, [e, i, o, h, m]), !i && !o && Object.values(c).length === 0 && t.length === 0 ? null : /* @__PURE__ */ s.createElement(Ee, null, /* @__PURE__ */ s.
  createElement(mS, { id: aS, ref: p }), /* @__PURE__ */ s.createElement(hS, { id: lS, ref: f }, /* @__PURE__ */ s.createElement(Sr, { notifications: t,
  clearNotification: e.clearNotification }), l && /* @__PURE__ */ s.createElement(
    Vd,
    {
      registeredTestProviders: c,
      testProviderStates: u,
      onRunAll: /* @__PURE__ */ a(() => {
        d(), b(!1), y(!1);
      }, "onRunAll"),
      hasStatuses: n,
      clearStatuses: /* @__PURE__ */ a(() => {
        At.unset(), Jt.clearAll(), b(!1), y(!1);
      }, "clearStatuses"),
      errorCount: o,
      errorsActive: m,
      setErrorsActive: b,
      warningCount: i,
      warningsActive: h,
      setWarningsActive: y,
      successCount: r
    }
  )));
}, "SidebarBottomBase"), jd = /* @__PURE__ */ a(({ isDevelopment: e }) => {
  let t = oe(), o = t.getElements(Ce.experimental_TEST_PROVIDER), { notifications: i } = Ne(), { hasStatuses: r, errorCount: n, warningCount: l,
  successCount: u } = Eo(
    (d) => Object.values(d).reduce(
      (p, f) => (Object.values(f).forEach((h) => {
        p.hasStatuses = !0, h.value === "status-value:error" && (p.errorCount += 1), h.value === "status-value:warning" && (p.warningCount +=
        1), h.value === "status-value:success" && (p.successCount += 1);
      }), p),
      { errorCount: 0, warningCount: 0, successCount: 0, hasStatuses: !1 }
    )
  ), c = ri();
  return /* @__PURE__ */ s.createElement(
    gS,
    {
      api: t,
      notifications: i,
      hasStatuses: r,
      errorCount: n,
      warningCount: l,
      successCount: u,
      isDevelopment: e,
      testProviderStates: c,
      registeredTestProviders: o,
      onRunAll: Jt.runAll
    }
  );
}, "SidebarBottom");

// src/manager/components/sidebar/TagsFilterPanel.tsx
var yS = /* @__PURE__ */ new Set(["play-fn"]), bS = I.div({
  minWidth: 180,
  maxWidth: 220
}), Kd = /* @__PURE__ */ a(({
  api: e,
  allTags: t,
  selectedTags: o,
  toggleTag: i,
  isDevelopment: r
}) => {
  let n = t.filter((c) => !yS.has(c)), l = e.getDocsUrl({ subpath: "writing-stories/tags#filtering-by-custom-tags" }), u = [
    t.map((c) => {
      let d = o.includes(c), p = `tag-${c}`;
      return {
        id: p,
        title: c,
        right: /* @__PURE__ */ s.createElement(
          "input",
          {
            type: "checkbox",
            id: p,
            name: p,
            value: c,
            checked: d,
            onChange: () => {
            }
          }
        ),
        onClick: /* @__PURE__ */ a(() => i(c), "onClick")
      };
    })
  ];
  return t.length === 0 && u.push([
    {
      id: "no-tags",
      title: "There are no tags. Use tags to organize and filter your Storybook.",
      isIndented: !1
    }
  ]), n.length === 0 && r && u.push([
    {
      id: "tags-docs",
      title: "Learn how to add tags",
      icon: /* @__PURE__ */ s.createElement(tt, null),
      href: l
    }
  ]), /* @__PURE__ */ s.createElement(bS, null, /* @__PURE__ */ s.createElement(ot, { links: u }));
}, "TagsFilterPanel");

// src/manager/components/sidebar/TagsFilter.tsx
var vS = "tags-filter", xS = /* @__PURE__ */ new Set([
  "dev",
  "docs-only",
  "test-only",
  "autodocs",
  "test",
  "attached-mdx",
  "unattached-mdx"
]), IS = I.div({
  position: "relative"
}), SS = I(or)(({ theme: e }) => ({
  position: "absolute",
  top: 7,
  right: 7,
  transform: "translate(50%, -50%)",
  display: "flex",
  alignItems: "center",
  justifyContent: "center",
  padding: 3,
  height: 6,
  minWidth: 6,
  lineHeight: "px",
  boxShadow: `${e.barSelectedColor} 0 0 0 1px inset`,
  fontSize: e.typography.size.s1 - 1,
  background: e.color.secondary,
  color: e.color.lightest
})), $d = /* @__PURE__ */ a(({
  api: e,
  indexJson: t,
  initialSelectedTags: o = [],
  isDevelopment: i
}) => {
  let [r, n] = K(o), [l, u] = K(!1), c = r.length > 0;
  H(() => {
    e.experimental_setFilter(vS, (y) => r.length === 0 ? !0 : r.some((m) => y.tags?.includes(m)));
  }, [e, r]);
  let d = Object.values(t.entries).reduce((y, m) => (m.tags?.forEach((b) => {
    xS.has(b) || y.add(b);
  }), y), /* @__PURE__ */ new Set()), p = A(
    (y) => {
      r.includes(y) ? n(r.filter((m) => m !== y)) : n([...r, y]);
    },
    [r, n]
  ), f = A(
    (y) => {
      y.preventDefault(), u(!l);
    },
    [l, u]
  );
  if (d.size === 0 && !i)
    return null;
  let h = Array.from(d);
  return h.sort(), /* @__PURE__ */ s.createElement(
    ve,
    {
      placement: "bottom",
      trigger: "click",
      onVisibleChange: u,
      tooltip: () => /* @__PURE__ */ s.createElement(
        Kd,
        {
          api: e,
          allTags: h,
          selectedTags: r,
          toggleTag: p,
          isDevelopment: i
        }
      ),
      closeOnOutsideClick: !0
    },
    /* @__PURE__ */ s.createElement(IS, null, /* @__PURE__ */ s.createElement(ee, { key: "tags", title: "Tag filters", active: c, onClick: f },
    /* @__PURE__ */ s.createElement(Rn, null)), r.length > 0 && /* @__PURE__ */ s.createElement(SS, null))
  );
}, "TagsFilter");

// src/manager/components/sidebar/useLastViewed.ts
var xn = Ve(Ud(), 1);
var Gd = qi((e) => xn.default.set("lastViewedStoryIds", e), 1e3), qd = /* @__PURE__ */ a((e) => {
  let t = G(() => {
    let r = xn.default.get("lastViewedStoryIds");
    return !r || !Array.isArray(r) ? [] : r.some((n) => typeof n == "object" && n.storyId && n.refId) ? r : [];
  }, [xn.default]), o = U(t), i = A(
    (r) => {
      let n = o.current, l = n.findIndex(
        ({ storyId: u, refId: c }) => u === r.storyId && c === r.refId
      );
      l !== 0 && (l === -1 ? o.current = [r, ...n] : o.current = [r, ...n.slice(0, l), ...n.slice(l + 1)], Gd(o.current));
    },
    [o]
  );
  return H(() => {
    e && i(e);
  }, [e]), {
    getLastViewed: A(() => o.current, [o]),
    clearLastViewed: A(() => {
      o.current = o.current.slice(0, 1), Gd(o.current);
    }, [o])
  };
}, "useLastViewed");

// src/manager/components/sidebar/Sidebar.tsx
var lt = "storybook_internal", wS = I.nav(({ theme: e }) => ({
  position: "absolute",
  zIndex: 1,
  left: 0,
  top: 0,
  bottom: 0,
  right: 0,
  width: "100%",
  height: "100%",
  display: "flex",
  flexDirection: "column",
  background: e.background.content,
  [Qe]: {
    background: e.background.app
  }
})), ES = I(pt)({
  paddingLeft: 12,
  paddingRight: 12,
  paddingBottom: 20,
  paddingTop: 16,
  flex: 1
}), TS = I(rt)({
  margin: 0
}), CS = I(ee)(({ theme: e, isMobile: t }) => ({
  color: e.color.mediumdark,
  width: t ? 36 : 32,
  height: t ? 36 : 32,
  borderRadius: e.appBorderRadius + 2
})), _S = s.memo(/* @__PURE__ */ a(function({
  children: t,
  condition: o
}) {
  let [i, r] = s.Children.toArray(t);
  return /* @__PURE__ */ s.createElement(s.Fragment, null, /* @__PURE__ */ s.createElement("div", { style: { display: o ? "block" : "none" } },
  i), /* @__PURE__ */ s.createElement("div", { style: { display: o ? "none" : "block" } }, r));
}, "Swap")), kS = /* @__PURE__ */ a((e, t, o, i, r) => {
  let n = G(
    () => ({
      [lt]: {
        index: e,
        filteredIndex: e,
        indexError: t,
        previewInitialized: o,
        allStatuses: i,
        title: null,
        id: lt,
        url: "iframe.html"
      },
      ...r
    }),
    [r, e, t, o, i]
  );
  return G(() => ({ hash: n, entries: Object.entries(n) }), [n]);
}, "useCombination"), OS = se.STORYBOOK_RENDERER === "react", Yd = s.memo(/* @__PURE__ */ a(function({
  // @ts-expect-error (non strict)
  storyId: t = null,
  refId: o = lt,
  index: i,
  indexJson: r,
  indexError: n,
  allStatuses: l,
  previewInitialized: u,
  menu: c,
  menuHighlighted: d = !1,
  enableShortcuts: p = !0,
  isDevelopment: f = se.CONFIG_TYPE === "DEVELOPMENT",
  refs: h = {},
  onMenuClick: y,
  showCreateStoryButton: m = f && OS
}) {
  let [b, x] = K(!1), E = G(() => t && { storyId: t, refId: o }, [t, o]), g = kS(i, n, u, l, h), v = !i && !n, S = qd(E), { isMobile: w } = ge(),
  k = oe();
  return /* @__PURE__ */ s.createElement(wS, { className: "container sidebar-container", "aria-label": "Global" }, /* @__PURE__ */ s.createElement(
  ir, { vertical: !0, offset: 3, scrollbarSize: 6 }, /* @__PURE__ */ s.createElement(ES, { row: 1.6 }, /* @__PURE__ */ s.createElement(
    Sp,
    {
      className: "sidebar-header",
      menuHighlighted: d,
      menu: c,
      skipLinkHref: "#storybook-preview-wrapper",
      isLoading: v,
      onMenuClick: y
    }
  ), /* @__PURE__ */ s.createElement(
    Fd,
    {
      dataset: g,
      enableShortcuts: p,
      searchBarContent: m && /* @__PURE__ */ s.createElement(s.Fragment, null, /* @__PURE__ */ s.createElement(
        ve,
        {
          trigger: "hover",
          hasChrome: !1,
          tooltip: /* @__PURE__ */ s.createElement(TS, { note: "Create a new story" })
        },
        /* @__PURE__ */ s.createElement(
          CS,
          {
            "aria-label": "Create a new story",
            isMobile: w,
            onClick: () => {
              x(!0);
            },
            variant: "outline"
          },
          /* @__PURE__ */ s.createElement(Kn, null)
        )
      ), /* @__PURE__ */ s.createElement(
        wc,
        {
          open: b,
          onOpenChange: x
        }
      )),
      searchFieldContent: r && /* @__PURE__ */ s.createElement($d, { api: k, indexJson: r, isDevelopment: f }),
      ...S
    },
    ({
      query: _,
      results: C,
      isBrowsing: T,
      closeMenu: O,
      getMenuProps: P,
      getItemProps: D,
      highlightedIndex: M
    }) => /* @__PURE__ */ s.createElement(_S, { condition: T }, /* @__PURE__ */ s.createElement(
      bp,
      {
        dataset: g,
        selected: E,
        isLoading: v,
        isBrowsing: T
      }
    ), /* @__PURE__ */ s.createElement(
      Hd,
      {
        query: _,
        results: C,
        closeMenu: O,
        getMenuProps: P,
        getItemProps: D,
        highlightedIndex: M,
        enableShortcuts: p,
        isLoading: v,
        clearLastViewed: S.clearLastViewed
      }
    ))
  )), w || v ? null : /* @__PURE__ */ s.createElement(jd, { isDevelopment: f })));
}, "Sidebar"));

// src/manager/container/Menu.tsx
var PS = {
  storySearchField: "storybook-explorer-searchfield",
  storyListMenu: "storybook-explorer-menu",
  storyPanelRoot: "storybook-panel-root"
}, AS = I.span(({ theme: e }) => ({
  display: "inline-block",
  height: 16,
  lineHeight: "16px",
  textAlign: "center",
  fontSize: "11px",
  background: e.base === "light" ? "rgba(0,0,0,0.05)" : "rgba(255,255,255,0.05)",
  color: e.base === "light" ? e.color.dark : e.textMutedColor,
  borderRadius: 2,
  userSelect: "none",
  pointerEvents: "none",
  padding: "0 6px"
})), DS = I.code({
  padding: 0,
  verticalAlign: "middle",
  "& + &": {
    marginLeft: 6
  }
}), We = /* @__PURE__ */ a(({ keys: e }) => /* @__PURE__ */ s.createElement(AS, null, e.map((t) => /* @__PURE__ */ s.createElement(DS, { key: t },
Ye([t])))), "Shortcut"), Qd = /* @__PURE__ */ a((e, t, o, i, r, n, l) => {
  let u = t.getShortcutKeys(), c = G(
    () => ({
      id: "about",
      title: "About your Storybook",
      onClick: /* @__PURE__ */ a(() => t.changeSettingsTab("about"), "onClick"),
      icon: /* @__PURE__ */ s.createElement(Hn, null)
    }),
    [t]
  ), d = G(() => ({
    id: "documentation",
    title: "Documentation",
    href: t.getDocsUrl({ versioned: !0, renderer: !0 }),
    icon: /* @__PURE__ */ s.createElement(tt, null)
  }), [t]), p = e.whatsNewData?.status === "SUCCESS" && !e.disableWhatsNewNotifications, f = t.isWhatsNewUnread(), h = G(
    () => ({
      id: "whats-new",
      title: "What's new?",
      onClick: /* @__PURE__ */ a(() => t.changeSettingsTab("whats-new"), "onClick"),
      right: p && f && /* @__PURE__ */ s.createElement(or, { status: "positive" }, "Check it out"),
      icon: /* @__PURE__ */ s.createElement(Zn, null)
    }),
    [t, p, f]
  ), y = G(
    () => ({
      id: "shortcuts",
      title: "Keyboard shortcuts",
      onClick: /* @__PURE__ */ a(() => t.changeSettingsTab("shortcuts"), "onClick"),
      right: l ? /* @__PURE__ */ s.createElement(We, { keys: u.shortcutsPage }) : null,
      icon: /* @__PURE__ */ s.createElement(Pn, null)
    }),
    [t, l, u.shortcutsPage]
  ), m = G(
    () => ({
      id: "S",
      title: "Show sidebar",
      onClick: /* @__PURE__ */ a(() => t.toggleNav(), "onClick"),
      active: n,
      right: l ? /* @__PURE__ */ s.createElement(We, { keys: u.toggleNav }) : null,
      icon: n ? /* @__PURE__ */ s.createElement(Be, null) : null
    }),
    [t, l, u, n]
  ), b = G(
    () => ({
      id: "T",
      title: "Show toolbar",
      onClick: /* @__PURE__ */ a(() => t.toggleToolbar(), "onClick"),
      active: o,
      right: l ? /* @__PURE__ */ s.createElement(We, { keys: u.toolbar }) : null,
      icon: o ? /* @__PURE__ */ s.createElement(Be, null) : null
    }),
    [t, l, u, o]
  ), x = G(
    () => ({
      id: "A",
      title: "Show addons panel",
      onClick: /* @__PURE__ */ a(() => t.togglePanel(), "onClick"),
      active: r,
      right: l ? /* @__PURE__ */ s.createElement(We, { keys: u.togglePanel }) : null,
      icon: r ? /* @__PURE__ */ s.createElement(Be, null) : null
    }),
    [t, l, u, r]
  ), E = G(
    () => ({
      id: "D",
      title: "Change addons orientation",
      onClick: /* @__PURE__ */ a(() => t.togglePanelPosition(), "onClick"),
      right: l ? /* @__PURE__ */ s.createElement(We, { keys: u.panelPosition }) : null
    }),
    [t, l, u]
  ), g = G(
    () => ({
      id: "F",
      title: "Go full screen",
      onClick: /* @__PURE__ */ a(() => t.toggleFullscreen(), "onClick"),
      active: i,
      right: l ? /* @__PURE__ */ s.createElement(We, { keys: u.fullScreen }) : null,
      icon: i ? /* @__PURE__ */ s.createElement(Be, null) : null
    }),
    [t, l, u, i]
  ), v = G(
    () => ({
      id: "/",
      title: "Search",
      onClick: /* @__PURE__ */ a(() => t.focusOnUIElement(PS.storySearchField), "onClick"),
      right: l ? /* @__PURE__ */ s.createElement(We, { keys: u.search }) : null
    }),
    [t, l, u]
  ), S = G(
    () => ({
      id: "up",
      title: "Previous component",
      onClick: /* @__PURE__ */ a(() => t.jumpToComponent(-1), "onClick"),
      right: l ? /* @__PURE__ */ s.createElement(We, { keys: u.prevComponent }) : null
    }),
    [t, l, u]
  ), w = G(
    () => ({
      id: "down",
      title: "Next component",
      onClick: /* @__PURE__ */ a(() => t.jumpToComponent(1), "onClick"),
      right: l ? /* @__PURE__ */ s.createElement(We, { keys: u.nextComponent }) : null
    }),
    [t, l, u]
  ), k = G(
    () => ({
      id: "prev",
      title: "Previous story",
      onClick: /* @__PURE__ */ a(() => t.jumpToStory(-1), "onClick"),
      right: l ? /* @__PURE__ */ s.createElement(We, { keys: u.prevStory }) : null
    }),
    [t, l, u]
  ), _ = G(
    () => ({
      id: "next",
      title: "Next story",
      onClick: /* @__PURE__ */ a(() => t.jumpToStory(1), "onClick"),
      right: l ? /* @__PURE__ */ s.createElement(We, { keys: u.nextStory }) : null
    }),
    [t, l, u]
  ), C = G(
    () => ({
      id: "collapse",
      title: "Collapse all",
      onClick: /* @__PURE__ */ a(() => t.emit(ho), "onClick"),
      right: l ? /* @__PURE__ */ s.createElement(We, { keys: u.collapseAll }) : null
    }),
    [t, l, u]
  ), T = A(() => {
    let O = t.getAddonsShortcuts(), P = u;
    return Object.entries(O).filter(([D, { showInMenu: M }]) => M).map(([D, { label: M, action: F }]) => ({
      id: D,
      title: M,
      onClick: /* @__PURE__ */ a(() => F(), "onClick"),
      right: l ? /* @__PURE__ */ s.createElement(We, { keys: P[D] }) : null
    }));
  }, [t, l, u]);
  return G(
    () => [
      [
        c,
        ...e.whatsNewData?.status === "SUCCESS" ? [h] : [],
        d,
        ...l ? [y] : []
      ],
      [
        m,
        b,
        x,
        E,
        g,
        v,
        S,
        w,
        k,
        _,
        C
      ],
      T()
    ],
    [
      c,
      e,
      h,
      d,
      y,
      m,
      b,
      x,
      E,
      g,
      v,
      S,
      w,
      k,
      _,
      C,
      T,
      l
    ]
  );
}, "useMenu");

// src/manager/container/Sidebar.tsx
var MS = s.memo(/* @__PURE__ */ a(function({ onMenuClick: t }) {
  return /* @__PURE__ */ s.createElement(me, { filter: /* @__PURE__ */ a(({ state: i, api: r }) => {
    let {
      ui: { name: n, url: l, enableShortcuts: u },
      viewMode: c,
      storyId: d,
      refId: p,
      layout: { showToolbar: f },
      // FIXME: This is the actual `index.json` index where the `index` below
      // is actually the stories hash. We should fix this up and make it consistent.
      internal_index: h,
      filteredIndex: y,
      indexError: m,
      previewInitialized: b,
      refs: x
    } = i, E = Qd(
      i,
      r,
      f,
      r.getIsFullscreen(),
      r.getIsPanelShown(),
      r.getIsNavShown(),
      u
    ), g = i.whatsNewData?.status === "SUCCESS" && !i.disableWhatsNewNotifications;
    return {
      title: n,
      url: l,
      indexJson: h,
      index: y,
      indexError: m,
      previewInitialized: b,
      refs: x,
      storyId: d,
      refId: p,
      viewMode: c,
      menu: E,
      menuHighlighted: g && r.isWhatsNewUnread(),
      enableShortcuts: u
    };
  }, "mapper") }, (i) => {
    let r = Eo();
    return /* @__PURE__ */ s.createElement(Yd, { ...i, allStatuses: r, onMenuClick: t });
  });
}, "Sideber")), Xd = MS;

// src/manager/App.tsx
var Zd = /* @__PURE__ */ a(({ managerLayoutState: e, setManagerLayoutState: t, pages: o, hasTab: i }) => {
  let { setMobileAboutOpen: r } = ge();
  return /* @__PURE__ */ s.createElement(s.Fragment, null, /* @__PURE__ */ s.createElement(eo, { styles: Ea }), /* @__PURE__ */ s.createElement(
    Yl,
    {
      hasTab: i,
      managerLayoutState: e,
      setManagerLayoutState: t,
      slotMain: /* @__PURE__ */ s.createElement(Vu, { id: "main", withLoader: !0 }),
      slotSidebar: /* @__PURE__ */ s.createElement(Xd, { onMenuClick: () => r((n) => !n) }),
      slotPanel: /* @__PURE__ */ s.createElement(Zl, null),
      slotPages: o.map(({ id: n, render: l }) => /* @__PURE__ */ s.createElement(l, { key: n }))
    }
  ));
}, "App");

// src/manager/provider.ts
var Gs = class Gs {
  getElements(t) {
    throw new Error("Provider.getElements() is not implemented!");
  }
  handleAPI(t) {
    throw new Error("Provider.handleAPI() is not implemented!");
  }
  getConfig() {
    return console.error("Provider.getConfig() is not implemented!"), {};
  }
};
a(Gs, "Provider");
var Yt = Gs;

// src/manager/settings/About.tsx
var LS = I.div({
  display: "flex",
  alignItems: "center",
  flexDirection: "column",
  marginTop: 40
}), NS = I.header({
  marginBottom: 32,
  alignItems: "center",
  display: "flex",
  "> svg": {
    height: 48,
    width: "auto",
    marginRight: 8
  }
}), FS = I.div(({ theme: e }) => ({
  marginBottom: 24,
  display: "flex",
  flexDirection: "column",
  alignItems: "center",
  color: e.base === "light" ? e.color.dark : e.color.lightest,
  fontWeight: e.typography.weight.regular,
  fontSize: e.typography.size.s2
})), RS = I.div({
  display: "flex",
  flexDirection: "row",
  alignItems: "center",
  marginBottom: 24,
  marginTop: 24,
  gap: 16
}), Jd = I(Pe)(({ theme: e }) => ({
  "&&": {
    fontWeight: e.typography.weight.bold,
    color: e.base === "light" ? e.color.dark : e.color.light
  },
  "&:hover": {
    color: e.base === "light" ? e.color.darkest : e.color.lightest
  }
})), ef = /* @__PURE__ */ a(({ onNavigateToWhatsNew: e }) => /* @__PURE__ */ s.createElement(LS, null, /* @__PURE__ */ s.createElement(NS, null,
/* @__PURE__ */ s.createElement(sr, { alt: "Storybook" })), /* @__PURE__ */ s.createElement(Er, { onNavigateToWhatsNew: e }), /* @__PURE__ */ s.
createElement(FS, null, /* @__PURE__ */ s.createElement(RS, null, /* @__PURE__ */ s.createElement(he, { asChild: !0 }, /* @__PURE__ */ s.createElement(
"a", { href: "https://github.com/storybookjs/storybook" }, /* @__PURE__ */ s.createElement(vo, null), "GitHub")), /* @__PURE__ */ s.createElement(
he, { asChild: !0 }, /* @__PURE__ */ s.createElement("a", { href: "https://storybook.js.org/docs" }, /* @__PURE__ */ s.createElement(Pt, { style: {
display: "inline", marginRight: 5 } }), "Documentation"))), /* @__PURE__ */ s.createElement("div", null, "Open source software maintained by",
" ", /* @__PURE__ */ s.createElement(Jd, { href: "https://www.chromatic.com/" }, "Chromatic"), " and the", " ", /* @__PURE__ */ s.createElement(
Jd, { href: "https://github.com/storybookjs/storybook/graphs/contributors" }, "Storybook Community")))), "AboutScreen");

// src/manager/settings/AboutPage.tsx
var Ys = class Ys extends Le {
  componentDidMount() {
    let { api: t, notificationId: o } = this.props;
    t.clearNotification(o);
  }
  render() {
    let { children: t } = this.props;
    return t;
  }
};
a(Ys, "NotificationClearer");
var qs = Ys, tf = /* @__PURE__ */ a(() => {
  let e = oe(), t = Ne(), o = A(() => {
    e.changeSettingsTab("whats-new");
  }, [e]);
  return /* @__PURE__ */ s.createElement(qs, { api: e, notificationId: "update" }, /* @__PURE__ */ s.createElement(
    ef,
    {
      onNavigateToWhatsNew: t.whatsNewData?.status === "SUCCESS" ? o : void 0
    }
  ));
}, "AboutPage");

// src/manager/settings/SettingsFooter.tsx
var BS = I.div(({ theme: e }) => ({
  display: "flex",
  paddingTop: 20,
  marginTop: 20,
  borderTop: `1px solid ${e.appBorderColor}`,
  fontWeight: e.typography.weight.bold,
  "& > * + *": {
    marginLeft: 20
  }
})), HS = /* @__PURE__ */ a((e) => /* @__PURE__ */ s.createElement(BS, { ...e }, /* @__PURE__ */ s.createElement(Pe, { secondary: !0, href: "\
https://storybook.js.org", cancel: !1, target: "_blank" }, "Docs"), /* @__PURE__ */ s.createElement(Pe, { secondary: !0, href: "https://gith\
ub.com/storybookjs/storybook", cancel: !1, target: "_blank" }, "GitHub"), /* @__PURE__ */ s.createElement(
  Pe,
  {
    secondary: !0,
    href: "https://storybook.js.org/community#support",
    cancel: !1,
    target: "_blank"
  },
  "Support"
)), "SettingsFooter"), of = HS;

// src/manager/settings/shortcuts.tsx
var zS = I.header(({ theme: e }) => ({
  marginBottom: 20,
  fontSize: e.typography.size.m3,
  fontWeight: e.typography.weight.bold,
  alignItems: "center",
  display: "flex"
})), rf = I.div(({ theme: e }) => ({
  fontWeight: e.typography.weight.bold
})), WS = I.div({
  alignSelf: "flex-end",
  display: "grid",
  margin: "10px 0",
  gridTemplateColumns: "1fr 1fr 12px",
  "& > *:last-of-type": {
    gridColumn: "2 / 2",
    justifySelf: "flex-end",
    gridRow: "1"
  }
}), VS = I.div(({ theme: e }) => ({
  padding: "6px 0",
  borderTop: `1px solid ${e.appBorderColor}`,
  display: "grid",
  gridTemplateColumns: "1fr 1fr 0px"
})), jS = I.div({
  display: "grid",
  gridTemplateColumns: "1fr",
  gridAutoRows: "minmax(auto, auto)",
  marginBottom: 20
}), KS = I.div({
  alignSelf: "center"
}), $S = I(rr.Input)(
  ({ valid: e, theme: t }) => e === "error" ? {
    animation: `${t.animation.jiggle} 700ms ease-out`
  } : {},
  {
    display: "flex",
    width: 80,
    flexDirection: "column",
    justifySelf: "flex-end",
    paddingLeft: 4,
    paddingRight: 4,
    textAlign: "center"
  }
), US = Dt`
0%,100% { opacity: 0; }
  50% { opacity: 1; }
`, GS = I(Be)(
  ({ valid: e, theme: t }) => e === "valid" ? {
    color: t.color.positive,
    animation: `${US} 2s ease forwards`
  } : {
    opacity: 0
  },
  {
    alignSelf: "center",
    display: "flex",
    marginLeft: 10,
    height: 14,
    width: 14
  }
), qS = I.div(({ theme: e }) => ({
  fontSize: e.typography.size.s2,
  padding: "3rem 20px",
  maxWidth: 600,
  margin: "0 auto"
})), YS = {
  fullScreen: "Go full screen",
  togglePanel: "Toggle addons",
  panelPosition: "Toggle addons orientation",
  toggleNav: "Toggle sidebar",
  toolbar: "Toggle canvas toolbar",
  search: "Focus search",
  focusNav: "Focus sidebar",
  focusIframe: "Focus canvas",
  focusPanel: "Focus addons",
  prevComponent: "Previous component",
  nextComponent: "Next component",
  prevStory: "Previous story",
  nextStory: "Next story",
  shortcutsPage: "Go to shortcuts page",
  aboutPage: "Go to about page",
  collapseAll: "Collapse all items on sidebar",
  expandAll: "Expand all items on sidebar",
  remount: "Remount component"
}, QS = ["escape"];
function Qs(e) {
  return Object.entries(e).reduce(
    // @ts-expect-error (non strict)
    (t, [o, i]) => QS.includes(o) ? t : { ...t, [o]: { shortcut: i, error: !1 } },
    {}
  );
}
a(Qs, "toShortcutState");
var Xs = class Xs extends Le {
  constructor(o) {
    super(o);
    this.onKeyDown = /* @__PURE__ */ a((o) => {
      let { activeFeature: i, shortcutKeys: r } = this.state;
      if (o.key === "Backspace")
        return this.restoreDefault();
      let n = va(o);
      if (!n)
        return !1;
      let l = !!Object.entries(r).find(
        ([u, { shortcut: c }]) => u !== i && c && xa(n, c)
      );
      return this.setState({
        shortcutKeys: { ...r, [i]: { shortcut: n, error: l } }
      });
    }, "onKeyDown");
    this.onFocus = /* @__PURE__ */ a((o) => () => {
      let { shortcutKeys: i } = this.state;
      this.setState({
        activeFeature: o,
        shortcutKeys: {
          ...i,
          [o]: { shortcut: null, error: !1 }
        }
      });
    }, "onFocus");
    this.onBlur = /* @__PURE__ */ a(async () => {
      let { shortcutKeys: o, activeFeature: i } = this.state;
      if (o[i]) {
        let { shortcut: r, error: n } = o[i];
        return !r || n ? this.restoreDefault() : this.saveShortcut();
      }
      return !1;
    }, "onBlur");
    this.saveShortcut = /* @__PURE__ */ a(async () => {
      let { activeFeature: o, shortcutKeys: i } = this.state, { setShortcut: r } = this.props;
      await r(o, i[o].shortcut), this.setState({ successField: o });
    }, "saveShortcut");
    this.restoreDefaults = /* @__PURE__ */ a(async () => {
      let { restoreAllDefaultShortcuts: o } = this.props, i = await o();
      return this.setState({ shortcutKeys: Qs(i) });
    }, "restoreDefaults");
    this.restoreDefault = /* @__PURE__ */ a(async () => {
      let { activeFeature: o, shortcutKeys: i } = this.state, { restoreDefaultShortcut: r } = this.props, n = await r(o);
      return this.setState({
        shortcutKeys: {
          ...i,
          ...Qs({ [o]: n })
        }
      });
    }, "restoreDefault");
    this.displaySuccessMessage = /* @__PURE__ */ a((o) => {
      let { successField: i, shortcutKeys: r } = this.state;
      return o === i && r[o].error === !1 ? "valid" : void 0;
    }, "displaySuccessMessage");
    this.displayError = /* @__PURE__ */ a((o) => {
      let { activeFeature: i, shortcutKeys: r } = this.state;
      return o === i && r[o].error === !0 ? "error" : void 0;
    }, "displayError");
    this.renderKeyInput = /* @__PURE__ */ a(() => {
      let { shortcutKeys: o, addonsShortcutLabels: i } = this.state;
      return Object.entries(o).map(([n, { shortcut: l }]) => /* @__PURE__ */ s.createElement(VS, { key: n }, /* @__PURE__ */ s.createElement(
      KS, null, YS[n] || i[n]), /* @__PURE__ */ s.createElement(
        $S,
        {
          spellCheck: "false",
          valid: this.displayError(n),
          className: "modalInput",
          onBlur: this.onBlur,
          onFocus: this.onFocus(n),
          onKeyDown: this.onKeyDown,
          value: l ? Ye(l) : "",
          placeholder: "Type keys",
          readOnly: !0
        }
      ), /* @__PURE__ */ s.createElement(GS, { valid: this.displaySuccessMessage(n) })));
    }, "renderKeyInput");
    this.renderKeyForm = /* @__PURE__ */ a(() => /* @__PURE__ */ s.createElement(jS, null, /* @__PURE__ */ s.createElement(WS, null, /* @__PURE__ */ s.
    createElement(rf, null, "Commands"), /* @__PURE__ */ s.createElement(rf, null, "Shortcut")), this.renderKeyInput()), "renderKeyForm");
    this.state = {
      // @ts-expect-error (non strict)
      activeFeature: void 0,
      // @ts-expect-error (non strict)
      successField: void 0,
      // The initial shortcutKeys that come from props are the defaults/what was saved
      // As the user interacts with the page, the state stores the temporary, unsaved shortcuts
      // This object also includes the error attached to each shortcut
      // @ts-expect-error (non strict)
      shortcutKeys: Qs(o.shortcutKeys),
      addonsShortcutLabels: o.addonsShortcutLabels
    };
  }
  render() {
    let o = this.renderKeyForm();
    return /* @__PURE__ */ s.createElement(qS, null, /* @__PURE__ */ s.createElement(zS, null, "Keyboard shortcuts"), o, /* @__PURE__ */ s.createElement(
      he,
      {
        variant: "outline",
        size: "small",
        id: "restoreDefaultsHotkeys",
        onClick: this.restoreDefaults
      },
      "Restore defaults"
    ), /* @__PURE__ */ s.createElement(of, null));
  }
};
a(Xs, "ShortcutsScreen");
var In = Xs;

// src/manager/settings/ShortcutsPage.tsx
var nf = /* @__PURE__ */ a(() => /* @__PURE__ */ s.createElement(me, null, ({
  api: {
    getShortcutKeys: e,
    getAddonsShortcutLabels: t,
    setShortcut: o,
    restoreDefaultShortcut: i,
    restoreAllDefaultShortcuts: r
  }
}) => /* @__PURE__ */ s.createElement(
  In,
  {
    shortcutKeys: e(),
    addonsShortcutLabels: t(),
    setShortcut: o,
    restoreDefaultShortcut: i,
    restoreAllDefaultShortcuts: r
  }
)), "ShortcutsPage");

// src/manager/settings/whats_new.tsx
var sf = I.div({
  top: "50%",
  position: "absolute",
  transform: "translateY(-50%)",
  width: "100%",
  textAlign: "center"
}), XS = I.div({
  position: "relative",
  height: "32px"
}), af = I.div(({ theme: e }) => ({
  paddingTop: "12px",
  color: e.textMutedColor,
  maxWidth: "295px",
  margin: "0 auto",
  fontSize: `${e.typography.size.s1}px`,
  lineHeight: "16px"
})), ZS = I.div(({ theme: e }) => ({
  position: "absolute",
  width: "100%",
  bottom: "40px",
  background: e.background.bar,
  fontSize: "13px",
  borderTop: "1px solid",
  borderColor: e.appBorderColor,
  padding: "8px 12px",
  display: "flex",
  alignItems: "center",
  justifyContent: "space-between"
})), JS = /* @__PURE__ */ a(({
  isNotificationsEnabled: e,
  onToggleNotifications: t,
  onCopyLink: o
}) => {
  let i = De(), [r, n] = K("Copy Link"), l = /* @__PURE__ */ a(() => {
    o(), n("Copied!"), setTimeout(() => n("Copy Link"), 4e3);
  }, "copyLink");
  return /* @__PURE__ */ s.createElement(ZS, null, /* @__PURE__ */ s.createElement("div", { style: { display: "flex", alignItems: "center", gap: 10 } },
  /* @__PURE__ */ s.createElement(Bn, { color: i.color.mediumdark }), /* @__PURE__ */ s.createElement("div", null, "Share this with your tea\
m."), /* @__PURE__ */ s.createElement(he, { onClick: l, size: "small", variant: "ghost" }, r)), e ? /* @__PURE__ */ s.createElement(he, { size: "\
small", variant: "ghost", onClick: t }, /* @__PURE__ */ s.createElement(Ln, null), "Hide notifications") : /* @__PURE__ */ s.createElement(he,
  { size: "small", variant: "ghost", onClick: t }, /* @__PURE__ */ s.createElement(Nn, null), "Show notifications"));
}, "WhatsNewFooter"), ew = I.iframe(
  {
    position: "absolute",
    top: 0,
    left: 0,
    right: 0,
    bottom: 0,
    border: 0,
    margin: 0,
    padding: 0,
    width: "100%",
    height: "calc(100% - 80px)",
    background: "white"
  },
  ({ isLoaded: e }) => ({ visibility: e ? "visible" : "hidden" })
), tw = I((e) => /* @__PURE__ */ s.createElement(go, { ...e }))(({ theme: e }) => ({
  color: e.textMutedColor,
  width: 32,
  height: 32,
  margin: "0 auto"
})), ow = /* @__PURE__ */ a(() => /* @__PURE__ */ s.createElement(sf, null, /* @__PURE__ */ s.createElement(XS, null, /* @__PURE__ */ s.createElement(
nr, null)), /* @__PURE__ */ s.createElement(af, null, "Loading...")), "WhatsNewLoader"), rw = /* @__PURE__ */ a(() => /* @__PURE__ */ s.createElement(
sf, null, /* @__PURE__ */ s.createElement(tw, null), /* @__PURE__ */ s.createElement(af, null, "The page couldn't be loaded. Check your inte\
rnet connection and try again.")), "MaxWaitTimeMessaging"), nw = /* @__PURE__ */ a(({
  didHitMaxWaitTime: e,
  isLoaded: t,
  onLoad: o,
  url: i,
  onCopyLink: r,
  onToggleNotifications: n,
  isNotificationsEnabled: l
}) => /* @__PURE__ */ s.createElement(Ee, null, !t && !e && /* @__PURE__ */ s.createElement(ow, null), e ? /* @__PURE__ */ s.createElement(rw,
null) : /* @__PURE__ */ s.createElement(s.Fragment, null, /* @__PURE__ */ s.createElement(ew, { isLoaded: t, onLoad: o, src: i, title: "What\
's new?" }), /* @__PURE__ */ s.createElement(
  JS,
  {
    isNotificationsEnabled: l,
    onToggleNotifications: n,
    onCopyLink: r
  }
))), "PureWhatsNewScreen"), iw = 1e4, lf = /* @__PURE__ */ a(() => {
  let e = oe(), t = Ne(), { whatsNewData: o } = t, [i, r] = K(!1), [n, l] = K(!1);
  if (H(() => {
    let c = setTimeout(() => !i && l(!0), iw);
    return () => clearTimeout(c);
  }, [i]), o?.status !== "SUCCESS")
    return null;
  let u = !o.disableWhatsNewNotifications;
  return /* @__PURE__ */ s.createElement(
    nw,
    {
      didHitMaxWaitTime: n,
      isLoaded: i,
      onLoad: () => {
        e.whatsNewHasBeenRead(), r(!0);
      },
      url: o.url,
      isNotificationsEnabled: u,
      onCopyLink: () => {
        navigator.clipboard?.writeText(o.blogUrl ?? o.url);
      },
      onToggleNotifications: () => {
        u ? se.confirm("All update notifications will no longer be shown. Are you sure?") && e.toggleWhatsNewNotifications() : e.toggleWhatsNewNotifications();
      }
    }
  );
}, "WhatsNewScreen");

// src/manager/settings/whats_new_page.tsx
var uf = /* @__PURE__ */ a(() => /* @__PURE__ */ s.createElement(lf, null), "WhatsNewPage");

// src/manager/settings/index.tsx
var { document: cf } = se, sw = I.div(({ theme: e }) => ({
  display: "flex",
  justifyContent: "space-between",
  alignItems: "center",
  height: 40,
  boxShadow: `${e.appBorderColor}  0 -1px 0 0 inset`,
  background: e.barBg,
  paddingRight: 8
})), Zs = s.memo(/* @__PURE__ */ a(function({
  changeTab: t,
  id: o,
  title: i
}) {
  return /* @__PURE__ */ s.createElement(dr, null, ({ path: r }) => {
    let n = r.includes(`settings/${o}`);
    return /* @__PURE__ */ s.createElement(
      lr,
      {
        id: `tabbutton-${o}`,
        className: ["tabbutton"].concat(n ? ["tabbutton-active"] : []).join(" "),
        type: "button",
        key: "id",
        active: n,
        onClick: () => t(o),
        role: "tab"
      },
      i
    );
  });
}, "TabBarButton")), aw = I(ir)(({ theme: e }) => ({
  background: e.background.content
})), lw = /* @__PURE__ */ a(({ changeTab: e, onClose: t, enableShortcuts: o = !0, enableWhatsNew: i }) => (s.useEffect(() => {
  let r = /* @__PURE__ */ a((n) => {
    !o || n.repeat || Et(!1, n) && $e("Escape", n) && (n.preventDefault(), t());
  }, "handleEscape");
  return cf.addEventListener("keydown", r), () => cf.removeEventListener("keydown", r);
}, [o, t]), /* @__PURE__ */ s.createElement(Ee, null, /* @__PURE__ */ s.createElement(sw, { className: "sb-bar" }, /* @__PURE__ */ s.createElement(
ar, { role: "tablist" }, /* @__PURE__ */ s.createElement(Zs, { id: "about", title: "About", changeTab: e }), i && /* @__PURE__ */ s.createElement(
Zs, { id: "whats-new", title: "What's new?", changeTab: e }), /* @__PURE__ */ s.createElement(Zs, { id: "shortcuts", title: "Keyboard shortc\
uts", changeTab: e })), /* @__PURE__ */ s.createElement(
  ee,
  {
    onClick: (r) => (r.preventDefault(), t()),
    title: "Close settings page"
  },
  /* @__PURE__ */ s.createElement(je, null)
)), /* @__PURE__ */ s.createElement(aw, { vertical: !0, horizontal: !1 }, /* @__PURE__ */ s.createElement(To, { path: "about" }, /* @__PURE__ */ s.
createElement(tf, { key: "about" })), /* @__PURE__ */ s.createElement(To, { path: "whats-new" }, /* @__PURE__ */ s.createElement(uf, { key: "\
whats-new" })), /* @__PURE__ */ s.createElement(To, { path: "shortcuts" }, /* @__PURE__ */ s.createElement(nf, { key: "shortcuts" }))))), "P\
ages"), uw = /* @__PURE__ */ a(() => {
  let e = oe(), t = Ne(), o = /* @__PURE__ */ a((i) => e.changeSettingsTab(i), "changeTab");
  return /* @__PURE__ */ s.createElement(
    lw,
    {
      enableWhatsNew: t.whatsNewData?.status === "SUCCESS",
      enableShortcuts: t.ui.enableShortcuts,
      changeTab: o,
      onClose: e.closeSettings
    }
  );
}, "SettingsPages"), pf = {
  id: "settings",
  url: "/settings/",
  title: "Settings",
  type: be.experimental_PAGE,
  render: /* @__PURE__ */ a(() => /* @__PURE__ */ s.createElement(To, { path: "/settings/", startsWith: !0 }, /* @__PURE__ */ s.createElement(
  uw, null)), "render")
};

// src/manager/index.tsx
ni.displayName = "ThemeProvider";
vt.displayName = "HelmetProvider";
var cw = /* @__PURE__ */ a(({ provider: e }) => /* @__PURE__ */ s.createElement(vt, { key: "helmet.Provider" }, /* @__PURE__ */ s.createElement(
Ua, { key: "location.provider" }, /* @__PURE__ */ s.createElement(pw, { provider: e }))), "Root"), pw = /* @__PURE__ */ a(({ provider: e }) => {
  let t = qa();
  return /* @__PURE__ */ s.createElement(dr, { key: "location.consumer" }, (o) => /* @__PURE__ */ s.createElement(
    ba,
    {
      key: "manager",
      provider: e,
      ...o,
      navigate: t,
      docsOptions: se?.DOCS_OPTIONS || {}
    },
    (i) => {
      let { state: r, api: n } = i, l = A(
        (c) => {
          n.setSizes(c);
        },
        [n]
      ), u = G(
        () => [pf, ...Object.values(n.getElements(be.experimental_PAGE))],
        [Object.keys(n.getElements(be.experimental_PAGE)).join()]
      );
      return /* @__PURE__ */ s.createElement(ni, { key: "theme.provider", theme: Ta(r.theme) }, /* @__PURE__ */ s.createElement(xl, null, /* @__PURE__ */ s.
      createElement(
        Zd,
        {
          key: "app",
          pages: u,
          managerLayoutState: {
            ...r.layout,
            viewMode: r.viewMode
          },
          hasTab: !!n.getQueryParam("tab"),
          setManagerLayoutState: l
        }
      )));
    }
  ));
}, "Main");
function df(e, t) {
  if (!(t instanceof Yt))
    throw new $a();
  Ka(e).render(/* @__PURE__ */ s.createElement(cw, { key: "root", provider: t }));
}
a(df, "renderStorybookUI");

// src/manager/runtime.tsx
var dw = "CORE/WS_DISCONNECTED";
He.register(
  bt,
  () => He.add(bt, {
    title: bt,
    type: be.TOOL,
    match: /* @__PURE__ */ a(({ tabId: e }) => !e, "match"),
    render: /* @__PURE__ */ a(() => /* @__PURE__ */ s.createElement(ja, null), "render")
  })
);
var ea = class ea extends Yt {
  constructor() {
    super();
    this.wsDisconnected = !1;
    let o = sa({ page: "manager" });
    He.setChannel(o), o.emit(ua), this.addons = He, this.channel = o, se.__STORYBOOK_ADDONS_CHANNEL__ = o;
  }
  getElements(o) {
    return this.addons.getElements(o);
  }
  getConfig() {
    return this.addons.getConfig();
  }
  handleAPI(o) {
    this.addons.loadAddons(o), this.channel.on(ca, (i) => {
      this.wsDisconnected = !0, o.addNotification({
        id: dw,
        content: {
          headline: i.code === 3008 ? "Server timed out" : "Connection lost",
          subHeadline: "Please restart your Storybook server and reload the page"
        },
        icon: /* @__PURE__ */ s.createElement(Fn, { color: wa.negative }),
        link: void 0
      });
    });
  }
};
a(ea, "ReactProvider");
var Js = ea, { document: fw } = se, mw = fw.getElementById("root");
setTimeout(() => {
  df(mw, new Js());
}, 0);
