UNPKG

ghost

Version:

The professional publishing platform

21,680 lines 1.31 MB
import { j as a, f as sr, c as eu, P as wh, a as gs, u as bh, b as se, d as tt, e as jo, g as ye, h as go, i as vh, k as yh, l as tu, H as ct, m as nr, S as xo, n as me, F as tb, R as _e, o as Bt, p as nb, q as Gn, r as rb, B as He, s as sb, t as ab, v as wA, w as ob, E as ib, x as Ab, y as kh, z as lb, A as Mh, C as cb, D as ub, I as fb, G as fn, J as db, K as Lt, M as vt, L as mr, N as hb, T as Zr, O as Mt, Q as jh, U as pb, V as jt, W as Eh, X as ve, Y as We, Z as Ve, _ as mb, $ as gb, a0 as xb, a1 as da, a2 as rt, a3 as ha, a4 as rr, a5 as Ke, a6 as je, a7 as Dh, a8 as wb, a9 as Hn, aa as xs, ab as et, ac as Th, ad as bb, ae as vb, af as ut, ag as yb, ah as kb, ai as Nh, aj as Mb, ak as iA, al as ld, am as AA, an as ws, ao as ht, ap as Ch, aq as xr, ar as bs, as as bA, at as jb, au as cd, av as ud, aw as Et, ax as Ih, ay as Eb, az as pa, aA as wr, aB as gr, aC as ca, aD as br, aE as Wr, aF as Ph, aG as Db, aH as Tb, aI as Nb, aJ as Oh, aK as nu, aL as Cb, aM as Ib, aN as Pb, aO as ps, aP as Ob, aQ as lA, aR as cA, aS as ru, aT as zb, aU as su, aV as Hb, aW as Sb, aX as Rb, aY as Ze, aZ as Bb, a_ as zh, a$ as Hh, b0 as oa, b1 as au, b2 as Sh, b3 as Lb, b4 as io, b5 as vs, b6 as Qb, b7 as Xb, b8 as Rh, b9 as Bh, ba as Fb, bb as qb, bc as Gb, bd as Yb, be as fd, bf as Ub, bg as Jb, bh as Zb, bi as Ic, bj as Wb, bk as Vb, bl as Kb, bm as _b, bn as Lh, bo as Qh, bp as vA, bq as $b, br as ou, bs as Xh, bt as Fh, bu as dd, bv as bn, bw as qh, bx as ev, by as Eo, bz as iu, bA as tv, bB as nv, bC as wo, bD as Gh, bE as rv, bF as sv, bG as av, bH as Pc, bI as ov, bJ as ua, bK as Au, bL as iv, bM as Av, bN as lv, bO as cv, bP as Yh, bQ as uv, bR as fv, bS as dv, bT as hd, bU as pd, bV as md, bW as hv, bX as pv, bY as lu, bZ as mv, b_ as cu, b$ as uA, c0 as gv, c1 as xv, c2 as Oc, c3 as wv, c4 as bv, c5 as vv, c6 as Uh, c7 as yv, c8 as Jh, c9 as kv, ca as Mv, cb as jv, cc as Ev, cd as Dv, ce as Tv, cf as Xr, cg as gd, ch as xd, ci as Nv, cj as Cv, ck as Iv, cl as Pv } from "./index-BVxh86CD.mjs";
const Zh = ({ children: e, ...n }) => /* @__PURE__ */ a.jsx("div", { className: "flex h-full w-full flex-col px-8", ...n, children: /* @__PURE__ */ a.jsx("div", { className: "h-full w-full overflow-hidden rounded-t-[4px] shadow-sm", children: e }) }), Wh = ({ children: e, ...n }) => /* @__PURE__ */ a.jsx("div", { className: "flex h-[775px] w-[380px] flex-col rounded-3xl bg-white p-2 shadow-xl dark:bg-grey-900", ...n, children: /* @__PURE__ */ a.jsx("div", { className: "w-100 h-100 grow overflow-auto rounded-2xl border border-grey-100 dark:border-grey-950", children: e }) });
var yA = "Checkbox", [Ov, tk] = eu(yA), [zv, uu] = Ov(yA);
function Hv(e) {
  const {
    __scopeCheckbox: n,
    checked: r,
    children: o,
    defaultChecked: l,
    disabled: c,
    form: v,
    name: w,
    onCheckedChange: A,
    required: h,
    value: f = "on",
    // @ts-expect-error
    internal_do_not_use_render: b
  } = e, [x, g] = bh({
    prop: r,
    defaultProp: l ?? !1,
    onChange: A,
    caller: yA
  }), [y, k] = se(null), [D, C] = se(null), S = tt(!1), G = y ? !!v || !!y.closest("form") : (
    // We set this to true by default so that events bubble to forms without JS (SSR)
    !0
  ), Q = {
    checked: x,
    disabled: c,
    setChecked: g,
    control: y,
    setControl: k,
    name: w,
    form: v,
    value: f,
    hasConsumerStoppedPropagationRef: S,
    required: h,
    defaultChecked: Yr(l) ? !1 : l,
    isFormControl: G,
    bubbleInput: D,
    setBubbleInput: C
  };
  return /* @__PURE__ */ a.jsx(
    zv,
    {
      scope: n,
      ...Q,
      children: Sv(b) ? b(Q) : o
    }
  );
}
var Vh = "CheckboxTrigger", Kh = sr(
  ({ __scopeCheckbox: e, onKeyDown: n, onClick: r, ...o }, l) => {
    const {
      control: c,
      value: v,
      disabled: w,
      checked: A,
      required: h,
      setControl: f,
      setChecked: b,
      hasConsumerStoppedPropagationRef: x,
      isFormControl: g,
      bubbleInput: y
    } = uu(Vh, e), k = jo(l, f), D = tt(A);
    return ye(() => {
      const C = c == null ? void 0 : c.form;
      if (C) {
        const S = () => b(D.current);
        return C.addEventListener("reset", S), () => C.removeEventListener("reset", S);
      }
    }, [c, b]), /* @__PURE__ */ a.jsx(
      gs.button,
      {
        type: "button",
        role: "checkbox",
        "aria-checked": Yr(A) ? "mixed" : A,
        "aria-required": h,
        "data-state": rp(A),
        "data-disabled": w ? "" : void 0,
        disabled: w,
        value: v,
        ...o,
        ref: k,
        onKeyDown: go(n, (C) => {
          C.key === "Enter" && C.preventDefault();
        }),
        onClick: go(r, (C) => {
          b((S) => Yr(S) ? !0 : !S), y && g && (x.current = C.isPropagationStopped(), x.current || C.stopPropagation());
        })
      }
    );
  }
);
Kh.displayName = Vh;
var _h = sr(
  (e, n) => {
    const {
      __scopeCheckbox: r,
      name: o,
      checked: l,
      defaultChecked: c,
      required: v,
      disabled: w,
      value: A,
      onCheckedChange: h,
      form: f,
      ...b
    } = e;
    return /* @__PURE__ */ a.jsx(
      Hv,
      {
        __scopeCheckbox: r,
        checked: l,
        defaultChecked: c,
        disabled: w,
        required: v,
        onCheckedChange: h,
        name: o,
        form: f,
        value: A,
        internal_do_not_use_render: ({ isFormControl: x }) => /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
          /* @__PURE__ */ a.jsx(
            Kh,
            {
              ...b,
              ref: n,
              __scopeCheckbox: r
            }
          ),
          x && /* @__PURE__ */ a.jsx(
            np,
            {
              __scopeCheckbox: r
            }
          )
        ] })
      }
    );
  }
);
_h.displayName = yA;
var $h = "CheckboxIndicator", ep = sr(
  (e, n) => {
    const { __scopeCheckbox: r, forceMount: o, ...l } = e, c = uu($h, r);
    return /* @__PURE__ */ a.jsx(
      wh,
      {
        present: o || Yr(c.checked) || c.checked === !0,
        children: /* @__PURE__ */ a.jsx(
          gs.span,
          {
            "data-state": rp(c.checked),
            "data-disabled": c.disabled ? "" : void 0,
            ...l,
            ref: n,
            style: { pointerEvents: "none", ...e.style }
          }
        )
      }
    );
  }
);
ep.displayName = $h;
var tp = "CheckboxBubbleInput", np = sr(
  ({ __scopeCheckbox: e, ...n }, r) => {
    const {
      control: o,
      hasConsumerStoppedPropagationRef: l,
      checked: c,
      defaultChecked: v,
      required: w,
      disabled: A,
      name: h,
      value: f,
      form: b,
      bubbleInput: x,
      setBubbleInput: g
    } = uu(tp, e), y = jo(r, g), k = vh(c), D = yh(o);
    ye(() => {
      const S = x;
      if (!S) return;
      const G = window.HTMLInputElement.prototype, W = Object.getOwnPropertyDescriptor(
        G,
        "checked"
      ).set, J = !l.current;
      if (k !== c && W) {
        const Y = new Event("click", { bubbles: J });
        S.indeterminate = Yr(c), W.call(S, Yr(c) ? !1 : c), S.dispatchEvent(Y);
      }
    }, [x, k, c, l]);
    const C = tt(Yr(c) ? !1 : c);
    return /* @__PURE__ */ a.jsx(
      gs.input,
      {
        type: "checkbox",
        "aria-hidden": !0,
        defaultChecked: v ?? C.current,
        required: w,
        disabled: A,
        name: h,
        value: f,
        form: b,
        ...n,
        tabIndex: -1,
        ref: y,
        style: {
          ...n.style,
          ...D,
          position: "absolute",
          pointerEvents: "none",
          opacity: 0,
          margin: 0,
          // We transform because the input is absolutely positioned but we have
          // rendered it **after** the button. This pulls it back to sit on top
          // of the button.
          transform: "translateX(-100%)"
        }
      }
    );
  }
);
np.displayName = tp;
function Sv(e) {
  return typeof e == "function";
}
function Yr(e) {
  return e === "indeterminate";
}
function rp(e) {
  return Yr(e) ? "indeterminate" : e ? "checked" : "unchecked";
}
const Rv = ({ title: e, label: n, value: r, onChange: o, disabled: l, error: c, hint: v, checked: w, separator: A, testId: h }) => {
  const f = tu(), b = (x) => {
    o(x === !0);
  };
  return /* @__PURE__ */ a.jsxs("div", { children: [
    /* @__PURE__ */ a.jsxs("div", { className: `flex flex-col gap-1 ${A && "pb-2"}`, children: [
      e && /* @__PURE__ */ a.jsx(ct, { grey: !0, level: 6, children: e }),
      /* @__PURE__ */ a.jsxs("label", { className: `flex cursor-pointer items-start ${e && "-mb-1 mt-1"}`, htmlFor: f, children: [
        /* @__PURE__ */ a.jsx(_h, { className: "mt-0.5 flex h-4 w-4 cursor-pointer appearance-none items-center justify-center rounded-[3px] border border-solid border-grey-500 bg-white outline-none data-[state=checked]:border-black data-[state=indeterminate]:border-black data-[state=checked]:bg-black data-[state=indeterminate]:bg-black", "data-testid": h, defaultChecked: w, disabled: l, id: f, value: r, onCheckedChange: b, children: /* @__PURE__ */ a.jsx(ep, { children: /* @__PURE__ */ a.jsx("svg", { fill: "none", height: "11", viewBox: "0 0 10 11", width: "10", children: /* @__PURE__ */ a.jsx("path", { d: "M1 5.88889L4.6 9L9 1", stroke: "white", strokeLinecap: "round", strokeWidth: "2" }) }) }) }),
        /* @__PURE__ */ a.jsxs("div", { className: `ml-2 flex flex-col ${v && "mb-2"}`, children: [
          /* @__PURE__ */ a.jsx("span", { className: `inline-block text-[1.425rem] dark:text-white ${v && "-mb-1"}`, children: n }),
          v && /* @__PURE__ */ a.jsx(nr, { color: c ? "red" : "", children: v })
        ] })
      ] })
    ] }),
    (A || c) && /* @__PURE__ */ a.jsx(xo, { className: c ? "border-red" : "" })
  ] });
}, zc = ({
  title: e,
  checkboxes: n,
  hint: r,
  error: o
}) => /* @__PURE__ */ a.jsxs("div", { children: [
  e && /* @__PURE__ */ a.jsx(ct, { grey: !0, level: 6, children: e }),
  /* @__PURE__ */ a.jsx("div", { className: "mt-2 flex flex-col gap-1", children: n == null ? void 0 : n.map(({ key: l, ...c }) => /* @__PURE__ */ a.jsx(Rv, { ...c }, l)) }),
  /* @__PURE__ */ a.jsx("div", { className: `flex flex-col ${r && "mb-2"}`, children: r && /* @__PURE__ */ a.jsx(nr, { color: o ? "red" : "", children: r }) })
] }), Bv = ({ hex: e, value: n, title: r, size: o = "md", isSelected: l, onSelect: c }) => {
  const v = tt(null), w = (f) => {
    f.preventDefault(), c(n !== void 0 ? n : e);
  }, A = e.length === 4 && e[3] === "0" || e.length === 8 && e.slice(6) === "00";
  let h = "h-5 w-5";
  switch (o) {
    case "lg":
      h = "w-6 h-6";
      break;
  }
  return /* @__PURE__ */ a.jsx(
    "button",
    {
      ref: v,
      className: me(
        "relative flex shrink-0 cursor-pointer items-center rounded-full border border-grey-300 dark:border-grey-800",
        h,
        l && "outline outline-2 outline-green"
      ),
      style: { backgroundColor: e },
      title: r,
      type: "button",
      onClick: w,
      children: A && /* @__PURE__ */ a.jsx("div", { className: "absolute left-0 top-0 z-10 w-[136%] origin-left rotate-45 border-b border-b-red" })
    }
  );
}, sp = ({ title: e, value: n, swatches: r, swatchSize: o = "md", onSwatchChange: l, onTogglePicker: c, isExpanded: v, picker: w = !0, containerClassName: A }) => {
  const h = r.find((b) => b.value === n || b.hex === n);
  A = me(
    "flex flex-col gap-3"
  );
  const f = v || !w;
  return /* @__PURE__ */ a.jsxs("div", { className: A, children: [
    e && /* @__PURE__ */ a.jsx(ct, { useLabelTag: !0, children: e }),
    /* @__PURE__ */ a.jsxs("div", { className: "flex gap-1", children: [
      f && /* @__PURE__ */ a.jsx("div", { className: "flex items-center gap-1", children: r.map(({ customContent: b, ...x }) => b ? /* @__PURE__ */ a.jsx(tb, { children: b }, x.title) : /* @__PURE__ */ a.jsx(Bv, { isSelected: (h == null ? void 0 : h.title) === x.title, size: o, onSelect: l, ...x }, x.title)) }),
      w && /* @__PURE__ */ a.jsxs("button", { "aria-label": "Pick color", className: "relative size-6 cursor-pointer rounded-full border border-grey-250 dark:border-grey-800", type: "button", onClick: c, children: [
        /* @__PURE__ */ a.jsx("div", { className: "absolute inset-0 rounded-full bg-[conic-gradient(hsl(360,100%,50%),hsl(315,100%,50%),hsl(270,100%,50%),hsl(225,100%,50%),hsl(180,100%,50%),hsl(135,100%,50%),hsl(90,100%,50%),hsl(45,100%,50%),hsl(0,100%,50%))]" }),
        h && /* @__PURE__ */ a.jsx("div", { className: "absolute inset-[3px] overflow-hidden rounded-full border border-white dark:border-grey-950", style: { backgroundColor: h.hex }, children: h.hex === "transparent" && /* @__PURE__ */ a.jsx("div", { className: "absolute left-[3px] top-[3px] z-10 w-[136%] origin-left rotate-45 border-b border-b-red" }) }),
        !h && n && /* @__PURE__ */ a.jsx("div", { className: "absolute inset-[3px] overflow-hidden rounded-full border border-white dark:border-grey-950", style: { backgroundColor: n }, children: n === "transparent" && /* @__PURE__ */ a.jsx("div", { className: "absolute left-[3px] top-[3px] z-10 w-[136%] origin-left rotate-45 border-b border-b-red" }) })
      ] })
    ] })
  ] });
};
function ma() {
  return (ma = Object.assign || function(e) {
    for (var n = 1; n < arguments.length; n++) {
      var r = arguments[n];
      for (var o in r) Object.prototype.hasOwnProperty.call(r, o) && (e[o] = r[o]);
    }
    return e;
  }).apply(this, arguments);
}
function kA(e, n) {
  if (e == null) return {};
  var r, o, l = {}, c = Object.keys(e);
  for (o = 0; o < c.length; o++) n.indexOf(r = c[o]) >= 0 || (l[r] = e[r]);
  return l;
}
function bo(e) {
  var n = tt(e), r = tt(function(o) {
    n.current && n.current(o);
  });
  return n.current = e, r.current;
}
var vo = function(e, n, r) {
  return n === void 0 && (n = 0), r === void 0 && (r = 1), e > r ? r : e < n ? n : e;
}, ho = function(e) {
  return "touches" in e;
}, Hc = function(e) {
  return e && e.ownerDocument.defaultView || self;
}, wd = function(e, n, r) {
  var o = e.getBoundingClientRect(), l = ho(n) ? function(c, v) {
    for (var w = 0; w < c.length; w++) if (c[w].identifier === v) return c[w];
    return c[0];
  }(n.touches, r) : n;
  return { left: vo((l.pageX - (o.left + Hc(e).pageXOffset)) / o.width), top: vo((l.pageY - (o.top + Hc(e).pageYOffset)) / o.height) };
}, bd = function(e) {
  !ho(e) && e.preventDefault();
}, ap = _e.memo(function(e) {
  var n = e.onMove, r = e.onKey, o = kA(e, ["onMove", "onKey"]), l = tt(null), c = bo(n), v = bo(r), w = tt(null), A = tt(!1), h = Gn(function() {
    var g = function(D) {
      bd(D), (ho(D) ? D.touches.length > 0 : D.buttons > 0) && l.current ? c(wd(l.current, D, w.current)) : k(!1);
    }, y = function() {
      return k(!1);
    };
    function k(D) {
      var C = A.current, S = Hc(l.current), G = D ? S.addEventListener : S.removeEventListener;
      G(C ? "touchmove" : "mousemove", g), G(C ? "touchend" : "mouseup", y);
    }
    return [function(D) {
      var C = D.nativeEvent, S = l.current;
      if (S && (bd(C), !function(Q, W) {
        return W && !ho(Q);
      }(C, A.current) && S)) {
        if (ho(C)) {
          A.current = !0;
          var G = C.changedTouches || [];
          G.length && (w.current = G[0].identifier);
        }
        S.focus(), c(wd(S, C, w.current)), k(!0);
      }
    }, function(D) {
      var C = D.which || D.keyCode;
      C < 37 || C > 40 || (D.preventDefault(), v({ left: C === 39 ? 0.05 : C === 37 ? -0.05 : 0, top: C === 40 ? 0.05 : C === 38 ? -0.05 : 0 }));
    }, k];
  }, [v, c]), f = h[0], b = h[1], x = h[2];
  return ye(function() {
    return x;
  }, [x]), _e.createElement("div", ma({}, o, { onTouchStart: f, onMouseDown: f, className: "react-colorful__interactive", ref: l, onKeyDown: b, tabIndex: 0, role: "slider" }));
}), fu = function(e) {
  return e.filter(Boolean).join(" ");
}, op = function(e) {
  var n = e.color, r = e.left, o = e.top, l = o === void 0 ? 0.5 : o, c = fu(["react-colorful__pointer", e.className]);
  return _e.createElement("div", { className: c, style: { top: 100 * l + "%", left: 100 * r + "%" } }, _e.createElement("div", { className: "react-colorful__pointer-fill", style: { backgroundColor: n } }));
}, Kt = function(e, n, r) {
  return n === void 0 && (n = 0), r === void 0 && (r = Math.pow(10, n)), Math.round(r * e) / r;
}, Lv = function(e) {
  return Gv(Sc(e));
}, Sc = function(e) {
  return e[0] === "#" && (e = e.substring(1)), e.length < 6 ? { r: parseInt(e[0] + e[0], 16), g: parseInt(e[1] + e[1], 16), b: parseInt(e[2] + e[2], 16), a: e.length === 4 ? Kt(parseInt(e[3] + e[3], 16) / 255, 2) : 1 } : { r: parseInt(e.substring(0, 2), 16), g: parseInt(e.substring(2, 4), 16), b: parseInt(e.substring(4, 6), 16), a: e.length === 8 ? Kt(parseInt(e.substring(6, 8), 16) / 255, 2) : 1 };
}, Qv = function(e) {
  return qv(Fv(e));
}, Xv = function(e) {
  var n = e.s, r = e.v, o = e.a, l = (200 - n) * r / 100;
  return { h: Kt(e.h), s: Kt(l > 0 && l < 200 ? n * r / 100 / (l <= 100 ? l : 200 - l) * 100 : 0), l: Kt(l / 2), a: Kt(o, 2) };
}, Rc = function(e) {
  var n = Xv(e);
  return "hsl(" + n.h + ", " + n.s + "%, " + n.l + "%)";
}, Fv = function(e) {
  var n = e.h, r = e.s, o = e.v, l = e.a;
  n = n / 360 * 6, r /= 100, o /= 100;
  var c = Math.floor(n), v = o * (1 - r), w = o * (1 - (n - c) * r), A = o * (1 - (1 - n + c) * r), h = c % 6;
  return { r: Kt(255 * [o, w, v, v, A, o][h]), g: Kt(255 * [A, o, o, w, v, v][h]), b: Kt(255 * [v, v, A, o, o, w][h]), a: Kt(l, 2) };
}, $i = function(e) {
  var n = e.toString(16);
  return n.length < 2 ? "0" + n : n;
}, qv = function(e) {
  var n = e.r, r = e.g, o = e.b, l = e.a, c = l < 1 ? $i(Kt(255 * l)) : "";
  return "#" + $i(n) + $i(r) + $i(o) + c;
}, Gv = function(e) {
  var n = e.r, r = e.g, o = e.b, l = e.a, c = Math.max(n, r, o), v = c - Math.min(n, r, o), w = v ? c === n ? (r - o) / v : c === r ? 2 + (o - n) / v : 4 + (n - r) / v : 0;
  return { h: Kt(60 * (w < 0 ? w + 6 : w)), s: Kt(c ? v / c * 100 : 0), v: Kt(c / 255 * 100), a: l };
}, Yv = _e.memo(function(e) {
  var n = e.hue, r = e.onChange, o = fu(["react-colorful__hue", e.className]);
  return _e.createElement("div", { className: o }, _e.createElement(ap, { onMove: function(l) {
    r({ h: 360 * l.left });
  }, onKey: function(l) {
    r({ h: vo(n + 360 * l.left, 0, 360) });
  }, "aria-label": "Hue", "aria-valuenow": Kt(n), "aria-valuemax": "360", "aria-valuemin": "0" }, _e.createElement(op, { className: "react-colorful__hue-pointer", left: n / 360, color: Rc({ h: n, s: 100, v: 100, a: 1 }) })));
}), Uv = _e.memo(function(e) {
  var n = e.hsva, r = e.onChange, o = { backgroundColor: Rc({ h: n.h, s: 100, v: 100, a: 1 }) };
  return _e.createElement("div", { className: "react-colorful__saturation", style: o }, _e.createElement(ap, { onMove: function(l) {
    r({ s: 100 * l.left, v: 100 - 100 * l.top });
  }, onKey: function(l) {
    r({ s: vo(n.s + 100 * l.left, 0, 100), v: vo(n.v - 100 * l.top, 0, 100) });
  }, "aria-label": "Color", "aria-valuetext": "Saturation " + Kt(n.s) + "%, Brightness " + Kt(n.v) + "%" }, _e.createElement(op, { className: "react-colorful__saturation-pointer", top: 1 - n.v / 100, left: n.s / 100, color: Rc(n) })));
}), ip = function(e, n) {
  if (e === n) return !0;
  for (var r in e) if (e[r] !== n[r]) return !1;
  return !0;
}, Jv = function(e, n) {
  return e.toLowerCase() === n.toLowerCase() || ip(Sc(e), Sc(n));
};
function Zv(e, n, r) {
  var o = bo(r), l = se(function() {
    return e.toHsva(n);
  }), c = l[0], v = l[1], w = tt({ color: n, hsva: c });
  ye(function() {
    if (!e.equal(n, w.current.color)) {
      var h = e.toHsva(n);
      w.current = { hsva: h, color: n }, v(h);
    }
  }, [n, e]), ye(function() {
    var h;
    ip(c, w.current.hsva) || e.equal(h = e.fromHsva(c), w.current.color) || (w.current = { hsva: c, color: h }, o(h));
  }, [c, e, o]);
  var A = Bt(function(h) {
    v(function(f) {
      return Object.assign({}, f, h);
    });
  }, []);
  return [c, A];
}
var Wv = typeof window < "u" ? nb : ye, Vv = function() {
  return typeof __webpack_nonce__ < "u" ? __webpack_nonce__ : void 0;
}, vd = /* @__PURE__ */ new Map(), Kv = function(e) {
  Wv(function() {
    var n = e.current ? e.current.ownerDocument : document;
    if (n !== void 0 && !vd.has(n)) {
      var r = n.createElement("style");
      r.innerHTML = `.react-colorful{position:relative;display:flex;flex-direction:column;width:200px;height:200px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.react-colorful__saturation{position:relative;flex-grow:1;border-color:transparent;border-bottom:12px solid #000;border-radius:8px 8px 0 0;background-image:linear-gradient(0deg,#000,transparent),linear-gradient(90deg,#fff,hsla(0,0%,100%,0))}.react-colorful__alpha-gradient,.react-colorful__pointer-fill{content:"";position:absolute;left:0;top:0;right:0;bottom:0;pointer-events:none;border-radius:inherit}.react-colorful__alpha-gradient,.react-colorful__saturation{box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}.react-colorful__alpha,.react-colorful__hue{position:relative;height:24px}.react-colorful__hue{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.react-colorful__last-control{border-radius:0 0 8px 8px}.react-colorful__interactive{position:absolute;left:0;top:0;right:0;bottom:0;border-radius:inherit;outline:none;touch-action:none}.react-colorful__pointer{position:absolute;z-index:1;box-sizing:border-box;width:28px;height:28px;transform:translate(-50%,-50%);background-color:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}.react-colorful__interactive:focus .react-colorful__pointer{transform:translate(-50%,-50%) scale(1.1)}.react-colorful__alpha,.react-colorful__alpha-pointer{background-color:#fff;background-image:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill-opacity=".05"><path d="M8 0h8v8H8zM0 8h8v8H0z"/></svg>')}.react-colorful__saturation-pointer{z-index:3}.react-colorful__hue-pointer{z-index:2}`, vd.set(n, r);
      var o = Vv();
      o && r.setAttribute("nonce", o), n.head.appendChild(r);
    }
  }, []);
}, _v = function(e) {
  var n = e.className, r = e.colorModel, o = e.color, l = o === void 0 ? r.defaultColor : o, c = e.onChange, v = kA(e, ["className", "colorModel", "color", "onChange"]), w = tt(null);
  Kv(w);
  var A = Zv(r, l, c), h = A[0], f = A[1], b = fu(["react-colorful", n]);
  return _e.createElement("div", ma({}, v, { ref: w, className: b }), _e.createElement(Uv, { hsva: h, onChange: f }), _e.createElement(Yv, { hue: h.h, onChange: f, className: "react-colorful__last-control" }));
}, $v = { defaultColor: "000", toHsva: Lv, fromHsva: function(e) {
  return Qv({ h: e.h, s: e.s, v: e.v, a: 1 });
}, equal: Jv }, e3 = function(e) {
  return _e.createElement(_v, ma({}, e, { colorModel: $v }));
}, t3 = /^#?([0-9A-F]{3,8})$/i, n3 = function(e) {
  var n = e.color, r = n === void 0 ? "" : n, o = e.onChange, l = e.onBlur, c = e.escape, v = e.validate, w = e.format, A = e.process, h = kA(e, ["color", "onChange", "onBlur", "escape", "validate", "format", "process"]), f = se(function() {
    return c(r);
  }), b = f[0], x = f[1], g = bo(o), y = bo(l), k = Bt(function(C) {
    var S = c(C.target.value);
    x(S), v(S) && g(A ? A(S) : S);
  }, [c, A, v, g]), D = Bt(function(C) {
    v(C.target.value) || x(c(r)), y(C);
  }, [r, c, v, y]);
  return ye(function() {
    x(c(r));
  }, [r, c]), _e.createElement("input", ma({}, h, { value: w ? w(b) : b, spellCheck: "false", onChange: k, onBlur: D }));
}, yd = function(e) {
  return "#" + e;
}, r3 = function(e) {
  var n = e.prefixed, r = e.alpha, o = kA(e, ["prefixed", "alpha"]), l = Bt(function(v) {
    return v.replace(/([^0-9A-F]+)/gi, "").substring(0, r ? 8 : 6);
  }, [r]), c = Bt(function(v) {
    return function(w, A) {
      var h = t3.exec(w), f = h ? h[1].length : 0;
      return f === 3 || f === 6 || !!A && f === 4 || !!A && f === 8;
    }(v, r);
  }, [r]);
  return _e.createElement(n3, ma({}, o, { escape: l, format: n ? yd : void 0, process: yd, validate: c }));
};
const s3 = ({ hexValue: e, eyedropper: n, clearButtonValue: r, containerClassName: o, onChange: l }) => {
  const c = tt(null), v = Bt((x) => {
    var g, y, k;
    x.stopPropagation();
    const D = (g = c.current) == null ? void 0 : g.querySelector("input");
    x.target !== D && ((k = (y = c.current) == null ? void 0 : y.querySelector("input")) == null || k.focus(), x.preventDefault());
  }, []), w = tt(!1), A = Bt(() => {
    var x, g;
    w.current = !1, (g = (x = c.current) == null ? void 0 : x.querySelector("input")) == null || g.focus(), document.removeEventListener("mouseup", A), document.removeEventListener("touchend", A);
  }, []), h = Bt(() => {
    w.current = !0, document.addEventListener("mouseup", A), document.addEventListener("touchend", A);
  }, [A]), f = Bt((x) => {
    if (x.preventDefault(), !window.EyeDropper)
      return;
    w.current = !0, document.body.style.setProperty("pointer-events", "none"), new window.EyeDropper().open().then((y) => l == null ? void 0 : l(y.sRGBHex)).finally(() => {
      var y, k;
      w.current = !1, document.body.style.removeProperty("pointer-events"), (k = (y = c.current) == null ? void 0 : y.querySelector("input")) == null || k.focus();
    });
  }, [l]);
  ye(() => {
    var x, g;
    (g = (x = c.current) == null ? void 0 : x.querySelector("input")) == null || g.focus();
  }, []);
  const b = Bt(() => {
    var x, g;
    (g = (x = c.current) == null ? void 0 : x.querySelector("input")) == null || g.focus();
  }, []);
  return o = me(
    "mt-2",
    o
  ), /* @__PURE__ */ a.jsxs("div", { className: o, onMouseDown: v, onTouchStart: v, children: [
    /* @__PURE__ */ a.jsx(e3, { className: "w-full", color: e || "#ffffff", onChange: l, onMouseDown: h, onTouchStart: h }),
    /* @__PURE__ */ a.jsxs("div", { className: "mt-3 flex gap-2", children: [
      /* @__PURE__ */ a.jsxs("div", { ref: c, className: "peer relative order-2 flex h-10 w-full items-center", onClick: b, children: [
        /* @__PURE__ */ a.jsx("span", { className: "absolute left-2 top-[9px] z-10 ml-1 mr-2 text-grey-700", children: "#" }),
        /* @__PURE__ */ a.jsx(r3, { "aria-label": "Color value", className: "z-[1] w-full rounded-md border border-transparent bg-grey-150 p-2 pl-6 transition-all hover:bg-grey-100 focus:border-green focus:bg-white focus:shadow-[0_0_0_1px_rgba(48,207,67,1)] dark:bg-grey-900 dark:text-white dark:focus:bg-grey-925", color: e, onChange: l }),
        n && !!window.EyeDropper && /* @__PURE__ */ a.jsx(
          "button",
          {
            className: "absolute inset-y-0 right-3 z-50 my-auto h-4 w-4 p-[1px]",
            type: "button",
            onClick: f,
            children: /* @__PURE__ */ a.jsx(rb, { className: "h-full w-full" })
          }
        )
      ] }),
      r !== void 0 && /* @__PURE__ */ a.jsx(He, { color: "grey", value: "Clear", onClick: () => l == null ? void 0 : l(r) })
    ] })
  ] });
}, a3 = ab({
  colorPickers: []
}), kd = (e) => e.length === 4 ? e.replace(/#(.)(.)(.)/, "#$1$1$2$2$3$3") : e, er = ({ testId: e, title: n, direction: r, value: o, hint: l, error: c, eyedropper: v, clearButtonValue: w, onChange: A, swatches: h = [], alwaysOpen: f = !1, debounceMs: b }) => {
  const [x, g] = se(!1), [y, k] = se(o), D = sb(a3), C = tu();
  ye(() => {
    k((J) => kd(J || "") === o ? J : o);
  }, [o]), ye(() => (D.colorPickers.push({ id: C, setExpanded: g }), () => {
    D.colorPickers = D.colorPickers.filter((J) => J.id !== C);
  }), [D, C]), ye(() => {
    if (x) {
      D.colorPickers.filter((Y) => Y.id !== C).forEach((Y) => Y.setExpanded(!1));
      const J = () => {
        g(!1);
      };
      return document.addEventListener("click", J), () => {
        document.removeEventListener("click", J);
      };
    }
  }, [D, C, x]);
  const S = Gn(() => A && b ? wA(A, b) : A, [b, A]), G = (J) => {
    k(J), S == null || S(J ? kd(J) : null);
  };
  let Q = /* @__PURE__ */ a.jsx(
    sp,
    {
      isExpanded: x,
      swatches: h,
      value: y,
      onSwatchChange: (J) => {
        G(J), g(!1);
      },
      onTogglePicker: () => !f && g(!x)
    }
  );
  n && (Q = /* @__PURE__ */ a.jsxs("div", { className: me("flex w-full cursor-pointer items-start first:mt-0 dark:text-white", r === "rtl" && "flex-row-reverse"), children: [
    /* @__PURE__ */ a.jsx("div", { className: "shrink-0", children: Q }),
    /* @__PURE__ */ a.jsxs("div", { className: me("flex-1", r === "rtl" ? "pr-2" : "pl-2", l ? "mt-[-2px]" : "mt-[1px]"), onClick: () => !f && g(!x), children: [
      n,
      l && /* @__PURE__ */ a.jsx("div", { className: `text-xs ${c ? "text-red" : "text-grey-700"}`, children: l })
    ] })
  ] }));
  const W = h.find((J) => J.value === y);
  return /* @__PURE__ */ a.jsxs("div", { className: "flex-col", "data-testid": e, onClick: (J) => J.stopPropagation(), children: [
    Q,
    (f || x) && /* @__PURE__ */ a.jsx(s3, { clearButtonValue: w, eyedropper: v, hexValue: (W == null ? void 0 : W.hex) || y || void 0, onChange: G })
  ] });
};
function o3(e) {
  throw new Error('Could not dynamically require "' + e + '". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.');
}
const i3 = function(e) {
  let n = "pending", r;
  const o = e().then(
    (c) => {
      n = "success", r = c;
    },
    (c) => {
      n = "error", r = c;
    }
  );
  return { read: () => {
    switch (n) {
      case "pending":
        throw o;
      case "error":
        throw r;
      default:
        return r;
    }
  } };
}, A3 = ({
  editor: e,
  value: n,
  onChange: r,
  onBlur: o,
  placeholder: l,
  nodes: c,
  emojiPicker: v = !0,
  darkMode: w = !1
}) => {
  const A = Bt((k) => {
    var D;
    try {
      kh({
        error: k,
        tags: { lexical: !0 },
        contexts: {
          koenig: {
            version: (D = window["@tryghost/koenig-lexical"]) == null ? void 0 : D.version
          }
        }
      });
    } catch (C) {
      console.error(C);
    }
    console.error(k);
  }, []), { setFocusState: h } = lb(), f = () => {
    o && o(), h(!1);
  }, b = () => {
    h(!0);
  }, x = Gn(() => new Proxy({}, {
    get: (k, D) => e.read()[D]
  }), [e]), g = {
    DEFAULT_NODES: x.DEFAULT_TRANSFORMERS,
    BASIC_NODES: x.BASIC_TRANSFORMERS,
    MINIMAL_NODES: x.MINIMAL_TRANSFORMERS
  }, y = (k) => {
    const C = new DOMParser().parseFromString(k, "text/html");
    C.querySelectorAll("*").forEach((G) => {
      G.style.removeProperty("white-space"), G.getAttribute("style") || G.removeAttribute("style");
    }), C.body.innerHTML !== n && (r == null || r(C.body.innerHTML));
  };
  return /* @__PURE__ */ a.jsx(
    x.KoenigComposer,
    {
      darkMode: w,
      nodes: x[c || "DEFAULT_NODES"],
      onError: A,
      children: /* @__PURE__ */ a.jsxs(
        x.KoenigComposableEditor,
        {
          className: "koenig-lexical koenig-lexical-editor-input",
          isSnippetsEnabled: !1,
          markdownTransformers: g[c || "DEFAULT_NODES"],
          placeholderClassName: "koenig-lexical-editor-input-placeholder line-clamp-1",
          placeholderText: l,
          singleParagraph: !0,
          onBlur: f,
          onFocus: b,
          children: [
            /* @__PURE__ */ a.jsx(x.HtmlOutputPlugin, { html: n, setHtml: y }),
            v ? /* @__PURE__ */ a.jsx(x.EmojiPickerPlugin, {}) : null
          ]
        }
      )
    }
  );
}, l3 = ({
  className: e,
  ...n
}) => {
  const { fetchKoenigLexical: r, darkMode: o } = ob(), l = Gn(() => i3(r), [r]);
  return /* @__PURE__ */ a.jsx("div", { className: e || "w-full", children: /* @__PURE__ */ a.jsx("div", { className: "koenig-react-editor w-full [&_*]:!font-inherit [&_*]:!text-inherit", children: /* @__PURE__ */ a.jsx(ib, { name: "editor", children: /* @__PURE__ */ a.jsx(Ab, { fallback: /* @__PURE__ */ a.jsx("p", { className: "koenig-react-editor-loading", children: "Loading editor..." }), children: /* @__PURE__ */ a.jsx(A3, { ...n, darkMode: o, editor: l }) }) }) }) });
}, du = ({
  title: e,
  hideTitle: n,
  error: r,
  hint: o,
  value: l,
  clearBg: c = !1,
  className: v = "",
  containerClassName: w = "",
  hintClassName: A = "",
  unstyled: h = !1,
  ...f
}) => {
  const b = h ? "" : me(
    "flex min-h-[32px] items-center rounded-md border border-transparent py-1.5 md:min-h-[36px]",
    c ? "bg-transparent" : "bg-grey-150 px-3 dark:bg-grey-900",
    r ? "border-red" : "transition-all hover:bg-grey-100 has-[:focus]:border-green has-[:focus]:bg-white has-[:focus]:shadow-[0_0_0_1px_rgba(48,207,67,1)] dark:selection:bg-[rgba(88,101,116,0.99)] dark:hover:bg-grey-925 dark:has-[:focus]:bg-grey-950",
    e && !n && !c && "mt-2",
    v
  );
  return /* @__PURE__ */ a.jsxs("div", { className: `flex flex-col ${w}`, children: [
    e && /* @__PURE__ */ a.jsx(ct, { className: n ? "sr-only" : "", grey: !0, useLabelTag: !0, children: e }),
    /* @__PURE__ */ a.jsx("div", { className: b, children: /* @__PURE__ */ a.jsx(l3, { ...f, value: l }) }),
    o && /* @__PURE__ */ a.jsx(nr, { className: A, color: r ? "red" : "", children: o })
  ] });
};
var hu = "Radio", [c3, Ap] = eu(hu), [u3, f3] = c3(hu), lp = sr(
  (e, n) => {
    const {
      __scopeRadio: r,
      name: o,
      checked: l = !1,
      required: c,
      disabled: v,
      value: w = "on",
      onCheck: A,
      form: h,
      ...f
    } = e, [b, x] = se(null), g = jo(n, (D) => x(D)), y = tt(!1), k = b ? h || !!b.closest("form") : !0;
    return /* @__PURE__ */ a.jsxs(u3, { scope: r, checked: l, disabled: v, children: [
      /* @__PURE__ */ a.jsx(
        gs.button,
        {
          type: "button",
          role: "radio",
          "aria-checked": l,
          "data-state": dp(l),
          "data-disabled": v ? "" : void 0,
          disabled: v,
          value: w,
          ...f,
          ref: g,
          onClick: go(e.onClick, (D) => {
            l || A == null || A(), k && (y.current = D.isPropagationStopped(), y.current || D.stopPropagation());
          })
        }
      ),
      k && /* @__PURE__ */ a.jsx(
        fp,
        {
          control: b,
          bubbles: !y.current,
          name: o,
          value: w,
          checked: l,
          required: c,
          disabled: v,
          form: h,
          style: { transform: "translateX(-100%)" }
        }
      )
    ] });
  }
);
lp.displayName = hu;
var cp = "RadioIndicator", up = sr(
  (e, n) => {
    const { __scopeRadio: r, forceMount: o, ...l } = e, c = f3(cp, r);
    return /* @__PURE__ */ a.jsx(wh, { present: o || c.checked, children: /* @__PURE__ */ a.jsx(
      gs.span,
      {
        "data-state": dp(c.checked),
        "data-disabled": c.disabled ? "" : void 0,
        ...l,
        ref: n
      }
    ) });
  }
);
up.displayName = cp;
var d3 = "RadioBubbleInput", fp = sr(
  ({
    __scopeRadio: e,
    control: n,
    checked: r,
    bubbles: o = !0,
    ...l
  }, c) => {
    const v = tt(null), w = jo(v, c), A = vh(r), h = yh(n);
    return ye(() => {
      const f = v.current;
      if (!f) return;
      const b = window.HTMLInputElement.prototype, g = Object.getOwnPropertyDescriptor(
        b,
        "checked"
      ).set;
      if (A !== r && g) {
        const y = new Event("click", { bubbles: o });
        g.call(f, r), f.dispatchEvent(y);
      }
    }, [A, r, o]), /* @__PURE__ */ a.jsx(
      gs.input,
      {
        type: "radio",
        "aria-hidden": !0,
        defaultChecked: r,
        ...l,
        tabIndex: -1,
        ref: w,
        style: {
          ...l.style,
          ...h,
          position: "absolute",
          pointerEvents: "none",
          opacity: 0,
          margin: 0
        }
      }
    );
  }
);
fp.displayName = d3;
function dp(e) {
  return e ? "checked" : "unchecked";
}
var h3 = ["ArrowUp", "ArrowDown", "ArrowLeft", "ArrowRight"], MA = "RadioGroup", [p3, nk] = eu(MA, [
  Mh,
  Ap
]), hp = Mh(), pp = Ap(), [m3, g3] = p3(MA), mp = sr(
  (e, n) => {
    const {
      __scopeRadioGroup: r,
      name: o,
      defaultValue: l,
      value: c,
      required: v = !1,
      disabled: w = !1,
      orientation: A,
      dir: h,
      loop: f = !0,
      onValueChange: b,
      ...x
    } = e, g = hp(r), y = cb(h), [k, D] = bh({
      prop: c,
      defaultProp: l ?? null,
      onChange: b,
      caller: MA
    });
    return /* @__PURE__ */ a.jsx(
      m3,
      {
        scope: r,
        name: o,
        required: v,
        disabled: w,
        value: k,
        onValueChange: D,
        children: /* @__PURE__ */ a.jsx(
          ub,
          {
            asChild: !0,
            ...g,
            orientation: A,
            dir: y,
            loop: f,
            children: /* @__PURE__ */ a.jsx(
              gs.div,
              {
                role: "radiogroup",
                "aria-required": v,
                "aria-orientation": A,
                "data-disabled": w ? "" : void 0,
                dir: y,
                ...x,
                ref: n
              }
            )
          }
        )
      }
    );
  }
);
mp.displayName = MA;
var gp = "RadioGroupItem", xp = sr(
  (e, n) => {
    const { __scopeRadioGroup: r, disabled: o, ...l } = e, c = g3(gp, r), v = c.disabled || o, w = hp(r), A = pp(r), h = tt(null), f = jo(n, h), b = c.value === l.value, x = tt(!1);
    return ye(() => {
      const g = (k) => {
        h3.includes(k.key) && (x.current = !0);
      }, y = () => x.current = !1;
      return document.addEventListener("keydown", g), document.addEventListener("keyup", y), () => {
        document.removeEventListener("keydown", g), document.removeEventListener("keyup", y);
      };
    }, []), /* @__PURE__ */ a.jsx(
      fb,
      {
        asChild: !0,
        ...w,
        focusable: !v,
        active: b,
        children: /* @__PURE__ */ a.jsx(
          lp,
          {
            disabled: v,
            required: c.required,
            checked: b,
            ...A,
            ...l,
            name: c.name,
            ref: f,
            onCheck: () => c.onValueChange(l.value),
            onKeyDown: go((g) => {
              g.key === "Enter" && g.preventDefault();
            }),
            onFocus: go(l.onFocus, () => {
              var g;
              x.current && ((g = h.current) == null || g.click());
            })
          }
        )
      }
    );
  }
);
xp.displayName = gp;
var x3 = "RadioGroupIndicator", wp = sr(
  (e, n) => {
    const { __scopeRadioGroup: r, ...o } = e, l = pp(r);
    return /* @__PURE__ */ a.jsx(up, { ...l, ...o, ref: n });
  }
);
wp.displayName = x3;
var w3 = mp, b3 = xp, v3 = wp;
const y3 = ({ id: e, title: n, options: r, onSelect: o, error: l, hint: c, selectedOption: v, separator: w }) => /* @__PURE__ */ a.jsxs(w3, { defaultValue: v, name: e, onValueChange: o, children: [
  /* @__PURE__ */ a.jsxs("div", { className: `flex flex-col gap-2 ${w && "pb-2"}`, children: [
    n && /* @__PURE__ */ a.jsx(ct, { level: 6, children: n }),
    r.map((A) => /* @__PURE__ */ a.jsxs("label", { className: `flex cursor-pointer items-start ${n && "-mb-1 mt-1"}`, htmlFor: A.value, children: [
      /* @__PURE__ */ a.jsx(b3, { className: "relative float-left mt-[3px] h-4 w-4 min-w-[16px] appearance-none rounded-full border-2 border-solid border-grey-300 hover:cursor-pointer focus:shadow-none focus:outline-none focus:ring-0 data-[state=checked]:border-green data-[state=checked]:focus:border-green dark:border-grey-800 dark:text-white dark:data-[state=checked]:border-green dark:data-[state=checked]:focus:border-green", id: A.value, value: A.value, children: /* @__PURE__ */ a.jsx(v3, { className: "flex h-full w-full items-center justify-center after:block after:h-[6px] after:w-[6px] after:rounded-full after:border-green after:bg-green after:content-[''] dark:after:border-green dark:after:bg-green" }) }),
      /* @__PURE__ */ a.jsxs("div", { className: `ml-2 flex flex-col ${A.hint && "mb-2"}`, children: [
        /* @__PURE__ */ a.jsx("span", { className: `inline-block text-md dark:text-white ${A.hint && "-mb-1"}`, children: A.label }),
        A.hint && /* @__PURE__ */ a.jsx(nr, { children: A.hint })
      ] })
    ] }, A.value)),
    c && /* @__PURE__ */ a.jsx(nr, { color: l ? "red" : "", children: c })
  ] }),
  (w || l) && /* @__PURE__ */ a.jsx(xo, { className: l ? "border-red" : "" })
] }), fA = ({ children: e, gap: n = "md", className: r }) => {
  let o = "gap-3";
  switch (n) {
    case "sm":
      o = "gap-2";
      break;
    case "md":
      o = "gap-3";
      break;
    case "lg":
      o = "gap-4";
      break;
  }
  return r = me(
    "flex flex-col",
    o,
    r
  ), /* @__PURE__ */ a.jsx("div", { className: r, children: e });
}, pu = ({ heading: e, children: n, className: r }) => (r = me(
  "w-full p-[8vmin] pt-5",
  r
), /* @__PURE__ */ a.jsxs("div", { className: r, children: [
  e && /* @__PURE__ */ a.jsx(ct, { className: "mb-8", children: e }),
  n
] })), mu = ({
  items: e,
  backIcon: n = !1,
  snapBackIcon: r = !0,
  onBack: o,
  containerClassName: l,
  itemClassName: c,
  activeItemClassName: v,
  separatorClassName: w
}) => {
  const A = e.length;
  let h = 0;
  return l = me(
    "flex items-center gap-2 text-sm",
    l
  ), v = me(
    "font-bold",
    v
  ), c = me(
    "text-sm",
    c
  ), /* @__PURE__ */ a.jsxs("div", { className: l, children: [
    n && /* @__PURE__ */ a.jsx(He, { className: r ? "mr-1" : "mr-6", icon: "arrow-left", iconColorClass: "dark:text-white", size: "sm", link: !0, onClick: o }),
    e.map((f) => {
      const b = h === A - 1 ? /* @__PURE__ */ a.jsx("span", { className: v, children: f.label }) : /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        /* @__PURE__ */ a.jsx(
          "button",
          {
            className: `${c} ${f.onClick && "-mx-1 cursor-pointer rounded-sm px-1 py-px hover:bg-grey-100 dark:hover:bg-grey-900"}`,
            type: "button",
            onClick: f.onClick,
            children: f.label
          },
          `bc-${h}`
        ),
        /* @__PURE__ */ a.jsx("span", { className: w, children: "/" })
      ] });
      return h = h + 1, b;
    })
  ] });
}, ga = ({
  testId: e,
  title: n,
  titleHeadingLevel: r = 4,
  size: o = "full",
  width: l,
  height: c,
  sidebar: v = "",
  preview: w,
  dirty: A = !1,
  cancelLabel: h = "Cancel",
  okLabel: f = "OK",
  okColor: b = "black",
  previewToolbar: x = !0,
  leftToolbar: g = !0,
  rightToolbar: y = !0,
  deviceSelector: k = !0,
  siteLink: D,
  previewToolbarURLs: C,
  previewBgColor: S = "grey",
  selectedURL: G,
  previewToolbarTabs: Q,
  previewToolbarBreadcrumbs: W,
  buttonsDisabled: J,
  sidebarButtons: Y,
  sidebarHeader: B,
  sidebarPadding: U = !0,
  sidebarContentClasses: te,
  enableCMDS: R = !0,
  backDropClick: z,
  onCancel: $,
  onOk: K,
  afterClose: ee,
  onSelectURL: F,
  onSelectDesktopView: _,
  onSelectMobileView: fe,
  onBreadcrumbsBack: xe
}) => {
  const I = fn(), { setGlobalDirtyState: de } = db();
  ye(() => {
    de(A);
  }, [A, de]), ye(() => {
    if (K) {
      const De = (ft) => {
        (ft.metaKey || ft.ctrlKey) && ft.key === "s" && (ft.preventDefault(), K());
      };
      if (R)
        return window.addEventListener("keydown", De), () => {
          window.removeEventListener("keydown", De);
        };
    }
  });
  const [be, he] = se("desktop");
  if (be === "mobile" && k ? w = /* @__PURE__ */ a.jsx(Wh, { "data-testid": "preview-mobile", children: w }) : be === "desktop" && k && (w = /* @__PURE__ */ a.jsx(Zh, { "data-testid": "preview-desktop", children: w })), x) {
    let De = /* @__PURE__ */ a.jsx(a.Fragment, {});
    C ? De = /* @__PURE__ */ a.jsx(
      Lt,
      {
        options: C,
        selectedOption: C.find((Ge) => Ge.value === G),
        onSelect: (Ge) => Ge && (F == null ? void 0 : F(Ge.value))
      }
    ) : Q ? De = /* @__PURE__ */ a.jsx(
      Zr,
      {
        border: !1,
        selectedTab: G,
        tabs: Q,
        width: "wide",
        onTabChange: F
      }
    ) : W && (De = /* @__PURE__ */ a.jsx(
      mu,
      {
        activeItemClassName: "hidden md:!block md:!visible",
        containerClassName: "whitespace-nowrap",
        itemClassName: "hidden md:!block md:!visible",
        items: W,
        separatorClassName: "hidden md:!block md:!visible",
        backIcon: !0,
        onBack: xe
      }
    ));
    const ft = "text-black dark:text-green", Jt = "text-grey-500 dark:text-grey-600", Qt = [
      {
        icon: "laptop",
        label: "Desktop",
        hideLabel: !0,
        link: !0,
        size: "sm",
        iconColorClass: be === "desktop" ? ft : Jt,
        onClick: _ || (() => {
          he("desktop");
        })
      },
      {
        icon: "mobile",
        label: "Mobile",
        hideLabel: !0,
        link: !0,
        size: "sm",
        iconColorClass: be === "mobile" ? ft : Jt,
        onClick: fe || (() => {
          he("mobile");
        })
      }
    ], Ht = k && /* @__PURE__ */ a.jsx(
      mr,
      {
        buttons: Qt
      }
    );
    let ne = "";
    S === "grey" ? ne = "bg-grey-50 dark:bg-black" : S === "greygradient" && (ne = "bg-gradient-to-tr from-white to-[#f9f9fa] dark:from-grey-950 dark:to-black");
    const Me = me(
      "min-w-100 absolute inset-y-0 left-0 right-[400px] flex w-full grow flex-col overflow-y-auto",
      ne
    );
    let Ne;
    D && (Ne = /* @__PURE__ */ a.jsx("div", { className: "ml-3 border-l border-grey-400 dark:border-grey-800", children: /* @__PURE__ */ a.jsxs("a", { className: "ml-3 flex items-center gap-1 text-sm", href: D, rel: "noopener noreferrer", target: "_blank", children: [
      "View site ",
      /* @__PURE__ */ a.jsx(Mt, { name: "arrow-top-right", size: "xs" })
    ] }) })), w = /* @__PURE__ */ a.jsxs("div", { className: Me, children: [
      x && /* @__PURE__ */ a.jsxs("header", { className: "relative flex h-[80px] shrink-0 items-center justify-center px-8 py-5", "data-testid": "design-toolbar", children: [
        g && /* @__PURE__ */ a.jsx("div", { className: "absolute left-8 flex h-full items-center", children: De }),
        y && /* @__PURE__ */ a.jsxs("div", { className: "absolute right-8 flex h-full items-center", children: [
          Ht,
          Ne
        ] })
      ] }),
      /* @__PURE__ */ a.jsx("div", { className: "flex grow items-center justify-center text-sm text-grey-400", children: w })
    ] });
  }
  const ue = [];
  return Y || (ue.push({
    key: "cancel-modal",
    label: h,
    onClick: $ || (() => {
      hb(A, () => {
        I.remove(), ee == null || ee();
      });
    }),
    disabled: J
  }), ue.push({
    key: "ok-modal",
    label: f,
    color: b,
    onClick: K,
    disabled: J
  })), /* @__PURE__ */ a.jsx(
    vt,
    {
      afterClose: ee,
      animate: !1,
      backDropClick: z,
      dirty: A,
      footer: !1,
      height: c,
      padding: !1,
      size: o,
      testId: e,
      title: "",
      width: l,
      hideXOnMobile: !0,
      children: /* @__PURE__ */ a.jsxs("div", { className: "flex h-full grow", children: [
        /* @__PURE__ */ a.jsx("div", { className: `relative hidden grow flex-col [@media(min-width:801px)]:!visible [@media(min-width:801px)]:!flex ${S === "grey" ? "bg-grey-50" : "bg-white dark:bg-black"}`, children: w }),
        v && /* @__PURE__ */ a.jsxs("div", { className: "relative flex h-full w-full flex-col border-l border-grey-100 dark:border-grey-900 [@media(min-width:801px)]:w-auto [@media(min-width:801px)]:basis-[400px]", children: [
          B || /* @__PURE__ */ a.jsxs("div", { className: "flex max-h-[82px] items-center justify-between gap-3 px-7 py-6", children: [
            /* @__PURE__ */ a.jsx(ct, { level: r, children: n }),
            Y || /* @__PURE__ */ a.jsx(mr, { buttons: ue })
          ] }),
          /* @__PURE__ */ a.jsx("div", { className: `${B ? "" : "absolute inset-x-0 bottom-0 top-[80px] grow"} ${U && "p-7 pt-0"} flex flex-col justify-between overflow-y-auto ${te && te}`, children: v })
        ] })
      ] })
    }
  );
}, k3 = ({ offset: e, onTrigger: n }) => {
  const r = tt(null);
  return ye(() => {
    const o = new IntersectionObserver((l) => {
      l[0].intersectionRatio <= 0 || n();
    });
    return r.current && o.observe(r.current), () => o.disconnect();
  }, [n]), /* @__PURE__ */ a.jsx("div", { ref: r, className: "absolute w-full", style: { bottom: e } });
}, bp = ({
  trigger: e,
  triggerButtonProps: n,
  items: r,
  position: o = "start",
  open: l,
  setOpen: c
}) => (e || (e = /* @__PURE__ */ a.jsx(He, { icon: "ellipsis", label: "Menu", hideLabel: !0, ...n })), /* @__PURE__ */ a.jsx(jh, { open: l, position: o, setOpen: c, trigger: e, closeOnItemClick: !0, children: /* @__PURE__ */ a.jsx("div", { className: "flex min-w-[160px] flex-col justify-stretch py-1", role: "none", children: r.map((v) => /* @__PURE__ */ a.jsx("button", { className: `mx-1 block cursor-pointer rounded-[2.5px] px-4 py-1.5 text-left text-sm hover:bg-grey-100 dark:hover:bg-grey-925 ${v.destructive && " text-red-500"}`, type: "button", onClick: (w) => {
  v.onClick && v.onClick(w);
}, children: v.label }, v.id)) }) }));
var vp = typeof global == "object" && global && global.Object === Object && global, M3 = typeof self == "object" && self && self.Object === Object && self, vr = vp || M3 || Function("return this")(), fa = vr.Symbol, yp = Object.prototype, j3 = yp.hasOwnProperty, E3 = yp.toString, Ao = fa ? fa.toStringTag : void 0;
function D3(e) {
  var n = j3.call(e, Ao), r = e[Ao];
  try {
    e[Ao] = void 0;
    var o = !0;
  } catch {
  }
  var l = E3.call(e);
  return o && (n ? e[Ao] = r : delete e[Ao]), l;
}
var T3 = Object.prototype, N3 = T3.toString;
function C3(e) {
  return N3.call(e);
}
var I3 = "[object Null]", P3 = "[object Undefined]", Md = fa ? fa.toStringTag : void 0;
function Do(e) {
  return e == null ? e === void 0 ? P3 : I3 : Md && Md in Object(e) ? D3(e) : C3(e);
}
function yo(e) {
  return e != null && typeof e == "object";
}
var dA = Array.isArray;
function kp(e) {
  var n = typeof e;
  return e != null && (n == "object" || n == "function");
}
var O3 = "[object AsyncFunction]", z3 = "[object Function]", H3 = "[object GeneratorFunction]", S3 = "[object Proxy]";
function Mp(e) {
  if (!kp(e))
    return !1;
  var n = Do(e);
  return n == z3 || n == H3 || n == O3 || n == S3;
}
var bc = vr["__core-js_shared__"], jd = function() {
  var e = /[^.]+$/.exec(bc && bc.keys && bc.keys.IE_PROTO || "");
  return e ? "Symbol(src)_1." + e : "";
}();
function R3(e) {
  return !!jd && jd in e;
}
var B3 = Function.prototype, L3 = B3.toString;
function ys(e) {
  if (e != null) {
    try {
      return L3.call(e);
    } catch {
    }
    try {
      return e + "";
    } catch {
    }
  }
  return "";
}
var Q3 = /[\\^$.*+?()[\]{}|]/g, X3 = /^\[object .+?Constructor\]$/, F3 = Function.prototype, q3 = Object.prototype, G3 = F3.toString, Y3 = q3.hasOwnProperty, U3 = RegExp(
  "^" + G3.call(Y3).replace(Q3, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"
);
function J3(e) {
  if (!kp(e) || R3(e))
    return !1;
  var n = Mp(e) ? U3 : X3;
  return n.test(ys(e));
}
function Z3(e, n) {
  return e == null ? void 0 : e[n];
}
function xa(e, n) {
  var r = Z3(e, n);
  return J3(r) ? r : void 0;
}
var Bc = xa(vr, "WeakMap"), W3 = 9007199254740991, V3 = /^(?:0|[1-9]\d*)$/;
function K3(e, n) {
  var r = typeof e;
  return n = n ?? W3, !!n && (r == "number" || r != "symbol" && V3.test(e)) && e > -1 && e % 1 == 0 && e < n;
}
function jp(e, n) {
  return e === n || e !== e && n !== n;
}
var _3 = 9007199254740991;
function Ep(e) {
  return typeof e == "number" && e > -1 && e % 1 == 0 && e <= _3;
}
function $3(e) {
  return e != null && Ep(e.length) && !Mp(e);
}
var e2 = Object.prototype;
function t2(e) {
  var n = e && e.constructor, r = typeof n == "function" && n.prototype || e2;
  return e === r;
}
function n2(e, n) {
  for (var r = -1, o = Array(e); ++r < e; )
    o[r] = n(r);
  return o;
}
var r2 = "[object Arguments]";
function Ed(e) {
  return yo(e) && Do(e) == r2;
}
var Dp = Object.prototype, s2 = Dp.hasOwnProperty, a2 = Dp.propertyIsEnumerable, o2 = Ed(/* @__PURE__ */ function() {
  return arguments;
}()) ? Ed : function(e) {
  return yo(e) && s2.call(e, "callee") && !a2.call(e, "callee");
};
function i2() {
  return !1;
}
var Tp = typeof exports == "object" && exports && !exports.nodeType && exports, Dd = Tp && typeof module == "object" && module && !module.nodeType && module, A2 = Dd && Dd.exports === Tp, Td = A2 ? vr.Buffer : void 0, l2 = Td ? Td.isBuffer : void 0, Lc = l2 || i2, c2 = "[object Arguments]", u2 = "[object Array]", f2 = "[object Boolean]", d2 = "[object Date]", h2 = "[object Error]", p2 = "[object Function]", m2 = "[object Map]", g2 = "[object Number]", x2 = "[object Object]", w2 = "[object RegExp]", b2 = "[object Set]", v2 = "[object String]", y2 = "[object WeakMap]", k2 = "[object ArrayBuffer]", M2 = "[object DataView]", j2 = "[object Float32Array]", E2 = "[object Float64Array]", D2 = "[object Int8Array]", T2 = "[object Int16Array]", N2 = "[object Int32Array]", C2 = "[object Uint8Array]", I2 = "[object Uint8ClampedArray]", P2 = "[object Uint16Array]", O2 = "[object Uint32Array]", dt = {};
dt[j2] = dt[E2] = dt[D2] = dt[T2] = dt[N2] = dt[C2] = dt[I2] = dt[P2] = dt[O2] = !0;
dt[c2] = dt[u2] = dt[k2] = dt[f2] = dt[M2] = dt[d2] = dt[h2] = dt[p2] = dt[m2] = dt[g2] = dt[x2] = dt[w2] = dt[b2] = dt[v2] = dt[y2] = !1;
function z2(e) {
  return yo(e) && Ep(e.length) && !!dt[Do(e)];
}
function H2(e) {
  return function(n) {
    return e(n);
  };
}
var Np = typeof exports == "object" && exports && !exports.nodeType && exports, po = Np && typeof module == "object" && module && !module.nodeType && module, S2 = po && po.exports === Np, vc = S2 && vp.process, Nd = function() {
  try {
    var e = po && po.require && po.require("util").types;
    return e || vc && vc.binding && vc.binding("util");
  } catch {
  }
}(), Cd = Nd && Nd.isTypedArray, Cp = Cd ? H2(Cd) : z2, R2 = Object.prototype, B2 = R2.hasOwnProperty;
function L2(e, n) {
  var r = dA(e), o = !r && o2(e), l = !r && !o && Lc(e), c = !r && !o && !l && Cp(e), v = r || o || l || c, w = v ? n2(e.length, String) : [], A = w.length;
  for (var h in e)
    B2.call(e, h) && !(v && // Safari 9 has enumerable `arguments.length` in strict mode.
    (h == "length" || // Node.js 0.10 has enumerable non-index properties on buffers.
    l && (h == "offset" || h == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays.
    c && (h == "buffer" || h == "byteLength" || h == "byteOffset") || // Skip index properties.
    K3(h, A))) && w.push(h);
  return w;
}
function Q2(e, n) {
  return function(r) {
    return e(n(r));
  };
}
var X2 = Q2(Object.keys, Object), F2 = Object.prototype, q2 = F2.hasOwnProperty;
function G2(e) {
  if (!t2(e))
    return X2(e);
  var n = [];
  for (var r in Object(e))
    q2.call(e, r) && r != "constructor" && n.push(r);
  return n;
}
function Y2(e) {
  return $3(e) ? L2(e) : G2(e);
}
var ko = xa(Object, "create");
function U2() {
  this.__data__ = ko ? ko(null) : {}, this.size = 0;
}
function J2(e) {
  var n = this.has(e) && delete this.__data__[e];
  return this.size -= n ? 1 : 0, n;
}
var Z2 = "__lodash_hash_undefined__", W2 = Object.prototype, V2 = W2.hasOwnProperty;
function K2(e) {
  var n = this.__data__;
  if (ko) {
    var r = n[e];
    return r === Z2 ? void 0 : r;
  }
  return V2.call(n, e) ? n[e] : void 0;
}
var _2 = Object.prototype, $2 = _2.hasOwnProperty;
function ey(e) {
  var n = this.__data__;
  return ko ? n[e] !== void 0 : $2.call(n, e);
}
var ty = "__lodash_hash_undefined__";
function ny(e, n) {
  var r = this.__data__;
  return this.size += this.has(e) ? 0 : 1, r[e] = ko && n === void 0 ? ty : n, this;
}
function ms(e) {
  var n = -1, r = e == null ? 0 : e.length;
  for (this.clear(); ++n < r; ) {
    var o = e[n];
    this.set(o[0], o[1]);
  }
}
ms.prototype.clear = U2;
ms.prototype.delete = J2;
ms.prototype.get = K2;
ms.prototype.has = ey;
ms.prototype.set = ny;
function ry() {
  this.__data__ = [], this.size = 0;
}
function jA(e, n) {
  for (var r = e.length; r--; )
    if (jp(e[r][0], n))
      return r;
  return -1;
}
var sy = Array.prototype, ay = sy.splice;
function oy(e) {
  var n = this.__data__, r = jA(n, e);
  if (r < 0)
    return !1;
  var o = n.length - 1;
  return r == o ? n.pop() : ay.call(n, r, 1), --this.size, !0;
}
function iy(e) {
  var n = this.__data__, r = jA(n, e);
  return r < 0 ? void 0 : n[r][1];
}
function Ay(e) {
  return jA(this.__data__, e) > -1;
}
function ly(e, n) {
  var r = this.__data__, o = jA(r, e);
  return o < 0 ? (++this.size, r.push([e, n])) : r[o][1] = n, this;
}
function yr(e) {
  var n = -1, r = e == null ? 0 : e.length;
  for (this.clear(); ++n < r; ) {
    var o = e[n];
    this.set(o[0], o[1]);
  }
}
yr.prototype.clear = ry;
yr.prototype.delete = oy;
yr.prototype.get = iy;
yr.prototype.has = Ay;
yr.prototype.set = ly;
var Mo = xa(vr, "Map");
function cy() {
  this.size = 0, this.__data__ = {
    hash: new ms(),
    map: new (Mo || yr)(),
    string: new ms()
  };
}
function uy(e) {
  var n = typeof e;
  return n == "string" || n == "number" || n == "symbol" || n == "boolean" ? e !== "__proto__" : e === null;
}
function EA(e, n) {
  var r = e.__data__;
  return uy(n) ? r[typeof n == "string" ? "string" : "hash"] : r.map;
}
function fy(e) {
  var n = EA(this, e).delete(e);
  return this.size -= n ? 1 : 0, n;
}
function dy(e) {
  return EA(this, e).get(e);
}
function hy(e) {
  return EA(this, e).has(e);
}
function py(e, n) {
  var r = EA(this, e), o = r.size;
  return r.set(e, n), this.size += r.size == o ? 0 : 1, this;
}
function ks(e) {
  var n = -1, r = e == null ? 0 : e.length;
  for (this.clear(); ++n < r; ) {
    var o = e[n];
    this.set(o[0], o[1]);
  }
}
ks.prototype.clear = cy;
ks.prototype.delete = fy;
ks.prototype.get = dy;
ks.prototype.has = hy;
ks.prototype.set = py;
function my(e, n) {
  for (var r = -1, o = n.length, l = e.length; ++r < o; )
    e[l + r] = n[r];
  return e;
}
function gy() {
  this.__data__ = new yr(), this.size = 0;
}
function xy(e) {
  var n = this.__data__, r = n.delete(e);
  return this.size = n.size, r;
}
function wy(e) {
  return this.__data__.get(e);
}
function by(e) {
  return this.__data__.has(e);
}
var vy = 200;
function yy(e, n) {
  var r = this.__data__;
  if (r instanceof yr) {
    var o = r.__data__;
    if (!Mo || o.length < vy - 1)
      return o.push([e, n]), this.size = ++r.size, this;
    r = this.__data__ = new ks(o);
  }
  return r.set(e, n), this.size = r.size, this;
}
function Ur(e) {
  var n = this.__data__ = new yr(e);
  this.size = n.size;
}
Ur.prototype.clear = gy;
Ur.prototype.delete = xy;
Ur.prototype.get = wy;
Ur.prototype.has = by;
Ur.prototype.set = yy;
function ky(e, n) {
  for (var r = -1, o = e == null ? 0 : e.length, l = 0, c = []; ++r < o; ) {
    var v = e[r];
    n(v, r, e) && (c[l++] = v);
  }
  return c;
}
function My() {
  return [];
}
var jy = Object.prototype, Ey = jy.propertyIsEnumerable, Id = Object.getOwnPropertySymbols, Dy = Id ? function(e) {
  return e == null ? [] : (e = Object(e), ky(Id(e), function(n) {
    return Ey.call(e, n);
  }));
} : My;
function Ty(e, n, r) {
  var o = n(e);
  return dA(e) ? o : my(o, r(e));
}
function Pd(e) {
  return Ty(e, Y2, Dy);
}
var Qc = xa(vr, "DataView"), Xc = xa(vr, "Promise"), Fc = xa(vr, "Set"), Od = "[object Map]", Ny = "[object Object]", zd = "[object Promise]", Hd = "[object Set]", Sd = "[object WeakMap]", Rd = "[object DataView]", Cy = ys(Qc), Iy = ys(Mo), Py = ys(Xc), Oy = ys(Fc), zy = ys(Bc), qr = Do;
(Qc && qr(new Qc(new ArrayBuffer(1))) != Rd || Mo && qr(new Mo()) != Od || Xc && qr(Xc.resolve()) != zd || Fc && qr(new Fc()) != Hd || Bc && qr(new Bc()) != Sd) && (qr = function(e) {
  var n = Do(e), r = n == Ny ? e.constructor : void 0, o = r ? ys(r) : "";
  if (o)
    switch (o) {
      case Cy:
        return Rd;
      case Iy:
        return Od;
      case Py:
        return zd;
      case Oy:
        return Hd;
      case zy:
        return Sd;
    }
  return n;
});
var Bd = vr.Uint8Array, Hy = "__lodash_hash_undefined__";
function Sy(e) {
  return this.__data__.set(e, Hy), this;
}
function Ry(e) {
  return this.__data__.has(e);
}
function hA(e) {
  var n = -1, r = e == null ? 0 : e.length;
  for (this.__data__ = new ks(); ++n < r; )
    this.add(e[n]);
}
hA.prototype.add = hA.prototype.push = Sy;
hA.prototype.has = Ry;
function By(e, n) {
  for (var r = -1, o = e == null ? 0 : e.length; ++r < o; )
    if (n(e[r], r, e))
      return !0;
  return !1;
}
function Ly(e, n) {
  return e.has(n);
}
var Qy = 1, Xy = 2;
function Ip(e, n, r, o, l, c) {
  var v = r & Qy, w = e.length, A = n.length;
  if (w != A && !(v && A > w))
    return !1;
  var h = c.get(e), f = c.get(n);
  if (h && f)
    return h == n && f == e;
  var b = -1, x = !0, g = r & Xy ? new hA() : void 0;
  for (c.set(e, n), c.set(n, e); ++b < w; ) {
    var y = e[b], k = n[b];
    if (o)
      var D = v ? o(k, y, b, n, e, c) : o(y, k, b, e, n, c);
    if (D !== void 0) {
      if (D)
        continue;
      x = !1;
      break;
    }
    if (g) {
      if (!By(n, function(C, S) {
        if (!Ly(g, S) && (y === C || l(y, C, r, o, c)))
          return g.push(S);
      })) {
        x = !1;
        break;
      }
    } else if (!(y === k || l(y, k, r, o, c))) {
      x = !1;
      break;
    }
  }
  return c.delete(e), c.delete(n), x;
}
function Fy(e) {
  var n = -1, r = Array(e.size);
  return e.forEach(function(o, l) {
    r[++n] = [l, o];
  }), r;
}
function qy(e) {
  var n = -1, r = Array(e.size);
  return e.forEach(function(o) {
    r[++n] = o;
  }), r;
}
var Gy = 1, Yy = 2, Uy = "[object Boolean]", Jy = "[object Date]", Zy = "[object Error]", Wy = "[object Map]", Vy = "[object Number]", Ky = "[object RegExp]", _y = "[object Set]", $y = "[object String]", e8 = "[object Symbol]", t8 = "[object ArrayBuffer]", n8 = "[object DataView]", Ld = fa ? fa.prototype : void 0, yc = Ld ? Ld.valueOf : void 0;
function r8(e, n, r, o, l, c, v) {
  switch (r) {
    case n8:
      if (e.byteLength != n.byteLength || e.byteOffset != n.byteOffset)
        return !1;
      e = e.buffer, n = n.buffer;
    case t8:
      return !(e.byteLength != n.byteLength || !c(new Bd(e), new Bd(n)));
    case Uy:
    case Jy:
    case Vy:
      return jp(+e, +n);
    case Zy:
      return e.name == n.name && e.message == n.message;
    case Ky:
    case $y:
      return e == n + "";
    case Wy:
      var w = Fy;
    case _y:
      var A = o & Gy;
      if (w || (w = qy), e.size != n.size && !A)
        return !1;
      var h = v.get(e);
      if (h)
        return h == n;
      o |= Yy, v.set(e, n);
      var f = Ip(w(e), w(n), o, l, c, v);
      return v.delete(e), f;
    case e8:
      if (yc)
        return yc.call(e) == yc.call(n);
  }
  return !1;
}
var s8 = 1, a8 = Object.prototype, o8 = a8.hasOwnProperty;
function i8(e, n, r, o, l, c) {
  var v = r & s8, w = Pd(e), A = w.length, h = Pd(n), f = h.length;
  if (A != f && !v)
    return !1;
  for (var b = A; b--; ) {
    var x = w[b];
    if (!(v ? x in n : o8.call(n, x)))
      return !1;
  }
  var g = c.get(e), y = c.get(n);
  if (g && y)
    return g == n && y == e;
  var k = !0;
  c.set(e, n), c.set(n, e);
  for (var D = v; ++b < A; ) {
    x = w[b];
    var C = e[x], S = n[x];
    if (o)
      var G = v ? o(S, C, x, n, e, c) : o(C, S, x, e, n, c);
    if (!(G === void 0 ? C === S || l(C, S, r, o, c) : G)) {
      k = !1;
      break;
    }
    D || (D = x == "constructor");
  }
  if (k && !D) {
    var Q = e.constructor, W = n.constructor;
    Q != W && "constructor" in e && "constructor" in n && !(typeof Q == "function" && Q instanceof Q && typeof W == "function" && W instanceof W) && (k = !1);
  }
  return c.delete(e), c.delete(n), k;
}
var A8 = 1, Qd = "[object Arguments]", Xd = "[object Array]", eA = "[object Object]", l8 = Object.prototype, Fd = l8.hasOwnProperty;
function c8(e, n, r, o, l, c) {
  var v = dA(e), w = dA(n), A = v ? Xd : qr(e), h = w ? Xd : qr(n);
  A = A == Qd ? eA : A, h = h == Qd ? eA : h;
  var f = A == eA, b = h == eA, x = A == h;
  if (x && Lc(e)) {
    if (!Lc(n))
      return !1;
    v = !0, f = !1;
  }
  if (x && !f)
    return c || (c = new Ur()), v || Cp(e) ? Ip(e, n, r, o, l, c) : r8(e, n, A, r, o, l, c);
  if (!(r & A8)) {
    var g = f && Fd.call(e, "__wrapped__"), y = b && Fd.call(n, "__wrapped__");
    if (g || y) {
      var k = g ? e.value() : e, D = y ? n.value() : n;
      return c || (c = new Ur()), l(k, D, r, o, c);
    }
  }
  return x ? (c || (c = new Ur()), i8(e, n, r, o, l, c)) : !1;
}
function Pp(e, n, r, o, l) {
  return e === n ? !0 : e == null || n == null || !yo(e) && !yo(n) ? e !== e && n !== n : c8(e, n, r, o, Pp, l);
}
function u8(e, n) {
  return Pp(e, n);
}
const qd = ({
  className: e,
  children: n,
  colSpan: r,
  sticky: o = !1,
  ...l
}) => {
  const c = me(
    "!py-2 !pl-0 !pr-6 text-left align-top",
    o && "sticky top-0 bg-white",
    l.onClick && "hover:cursor-pointer",
    e
  );
  return /* @__PURE__ */ a.jsx("th", { className: c, colSpan: r, ...l, children: /* @__PURE__ */ a.jsx(ct, { className: "whitespace-nowrap", level: 6, children: n }) });
}, Op = ({
  left: e,
  center: n,
  right: r,
  sticky: o = !0,
  containerClassName: l,
  children: c
}) => {
  const v = me(
    "z-50 h-22 min-h-[92px] p-8",
    !c && "flex items-center justify-between gap-3",
    o && "sticky top-0",
    l
  );
  if (!c) {
    if (e) {
      const w = me(
        "flex flex-auto items-center",
        r && n && "basis-1/3",
        !r && n && "basis-1/2"
      );
      e = /* @__PURE__ */ a.jsx("div", { className: w, children: e });
    }
    if (n) {
      const w = me(
        "flex flex-auto items-center justify-center",
        e && r && "basis-1/3",
        (e && !r || !e && r) && "basis-1/2"
      );
      n = /* @__PURE__ */ a.jsx("div", { className: w, children: n });
    }
    if (r) {
      const w = me(
        "flex flex-auto items-center justify-end",
        e && n && "basis-1/3",
        !e && n && "basis-1/2"
      );
      r = /* @__PURE__ */ a.jsx("div", { className: w, children: r });
    }
  }
  return /* @__PURE__ */ a.jsx("div", { className: v, children: c || /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
    e,
    n,
    r
  ] }) });
}, zp = ({ items: e, setItems: n, blank: r, canAddNewItem: o }) => {
  const [l, c] = se(e.map((x, g) => ({ item: x, id: g.toString() }))), [v, w] = se(r);
  return ye(() => {
    const x = l.map(({ item: g }) => g);
    o(v) && x.push(v), u8(JSON.parse(JSON.stringify(x)), JSON.parse(JSON.stringify(e))) || n(x);
  }, [l, v, e, n, o]), {
    items: l,
    updateItem: (x, g) => {
      const y = l.map((k) => k.id === x ? { ...k, item: g } : k);
      c(y), n(y.map((k) => k.item));
    },
    addItem: () => {
      if (o(v)) {
        const x = l.reduce((y, k) => Math.max(y, parseInt(k.id)), 0), g = l.concat({ item: v, id: (x + 1).toString() });
        c(g), n(g.map((y) => y.item)), w(r);
      }
    },
    removeItem: (x) => {
      const g = l.filter((y) => y.id !== x);
      c(g), n(g.map((y) => y.item));
    },
    moveItem: (x, g) => {
      if (x !== g) {
        const y = l.findIndex((C) => C.id === x), k = g ? l.findIndex((C) => C.id === g) : 0, D = pb(l, y, k);
        c(D), n(D.map((C) => C.item));
      }
    },
    newItem: v,
    setNewItem: w
  };
};
function Hp(e) {
  const n = "The URL must be in a format like https://www.threads.net/@yourUsername";
  if (!e)
    return "";
  if (e.startsWith("http")) {
    if (!e.includes("threads.net") && !e.includes("threads.com"))
      throw new Error(n);
    if (e = e.replace("threads.com", "threads.net"), e.includes("www.") || (e = e.replace("https://", "https://www.")), !jt.isURL(e))
      throw new Error(n);
    if (!e.match(/^https:\/\/www\.threads\.net\/@?[a-zA-Z0-9._]+$/))
      throw new Error(n);
    return e;
  }
  if (!e.includes("/")) {
    if (e.startsWith("@") && (e = e.slice(1)), !e.match(/^[a-zA-Z0-9._]+$/))
      throw new Error(n);
    return `https://www.threads.net/@${e}`;
  }
  throw new Error(n);
}
const f8 = (e) => `https://www.threads.net/${e}`, d8 = (e) => {
  var r;
  const n = (r = e.match(/(?:https:\/\/)(?:www\.)?(?:threads\.(?:com|net))(?:\/)?(?:#!\/)?@?([^/]*)/)) == null ? void 0 : r[1];
  return n ? `@${n}` : null;
}, Aa = {
  INVALID_USERNAME: "Your Username is not a valid Bluesky Username",
  INVALID_URL: "The URL must be in a format like https://bsky.app/profile/yourUsername"
};
function Sp(e) {
  return [
    // DID username: did:plc: + 24-character Base32 identifier (lowercase a–z, digits 2–7)
    /^did:plc:[a-z2-7]{24}$/,
    // Regular username: max 15 chars
    /^[a-zA-Z0-9._]{1,15}$/,
    // Domain username: requires dot, max 191 chars
    // length check needs to be at the front because of the +, otherwise could go over 191 
    /^(?=.{1,191}$)[a-zA-Z0-9._-]+\.[a-zA-Z0-9._-]+$/
  ].some((r) => r.test(e));
}
function qc(e) {
  let n = e.trim();
  return n.startsWith("@") && (n = n.slice(1)), n.startsWith("did:plc:") ? n.toLowerCase() : n;
}
function Rp(e) {
  if (!e)
    return "";
  let n;
  if (e.startsWith("http") || e.startsWith("www.") || e.includes("bsky.app")) {
    if (!e.includes("bsky.app"))
      throw new Error(Aa.INVALID_URL);
    const o = e.match(/bsky\.app\/profile\/@?([^/]+)/);
    if (!o)
      throw new Error(Aa.INVALID_URL);
    n = qc(o[1]);
  } else
    n = qc(e);
  if (!Sp(n))
    throw new Error(Aa.INVALID_USERNAME);
  const r = `https://bsky.app/profile/${n}`;
  if (!jt.isURL(r))
    throw new Error(Aa.INVALID_URL);
  return r;
}
const h8 = (e) => {
  if (!e)
    throw new Error(Aa.INVALID_USERNAME);
  let n = qc(e);
  if (!Sp(n))
    throw new Error(Aa.INVALID_USERNAME);
  return `https://bsky.app/profile/${n}`;
}, p8 = (e) => {
  const n = e.match(/(?:https?:\/\/)?(?:www\.)?bsky\.app\/profile\/@?([^/]*)/);
  return n ? `${n[1]}` : null;
}, hs = {
  INVALID_URL: "The URL must be in a format like https://www.linkedin.com/in/yourUsername",
  INVALID_USERNAME: "Your Username is not a valid LinkedIn Username"
}, m8 = ["in", "pub", "company", "school"], g8 = /^[a-zA-Z0-9-]{3,100}$/, x8 = /^[a-zA-Z0-9-]{3,100}(?:\/[a-zA-Z0-9-]*)*$/, Bp = /^(?:https?:\/\/)?(?:www\.)?(?:([a-z]{2})\.)?linkedin\.com\/(in|pub|company|school)\/([^?#]+)/i, Gc = (e) => e.trim().replace(/^@/, ""), Lp = (e) => {
  if (/^(https?:\/\/|www\.)/.test(e) || e.includes("linkedin.com")) {
    const o = e.match(Bp);
    if (!o)
      throw new Error(hs.INVALID_URL);
    if (o[0].length !== e.length)
      throw new Error(hs.INVALID_USERNAME);
    const [, l, c, v] = o, w = Gc(v);
    if (l && !/^[A-Z]{2}$/.test(l.toUpperCase()))
      throw new Error(hs.INVALID_URL);
    return { regional: l, pathType: c, username: w };
  }
  const n = Gc(e), r = n.indexOf("/");
  if (r !== -1) {
    const o = n.substring(0, r);
    if (m8.includes(o))
      return { pathType: o, username: n.substring(r + 1) };
  }
  return { username: n };
}, Qp = (e, n) => (e === "pub" ? x8 : g8).test(n), Xp = ({ regional: e, pathType: n, username: r }) => {
  const l = `https://${e ? `${e.toLowerCase()}.` : "www."}linkedin.com/${n}/${r}`;
  if (!jt.isURL(l))
    throw new Error(hs.INVALID_URL);
  return l;
};
function Fp(e) {
  if (!e)
    return "";
  const { regional: n, pathType: r = "in", username: o } = Lp(e);
  if (!Qp(r, o))
    throw new Error(hs.INVALID_USERNAME);
  return Xp({ regional: n, pathType: r, username: o });
}
const w8 = (e) => {
  if (!e)
    throw new Error(hs.INVALID_USERNAME);
  const { regional: n, pathType: r = "in", username: o } = Lp(e);
  if (!Qp(r, o))
    throw new Error(hs.INVALID_USERNAME);
  return Xp({ regional: n, pathType: r, username: o });
}, b8 = (e) => {
  const n = e.match(Bp);
  if (!n)
    return null;
  const [, , r, o] = n, l = Gc(o);
  return r === "in" ? l : `${r}/${l}`;
};
function qp(e) {
  const n = "The URL must be in a format like https://www.instagram.com/yourUsername", r = "Your Username is not a valid Instagram Username";
  if (!e)
    return "";
  let o;
  if (e.startsWith("http") || e.startsWith("www.") || e.includes("instagram.com")) {
    if (!e.includes("instagram.com"))
      throw new Error(n);
    const c = e.match(/(?:https?:\/\/)?(?:www\.)?instagram\.com\/@?([^/]+)/);
    if (!c)
      throw new Error(n);
    o = c[1];
  } else
    o = e.startsWith("@") ? e.slice(1) : e;
  if (!o.match(/^[a-zA-Z0-9][a-zA-Z0-9._]{0,28}[a-zA-Z0-9]$/) || o.includes("..") || o.length > 30)
    throw new Error(r);
  const l = `https://www.instagram.com/${o}`;
  if (!jt.isURL(l))
    throw new Error(n);
  return l;
}
const v8 = (e) => {
  const n = "Your Username is not a valid Instagram Username";
  if (!e)
    throw new Error(n);
  let r = e;
  if (r.startsWith("@") && (r = r.slice(1)), !r.match(/^[a-zA-Z0-9][a-zA-Z0-9._]{0,28}[a-zA-Z0-9]$/) || r.includes("..") || r.length > 30)
    throw new Error(n);
  return `https://www.instagram.com/${r}`;
}, y8 = (e) => {
  const n = e.match(/(?:https?:\/\/)?(?:www\.)?instagram\.com\/@?([^/]*)/);
  return n ? `${n[1]}` : null;
};
function Gp(e) {
  const n = "The URL must be in a format like https://www.youtube.com/@yourUsername, https://www.youtube.com/user/yourUsername, or https://www.youtube.com/channel/yourChannelId", r = "Your Username is not a valid YouTube Username";
  if (!e)
    return "";
  let o;
  if (e.startsWith("http") || e.startsWith("www.") || e.includes("youtube.com")) {
    if (!e.includes("youtube.com"))
      throw new Error(n);
    const c = e.match(/(?:https?:\/\/)?(?:www\.)?youtube\.com\/((?:@|user\/|channel\/)[^/]+)/);
    if (!c)
      throw new Error(n);
    o = c[1];
  } else
    o = e;
  if (o.startsWith("@")) {
    const c = o.slice(1);
    if (!c.match(/^[a-zA-Z0-9][a-zA-Z0-9._-]{1,28}[a-zA-Z0-9]$/) || c.includes("..") || c.length > 30)
      throw new Error(r);
  } else if (o.startsWith("user/")) {
    if (!o.slice(5).match(/^[a-zA-Z0-9._-]{1,50}$/))
      throw new Error(r);
  } else if (o.startsWith("channel/")) {
    if (!o.slice(8).match(/^UC[a-zA-Z0-9_-]{22}$/))
      throw new Error(r);
  } else
    throw new Error(n);
  const l = `https://www.youtube.com/${o}`;
  if (!jt.isURL(l))
    throw new Error(n);
  return l;
}
const k8 = (e) => {
  const n = "Your Username is not a valid YouTube Username";
  if (!e)
    throw new Error(n);
  if (e.startsWith("@")) {
    const r = e.slice(1);
    if (!r.match(/^[a-zA-Z0-9][a-zA-Z0-9._-]{1,28}[a-zA-Z0-9]$/) || r.includes("..") || r.length > 30)
      throw new Error(n);
  } else if (e.startsWith("user/")) {
    if (!e.slice(5).match(/^[a-zA-Z0-9._-]{1,50}$/))
      throw new Error(n);
  } else if (e.startsWith("channel/")) {
    if (!e.slice(8).match(/^UC[a-zA-Z0-9_-]{22}$/))
      throw new Error(n);
  } else
    throw new Error("The handle must be in a format like @yourUsername, user/yourUsername, or channel/yourChannelId");
  return `https://www.youtube.com/${e}`;
}, M8 = (e) => {
  const n = e.match(/(?:https?:\/\/)?(?:www\.)?youtube\.com\/((?:@|user\/|channel\/)[^/]*)/);
  return n ? n[1] : null;
};
function Yp(e) {
  const n = "The URL must be in a format like https://www.tiktok.com/@yourUsername", r = "Your Username is not a valid TikTok Username";
  if (!e)
    return "";
  let o;
  if (e.startsWith("http") || e.startsWith("www.") || e.includes("tiktok.com")) {
    if (!e.includes("tiktok.com"))
      throw new Error(n);
    const v = e.match(/(?:https?:\/\/)?(?:www\.)?tiktok\.com\/(@[^/]+)/);
    if (!v)
      throw new Error(n);
    o = v[1];
  } else
    o = e.startsWith("@") ? e : `@${e}`;
  const l = o.slice(1);
  if (!l.match(/^[a-zA-Z0-9][a-zA-Z0-9._]{0,22}[a-zA-Z0-9]$/) || l.includes("..") || l.length < 2 || l.length > 24)
    throw new Error(r);
  const c = `https://www.tiktok.com/${o}`;
  if (!jt.isURL(c))
    throw new Error(n);
  return c;
}
const j8 = (e) => {
  const n = "Your Username is not a valid TikTok Username";
  if (!e)
    throw new Error(n);
  const r = e.startsWith("@") ? e : `@${e}`, o = r.slice(1);
  if (!o.match(/^[a-zA-Z0-9][a-zA-Z0-9._]{0,22}[a-zA-Z0-9]$/) || o.includes("..") || o.length < 2 || o.length > 24)
    throw new Error(n);
  return `https://www.tiktok.com/${r}`;
}, E8 = (e) => {
  const n = e.match(/(?:https?:\/\/)?(?:www\.)?tiktok\.com\/(@[^/]*)/);
  return n ? n[1] : null;
};
function Up(e) {
  const n = "The URL must be in a format like @username@instance.tld or https://instance.tld/@username or https://website.com/@username@instance.tld";
  if (!e)
    return "";
  let r = e;
  if (r = r.replace(/^https?:\/\//, ""), r.match(/^@[^@]+@[^/]+$/)) {
    const [o, l] = r.split("@").slice(1);
    if (!jt.isFQDN(l))
      throw new Error(n);
    return `https://${l}/@${o}`;
  }
  if (r.match(/^[^/]+\.[^/]+\/@[^/]+(@[^/]+)?$/)) {
    const [o, l] = r.split("/@");
    if (!jt.isFQDN(o))
      throw new Error(n);
    if (l.includes("@")) {
      const [, c] = l.split("@");
      if (!jt.isFQDN(c))
        throw new Error(n);
    }
    return `https://${r}`;
  }
  throw new Error(n);
}
const D8 = (e) => {
  const n = "Your Username is not a valid Mastodon Username";
  if (!e)
    throw new Error(n);
  if (e.match(/^@[^@]+@[^/]+$/)) {
    const [r, o] = e.split("@").slice(1);
    if (!jt.isFQDN(o))
      throw new Error(n);
    return `https://${o}/@${r}`;
  }
  if (e.match(/^[^/]+\.[^/]+\/@[^/]+(@[^/]+)?$/)) {
    const [r, o] = e.split("/@");
    if (!jt.isFQDN(r))
      throw new Error(n);
    if (o.includes("@")) {
      const [, l] = o.split("@");
      if (!jt.isFQDN(l))
        throw new Error(n);
    }
    return `https://${e}`;
  }
  throw new Error(n);
}, T8 = (e) => e.replace(/^https?:\/\//, ""), N8 = typeof process == "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...e) => console.error("SEMVER", ...e) : () => {
};
var Jp = N8;
const Zp = 256, C8 = Number.MAX_SAFE_INTEGER || /* istanbul ignore next */
9007199254740991, I8 = 16, P8 = Zp - 6;
var Wp = {
  MAX_LENGTH: Zp,
  MAX_SAFE_COMPONENT_LENGTH: I8,
  MAX_SAFE_BUILD_LENGTH: P8,
  MAX_SAFE_INTEGER: C8
}, Yc = { exports: {} };
(function(e, n) {
  const {
    MAX_SAFE_COMPONENT_LENGTH: r,
    MAX_SAFE_BUILD_LENGTH: o,
    MAX_LENGTH: l
  } = Wp, c = Jp;
  n = e.exports = {};
  const v = n.re = [], w = n.safeRe = [], A = n.src = [], h = n.safeSrc = [], f = n.t = {};
  let b = 0;
  const x = "[a-zA-Z0-9-]", g = [
    ["\\s", 1],
    ["\\d", l],
    [x, o]
  ], y = (D) => {
    for (const [C, S] of g)
      D = D.split(`${C}*`).join(`${C}{0,${S}}`).split(`${C}+`).join(`${C}{1,${S}}`);
    return D;
  }, k = (D, C, S) => {
    const G = y(C), Q = b++;
    c(D, Q, C), f[D] = Q, A[Q] = C, h[Q] = G, v[Q] = new RegExp(C, S ? "g" : void 0), w[Q] = new RegExp(G, S ? "g" : void 0);
  };
  k("NUMERICIDENTIFIER", "0|[1-9]\\d*"), k("NUMERICIDENTIFIERLOOSE", "\\d+"), k("NONNUMERICIDENTIFIER", `\\d*[a-zA-Z-]${x}*`), k("MAINVERSION", `(${A[f.NUMERICIDENTIFIER]})\\.(${A[f.NUMERICIDENTIFIER]})\\.(${A[f.NUMERICIDENTIFIER]})`), k("MAINVERSIONLOOSE", `(${A[f.NUMERICIDENTIFIERLOOSE]})\\.(${A[f.NUMERICIDENTIFIERLOOSE]})\\.(${A[f.NUMERICIDENTIFIERLOOSE]})`), k("PRERELEASEIDENTIFIER", `(?:${A[f.NONNUMERICIDENTIFIER]}|${A[f.NUMERICIDENTIFIER]})`), k("PRERELEASEIDENTIFIERLOOSE", `(?:${A[f.NONNUMERICIDENTIFIER]}|${A[f.NUMERICIDENTIFIERLOOSE]})`), k("PRERELEASE", `(?:-(${A[f.PRERELEASEIDENTIFIER]}(?:\\.${A[f.PRERELEASEIDENTIFIER]})*))`), k("PRERELEASELOOSE", `(?:-?(${A[f.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${A[f.PRERELEASEIDENTIFIERLOOSE]})*))`), k("BUILDIDENTIFIER", `${x}+`), k("BUILD", `(?:\\+(${A[f.BUILDIDENTIFIER]}(?:\\.${A[f.BUILDIDENTIFIER]})*))`), k("FULLPLAIN", `v?${A[f.MAINVERSION]}${A[f.PRERELEASE]}?${A[f.BUILD]}?`), k("FULL", `^${A[f.FULLPLAIN]}$`), k("LOOSEPLAIN", `[v=\\s]*${A[f.MAINVERSIONLOOSE]}${A[f.PRERELEASELOOSE]}?${A[f.BUILD]}?`), k("LOOSE", `^${A[f.LOOSEPLAIN]}$`), k("GTLT", "((?:<|>)?=?)"), k("XRANGEIDENTIFIERLOOSE", `${A[f.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`), k("XRANGEIDENTIFIER", `${A[f.NUMERICIDENTIFIER]}|x|X|\\*`), k("XRANGEPLAIN", `[v=\\s]*(${A[f.XRANGEIDENTIFIER]})(?:\\.(${A[f.XRANGEIDENTIFIER]})(?:\\.(${A[f.XRANGEIDENTIFIER]})(?:${A[f.PRERELEASE]})?${A[f.BUILD]}?)?)?`), k("XRANGEPLAINLOOSE", `[v=\\s]*(${A[f.XRANGEIDENTIFIERLOOSE]})(?:\\.(${A[f.XRANGEIDENTIFIERLOOSE]})(?:\\.(${A[f.XRANGEIDENTIFIERLOOSE]})(?:${A[f.PRERELEASELOOSE]})?${A[f.BUILD]}?)?)?`), k("XRANGE", `^${A[f.GTLT]}\\s*${A[f.XRANGEPLAIN]}$`), k("XRANGELOOSE", `^${A[f.GTLT]}\\s*${A[f.XRANGEPLAINLOOSE]}$`), k("COERCEPLAIN", `(^|[^\\d])(\\d{1,${r}})(?:\\.(\\d{1,${r}}))?(?:\\.(\\d{1,${r}}))?`), k("COERCE", `${A[f.COERCEPLAIN]}(?:$|[^\\d])`), k("COERCEFULL", A[f.COERCEPLAIN] + `(?:${A[f.PRERELEASE]})?(?:${A[f.BUILD]})?(?:$|[^\\d])`), k("COERCERTL", A[f.COERCE], !0), k("COERCERTLFULL", A[f.COERCEFULL], !0), k("LONETILDE", "(?:~>?)"), k("TILDETRIM", `(\\s*)${A[f.LONETILDE]}\\s+`, !0), n.tildeTrimReplace = "$1~", k("TILDE", `^${A[f.LONETILDE]}${A[f.XRANGEPLAIN]}$`), k("TILDELOOSE", `^${A[f.LONETILDE]}${A[f.XRANGEPLAINLOOSE]}$`), k("LONECARET", "(?:\\^)"), k("CARETTRIM", `(\\s*)${A[f.LONECARET]}\\s+`, !0), n.caretTrimReplace = "$1^", k("CARET", `^${A[f.LONECARET]}${A[f.XRANGEPLAIN]}$`), k("CARETLOOSE", `^${A[f.LONECARET]}${A[f.XRANGEPLAINLOOSE]}$`), k("COMPARATORLOOSE", `^${A[f.GTLT]}\\s*(${A[f.LOOSEPLAIN]})$|^$`), k("COMPARATOR", `^${A[f.GTLT]}\\s*(${A[f.FULLPLAIN]})$|^$`), k("COMPARATORTRIM", `(\\s*)${A[f.GTLT]}\\s*(${A[f.LOOSEPLAIN]}|${A[f.XRANGEPLAIN]})`, !0), n.comparatorTrimReplace = "$1$2$3", k("HYPHENRANGE", `^\\s*(${A[f.XRANGEPLAIN]})\\s+-\\s+(${A[f.XRANGEPLAIN]})\\s*$`), k("HYPHENRANGELOOSE", `^\\s*(${A[f.XRANGEPLAINLOOSE]})\\s+-\\s+(${A[f.XRANGEPLAINLOOSE]})\\s*$`), k("STAR", "(<|>)?=?\\s*\\*"), k("GTE0", "^\\s*>=\\s*0\\.0\\.0\\s*$"), k("GTE0PRE", "^\\s*>=\\s*0\\.0\\.0-0\\s*$");
})(Yc, Yc.exports);
var O8 = Yc.exports;
const z8 = Object.freeze({ loose: !0 }), H8 = Object.freeze({}), S8 = (e) => e ? typeof e != "object" ? z8 : e : H8;
var R8 = S8;
const Gd = /^[0-9]+$/, B8 = (e, n) => {
  const r = Gd.test(e), o = Gd.test(n);
  return r && o && (e = +e, n = +n), e === n ? 0 : r && !o ? -1 : o && !r ? 1 : e < n ? -1 : 1;
};
var L8 = {
  compareIdentifiers: B8
};
const tA = Jp, { MAX_LENGTH: Yd, MAX_SAFE_INTEGER: nA } = Wp, { safeRe: rA, t: sA } = O8, Q8 = R8, { compareIdentifiers: ra } = L8;
let X8 = class $n {
  constructor(n, r) {
    if (r = Q8(r), n instanceof $n) {
      if (n.loose === !!r.loose && n.includePrerelease === !!r.includePrerelease)
        return n;
      n = n.version;
    } else if (typeof n != "string")
      throw new TypeError(`Invalid version. Must be a string. Got type "${typeof n}".`);
    if (n.length > Yd)
      throw new TypeError(
        `version is longer than ${Yd} characters`
      );
    tA("SemVer", n, r), this.options = r, this.loose = !!r.loose, this.includePrerelease = !!r.includePrerelease;
    const o = n.trim().match(r.loose ? rA[sA.LOOSE] : rA[sA.FULL]);
    if (!o)
      throw new TypeError(`Invalid Version: ${n}`);
    if (this.raw = n, this.major = +o[1], this.minor = +o[2], this.patch = +o[3], this.major > nA || this.major < 0)
      throw new TypeError("Invalid major version");
    if (this.minor > nA || this.minor < 0)
      throw new TypeError("Invalid minor version");
    if (this.patch > nA || this.patch < 0)
      throw new TypeError("Invalid patch version");
    o[4] ? this.prerelease = o[4].split(".").map((l) => {
      if (/^[0-9]+$/.test(l)) {
        const c = +l;
        if (c >= 0 && c < nA)
          return c;
      }
      return l;
    }) : this.prerelease = [], this.build = o[5] ? o[5].split(".") : [], this.format();
  }
  format() {
    return this.version = `${this.major}.${this.minor}.${this.patch}`, this.prerelease.length && (this.version += `-${this.prerelease.join(".")}`), this.version;
  }
  toString() {
    return this.version;
  }
  compare(n) {
    if (tA("SemVer.compare", this.version, this.options, n), !(n instanceof $n)) {
      if (typeof n == "string" && n === this.version)
        return 0;
      n = new $n(n, this.options);
    }
    return n.version === this.version ? 0 : this.compareMain(n) || this.comparePre(n);
  }
  compareMain(n) {
    return n instanceof $n || (n = new $n(n, this.options)), ra(this.major, n.major) || ra(this.minor, n.minor) || ra(this.patch, n.patch);
  }
  comparePre(n) {
    if (n instanceof $n || (n = new $n(n, this.options)), this.prerelease.length && !n.prerelease.length)
      return -1;
    if (!this.prerelease.length && n.prerelease.length)
      return 1;
    if (!this.prerelease.length && !n.prerelease.length)
      return 0;
    let r = 0;
    do {
      const o = this.prerelease[r], l = n.prerelease[r];
      if (tA("prerelease compare", r, o, l), o === void 0 && l === void 0)
        return 0;
      if (l === void 0)
        return 1;
      if (o === void 0)
        return -1;
      if (o === l)
        continue;
      return ra(o, l);
    } while (++r);
  }
  compareBuild(n) {
    n instanceof $n || (n = new $n(n, this.options));
    let r = 0;
    do {
      const o = this.build[r], l = n.build[r];
      if (tA("build compare", r, o, l), o === void 0 && l === void 0)
        return 0;
      if (l === void 0)
        return 1;
      if (o === void 0)
        return -1;
      if (o === l)
        continue;
      return ra(o, l);
    } while (++r);
  }
  // preminor will bump the version up to the next minor release, and immediately
  // down to pre-release. premajor and prepatch work the same way.
  inc(n, r, o) {
    if (n.startsWith("pre")) {
      if (!r && o === !1)
        throw new Error("invalid increment argument: identifier is empty");
      if (r) {
        const l = `-${r}`.match(this.options.loose ? rA[sA.PRERELEASELOOSE] : rA[sA.PRERELEASE]);
        if (!l || l[1] !== r)
          throw new Error(`invalid identifier: ${r}`);
      }
    }
    switch (n) {
      case "premajor":
        this.prerelease.length = 0, this.patch = 0, this.minor = 0, this.major++, this.inc("pre", r, o);
        break;
      case "preminor":
        this.prerelease.length = 0, this.patch = 0, this.minor++, this.inc("pre", r, o);
        break;
      case "prepatch":
        this.prerelease.length = 0, this.inc("patch", r, o), this.inc("pre", r, o);
        break;
      case "prerelease":
        this.prerelease.length === 0 && this.inc("patch", r, o), this.inc("pre", r, o);
        break;
      case "release":
        if (this.prerelease.length === 0)
          throw new Error(`version ${this.raw} is not a prerelease`);
        this.prerelease.length = 0;
        break;
      case "major":
        (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) && this.major++, this.minor = 0, this.patch = 0, this.prerelease = [];
        break;
      case "minor":
        (this.patch !== 0 || this.prerelease.length === 0) && this.minor++, this.patch = 0, this.prerelease = [];
        break;
      case "patch":
        this.prerelease.length === 0 && this.patch++, this.prerelease = [];
        break;
      case "pre": {
        const l = Number(o) ? 1 : 0;
        if (this.prerelease.length === 0)
          this.prerelease = [l];
        else {
          let c = this.prerelease.length;
          for (; --c >= 0; )
            typeof this.prerelease[c] == "number" && (this.prerelease[c]++, c = -2);
          if (c === -1) {
            if (r === this.prerelease.join(".") && o === !1)
              throw new Error("invalid increment argument: identifier already exists");
            this.prerelease.push(l);
          }
        }
        if (r) {
          let c = [r, l];
          o === !1 && (c = [r]), ra(this.prerelease[0], r) === 0 ? isNaN(this.prerelease[1]) && (this.prerelease = c) : this.prerelease = c;
        }
        break;
      }
      default:
        throw new Error(`invalid increment argument: ${n}`);
    }
    return this.raw = this.format(), this.build.length && (this.raw += `+${this.build.join(".")}`), this;
  }
};
var F8 = X8;
const Ud = F8, q8 = (e, n, r = !1) => {
  if (e instanceof Ud)
    return e;
  try {
    return new Ud(e, n);
  } catch (o) {
    if (!r)
      return null;
    throw o;
  }
};
var G8 = q8;
const Y8 = /* @__PURE__ */ Eh(G8);
function Jd(e) {
  if (!e)
    return "";
  const n = e.replace("+moya", "");
  try {
    const r = Y8(n, { includePrerelease: !0 }), o = r == null ? void 0 : r.prerelease;
    if (o && (o == null ? void 0 : o.length) > 0) {
      const c = String(o[0]).split("-")[1];
      return !c || !c.startsWith("g") ? "" : `https://github.com/TryGhost/Ghost/commit/${c.slice(1)}`;
    }
    return `https://github.com/TryGhost/Ghost/releases/tag/v${n}`;
  } catch {
    return "";
  }
}
function U8(e, n) {
  var o;
  const r = !!((o = e.match) != null && o.call(e, /production/i));
  return !!(r && n !== "mysql8" || !r && n === "mysql5");
}
const J8 = ve.create(({}) => {
  const { updateRoute: e } = We();
  let r = Ve().config;
  const o = mb();
  function l() {
    return (/* @__PURE__ */ new Date()).getFullYear();
  }
  function c() {
    return !!r.enableDeveloperExperiments;
  }
  function v() {
    var A;
    return !((A = r.hostSettings) != null && A.siteId);
  }
  return /* @__PURE__ */ a.jsx(
    vt,
    {
      afterClose: () => {
        e("");
      },
      cancelLabel: "",
      footer: /* @__PURE__ */ a.jsx(a.Fragment, {}),
      topRightContent: "close",
      width: 540,
      children: /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col gap-4 pb-7 text-sm", children: [
        /* @__PURE__ */ a.jsx(gb, { className: "h-auto w-[120px] dark:invert" }),
        /* @__PURE__ */ a.jsxs("div", { className: "mt-3 flex flex-col gap-1.5", children: [
          (o == null ? void 0 : o.message) && /* @__PURE__ */ a.jsxs("div", { className: "gh-prose-links mb-4 rounded-sm border border-green p-5", children: [
            /* @__PURE__ */ a.jsx("strong", { children: "Update available!" }),
            /* @__PURE__ */ a.jsx("div", { dangerouslySetInnerHTML: { __html: o.message } })
          ] }),
          Jd(r.version) && /* @__PURE__ */ a.jsxs("div", { children: [
            /* @__PURE__ */ a.jsx("strong", { children: "Version:" }),
            " ",
            /* @__PURE__ */ a.jsx("a", { className: "text-green", href: Jd(r.version), rel: "noopener noreferrer", target: "_blank", children: r.version })
          ] }) || /* @__PURE__ */ a.jsxs("div", { children: [
            /* @__PURE__ */ a.jsx("strong", { children: "Version:" }),
            " ",
            r.version
          ] }),
          v() && /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
            /* @__PURE__ */ a.jsxs("div", { children: [
              /* @__PURE__ */ a.jsx("strong", { children: "Environment:" }),
              " ",
              r.environment
            ] }),
            /* @__PURE__ */ a.jsxs("div", { children: [
              /* @__PURE__ */ a.jsx("strong", { children: "Database:" }),
              " ",
              r.database
            ] }),
            /* @__PURE__ */ a.jsxs("div", { children: [
              /* @__PURE__ */ a.jsx("strong", { children: "Mail:" }),
              " ",
              r.mail ? r.mail : "Native"
            ] })
          ] }),
          c() && /* @__PURE__ */ a.jsxs("div", { children: [
            /* @__PURE__ */ a.jsx("strong", { children: "Developer experiments:" }),
            " Enabled"
          ] }),
          v() && U8(r.environment, r.database) && /* @__PURE__ */ a.jsxs("div", { className: "text-red-500 dark:text-red-400", children: [
            "You are running an unsupported database in production. Please ",
            /* @__PURE__ */ a.jsx("a", { href: "https://ghost.org/docs/faq/supported-databases/", rel: "noopener noreferrer", target: "_blank", children: "upgrade to MySQL 8" }),
            "."
          ] })
        ] }),
        /* @__PURE__ */ a.jsx(xo, {}),
        /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col gap-1.5", children: [
          /* @__PURE__ */ a.jsxs("a", { className: "flex items-center gap-2 hover:text-grey-900 dark:hover:text-grey-400", href: "https://ghost.org/docs/", rel: "noopener noreferrer", target: "_blank", children: [
            /* @__PURE__ */ a.jsx(Mt, { name: "book-open", size: "sm" }),
            " User documentation"
          ] }),
          /* @__PURE__ */ a.jsxs("a", { className: "flex items-center gap-2 hover:text-grey-900 dark:hover:text-grey-400", href: "https://forum.ghost.org/", rel: "noopener noreferrer", target: "_blank", children: [
            /* @__PURE__ */ a.jsx(Mt, { name: "question-circle", size: "sm" }),
            " Get help with Ghost"
          ] }),
          /* @__PURE__ */ a.jsxs("a", { className: "flex items-center gap-2 hover:text-grey-900 dark:hover:text-grey-400", href: "https://ghost.org/docs/contributing/", rel: "noopener noreferrer", target: "_blank", children: [
            /* @__PURE__ */ a.jsx(Mt, { name: "angle-brackets", size: "sm" }),
            " Get involved"
          ] })
        ] }),
        /* @__PURE__ */ a.jsx(xo, {}),
        /* @__PURE__ */ a.jsxs("p", { className: "max-w-[460px] text-xs", children: [
          "Copyright © 2013 – ",
          l(),
          " Ghost Foundation, released under the ",
          /* @__PURE__ */ a.jsx("a", { className: "text-green", href: "https://github.com/TryGhost/Ghost/blob/main/LICENSE", rel: "noopener noreferrer", target: "_blank", children: "MIT license" }),
          ". ",
          /* @__PURE__ */ a.jsx("a", { className: "text-green", href: "https://ghost.org/", rel: "noopener noreferrer", target: "_blank", children: "Ghost" }),
          " is a registered trademark of ",
          /* @__PURE__ */ a.jsx("a", { className: "text-green", href: "https://ghost.org/trademark/", rel: "noopener noreferrer", target: "_blank", children: "Ghost Foundation Ltd" }),
          "."
        ] })
      ] })
    }
  );
}), Z8 = () => {
  const e = fn(), { updateRoute: n } = We(), [r, o] = se(""), [l, c] = se({ name: "" }), { mutateAsync: v } = xb(), w = da(), A = rt();
  return ye(() => {
    w != null && w.isLimited("customIntegrations") && w.errorIfWouldGoOverLimit("customIntegrations").catch((h) => {
      h instanceof ha && (ve.show(rr, {
        prompt: h.message || "Your current plan doesn't support more custom integrations.",
        onOk: () => n({ route: "/pro", isExternal: !0 })
      }), e.remove(), n("integrations"));
    });
  }, [w, e, n]), /* @__PURE__ */ a.jsx(
    vt,
    {
      afterClose: () => {
        n("integrations");
      },
      okColor: "black",
      okLabel: "Add",
      size: "sm",
      testId: "add-integration-modal",
      title: "Add integration",
      onOk: async () => {
        if (!r) {
          c({ name: "Name is required" });
          return;
        }
        try {
          const h = await v({ name: r });
          e.remove(), n({ route: `integrations/${h.integrations[0].id}` });
        } catch (h) {
          A(h);
        }
      },
      children: /* @__PURE__ */ a.jsx("div", { className: "mt-5", children: /* @__PURE__ */ a.jsx(
        Ke,
        {
          marginBottom: !1,
          marginTop: !1,
          children: /* @__PURE__ */ a.jsx(
            je,
            {
              autoFocus: !0,
              error: !!l.name,
              hint: l.name,
              maxLength: 191,
              placeholder: "Custom integration",
              title: "Name",
              value: r,
              onChange: (h) => o(h.target.value),
              onInput: () => {
                l.name && c({ name: "" });
              }
            }
          )
        }
      ) })
    }
  );
}, W8 = ve.create(Z8), V8 = () => {
  var g, y;
  const e = fn(), { updateRoute: n } = We(), r = rt(), { data: o } = Dh({
    searchParams: { filter: "newsletters.status:active+email_disabled:0", limit: "1", page: "1", include: "newsletters,labels" }
  }), { mutateAsync: l } = wb(), { formState: c, updateForm: v, saveState: w, handleSave: A, errors: h, clearError: f } = Hn({
    initialState: {
      name: "",
      description: "",
      optInExistingSubscribers: !0
    },
    onSave: async () => {
      const k = await l({
        name: c.name,
        description: c.description,
        opt_in_existing: c.optInExistingSubscribers,
        feedback_enabled: !0
      });
      n({ route: `newsletters/${k.newsletters[0].id}` });
    },
    onSaveError: r,
    onValidate: () => {
      const k = {};
      return c.name || (k.name = "A name is required for your newsletter"), k;
    }
  }), b = da();
  ye(() => {
    b == null || b.errorIfWouldGoOverLimit("newsletters").catch((k) => {
      if (k instanceof ha)
        ve.show(rr, {
          prompt: k.message || "Your current plan doesn't support more newsletters.",
          onOk: () => n({ route: "/pro", isExternal: !0 })
        }), e.remove(), n("newsletters");
      else
        throw k;
    });
  }, [b, e, n]);
  const x = (g = o == null ? void 0 : o.meta) == null ? void 0 : g.pagination.total;
  return /* @__PURE__ */ a.jsx(
    vt,
    {
      afterClose: () => {
        n("newsletters");
      },
      backDropClick: !1,
      okColor: "black",
      okDisabled: w === "saving",
      okLabel: "Create",
      okLoading: w === "saving",
      size: "sm",
      testId: "add-newsletter-modal",
      title: "Create newsletter",
      onOk: async () => {
        await A() && e.remove();
      },
      children: /* @__PURE__ */ a.jsxs(
        Ke,
        {
          marginBottom: !1,
          marginTop: !0,
          children: [
            /* @__PURE__ */ a.jsx(
              je,
              {
                autoFocus: !0,
                error: !!h.name,
                hint: h.name,
                maxLength: 191,
                placeholder: "Weekly roundup",
                title: "Name",
                value: c.name,
                onChange: (k) => v((D) => ({ ...D, name: k.target.value })),
                onKeyDown: () => f("name")
              }
            ),
            /* @__PURE__ */ a.jsx(
              xs,
              {
                maxLength: 2e3,
                title: "Description",
                value: c.description,
                onChange: (k) => v((D) => ({ ...D, description: k.target.value }))
              }
            ),
            /* @__PURE__ */ a.jsx(
              et,
              {
                checked: c.optInExistingSubscribers,
                direction: "rtl",
                hint: c.optInExistingSubscribers ? `This newsletter will be available to all members. Your ${x === void 0 ? "" : Th(x)} existing subscriber${((y = o == null ? void 0 : o.meta) == null ? void 0 : y.pagination.total) === 1 ? "" : "s"} will also be opted-in to receive it.` : "The newsletter will be available to all new members. Existing members won’t be subscribed, but may visit their account area to opt-in to future emails.",
                label: "Opt-in existing subscribers",
                labelStyle: "heading",
                onChange: (k) => v((D) => ({ ...D, optInExistingSubscribers: k.target.checked }))
              }
            )
          ]
        }
      )
    }
  );
}, K8 = ve.create(V8), _8 = ({ recommendation: e, animate: n }) => {
  const r = fn(), { updateRoute: o, route: l } = We(), { mutateAsync: c } = bb(), v = rt(), { formState: w, updateForm: A, handleSave: h, saveState: f, errors: b, clearError: x, setErrors: g } = Hn({
    initialState: {
      ...e
    },
    onSave: async (C) => {
      await c(C), r.remove(), ut({
        title: "Recommendation added",
        type: "success"
      }), yb("Recommendation Added", {
        oneClickSubscribe: C.one_click_subscribe
      }), o("recommendations");
    },
    onSaveError: v,
    onValidate: (C) => vb(C)
  });
  let y = "Add", k = !1;
  f === "saving" ? k = !0 : f === "saved" && (y = "Added");
  let D = {
    label: "Back",
    icon: "arrow-left",
    iconColorClass: "text-black dark:text-white",
    link: !0,
    size: "sm",
    onClick: () => {
      f !== "saving" && (r.remove(), ve.show(Vp, {
        pathName: l,
        animate: !1,
        recommendation: {
          ...w
        }
      }));
    }
  };
  return /* @__PURE__ */ a.jsx(
    vt,
    {
      afterClose: () => {
        o("recommendations");
      },
      animate: n ?? !0,
      backDropClick: !1,
      cancelLabel: "Cancel",
      dirty: !0,
      leftButtonProps: D,
      okColor: "black",
      okLabel: y,
      okLoading: k,
      size: "sm",
      testId: "add-recommendation-modal",
      title: "Add recommendation",
      stickyFooter: !0,
      onCancel: () => {
        f !== "saving" && (r.remove(), o("recommendations"));
      },
      onOk: async () => {
        if (f !== "saving") {
          Nh();
          try {
            await h({ force: !0 });
          } catch {
            ut({
              type: "error",
              title: "Something went wrong when adding this recommendation, please try again."
            });
          }
        }
      },
      children: /* @__PURE__ */ a.jsx(kb, { clearError: x, errors: b, formState: w, setErrors: g, showURL: !1, updateForm: A })
    }
  );
}, $8 = ve.create(_8), Zd = (e) => iA(e).save || "", e6 = function(e, n) {
  try {
    new URL(n).hostname.includes(".") ? delete e.url : e.url = "Enter a valid URL";
  } catch {
    e.url = "Enter a valid URL";
  }
  return e;
}, t6 = ({ searchParams: e, recommendation: n, animate: r }) => {
  const [o, l] = se(!1), c = fn(), { updateRoute: v } = We(), { mutateAsync: w } = Mb(), A = n ? "" : (e == null ? void 0 : e.get("url")) ?? "", { save: h } = A ? iA(A) : { save: "" }, f = _e.useRef(!1), [b, x] = _e.useState(!!h), { formState: g, updateForm: y, handleSave: k, errors: D, saveState: C, clearError: S } = Hn({
    initialState: n ?? {
      title: "",
      url: h || "",
      description: "",
      excerpt: null,
      featured_image: null,
      favicon: null,
      one_click_subscribe: !1
    },
    onSave: async () => {
      let Q;
      Q = new URL(g.url);
      const W = Q.hostname.replace("www.", ""), J = {
        ...g,
        url: Q.toString()
      }, { recommendations: Y = [] } = await w(Q);
      if (!Y || Y.length === 0)
        return;
      const B = Y[0];
      if (B.id)
        throw new ld("A recommendation with this URL already exists.");
      J.title = B.title ?? W, J.excerpt = B.excerpt ?? J.excerpt, J.featured_image = B.featured_image ?? J.featured_image ?? null, J.favicon = B.favicon ?? J.favicon ?? null, J.one_click_subscribe = B.one_click_subscribe ?? J.one_click_subscribe ?? !1, J.description = J.excerpt || null, c.remove(), ve.show($8, {
        animate: !1,
        recommendation: J
      });
    },
    onValidate: () => {
      const Q = {};
      return e6(Q, g.url), b && x(Object.keys(Q).length === 0), Q;
    }
  }), G = _e.useCallback(async () => {
    if (C !== "saving") {
      Nh();
      try {
        if (await k({ force: !0 }))
          return;
      } catch (Q) {
        const W = Q instanceof ld ? Q.message : "Something went wrong while checking this URL, please try again.";
        ut({
          type: "error",
          title: W
        });
      }
      b && x(!1);
    }
  }, [k, C, b, x]);
  return _e.useEffect(() => {
    b && !f.current && (f.current = !0, G());
  }, [b, G]), ye(() => {
    o && (G(), l(!1));
  }, [g]), b ? /* @__PURE__ */ a.jsx(
    vt,
    {
      afterClose: () => {
        v("recommendations");
      },
      animate: r ?? !0,
      backDropClick: !1,
      footer: !1,
      header: !1,
      size: "sm",
      children: /* @__PURE__ */ a.jsx("div", { className: "flex flex-col items-center justify-center p-8", children: /* @__PURE__ */ a.jsx(AA, {}) })
    }
  ) : /* @__PURE__ */ a.jsxs(
    vt,
    {
      afterClose: () => {
        v("recommendations");
      },
      animate: r ?? !0,
      backDropClick: !1,
      okColor: "black",
      okLabel: "Next",
      okLoading: C === "saving",
      size: "sm",
      testId: "add-recommendation-modal",
      title: "Add recommendation",
      onOk: G,
      children: [
        /* @__PURE__ */ a.jsxs("p", { className: "mt-4", children: [
          "You can recommend ",
          /* @__PURE__ */ a.jsx("strong", { children: "any site" }),
          " your audience will find valuable, not just those published on Ghost."
        ] }),
        /* @__PURE__ */ a.jsx(
          Ke,
          {
            marginBottom: !1,
            marginTop: !0,
            children: /* @__PURE__ */ a.jsx(
              je,
              {
                autoFocus: !0,
                error: !!D.url,
                hint: D.url || /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
                  "Need inspiration? ",
                  /* @__PURE__ */ a.jsx("a", { className: "text-green", href: "https://www.ghost.org/explore", rel: "noopener noreferrer", target: "_blank", children: "Explore thousands of sites" }),
                  " to recommend"
                ] }),
                maxLength: 2e3,
                placeholder: "https://www.example.com",
                title: "URL",
                value: g.url,
                onBlur: () => {
                  const Q = Zd(g.url);
                  y((W) => ({ ...W, url: Q }));
                },
                onChange: (Q) => {
                  S == null || S("url"), y((W) => ({ ...W, url: Q.target.value }));
                },
                onKeyDown: (Q) => {
                  Q.key === "Enter" && (Q.preventDefault(), y((W) => ({ ...W, url: Zd(g.url) })), l(!0));
                }
              }
            )
          }
        )
      ]
    }
  );
}, Vp = ve.create(t6);
function n6(e, n) {
  let r;
  return function(...l) {
    const c = () => {
      clearTimeout(r), e(...l);
    };
    clearTimeout(r), r = setTimeout(c, n);
  };
}
const gu = ({ generateContent: e, className: n, height: r, width: o, parentClassName: l, testId: c, addDelay: v = !1 }) => {
  const [w, A] = se(0), h = [tt(null), tt(null)], [f, b] = se(0);
  return ye(() => {
    const x = w === 0 ? 1 : 0, g = h[x].current;
    if (g) {
      e(g);
      const y = () => {
        v ? setTimeout(() => {
          A(x);
        }, 500) : A(x);
      };
      return g.addEventListener("load", y), () => {
        g.removeEventListener("load", y);
      };
    }
  }, [e]), ye(() => {
    var y;
    const x = h[w].current, g = n6(() => {
      var k;
      b(((k = x == null ? void 0 : x.contentWindow) == null ? void 0 : k.scrollY) || 0);
    }, 250);
    return (y = x == null ? void 0 : x.contentWindow) == null || y.addEventListener("scroll", g), () => {
      var k;
      (k = x == null ? void 0 : x.contentWindow) == null || k.removeEventListener("scroll", g);
    };
  }, [w, h]), ye(() => {
    var g;
    const x = h[w].current;
    if (x)
      try {
        (g = x.contentWindow) == null || g.scrollTo(0, f);
      } catch (y) {
        kh(y);
      }
  }, [f, w, h]), /* @__PURE__ */ a.jsxs("div", { className: l, "data-testid": c, children: [
    /* @__PURE__ */ a.jsx(
      "iframe",
      {
        ref: h[0],
        className: `${n} ${w !== 0 ? "z-10 opacity-0" : "z-20 opacity-100"}`,
        "data-visible": w === 0,
        frameBorder: "0",
        height: r,
        title: "Buffered Preview 1",
        width: o
      }
    ),
    /* @__PURE__ */ a.jsx(
      "iframe",
      {
        ref: h[1],
        className: `${n} ${w !== 1 ? "z-10 opacity-0" : "z-20 opacity-100"}`,
        "data-visible": w === 1,
        frameBorder: "0",
        height: r,
        title: "Buffered Preview 2",
        width: o
      }
    )
  ] });
}, r6 = (e, n, r) => {
  const o = new URLSearchParams();
  return o.append("announcement_bg", e || "accent"), o.append("announcement", n || ""), r && r.length > 0 && o.append("announcement_vis", (r == null ? void 0 : r.join(",")) || ""), o.toString();
}, s6 = ({ announcementBackgroundColor: e, announcementContent: n, url: r, visibility: o }) => {
  const l = Gn(() => o, [o == null ? void 0 : o.join(",")]), c = Bt((v) => {
    r && fetch(r, {
      method: "POST",
      headers: {
        "Content-Type": "text/html;charset=utf-8",
        "x-ghost-preview": r6(
          e,
          n,
          l
        ),
        Accept: "text/plain"
      },
      mode: "cors",
      credentials: "include"
    }).then((w) => w.text()).then((w) => {
      var k, D, C;
      const A = "html { pointer-events: none; }", f = new DOMParser().parseFromString(w, "text/html"), b = f.querySelector("style"), x = b.innerHTML;
      b.innerHTML = `${x}

${A}`;
      let y = (f.doctype ? new XMLSerializer().serializeToString(f.doctype) : "") + f.documentElement.outerHTML;
      (k = v.contentDocument) == null || k.open(), (D = v.contentDocument) == null || D.write(y), (C = v.contentDocument) == null || C.close();
    }).catch(() => {
    });
  }, [e, n, r, l]);
  return /* @__PURE__ */ a.jsx(
    gu,
    {
      addDelay: !0,
      className: "absolute size-[110%] origin-top-left scale-[.90909] bg-white max-[1600px]:size-[130%] max-[1600px]:scale-[.76923]",
      generateContent: c,
      height: "100%",
      parentClassName: "relative h-full w-full",
      testId: "announcement-bar-preview-iframe",
      width: "100%"
    }
  );
}, a6 = ({
  announcementContent: e,
  announcementTextHandler: n,
  accentColor: r,
  announcementBackgroundColor: o,
  toggleColorSwatch: l,
  toggleVisibility: c,
  visibility: v = [],
  paidMembersEnabled: w,
  onBlur: A
}) => {
  const h = [
    {
      label: "Public visitors",
      onChange: (f) => {
        c("visitors", f);
      },
      value: "visitors",
      checked: v.includes("visitors")
    },
    {
      label: "Free members",
      onChange: (f) => {
        c("free_members", f);
      },
      value: "free_members",
      checked: v.includes("free_members")
    },
    ...w ? [{
      label: "Paid members",
      onChange: (f) => {
        c("paid_members", f);
      },
      value: "paid_members",
      checked: v.includes("paid_members")
    }] : []
  ];
  return /* @__PURE__ */ a.jsxs(Ke, { children: [
    /* @__PURE__ */ a.jsx(
      du,
      {
        nodes: "MINIMAL_NODES",
        placeholder: "Highlight breaking news, offers or updates",
        title: "Announcement",
        value: e,
        onBlur: A,
        onChange: n
      }
    ),
    /* @__PURE__ */ a.jsx(
      sp,
      {
        isExpanded: !1,
        picker: !1,
        swatches: [
          {
            hex: "#08090c",
            title: "Dark",
            value: "dark"
          },
          {
            hex: "#ffffff",
            title: "Light",
            value: "light"
          },
          {
            hex: r || "#ffdd00",
            title: "Accent",
            value: "accent"
          }
        ],
        swatchSize: "lg",
        title: "Background color",
        value: o,
        onSwatchChange: (f) => {
          f !== null && l(f);
        },
        onTogglePicker: () => {
        }
      }
    ),
    /* @__PURE__ */ a.jsx(
      zc,
      {
        checkboxes: h,
        title: "Visibility"
      }
    )
  ] });
}, o6 = () => {
  const { siteData: e } = Ve(), { localSettings: n, updateSetting: r, handleSave: o, okProps: l } = ws({ savingDelay: 500 }), [c] = ht(n, ["announcement_content"]), [v] = ht(n, ["accent_color"]), [w] = ht(n, ["announcement_background"]), [A] = ht(n, ["announcement_visibility"]), [h] = ht(n, ["paid_members_enabled"]), f = JSON.parse((A == null ? void 0 : A.toString()) || "[]"), { updateRoute: b } = We(), [x, g] = se("homepage"), y = (Y) => {
    r("announcement_background", Y);
  }, k = (Y, B) => {
    const U = f.indexOf(Y);
    U === -1 && B ? f.push(Y) : f.splice(U, 1), r("announcement_visibility", JSON.stringify(f));
  }, D = tt(
    wA((Y) => {
      r("announcement_content", Y);
    }, 500)
  ), C = /* @__PURE__ */ a.jsx(
    a6,
    {
      accentColor: v,
      announcementBackgroundColor: w,
      announcementContent: c,
      announcementTextHandler: (Y) => {
        D.current(Y);
      },
      paidMembersEnabled: h,
      toggleColorSwatch: y,
      toggleVisibility: k,
      visibility: A,
      onBlur: () => {
      }
    }
  ), { data: { posts: [S] } = { posts: [] } } = Ch({
    searchParams: {
      filter: "status:published",
      order: "published_at DESC",
      limit: "1",
      fields: "id,url"
    }
  });
  let G = [];
  S && (G = [
    { id: "homepage", title: "Homepage" },
    { id: "post", title: "Post" }
  ]);
  const Q = (Y) => {
    G.length && g(Y);
  };
  let W = xr(e);
  switch (x) {
    case "homepage":
      W = xr(e);
      break;
    case "post":
      W = S.url;
      break;
  }
  const J = /* @__PURE__ */ a.jsx(
    s6,
    {
      announcementBackgroundColor: w,
      announcementContent: c,
      url: W,
      visibility: f
    }
  );
  return /* @__PURE__ */ a.jsx(
    ga,
    {
      afterClose: () => {
        b("announcement-bar");
      },
      buttonsDisabled: l.disabled,
      cancelLabel: "Close",
      deviceSelector: !0,
      dirty: !1,
      okColor: l.color,
      okLabel: l.label || "Save",
      preview: J,
      previewBgColor: "greygradient",
      previewToolbarTabs: G,
      selectedURL: x,
      sidebar: C,
      testId: "announcement-bar-modal",
      title: "Announcement",
      titleHeadingLevel: 5,
      onOk: async () => {
        await o({ fakeWhenUnchanged: !0 }) || ut({
          type: "error",
          message: "An error occurred while saving your changes. Please try again."
        });
      },
      onSelectURL: Q
    }
  );
}, i6 = ve.create(o6), A6 = ({ label: e, text: n = "", hint: r, onRegenerate: o }) => {
  const [l, c] = se(!1), v = () => {
    navigator.clipboard.writeText(n), c(!0), setTimeout(() => c(!1), 2e3);
  }, w = me(
    "group/api-keys relative -mt-1 mb-1 w-full overflow-hidden border-b border-transparent py-2 hover:border-grey-300 dark:hover:border-grey-600"
  );
  return /* @__PURE__ */ a.jsxs("div", { className: "mb-3 grid grid-cols-1", children: [
    e && /* @__PURE__ */ a.jsx(ct, { level: 6, grey: !0, children: e }),
    /* @__PURE__ */ a.jsxs("div", { className: w, children: [
      /* @__PURE__ */ a.jsx("span", { children: n }),
      r,
      /* @__PURE__ */ a.jsxs("div", { className: "visible absolute right-0 top-1/2 flex translate-y-[-50%] gap-1 bg-white pl-1 text-sm group-hover/api-keys:visible md:invisible dark:bg-black", children: [
        o && /* @__PURE__ */ a.jsx(He, { color: "outline", label: "Regenerate", size: "sm", onClick: o }),
        /* @__PURE__ */ a.jsx(He, { color: "outline", label: l ? "Copied" : "Copy", size: "sm", onClick: v })
      ] })
    ] })
  ] });
}, xu = ({ keys: e }) => /* @__PURE__ */ a.jsx("div", { "data-testid": "api-keys", children: e.map((n) => /* @__PURE__ */ a.jsx(A6, { ...n }, n.label)) }), Uc = [
  {
    label: "Global",
    options: [{ value: "site.changed", label: "Site changed (rebuild)" }]
  },
  {
    label: "Posts",
    options: [
      { value: "post.added", label: "Post created" },
      { value: "post.deleted", label: "Post deleted" },
      { value: "post.edited", label: "Post updated" },
      { value: "post.published", label: "Post published" },
      { value: "post.published.edited", label: "Published post updated" },
      { value: "post.unpublished", label: "Post unpublished" },
      { value: "post.scheduled", label: "Post scheduled" },
      { value: "post.unscheduled", label: "Post unscheduled" },
      { value: "post.tag.attached", label: "Tag added to post" },
      { value: "post.tag.detached", label: "Tag removed from post" }
    ]
  },
  {
    label: "Pages",
    options: [
      { value: "page.added", label: "Page created" },
      { value: "page.deleted", label: "Page deleted" },
      { value: "page.edited", label: "Page updated" },
      { value: "page.published", label: "Page published" },
      { value: "page.published.edited", label: "Published page updated" },
      { value: "page.unpublished", label: "Page unpublished" },
      { value: "page.tag.attached", label: "Tag added to page" },
      { value: "page.tag.detached", label: "Tag removed from page" }
    ]
  },
  {
    label: "Tags",
    options: [
      { value: "tag.added", label: "Tag created" },
      { value: "tag.edited", label: "Tag updated" },
      { value: "tag.deleted", label: "Tag deleted" }
    ]
  },
  {
    label: "Members",
    options: [
      { value: "member.added", label: "Member added" },
      { value: "member.edited", label: "Member updated" },
      { value: "member.deleted", label: "Member deleted" }
    ]
  }
], l6 = (e) => {
  const n = Uc.flatMap(({ options: r }) => r).find((r) => r.value === e);
  return n == null ? void 0 : n.label;
}, c6 = bs({
  method: "POST",
  path: () => "/webhooks/",
  body: (e) => ({ webhooks: [e] }),
  updateQueries: {
    dataType: bA,
    emberUpdateType: "createOrUpdate",
    update: (e, n) => n && {
      ...n,
      integrations: n.integrations.map((r) => {
        const o = e.webhooks[0];
        return o.integration_id === r.id ? { ...r, webhooks: [...r.webhooks || [], o] } : r;
      })
    }
  }
}), u6 = bs({
  method: "PUT",
  path: (e) => `/webhooks/${e.id}/`,
  body: (e) => ({ webhooks: [e] }),
  updateQueries: {
    dataType: bA,
    emberUpdateType: "createOrUpdate",
    update: (e, n) => n && {
      ...n,
      integrations: n.integrations.map((r) => {
        var o;
        return {
          ...r,
          webhooks: (o = r.webhooks) == null ? void 0 : o.map((l) => l.id === e.webhooks[0].id ? e.webhooks[0] : l)
        };
      })
    }
  }
}), f6 = bs({
  method: "DELETE",
  path: (e) => `/webhooks/${e}/`,
  updateQueries: {
    dataType: bA,
    emberUpdateType: "createOrUpdate",
    update: (e, n, r) => ({
      ...n,
      integrations: n.integrations.map((o) => {
        var l;
        return {
          ...o,
          webhooks: (l = o.webhooks) == null ? void 0 : l.filter((c) => c.id !== r)
        };
      })
    })
  }
}), d6 = ({ webhook: e, integrationId: n }) => {
  const r = fn(), { mutateAsync: o } = c6(), { mutateAsync: l } = u6(), c = rt(), { formState: v, updateForm: w, handleSave: A, errors: h, clearError: f } = Hn({
    initialState: e || {},
    onSave: async () => {
      v.id ? await l(v) : await o({ ...v, integration_id: n });
    },
    onSaveError: c,
    onValidate: () => {
      const b = {};
      return v.name || (b.name = "Enter a name"), v.event || (b.event = "Select an event"), v.target_url || (b.target_url = "Enter a target URL"), v.target_url && !jt.isURL(v.target_url, { require_tld: !1 }) && (b.target_url = "Enter a valid URL"), b;
    }
  });
  return /* @__PURE__ */ a.jsx(
    vt,
    {
      okColor: "black",
      okLabel: e ? "Update" : "Add",
      size: "sm",
      testId: "webhook-modal",
      title: "Add webhook",
      formSheet: !0,
      onOk: async () => {
        await A() && r.remove();
      },
      children: /* @__PURE__ */ a.jsx("div", { className: "mt-5", children: /* @__PURE__ */ a.jsxs(
        Ke,
        {
          marginBottom: !1,
          marginTop: !1,
          children: [
            /* @__PURE__ */ a.jsx(
              je,
              {
                error: !!h.name,
                hint: h.name,
                maxLength: 191,
                placeholder: "Custom webhook",
                title: "Name",
                value: v.name,
                onChange: (b) => w((x) => ({ ...x, name: b.target.value })),
                onKeyDown: () => f("name")
              }
            ),
            /* @__PURE__ */ a.jsx(
              Lt,
              {
                error: !!h.event,
                hint: h.event,
                options: Uc,
                prompt: "Select an event",
                selectedOption: Uc.flatMap((b) => b.options).find((b) => b.value === v.event),
                testId: "event-select",
                title: "Event",
                hideTitle: !0,
                onSelect: (b) => {
                  w((x) => ({ ...x, event: b == null ? void 0 : b.value })), f("event");
                }
              }
            ),
            /* @__PURE__ */ a.jsx(
              je,
              {
                error: !!h.target_url,
                hint: h.target_url,
                maxLength: 2e3,
                placeholder: "https://example.com",
                title: "Target URL",
                type: "url",
                value: v.target_url,
                onChange: (b) => w((x) => ({ ...x, target_url: b.target.value })),
                onKeyDown: () => f("target_url")
              }
            ),
            /* @__PURE__ */ a.jsx(
              je,
              {
                maxLength: 191,
                placeholder: "https://example.com",
                title: "Secret",
                value: v.secret || void 0,
                onChange: (b) => w((x) => ({ ...x, secret: b.target.value }))
              }
            )
          ]
        }
      ) })
    }
  );
}, Wd = ve.create(d6), h6 = ({ integration: e }) => {
  var l, c, v;
  const { mutateAsync: n } = f6(), r = rt(), o = (w) => {
    ve.show(Et, {
      title: "Are you sure?",
      prompt: "Deleting this webhook may prevent the integration from functioning.",
      okColor: "red",
      okLabel: "Delete Webhook",
      onOk: async (A) => {
        try {
          await n(w), A == null || A.remove(), ut({
            message: "Webhook deleted",
            type: "info"
          });
        } catch (h) {
          r(h);
        }
      }
    });
  };
  return /* @__PURE__ */ a.jsxs("div", { children: [
    /* @__PURE__ */ a.jsxs(jb, { children: [
      /* @__PURE__ */ a.jsxs(cd, { bgOnHover: !1, children: [
        /* @__PURE__ */ a.jsxs(qd, { children: [
          ((l = e.webhooks) == null ? void 0 : l.length) || 0,
          " ",
          ((c = e.webhooks) == null ? void 0 : c.length) === 1 ? "webhook" : "webhooks"
        ] }),
        /* @__PURE__ */ a.jsx(qd, { children: "Last triggered" })
      ] }),
      (v = e.webhooks) == null ? void 0 : v.map((w) => /* @__PURE__ */ a.jsxs(
        cd,
        {
          action: /* @__PURE__ */ a.jsx(He, { color: "red", label: "Delete", link: !0, onClick: (A) => {
            A == null || A.stopPropagation(), o(w.id);
          } }),
          bgOnHover: !1,
          hideActions: !0,
          onClick: () => {
            ve.show(Wd, {
              webhook: w,
              integrationId: e.id
            });
          },
          children: [
            /* @__PURE__ */ a.jsxs(ud, { className: "w-3/4", children: [
              /* @__PURE__ */ a.jsx("div", { className: "text-sm font-semibold", children: w.name }),
              /* @__PURE__ */ a.jsxs("div", { className: "grid grid-cols-[max-content_1fr] gap-x-1 text-xs leading-snug", children: [
                /* @__PURE__ */ a.jsx("span", { className: "text-grey-600", children: "Event:" }),
                /* @__PURE__ */ a.jsx("span", { children: l6(w.event) }),
                /* @__PURE__ */ a.jsx("span", { className: "text-grey-600", children: "URL:" }),
                /* @__PURE__ */ a.jsx("span", { className: "line-clamp-3 break-all", title: w.target_url, children: w.target_url })
              ] })
            ] }),
            /* @__PURE__ */ a.jsx(ud, { className: "w-1/4 text-sm", children: w.last_triggered_at && new Date(w.last_triggered_at).toLocaleString("default", {
              weekday: "short",
              month: "short",
              day: "numeric",
              year: "numeric",
              hour: "2-digit",
              minute: "2-digit",
              second: "2-digit"
            }) })
          ]
        }
      ))
    ] }),
    /* @__PURE__ */ a.jsx("div", { className: "mt-5", children: /* @__PURE__ */ a.jsx(
      He,
      {
        color: "green",
        icon: "add",
        iconColorClass: "text-green",
        label: "Add webhook",
        size: "sm",
        link: !0,
        onClick: () => {
          ve.show(Wd, {
            integrationId: e.id
          });
        }
      }
    ) })
  ] });
}, Kp = bs({
  method: "POST",
  path: ({ integrationId: e, apiKeyId: n }) => `/integrations/${e}/api_key/${n}/refresh/`,
  body: ({ integrationId: e }) => ({ integrations: [{ id: e }] }),
  updateQueries: {
    emberUpdateType: "createOrUpdate",
    dataType: bA,
    update: (e, n) => n && {
      ...n,
      integrations: n.integrations.map((r) => e.integrations.find(({ id: l }) => l === r.id) || r)
    }
  }
}), p6 = ({ integration: e }) => {
  var W, J;
  const n = fn(), { updateRoute: r } = We(), { mutateAsync: o } = Eb(), { mutateAsync: l } = Kp(), { mutateAsync: c } = pa(), v = rt(), { formState: w, updateForm: A, handleSave: h, saveState: f, errors: b, clearError: x, okProps: g } = Hn({
    initialState: e,
    savingDelay: 500,
    savedDelay: 500,
    onSave: async () => {
      await o(w);
    },
    onSavedStateReset: () => {
      r("integrations");
    },
    onSaveError: v,
    onValidate: () => {
      const Y = {};
      return w.name || (Y.name = "Enter integration title"), Y;
    }
  }), y = (W = e.api_keys) == null ? void 0 : W.find((Y) => Y.type === "admin"), k = (J = e.api_keys) == null ? void 0 : J.find((Y) => Y.type === "content"), [D, C] = se(!1), [S, G] = se(!1);
  ye(() => {
    e.type !== "custom" && (n.remove(), r("integrations"));
  }, [e.type, n, r]);
  const Q = (Y, B) => {
    B(!1);
    const U = Y.type === "content" ? "Content" : "Admin";
    ve.show(Et, {
      title: `Regenerate ${U} API Key`,
      prompt: `You can regenerate ${U} API Key any time, but any scripts or applications using it will need to be updated.`,
      okLabel: `Regenerate ${U} API Key`,
      onOk: async (te) => {
        try {
          await l({ integrationId: e.id, apiKeyId: Y.id }), B(!0), te == null || te.remove();
        } catch (R) {
          v(R);
        }
      }
    });
  };
  return /* @__PURE__ */ a.jsxs(
    vt,
    {
      afterClose: () => {
        r("integrations");
      },
      buttonsDisabled: g.disabled,
      cancelLabel: "Close",
      dirty: f === "unsaved",
      okColor: g.color,
      okLabel: g.label || "Save",
      size: "md",
      testId: "custom-integration-modal",
      title: w.name || "Custom integration",
      stickyFooter: !0,
      onOk: async () => {
        await h({ fakeWhenUnchanged: !0 });
      },
      children: [
        /* @__PURE__ */ a.jsxs("div", { className: "mt-7 flex w-full flex-col gap-7 md:flex-row", children: [
          /* @__PURE__ */ a.jsx("div", { children: /* @__PURE__ */ a.jsx(
            wr,
            {
              height: "100px",
              id: "custom-integration-icon",
              imageURL: w.icon_image || void 0,
              width: "100px",
              onDelete: () => A((Y) => ({ ...Y, icon_image: null })),
              onUpload: async (Y) => {
                try {
                  const B = gr(await c({ file: Y }));
                  A((U) => ({ ...U, icon_image: B }));
                } catch (B) {
                  const U = B;
                  U.response.status === 415 && (U.message = "Unsupported file type"), v(U);
                }
              },
              children: "Upload icon"
            }
          ) }),
          /* @__PURE__ */ a.jsx("div", { className: "flex grow flex-col", children: /* @__PURE__ */ a.jsxs(Ke, { children: [
            /* @__PURE__ */ a.jsx(
              je,
              {
                error: !!b.name,
                hint: b.name,
                maxLength: 191,
                title: "Title",
                value: w.name,
                onChange: (Y) => A((B) => ({ ...B, name: Y.target.value })),
                onKeyDown: () => x("name")
              }
            ),
            /* @__PURE__ */ a.jsx(je, { maxLength: 2e3, title: "Description", value: w.description || "", onChange: (Y) => A((B) => ({ ...B, description: Y.target.value })) }),
            /* @__PURE__ */ a.jsx(xu, { keys: [
              {
                label: "Content API key",
                text: k == null ? void 0 : k.secret,
                hint: S ? /* @__PURE__ */ a.jsx("div", { className: "text-green", children: "Content API Key was successfully regenerated" }) : void 0,
                onRegenerate: () => k && Q(k, G)
              },
              {
                label: "Admin API key",
                text: y == null ? void 0 : y.secret,
                hint: D ? /* @__PURE__ */ a.jsx("div", { className: "text-green", children: "Admin API Key was successfully regenerated" }) : void 0,
                onRegenerate: () => y && Q(y, C)
              },
              {
                label: "API URL",
                text: window.location.origin + ca().subdir
              }
            ] })
          ] }) })
        ] }),
        /* @__PURE__ */ a.jsx("div", { children: /* @__PURE__ */ a.jsx(h6, { integration: e }) })
      ]
    }
  );
}, m6 = ({ params: e }) => {
  const { data: { integrations: n } = {} } = Ih(), r = n == null ? void 0 : n.find(({ id: o }) => o === (e == null ? void 0 : e.id));
  return r ? /* @__PURE__ */ a.jsx(p6, { integration: r }) : null;
}, g6 = ve.create(m6), x6 = ({ problem: e }) => {
  const [n, r] = se(!1), o = () => {
    r(!n);
  };
  return /* @__PURE__ */ a.jsx(
    Wr,
    {
      title: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        /* @__PURE__ */ a.jsxs("div", { className: `${e.level === "error" ? "before:bg-red" : "before:bg-yellow"} relative px-4 text-sm before:absolute before:left-0 before:top-1.5 before:block before:size-2 before:rounded-full before:content-['']`, children: [
          e != null && e.fatal ? /* @__PURE__ */ a.jsx("strong", { children: "Fatal: " }) : /* @__PURE__ */ a.jsx("strong", { children: e.level === "error" ? "Error: " : "Warning: " }),
          /* @__PURE__ */ a.jsx("span", { dangerouslySetInnerHTML: { __html: e.rule } }),
          /* @__PURE__ */ a.jsx("div", { className: "absolute -right-4 top-1", children: /* @__PURE__ */ a.jsx(He, { color: "green", icon: n ? "chevron-down" : "chevron-right", iconColorClass: "text-grey-700", size: "sm", link: !0, onClick: () => o() }) })
        ] }),
        n ? /* @__PURE__ */ a.jsxs("div", { className: "mt-2 px-4 text-[13px] leading-8", children: [
          /* @__PURE__ */ a.jsx("div", { dangerouslySetInnerHTML: { __html: e.details }, className: "mb-4" }),
          /* @__PURE__ */ a.jsx(ct, { level: 6, children: "Affected files:" }),
          /* @__PURE__ */ a.jsx("ul", { className: "mt-1", children: e.failures.map((l) => /* @__PURE__ */ a.jsxs("li", { children: [
            /* @__PURE__ */ a.jsx("code", { children: l.ref }),
            l.message ? `: ${l.message}` : ""
          ] })) })
        ] }) : null
      ] }),
      hideActions: !0,
      separator: !0
    }
  );
}, w6 = ({ title: e, prompt: n, fatalErrors: r, onRetry: o }) => {
  let l = null;
  return r && (l = /* @__PURE__ */ a.jsx("div", { className: "mt-10", children: /* @__PURE__ */ a.jsx(br, { title: "Errors", children: r.map((c) => typeof c.details == "object" && c.details.errors && c.details.errors.length > 0 ? c.details.errors.map((v) => /* @__PURE__ */ a.jsx(x6, { problem: v })) : typeof c.details == "string" ? /* @__PURE__ */ a.jsx(Wr, { title: c.details }) : null) }) })), /* @__PURE__ */ a.jsx(
    Ph,
    {
      cancelLabel: "Close",
      okColor: "black",
      okLabel: "Retry",
      prompt: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        n,
        l
      ] }),
      title: e,
      onOk: o
    }
  );
}, _p = ve.create(w6), wu = () => {
  var l, c;
  const e = Db(), n = (l = e.data) == null ? void 0 : l.themes[0], r = !((c = n == null ? void 0 : n.warnings) != null && c.some((v) => v.code === "GS051-CUSTOM-FONTS")), o = Bt(() => {
    e.refetch();
  }, [e]);
  return { supportsCustomFonts: r, refreshActiveThemeData: o };
};
function b6(e) {
  var r, o;
  let n = ((r = e.package) == null ? void 0 : r.name) || e.name;
  return Tb(e) ? n += " (default)" : Nb(e) ? n += " (legacy)" : ((o = e.package) == null ? void 0 : o.name) !== e.name && (n = /* @__PURE__ */ a.jsxs("span", { className: "text-sm md:text-base", children: [
    n,
    " ",
    /* @__PURE__ */ a.jsxs("span", { className: "text-grey-600", children: [
      "(",
      e.name,
      ")"
    ] })
  ] })), Oh(e) && (n = /* @__PURE__ */ a.jsxs("span", { className: "text-sm font-bold md:text-base", children: [
    n,
    " — ",
    /* @__PURE__ */ a.jsx("span", { className: "text-green", children: " Active" })
  ] })), n;
}
function v6(e) {
  var n;
  return ((n = e.package) == null ? void 0 : n.version) || "1.0";
}
const y6 = ({
  theme: e
}) => {
  const { mutateAsync: n } = nu(), { mutateAsync: r } = Cb(), { refreshActiveThemeData: o } = wu(), l = rt(), c = async () => {
    var b, x;
    try {
      await n(e.name), o(), ut({
        title: "Theme activated",
        type: "success",
        message: /* @__PURE__ */ a.jsxs("div", { children: [
          /* @__PURE__ */ a.jsx("span", { className: "capitalize", children: e.name }),
          " is now your active theme"
        ] })
      });
    } catch (g) {
      let y = null;
      g instanceof ps && ((b = g.response) == null ? void 0 : b.status) === 422 && ((x = g.data) != null && x.errors) ? y = g.data.errors : l(g);
      let k = "Invalid Theme", D = /* @__PURE__ */ a.jsx(a.Fragment, { children: "This theme is invalid and cannot be activated. Fix the following errors and re-upload the theme" });
      y && ve.show(_p, {
        title: k,
        prompt: D,
        fatalErrors: y,
        onRetry: async (C) => {
          C == null || C.remove(), c();
        }
      });
    }
  }, v = async () => {
    const { apiRoot: b } = ca();
    Pb(`${b}/themes/${e.name}/download`);
  }, w = async () => {
    ve.show(Et, {
      title: "Are you sure you want to delete this?",
      prompt: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        "You are about to delete ",
        /* @__PURE__ */ a.jsxs("strong", { children: [
          '"',
          e.name,
          '".'
        ] }),
        " This is permanent! We warned you, k? Maybe download",
        " ",
        /* @__PURE__ */ a.jsx(
          "span",
          {
            className: "cursor-pointer text-green-500",
            onClick: () => {
              v();
            },
            children: "your theme before continuing"
          }
        )
      ] }),
      okLabel: "Delete",
      okRunningLabel: "Deleting",
      okColor: "red",
      onOk: async (b) => {
        try {
          await r(e.name), b == null || b.remove();
        } catch (x) {
          l(x);
        }
      }
    });
  };
  let A = [];
  Oh(e) || A.push(
    /* @__PURE__ */ a.jsx(
      He,
      {
        className: "ml-2",
        color: "green",
        label: "Activate",
        link: !0,
        onClick: c
      },
      "activate"
    )
  );
  let h = [
    {
      id: "download",
      label: "Download",
      onClick: v
    }
  ];
  Ib(e) && h.push({
    id: "delete",
    label: "Delete",
    onClick: w
  });
  const f = {
    iconColorClass: "text-base",
    size: "sm"
  };
  return /* @__PURE__ */ a.jsxs("div", { className: "-mr-3 flex items-center gap-4", children: [
    A,
    /* @__PURE__ */ a.jsx(bp, { items: h, position: "end", triggerButtonProps: f })
  ] });
}, k6 = ({
  themes: e
}) => (e.sort((n, r) => {
  var o, l;
  return n.active && !r.active ? -1 : !n.active && r.active ? 1 : (o = n.package) != null && o.name && ((l = r.package) != null && l.name) ? n.package.name.localeCompare(r.package.name) : n.name.localeCompare(r.name);
}), /* @__PURE__ */ a.jsx(br, { pageTitle: "Installed themes", children: e.map((n) => {
  const r = b6(n), o = v6(n);
  return /* @__PURE__ */ a.jsx(
    Wr,
    {
      action: /* @__PURE__ */ a.jsx(y6, { theme: n }),
      detail: o,
      id: `theme-${n.name}`,
      separator: !1,
      testId: "theme-list-item",
      title: r
    },
    n.name
  );
}) })), M6 = ({ themes: e }) => /* @__PURE__ */ a.jsx(pu, { children: /* @__PURE__ */ a.jsx(k6, { themes: e }) }), j6 = "data:image/png;base64,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", E6 = 3e3, Vd = (e) => e.variants && e.variants.length > 0, kc = (e) => {
  const n = [{
    category: e.category,
    previewUrl: e.previewUrl,
    image: e.image
  }];
  return e.variants && e.variants.length > 0 && n.push(...e.variants), n;
}, D6 = ({
  onSelectTheme: e
}) => {
  const { adminRoot: n } = ca(), r = Ob(), [o, l] = se(null), [c, v] = se(0), w = (A) => {
    l(A), v(
      A !== null && Vd(A) && kc(A).length > 1 ? 1 : 0
    );
  };
  return ye(() => {
    if (o === null)
      return;
    const A = setInterval(() => {
      v((c + 1) % (kc(o).length || 0));
    }, E6);
    return () => clearInterval(A);
  }, [o, c]), /* @__PURE__ */ a.jsxs(pu, { heading: "Themes", children: [
    /* @__PURE__ */ a.jsx("div", { className: "mt-[6vmin] grid grid-cols-1 gap-[6vmin] sm:grid-cols-2 md:grid-cols-3 xl:grid-cols-4", children: r.map((A) => {
      const h = Vd(A), f = kc(A), b = o === A;
      return /* @__PURE__ */ a.jsxs("button", { className: "flex cursor-pointer flex-col gap-3 text-left", type: "button", onClick: () => {
        e == null || e(A);
      }, children: [
        /* @__PURE__ */ a.jsx("div", { className: "relative w-full bg-grey-100 shadow-md transition-all duration-500 hover:scale-[1.05]", onMouseEnter: () => w(A), onMouseLeave: () => w(null), children: h ? /* @__PURE__ */ a.jsx(a.Fragment, { children: f.map((x, g) => /* @__PURE__ */ a.jsx(
          "img",
          {
            alt: `${A.name} Theme - ${x.category}`,
            className: me("size-full object-contain opacity-0 transition-opacity duration-500", {
              "opacity-100": g === c && b || !b && g === 0,
              relative: g === c,
              absolute: g !== c,
              "left-0": g !== c,
              "top-0": g !== c
            }),
            src: lA(x.image, n)
          },
          `theme-variant-${x.category.toLowerCase()}`
        )) }) : /* @__PURE__ */ a.jsx(
          "img",
          {
            alt: `${A.name} Theme`,
            className: "size-full object-contain",
            src: lA(A.image, n)
          }
        ) }),
        /* @__PURE__ */ a.jsxs("div", { className: "relative mt-3", children: [
          /* @__PURE__ */ a.jsx(ct, { level: 4, children: A.name }),
          h ? f.map((x, g) => /* @__PURE__ */ a.jsx("span", { className: me("absolute left-0 translate-y-px text-sm text-grey-700 opacity-0", {
            "opacity-100": g === c && b || !b && g === 0
          }), children: x.category })) : /* @__PURE__ */ a.jsx("span", { className: "text-sm text-grey-700", children: A.category })
        ] })
      ] }, A.name);
    }) }),
    /* @__PURE__ */ a.jsxs("div", { className: "mx-[-8vmin] mb-[-8vmin] mt-[8vmin] bg-black px-[8vmin] py-16 text-center text-lg text-white", style: {
      background: `#15171a url(${j6}) 100% 100% / 35vw no-repeat`
    }, children: [
      "Find and buy third-party, premium themes from independent developers in the ",
      /* @__PURE__ */ a.jsx("a", { className: "inline-block font-semibold text-lime", href: "https://ghost.org/themes/", rel: "noopener noreferrer", target: "_blank", children: "Ghost Marketplace →" })
    ] })
  ] });
}, Kd = ({ problem: e }) => {
  const [n, r] = se(!1);
  return /* @__PURE__ */ a.jsx(
    Wr,
    {
      title: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        /* @__PURE__ */ a.jsxs("div", { className: `${e.level === "error" ? "before:bg-red" : "before:bg-yellow"} relative px-4 text-sm before:absolute before:left-0 before:top-1.5 before:block before:size-2 before:rounded-full before:content-['']`, children: [
          /* @__PURE__ */ a.jsx("strong", { children: e.level === "error" ? "Error: " : "Warning: " }),
          /* @__PURE__ */ a.jsx("span", { dangerouslySetInnerHTML: { __html: e.rule } }),
          /* @__PURE__ */ a.jsx("div", { className: "absolute -right-4 top-1", children: /* @__PURE__ */ a.jsx(He, { color: "green", icon: n ? "chevron-down" : "chevron-right", iconColorClass: "text-grey-700", size: "sm", link: !0, onClick: () => r(!n) }) })
        ] }),
        n ? /* @__PURE__ */ a.jsxs("div", { className: "mt-2 px-4 text-[13px] leading-8", children: [
          /* @__PURE__ */ a.jsx("div", { dangerouslySetInnerHTML: { __html: e.details }, className: "mb-4" }),
          /* @__PURE__ */ a.jsx(ct, { level: 6, children: "Affected files:" }),
          /* @__PURE__ */ a.jsx("ul", { className: "mt-1", children: e.failures.map((o) => /* @__PURE__ */ a.jsxs("li", { children: [
            /* @__PURE__ */ a.jsx("code", { children: o.ref }),
            o.message ? `: ${o.message}` : ""
          ] })) })
        ] }) : null
      ] }),
      hideActions: !0,
      separator: !0
    }
  );
}, T6 = ({ title: e, prompt: n, installedTheme: r, onActivate: o }) => {
  var f, b, x;
  const { mutateAsync: l } = nu(), { refreshActiveThemeData: c } = wu(), v = rt();
  let w = null;
  r && r.gscan_errors && (w = /* @__PURE__ */ a.jsx("div", { className: "mt-6", children: /* @__PURE__ */ a.jsx(br, { hint: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
    "Highly recommended to fix, functionality ",
    /* @__PURE__ */ a.jsx("strong", { children: "could" }),
    " be restricted"
  ] }), title: "Errors", children: (f = r.gscan_errors) == null ? void 0 : f.map((g) => /* @__PURE__ */ a.jsx(Kd, { problem: g })) }) }));
  let A = null;
  r && r.warnings && (A = /* @__PURE__ */ a.jsx("div", { className: "mt-10", children: /* @__PURE__ */ a.jsx(br, { title: "Warnings", children: (b = r.warnings) == null ? void 0 : b.map((g) => /* @__PURE__ */ a.jsx(Kd, { problem: g })) }) }));
  let h = `Activate${(x = r.gscan_errors) != null && x.length ? " with errors" : ""}`;
  return r.active && (h = "OK"), /* @__PURE__ */ a.jsx(
    Ph,
    {
      cancelLabel: "Close",
      okColor: "black",
      okLabel: h,
      okRunningLabel: "Activating...",
      prompt: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        n,
        w,
        A
      ] }),
      title: e,
      onOk: async (g) => {
        if (!r.active)
          try {
            const k = (await l(r.name)).themes[0];
            c(), ut({
              title: "Theme activated",
              type: "success",
              message: /* @__PURE__ */ a.jsxs("div", { children: [
                /* @__PURE__ */ a.jsx("span", { className: "capitalize", children: k.name }),
                " is now your active theme."
              ] })
            });
          } catch (y) {
            v(y);
          }
        o == null || o(), g == null || g.remove();
      }
    }
  );
}, $p = ve.create(T6), _d = (e) => e.variants && e.variants.length > 0, $d = (e) => {
  const n = [{
    image: e.image,
    category: e.category,
    previewUrl: e.previewUrl
  }];
  return e.variants && e.variants.length > 0 && n.push(...e.variants), n;
}, eh = (e) => e.category.toLowerCase(), N6 = ({
  selectedTheme: e,
  isInstalling: n,
  installedTheme: r,
  onBack: o,
  onInstall: l
}) => {
  var k;
  const [c, v] = se("desktop"), [w, A] = se(void 0);
  if (!e)
    return null;
  let h = e.previewUrl;
  const f = $d(e).map((D) => ({
    label: D.category,
    value: eh(D)
  }));
  _d(e) && (w === void 0 && A(f[0]), h = ((k = $d(e).find((D) => eh(D) === (w == null ? void 0 : w.value))) == null ? void 0 : k.previewUrl) || h);
  let b = `Install ${e.name}`;
  n ? b = "Installing..." : cA(e) && !(r != null && r.active) ? b = `Activate ${e.name}` : r && (b = `Update ${e.name}`);
  const x = () => {
    l == null || l();
  }, g = /* @__PURE__ */ a.jsxs("div", { className: "flex items-center gap-2", children: [
    /* @__PURE__ */ a.jsx(
      mu,
      {
        activeItemClassName: "hidden md:!block md:!visible",
        containerClassName: "whitespace-nowrap",
        itemClassName: "hidden md:!block md:!visible",
        items: [
          { label: "Change theme", onClick: o },
          { label: e.name }
        ],
        separatorClassName: "hidden md:!block md:!visible",
        backIcon: !0,
        onBack: o
      }
    ),
    _d(e) ? /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
      /* @__PURE__ */ a.jsx("span", { className: "hidden md:!visible md:!block", children: "–" }),
      /* @__PURE__ */ a.jsx(
        Lt,
        {
          border: !1,
          containerClassName: "text-sm font-bold",
          controlClasses: { menu: "w-24" },
          fullWidth: !1,
          options: f,
          selectedOption: w,
          clearBg: !0,
          onSelect: (D) => {
            A(D || void 0);
          }
        }
      )
    ] }) : null
  ] }), y = /* @__PURE__ */ a.jsxs("div", { className: "flex justify-end gap-8", children: [
    /* @__PURE__ */ a.jsx(
      mr,
      {
        buttons: [
          {
            icon: "laptop",
            iconColorClass: c === "desktop" ? "text-black dark:text-green" : "text-grey-500 dark:text-grey-600",
            link: !0,
            size: "sm",
            onClick: () => {
              v("desktop");
            }
          },
          {
            icon: "mobile",
            iconColorClass: c === "mobile" ? "text-black dark:text-green" : "text-grey-500 dark:text-grey-600",
            link: !0,
            size: "sm",
            onClick: () => {
              v("mobile");
            }
          }
        ]
      }
    ),
    /* @__PURE__ */ a.jsx(
      He,
      {
        color: "green",
        disabled: n,
        label: n ? "Installing..." : b,
        onClick: x
      }
    )
  ] });
  return /* @__PURE__ */ a.jsxs("div", { className: "absolute inset-0 z-[100]", children: [
    /* @__PURE__ */ a.jsx(Op, { containerClassName: "bg-grey-50 dark:bg-black z-[100]", left: g, right: y, sticky: !1 }),
    /* @__PURE__ */ a.jsx("div", { className: "flex h-[calc(100%-92px)] grow flex-col items-center justify-center bg-grey-50 dark:bg-black", children: c === "desktop" ? /* @__PURE__ */ a.jsx(Zh, { children: /* @__PURE__ */ a.jsx(
      "iframe",
      {
        className: "size-full",
        src: h,
        title: "Theme preview"
      }
    ) }) : /* @__PURE__ */ a.jsx(Wh, { children: /* @__PURE__ */ a.jsx(
      "iframe",
      {
        className: "size-full",
        src: h,
        title: "Theme preview"
      }
    ) }) })
  ] });
}, C6 = ({ onUpload: e }) => {
  const n = fn();
  return /* @__PURE__ */ a.jsx("div", { className: "-mb-6", children: /* @__PURE__ */ a.jsx(
    Sb,
    {
      id: "theme-upload",
      onUpload: (r) => {
        n.remove(), e(r);
      },
      children: /* @__PURE__ */ a.jsx("div", { className: "cursor-pointer bg-grey-75 p-10 text-center dark:bg-grey-950", children: "Click to select or drag & drop zip file" })
    }
  ) });
}, I6 = ({
  currentTab: e,
  setCurrentTab: n,
  themes: r
}) => {
  const o = fn(), { updateRoute: l } = We(), { mutateAsync: c } = Hb(), { checkThemeLimitError: v, isThemeLimited: w } = su(), A = rt(), [h, f] = se(), [b, x] = se(!1);
  ye(() => {
    (async () => {
      if (w) {
        const Q = await v(".");
        f({ enabled: !1, error: Q || "Your current plan doesn't support uploading custom themes." });
      } else
        f({ enabled: !0 });
    })();
  }, [v, w]);
  const g = () => {
    l("/");
  }, y = async (G) => {
    const Q = G == null ? void 0 : G.name.replace(/\.zip$/, ""), W = r.map((J) => J.name);
    cA({ name: Q }) ? ve.show(Et, {
      title: "Upload failed",
      cancelLabel: "Cancel",
      okLabel: "",
      prompt: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        /* @__PURE__ */ a.jsxs("p", { children: [
          "The default ",
          /* @__PURE__ */ a.jsx("strong", { children: Q }),
          " theme cannot be overwritten."
        ] }),
        /* @__PURE__ */ a.jsx("p", { children: "Rename your zip file and try again." })
      ] }),
      onOk: async (J) => {
        J == null || J.remove();
      }
    }) : W.includes(Q) ? ve.show(Et, {
      title: "Overwrite theme",
      prompt: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        "The theme ",
        /* @__PURE__ */ a.jsx("strong", { children: Q }),
        " already exists. Do you want to overwrite it?"
      ] }),
      okLabel: "Overwrite",
      cancelLabel: "Cancel",
      okRunningLabel: "Overwriting...",
      okColor: "red",
      onOk: async (J) => {
        x(!0);
        const Y = W.indexOf(Q);
        r.splice(Y, 1), await k({ file: G, onActivate: g }), x(!1), n("installed"), J == null || J.remove();
      }
    }) : (n("installed"), k({ file: G, onActivate: g }));
  }, k = async ({
    file: G,
    onActivate: Q
  }) => {
    var te, R, z, $, K;
    let W, J = null;
    try {
      x(!0), W = await c({ file: G }), x(!1);
    } catch (ee) {
      x(!1), ee instanceof ps && ((te = ee.response) == null ? void 0 : te.status) === 422 && ((R = ee.data) != null && R.errors) ? J = ee.data.errors : A(ee);
    }
    if (J && !W) {
      let ee = "Invalid Theme", F = /* @__PURE__ */ a.jsx(a.Fragment, { children: "This theme is invalid and cannot be activated. Fix the following errors and re-upload the theme" });
      ve.show(_p, {
        title: ee,
        prompt: F,
        fatalErrors: J,
        onRetry: async () => {
          o == null || o.remove(), C();
        }
      });
    }
    if (!W)
      return;
    const Y = W.themes[0];
    let B = "Upload successful", U = /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
      /* @__PURE__ */ a.jsx("strong", { children: Y.name }),
      " uploaded"
    ] });
    if (Y.active || (U = /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
      U,
      " ",
      "Do you want to activate it now?"
    ] })), (z = Y == null ? void 0 : Y.gscan_errors) != null && z.length || ($ = Y.warnings) != null && $.length) {
      const ee = (K = Y == null ? void 0 : Y.gscan_errors) == null ? void 0 : K.length;
      B = `Upload successful with ${ee ? "errors" : "warnings"}`, U = /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        "The theme ",
        /* @__PURE__ */ a.jsxs("strong", { children: [
          '"',
          Y.name,
          '"'
        ] }),
        " was installed but we detected some ",
        ee ? "errors" : "warnings",
        "."
      ] }), Y.active || (U = /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        U,
        "You are still able to activate and use the theme but it is recommended to fix these ",
        ee ? "errors" : "warnings",
        " before you do so."
      ] }));
    }
    ve.show($p, {
      title: B,
      prompt: U,
      installedTheme: Y,
      onActivate: Q
    });
  }, D = /* @__PURE__ */ a.jsx("div", { className: "hidden md:!visible md:!block", children: /* @__PURE__ */ a.jsx(
    Zr,
    {
      border: !1,
      selectedTab: e,
      tabs: [
        { id: "official", title: "Official themes" },
        { id: "installed", title: "Installed" }
      ],
      onTabChange: (G) => {
        n(G);
      }
    }
  ) }), C = () => {
    h && (h.enabled ? ve.show(Et, {
      title: "Upload theme",
      prompt: /* @__PURE__ */ a.jsx(C6, { onUpload: y }),
      okLabel: "",
      formSheet: !1
    }) : ve.show(rr, {
      title: "Upgrade to enable custom themes",
      prompt: h.error || /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        "Your current plan only supports official themes. You can install them from the ",
        /* @__PURE__ */ a.jsx("a", { href: "https://ghost.org/marketplace/", children: "Ghost theme marketplace" }),
        "."
      ] }),
      onOk: () => l({ route: "/pro", isExternal: !0 })
    }));
  }, S = /* @__PURE__ */ a.jsx("div", { className: "flex items-center gap-14", children: /* @__PURE__ */ a.jsxs("div", { className: "flex items-center gap-3", children: [
    /* @__PURE__ */ a.jsx(He, { label: "Close", onClick: () => {
      o.remove(), g();
    } }),
    /* @__PURE__ */ a.jsx(He, { color: "black", label: "Upload theme", loading: b, onClick: C })
  ] }) });
  return /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
    /* @__PURE__ */ a.jsx(Op, { containerClassName: "bg-white dark:bg-black", left: D, right: S }),
    /* @__PURE__ */ a.jsx("div", { className: "px-[8vmin] md:hidden", children: /* @__PURE__ */ a.jsx(
      Zr,
      {
        border: !1,
        selectedTab: e,
        tabs: [
          { id: "official", title: "Official themes" },
          { id: "installed", title: "Installed" }
        ],
        onTabChange: (G) => {
          n(G);
        }
      }
    ) })
  ] });
}, P6 = ({
  currentTab: e,
  onSelectTheme: n,
  themes: r
}) => {
  switch (e) {
    case "official":
      return /* @__PURE__ */ a.jsx(D6, { onSelectTheme: n });
    case "installed":
      return /* @__PURE__ */ a.jsx(M6, { themes: r });
  }
  return null;
}, th = ({ source: e, themeRef: n }) => {
  const [r, o] = se("official"), [l, c] = se(null), [v, w] = se("desktop"), [A, h] = se(!1), [f, b] = se(!1), [x, g] = se(!1), { updateRoute: y } = We(), k = fn(), { data: { themes: D } = {} } = ru(), { mutateAsync: C } = zb(), { mutateAsync: S } = nu(), { checkThemeLimitError: G } = su(), Q = rt(), W = (B) => {
    c(B);
  };
  if (ye(() => {
    g(!0);
  }, []), ye(() => {
    (async () => {
      if (e && n && !f && x) {
        const U = n.split("/")[1];
        if (await G(U)) {
          k.remove();
          return;
        }
        let R = "Install Theme";
        const z = (D == null ? void 0 : D.map((_) => _.name)) || [];
        let $ = z.includes(U.toLowerCase());
        const K = z.indexOf(U.toLowerCase()), ee = D == null ? void 0 : D[K];
        let F = /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
          "By clicking below, ",
          /* @__PURE__ */ a.jsx("strong", { children: U }),
          " will automatically be activated as the theme for your site.",
          $ && /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
            /* @__PURE__ */ a.jsx("br", {}),
            /* @__PURE__ */ a.jsx("br", {}),
            "This will overwrite your existing version of ",
            /* @__PURE__ */ a.jsx("strong", { children: U }),
            ee != null && ee.active ? " which is your active theme" : "",
            ". All custom changes will be lost."
          ] })
        ] });
        ve.show(Et, {
          title: R,
          prompt: F,
          okLabel: "Install",
          cancelLabel: "Cancel",
          okRunningLabel: "Installing...",
          okColor: "black",
          onOk: async (_) => {
            let fe;
            b(!0);
            try {
              $ && D && D.splice(K, 1), fe = await C(n), fe != null && fe.themes[0] && (await S(fe.themes[0].name), ut({
                title: "Theme activated",
                type: "success",
                message: /* @__PURE__ */ a.jsxs("div", { children: [
                  /* @__PURE__ */ a.jsx("span", { className: "capitalize", children: fe.themes[0].name }),
                  " is now your active theme"
                ] })
              })), _ == null || _.remove(), y("");
            } catch (xe) {
              Q(xe);
            }
          }
        });
      }
    })();
  }, [n, e, C, Q, S, y, D, f, G, k, x]), !D)
    return;
  let J, Y;
  if (l) {
    J = D.find((U) => U.name.toLowerCase() === l.name.toLowerCase()), Y = async () => {
      const U = await G(l.name);
      if (U) {
        ve.show(rr, {
          prompt: U,
          onOk: () => y({ route: "/pro", isExternal: !0 })
        });
        return;
      }
      return J && !cA(l) ? new Promise((te) => {
        ve.show(Et, {
          title: "Overwrite theme",
          prompt: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
            "This will overwrite your existing version of ",
            l.name,
            J != null && J.active ? ", which is your active theme" : "",
            ". All custom changes will be lost."
          ] }),
          okLabel: "Overwrite",
          okRunningLabel: "Installing...",
          cancelLabel: "Cancel",
          okColor: "red",
          onOk: async (R) => {
            R == null || R.remove(), await B(), te();
          }
        });
      }) : B();
    };
    const B = async () => {
      var R, z, $;
      let U = "Success", te = /* @__PURE__ */ a.jsx(a.Fragment, {});
      if (cA(l))
        U = "Activate theme", te = /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
          "By clicking below, ",
          /* @__PURE__ */ a.jsx("strong", { children: l.name }),
          " will automatically be activated as the theme for your site."
        ] });
      else {
        h(!0);
        let K;
        try {
          K = await C(l.ref);
        } catch (F) {
          Q(F);
        } finally {
          h(!1);
        }
        if (!K)
          return;
        const ee = K.themes[0];
        if (U = "Success", te = /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
          /* @__PURE__ */ a.jsx("strong", { children: ee.name }),
          " has been successfully installed."
        ] }), ee.active || (te = /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
          te,
          " ",
          "Do you want to activate it now?"
        ] })), (R = ee.gscan_errors) != null && R.length || (z = ee.warnings) != null && z.length) {
          const F = ($ = ee.gscan_errors) == null ? void 0 : $.length;
          U = `Installed with ${F ? "errors" : "warnings"}`, te = /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
            "The theme ",
            /* @__PURE__ */ a.jsxs("strong", { children: [
              '"',
              ee.name,
              '"'
            ] }),
            " was installed successfully but we detected some ",
            F ? "errors" : "warnings",
            "."
          ] }), ee.active || (te = /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
            te,
            "You are still able to activate and use the theme but it is recommended to contact the theme developer fix these ",
            F ? "errors" : "warnings",
            " before you do so."
          ] }));
        }
        J = ee;
      }
      ve.show($p, {
        title: U,
        prompt: te,
        installedTheme: J,
        onActivate: () => {
          y("");
        }
      });
    };
  }
  return /* @__PURE__ */ a.jsx(
    vt,
    {
      afterClose: () => {
        y("");
      },
      animate: !1,
      cancelLabel: "",
      footer: !1,
      padding: !1,
      size: "full",
      testId: "theme-modal",
      title: "",
      scrolling: !0,
      onCancel: () => {
        k.remove(), y("");
      },
      children: /* @__PURE__ */ a.jsx("div", { className: "flex h-full justify-between", children: /* @__PURE__ */ a.jsxs("div", { className: "grow", children: [
        l && /* @__PURE__ */ a.jsx(
          N6,
          {
            installedTheme: J,
            isInstalling: A,
            selectedTheme: l,
            onBack: () => {
              c(null);
            },
            onClose: () => {
              y("");
            },
            onInstall: Y
          }
        ),
        /* @__PURE__ */ a.jsx(
          I6,
          {
            currentTab: r,
            modal: k,
            previewMode: v,
            selectedTheme: l,
            setCurrentTab: o,
            setPreviewMode: w,
            setSelectedTheme: c,
            themes: D
          }
        ),
        !l && /* @__PURE__ */ a.jsx(
          P6,
          {
            currentTab: r,
            themes: D,
            onSelectTheme: W
          }
        )
      ] }) })
    }
  );
}, O6 = ({ children: e, to: n, classNames: r }) => {
  const o = n || document.body;
  if (!o)
    return /* @__PURE__ */ a.jsx(a.Fragment, { children: e });
  const l = (c) => {
    c.stopPropagation();
  };
  return Rb(
    /* @__PURE__ */ a.jsx("div", { className: r, onMouseDown: l, children: /* @__PURE__ */ a.jsx("div", { children: e }) }),
    o
  );
};
var z6 = Object.defineProperty, H6 = (e, n, r) => n in e ? z6(e, n, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[n] = r, bt = (e, n, r) => H6(e, typeof n != "symbol" ? n + "" : n, r), em = { exports: {} }, lo = {};
/**
 * @license React
 * react-jsx-runtime.production.min.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */
var nh;
function S6() {
  if (nh) return lo;
  nh = 1;
  var e = _e, n = Symbol.for("react.element"), r = Symbol.for("react.fragment"), o = Object.prototype.hasOwnProperty, l = e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, c = { key: !0, ref: !0, __self: !0, __source: !0 };
  function v(w, A, h) {
    var f, b = {}, x = null, g = null;
    h !== void 0 && (x = "" + h), A.key !== void 0 && (x = "" + A.key), A.ref !== void 0 && (g = A.ref);
    for (f in A) o.call(A, f) && !c.hasOwnProperty(f) && (b[f] = A[f]);
    if (w && w.defaultProps) for (f in A = w.defaultProps, A) b[f] === void 0 && (b[f] = A[f]);
    return { $$typeof: n, type: w, key: x, ref: g, props: b, _owner: l.current };
  }
  return lo.Fragment = r, lo.jsx = v, lo.jsxs = v, lo;
}
em.exports = S6();
var Oe = em.exports;
class R6 {
  constructor(n = 3) {
    bt(this, "columnCount"), bt(this, "columns", []), bt(this, "columnHeights"), this.columnCount = n, this.columns = [[]], this.columnHeights = null;
  }
  reset() {
    let n = [], r = [];
    for (let o = 0; o < this.columnCount; o += 1)
      n[o] = [], r[o] = 0;
    this.columns = n, this.columnHeights = r;
  }
  addColumns() {
    for (let n = 0; n < this.columnCount; n++)
      this.columns.push([]), this.columnHeights.push(0);
  }
  addPhotoToColumns(n) {
    this.columns || this.reset();
    let r = Math.min(...this.columnHeights), o = this.columnHeights.indexOf(r);
    this.columnHeights[o] += 300 * n.ratio, this.columns[o].push(n);
  }
  getColumns() {
    return this.columns;
  }
  changeColumnCount(n) {
    n !== this.columnCount && (this.columnCount = n, this.reset());
  }
}
const B6 = (e) => /* @__PURE__ */ Ze("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", ...e }, /* @__PURE__ */ Ze("path", { d: "M20 5.5l-8 8-8-8m-3.5 13h23", stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", strokeMiterlimit: 10, fill: "none" })), L6 = (e) => /* @__PURE__ */ Ze("svg", { viewBox: "0 0 32 32", ...e }, /* @__PURE__ */ Ze("path", { d: "M17.4 29c-.8.8-2 .8-2.8 0L2.3 16.2C-.8 13.1-.8 8 2.3 4.8c3.1-3.1 8.2-3.1 11.3 0L16 7.6l2.3-2.8c3.1-3.1 8.2-3.1 11.3 0 3.1 3.1 3.1 8.2 0 11.4L17.4 29z" })), Q6 = {
  heart: L6,
  download: B6
}, Mc = ({ icon: e, label: n, ...r }) => {
  let o = null;
  return e && (o = Q6[e]), /* @__PURE__ */ Oe.jsxs(
    "a",
    {
      className: "text-grey-700 flex h-8 shrink-0 cursor-pointer items-center rounded-md bg-white px-3 py-2 font-sans text-sm font-medium leading-6 opacity-90 transition-all ease-in-out hover:opacity-100",
      onClick: (l) => l.stopPropagation(),
      ...r,
      children: [
        e && o && /* @__PURE__ */ Oe.jsx(o, { className: `size-4 ${e === "heart" ? "fill-red" : ""} stroke-[3px] ${n && "mr-1"}` }),
        n && /* @__PURE__ */ Oe.jsx("span", { children: n })
      ]
    }
  );
}, tm = ({ payload: e, srcUrl: n, links: r, likes: o, user: l, alt: c, urls: v, height: w, width: A, zoomed: h, insertImage: f, selectImg: b }) => {
  const x = (g) => {
    g.stopPropagation(), b(h ? null : e);
  };
  return /* @__PURE__ */ Oe.jsxs(
    "div",
    {
      className: `relative mb-6 block ${h ? "h-full w-[max-content] cursor-zoom-out" : "w-full cursor-zoom-in"}`,
      style: { backgroundColor: e.color || "transparent" },
      "data-kg-unsplash-gallery-item": !0,
      onClick: x,
      children: [
        /* @__PURE__ */ Oe.jsx(
          "img",
          {
            alt: c,
            className: `${h ? "h-full w-auto object-contain" : "block h-auto"}`,
            height: w,
            loading: "lazy",
            src: n,
            width: A,
            "data-kg-unsplash-gallery-img": !0
          }
        ),
        /* @__PURE__ */ Oe.jsxs("div", { className: "absolute inset-0 flex flex-col justify-between bg-gradient-to-b from-black/5 via-black/5 to-black/30 p-5 opacity-0 transition-all ease-in-out hover:opacity-100", children: [
          /* @__PURE__ */ Oe.jsxs("div", { className: "flex items-center justify-end gap-3", children: [
            /* @__PURE__ */ Oe.jsx(
              Mc,
              {
                "data-kg-button": "unsplash-like",
                href: `${r.html}/?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit`,
                icon: "heart",
                label: o.toString(),
                rel: "noopener noreferrer",
                target: "_blank"
              }
            ),
            /* @__PURE__ */ Oe.jsx(
              Mc,
              {
                "data-kg-button": "unsplash-download",
                href: `${r.download}/?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit&amp;force=true`,
                icon: "download"
              }
            )
          ] }),
          /* @__PURE__ */ Oe.jsxs("div", { className: "flex items-center justify-between", children: [
            /* @__PURE__ */ Oe.jsxs("div", { className: "flex items-center", children: [
              /* @__PURE__ */ Oe.jsx("img", { alt: "author", className: "mr-2 size-8 rounded-full", src: l.profile_image.medium }),
              /* @__PURE__ */ Oe.jsx("div", { className: "mr-2 truncate font-sans text-sm font-medium text-white", children: l.name })
            ] }),
            /* @__PURE__ */ Oe.jsx(Mc, { label: "Insert image", "data-kg-unsplash-insert-button": !0, onClick: (g) => {
              g.stopPropagation(), f({
                src: v.regular.replace(/&w=1080/, "&w=2000"),
                caption: `<span>Photo by <a href="${l.links.html}">${l.name}</a> / <a href="https://unsplash.com/?utm_source=ghost&utm_medium=referral&utm_campaign=api-credit">Unsplash</a></span>`,
                height: w,
                width: A,
                alt: c,
                links: r
              });
            } })
          ] })
        ] })
      ]
    }
  );
}, X6 = ({ payload: e, insertImage: n, selectImg: r, zoomed: o }) => /* @__PURE__ */ Oe.jsx("div", { className: "flex h-full grow basis-0 justify-center", "data-kg-unsplash-zoomed": !0, onClick: () => r(null), children: /* @__PURE__ */ Oe.jsx(
  tm,
  {
    alt: e.alt_description,
    height: e.height,
    insertImage: n,
    likes: e.likes,
    links: e.links,
    payload: e,
    selectImg: r,
    srcUrl: e.urls.regular,
    urls: e.urls,
    user: e.user,
    width: e.width,
    zoomed: o
  }
) }), F6 = () => /* @__PURE__ */ Oe.jsx("div", { className: "absolute inset-y-0 left-0 flex w-full items-center justify-center overflow-hidden pb-[8vh]", "data-kg-loader": !0, children: /* @__PURE__ */ Oe.jsx("div", { className: "animate-spin before:bg-grey-800 relative inline-block size-[50px] rounded-full border border-black/10 before:z-10 before:mt-[7px] before:block before:size-[7px] before:rounded-full" }) }), q6 = (e) => /* @__PURE__ */ Oe.jsx("div", { className: "mr-6 flex grow basis-0 flex-col justify-start last-of-type:mr-0", children: e.children }), G6 = (e) => e != null && e.columns ? e == null ? void 0 : e.columns.map((n, r) => (
  // eslint-disable-next-line react/no-array-index-key
  /* @__PURE__ */ Oe.jsx(q6, { children: n.map((o) => /* @__PURE__ */ Oe.jsx(
    tm,
    {
      alt: o.alt_description,
      height: o.height,
      insertImage: e == null ? void 0 : e.insertImage,
      likes: o.likes,
      links: o.links,
      payload: o,
      selectImg: e == null ? void 0 : e.selectImg,
      srcUrl: o.urls.regular,
      urls: o.urls,
      user: o.user,
      width: o.width,
      zoomed: (e == null ? void 0 : e.zoomed) || null
    },
    o.id
  )) }, r)
)) : null, jc = (e) => /* @__PURE__ */ Oe.jsx("div", { className: "relative h-full overflow-hidden", "data-kg-unsplash-gallery": !0, children: /* @__PURE__ */ Oe.jsxs("div", { ref: e.galleryRef, className: `flex size-full justify-center overflow-auto px-20 ${e != null && e.zoomed ? "pb-10" : ""}`, "data-kg-unsplash-gallery-scrollref": !0, children: [
  e.children,
  (e == null ? void 0 : e.isLoading) && /* @__PURE__ */ Oe.jsx(F6, {})
] }) }), Y6 = ({
  zoomed: e,
  error: n,
  galleryRef: r,
  isLoading: o,
  dataset: l,
  selectImg: c,
  insertImage: v
}) => e ? /* @__PURE__ */ Oe.jsx(
  jc,
  {
    galleryRef: r,
    zoomed: e,
    children: /* @__PURE__ */ Oe.jsx(
      X6,
      {
        alt: e.alt_description,
        height: e.height,
        insertImage: v,
        likes: e.likes,
        links: e.links,
        payload: e,
        selectImg: c,
        srcUrl: e.urls.regular,
        urls: e.urls,
        user: e.user,
        width: e.width,
        zoomed: e
      }
    )
  }
) : n ? /* @__PURE__ */ Oe.jsx(
  jc,
  {
    galleryRef: r,
    zoomed: e,
    children: /* @__PURE__ */ Oe.jsxs("div", { className: "flex h-full flex-col items-center justify-center", children: [
      /* @__PURE__ */ Oe.jsx("h1", { className: "mb-4 text-2xl font-bold", children: "Error" }),
      /* @__PURE__ */ Oe.jsx("p", { className: "text-lg font-medium", children: n })
    ] })
  }
) : /* @__PURE__ */ Oe.jsx(
  jc,
  {
    galleryRef: r,
    isLoading: o,
    zoomed: e,
    children: /* @__PURE__ */ Oe.jsx(
      G6,
      {
        columns: l,
        insertImage: v,
        selectImg: c,
        zoomed: e
      }
    )
  }
), U6 = (e) => /* @__PURE__ */ Ze("svg", { xmlns: "http://www.w3.org/2000/svg", strokeWidth: 1.5, viewBox: "0 0 24 24", ...e }, /* @__PURE__ */ Ze("path", { fill: "none", stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M.75 23.249l22.5-22.5M23.25 23.249L.75.749" })), J6 = (e) => /* @__PURE__ */ Ze("svg", { xmlns: "http://www.w3.org/2000/svg", strokeWidth: 1.5, viewBox: "0 0 24 24", ...e }, /* @__PURE__ */ Ze("path", { fill: "none", stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M1.472 13.357a9.063 9.063 0 1 0 16.682-7.09 9.063 9.063 0 1 0-16.682 7.09Zm14.749 2.863 7.029 7.03" })), Z6 = (e) => /* @__PURE__ */ Ze("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 122.43 122.41", ...e }, /* @__PURE__ */ Ze("path", { d: "M83.86 54.15v34.13H38.57V54.15H0v68.26h122.43V54.15H83.86zM38.57 0h45.3v34.13h-45.3z" })), W6 = ({ closeModal: e, handleSearch: n, children: r }) => /* @__PURE__ */ Oe.jsxs(Oe.Fragment, { children: [
  /* @__PURE__ */ Oe.jsx("div", { className: "fixed inset-0 z-40 h-[100vh] bg-black opacity-60" }),
  /* @__PURE__ */ Oe.jsxs("div", { className: "not-kg-prose fixed inset-8 z-50 overflow-hidden rounded bg-white shadow-xl", "data-kg-modal": "unsplash", children: [
    /* @__PURE__ */ Oe.jsx("button", { className: "absolute right-6 top-6 cursor-pointer", type: "button", children: /* @__PURE__ */ Oe.jsx(
      U6,
      {
        className: "text-grey-400 size-4 stroke-2",
        "data-kg-modal-close-button": !0,
        onClick: () => e()
      }
    ) }),
    /* @__PURE__ */ Oe.jsxs("div", { className: "flex h-full flex-col", children: [
      /* @__PURE__ */ Oe.jsxs("header", { className: "flex shrink-0 items-center justify-between px-20 py-10", children: [
        /* @__PURE__ */ Oe.jsxs("h1", { className: "flex items-center gap-2 font-sans text-3xl font-bold text-black", children: [
          /* @__PURE__ */ Oe.jsx(Z6, { className: "mb-1" }),
          "Unsplash"
        ] }),
        /* @__PURE__ */ Oe.jsxs("div", { className: "relative w-full max-w-sm", children: [
          /* @__PURE__ */ Oe.jsx(J6, { className: "text-grey-700 absolute left-4 top-1/2 size-4 -translate-y-2" }),
          /* @__PURE__ */ Oe.jsx("input", { className: "border-grey-300 focus:border-grey-400 h-10 w-full rounded-full border border-solid pl-10 pr-8 font-sans text-md font-normal text-black focus-visible:outline-none", placeholder: "Search free high-resolution photos", autoFocus: !0, "data-kg-unsplash-search": !0, onChange: n })
        ] })
      ] }),
      r
    ] })
  ] })
] }), V6 = [
  {
    id: "TA5hw14Coh4",
    slug: "a-person-standing-on-a-sand-dune-in-the-desert-TA5hw14Coh4",
    alternative_slugs: {
      en: "a-person-standing-on-a-sand-dune-in-the-desert-TA5hw14Coh4"
    },
    created_at: "2024-02-07T22:39:36Z",
    updated_at: "2024-03-07T23:46:14Z",
    promoted_at: null,
    width: 8640,
    height: 5760,
    color: "#8c5940",
    blur_hash: "LKD]brE2IUr?Lgwci_NaDjR*ofoe",
    description: "NEOM will be home to one of the world’s largest nature reserves: a 25,000 sq km stretch of wilderness, encompassing two deserts divided by a mountain range. | NEOM, Saudi Arabia",
    alt_description: "a person standing on a sand dune in the desert",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1707345512638-997d31a10eaa?ixid=M3wxMTc3M3wxfDF8YWxsfDF8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1707345512638-997d31a10eaa?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDF8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1707345512638-997d31a10eaa?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDF8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1707345512638-997d31a10eaa?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDF8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1707345512638-997d31a10eaa?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDF8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1707345512638-997d31a10eaa"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-person-standing-on-a-sand-dune-in-the-desert-TA5hw14Coh4",
      html: "https://unsplash.com/photos/a-person-standing-on-a-sand-dune-in-the-desert-TA5hw14Coh4",
      download: "https://unsplash.com/photos/TA5hw14Coh4/download?ixid=M3wxMTc3M3wxfDF8YWxsfDF8fHx8fHwyfHwxNzEwMTUzMjA1fA",
      download_location: "https://api.unsplash.com/photos/TA5hw14Coh4/download?ixid=M3wxMTc3M3wxfDF8YWxsfDF8fHx8fHwyfHwxNzEwMTUzMjA1fA"
    },
    likes: 226,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: {
      impression_urls: [],
      tagline: "Made to Change",
      tagline_url: "https://www.neom.com/en-us?utm_source=unsplash&utm_medium=referral",
      sponsor: {
        id: "mYizSrdJkkU",
        updated_at: "2024-03-11T08:54:08Z",
        username: "neom",
        name: "NEOM",
        first_name: "NEOM",
        last_name: null,
        twitter_username: "neom",
        portfolio_url: "http://www.neom.com",
        bio: "Located in the northwest of Saudi Arabia, NEOM’s diverse climate offers both sun-soaked beaches and snow-capped mountains. NEOM’s unique location will provide residents with enhanced livability while protecting 95% of the natural landscape.",
        location: "NEOM, Saudi Arabia",
        links: {
          self: "https://api.unsplash.com/users/neom",
          html: "https://unsplash.com/@neom",
          photos: "https://api.unsplash.com/users/neom/photos",
          likes: "https://api.unsplash.com/users/neom/likes",
          portfolio: "https://api.unsplash.com/users/neom/portfolio",
          following: "https://api.unsplash.com/users/neom/following",
          followers: "https://api.unsplash.com/users/neom/followers"
        },
        profile_image: {
          small: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
          medium: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
          large: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
        },
        instagram_username: "discoverneom",
        total_collections: 7,
        total_likes: 1,
        total_photos: 222,
        total_promoted_photos: 72,
        accepted_tos: !0,
        for_hire: !1,
        social: {
          instagram_username: "discoverneom",
          portfolio_url: "http://www.neom.com",
          twitter_username: "neom",
          paypal_email: null
        }
      }
    },
    topic_submissions: {},
    user: {
      id: "mYizSrdJkkU",
      updated_at: "2024-03-11T08:54:08Z",
      username: "neom",
      name: "NEOM",
      first_name: "NEOM",
      last_name: null,
      twitter_username: "neom",
      portfolio_url: "http://www.neom.com",
      bio: "Located in the northwest of Saudi Arabia, NEOM’s diverse climate offers both sun-soaked beaches and snow-capped mountains. NEOM’s unique location will provide residents with enhanced livability while protecting 95% of the natural landscape.",
      location: "NEOM, Saudi Arabia",
      links: {
        self: "https://api.unsplash.com/users/neom",
        html: "https://unsplash.com/@neom",
        photos: "https://api.unsplash.com/users/neom/photos",
        likes: "https://api.unsplash.com/users/neom/likes",
        portfolio: "https://api.unsplash.com/users/neom/portfolio",
        following: "https://api.unsplash.com/users/neom/following",
        followers: "https://api.unsplash.com/users/neom/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "discoverneom",
      total_collections: 7,
      total_likes: 1,
      total_photos: 222,
      total_promoted_photos: 72,
      accepted_tos: !0,
      for_hire: !1,
      social: {
        instagram_username: "discoverneom",
        portfolio_url: "http://www.neom.com",
        twitter_username: "neom",
        paypal_email: null
      }
    }
  },
  {
    id: "UArA9A02Kvk",
    slug: "a-black-and-white-photo-of-a-man-with-his-head-in-his-hands-UArA9A02Kvk",
    alternative_slugs: {
      en: "a-black-and-white-photo-of-a-man-with-his-head-in-his-hands-UArA9A02Kvk"
    },
    created_at: "2024-03-05T15:48:31Z",
    updated_at: "2024-03-11T06:59:25Z",
    promoted_at: "2024-03-11T06:59:25Z",
    width: 2160,
    height: 2700,
    color: "#262626",
    blur_hash: "L78;S$~p00oLD%D%IVay9F9ZIUay",
    description: null,
    alt_description: "a black and white photo of a man with his head in his hands",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1709653688483-fc2b356c1f36?ixid=M3wxMTc3M3wwfDF8YWxsfDJ8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1709653688483-fc2b356c1f36?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDJ8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1709653688483-fc2b356c1f36?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDJ8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1709653688483-fc2b356c1f36?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDJ8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1709653688483-fc2b356c1f36?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDJ8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1709653688483-fc2b356c1f36"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-black-and-white-photo-of-a-man-with-his-head-in-his-hands-UArA9A02Kvk",
      html: "https://unsplash.com/photos/a-black-and-white-photo-of-a-man-with-his-head-in-his-hands-UArA9A02Kvk",
      download: "https://unsplash.com/photos/UArA9A02Kvk/download?ixid=M3wxMTc3M3wwfDF8YWxsfDJ8fHx8fHwyfHwxNzEwMTUzMjA1fA",
      download_location: "https://api.unsplash.com/photos/UArA9A02Kvk/download?ixid=M3wxMTc3M3wwfDF8YWxsfDJ8fHx8fHwyfHwxNzEwMTUzMjA1fA"
    },
    likes: 20,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {},
    user: {
      id: "gwWL9kMcm2g",
      updated_at: "2024-03-11T10:14:07Z",
      username: "nickandreka",
      name: "Nick Andréka",
      first_name: "Nick",
      last_name: "Andréka",
      twitter_username: null,
      portfolio_url: null,
      bio: null,
      location: null,
      links: {
        self: "https://api.unsplash.com/users/nickandreka",
        html: "https://unsplash.com/@nickandreka",
        photos: "https://api.unsplash.com/users/nickandreka/photos",
        likes: "https://api.unsplash.com/users/nickandreka/likes",
        portfolio: "https://api.unsplash.com/users/nickandreka/portfolio",
        following: "https://api.unsplash.com/users/nickandreka/following",
        followers: "https://api.unsplash.com/users/nickandreka/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1698854198608-989031a5ccdeimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1698854198608-989031a5ccdeimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1698854198608-989031a5ccdeimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "andreka.art",
      total_collections: 0,
      total_likes: 8,
      total_photos: 35,
      total_promoted_photos: 19,
      accepted_tos: !0,
      for_hire: !0,
      social: {
        instagram_username: "andreka.art",
        portfolio_url: null,
        twitter_username: null,
        paypal_email: null
      }
    }
  },
  {
    id: "QX_7m4Lh2qg",
    slug: "a-black-and-white-photo-of-a-lighthouse-QX_7m4Lh2qg",
    alternative_slugs: {
      en: "a-black-and-white-photo-of-a-lighthouse-QX_7m4Lh2qg"
    },
    created_at: "2024-03-10T16:46:33Z",
    updated_at: "2024-03-11T06:59:11Z",
    promoted_at: "2024-03-11T06:59:11Z",
    width: 4e3,
    height: 5751,
    color: "#f3f3f3",
    blur_hash: "LAQJiu~X-;9G-:?cIURj~qD%00xt",
    description: null,
    alt_description: "a black and white photo of a lighthouse",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1710088912041-34d1767d376a?ixid=M3wxMTc3M3wwfDF8YWxsfDN8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1710088912041-34d1767d376a?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDN8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1710088912041-34d1767d376a?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDN8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1710088912041-34d1767d376a?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDN8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1710088912041-34d1767d376a?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDN8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1710088912041-34d1767d376a"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-black-and-white-photo-of-a-lighthouse-QX_7m4Lh2qg",
      html: "https://unsplash.com/photos/a-black-and-white-photo-of-a-lighthouse-QX_7m4Lh2qg",
      download: "https://unsplash.com/photos/QX_7m4Lh2qg/download?ixid=M3wxMTc3M3wwfDF8YWxsfDN8fHx8fHwyfHwxNzEwMTUzMjA1fA",
      download_location: "https://api.unsplash.com/photos/QX_7m4Lh2qg/download?ixid=M3wxMTc3M3wwfDF8YWxsfDN8fHx8fHwyfHwxNzEwMTUzMjA1fA"
    },
    likes: 21,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {},
    user: {
      id: "ue6QWAAHoIQ",
      updated_at: "2024-03-11T08:53:54Z",
      username: "huzhewseh",
      name: "Volodymyr M",
      first_name: "Volodymyr",
      last_name: "M",
      twitter_username: "huzhewseh",
      portfolio_url: null,
      bio: null,
      location: null,
      links: {
        self: "https://api.unsplash.com/users/huzhewseh",
        html: "https://unsplash.com/@huzhewseh",
        photos: "https://api.unsplash.com/users/huzhewseh/photos",
        likes: "https://api.unsplash.com/users/huzhewseh/likes",
        portfolio: "https://api.unsplash.com/users/huzhewseh/portfolio",
        following: "https://api.unsplash.com/users/huzhewseh/following",
        followers: "https://api.unsplash.com/users/huzhewseh/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1663221970918-58b1620c49c9image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1663221970918-58b1620c49c9image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1663221970918-58b1620c49c9image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "huzhewseh",
      total_collections: 0,
      total_likes: 0,
      total_photos: 18,
      total_promoted_photos: 3,
      accepted_tos: !0,
      for_hire: !0,
      social: {
        instagram_username: "huzhewseh",
        portfolio_url: null,
        twitter_username: "huzhewseh",
        paypal_email: null
      }
    }
  },
  {
    id: "fMNP7XVcct0",
    slug: "a-woman-standing-in-a-dark-room-with-her-eyes-closed-fMNP7XVcct0",
    alternative_slugs: {
      en: "a-woman-standing-in-a-dark-room-with-her-eyes-closed-fMNP7XVcct0"
    },
    created_at: "2024-03-09T08:40:07Z",
    updated_at: "2024-03-11T06:58:58Z",
    promoted_at: "2024-03-11T06:58:58Z",
    width: 3264,
    height: 4928,
    color: "#262626",
    blur_hash: "L35hY|xu00D%-;xuIUD%00j[?bWB",
    description: null,
    alt_description: "a woman standing in a dark room with her eyes closed",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1709973540503-77d699279634?ixid=M3wxMTc3M3wwfDF8YWxsfDR8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1709973540503-77d699279634?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDR8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1709973540503-77d699279634?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDR8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1709973540503-77d699279634?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDR8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1709973540503-77d699279634?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDR8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1709973540503-77d699279634"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-woman-standing-in-a-dark-room-with-her-eyes-closed-fMNP7XVcct0",
      html: "https://unsplash.com/photos/a-woman-standing-in-a-dark-room-with-her-eyes-closed-fMNP7XVcct0",
      download: "https://unsplash.com/photos/fMNP7XVcct0/download?ixid=M3wxMTc3M3wwfDF8YWxsfDR8fHx8fHwyfHwxNzEwMTUzMjA1fA",
      download_location: "https://api.unsplash.com/photos/fMNP7XVcct0/download?ixid=M3wxMTc3M3wwfDF8YWxsfDR8fHx8fHwyfHwxNzEwMTUzMjA1fA"
    },
    likes: 7,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {},
    user: {
      id: "lSlibqdw_c8",
      updated_at: "2024-03-11T08:54:13Z",
      username: "vitaliyshev89",
      name: "Vitaliy Shevchenko",
      first_name: "Vitaliy",
      last_name: "Shevchenko",
      twitter_username: null,
      portfolio_url: null,
      bio: null,
      location: "Kharkiv, Ukraine",
      links: {
        self: "https://api.unsplash.com/users/vitaliyshev89",
        html: "https://unsplash.com/@vitaliyshev89",
        photos: "https://api.unsplash.com/users/vitaliyshev89/photos",
        likes: "https://api.unsplash.com/users/vitaliyshev89/likes",
        portfolio: "https://api.unsplash.com/users/vitaliyshev89/portfolio",
        following: "https://api.unsplash.com/users/vitaliyshev89/following",
        followers: "https://api.unsplash.com/users/vitaliyshev89/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1652271342920-31eebbc2c3d0image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1652271342920-31eebbc2c3d0image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1652271342920-31eebbc2c3d0image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: null,
      total_collections: 0,
      total_likes: 1,
      total_photos: 205,
      total_promoted_photos: 29,
      accepted_tos: !0,
      for_hire: !1,
      social: {
        instagram_username: null,
        portfolio_url: null,
        twitter_username: null,
        paypal_email: null
      }
    }
  },
  {
    id: "b4kKyX0BQvc",
    slug: "a-train-station-with-a-train-on-the-tracks-b4kKyX0BQvc",
    alternative_slugs: {
      en: "a-train-station-with-a-train-on-the-tracks-b4kKyX0BQvc"
    },
    created_at: "2024-03-08T21:58:28Z",
    updated_at: "2024-03-11T06:57:35Z",
    promoted_at: "2024-03-11T06:57:27Z",
    width: 6e3,
    height: 4e3,
    color: "#0c2626",
    blur_hash: "LSDJS6kD9Zxu~qkDM|xaS%j]xaV@",
    description: 'Stunning metro train station "Elbbrücken" in Hamburg, Germany during sunset',
    alt_description: "a train station with a train on the tracks",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1709934645859-f1ed8d3a4954?ixid=M3wxMTc3M3wwfDF8YWxsfDV8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1709934645859-f1ed8d3a4954?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDV8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1709934645859-f1ed8d3a4954?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDV8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1709934645859-f1ed8d3a4954?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDV8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1709934645859-f1ed8d3a4954?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDV8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1709934645859-f1ed8d3a4954"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-train-station-with-a-train-on-the-tracks-b4kKyX0BQvc",
      html: "https://unsplash.com/photos/a-train-station-with-a-train-on-the-tracks-b4kKyX0BQvc",
      download: "https://unsplash.com/photos/b4kKyX0BQvc/download?ixid=M3wxMTc3M3wwfDF8YWxsfDV8fHx8fHwyfHwxNzEwMTUzMjA1fA",
      download_location: "https://api.unsplash.com/photos/b4kKyX0BQvc/download?ixid=M3wxMTc3M3wwfDF8YWxsfDV8fHx8fHwyfHwxNzEwMTUzMjA1fA"
    },
    likes: 8,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {
      "street-photography": {
        status: "approved",
        approved_on: "2024-03-11T06:57:35Z"
      }
    },
    user: {
      id: "TffftDPlBPk",
      updated_at: "2024-03-11T06:59:04Z",
      username: "christianlue",
      name: "Christian Lue",
      first_name: "Christian",
      last_name: "Lue",
      twitter_username: "chrrischii",
      portfolio_url: null,
      bio: null,
      location: "Frankfurt / Berlin",
      links: {
        self: "https://api.unsplash.com/users/christianlue",
        html: "https://unsplash.com/@christianlue",
        photos: "https://api.unsplash.com/users/christianlue/photos",
        likes: "https://api.unsplash.com/users/christianlue/likes",
        portfolio: "https://api.unsplash.com/users/christianlue/portfolio",
        following: "https://api.unsplash.com/users/christianlue/following",
        followers: "https://api.unsplash.com/users/christianlue/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1581889127238-ea4aa40e8cb4image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1581889127238-ea4aa40e8cb4image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1581889127238-ea4aa40e8cb4image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: null,
      total_collections: 7,
      total_likes: 15,
      total_photos: 571,
      total_promoted_photos: 103,
      accepted_tos: !0,
      for_hire: !0,
      social: {
        instagram_username: null,
        portfolio_url: null,
        twitter_username: "chrrischii",
        paypal_email: null
      }
    }
  },
  {
    id: "9633dHhioC8",
    slug: "a-person-walking-through-a-canyon-in-the-desert-9633dHhioC8",
    alternative_slugs: {
      en: "a-person-walking-through-a-canyon-in-the-desert-9633dHhioC8"
    },
    created_at: "2023-04-28T15:30:26Z",
    updated_at: "2024-03-10T10:46:58Z",
    promoted_at: "2023-05-13T12:02:35Z",
    width: 8316,
    height: 5544,
    color: "#734026",
    blur_hash: "LVHdd89G57-o.9IBsSR-~pD*M{xt",
    description: "Amongst expansive red sands and spectacular sandstone rock formations, Hisma Desert – NEOM, Saudi Arabia | The NEOM Nature Reserve region is being designed to deliver protection and restoration of biodiversity across 95% of NEOM.",
    alt_description: "a person walking through a canyon in the desert",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1682695795255-b236b1f1267d?ixid=M3wxMTc3M3wxfDF8YWxsfDZ8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1682695795255-b236b1f1267d?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDZ8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1682695795255-b236b1f1267d?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDZ8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1682695795255-b236b1f1267d?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDZ8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1682695795255-b236b1f1267d?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDZ8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1682695795255-b236b1f1267d"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-person-walking-through-a-canyon-in-the-desert-9633dHhioC8",
      html: "https://unsplash.com/photos/a-person-walking-through-a-canyon-in-the-desert-9633dHhioC8",
      download: "https://unsplash.com/photos/9633dHhioC8/download?ixid=M3wxMTc3M3wxfDF8YWxsfDZ8fHx8fHwyfHwxNzEwMTUzMjA1fA",
      download_location: "https://api.unsplash.com/photos/9633dHhioC8/download?ixid=M3wxMTc3M3wxfDF8YWxsfDZ8fHx8fHwyfHwxNzEwMTUzMjA1fA"
    },
    likes: 631,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: {
      impression_urls: [
        "https://secure.insightexpressai.com/adServer/adServerESI.aspx?script=false&bannerID=11515595&rnd=[timestamp]&redir=https://secure.insightexpressai.com/adserver/1pixel.gif",
        "https://secure.insightexpressai.com/adServer/adServerESI.aspx?script=false&bannerID=11515798&rnd=[timestamp]&redir=https://secure.insightexpressai.com/adserver/1pixel.gif"
      ],
      tagline: "Made to Change",
      tagline_url: "https://www.neom.com/en-us?utm_source=unsplash&utm_medium=referral",
      sponsor: {
        id: "mYizSrdJkkU",
        updated_at: "2024-03-11T08:54:08Z",
        username: "neom",
        name: "NEOM",
        first_name: "NEOM",
        last_name: null,
        twitter_username: "neom",
        portfolio_url: "http://www.neom.com",
        bio: "Located in the northwest of Saudi Arabia, NEOM’s diverse climate offers both sun-soaked beaches and snow-capped mountains. NEOM’s unique location will provide residents with enhanced livability while protecting 95% of the natural landscape.",
        location: "NEOM, Saudi Arabia",
        links: {
          self: "https://api.unsplash.com/users/neom",
          html: "https://unsplash.com/@neom",
          photos: "https://api.unsplash.com/users/neom/photos",
          likes: "https://api.unsplash.com/users/neom/likes",
          portfolio: "https://api.unsplash.com/users/neom/portfolio",
          following: "https://api.unsplash.com/users/neom/following",
          followers: "https://api.unsplash.com/users/neom/followers"
        },
        profile_image: {
          small: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
          medium: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
          large: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
        },
        instagram_username: "discoverneom",
        total_collections: 7,
        total_likes: 1,
        total_photos: 222,
        total_promoted_photos: 72,
        accepted_tos: !0,
        for_hire: !1,
        social: {
          instagram_username: "discoverneom",
          portfolio_url: "http://www.neom.com",
          twitter_username: "neom",
          paypal_email: null
        }
      }
    },
    topic_submissions: {},
    user: {
      id: "mYizSrdJkkU",
      updated_at: "2024-03-11T08:54:08Z",
      username: "neom",
      name: "NEOM",
      first_name: "NEOM",
      last_name: null,
      twitter_username: "neom",
      portfolio_url: "http://www.neom.com",
      bio: "Located in the northwest of Saudi Arabia, NEOM’s diverse climate offers both sun-soaked beaches and snow-capped mountains. NEOM’s unique location will provide residents with enhanced livability while protecting 95% of the natural landscape.",
      location: "NEOM, Saudi Arabia",
      links: {
        self: "https://api.unsplash.com/users/neom",
        html: "https://unsplash.com/@neom",
        photos: "https://api.unsplash.com/users/neom/photos",
        likes: "https://api.unsplash.com/users/neom/likes",
        portfolio: "https://api.unsplash.com/users/neom/portfolio",
        following: "https://api.unsplash.com/users/neom/following",
        followers: "https://api.unsplash.com/users/neom/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "discoverneom",
      total_collections: 7,
      total_likes: 1,
      total_photos: 222,
      total_promoted_photos: 72,
      accepted_tos: !0,
      for_hire: !1,
      social: {
        instagram_username: "discoverneom",
        portfolio_url: "http://www.neom.com",
        twitter_username: "neom",
        paypal_email: null
      }
    }
  },
  {
    id: "4PmYYBFhwFM",
    slug: "a-close-up-of-a-car-door-with-the-word-budder-on-it-4PmYYBFhwFM",
    alternative_slugs: {
      en: "a-close-up-of-a-car-door-with-the-word-budder-on-it-4PmYYBFhwFM"
    },
    created_at: "2024-03-09T18:40:37Z",
    updated_at: "2024-03-11T06:57:23Z",
    promoted_at: "2024-03-11T06:57:23Z",
    width: 5248,
    height: 7872,
    color: "#a6a6a6",
    blur_hash: "LHDA40%MbGxu%L?bt7of_N%gIBRj",
    description: null,
    alt_description: "a close up of a car door with the word budder on it",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1710009439657-c0dfdc051a28?ixid=M3wxMTc3M3wwfDF8YWxsfDd8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1710009439657-c0dfdc051a28?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDd8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1710009439657-c0dfdc051a28?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDd8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1710009439657-c0dfdc051a28?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDd8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1710009439657-c0dfdc051a28?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDd8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1710009439657-c0dfdc051a28"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-close-up-of-a-car-door-with-the-word-budder-on-it-4PmYYBFhwFM",
      html: "https://unsplash.com/photos/a-close-up-of-a-car-door-with-the-word-budder-on-it-4PmYYBFhwFM",
      download: "https://unsplash.com/photos/4PmYYBFhwFM/download?ixid=M3wxMTc3M3wwfDF8YWxsfDd8fHx8fHwyfHwxNzEwMTUzMjA1fA",
      download_location: "https://api.unsplash.com/photos/4PmYYBFhwFM/download?ixid=M3wxMTc3M3wwfDF8YWxsfDd8fHx8fHwyfHwxNzEwMTUzMjA1fA"
    },
    likes: 5,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {},
    user: {
      id: "Xz7_QPPM2So",
      updated_at: "2024-03-11T08:27:09Z",
      username: "tiago_f_ferreira",
      name: "Tiago Ferreira",
      first_name: "Tiago",
      last_name: "Ferreira",
      twitter_username: null,
      portfolio_url: "https://tiagoferreira765.wixsite.com/photographyandmusic",
      bio: `Photography - a hobby, a passion.\r
Planet earth 🌎, a creative space to enjoy.`,
      location: "Lisboa, Portugal",
      links: {
        self: "https://api.unsplash.com/users/tiago_f_ferreira",
        html: "https://unsplash.com/@tiago_f_ferreira",
        photos: "https://api.unsplash.com/users/tiago_f_ferreira/photos",
        likes: "https://api.unsplash.com/users/tiago_f_ferreira/likes",
        portfolio: "https://api.unsplash.com/users/tiago_f_ferreira/portfolio",
        following: "https://api.unsplash.com/users/tiago_f_ferreira/following",
        followers: "https://api.unsplash.com/users/tiago_f_ferreira/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1595844391672-cdf854039843image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1595844391672-cdf854039843image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1595844391672-cdf854039843image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "tiago_f_ferreira",
      total_collections: 1,
      total_likes: 144,
      total_photos: 205,
      total_promoted_photos: 8,
      accepted_tos: !0,
      for_hire: !1,
      social: {
        instagram_username: "tiago_f_ferreira",
        portfolio_url: "https://tiagoferreira765.wixsite.com/photographyandmusic",
        twitter_username: null,
        paypal_email: null
      }
    }
  },
  {
    id: "BUhVFtY-890",
    slug: "a-close-up-of-a-bird-with-a-red-head-BUhVFtY-890",
    alternative_slugs: {
      en: "a-close-up-of-a-bird-with-a-red-head-BUhVFtY-890"
    },
    created_at: "2024-03-09T10:03:28Z",
    updated_at: "2024-03-11T06:57:20Z",
    promoted_at: "2024-03-11T06:57:20Z",
    width: 3511,
    height: 2231,
    color: "#262626",
    blur_hash: "L24epEWB0eMx$*t8OEV@RPj]baay",
    description: null,
    alt_description: "a close up of a bird with a red head",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1709978601970-036e92662b46?ixid=M3wxMTc3M3wwfDF8YWxsfDh8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1709978601970-036e92662b46?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDh8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1709978601970-036e92662b46?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDh8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1709978601970-036e92662b46?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDh8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1709978601970-036e92662b46?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDh8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1709978601970-036e92662b46"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-close-up-of-a-bird-with-a-red-head-BUhVFtY-890",
      html: "https://unsplash.com/photos/a-close-up-of-a-bird-with-a-red-head-BUhVFtY-890",
      download: "https://unsplash.com/photos/BUhVFtY-890/download?ixid=M3wxMTc3M3wwfDF8YWxsfDh8fHx8fHwyfHwxNzEwMTUzMjA1fA",
      download_location: "https://api.unsplash.com/photos/BUhVFtY-890/download?ixid=M3wxMTc3M3wwfDF8YWxsfDh8fHx8fHwyfHwxNzEwMTUzMjA1fA"
    },
    likes: 8,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {
      "textures-patterns": {
        status: "rejected"
      },
      spring: {
        status: "rejected"
      },
      "earth-hour": {
        status: "approved",
        approved_on: "2024-03-10T12:31:10Z"
      },
      health: {
        status: "unevaluated"
      },
      animals: {
        status: "unevaluated"
      },
      film: {
        status: "unevaluated"
      },
      travel: {
        status: "unevaluated"
      },
      nature: {
        status: "unevaluated"
      },
      wallpapers: {
        status: "unevaluated"
      }
    },
    user: {
      id: "3SCC0WcF-wA",
      updated_at: "2024-03-11T09:44:02Z",
      username: "refargotohp",
      name: "refargotohp",
      first_name: "refargotohp",
      last_name: null,
      twitter_username: null,
      portfolio_url: null,
      bio: "Hello 👋🏼 My name is Pavel, and I am a photographer. I enjoy the photo in any of its manifestations. Sequential shooting, street, studio, portraiture - it's all me. Waiting for you on my social networks - @refargotohp",
      location: null,
      links: {
        self: "https://api.unsplash.com/users/refargotohp",
        html: "https://unsplash.com/@refargotohp",
        photos: "https://api.unsplash.com/users/refargotohp/photos",
        likes: "https://api.unsplash.com/users/refargotohp/likes",
        portfolio: "https://api.unsplash.com/users/refargotohp/portfolio",
        following: "https://api.unsplash.com/users/refargotohp/following",
        followers: "https://api.unsplash.com/users/refargotohp/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1653036388874-dab6bdb375bcimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1653036388874-dab6bdb375bcimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1653036388874-dab6bdb375bcimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "refargotohp",
      total_collections: 1,
      total_likes: 86,
      total_photos: 132,
      total_promoted_photos: 61,
      accepted_tos: !0,
      for_hire: !0,
      social: {
        instagram_username: "refargotohp",
        portfolio_url: null,
        twitter_username: null,
        paypal_email: null
      }
    }
  },
  {
    id: "99clkpyauJI",
    slug: "there-are-bottles-of-beer-on-a-shelf-in-front-of-a-window-99clkpyauJI",
    alternative_slugs: {
      en: "there-are-bottles-of-beer-on-a-shelf-in-front-of-a-window-99clkpyauJI"
    },
    created_at: "2024-03-10T00:15:28Z",
    updated_at: "2024-03-11T06:56:32Z",
    promoted_at: "2024-03-11T06:56:32Z",
    width: 4299,
    height: 3448,
    color: "#f3f3f3",
    blur_hash: "LjJuGn?bM{xu~qoKRPM{9FM{t6M_",
    description: null,
    alt_description: "there are bottles of beer on a shelf in front of a window",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1710029721414-9e2125e155c3?ixid=M3wxMTc3M3wwfDF8YWxsfDl8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1710029721414-9e2125e155c3?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDl8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1710029721414-9e2125e155c3?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDl8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1710029721414-9e2125e155c3?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDl8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1710029721414-9e2125e155c3?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDl8fHx8fHwyfHwxNzEwMTUzMjA1fA&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1710029721414-9e2125e155c3"
    },
    links: {
      self: "https://api.unsplash.com/photos/there-are-bottles-of-beer-on-a-shelf-in-front-of-a-window-99clkpyauJI",
      html: "https://unsplash.com/photos/there-are-bottles-of-beer-on-a-shelf-in-front-of-a-window-99clkpyauJI",
      download: "https://unsplash.com/photos/99clkpyauJI/download?ixid=M3wxMTc3M3wwfDF8YWxsfDl8fHx8fHwyfHwxNzEwMTUzMjA1fA",
      download_location: "https://api.unsplash.com/photos/99clkpyauJI/download?ixid=M3wxMTc3M3wwfDF8YWxsfDl8fHx8fHwyfHwxNzEwMTUzMjA1fA"
    },
    likes: 2,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {
      film: {
        status: "approved",
        approved_on: "2024-03-10T16:39:06Z"
      }
    },
    user: {
      id: "TPCcwPbQzmY",
      updated_at: "2024-03-11T06:59:01Z",
      username: "suzm4film",
      name: "szm 4",
      first_name: "szm",
      last_name: "4",
      twitter_username: null,
      portfolio_url: null,
      bio: null,
      location: "Japan",
      links: {
        self: "https://api.unsplash.com/users/suzm4film",
        html: "https://unsplash.com/@suzm4film",
        photos: "https://api.unsplash.com/users/suzm4film/photos",
        likes: "https://api.unsplash.com/users/suzm4film/likes",
        portfolio: "https://api.unsplash.com/users/suzm4film/portfolio",
        following: "https://api.unsplash.com/users/suzm4film/following",
        followers: "https://api.unsplash.com/users/suzm4film/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1632890829763-5c518f873dee?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1632890829763-5c518f873dee?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1632890829763-5c518f873dee?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: null,
      total_collections: 0,
      total_likes: 0,
      total_photos: 189,
      total_promoted_photos: 19,
      accepted_tos: !0,
      for_hire: !1,
      social: {
        instagram_username: null,
        portfolio_url: null,
        twitter_username: null,
        paypal_email: null
      }
    }
  },
  {
    id: "Lbt-cZyOUM4",
    slug: "an-old-fashioned-typewriter-sitting-on-a-table-in-front-of-a-window-Lbt-cZyOUM4",
    alternative_slugs: {
      en: "an-old-fashioned-typewriter-sitting-on-a-table-in-front-of-a-window-Lbt-cZyOUM4"
    },
    created_at: "2024-03-09T16:58:57Z",
    updated_at: "2024-03-11T06:57:06Z",
    promoted_at: "2024-03-11T06:55:38Z",
    width: 5783,
    height: 3848,
    color: "#0c2626",
    blur_hash: "LkG[.y01Ri-:?bM{RjofM{xuRkWB",
    description: null,
    alt_description: "an old fashioned typewriter sitting on a table in front of a window",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1710003364549-de37d4ed3413?ixid=M3wxMTc3M3wwfDF8YWxsfDEwfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1710003364549-de37d4ed3413?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDEwfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1710003364549-de37d4ed3413?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDEwfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1710003364549-de37d4ed3413?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDEwfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1710003364549-de37d4ed3413?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDEwfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1710003364549-de37d4ed3413"
    },
    links: {
      self: "https://api.unsplash.com/photos/an-old-fashioned-typewriter-sitting-on-a-table-in-front-of-a-window-Lbt-cZyOUM4",
      html: "https://unsplash.com/photos/an-old-fashioned-typewriter-sitting-on-a-table-in-front-of-a-window-Lbt-cZyOUM4",
      download: "https://unsplash.com/photos/Lbt-cZyOUM4/download?ixid=M3wxMTc3M3wwfDF8YWxsfDEwfHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/Lbt-cZyOUM4/download?ixid=M3wxMTc3M3wwfDF8YWxsfDEwfHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 3,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {},
    user: {
      id: "8D4VFtkiIuw",
      updated_at: "2024-03-11T07:28:57Z",
      username: "tama66",
      name: "Peter Herrmann",
      first_name: "Peter",
      last_name: "Herrmann",
      twitter_username: null,
      portfolio_url: null,
      bio: "Everything... but not boring! Instagram@Tiefstapler66",
      location: "Leverkusen/Germany",
      links: {
        self: "https://api.unsplash.com/users/tama66",
        html: "https://unsplash.com/@tama66",
        photos: "https://api.unsplash.com/users/tama66/photos",
        likes: "https://api.unsplash.com/users/tama66/likes",
        portfolio: "https://api.unsplash.com/users/tama66/portfolio",
        following: "https://api.unsplash.com/users/tama66/following",
        followers: "https://api.unsplash.com/users/tama66/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1611475141936-383e23c6cc6dimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1611475141936-383e23c6cc6dimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1611475141936-383e23c6cc6dimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "tiefstapler66",
      total_collections: 1,
      total_likes: 149,
      total_photos: 363,
      total_promoted_photos: 152,
      accepted_tos: !0,
      for_hire: !0,
      social: {
        instagram_username: "tiefstapler66",
        portfolio_url: null,
        twitter_username: null,
        paypal_email: null
      }
    }
  },
  {
    id: "D1jr0Mevs-c",
    slug: "an-aerial-view-of-a-body-of-water-D1jr0Mevs-c",
    alternative_slugs: {
      en: "an-aerial-view-of-a-body-of-water-D1jr0Mevs-c"
    },
    created_at: "2024-02-07T22:34:15Z",
    updated_at: "2024-03-10T10:54:36Z",
    promoted_at: null,
    width: 5280,
    height: 2970,
    color: "#0c2626",
    blur_hash: "LH9[JL0i+HM{^}Ezw#R.b@n$nhbb",
    description: "The Islands of NEOM are home to kaleidoscopic-coloured coral reefs and an abundance of diverse marine life | Islands of NEOM – NEOM, Saudi Arabia",
    alt_description: "an aerial view of a body of water",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1707343843982-f8275f3994c5?ixid=M3wxMTc3M3wxfDF8YWxsfDExfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1707343843982-f8275f3994c5?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDExfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1707343843982-f8275f3994c5?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDExfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1707343843982-f8275f3994c5?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDExfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1707343843982-f8275f3994c5?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDExfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1707343843982-f8275f3994c5"
    },
    links: {
      self: "https://api.unsplash.com/photos/an-aerial-view-of-a-body-of-water-D1jr0Mevs-c",
      html: "https://unsplash.com/photos/an-aerial-view-of-a-body-of-water-D1jr0Mevs-c",
      download: "https://unsplash.com/photos/D1jr0Mevs-c/download?ixid=M3wxMTc3M3wxfDF8YWxsfDExfHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/D1jr0Mevs-c/download?ixid=M3wxMTc3M3wxfDF8YWxsfDExfHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 308,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: {
      impression_urls: [],
      tagline: "Made to Change",
      tagline_url: "https://www.neom.com/en-us?utm_source=unsplash&utm_medium=referral",
      sponsor: {
        id: "mYizSrdJkkU",
        updated_at: "2024-03-11T08:54:08Z",
        username: "neom",
        name: "NEOM",
        first_name: "NEOM",
        last_name: null,
        twitter_username: "neom",
        portfolio_url: "http://www.neom.com",
        bio: "Located in the northwest of Saudi Arabia, NEOM’s diverse climate offers both sun-soaked beaches and snow-capped mountains. NEOM’s unique location will provide residents with enhanced livability while protecting 95% of the natural landscape.",
        location: "NEOM, Saudi Arabia",
        links: {
          self: "https://api.unsplash.com/users/neom",
          html: "https://unsplash.com/@neom",
          photos: "https://api.unsplash.com/users/neom/photos",
          likes: "https://api.unsplash.com/users/neom/likes",
          portfolio: "https://api.unsplash.com/users/neom/portfolio",
          following: "https://api.unsplash.com/users/neom/following",
          followers: "https://api.unsplash.com/users/neom/followers"
        },
        profile_image: {
          small: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
          medium: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
          large: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
        },
        instagram_username: "discoverneom",
        total_collections: 7,
        total_likes: 1,
        total_photos: 222,
        total_promoted_photos: 72,
        accepted_tos: !0,
        for_hire: !1,
        social: {
          instagram_username: "discoverneom",
          portfolio_url: "http://www.neom.com",
          twitter_username: "neom",
          paypal_email: null
        }
      }
    },
    topic_submissions: {},
    user: {
      id: "mYizSrdJkkU",
      updated_at: "2024-03-11T08:54:08Z",
      username: "neom",
      name: "NEOM",
      first_name: "NEOM",
      last_name: null,
      twitter_username: "neom",
      portfolio_url: "http://www.neom.com",
      bio: "Located in the northwest of Saudi Arabia, NEOM’s diverse climate offers both sun-soaked beaches and snow-capped mountains. NEOM’s unique location will provide residents with enhanced livability while protecting 95% of the natural landscape.",
      location: "NEOM, Saudi Arabia",
      links: {
        self: "https://api.unsplash.com/users/neom",
        html: "https://unsplash.com/@neom",
        photos: "https://api.unsplash.com/users/neom/photos",
        likes: "https://api.unsplash.com/users/neom/likes",
        portfolio: "https://api.unsplash.com/users/neom/portfolio",
        following: "https://api.unsplash.com/users/neom/following",
        followers: "https://api.unsplash.com/users/neom/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "discoverneom",
      total_collections: 7,
      total_likes: 1,
      total_photos: 222,
      total_promoted_photos: 72,
      accepted_tos: !0,
      for_hire: !1,
      social: {
        instagram_username: "discoverneom",
        portfolio_url: "http://www.neom.com",
        twitter_username: "neom",
        paypal_email: null
      }
    }
  },
  {
    id: "0RBEUjWQBBA",
    slug: "a-woman-standing-under-a-cherry-blossom-tree-0RBEUjWQBBA",
    alternative_slugs: {
      en: "a-woman-standing-under-a-cherry-blossom-tree-0RBEUjWQBBA"
    },
    created_at: "2024-03-10T10:15:48Z",
    updated_at: "2024-03-11T06:55:22Z",
    promoted_at: "2024-03-11T06:55:22Z",
    width: 4672,
    height: 7008,
    color: "#262626",
    blur_hash: "LOG8o{t7WBWB~DofR*j@D%NGR%WB",
    description: null,
    alt_description: "a woman standing under a cherry blossom tree",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1710065574765-a685385c6d9a?ixid=M3wxMTc3M3wwfDF8YWxsfDEyfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1710065574765-a685385c6d9a?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDEyfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1710065574765-a685385c6d9a?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDEyfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1710065574765-a685385c6d9a?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDEyfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1710065574765-a685385c6d9a?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDEyfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1710065574765-a685385c6d9a"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-woman-standing-under-a-cherry-blossom-tree-0RBEUjWQBBA",
      html: "https://unsplash.com/photos/a-woman-standing-under-a-cherry-blossom-tree-0RBEUjWQBBA",
      download: "https://unsplash.com/photos/0RBEUjWQBBA/download?ixid=M3wxMTc3M3wwfDF8YWxsfDEyfHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/0RBEUjWQBBA/download?ixid=M3wxMTc3M3wwfDF8YWxsfDEyfHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 11,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {},
    user: {
      id: "ePlndXHeIiM",
      updated_at: "2024-03-11T09:04:03Z",
      username: "lwdzl",
      name: "Jack Dong",
      first_name: "Jack",
      last_name: "Dong",
      twitter_username: null,
      portfolio_url: "https://www.xiaohongshu.com/user/profile/5f11b998000000000101d8d2?xhsshare=CopyLink&appuid=5f11b998000000000101d8d2&apptime=1696562673",
      bio: null,
      location: null,
      links: {
        self: "https://api.unsplash.com/users/lwdzl",
        html: "https://unsplash.com/@lwdzl",
        photos: "https://api.unsplash.com/users/lwdzl/photos",
        likes: "https://api.unsplash.com/users/lwdzl/likes",
        portfolio: "https://api.unsplash.com/users/lwdzl/portfolio",
        following: "https://api.unsplash.com/users/lwdzl/following",
        followers: "https://api.unsplash.com/users/lwdzl/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1696563144074-80a8da44bcd4?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1696563144074-80a8da44bcd4?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1696563144074-80a8da44bcd4?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: null,
      total_collections: 0,
      total_likes: 101,
      total_photos: 640,
      total_promoted_photos: 112,
      accepted_tos: !0,
      for_hire: !0,
      social: {
        instagram_username: null,
        portfolio_url: "https://www.xiaohongshu.com/user/profile/5f11b998000000000101d8d2?xhsshare=CopyLink&appuid=5f11b998000000000101d8d2&apptime=1696562673",
        twitter_username: null,
        paypal_email: null
      }
    }
  },
  {
    id: "2IGDvJa2Bd0",
    slug: "a-path-in-the-middle-of-a-foggy-forest-2IGDvJa2Bd0",
    alternative_slugs: {
      en: "a-path-in-the-middle-of-a-foggy-forest-2IGDvJa2Bd0"
    },
    created_at: "2024-02-21T14:32:53Z",
    updated_at: "2024-03-11T06:54:06Z",
    promoted_at: "2024-03-11T06:54:06Z",
    width: 4672,
    height: 5840,
    color: "#f3f3f3",
    blur_hash: "L#Gv00ofD%ay~qoeM_ay%NafWVj[",
    description: null,
    alt_description: "a path in the middle of a foggy forest",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1708525736169-534ee3e24e99?ixid=M3wxMTc3M3wwfDF8YWxsfDEzfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1708525736169-534ee3e24e99?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDEzfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1708525736169-534ee3e24e99?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDEzfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1708525736169-534ee3e24e99?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDEzfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1708525736169-534ee3e24e99?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDEzfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1708525736169-534ee3e24e99"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-path-in-the-middle-of-a-foggy-forest-2IGDvJa2Bd0",
      html: "https://unsplash.com/photos/a-path-in-the-middle-of-a-foggy-forest-2IGDvJa2Bd0",
      download: "https://unsplash.com/photos/2IGDvJa2Bd0/download?ixid=M3wxMTc3M3wwfDF8YWxsfDEzfHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/2IGDvJa2Bd0/download?ixid=M3wxMTc3M3wwfDF8YWxsfDEzfHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 11,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {},
    user: {
      id: "zL5HAN1fnJw",
      updated_at: "2024-03-11T06:58:57Z",
      username: "viklukphotography",
      name: "Viktor Mischke",
      first_name: "Viktor",
      last_name: "Mischke",
      twitter_username: null,
      portfolio_url: "https://www.istockphoto.com/de/portfolio/snoviktor",
      bio: null,
      location: "Schloss Holte-Stukenbrock",
      links: {
        self: "https://api.unsplash.com/users/viklukphotography",
        html: "https://unsplash.com/@viklukphotography",
        photos: "https://api.unsplash.com/users/viklukphotography/photos",
        likes: "https://api.unsplash.com/users/viklukphotography/likes",
        portfolio: "https://api.unsplash.com/users/viklukphotography/portfolio",
        following: "https://api.unsplash.com/users/viklukphotography/following",
        followers: "https://api.unsplash.com/users/viklukphotography/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1646051425690-ed09fae6858fimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1646051425690-ed09fae6858fimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1646051425690-ed09fae6858fimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "viktormischke",
      total_collections: 0,
      total_likes: 141,
      total_photos: 38,
      total_promoted_photos: 8,
      accepted_tos: !0,
      for_hire: !1,
      social: {
        instagram_username: "viktormischke",
        portfolio_url: "https://www.istockphoto.com/de/portfolio/snoviktor",
        twitter_username: null,
        paypal_email: null
      }
    }
  },
  {
    id: "PZfeP0uwBpQ",
    slug: "a-person-with-a-hat-on-their-head-in-a-field-PZfeP0uwBpQ",
    alternative_slugs: {
      en: "a-person-with-a-hat-on-their-head-in-a-field-PZfeP0uwBpQ"
    },
    created_at: "2024-02-24T10:57:49Z",
    updated_at: "2024-03-11T06:53:56Z",
    promoted_at: "2024-03-11T06:53:56Z",
    width: 2720,
    height: 4080,
    color: "#404026",
    blur_hash: "LIB:Tx%K56NGORbYxas:0KRj-poe",
    description: "A woman wearing a traditional coolie hat kneels in a field of green vegetables, carefully harvesting the crops.",
    alt_description: "a person with a hat on their head in a field",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1708771641703-0df3d179cec3?ixid=M3wxMTc3M3wwfDF8YWxsfDE0fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1708771641703-0df3d179cec3?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE0fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1708771641703-0df3d179cec3?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE0fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1708771641703-0df3d179cec3?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE0fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1708771641703-0df3d179cec3?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE0fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1708771641703-0df3d179cec3"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-person-with-a-hat-on-their-head-in-a-field-PZfeP0uwBpQ",
      html: "https://unsplash.com/photos/a-person-with-a-hat-on-their-head-in-a-field-PZfeP0uwBpQ",
      download: "https://unsplash.com/photos/PZfeP0uwBpQ/download?ixid=M3wxMTc3M3wwfDF8YWxsfDE0fHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/PZfeP0uwBpQ/download?ixid=M3wxMTc3M3wwfDF8YWxsfDE0fHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 2,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {
      people: {
        status: "rejected"
      },
      experimental: {
        status: "rejected"
      }
    },
    user: {
      id: "mWjiXj5vQuQ",
      updated_at: "2024-03-11T06:58:57Z",
      username: "chanwei_snap",
      name: "Chanwei",
      first_name: "Chanwei",
      last_name: null,
      twitter_username: null,
      portfolio_url: null,
      bio: `👋 Just a snap-happy amateur sharing my photos with you!\r
📍Instagram: @chanwei.snap\r
`,
      location: "Taipei, Taiwan",
      links: {
        self: "https://api.unsplash.com/users/chanwei_snap",
        html: "https://unsplash.com/@chanwei_snap",
        photos: "https://api.unsplash.com/users/chanwei_snap/photos",
        likes: "https://api.unsplash.com/users/chanwei_snap/likes",
        portfolio: "https://api.unsplash.com/users/chanwei_snap/portfolio",
        following: "https://api.unsplash.com/users/chanwei_snap/following",
        followers: "https://api.unsplash.com/users/chanwei_snap/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1705518610211-a929b876f4d5image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1705518610211-a929b876f4d5image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1705518610211-a929b876f4d5image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "chanwei.snap",
      total_collections: 15,
      total_likes: 63,
      total_photos: 150,
      total_promoted_photos: 2,
      accepted_tos: !0,
      for_hire: !1,
      social: {
        instagram_username: "chanwei.snap",
        portfolio_url: null,
        twitter_username: null,
        paypal_email: null
      }
    }
  },
  {
    id: "1JwHaWeSK9s",
    slug: "a-picture-of-some-white-flowers-on-a-white-background-1JwHaWeSK9s",
    alternative_slugs: {
      en: "a-picture-of-some-white-flowers-on-a-white-background-1JwHaWeSK9s"
    },
    created_at: "2024-03-10T11:33:51Z",
    updated_at: "2024-03-11T06:57:09Z",
    promoted_at: "2024-03-11T06:53:39Z",
    width: 3586,
    height: 3917,
    color: "#f3f3d9",
    blur_hash: "LIQ0T^j=_4%M%MxbM{M{_4jZITbH",
    description: "Title: Christmas eve Artist: Callowhill, James Publisher: L. Prang & Co. Name on Item: JC Date: [ca. 1861–1897] https://www.digitalcommonwealth.org/search/commonwealth:7w62f880r",
    alt_description: "a picture of some white flowers on a white background",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1710069455079-2059d3cefe91?ixid=M3wxMTc3M3wwfDF8YWxsfDE1fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1710069455079-2059d3cefe91?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE1fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1710069455079-2059d3cefe91?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE1fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1710069455079-2059d3cefe91?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE1fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1710069455079-2059d3cefe91?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE1fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1710069455079-2059d3cefe91"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-picture-of-some-white-flowers-on-a-white-background-1JwHaWeSK9s",
      html: "https://unsplash.com/photos/a-picture-of-some-white-flowers-on-a-white-background-1JwHaWeSK9s",
      download: "https://unsplash.com/photos/1JwHaWeSK9s/download?ixid=M3wxMTc3M3wwfDF8YWxsfDE1fHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/1JwHaWeSK9s/download?ixid=M3wxMTc3M3wwfDF8YWxsfDE1fHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 7,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {},
    user: {
      id: "piFVWeoWxU8",
      updated_at: "2024-03-11T07:28:12Z",
      username: "bostonpubliclibrary",
      name: "Boston Public Library",
      first_name: "Boston",
      last_name: "Public Library",
      twitter_username: null,
      portfolio_url: "https://www.bpl.org/",
      bio: "Considered a pioneer of public library service in the United States, the Boston Public Library is among the three largest collections in the country and is committed to be ‘Free for All’.",
      location: "Boston, USA",
      links: {
        self: "https://api.unsplash.com/users/bostonpubliclibrary",
        html: "https://unsplash.com/@bostonpubliclibrary",
        photos: "https://api.unsplash.com/users/bostonpubliclibrary/photos",
        likes: "https://api.unsplash.com/users/bostonpubliclibrary/likes",
        portfolio: "https://api.unsplash.com/users/bostonpubliclibrary/portfolio",
        following: "https://api.unsplash.com/users/bostonpubliclibrary/following",
        followers: "https://api.unsplash.com/users/bostonpubliclibrary/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1579171056760-0293bb679901image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1579171056760-0293bb679901image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1579171056760-0293bb679901image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: null,
      total_collections: 6,
      total_likes: 0,
      total_photos: 510,
      total_promoted_photos: 62,
      accepted_tos: !0,
      for_hire: !1,
      social: {
        instagram_username: null,
        portfolio_url: "https://www.bpl.org/",
        twitter_username: null,
        paypal_email: null
      }
    }
  },
  {
    id: "efzvMAIpfWY",
    slug: "a-couple-of-people-that-are-standing-in-the-dirt-efzvMAIpfWY",
    alternative_slugs: {
      en: "a-couple-of-people-that-are-standing-in-the-dirt-efzvMAIpfWY"
    },
    created_at: "2023-04-28T12:46:16Z",
    updated_at: "2024-03-11T09:48:19Z",
    promoted_at: null,
    width: 9504,
    height: 6336,
    color: "#c07359",
    blur_hash: "LELo7xNHxa~Bz:s9S4nO~VbwoLS~",
    description: "Amongst expansive red sands and spectacular sandstone rock formations, Hisma Desert – NEOM, Saudi Arabia | The NEOM Nature Reserve region is being designed to deliver protection and restoration of biodiversity across 95% of NEOM.",
    alt_description: "a couple of people that are standing in the dirt",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1682685797742-42c9987a2c34?ixid=M3wxMTc3M3wxfDF8YWxsfDE2fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1682685797742-42c9987a2c34?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDE2fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1682685797742-42c9987a2c34?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDE2fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1682685797742-42c9987a2c34?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDE2fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1682685797742-42c9987a2c34?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDE2fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1682685797742-42c9987a2c34"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-couple-of-people-that-are-standing-in-the-dirt-efzvMAIpfWY",
      html: "https://unsplash.com/photos/a-couple-of-people-that-are-standing-in-the-dirt-efzvMAIpfWY",
      download: "https://unsplash.com/photos/efzvMAIpfWY/download?ixid=M3wxMTc3M3wxfDF8YWxsfDE2fHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/efzvMAIpfWY/download?ixid=M3wxMTc3M3wxfDF8YWxsfDE2fHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 211,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: {
      impression_urls: [
        "https://secure.insightexpressai.com/adServer/adServerESI.aspx?script=false&bannerID=11515544&rnd=[timestamp]&redir=https://secure.insightexpressai.com/adserver/1pixel.gif",
        "https://secure.insightexpressai.com/adServer/adServerESI.aspx?script=false&bannerID=11515747&rnd=[timestamp]&redir=https://secure.insightexpressai.com/adserver/1pixel.gif"
      ],
      tagline: "Made to Change",
      tagline_url: "https://www.neom.com/en-us?utm_source=unsplash&utm_medium=referral",
      sponsor: {
        id: "mYizSrdJkkU",
        updated_at: "2024-03-11T08:54:08Z",
        username: "neom",
        name: "NEOM",
        first_name: "NEOM",
        last_name: null,
        twitter_username: "neom",
        portfolio_url: "http://www.neom.com",
        bio: "Located in the northwest of Saudi Arabia, NEOM’s diverse climate offers both sun-soaked beaches and snow-capped mountains. NEOM’s unique location will provide residents with enhanced livability while protecting 95% of the natural landscape.",
        location: "NEOM, Saudi Arabia",
        links: {
          self: "https://api.unsplash.com/users/neom",
          html: "https://unsplash.com/@neom",
          photos: "https://api.unsplash.com/users/neom/photos",
          likes: "https://api.unsplash.com/users/neom/likes",
          portfolio: "https://api.unsplash.com/users/neom/portfolio",
          following: "https://api.unsplash.com/users/neom/following",
          followers: "https://api.unsplash.com/users/neom/followers"
        },
        profile_image: {
          small: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
          medium: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
          large: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
        },
        instagram_username: "discoverneom",
        total_collections: 7,
        total_likes: 1,
        total_photos: 222,
        total_promoted_photos: 72,
        accepted_tos: !0,
        for_hire: !1,
        social: {
          instagram_username: "discoverneom",
          portfolio_url: "http://www.neom.com",
          twitter_username: "neom",
          paypal_email: null
        }
      }
    },
    topic_submissions: {},
    user: {
      id: "mYizSrdJkkU",
      updated_at: "2024-03-11T08:54:08Z",
      username: "neom",
      name: "NEOM",
      first_name: "NEOM",
      last_name: null,
      twitter_username: "neom",
      portfolio_url: "http://www.neom.com",
      bio: "Located in the northwest of Saudi Arabia, NEOM’s diverse climate offers both sun-soaked beaches and snow-capped mountains. NEOM’s unique location will provide residents with enhanced livability while protecting 95% of the natural landscape.",
      location: "NEOM, Saudi Arabia",
      links: {
        self: "https://api.unsplash.com/users/neom",
        html: "https://unsplash.com/@neom",
        photos: "https://api.unsplash.com/users/neom/photos",
        likes: "https://api.unsplash.com/users/neom/likes",
        portfolio: "https://api.unsplash.com/users/neom/portfolio",
        following: "https://api.unsplash.com/users/neom/following",
        followers: "https://api.unsplash.com/users/neom/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "discoverneom",
      total_collections: 7,
      total_likes: 1,
      total_photos: 222,
      total_promoted_photos: 72,
      accepted_tos: !0,
      for_hire: !1,
      social: {
        instagram_username: "discoverneom",
        portfolio_url: "http://www.neom.com",
        twitter_username: "neom",
        paypal_email: null
      }
    }
  },
  {
    id: "j39-6Uto9QQ",
    slug: "a-forest-filled-with-lots-of-tall-trees-j39-6Uto9QQ",
    alternative_slugs: {
      en: "a-forest-filled-with-lots-of-tall-trees-j39-6Uto9QQ"
    },
    created_at: "2024-03-09T22:12:40Z",
    updated_at: "2024-03-11T07:57:13Z",
    promoted_at: "2024-03-11T06:51:56Z",
    width: 3759,
    height: 5639,
    color: "#26260c",
    blur_hash: "L79tDG?H4;IURu%MM{RP~oohIoIo",
    description: null,
    alt_description: "a forest filled with lots of tall trees",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1710020339360-ce951881b835?ixid=M3wxMTc3M3wwfDF8YWxsfDE3fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1710020339360-ce951881b835?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE3fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1710020339360-ce951881b835?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE3fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1710020339360-ce951881b835?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE3fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1710020339360-ce951881b835?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE3fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1710020339360-ce951881b835"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-forest-filled-with-lots-of-tall-trees-j39-6Uto9QQ",
      html: "https://unsplash.com/photos/a-forest-filled-with-lots-of-tall-trees-j39-6Uto9QQ",
      download: "https://unsplash.com/photos/j39-6Uto9QQ/download?ixid=M3wxMTc3M3wwfDF8YWxsfDE3fHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/j39-6Uto9QQ/download?ixid=M3wxMTc3M3wwfDF8YWxsfDE3fHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 1,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {},
    user: {
      id: "MarIhx6ztc0",
      updated_at: "2024-03-11T06:51:56Z",
      username: "brice_cooper18",
      name: "Brice Cooper",
      first_name: "Brice",
      last_name: "Cooper",
      twitter_username: null,
      portfolio_url: null,
      bio: "Always down for an adventure, capturing those adventures one photo at a time. Never stop exploring!",
      location: "Florida",
      links: {
        self: "https://api.unsplash.com/users/brice_cooper18",
        html: "https://unsplash.com/@brice_cooper18",
        photos: "https://api.unsplash.com/users/brice_cooper18/photos",
        likes: "https://api.unsplash.com/users/brice_cooper18/likes",
        portfolio: "https://api.unsplash.com/users/brice_cooper18/portfolio",
        following: "https://api.unsplash.com/users/brice_cooper18/following",
        followers: "https://api.unsplash.com/users/brice_cooper18/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1673045276376-91bb892b6e94image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1673045276376-91bb892b6e94image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1673045276376-91bb892b6e94image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "brice_cooper18",
      total_collections: 14,
      total_likes: 0,
      total_photos: 1467,
      total_promoted_photos: 51,
      accepted_tos: !0,
      for_hire: !0,
      social: {
        instagram_username: "brice_cooper18",
        portfolio_url: null,
        twitter_username: null,
        paypal_email: null
      }
    }
  },
  {
    id: "oTE1p2Awp3I",
    slug: "a-couple-of-people-standing-on-top-of-a-cliff-next-to-the-ocean-oTE1p2Awp3I",
    alternative_slugs: {
      en: "a-couple-of-people-standing-on-top-of-a-cliff-next-to-the-ocean-oTE1p2Awp3I"
    },
    created_at: "2024-02-27T22:15:01Z",
    updated_at: "2024-03-11T06:51:52Z",
    promoted_at: "2024-03-11T06:51:52Z",
    width: 4e3,
    height: 5333,
    color: "#c0c0c0",
    blur_hash: "LLE:C[u5IooJ_N%gE1ax~ps8Vsoe",
    description: null,
    alt_description: "a couple of people standing on top of a cliff next to the ocean",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1709071784840-cf3ecc434749?ixid=M3wxMTc3M3wwfDF8YWxsfDE4fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1709071784840-cf3ecc434749?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE4fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1709071784840-cf3ecc434749?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE4fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1709071784840-cf3ecc434749?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE4fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1709071784840-cf3ecc434749?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE4fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1709071784840-cf3ecc434749"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-couple-of-people-standing-on-top-of-a-cliff-next-to-the-ocean-oTE1p2Awp3I",
      html: "https://unsplash.com/photos/a-couple-of-people-standing-on-top-of-a-cliff-next-to-the-ocean-oTE1p2Awp3I",
      download: "https://unsplash.com/photos/oTE1p2Awp3I/download?ixid=M3wxMTc3M3wwfDF8YWxsfDE4fHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/oTE1p2Awp3I/download?ixid=M3wxMTc3M3wwfDF8YWxsfDE4fHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 8,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {},
    user: {
      id: "khtnjqjzcq0",
      updated_at: "2024-03-11T06:51:53Z",
      username: "mitchorr",
      name: "Mitchell Orr",
      first_name: "Mitchell",
      last_name: "Orr",
      twitter_username: null,
      portfolio_url: "https://mitchorr.darkroom.tech/",
      bio: `If you feel you would like to support my work, any donations no matter how small, would be extremely helpful. \r
Thanks for looking!`,
      location: "Wirral",
      links: {
        self: "https://api.unsplash.com/users/mitchorr",
        html: "https://unsplash.com/@mitchorr",
        photos: "https://api.unsplash.com/users/mitchorr/photos",
        likes: "https://api.unsplash.com/users/mitchorr/likes",
        portfolio: "https://api.unsplash.com/users/mitchorr/portfolio",
        following: "https://api.unsplash.com/users/mitchorr/following",
        followers: "https://api.unsplash.com/users/mitchorr/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1687891061126-8858e815018fimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1687891061126-8858e815018fimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1687891061126-8858e815018fimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "mitchorr1",
      total_collections: 0,
      total_likes: 41,
      total_photos: 358,
      total_promoted_photos: 118,
      accepted_tos: !0,
      for_hire: !0,
      social: {
        instagram_username: "mitchorr1",
        portfolio_url: "https://mitchorr.darkroom.tech/",
        twitter_username: null,
        paypal_email: null
      }
    }
  },
  {
    id: "ihmo0uRQ3jA",
    slug: "a-bed-sitting-in-a-bedroom-next-to-a-window-ihmo0uRQ3jA",
    alternative_slugs: {
      en: "a-bed-sitting-in-a-bedroom-next-to-a-window-ihmo0uRQ3jA"
    },
    created_at: "2024-02-24T20:00:04Z",
    updated_at: "2024-03-11T06:51:48Z",
    promoted_at: "2024-03-11T06:51:48Z",
    width: 4e3,
    height: 6e3,
    color: "#260c0c",
    blur_hash: "L78;b;?I4Xx?tcIUD+xt03oy-.M|",
    description: null,
    alt_description: "a bed sitting in a bedroom next to a window",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1708804309492-5ef3f3458c33?ixid=M3wxMTc3M3wwfDF8YWxsfDE5fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1708804309492-5ef3f3458c33?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE5fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1708804309492-5ef3f3458c33?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE5fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1708804309492-5ef3f3458c33?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE5fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1708804309492-5ef3f3458c33?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDE5fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1708804309492-5ef3f3458c33"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-bed-sitting-in-a-bedroom-next-to-a-window-ihmo0uRQ3jA",
      html: "https://unsplash.com/photos/a-bed-sitting-in-a-bedroom-next-to-a-window-ihmo0uRQ3jA",
      download: "https://unsplash.com/photos/ihmo0uRQ3jA/download?ixid=M3wxMTc3M3wwfDF8YWxsfDE5fHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/ihmo0uRQ3jA/download?ixid=M3wxMTc3M3wwfDF8YWxsfDE5fHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 20,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {},
    user: {
      id: "Og5qBrDjufI",
      updated_at: "2024-03-11T06:51:49Z",
      username: "mariailves",
      name: "Maria Ilves",
      first_name: "Maria",
      last_name: "Ilves",
      twitter_username: null,
      portfolio_url: "http://www.mariailves.com",
      bio: null,
      location: "Ambleside",
      links: {
        self: "https://api.unsplash.com/users/mariailves",
        html: "https://unsplash.com/@mariailves",
        photos: "https://api.unsplash.com/users/mariailves/photos",
        likes: "https://api.unsplash.com/users/mariailves/likes",
        portfolio: "https://api.unsplash.com/users/mariailves/portfolio",
        following: "https://api.unsplash.com/users/mariailves/following",
        followers: "https://api.unsplash.com/users/mariailves/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1708802611867-ab4ff1564c8cimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1708802611867-ab4ff1564c8cimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1708802611867-ab4ff1564c8cimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "mariailves_",
      total_collections: 0,
      total_likes: 0,
      total_photos: 38,
      total_promoted_photos: 4,
      accepted_tos: !0,
      for_hire: !0,
      social: {
        instagram_username: "mariailves_",
        portfolio_url: "http://www.mariailves.com",
        twitter_username: null,
        paypal_email: null
      }
    }
  },
  {
    id: "UvQtTVdFi9I",
    slug: "UvQtTVdFi9I",
    alternative_slugs: {
      en: "UvQtTVdFi9I"
    },
    created_at: "2016-08-12T16:12:25Z",
    updated_at: "2024-03-11T06:50:27Z",
    promoted_at: "2024-03-11T06:50:27Z",
    width: 3648,
    height: 5472,
    color: "#8ca673",
    blur_hash: "LGG9g4IAVax[.Zxus=kB9HtQ%LRj",
    description: null,
    alt_description: null,
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1471018289981-5d9f06e2bf45?ixid=M3wxMTc3M3wwfDF8YWxsfDIwfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1471018289981-5d9f06e2bf45?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDIwfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1471018289981-5d9f06e2bf45?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDIwfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1471018289981-5d9f06e2bf45?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDIwfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1471018289981-5d9f06e2bf45?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDIwfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1471018289981-5d9f06e2bf45"
    },
    links: {
      self: "https://api.unsplash.com/photos/UvQtTVdFi9I",
      html: "https://unsplash.com/photos/UvQtTVdFi9I",
      download: "https://unsplash.com/photos/UvQtTVdFi9I/download?ixid=M3wxMTc3M3wwfDF8YWxsfDIwfHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/UvQtTVdFi9I/download?ixid=M3wxMTc3M3wwfDF8YWxsfDIwfHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 60,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {},
    user: {
      id: "dhG1THiRwtA",
      updated_at: "2024-03-11T06:50:28Z",
      username: "clarissemeyer",
      name: "Clarisse Meyer",
      first_name: "Clarisse",
      last_name: "Meyer",
      twitter_username: "claireymeyer",
      portfolio_url: "https://www.clarisserae.com",
      bio: `Photo | Video | Design - Southern California & Beyond\r
Instagram: @clarisse.rae`,
      location: "Orange County, CA",
      links: {
        self: "https://api.unsplash.com/users/clarissemeyer",
        html: "https://unsplash.com/@clarissemeyer",
        photos: "https://api.unsplash.com/users/clarissemeyer/photos",
        likes: "https://api.unsplash.com/users/clarissemeyer/likes",
        portfolio: "https://api.unsplash.com/users/clarissemeyer/portfolio",
        following: "https://api.unsplash.com/users/clarissemeyer/following",
        followers: "https://api.unsplash.com/users/clarissemeyer/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1470948329031-558b487bdf37?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1470948329031-558b487bdf37?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1470948329031-558b487bdf37?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "clarisse.rae",
      total_collections: 2,
      total_likes: 139,
      total_photos: 99,
      total_promoted_photos: 58,
      accepted_tos: !1,
      for_hire: !1,
      social: {
        instagram_username: "clarisse.rae",
        portfolio_url: "https://www.clarisserae.com",
        twitter_username: "claireymeyer",
        paypal_email: null
      }
    }
  },
  {
    id: "iswshBYbTBk",
    slug: "a-woman-riding-an-escalator-down-an-escalator-iswshBYbTBk",
    alternative_slugs: {
      en: "a-woman-riding-an-escalator-down-an-escalator-iswshBYbTBk"
    },
    created_at: "2024-02-27T19:26:10Z",
    updated_at: "2024-03-11T06:48:50Z",
    promoted_at: "2024-03-11T06:48:50Z",
    width: 3940,
    height: 2634,
    color: "#73a673",
    blur_hash: "LEDn~t%{y:WXDPVtH[jt8{o|VGk9",
    description: null,
    alt_description: "a woman riding an escalator down an escalator",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1709061965707-9a89ffb23103?ixid=M3wxMTc3M3wwfDF8YWxsfDIyfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1709061965707-9a89ffb23103?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDIyfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1709061965707-9a89ffb23103?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDIyfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1709061965707-9a89ffb23103?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDIyfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1709061965707-9a89ffb23103?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDIyfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1709061965707-9a89ffb23103"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-woman-riding-an-escalator-down-an-escalator-iswshBYbTBk",
      html: "https://unsplash.com/photos/a-woman-riding-an-escalator-down-an-escalator-iswshBYbTBk",
      download: "https://unsplash.com/photos/iswshBYbTBk/download?ixid=M3wxMTc3M3wwfDF8YWxsfDIyfHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/iswshBYbTBk/download?ixid=M3wxMTc3M3wwfDF8YWxsfDIyfHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 4,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {
      people: {
        status: "rejected"
      }
    },
    user: {
      id: "d-2o2yQwtxY",
      updated_at: "2024-03-11T06:48:59Z",
      username: "vitalymazur",
      name: "Vitalii Mazur",
      first_name: "Vitalii",
      last_name: "Mazur",
      twitter_username: "@madebyvitalii",
      portfolio_url: "https://www.behance.net/vitaliimazur",
      bio: `Life through photography 🌿 \r
Feel free to support me via PayPal (vitaly.mazur@icloud.com) if you like to use my shots. Also I'm available for a photoshoot in Toronto 📸🇨🇦`,
      location: "Toronto, Canada",
      links: {
        self: "https://api.unsplash.com/users/vitalymazur",
        html: "https://unsplash.com/@vitalymazur",
        photos: "https://api.unsplash.com/users/vitalymazur/photos",
        likes: "https://api.unsplash.com/users/vitalymazur/likes",
        portfolio: "https://api.unsplash.com/users/vitalymazur/portfolio",
        following: "https://api.unsplash.com/users/vitalymazur/following",
        followers: "https://api.unsplash.com/users/vitalymazur/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1708119387274-fad12c7d293b?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1708119387274-fad12c7d293b?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1708119387274-fad12c7d293b?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "vitalymazur ",
      total_collections: 14,
      total_likes: 773,
      total_photos: 263,
      total_promoted_photos: 15,
      accepted_tos: !0,
      for_hire: !0,
      social: {
        instagram_username: "vitalymazur ",
        portfolio_url: "https://www.behance.net/vitaliimazur",
        twitter_username: "@madebyvitalii",
        paypal_email: null
      }
    }
  },
  {
    id: "uSNuKKh7wpA",
    slug: "a-picture-of-a-green-object-with-a-white-background-uSNuKKh7wpA",
    alternative_slugs: {
      en: "a-picture-of-a-green-object-with-a-white-background-uSNuKKh7wpA"
    },
    created_at: "2024-03-01T10:58:28Z",
    updated_at: "2024-03-11T06:48:07Z",
    promoted_at: "2024-03-11T06:48:07Z",
    width: 9600,
    height: 5400,
    color: "#d9d9d9",
    blur_hash: "LJLq]_WI_3%eo$xa?cRi~qobITM|",
    description: "Made in blender 4.0",
    alt_description: "a picture of a green object with a white background",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1709290649154-54c725bd4484?ixid=M3wxMTc3M3wwfDF8YWxsfDIzfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1709290649154-54c725bd4484?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDIzfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1709290649154-54c725bd4484?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDIzfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1709290649154-54c725bd4484?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDIzfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1709290649154-54c725bd4484?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDIzfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1709290649154-54c725bd4484"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-picture-of-a-green-object-with-a-white-background-uSNuKKh7wpA",
      html: "https://unsplash.com/photos/a-picture-of-a-green-object-with-a-white-background-uSNuKKh7wpA",
      download: "https://unsplash.com/photos/uSNuKKh7wpA/download?ixid=M3wxMTc3M3wwfDF8YWxsfDIzfHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/uSNuKKh7wpA/download?ixid=M3wxMTc3M3wwfDF8YWxsfDIzfHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 42,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {
      "3d-renders": {
        status: "approved",
        approved_on: "2024-03-06T08:20:20Z"
      },
      experimental: {
        status: "approved",
        approved_on: "2024-03-06T07:38:30Z"
      }
    },
    user: {
      id: "5TCQxdaW0wE",
      updated_at: "2024-03-11T10:04:04Z",
      username: "theshubhamdhage",
      name: "Shubham Dhage",
      first_name: "Shubham",
      last_name: "Dhage",
      twitter_username: "theshubhamdhage",
      portfolio_url: "https://theshubhamdhage.com/",
      bio: "Creating things is my passion.",
      location: "Pune, India",
      links: {
        self: "https://api.unsplash.com/users/theshubhamdhage",
        html: "https://unsplash.com/@theshubhamdhage",
        photos: "https://api.unsplash.com/users/theshubhamdhage/photos",
        likes: "https://api.unsplash.com/users/theshubhamdhage/likes",
        portfolio: "https://api.unsplash.com/users/theshubhamdhage/portfolio",
        following: "https://api.unsplash.com/users/theshubhamdhage/following",
        followers: "https://api.unsplash.com/users/theshubhamdhage/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1702918491890-622aa47079a5image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1702918491890-622aa47079a5image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1702918491890-622aa47079a5image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "theshubhamdhage",
      total_collections: 2,
      total_likes: 296,
      total_photos: 734,
      total_promoted_photos: 147,
      accepted_tos: !0,
      for_hire: !0,
      social: {
        instagram_username: "theshubhamdhage",
        portfolio_url: "https://theshubhamdhage.com/",
        twitter_username: "theshubhamdhage",
        paypal_email: null
      }
    }
  },
  {
    id: "7lN8MJPnlXs",
    slug: "a-close-up-of-a-pine-tree-with-lots-of-needles-7lN8MJPnlXs",
    alternative_slugs: {
      en: "a-close-up-of-a-pine-tree-with-lots-of-needles-7lN8MJPnlXs"
    },
    created_at: "2024-03-06T19:31:23Z",
    updated_at: "2024-03-11T06:47:23Z",
    promoted_at: "2024-03-11T06:47:23Z",
    width: 6720,
    height: 4480,
    color: "#26260c",
    blur_hash: "L05OKD},~lR7TJRj%d^$_0E49Is:",
    description: null,
    alt_description: "a close up of a pine tree with lots of needles",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1709753422610-39ed7ddf9e08?ixid=M3wxMTc3M3wwfDF8YWxsfDI0fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1709753422610-39ed7ddf9e08?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI0fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1709753422610-39ed7ddf9e08?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI0fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1709753422610-39ed7ddf9e08?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI0fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1709753422610-39ed7ddf9e08?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI0fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1709753422610-39ed7ddf9e08"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-close-up-of-a-pine-tree-with-lots-of-needles-7lN8MJPnlXs",
      html: "https://unsplash.com/photos/a-close-up-of-a-pine-tree-with-lots-of-needles-7lN8MJPnlXs",
      download: "https://unsplash.com/photos/7lN8MJPnlXs/download?ixid=M3wxMTc3M3wwfDF8YWxsfDI0fHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/7lN8MJPnlXs/download?ixid=M3wxMTc3M3wwfDF8YWxsfDI0fHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 5,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {
      "textures-patterns": {
        status: "approved",
        approved_on: "2024-03-11T06:47:18Z"
      }
    },
    user: {
      id: "gMFqynHNocY",
      updated_at: "2024-03-11T06:48:57Z",
      username: "blakecheekk",
      name: "Blake Cheek",
      first_name: "Blake",
      last_name: "Cheek",
      twitter_username: "blakecheekk",
      portfolio_url: "http://blakecheek.com",
      bio: "Photographer and Videographer. Lover of coffee and Jesus. ",
      location: "Atlanta, Ga",
      links: {
        self: "https://api.unsplash.com/users/blakecheekk",
        html: "https://unsplash.com/@blakecheekk",
        photos: "https://api.unsplash.com/users/blakecheekk/photos",
        likes: "https://api.unsplash.com/users/blakecheekk/likes",
        portfolio: "https://api.unsplash.com/users/blakecheekk/portfolio",
        following: "https://api.unsplash.com/users/blakecheekk/following",
        followers: "https://api.unsplash.com/users/blakecheekk/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1709746841716-156061dd4fe9image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1709746841716-156061dd4fe9image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1709746841716-156061dd4fe9image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "blakecheekk",
      total_collections: 4,
      total_likes: 0,
      total_photos: 423,
      total_promoted_photos: 165,
      accepted_tos: !0,
      for_hire: !0,
      social: {
        instagram_username: "blakecheekk",
        portfolio_url: "http://blakecheek.com",
        twitter_username: "blakecheekk",
        paypal_email: null
      }
    }
  },
  {
    id: "Fw8vp9G6FtE",
    slug: "the-contents-of-a-backpack-laid-out-on-a-table-Fw8vp9G6FtE",
    alternative_slugs: {
      en: "the-contents-of-a-backpack-laid-out-on-a-table-Fw8vp9G6FtE"
    },
    created_at: "2024-03-10T00:43:31Z",
    updated_at: "2024-03-11T06:46:50Z",
    promoted_at: "2024-03-11T06:46:50Z",
    width: 6240,
    height: 4160,
    color: "#262626",
    blur_hash: "LIINNov{ae}=56I]eToaEmWC^iI;",
    description: null,
    alt_description: "the contents of a backpack laid out on a table",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1710031407576-135a680d6e10?ixid=M3wxMTc3M3wwfDF8YWxsfDI1fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1710031407576-135a680d6e10?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI1fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1710031407576-135a680d6e10?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI1fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1710031407576-135a680d6e10?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI1fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1710031407576-135a680d6e10?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI1fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1710031407576-135a680d6e10"
    },
    links: {
      self: "https://api.unsplash.com/photos/the-contents-of-a-backpack-laid-out-on-a-table-Fw8vp9G6FtE",
      html: "https://unsplash.com/photos/the-contents-of-a-backpack-laid-out-on-a-table-Fw8vp9G6FtE",
      download: "https://unsplash.com/photos/Fw8vp9G6FtE/download?ixid=M3wxMTc3M3wwfDF8YWxsfDI1fHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/Fw8vp9G6FtE/download?ixid=M3wxMTc3M3wwfDF8YWxsfDI1fHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 4,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {},
    user: {
      id: "UmKpkFAcSDE",
      updated_at: "2024-03-11T06:46:50Z",
      username: "taylorheeryphoto",
      name: "Taylor Heery",
      first_name: "Taylor",
      last_name: "Heery",
      twitter_username: "tahegri",
      portfolio_url: "http://www.taylorheery.com",
      bio: `VENMO: @taylorheeryphoto\r
Fujifilm fanatic.`,
      location: "Hendersonville, NC",
      links: {
        self: "https://api.unsplash.com/users/taylorheeryphoto",
        html: "https://unsplash.com/@taylorheeryphoto",
        photos: "https://api.unsplash.com/users/taylorheeryphoto/photos",
        likes: "https://api.unsplash.com/users/taylorheeryphoto/likes",
        portfolio: "https://api.unsplash.com/users/taylorheeryphoto/portfolio",
        following: "https://api.unsplash.com/users/taylorheeryphoto/following",
        followers: "https://api.unsplash.com/users/taylorheeryphoto/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1710031596049-549d947d2a3a?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1710031596049-549d947d2a3a?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1710031596049-549d947d2a3a?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "taylorheeryphoto",
      total_collections: 0,
      total_likes: 107,
      total_photos: 520,
      total_promoted_photos: 209,
      accepted_tos: !0,
      for_hire: !0,
      social: {
        instagram_username: "taylorheeryphoto",
        portfolio_url: "http://www.taylorheery.com",
        twitter_username: "tahegri",
        paypal_email: null
      }
    }
  },
  {
    id: "e75CfMG0Sgo",
    slug: "a-person-with-a-backpack-looking-at-mountains-e75CfMG0Sgo",
    alternative_slugs: {
      en: "a-person-with-a-backpack-looking-at-mountains-e75CfMG0Sgo"
    },
    created_at: "2023-04-28T12:46:16Z",
    updated_at: "2024-03-10T11:50:20Z",
    promoted_at: null,
    width: 5429,
    height: 3619,
    color: "#a6c0d9",
    blur_hash: "LnHLYm%0IAi_?wn$ngj[OtRjs:f6",
    description: "Nature Reserve – NEOM, Saudi Arabia | The NEOM Nature Reserve region is being designed to deliver protection and restoration of biodiversity across 95% of NEOM.",
    alt_description: "a person with a backpack looking at mountains",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1682685796002-e05458d61f07?ixid=M3wxMTc3M3wxfDF8YWxsfDI2fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1682685796002-e05458d61f07?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDI2fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1682685796002-e05458d61f07?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDI2fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1682685796002-e05458d61f07?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDI2fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1682685796002-e05458d61f07?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wxfDF8YWxsfDI2fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1682685796002-e05458d61f07"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-person-with-a-backpack-looking-at-mountains-e75CfMG0Sgo",
      html: "https://unsplash.com/photos/a-person-with-a-backpack-looking-at-mountains-e75CfMG0Sgo",
      download: "https://unsplash.com/photos/e75CfMG0Sgo/download?ixid=M3wxMTc3M3wxfDF8YWxsfDI2fHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/e75CfMG0Sgo/download?ixid=M3wxMTc3M3wxfDF8YWxsfDI2fHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 174,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: {
      impression_urls: [
        "https://secure.insightexpressai.com/adServer/adServerESI.aspx?script=false&bannerID=11515577&rnd=[timestamp]&redir=https://secure.insightexpressai.com/adserver/1pixel.gif",
        "https://secure.insightexpressai.com/adServer/adServerESI.aspx?script=false&bannerID=11515780&rnd=[timestamp]&redir=https://secure.insightexpressai.com/adserver/1pixel.gif"
      ],
      tagline: "Made to Change",
      tagline_url: "https://www.neom.com/en-us?utm_source=unsplash&utm_medium=referral",
      sponsor: {
        id: "mYizSrdJkkU",
        updated_at: "2024-03-11T08:54:08Z",
        username: "neom",
        name: "NEOM",
        first_name: "NEOM",
        last_name: null,
        twitter_username: "neom",
        portfolio_url: "http://www.neom.com",
        bio: "Located in the northwest of Saudi Arabia, NEOM’s diverse climate offers both sun-soaked beaches and snow-capped mountains. NEOM’s unique location will provide residents with enhanced livability while protecting 95% of the natural landscape.",
        location: "NEOM, Saudi Arabia",
        links: {
          self: "https://api.unsplash.com/users/neom",
          html: "https://unsplash.com/@neom",
          photos: "https://api.unsplash.com/users/neom/photos",
          likes: "https://api.unsplash.com/users/neom/likes",
          portfolio: "https://api.unsplash.com/users/neom/portfolio",
          following: "https://api.unsplash.com/users/neom/following",
          followers: "https://api.unsplash.com/users/neom/followers"
        },
        profile_image: {
          small: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
          medium: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
          large: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
        },
        instagram_username: "discoverneom",
        total_collections: 7,
        total_likes: 1,
        total_photos: 222,
        total_promoted_photos: 72,
        accepted_tos: !0,
        for_hire: !1,
        social: {
          instagram_username: "discoverneom",
          portfolio_url: "http://www.neom.com",
          twitter_username: "neom",
          paypal_email: null
        }
      }
    },
    topic_submissions: {},
    user: {
      id: "mYizSrdJkkU",
      updated_at: "2024-03-11T08:54:08Z",
      username: "neom",
      name: "NEOM",
      first_name: "NEOM",
      last_name: null,
      twitter_username: "neom",
      portfolio_url: "http://www.neom.com",
      bio: "Located in the northwest of Saudi Arabia, NEOM’s diverse climate offers both sun-soaked beaches and snow-capped mountains. NEOM’s unique location will provide residents with enhanced livability while protecting 95% of the natural landscape.",
      location: "NEOM, Saudi Arabia",
      links: {
        self: "https://api.unsplash.com/users/neom",
        html: "https://unsplash.com/@neom",
        photos: "https://api.unsplash.com/users/neom/photos",
        likes: "https://api.unsplash.com/users/neom/likes",
        portfolio: "https://api.unsplash.com/users/neom/portfolio",
        following: "https://api.unsplash.com/users/neom/following",
        followers: "https://api.unsplash.com/users/neom/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1679489218992-ebe823c797dfimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "discoverneom",
      total_collections: 7,
      total_likes: 1,
      total_photos: 222,
      total_promoted_photos: 72,
      accepted_tos: !0,
      for_hire: !1,
      social: {
        instagram_username: "discoverneom",
        portfolio_url: "http://www.neom.com",
        twitter_username: "neom",
        paypal_email: null
      }
    }
  },
  {
    id: "jSjHcyHFOdQ",
    slug: "a-picture-of-a-green-plant-in-a-dark-room-jSjHcyHFOdQ",
    alternative_slugs: {
      en: "a-picture-of-a-green-plant-in-a-dark-room-jSjHcyHFOdQ"
    },
    created_at: "2024-02-08T15:36:25Z",
    updated_at: "2024-03-11T06:46:46Z",
    promoted_at: "2024-03-11T06:46:46Z",
    width: 8400,
    height: 5600,
    color: "#0c260c",
    blur_hash: "L44CLsVuD7pF.Po2R7R*-.oyX5My",
    description: null,
    alt_description: "a picture of a green plant in a dark room",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1707406543260-ed14bbd0d086?ixid=M3wxMTc3M3wwfDF8YWxsfDI3fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1707406543260-ed14bbd0d086?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI3fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1707406543260-ed14bbd0d086?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI3fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1707406543260-ed14bbd0d086?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI3fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1707406543260-ed14bbd0d086?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI3fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1707406543260-ed14bbd0d086"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-picture-of-a-green-plant-in-a-dark-room-jSjHcyHFOdQ",
      html: "https://unsplash.com/photos/a-picture-of-a-green-plant-in-a-dark-room-jSjHcyHFOdQ",
      download: "https://unsplash.com/photos/jSjHcyHFOdQ/download?ixid=M3wxMTc3M3wwfDF8YWxsfDI3fHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/jSjHcyHFOdQ/download?ixid=M3wxMTc3M3wwfDF8YWxsfDI3fHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 14,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {},
    user: {
      id: "ogQykx6hk_c",
      updated_at: "2024-03-11T06:46:46Z",
      username: "pawel_czerwinski",
      name: "Pawel Czerwinski",
      first_name: "Pawel",
      last_name: "Czerwinski",
      twitter_username: "pm_cze",
      portfolio_url: "http://paypal.me/pmcze",
      bio: "Questions about how you can use the photos? help.unsplash.com/en/collections/1463188-unsplash-license 👍",
      location: "Poland",
      links: {
        self: "https://api.unsplash.com/users/pawel_czerwinski",
        html: "https://unsplash.com/@pawel_czerwinski",
        photos: "https://api.unsplash.com/users/pawel_czerwinski/photos",
        likes: "https://api.unsplash.com/users/pawel_czerwinski/likes",
        portfolio: "https://api.unsplash.com/users/pawel_czerwinski/portfolio",
        following: "https://api.unsplash.com/users/pawel_czerwinski/following",
        followers: "https://api.unsplash.com/users/pawel_czerwinski/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1592328433409-d9ce8a5333eaimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1592328433409-d9ce8a5333eaimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1592328433409-d9ce8a5333eaimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "pmcze",
      total_collections: 7,
      total_likes: 39154,
      total_photos: 2137,
      total_promoted_photos: 1760,
      accepted_tos: !0,
      for_hire: !1,
      social: {
        instagram_username: "pmcze",
        portfolio_url: "http://paypal.me/pmcze",
        twitter_username: "pm_cze",
        paypal_email: null
      }
    }
  },
  {
    id: "OfGHUYX0CCg",
    slug: "a-body-of-water-that-has-some-waves-on-it-OfGHUYX0CCg",
    alternative_slugs: {
      en: "a-body-of-water-that-has-some-waves-on-it-OfGHUYX0CCg"
    },
    created_at: "2024-03-06T14:06:51Z",
    updated_at: "2024-03-11T08:56:52Z",
    promoted_at: "2024-03-11T06:45:54Z",
    width: 8192,
    height: 5460,
    color: "#260c0c",
    blur_hash: "LUF{kg=cj@fQ}XxFS3azxFfjS2WW",
    description: null,
    alt_description: "a body of water that has some waves on it",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1709733167477-25398ca709c0?ixid=M3wxMTc3M3wwfDF8YWxsfDI4fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1709733167477-25398ca709c0?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI4fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1709733167477-25398ca709c0?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI4fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1709733167477-25398ca709c0?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI4fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1709733167477-25398ca709c0?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI4fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1709733167477-25398ca709c0"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-body-of-water-that-has-some-waves-on-it-OfGHUYX0CCg",
      html: "https://unsplash.com/photos/a-body-of-water-that-has-some-waves-on-it-OfGHUYX0CCg",
      download: "https://unsplash.com/photos/OfGHUYX0CCg/download?ixid=M3wxMTc3M3wwfDF8YWxsfDI4fHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/OfGHUYX0CCg/download?ixid=M3wxMTc3M3wwfDF8YWxsfDI4fHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 16,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {
      "earth-hour": {
        status: "approved",
        approved_on: "2024-03-07T09:43:45Z"
      }
    },
    user: {
      id: "uFFemR6e1vs",
      updated_at: "2024-03-11T06:48:56Z",
      username: "marcospradobr",
      name: "Marcos Paulo Prado",
      first_name: "Marcos Paulo",
      last_name: "Prado",
      twitter_username: null,
      portfolio_url: "https://www.instagram.com/eusoumarcosprado",
      bio: "People and commercial photographer based in Rio de Janeiro, Brasil",
      location: "Rio de Janeiro, Brazil",
      links: {
        self: "https://api.unsplash.com/users/marcospradobr",
        html: "https://unsplash.com/@marcospradobr",
        photos: "https://api.unsplash.com/users/marcospradobr/photos",
        likes: "https://api.unsplash.com/users/marcospradobr/likes",
        portfolio: "https://api.unsplash.com/users/marcospradobr/portfolio",
        following: "https://api.unsplash.com/users/marcospradobr/following",
        followers: "https://api.unsplash.com/users/marcospradobr/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1572910425876-25d44d080554image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1572910425876-25d44d080554image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1572910425876-25d44d080554image?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "eusoumarcosprado",
      total_collections: 0,
      total_likes: 306,
      total_photos: 413,
      total_promoted_photos: 139,
      accepted_tos: !0,
      for_hire: !0,
      social: {
        instagram_username: "eusoumarcosprado",
        portfolio_url: "https://www.instagram.com/eusoumarcosprado",
        twitter_username: null,
        paypal_email: null
      }
    }
  },
  {
    id: "VKQpbzeWbrk",
    slug: "a-bouquet-of-orange-and-white-tulips-on-a-red-door-VKQpbzeWbrk",
    alternative_slugs: {
      en: "a-bouquet-of-orange-and-white-tulips-on-a-red-door-VKQpbzeWbrk"
    },
    created_at: "2024-03-09T21:24:04Z",
    updated_at: "2024-03-11T06:45:51Z",
    promoted_at: "2024-03-11T06:45:51Z",
    width: 2592,
    height: 3872,
    color: "#8c2626",
    blur_hash: "LFI2{Exr0gE}Dlo|=_W-5RE3O=xH",
    description: null,
    alt_description: "a bouquet of orange and white tulips on a red door",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1710018337941-58197591d55a?ixid=M3wxMTc3M3wwfDF8YWxsfDI5fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1710018337941-58197591d55a?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI5fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1710018337941-58197591d55a?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI5fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1710018337941-58197591d55a?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI5fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1710018337941-58197591d55a?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDI5fHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1710018337941-58197591d55a"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-bouquet-of-orange-and-white-tulips-on-a-red-door-VKQpbzeWbrk",
      html: "https://unsplash.com/photos/a-bouquet-of-orange-and-white-tulips-on-a-red-door-VKQpbzeWbrk",
      download: "https://unsplash.com/photos/VKQpbzeWbrk/download?ixid=M3wxMTc3M3wwfDF8YWxsfDI5fHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/VKQpbzeWbrk/download?ixid=M3wxMTc3M3wwfDF8YWxsfDI5fHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 3,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {},
    user: {
      id: "H8-Yyg-eX4A",
      updated_at: "2024-03-11T06:48:56Z",
      username: "jaelphotos",
      name: "Jael Coon",
      first_name: "Jael",
      last_name: "Coon",
      twitter_username: null,
      portfolio_url: "https://linktr.ee/jaelcoon",
      bio: "Coffee drinker, photographer, artist and chef/baker",
      location: "USA",
      links: {
        self: "https://api.unsplash.com/users/jaelphotos",
        html: "https://unsplash.com/@jaelphotos",
        photos: "https://api.unsplash.com/users/jaelphotos/photos",
        likes: "https://api.unsplash.com/users/jaelphotos/likes",
        portfolio: "https://api.unsplash.com/users/jaelphotos/portfolio",
        following: "https://api.unsplash.com/users/jaelphotos/following",
        followers: "https://api.unsplash.com/users/jaelphotos/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1693432710439-47b22b3f6a9eimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1693432710439-47b22b3f6a9eimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1693432710439-47b22b3f6a9eimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "jaelcoon",
      total_collections: 51,
      total_likes: 0,
      total_photos: 230,
      total_promoted_photos: 3,
      accepted_tos: !0,
      for_hire: !1,
      social: {
        instagram_username: "jaelcoon",
        portfolio_url: "https://linktr.ee/jaelcoon",
        twitter_username: null,
        paypal_email: null
      }
    }
  },
  {
    id: "W6AqsLH6HOg",
    slug: "a-license-plate-on-the-back-of-a-car-W6AqsLH6HOg",
    alternative_slugs: {
      en: "a-license-plate-on-the-back-of-a-car-W6AqsLH6HOg"
    },
    created_at: "2024-03-06T06:59:15Z",
    updated_at: "2024-03-11T06:45:45Z",
    promoted_at: "2024-03-11T06:45:45Z",
    width: 6e3,
    height: 4e3,
    color: "#595959",
    blur_hash: "LYE_]gO?}qOsW--Ux]$%RPoeX9oz",
    description: null,
    alt_description: "a license plate on the back of a car",
    breadcrumbs: [],
    urls: {
      raw: "https://images.unsplash.com/photo-1709708210553-490ba885fcf6?ixid=M3wxMTc3M3wwfDF8YWxsfDMwfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3",
      full: "https://images.unsplash.com/photo-1709708210553-490ba885fcf6?crop=entropy&cs=srgb&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDMwfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=85",
      regular: "https://images.unsplash.com/photo-1709708210553-490ba885fcf6?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDMwfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=1080",
      small: "https://images.unsplash.com/photo-1709708210553-490ba885fcf6?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDMwfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=400",
      thumb: "https://images.unsplash.com/photo-1709708210553-490ba885fcf6?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8YWxsfDMwfHx8fHx8Mnx8MTcxMDE1MzIwNXw&ixlib=rb-4.0.3&q=80&w=200",
      small_s3: "https://s3.us-west-2.amazonaws.com/images.unsplash.com/small/photo-1709708210553-490ba885fcf6"
    },
    links: {
      self: "https://api.unsplash.com/photos/a-license-plate-on-the-back-of-a-car-W6AqsLH6HOg",
      html: "https://unsplash.com/photos/a-license-plate-on-the-back-of-a-car-W6AqsLH6HOg",
      download: "https://unsplash.com/photos/W6AqsLH6HOg/download?ixid=M3wxMTc3M3wwfDF8YWxsfDMwfHx8fHx8Mnx8MTcxMDE1MzIwNXw",
      download_location: "https://api.unsplash.com/photos/W6AqsLH6HOg/download?ixid=M3wxMTc3M3wwfDF8YWxsfDMwfHx8fHx8Mnx8MTcxMDE1MzIwNXw"
    },
    likes: 3,
    liked_by_user: !1,
    current_user_collections: [],
    sponsorship: null,
    topic_submissions: {},
    user: {
      id: "VNV70zPYNto",
      updated_at: "2024-03-11T06:48:56Z",
      username: "venajeborec",
      name: "Václav Pechar",
      first_name: "Václav",
      last_name: "Pechar",
      twitter_username: null,
      portfolio_url: null,
      bio: `Photographer from South Bohemia ✌🏻\r
Be free to contact me to book a shoot 🙏🏻`,
      location: "Czech Republic - Písek",
      links: {
        self: "https://api.unsplash.com/users/venajeborec",
        html: "https://unsplash.com/@venajeborec",
        photos: "https://api.unsplash.com/users/venajeborec/photos",
        likes: "https://api.unsplash.com/users/venajeborec/likes",
        portfolio: "https://api.unsplash.com/users/venajeborec/portfolio",
        following: "https://api.unsplash.com/users/venajeborec/following",
        followers: "https://api.unsplash.com/users/venajeborec/followers"
      },
      profile_image: {
        small: "https://images.unsplash.com/profile-1687031143105-2420498da92eimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=32&h=32",
        medium: "https://images.unsplash.com/profile-1687031143105-2420498da92eimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=64&h=64",
        large: "https://images.unsplash.com/profile-1687031143105-2420498da92eimage?ixlib=rb-4.0.3&crop=faces&fit=crop&w=128&h=128"
      },
      instagram_username: "amazingvena",
      total_collections: 0,
      total_likes: 7,
      total_photos: 324,
      total_promoted_photos: 30,
      accepted_tos: !0,
      for_hire: !0,
      social: {
        instagram_username: "amazingvena",
        portfolio_url: null,
        twitter_username: null,
        paypal_email: null
      }
    }
  }
], K6 = V6;
class _6 {
  constructor() {
    bt(this, "photos", K6), bt(this, "PAGINATION", {}), bt(this, "REQUEST_IS_RUNNING", !1), bt(this, "SEARCH_IS_RUNNING", !1), bt(this, "LAST_REQUEST_URL", ""), bt(this, "ERROR", null), bt(this, "IS_LOADING", !1), bt(this, "currentPage", 1);
  }
  async fetchPhotos() {
    this.IS_LOADING = !0;
    const n = (this.currentPage - 1) * 30, r = this.currentPage * 30;
    return this.currentPage += 1, this.IS_LOADING = !1, this.photos.slice(n, r);
  }
  async fetchNextPage() {
    if (this.REQUEST_IS_RUNNING || this.SEARCH_IS_RUNNING)
      return null;
    const n = await this.fetchPhotos();
    return n.length > 0 ? n : null;
  }
  async searchPhotos(n) {
    this.SEARCH_IS_RUNNING = !0;
    const r = this.photos.filter(
      (o) => o.description && o.description.toLowerCase().includes(n.toLowerCase()) || o.alt_description && o.alt_description.toLowerCase().includes(n.toLowerCase())
    );
    return this.SEARCH_IS_RUNNING = !1, r;
  }
  searchIsRunning() {
    return this.SEARCH_IS_RUNNING;
  }
  triggerDownload(n) {
  }
}
class $6 {
  constructor(n) {
    bt(this, "_provider"), this._provider = n;
  }
  async fetchPhotos() {
    return await this._provider.fetchPhotos();
  }
  async searchPhotos(n) {
    return await this._provider.searchPhotos(n);
  }
  async triggerDownload(n) {
    this._provider.triggerDownload(n);
  }
  async fetchNextPage() {
    return await this._provider.fetchNextPage() || null;
  }
  searchIsRunning() {
    return this._provider.searchIsRunning();
  }
}
class e5 {
  constructor(n) {
    bt(this, "API_URL", "https://api.unsplash.com"), bt(this, "HEADERS"), bt(this, "ERROR", null), bt(this, "PAGINATION", {}), bt(this, "REQUEST_IS_RUNNING", !1), bt(this, "SEARCH_IS_RUNNING", !1), bt(this, "LAST_REQUEST_URL", ""), bt(this, "IS_LOADING", !1), this.HEADERS = n;
  }
  async makeRequest(n) {
    if (this.REQUEST_IS_RUNNING)
      return null;
    this.LAST_REQUEST_URL = n;
    const r = {
      method: "GET",
      headers: this.HEADERS
    };
    try {
      this.REQUEST_IS_RUNNING = !0, this.IS_LOADING = !0;
      const o = await fetch(n, r), l = await this.checkStatus(o);
      this.extractPagination(l);
      const c = await l.json();
      return "results" in c ? c.results : c;
    } catch (o) {
      return this.ERROR = o, null;
    } finally {
      this.REQUEST_IS_RUNNING = !1, this.IS_LOADING = !1;
    }
  }
  extractPagination(n) {
    let r = new RegExp('<(.*)>; rel="(.*)"'), o = [], l = {};
    for (let c of n.headers.entries())
      c[0] === "link" && o.push(c[1]);
    return o && o.toString().split(",").forEach((c) => {
      if (c) {
        let v = r.exec(c);
        v && (l[v[2]] = v[1]);
      }
    }), this.PAGINATION = l, n;
  }
  async fetchPhotos() {
    const n = `${this.API_URL}/photos?per_page=30`;
    return await this.makeRequest(n);
  }
  async fetchNextPage() {
    if (this.REQUEST_IS_RUNNING || this.SEARCH_IS_RUNNING)
      return null;
    if (this.PAGINATION.next) {
      const n = `${this.PAGINATION.next}`, r = await this.makeRequest(n);
      if (r)
        return r;
    }
    return null;
  }
  async searchPhotos(n) {
    const r = `${this.API_URL}/search/photos?query=${n}&per_page=30`;
    return await this.makeRequest(r) || [];
  }
  async triggerDownload(n) {
    n.links.download_location && await this.makeRequest(n.links.download_location);
  }
  async checkStatus(n) {
    if (n.status >= 200 && n.status < 300)
      return n;
    let r = "", o;
    const l = n.headers.get("content-type");
    if (l === "application/json")
      o = n.json().then((c) => c.errors[0]);
    else if (l === "text/xml")
      o = n.text();
    else
      throw new Error("Unsupported content type");
    return o.then((c) => {
      throw n.status === 403 && n.headers.get("x-ratelimit-remaining") === "0" && (r = "Unsplash API rate limit reached, please try again later."), r = r || c || `Error ${n.status}: Uh-oh! Trouble reaching the Unsplash API`, this.ERROR = r, new Error(r);
    });
  }
  searchIsRunning() {
    return this.SEARCH_IS_RUNNING;
  }
}
class t5 {
  constructor(n, r) {
    bt(this, "photoUseCases"), bt(this, "masonryService"), bt(this, "photos", []), this.photoUseCases = n, this.masonryService = r;
  }
  async loadNew() {
    let n = await this.photoUseCases.fetchPhotos();
    this.photos = n, await this.layoutPhotos();
  }
  async layoutPhotos() {
    this.masonryService.reset(), this.photos && this.photos.forEach((n) => {
      n.ratio = n.height / n.width, this.masonryService.addPhotoToColumns(n);
    });
  }
  getColumns() {
    return this.masonryService.getColumns();
  }
  async updateSearch(n) {
    let r = await this.photoUseCases.searchPhotos(n);
    this.photos = r, this.layoutPhotos();
  }
  async loadNextPage() {
    const n = await this.photoUseCases.fetchNextPage() || [];
    this.photos = [...this.photos, ...n], this.layoutPhotos();
  }
  clearPhotos() {
    this.photos = [];
  }
  triggerDownload(n) {
    this.photoUseCases.triggerDownload(n);
  }
  searchIsRunning() {
    return this.photoUseCases.searchIsRunning();
  }
}
const n5 = ({ onClose: e, onImageInsert: n, unsplashProviderConfig: r }) => {
  const o = Gn(() => r ? new e5(r) : new _6(), [r]), l = Gn(() => new $6(o), [o]), c = Gn(() => new R6(3), []), v = Gn(() => new t5(l, c), [l, c]), w = tt(null), [A, h] = se(0), [f, b] = se(0), [x, g] = se(v.searchIsRunning() || !0), y = tt(!1), [k, D] = se(""), [C, S] = se(null), [G, Q] = se([]);
  _e.useEffect(() => {
    w.current && C === null && f !== 0 && (w.current.scrollTop = f, b(0));
  }, [C, A, f]), _e.useEffect(() => {
    const R = (z) => {
      z.key === "Escape" && e();
    };
    return window.addEventListener("keydown", R), () => {
      window.removeEventListener("keydown", R);
    };
  }, [e]), _e.useEffect(() => {
    const R = w.current;
    if (!C)
      return R && R.addEventListener("scroll", () => {
        h(R.scrollTop);
      }), () => {
        R && R.removeEventListener("scroll", () => {
          h(R.scrollTop);
        });
      };
  }, [w, C]);
  const W = _e.useCallback(async () => {
    if (y.current === !1 || k.length === 0) {
      Q([]), v.clearPhotos(), await v.loadNew();
      const R = v.getColumns();
      Q(R || []), w.current && w.current.scrollTop !== 0 && (w.current.scrollTop = 0), g(!1);
    }
  }, [v, k]), J = async (R) => {
    const z = R.target.value;
    z.length > 2 && (S(null), D(z)), z.length === 0 && (D(""), y.current = !1, await W());
  }, Y = _e.useCallback(async () => {
    if (k) {
      g(!0), Q([]), v.clearPhotos(), await v.updateSearch(k);
      const R = v.getColumns();
      R && Q(R), w.current && w.current.scrollTop !== 0 && (w.current.scrollTop = 0), g(!1);
    }
  }, [k, v]);
  _e.useEffect(() => {
    const R = setTimeout(async () => {
      k.length > 2 ? await Y() : await W();
    }, 300);
    return () => {
      y.current = !0, clearTimeout(R);
    };
  }, [k, Y, W]);
  const B = _e.useCallback(async () => {
    g(!0), await v.loadNextPage();
    const R = v.getColumns();
    Q(R || []), g(!1);
  }, [v]);
  _e.useEffect(() => {
    const R = w.current;
    if (R) {
      const z = async () => {
        C === null && R.scrollTop + R.clientHeight >= R.scrollHeight - 1e3 && await B();
      };
      return R.addEventListener("scroll", z), () => {
        R.removeEventListener("scroll", z);
      };
    }
  }, [w, B, C]);
  const U = (R) => {
    R && (S(R), b(A)), R === null && (S(null), w.current && (w.current.scrollTop = f));
  };
  async function te(R) {
    R.src && (v.triggerDownload(R), n(R));
  }
  return /* @__PURE__ */ Oe.jsx(
    W6,
    {
      closeModal: e,
      handleSearch: J,
      children: /* @__PURE__ */ Oe.jsx(
        Y6,
        {
          dataset: G,
          error: null,
          galleryRef: w,
          insertImage: te,
          isLoading: x,
          selectImg: U,
          zoomed: C
        }
      )
    }
  );
}, r5 = ({ unsplashProviderConfig: e, onClose: n, onImageInsert: r }) => /* @__PURE__ */ a.jsx(O6, { classNames: "admin-x-settings", children: /* @__PURE__ */ a.jsx(
  n5,
  {
    unsplashProviderConfig: e,
    onClose: n,
    onImageInsert: r
  }
) }), sa = {
  heading: [
    { name: "Cardo", creator: "David Perry" },
    { name: "Chakra Petch", creator: "Cadson Demak" },
    { name: "Fira Mono", creator: "Carrois Apostrophe" },
    { name: "Fira Sans", creator: "Carrois Apostrophe" },
    { name: "IBM Plex Serif", creator: "Mike Abbink" },
    { name: "Inter", creator: "Rasmus Andersson" },
    { name: "JetBrains Mono", creator: "JetBrains" },
    { name: "Libre Baskerville", creator: "Impallari Type" },
    { name: "Lora", creator: "Cyreal" },
    { name: "Manrope", creator: "Mikhail Sharanda" },
    { name: "Merriweather", creator: "Sorkin Type" },
    { name: "Noto Sans", creator: "Google" },
    { name: "Noto Serif", creator: "Google" },
    { name: "Nunito", creator: "Vernon Adams" },
    { name: "Old Standard TT", creator: "Alexey Kryukov" },
    { name: "Poppins", creator: "Indian Type Foundry" },
    { name: "Roboto", creator: "Christian Robertson" },
    { name: "Rufina", creator: "Martin Sommaruga" },
    { name: "Space Grotesk", creator: "Florian Karsten" },
    { name: "Space Mono", creator: "Colophon Foundry" },
    { name: "Tenor Sans", creator: "Denis Masharov" }
  ],
  body: [
    { name: "Fira Mono", creator: "Carrois Apostrophe" },
    { name: "Fira Sans", creator: "Carrois Apostrophe" },
    { name: "IBM Plex Serif", creator: "Mike Abbink" },
    { name: "Inter", creator: "Rasmus Andersson" },
    { name: "JetBrains Mono", creator: "JetBrains" },
    { name: "Lora", creator: "Cyreal" },
    { name: "Manrope", creator: "Mikhail Sharanda" },
    { name: "Merriweather", creator: "Sorkin Type" },
    { name: "Noto Sans", creator: "Google" },
    { name: "Noto Serif", creator: "Google" },
    { name: "Nunito", creator: "Vernon Adams" },
    { name: "Poppins", creator: "Indian Type Foundry" },
    { name: "Roboto", creator: "Christian Robertson" },
    { name: "Space Mono", creator: "Colophon Foundry" }
  ]
}, Fn = "Theme default", rh = ({ children: e, ...n }) => /* @__PURE__ */ a.jsx(Hh.SingleValue, { ...n, children: /* @__PURE__ */ a.jsx("div", { className: "group", "data-testid": "select-current-option", "data-value": n.data.value, children: /* @__PURE__ */ a.jsxs("div", { className: "flex items-center gap-3", children: [
  /* @__PURE__ */ a.jsx("div", { className: "flex size-12 items-center justify-center rounded-md bg-white text-2xl font-bold dark:bg-black", children: "Aa" }),
  /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col", children: [
    /* @__PURE__ */ a.jsx("span", { className: "text-md", children: e }),
    /* @__PURE__ */ a.jsx("span", { className: "font-sans text-xs font-normal text-grey-700 dark:text-grey-600", children: n.data.creator })
  ] })
] }) }) }), sh = ({ children: e, ...n }) => /* @__PURE__ */ a.jsx(Hh.Option, { ...n, children: /* @__PURE__ */ a.jsxs("div", { className: n.isSelected ? "relative flex w-full items-center justify-between gap-2" : "group", "data-testid": "select-option", "data-value": n.data.value, children: [
  /* @__PURE__ */ a.jsxs("div", { className: "flex items-center gap-3", children: [
    /* @__PURE__ */ a.jsx("div", { className: "dark:group-hover:bg-grey-800 flex size-12 items-center justify-center rounded-md bg-grey-150 text-2xl font-bold group-hover:bg-grey-250 dark:bg-grey-900", children: "Aa" }),
    /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col", children: [
      /* @__PURE__ */ a.jsx("span", { className: "text-md", children: e }),
      /* @__PURE__ */ a.jsx("span", { className: "font-sans text-xs font-normal text-grey-700 dark:text-grey-600", children: n.data.creator })
    ] })
  ] }),
  n.isSelected && /* @__PURE__ */ a.jsx("span", { children: /* @__PURE__ */ a.jsx(Mt, { name: "check", size: 14 }) })
] }) }), s5 = (e) => e.split(" ").map((n) => n.charAt(0).toUpperCase() + n.slice(1)).join(" "), ah = ({ values: e, updateSetting: n }) => {
  var Y;
  const { mutateAsync: r } = pa(), { settings: o } = Ve(), [l] = ht(o, ["unsplash"]), [c, v] = se(!1), { unsplashConfig: w } = Bb(), A = rt(), h = zh(), { data: f } = ru(), b = f == null ? void 0 : f.themes.find((B) => B.active), x = b ? `${s5(b.name)} (v${((Y = b.package) == null ? void 0 : Y.version) || "1.0"})` : "Loading...", [g, y] = se(sa.heading.find((B) => B.name === e.headingFont) || { name: Fn, creator: x }), [k, D] = se(sa.heading.find((B) => B.name === e.bodyFont) || { name: Fn, creator: x }), C = (B, U = !0) => {
    let te = "";
    return B === "Cardo" ? te = me("font-cardo", U && "font-bold") : B === "Manrope" ? te = me("font-manrope", U && "font-bold") : B === "Merriweather" ? te = me("font-merriweather", U && "font-bold") : B === "Nunito" ? te = me("font-nunito", U && "font-semibold") : B === "Old Standard TT" ? te = me("font-old-standard-tt", U && "font-bold") : B === "Prata" ? te = me("font-prata", U && "font-normal") : B === "Roboto" ? te = me("font-roboto", U && "font-bold") : B === "Rufina" ? te = me("font-rufina", U && "font-bold") : B === "Tenor Sans" ? te = me("font-tenor-sans", U && "font-normal") : B === "Chakra Petch" ? te = me("font-chakra-petch", U && "font-normal") : B === "Fira Mono" ? te = me("font-fira-mono", U && "font-bold") : B === "Fira Sans" ? te = me("font-fira-sans", U && "font-bold") : B === "IBM Plex Serif" ? te = me("font-ibm-plex-serif", U && "font-bold") : B === "Inter" ? te = me("font-inter", U && "font-bold") : B === "JetBrains Mono" ? te = me("font-jetbrains-mono", U && "font-bold") : B === "Lora" ? te = me("font-lora", U && "font-bold") : B === "Noto Sans" ? te = me("font-noto-sans", U && "font-bold") : B === "Noto Serif" ? te = me("font-noto-serif", U && "font-bold") : B === "Poppins" ? te = me("font-poppins", U && "font-bold") : B === "Space Grotesk" ? te = me("font-space-grotesk", U && "font-bold") : B === "Space Mono" && (te = me("font-space-mono", U && "font-bold")), te;
  }, S = sa.heading.map((B) => {
    let U = C(B.name, !0);
    return { label: B.name, value: B.name, creator: B.creator, className: U };
  });
  S.unshift({ label: Fn, value: Fn, creator: x, className: "font-sans font-normal" });
  const G = sa.body.map((B) => {
    let U = C(B.name, !1);
    return { label: B.name, value: B.name, creator: B.creator, className: U };
  });
  G.unshift({ label: Fn, value: Fn, creator: x, className: "font-sans font-normal" });
  const Q = (B, U) => B === Fn ? "" : C(B, U), W = { label: g.name, value: g.name, creator: g.creator }, J = { label: k.name, value: k.name, creator: k.creator };
  return /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
    /* @__PURE__ */ a.jsxs(Ke, { className: "mt-6", gap: "sm", margins: "lg", title: "", children: [
      /* @__PURE__ */ a.jsx(
        er,
        {
          debounceMs: 200,
          direction: "rtl",
          testId: "accent-color-picker",
          title: /* @__PURE__ */ a.jsx("div", { children: "Accent color" }),
          value: e.accentColor,
          onChange: (B) => n("accent_color", B)
        }
      ),
      /* @__PURE__ */ a.jsxs("div", { className: "flex items-start justify-between", children: [
        /* @__PURE__ */ a.jsxs("div", { children: [
          /* @__PURE__ */ a.jsx("div", { children: "Publication icon" }),
          /* @__PURE__ */ a.jsx(nr, { className: "!mt-0 mr-5 max-w-[160px]", children: "A square, social icon, at least 60x60px" })
        ] }),
        /* @__PURE__ */ a.jsx("div", { className: "flex gap-3", children: /* @__PURE__ */ a.jsx(
          wr,
          {
            deleteButtonClassName: "!top-1 !right-1",
            editButtonClassName: "!top-1 !right-1",
            height: e.icon ? "66px" : "36px",
            id: "logo",
            imageBWCheckedBg: !0,
            imageURL: e.icon || "",
            width: e.icon ? "66px" : "160px",
            onDelete: () => n("icon", null),
            onUpload: async (B) => {
              try {
                n("icon", gr(await r({ file: B })));
              } catch (U) {
                const te = U;
                te.response.status === 415 && (te.message = "Unsupported file type"), A(te);
              }
            },
            children: "Upload icon"
          }
        ) })
      ] }),
      /* @__PURE__ */ a.jsxs("div", { className: `flex items-start justify-between ${e.icon && "mt-2"}`, children: [
        /* @__PURE__ */ a.jsxs("div", { children: [
          /* @__PURE__ */ a.jsx("div", { children: "Publication logo" }),
          /* @__PURE__ */ a.jsx(nr, { className: "!mt-0 mr-5 max-w-[160px]", children: "Appears usually in the main header of your theme" })
        ] }),
        /* @__PURE__ */ a.jsx("div", { children: /* @__PURE__ */ a.jsx(
          wr,
          {
            deleteButtonClassName: "!top-1 !right-1",
            height: "60px",
            id: "site-logo",
            imageBWCheckedBg: !0,
            imageFit: "contain",
            imageURL: e.logo || "",
            width: "160px",
            onDelete: () => n("logo", null),
            onUpload: async (B) => {
              try {
                n("logo", gr(await r({ file: B })));
              } catch (U) {
                const te = U;
                te.response.status === 415 && (te.message = "Unsupported file type"), A(te);
              }
            },
            children: "Upload logo"
          }
        ) })
      ] }),
      /* @__PURE__ */ a.jsxs("div", { className: "mt-2 flex items-start justify-between", children: [
        /* @__PURE__ */ a.jsxs("div", { children: [
          /* @__PURE__ */ a.jsx("div", { children: "Publication cover" }),
          /* @__PURE__ */ a.jsx(nr, { className: "!mt-0 mr-5 max-w-[160px]", children: "Usually as a large banner image on your index pages" })
        ] }),
        /* @__PURE__ */ a.jsx(
          wr,
          {
            deleteButtonClassName: "!top-1 !right-1",
            editButtonClassName: "!top-1 !right-10",
            height: "95px",
            id: "cover",
            imageURL: e.coverImage || "",
            openUnsplash: () => v(!0),
            pintura: {
              isEnabled: h.isEnabled,
              openEditor: async () => h.openEditor({
                image: e.coverImage || "",
                handleSave: async (B) => {
                  try {
                    n("cover_image", gr(await r({ file: B })));
                  } catch (U) {
                    A(U);
                  }
                }
              })
            },
            unsplashButtonClassName: "!bg-transparent !h-6 !top-1.5 !w-6 !right-1.5 z-50",
            unsplashEnabled: l,
            width: "160px",
            onDelete: () => n("cover_image", null),
            onUpload: async (B) => {
              try {
                n("cover_image", gr(await r({ file: B })));
              } catch (U) {
                const te = U;
                te.response.status === 415 && (te.message = "Unsupported file type"), A(te);
              }
            },
            children: "Upload cover"
          }
        ),
        c && w && l && /* @__PURE__ */ a.jsx(
          r5,
          {
            unsplashProviderConfig: w,
            onClose: () => {
              v(!1);
            },
            onImageInsert: (B) => {
              B.src && n("cover_image", B.src), v(!1);
            }
          }
        )
      ] })
    ] }),
    /* @__PURE__ */ a.jsxs(Ke, { className: "-mt-4", gap: "sm", margins: "lg", title: "Typography", children: [
      /* @__PURE__ */ a.jsx(
        Lt,
        {
          className: Q(W.label, !0),
          components: { Option: sh, SingleValue: rh },
          controlClasses: { control: "!min-h-16 !pl-2", option: "!pl-2" },
          hint: "",
          menuShouldScrollIntoView: !0,
          options: S,
          selectedOption: W,
          testId: "heading-font-select",
          title: "Heading font",
          onSelect: (B) => {
            var U;
            (B == null ? void 0 : B.value) === Fn ? (y({ name: Fn, creator: x }), n("heading_font", "")) : (y({ name: (B == null ? void 0 : B.value) || "", creator: ((U = sa.heading.find((te) => te.name === (B == null ? void 0 : B.value))) == null ? void 0 : U.creator) || "" }), n("heading_font", (B == null ? void 0 : B.value) || ""));
          }
        }
      ),
      /* @__PURE__ */ a.jsx(
        Lt,
        {
          className: Q(J.label, !1),
          components: { Option: sh, SingleValue: rh },
          controlClasses: { control: "!min-h-16 !pl-2", option: "!pl-2" },
          hint: "",
          maxMenuHeight: 200,
          menuPosition: "fixed",
          menuShouldScrollIntoView: !0,
          options: G,
          selectedOption: J,
          testId: "body-font-select",
          title: "Body font",
          onSelect: (B) => {
            var U;
            (B == null ? void 0 : B.value) === Fn ? (D({ name: Fn, creator: x }), n("body_font", "")) : (D({ name: (B == null ? void 0 : B.value) || "", creator: ((U = sa.body.find((te) => te.name === (B == null ? void 0 : B.value))) == null ? void 0 : U.creator) || "" }), n("body_font", (B == null ? void 0 : B.value) || ""));
          }
        }
      )
    ] })
  ] });
};
var bu = { exports: {} }, nm = { exports: {} };
(function(e, n) {
  //! mingo.js 2.5.3
  //! Copyright (c) 2020 Francis Asante
  //! MIT
  (function(r, o) {
    e.exports = o();
  })(oa, function() {
    function r(u) {
      "@babel/helpers - typeof";
      return typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? r = function(d) {
        return typeof d;
      } : r = function(d) {
        return d && typeof Symbol == "function" && d.constructor === Symbol && d !== Symbol.prototype ? "symbol" : typeof d;
      }, r(u);
    }
    function o(u, d) {
      if (!(u instanceof d))
        throw new TypeError("Cannot call a class as a function");
    }
    function l(u, d) {
      for (var p = 0; p < d.length; p++) {
        var M = d[p];
        M.enumerable = M.enumerable || !1, M.configurable = !0, "value" in M && (M.writable = !0), Object.defineProperty(u, M.key, M);
      }
    }
    function c(u, d, p) {
      return d && l(u.prototype, d), u;
    }
    function v(u, d) {
      return w(u) || A(u, d) || h(u, d) || b();
    }
    function w(u) {
      if (Array.isArray(u)) return u;
    }
    function A(u, d) {
      if (!(typeof Symbol > "u" || !(Symbol.iterator in Object(u)))) {
        var p = [], M = !0, N = !1, O = void 0;
        try {
          for (var q = u[Symbol.iterator](), Z; !(M = (Z = q.next()).done) && (p.push(Z.value), !(d && p.length === d)); M = !0)
            ;
        } catch (ce) {
          N = !0, O = ce;
        } finally {
          try {
            !M && q.return != null && q.return();
          } finally {
            if (N) throw O;
          }
        }
        return p;
      }
    }
    function h(u, d) {
      if (u) {
        if (typeof u == "string") return f(u, d);
        var p = Object.prototype.toString.call(u).slice(8, -1);
        if (p === "Object" && u.constructor && (p = u.constructor.name), p === "Map" || p === "Set") return Array.from(p);
        if (p === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(p)) return f(u, d);
      }
    }
    function f(u, d) {
      (d == null || d > u.length) && (d = u.length);
      for (var p = 0, M = new Array(d); p < d; p++) M[p] = u[p];
      return M;
    }
    function b() {
      throw new TypeError(`Invalid attempt to destructure non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
    }
    var x = "null", g = "undefined", y = "bool", k = "boolean", D = "number", C = "string", S = "date", G = "regex", Q = "regexp", W = "array", J = "object", Y = "function", B = [x, g, k, D, C, S, Q], U = "expression", te = "group", R = "pipeline", z = "projection", $ = "query", K = function() {
    };
    Array.prototype.includes || Object.defineProperty(Array.prototype, "includes", {
      value: function(d, p) {
        if (this == null)
          throw new TypeError('"this" is null or not defined');
        var M = Object(this), N = M.length >>> 0;
        if (N === 0)
          return !1;
        var O = p | 0, q = Math.max(O >= 0 ? O : N - Math.abs(O), 0);
        function Z(ce, ie) {
          return ce === ie || typeof ce == "number" && typeof ie == "number" && isNaN(ce) && isNaN(ie);
        }
        for (; q < N; ) {
          if (Z(M[q], d))
            return !0;
          q++;
        }
        return !1;
      }
    });
    var ee = Array.prototype.push;
    function F(u, d) {
      u || ar(d);
    }
    function _(u) {
      switch (I(u)) {
        case W:
          return u.map(_);
        case J:
          return kr(u, _);
        default:
          return u;
      }
    }
    function fe(u) {
      switch (I(u)) {
        case W:
          return _t([], u);
        case J:
          return Object.assign({}, u);
        default:
          return u;
      }
    }
    function xe(u) {
      return u === null ? "Null" : u === void 0 ? "Undefined" : u.constructor.name;
    }
    function I(u) {
      return xe(u).toLowerCase();
    }
    function de(u) {
      return I(u) === k;
    }
    function be(u) {
      return I(u) === C;
    }
    function he(u) {
      return I(u) === D;
    }
    var ue = Array.isArray || function(u) {
      return !!u && u.constructor === Array;
    };
    function De(u) {
      return !!u && u.constructor === Object;
    }
    function ft(u) {
      return u === Object(u);
    }
    function Jt(u) {
      return I(u) === S;
    }
    function Qt(u) {
      return I(u) === Q;
    }
    function Ht(u) {
      return I(u) === Y;
    }
    function ne(u) {
      return u == null;
    }
    function Me(u) {
      return u === null;
    }
    function Ne(u) {
      return u === void 0;
    }
    function Ge(u, d) {
      return u.includes(d);
    }
    function pt(u, d) {
      return !Ge(u, d);
    }
    function Xt(u) {
      return !!u;
    }
    function xt(u) {
      return ne(u) || ue(u) && u.length === 0 || De(u) && Ue(u).length === 0 || !u;
    }
    function Ft(u) {
      return ue(u) ? u : [u];
    }
    function mt(u, d) {
      return u.hasOwnProperty(d);
    }
    function ar(u) {
      throw new Error(u);
    }
    var Ue = Object.keys;
    function Se(u, d, p) {
      if (d = d.bind(p), ue(u))
        for (var M = 0, N = u.length; M < N && d(u[M], M, u) !== !1; M++)
          ;
      else
        for (var O in u)
          if (u.hasOwnProperty(O) && d(u[O], O, u) === !1)
            break;
    }
    function kr(u, d, p) {
      d = d.bind(p);
      for (var M = {}, N = Ue(u), O = 0; O < N.length; O++) {
        var q = N[O];
        M[q] = d(u[q], q);
      }
      return M;
    }
    function Mr(u, d) {
      var p = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
      if (u === K) return d;
      if (d === K) return u;
      var M = [u, d];
      if (!(M.every(De) || M.every(ue)))
        throw Error("mismatched types. must both be array or object");
      if (p.flatten = p.flatten || !1, ue(u))
        if (p.flatten) {
          for (var N = 0, O = 0; N < u.length && O < d.length; )
            u[N] = Mr(u[N++], d[O++], p);
          for (; O < d.length; )
            u.push(d[O++]);
        } else
          ee.apply(u, d);
      else
        Object.keys(d).forEach(function(q) {
          u.hasOwnProperty(q) ? u[q] = Mr(u[q], d[q], p) : u[q] = d[q];
        });
      return u;
    }
    function qt(u, d, p) {
      return ue(u) ? u.reduce(d, p) : (Se(u, function(M, N) {
        return p = d(p, M, N, u);
      }), p);
    }
    function Sn(u, d) {
      var p = d.map(Nn);
      return u.filter(function(M) {
        return Ge(p, Nn(M));
      });
    }
    function TA(u, d) {
      return _t(_t([], u), d.filter(pt.bind(null, u)));
    }
    function jr(u) {
      var d = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : -1, p = [];
      function M(N, O) {
        for (var q = 0, Z = N.length; q < Z; q++)
          ue(N[q]) && (O > 0 || O < 0) ? M(N[q], Math.max(-1, O - 1)) : p.push(N[q]);
      }
      return M(u, d), p;
    }
    function Er(u, d) {
      if (d < 1) return u;
      for (; d-- && ue(u) && u.length === 1; )
        u = u[0];
      return u;
    }
    function Yn(u, d) {
      for (var p = [u], M = [d]; p.length > 0; )
        if (u = p.pop(), d = M.pop(), u !== d) {
          var N = I(u);
          if (N !== I(d) || N === Y) return !1;
          switch (N) {
            case W:
              if (u.length !== d.length) return !1;
              _t(p, u), _t(M, d);
              break;
            case J:
              var O = Ue(u), q = Ue(d);
              if (O.length !== q.length) return !1;
              O.sort(), q.sort();
              for (var Z = 0, ce = O.length; Z < ce; Z++) {
                var ie = O[Z];
                if (ie !== q[Z])
                  return !1;
                p.push(u[ie]), M.push(d[ie]);
              }
              break;
            default:
              if (Un(u) !== Un(d)) return !1;
          }
        }
      return p.length === 0;
    }
    function Vr(u) {
      var d = {}, p = [];
      return Se(u, function(M) {
        var N = Nn(M);
        mt(d, N) || (p.push(M), d[N] = 0);
      }), p;
    }
    function Un(u) {
      var d = I(u);
      switch (d) {
        case k:
        case D:
        case Q:
          return u.toString();
        case C:
          return JSON.stringify(u);
        case S:
          return u.toISOString();
        case x:
        case g:
          return d;
        case W:
          return "[" + u.map(Un) + "]";
        default:
          var p = d === J ? "" : "".concat(xe(u)), M = Ue(u);
          return M.sort(), "".concat(p, "{") + M.map(function(N) {
            return "".concat(Un(N), ":").concat(Un(u[N]));
          }) + "}";
      }
    }
    function Nn(u) {
      if (ne(u)) return null;
      for (var d = 0, p = Un(u), M = p.length; M; )
        d = (d << 5) - d ^ p.charCodeAt(--M);
      return d >>> 0;
    }
    function Kr(u, d) {
      return u < d ? -1 : u > d ? 1 : 0;
    }
    function js(u, d, p) {
      var M = [], N = [], O = {};
      if (p = p || Kr, xt(u)) return u;
      for (var q = 0; q < u.length; q++) {
        var Z = u[q], ce = d(Z, q);
        ne(ce) ? N.push(Z) : (O[ce] ? O[ce].push(Z) : O[ce] = [Z], M.push(ce));
      }
      M.sort(p);
      for (var ie = 0; ie < M.length; ie++)
        _t(N, O[M[ie]]);
      return N;
    }
    function Es(u, d) {
      var p = {
        keys: [],
        groups: []
      }, M = {};
      return Se(u, function(N) {
        var O = d(N), q = Nn(O), Z = -1;
        M[q] === void 0 && (Z = p.keys.length, M[q] = Z, p.keys.push(O), p.groups.push([])), Z = M[q], p.groups[Z].push(N);
      }), p;
    }
    function _t(u, d) {
      return ee.apply(u, d), u;
    }
    function wa(u, d) {
      for (var p = 0, M = u.length - 1; p <= M; ) {
        var N = Math.round(p + (M - p) / 2);
        if (d < u[N])
          M = N - 1;
        else if (d > u[N])
          p = N + 1;
        else
          return N;
      }
      return p;
    }
    function NA(u) {
      var d = this;
      return /* @__PURE__ */ function(p) {
        return function() {
          for (var M = arguments.length, N = new Array(M), O = 0; O < M; O++)
            N[O] = arguments[O];
          var q = Nn(N);
          return mt(p, q) || (p[q] = u.apply(d, N)), p[q];
        };
      }({
        /* storage */
      });
    }
    function ba(u, d) {
      return ft(u) ? u[d] : void 0;
    }
    function vn(u, d) {
      var p = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}, M = 0;
      p.meta = p.meta || !1;
      function N(O, q) {
        for (var Z = O, ce = 0; ce < q.length; ce++) {
          var ie = q[ce], Ee = ie.match(/^\d+$/) === null;
          if (Ee && ue(Z)) {
            if (ce === 0 && M > 0) break;
            M += 1, q = q.slice(ce), Z = qt(Z, function(ge, Je) {
              var Qe = N(Je, q);
              return Qe !== void 0 && ge.push(Qe), ge;
            }, []);
            break;
          } else
            Z = ba(Z, ie);
          if (Z === void 0) break;
        }
        return Z;
      }
      return u = Ge(B, I(u)) ? u : N(u, d.split(".")), p.meta ? {
        result: u,
        depth: M
      } : u;
    }
    function Dr(u, d) {
      var p = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
      p.preserveMissingValues = p.preserveMissingValues || !1;
      var M = d.split("."), N = M[0], O = M.length === 1 || M.slice(1).join("."), q = N.match(/^\d+$/) !== null, Z = M.length > 1, ce, ie;
      try {
        ue(u) ? q ? (ce = ba(u, Number(N)), Z && (ce = Dr(ce, O, p)), ce = [ce]) : (ce = [], Se(u, function(Ee) {
          ie = Dr(Ee, d, p), p.preserveMissingValues ? (ie === void 0 && (ie = K), ce.push(ie)) : ie !== void 0 && ce.push(ie);
        })) : (ie = ba(u, N), Z && (ie = Dr(ie, O, p)), F(ie !== void 0), ce = {}, ce[N] = ie);
      } catch {
        ce = void 0;
      }
      return ce;
    }
    function Ds(u) {
      if (ue(u))
        for (var d = u.length - 1; d >= 0; d--)
          u[d] === K ? u.splice(d, 1) : Ds(u[d]);
      else if (De(u))
        for (var p in u)
          u.hasOwnProperty(p) && Ds(u[p]);
      return u;
    }
    function va(u, d, p) {
      var M = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : !1, N = d.split("."), O = N[0], q = N.length === 1 || N.slice(1).join(".");
      N.length === 1 ? p(u, O) : (M === !0 && ne(u[O]) && (u[O] = {}), va(u[O], q, p, M));
    }
    function ya(u, d, p) {
      va(u, d, function(M, N) {
        M[N] = p;
      }, !0);
    }
    function ka(u, d) {
      va(u, d, function(p, M) {
        ue(p) && /^\d+$/.test(M) ? p.splice(parseInt(M), 1) : De(p) && delete p[M];
      });
    }
    function Ma(u) {
      return !!u && u[0] === "$";
    }
    function ja(u) {
      if (Ge(B, I(u)))
        return Qt(u) ? {
          $regex: u
        } : {
          $eq: u
        };
      if (ft(u)) {
        var d = Ue(u);
        if (!d.some(Ma))
          return {
            $eq: u
          };
        if (Ge(d, "$regex")) {
          var p = u.$regex, M = u.$options || "", N = "";
          be(p) && (N += p.ignoreCase || M.indexOf("i") >= 0 ? "i" : "", N += p.multiline || M.indexOf("m") >= 0 ? "m" : "", N += p.global || M.indexOf("g") >= 0 ? "g" : "", p = new RegExp(p, N)), u.$regex = p, delete u.$options;
        }
      }
      return u;
    }
    function Ea(u, d) {
      var p = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : null;
      return ne(p) ? d < 0 ? (d = Math.max(0, u.length + d), p = u.length - d + 1) : (p = d, d = 0) : (d < 0 && (d = Math.max(0, u.length + d)), F(p > 0, "Invalid argument value for $slice operator. Limit must be a positive number"), p += d), u.slice(d, p);
    }
    function No(u, d) {
      var p = qt(u, function(q, Z) {
        return q + Z;
      }, 0), M = u.length || 1, N = d && 1 || 0, O = p / M;
      return Math.sqrt(qt(u, function(q, Z) {
        return q + Math.pow(Z - O, 2);
      }, 0) / (M - N));
    }
    function CA() {
      return {
        assert: F,
        clone: fe,
        cloneDeep: _,
        each: Se,
        err: ar,
        hashCode: Nn,
        getType: xe,
        has: mt,
        includes: Ge.bind(null),
        isArray: ue,
        isBoolean: de,
        isDate: Jt,
        isEmpty: xt,
        isEqual: Yn,
        isFunction: Ht,
        isNil: ne,
        isNull: Me,
        isNumber: he,
        isObject: De,
        isRegExp: Qt,
        isString: be,
        isUndefined: Ne,
        keys: Ue,
        reduce: qt,
        resolve: vn,
        resolveObj: Dr
      };
    }
    var Ts = function() {
      return Object.assign({
        computeValue: le,
        ops: Ta
      }, CA());
    }, Co = {
      key: "_id"
    };
    function Da(u) {
      Object.assign(Co, u || {});
    }
    var Io = {
      $$ROOT: function(d, p, M) {
        return M.root;
      },
      $$CURRENT: function(d, p, M) {
        return d;
      },
      $$REMOVE: function(d, p, M) {
      }
    }, Po = {
      $$KEEP: function(d) {
        return d;
      },
      $$PRUNE: function() {
      },
      $$DESCEND: function(d, p, M) {
        if (!mt(p, "$cond")) return d;
        var N;
        return Se(d, function(O, q) {
          ft(O) && (ue(O) ? (N = [], Se(O, function(Z) {
            De(Z) && (Z = Cs(Z, p, M)), ne(Z) || N.push(Z);
          })) : N = Cs(O, p, M), ne(N) ? delete d[q] : d[q] = N);
        }), d;
      }
    }, Oo = Ue(Io), zo = Ue(Po);
    function Tr() {
      return Co.key;
    }
    function Ta() {
      var u = Array.prototype.slice.call(arguments);
      return qt(u, function(d, p) {
        return _t(d, Ue(gt[p]));
      }, []);
    }
    function Ns(u, d, p) {
      if (mt(gt[te], d))
        return gt[te][d](u, p);
      if (De(p)) {
        var M = {};
        return Se(p, function(N, O) {
          if (M[O] = Ns(u, O, p[O]), mt(gt[te], O))
            return M = M[O], F(Ue(p).length === 1, "Invalid $group expression '" + JSON.stringify(p) + "'"), !1;
        }), M;
      }
    }
    function le(u, d) {
      var p = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : null, M = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : {};
      if (M.root = M.root || u, mt(gt[U], p))
        return gt[U][p](u, d, M);
      if (mt(gt[te], p))
        return u = le(u, d, null, M), F(ue(u), p + " expression must resolve to an array"), gt[te][p](u, null, M);
      if (be(d) && d.length > 0 && d[0] === "$") {
        if (Ge(Oo, d))
          return Io[d](u, null, M);
        if (Ge(zo, d))
          return d;
        var N = Oo.filter(function(q) {
          return d.indexOf(q + ".") === 0;
        });
        return N.length === 1 && (N = N[0], N === "$$ROOT" && (u = M.root), d = d.substr(N.length)), vn(u, d.slice(1));
      }
      switch (I(d)) {
        case W:
          return d.map(function(q) {
            return le(u, q);
          });
        case J:
          var O = {};
          return Se(d, function(q, Z) {
            if (O[Z] = le(u, q, Z, M), [U, te].some(function(ce) {
              return mt(gt[ce], Z);
            }))
              return F(Ue(d).length === 1, "Invalid aggregation expression '" + JSON.stringify(d) + "'"), O = O[Z], !1;
          }), O;
        default:
          return d;
      }
    }
    function Cs(u, d) {
      var p = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
      p.root = p.root || u;
      var M = le(u, d, null, p);
      return Ge(zo, M) ? Po[M](u, d, p) : M;
    }
    function IA(u, d) {
      var p = le(u, d);
      return p == null ? null : Math.abs(p);
    }
    function PA(u, d) {
      var p = le(u, d), M = !1, N = qt(p, function(O, q) {
        return Jt(q) && (F(!M, "'$add' can only have one date value"), M = !0, q = q.getTime()), O += q, O;
      }, 0);
      return M ? new Date(N) : N;
    }
    function OA(u, d) {
      var p = le(u, d);
      return ne(p) ? null : (F(he(p) || isNaN(p), "$ceil expression must resolve to a number."), Math.ceil(p));
    }
    function zA(u, d) {
      var p = le(u, d);
      return p[0] / p[1];
    }
    function HA(u, d) {
      var p = le(u, d);
      return ne(p) ? null : (F(he(p) || isNaN(p), "$exp expression must resolve to a number."), Math.exp(p));
    }
    function SA(u, d) {
      var p = le(u, d);
      return ne(p) ? null : (F(he(p) || isNaN(p), "$floor expression must resolve to a number."), Math.floor(p));
    }
    function Is(u, d) {
      var p = le(u, d);
      return ne(p) ? null : (F(he(p) || isNaN(p), "$ln expression must resolve to a number."), Math.log(p));
    }
    function RA(u, d) {
      var p = le(u, d), M = "$log expression must resolve to array(2) of numbers";
      return F(ue(p) && p.length === 2, M), p.some(ne) ? null : (F(p.some(isNaN) || p.every(he), M), Math.log10(p[0]) / Math.log10(p[1]));
    }
    function Ps(u, d) {
      var p = le(u, d);
      return ne(p) ? null : (F(he(p) || isNaN(p), "$log10 expression must resolve to a number."), Math.log10(p));
    }
    function BA(u, d) {
      var p = le(u, d);
      return p[0] % p[1];
    }
    function LA(u, d) {
      var p = le(u, d);
      return qt(p, function(M, N) {
        return M * N;
      }, 1);
    }
    function QA(u, d) {
      var p = le(u, d);
      return F(ue(p) && p.length === 2 && p.every(he), "$pow expression must resolve to array(2) of numbers"), F(!(p[0] === 0 && p[1] < 0), "$pow cannot raise 0 to a negative exponent"), Math.pow(p[0], p[1]);
    }
    function Ho(u, d) {
      var p = le(u, d), M = p[0], N = p[1];
      return ne(M) || isNaN(M) || Math.abs(M) === 1 / 0 ? M : (F(he(M), "$round expression must resolve to a number."), Bo(M, N, !0));
    }
    function So(u, d) {
      var p = le(u, d);
      return ne(p) ? null : (F(he(p) && p > 0 || isNaN(p), "$sqrt expression must resolve to non-negative number."), Math.sqrt(p));
    }
    function Ro(u, d) {
      var p = le(u, d);
      return p[0] - p[1];
    }
    function XA(u, d) {
      var p = le(u, d), M = p[0], N = p[1];
      return ne(M) || isNaN(M) || Math.abs(M) === 1 / 0 ? M : (F(he(M), "$trunc expression must resolve to a number."), F(ne(N) || he(N) && N > -20 && N < 100, "$trunc expression has invalid place"), Bo(M, N, !1));
    }
    function Bo(u, d, p) {
      d = d || 0;
      var M = Math.abs(u) === u ? 1 : -1;
      u = Math.abs(u);
      var N = Math.trunc(u), O = u - N;
      if (d === 0) {
        var q = Math.trunc(10 * O);
        p && (N & 1) === 1 && q >= 5 && N++;
      } else if (d > 0) {
        var Z = Math.pow(10, d), ce = Math.trunc(O * Z), ie = Math.trunc(O * Z * 10) % 10;
        p && ie > 5 && (ce += 1), N += ce / Z;
      } else if (d < 0) {
        var Ee = Math.pow(10, -1 * d), ge = N % Ee;
        if (N = Math.max(0, N - ge), p && M === -1) {
          for (; ge > 10; )
            ge -= ge % 10;
          N > 0 && ge >= 5 && (N += Ee);
        }
      }
      return N * M;
    }
    function FA(u, d) {
      var p = le(u, d);
      F(ue(p) && p.length === 2, "$arrayElemAt expression must resolve to array(2)"), F(ue(p[0]), "First operand to $arrayElemAt must resolve to an array"), F(he(p[1]), "Second operand to $arrayElemAt must resolve to an integer");
      var M = p[1];
      if (p = p[0], M < 0 && Math.abs(M) <= p.length)
        return p[M + p.length];
      if (M >= 0 && M < p.length)
        return p[M];
    }
    function qA(u, d) {
      var p = le(u, d);
      return F(ue(p), "$arrayToObject expression must resolve to an array"), qt(p, function(M, N) {
        return ue(N) && N.length == 2 ? M[N[0]] = N[1] : (F(De(N) && mt(N, "k") && mt(N, "v"), "$arrayToObject expression is invalid."), M[N.k] = N.v), M;
      }, {});
    }
    function Lo(u, d) {
      var p = le(u, d, null);
      return F(ue(p), "$concatArrays must resolve to an array"), p.some(ne) ? null : p.reduce(function(M, N) {
        return _t(M, N);
      }, []);
    }
    function Qo(u, d) {
      var p = le(u, d.input), M = d.as, N = d.cond;
      return F(ue(p), "$filter 'input' expression must resolve to an array"), p.filter(function(O) {
        var q = {};
        return q["$" + M] = O, le(q, N) === !0;
      });
    }
    function Xo(u, d) {
      var p = le(u, d[0]), M = le(u, d[1]);
      return F(ue(M), "$in second argument must be an array"), M.some(Yn.bind(null, p));
    }
    function Na(u, d) {
      var p = le(u, d);
      if (ne(p)) return null;
      var M = p[0], N = p[1];
      if (ne(M)) return null;
      F(ue(M), "$indexOfArray expression must resolve to an array.");
      var O = p[2] || 0, q = p[3];
      return ne(q) && (q = M.length), O > q ? -1 : (F(O >= 0 && q >= 0, "$indexOfArray expression is invalid"), (O > 0 || q < M.length) && (M = M.slice(O, q)), M.findIndex(Yn.bind(null, N)) + O);
    }
    function GA(u, d) {
      return ue(le(u, d[0]));
    }
    function Fo(u, d) {
      var p = le(u, d.input);
      F(ue(p), "$map 'input' expression must resolve to an array");
      var M = d.as, N = d.in, O = "$" + M;
      return p.map(function(q) {
        return u[O] = q, le(u, N);
      });
    }
    function Os(u, d) {
      var p = le(u, d);
      F(De(p), "$objectToArray expression must resolve to an object");
      var M = [];
      return Se(p, function(N, O) {
        return M.push({
          k: O,
          v: N
        });
      }), M;
    }
    function qo(u, d) {
      for (var p = le(u, d), M = p[0], N = p[1], O = p[2] || 1, q = []; M < N && O > 0 || M > N && O < 0; )
        q.push(M), M += O;
      return q;
    }
    function YA(u, d) {
      var p = le(u, d.input), M = le(u, d.initialValue), N = d.in;
      return ne(p) ? null : (F(ue(p), "$reduce 'input' expression must resolve to an array"), qt(p, function(O, q) {
        return le({
          $value: O,
          $this: q
        }, N);
      }, M));
    }
    function Go(u, d) {
      var p = le(u, d);
      if (ne(p)) return null;
      F(ue(p), "$reverseArray expression must resolve to an array");
      var M = [];
      return _t(M, p), M.reverse(), M;
    }
    function Yo(u, d) {
      var p = le(u, d);
      return ue(p) ? p.length : void 0;
    }
    function Ca(u, d) {
      var p = le(u, d);
      return Ea(p[0], p[1], p[2]);
    }
    function UA(u, d) {
      var p = le(u, d.inputs), M = d.useLongestLength || !1;
      F(ue(p), "'inputs' expression must resolve to an array"), F(de(M), "'useLongestLength' must be a boolean"), ue(d.defaults) && F(Xt(M), "'useLongestLength' must be set to true to use 'defaults'");
      for (var N = 0, O = 0, q = p.length; O < q; O++) {
        var Z = p[O];
        if (ne(Z)) return null;
        F(ue(Z), "'inputs' expression values must resolve to an array or null"), N = M ? Math.max(N, Z.length) : Math.min(N || Z.length, Z.length);
      }
      for (var ce = [], ie = d.defaults || [], Ee = function(Qe) {
        var ot = p.map(function(Pt, pn) {
          return ne(Pt[Qe]) ? ie[pn] || null : Pt[Qe];
        });
        ce.push(ot);
      }, ge = 0; ge < N; ge++)
        Ee(ge);
      return ce;
    }
    function Uo(u, d) {
      var p = le(u, d);
      return ue(p) ? qt(p, function(M, N) {
        return Object.assign(M, N);
      }, {}) : {};
    }
    function Ia(u, d) {
      var p = le(u, d);
      return Xt(p) && p.every(Xt);
    }
    function Pa(u, d) {
      var p = le(u, d);
      return Xt(p) && p.some(Xt);
    }
    function Nr(u, d) {
      return !le(u, d[0]);
    }
    function nn(u) {
      return u instanceof Hs ? u : new Hs(u);
    }
    nn.isIterator = Oa;
    function Oa(u) {
      return !!u && r(u) === "object" && za(u.next);
    }
    function za(u) {
      return !!u && typeof u == "function";
    }
    function Jo(u, d) {
      var p = u.slice(d + 1);
      u.splice(d), Array.prototype.push.apply(u, p);
    }
    var zs = new Error(), Ha = 1, Sa = 2, Zo = 3, Wo = 4;
    function JA(u, d, p) {
      var M = !1, N = -1, O = 0;
      return function(q) {
        q = q === p;
        try {
          e: for (; !M; ) {
            var Z = u();
            N++;
            for (var ce = -1, ie = d.length, Ee = !1; ++ce < ie; ) {
              var ge = d[ce], Je = ge.func, Qe = ge.type;
              switch (Qe) {
                case Ha:
                  Z = Je(Z, N);
                  break;
                case Sa:
                  if (!Je(Z, N)) continue e;
                  break;
                case Zo:
                  --ge.func, ge.func || (Ee = !0);
                  break;
                case Wo:
                  --ge.func, ge.func || Jo(d, ce);
                  continue e;
                default:
                  break e;
              }
            }
            if (M = Ee, q)
              p[O++] = Z;
            else
              return {
                value: Z,
                done: !1
              };
          }
        } catch (ot) {
          if (ot !== zs) throw ot;
        }
        return M = !0, {
          done: !0
        };
      };
    }
    var Hs = /* @__PURE__ */ function() {
      function u(d) {
        if (o(this, u), this.__iteratees = [], this.__first = !1, this.__done = !1, this.__buf = [], za(d) && (d = {
          next: d
        }), Oa(d)) {
          var p = d;
          d = function() {
            var Z = p.next();
            if (Z.done) throw zs;
            return Z.value;
          };
        } else if (Array.isArray(d)) {
          var M = d, N = M.length, O = 0;
          d = function() {
            if (O < N) return M[O++];
            throw zs;
          };
        } else if (!za(d))
          throw new Error("Source is not iterable. Must be Array, Function or Object{next:Function}");
        this.next = JA(d, this.__iteratees, this.__buf);
      }
      return c(u, [{
        key: "_validate",
        value: function() {
          if (this.__first) throw new Error("Cannot add iteratee/transform after `first()`");
        }
        /**
         * Add an iteratee to this lazy sequence
         * @param {Object} iteratee
         */
      }, {
        key: "_push",
        value: function(p) {
          return this._validate(), this.__iteratees.push(p), this;
        }
        // Iteratees methods
        /**
         * Transform each item in the sequence to a new value
         * @param {Function} f
         */
      }, {
        key: "map",
        value: function(p) {
          return this._push({
            type: Ha,
            func: p
          });
        }
        /**
         * Select only items matching the given predicate
         * @param {Function} pred
         */
      }, {
        key: "filter",
        value: function(p) {
          return this._push({
            type: Sa,
            func: p
          });
        }
        /**
         * Take given numbe for values from sequence
         * @param {Number} n A number greater than 0
         */
      }, {
        key: "take",
        value: function(p) {
          return p > 0 ? this._push({
            type: Zo,
            func: p
          }) : this;
        }
        /**
         * Drop a number of values from the sequence
         * @param {Number} n Number of items to drop greater than 0
         */
      }, {
        key: "drop",
        value: function(p) {
          return p > 0 ? this._push({
            type: Wo,
            func: p
          }) : this;
        }
        // Transformations
        /**
         * Returns a new lazy object with results of the transformation
         * The entire sequence is realized.
         *
         * @param {Function} fn Tranform function of type (Array) => (Any)
         */
      }, {
        key: "transform",
        value: function(p) {
          this._validate();
          var M = this, N;
          return nn(function() {
            return N || (N = nn(p(M.value()))), N.next();
          });
        }
        /**
         * Mark this lazy object to return only the first result on `lazy.value()`.
         * No more iteratees or transformations can be added after this method is called.
         */
      }, {
        key: "first",
        value: function() {
          return this.take(1), this.__first = !0, this;
        }
        // Terminal methods
        /**
         * Returns the fully realized values of the iterators.
         * The return value will be an array unless `lazy.first()` was used.
         * The realized values are cached for subsequent calls
         */
      }, {
        key: "value",
        value: function() {
          return this.__done || (this.__done = this.next(this.__buf).done), this.__first ? this.__buf[0] : this.__buf;
        }
        /**
         * Execute the funcion for each value. Will stop when an execution returns false.
         * @param {Function} f
         * @returns {Boolean} false iff `f` return false for any execution, otherwise true
         */
      }, {
        key: "each",
        value: function(p) {
          for (; ; ) {
            var M = this.next();
            if (M.done) break;
            if (p(M.value) === !1) return !1;
          }
          return !0;
        }
        /**
         * Returns the reduction of sequence according the reducing function
         *
         * @param {*} f a reducing function
         * @param {*} init
         */
      }, {
        key: "reduce",
        value: function(p, M) {
          var N = this.next(), O = 0;
          for (M === void 0 && !N.done && (M = N.value, N = this.next(), O++); !N.done; )
            M = p(M, N.value, O++), N = this.next();
          return M;
        }
        /**
         * Returns the number of matched items in the sequence
         */
      }, {
        key: "size",
        value: function() {
          return this.reduce(function(p, M) {
            return ++p;
          }, 0);
        }
      }]), u;
    }();
    typeof Symbol == "function" && (Hs.prototype[Symbol.iterator] = function() {
      return this;
    });
    var Ss = /* @__PURE__ */ function() {
      function u(d, p) {
        o(this, u), this.__operators = d, this.__options = p;
      }
      return c(u, [{
        key: "stream",
        value: function(p, M) {
          var N = this;
          p = nn(p);
          var O = gt[R];
          return xt(this.__operators) || Se(this.__operators, function(q) {
            var Z = Ue(q);
            F(Z.length === 1 && Ge(Ta(R), Z[0]), "invalid aggregation operator ".concat(Z)), Z = Z[0], M && M instanceof yn ? p = O[Z].call(M, p, q[Z], N.__options) : p = O[Z](p, q[Z], N.__options);
          }), p;
        }
        /**
         * Return the results of the aggregation as an array.
         * @param {*} collection
         * @param {*} query
         */
      }, {
        key: "run",
        value: function(p, M) {
          return this.stream(p, M).value();
        }
      }]), u;
    }();
    function Vo(u, d, p) {
      return F(ue(d), "Aggregation pipeline must be an array"), new Ss(d, p).run(u);
    }
    var Ra = /* @__PURE__ */ function() {
      function u(d, p, M) {
        o(this, u), this.__filterFn = p.test.bind(p), this.__query = p, this.__source = d, this.__projection = M || p.__projection, this.__operators = [], this.__result = null, this.__stack = [], this.__options = {};
      }
      return c(u, [{
        key: "_fetch",
        value: function() {
          return this.__result ? this.__result : (De(this.__projection) && this.__operators.push({
            $project: this.__projection
          }), this.__result = nn(this.__source).filter(this.__filterFn), this.__operators.length > 0 && (this.__result = new Ss(this.__operators, this.__options).stream(this.__result, this.__query)), this.__result);
        }
        /**
         * Return remaining objects in the cursor as an array. This method exhausts the cursor
         * @returns {Array}
         */
      }, {
        key: "all",
        value: function() {
          return this._fetch().value();
        }
        /**
         * Returns the number of objects return in the cursor. This method exhausts the cursor
         * @returns {Number}
         */
      }, {
        key: "count",
        value: function() {
          return this.all().length;
        }
        /**
         * Returns a cursor that begins returning results only after passing or skipping a number of documents.
         * @param {Number} n the number of results to skip.
         * @return {Cursor} Returns the cursor, so you can chain this call.
         */
      }, {
        key: "skip",
        value: function(p) {
          return this.__operators.push({
            $skip: p
          }), this;
        }
        /**
         * Constrains the size of a cursor's result set.
         * @param {Number} n the number of results to limit to.
         * @return {Cursor} Returns the cursor, so you can chain this call.
         */
      }, {
        key: "limit",
        value: function(p) {
          return this.__operators.push({
            $limit: p
          }), this;
        }
        /**
         * Returns results ordered according to a sort specification.
         * @param {Object} modifier an object of key and values specifying the sort order. 1 for ascending and -1 for descending
         * @return {Cursor} Returns the cursor, so you can chain this call.
         */
      }, {
        key: "sort",
        value: function(p) {
          return this.__operators.push({
            $sort: p
          }), this;
        }
        /**
         * Specifies the collation for the cursor returned by the `mingo.Query.find`
         * @param {*} options
         */
      }, {
        key: "collation",
        value: function(p) {
          return this.__options.collation = p, this;
        }
        /**
         * Returns the next document in a cursor.
         * @returns {Object | Boolean}
         */
      }, {
        key: "next",
        value: function() {
          if (this.__stack) {
            if (this.__stack.length > 0) return this.__stack.pop();
            var p = this._fetch().next();
            if (!p.done) return p.value;
            this.__stack = null;
          }
        }
        /**
         * Returns true if the cursor has documents and can be iterated.
         * @returns {boolean}
         */
      }, {
        key: "hasNext",
        value: function() {
          if (!this.__stack) return !1;
          if (this.__stack.length > 0) return !0;
          var p = this._fetch().next();
          return p.done ? this.__stack = null : this.__stack.push(p.value), !!this.__stack;
        }
        /**
         * Applies a function to each document in a cursor and collects the return values in an array.
         * @param callback
         * @returns {Array}
         */
      }, {
        key: "map",
        value: function(p) {
          return this._fetch().map(p).value();
        }
        /**
         * Applies a JavaScript function for every document in a cursor.
         * @param callback
         */
      }, {
        key: "forEach",
        value: function(p) {
          this._fetch().each(p);
        }
      }]), u;
    }();
    typeof Symbol == "function" && (Ra.prototype[Symbol.iterator] = function() {
      return this._fetch();
    });
    var yn = /* @__PURE__ */ function() {
      function u(d, p) {
        o(this, u), this.__criteria = d, this.__projection = p || {}, this.__compiled = [], this._compile();
      }
      return c(u, [{
        key: "_compile",
        value: function() {
          var p = this;
          F(De(this.__criteria), "query criteria must be an object");
          var M;
          Se(this.__criteria, function(N, O) {
            O === "$where" ? M = {
              field: O,
              expr: N
            } : O === "$expr" || Ge(["$and", "$or", "$nor"], O) ? p._processOperator(O, O, N) : (F(!Ma(O), "unknown top level operator: ".concat(O)), N = ja(N), Se(N, function(q, Z) {
              p._processOperator(O, Z, q);
            })), De(M) && p._processOperator(M.field, M.field, M.expr);
          });
        }
      }, {
        key: "_processOperator",
        value: function(p, M, N) {
          F(mt(gt[$], M), "invalid query operator ".concat(M, " detected")), this.__compiled.push(gt[$][M](p, N));
        }
        /**
         * Checks if the object passes the query criteria. Returns true if so, false otherwise.
         * @param obj
         * @returns {boolean}
         */
      }, {
        key: "test",
        value: function(p) {
          for (var M = 0, N = this.__compiled.length; M < N; M++)
            if (!this.__compiled[M](p))
              return !1;
          return !0;
        }
        /**
         * Performs a query on a collection and returns a cursor object.
         * @param collection
         * @param projection
         * @returns {Cursor}
         */
      }, {
        key: "find",
        value: function(p, M) {
          return new Ra(p, this, M);
        }
        /**
         * Remove matched documents from the collection returning the remainder
         * @param collection
         * @returns {Array}
         */
      }, {
        key: "remove",
        value: function(p) {
          var M = this;
          return qt(p, function(N, O) {
            return M.test(O) || N.push(O), N;
          }, []);
        }
      }]), u;
    }();
    function Ba(u, d, p) {
      return new yn(d).find(u, p);
    }
    function ZA(u, d) {
      return new yn(d).remove(u);
    }
    function La(u, d) {
      if (Yn(u, d) || ne(u) && ne(d)) return !0;
      if (ue(u)) {
        var p = Yn.bind(null, d);
        return u.some(p) || jr(u, 1).some(p);
      }
      return !1;
    }
    function Ko(u, d) {
      return !La(u, d);
    }
    function _o(u, d) {
      return ne(u) ? d.some(Me) : Sn(Ft(u), d).length > 0;
    }
    function $o(u, d) {
      return !_o(u, d);
    }
    function it(u, d) {
      return Cr(u, d, function(p, M) {
        return p < M;
      });
    }
    function st(u, d) {
      return Cr(u, d, function(p, M) {
        return p <= M;
      });
    }
    function ei(u, d) {
      return Cr(u, d, function(p, M) {
        return p > M;
      });
    }
    function ti(u, d) {
      return Cr(u, d, function(p, M) {
        return p >= M;
      });
    }
    function WA(u, d) {
      return Ft(u).some(function(p) {
        return he(p) && ue(d) && d.length === 2 && p % d[0] === d[1];
      });
    }
    function VA(u, d) {
      u = Ft(u);
      var p = function(N) {
        return be(N) && !!N.match(d);
      };
      return u.some(p) || jr(u, 1).some(p);
    }
    function KA(u, d) {
      return (d === !1 || d === 0) && u === void 0 || (d === !0 || d === 1) && u !== void 0;
    }
    function _A(u, d) {
      var p = !1;
      if (ue(u) && ue(d))
        for (var M = 0, N = d.length; M < N; M++)
          if (De(d[M]) && Ge(Ue(d[M]), "$elemMatch"))
            p = p || ri(u, d[M].$elemMatch);
          else
            return Sn(d, u).length === N;
      return p;
    }
    function ni(u, d) {
      return ue(u) && he(d) && u.length === d;
    }
    function ri(u, d) {
      if (ue(u) && !xt(u)) {
        var p = function(ce) {
          return ce;
        }, M = d;
        Ue(d).every(Ma) && (M = {
          temp: d
        }, p = function(ce) {
          return {
            temp: ce
          };
        });
        for (var N = new yn(M), O = 0, q = u.length; O < q; O++)
          if (N.test(p(u[O])))
            return !0;
      }
      return !1;
    }
    function St(u, d) {
      switch (d) {
        case 1:
        case "double":
          return he(u) && (u + "").indexOf(".") !== -1;
        case 2:
        case C:
          return be(u);
        case 3:
        case J:
          return De(u);
        case 4:
        case W:
          return ue(u);
        case 6:
        case g:
          return ne(u);
        case 8:
        case y:
          return de(u);
        case 9:
        case S:
          return Jt(u);
        case 10:
        case x:
          return Me(u);
        case 11:
        case G:
          return Qt(u);
        case 16:
        case "int":
          return he(u) && u <= 2147483647 && (u + "").indexOf(".") === -1;
        case 18:
        case "long":
          return he(u) && u > 2147483647 && u <= 9223372036854776e3 && (u + "").indexOf(".") === -1;
        case 19:
        case "decimal":
          return he(u);
        default:
          return !1;
      }
    }
    function Cr(u, d, p) {
      return Ft(u).some(function(M) {
        return xe(M) === xe(d) && p(M, d);
      });
    }
    function rn(u) {
      return function(d, p) {
        var M = le(d, p);
        return u(M[0], M[1]);
      };
    }
    var si = rn(La), Qa = rn(Ko), dn = rn(ei), ai = rn(it), oi = rn(ti), ii = rn(st), Ai = rn($o);
    function li(u, d) {
      var p = le(u, d);
      return p[0] > p[1] ? 1 : p[0] < p[1] ? -1 : 0;
    }
    function ci(u, d) {
      var p, M, N, O = "$cond: invalid arguments";
      ue(d) ? (F(d.length === 3, O), p = d[0], M = d[1], N = d[2]) : (F(De(d), O), p = d.if, M = d.then, N = d.else);
      var q = le(u, p);
      return q ? le(u, M) : le(u, N);
    }
    function sn(u, d) {
      var p = "Invalid arguments for $switch operator";
      F(d.branches, p);
      var M = d.branches.find(function(N) {
        return F(N.case && N.then, p), le(u, N.case);
      });
      return M ? le(u, M.then) : (F(d.default, p), le(u, d.default));
    }
    function $A(u, d) {
      F(ue(d) && d.length === 2, "$ifNull expression must resolve to array(2)");
      var p = le(u, d);
      return ne(p[0]) ? p[1] : p[0];
    }
    function an(u, d) {
      var p = le(u, d), M = new Date(p.getFullYear(), 0, 0), N = p - M, O = 1e3 * 60 * 60 * 24;
      return Math.round(N / O);
    }
    function ui(u, d) {
      var p = le(u, d);
      return p.getDate();
    }
    function Xa(u, d) {
      var p = le(u, d);
      return p.getDay() + 1;
    }
    function Rn(u, d) {
      var p = le(u, d);
      return p.getFullYear();
    }
    function _r(u, d) {
      var p = le(u, d);
      return p.getMonth() + 1;
    }
    function Rs(u, d) {
      var p = le(u, d);
      p = /* @__PURE__ */ new Date(+p), p.setHours(0, 0, 0), p.setDate(p.getDate() + 4 - (p.getDay() || 7));
      var M = new Date(p.getFullYear(), 0, 1);
      return Math.floor(((p - M) / 864e5 + 1) / 7);
    }
    function At(u, d) {
      var p = le(u, d);
      return p.getUTCHours();
    }
    function Bn(u, d) {
      var p = le(u, d);
      return p.getMinutes();
    }
    function Bs(u, d) {
      var p = le(u, d);
      return p.getSeconds();
    }
    function fi(u, d) {
      var p = le(u, d);
      return p.getMilliseconds();
    }
    var Fa = {
      "%Y": [Rn, 4],
      "%m": [_r, 2],
      "%d": [ui, 2],
      "%H": [At, 2],
      "%M": [Bn, 2],
      "%S": [Bs, 2],
      "%L": [fi, 3],
      "%j": [an, 3],
      "%w": [Xa, 1],
      "%U": [Rs, 2],
      "%%": "%"
    };
    function el(u, d) {
      for (var p = d.format, M = le(u, d.date), N = p.match(/(%%|%Y|%m|%d|%H|%M|%S|%L|%j|%w|%U)/g), O = 0, q = N.length; O < q; O++) {
        var Z = Fa[N[O]], ce = Z;
        if (ue(Z)) {
          var ie = Z[0], Ee = Z[1];
          ce = tl(ie(u, M), Ee);
        }
        p = p.replace(N[O], ce);
      }
      return p;
    }
    function tl(u, d) {
      return new Array(Math.max(d - String(u).length + 1, 0)).join("0") + u;
    }
    function nl(u, d) {
      return d;
    }
    function di(u, d) {
      var p = le(u, d), M = Vr(p[0]), N = Vr(p[1]);
      return M.length === N.length && M.length === Sn(M, N).length;
    }
    function Ls(u, d) {
      var p = le(u, d);
      return Sn(p[0], p[1]);
    }
    function Ir(u, d) {
      var p = le(u, d);
      return p[0].filter(pt.bind(null, p[1]));
    }
    function rl(u, d) {
      var p = le(u, d);
      return TA(p[0], p[1]);
    }
    function hi(u, d) {
      var p = le(u, d);
      return Sn(p[0], p[1]).length === p[0].length;
    }
    function pi(u, d) {
      var p = le(u, d)[0];
      return p.some(Xt);
    }
    function qa(u, d) {
      var p = le(u, d)[0];
      return p.every(Xt);
    }
    function Ga(u, d) {
      var p = le(u, d);
      return [null, void 0].some(Ge.bind(null, p)) ? null : p.join("");
    }
    function mi(u, d) {
      var p = le(u, d), M = "$indexOfBytes expression resolves to invalid an argument";
      if (ne(p[0])) return null;
      F(be(p[0]) && be(p[1]), M);
      var N = p[0], O = p[1], q = p[2], Z = p[3], ce = ne(q) || he(q) && q >= 0 && Math.round(q) === q;
      if (ce = ce && (ne(Z) || he(Z) && Z >= 0 && Math.round(Z) === Z), F(ce, M), q = q || 0, Z = Z || N.length, q > Z) return -1;
      var ie = N.substring(q, Z).indexOf(O);
      return ie > -1 ? ie + q : ie;
    }
    function sl(u, d) {
      var p = le(u, d);
      return ne(p[0]) ? null : (F(p.every(be), "$split expression must result to array(2) of strings"), p[0].split(p[1]));
    }
    function Ya(u, d) {
      return ~-encodeURI(le(u, d)).split(/%..|./).length;
    }
    function Ua(u, d) {
      return le(u, d).length;
    }
    function al(u, d) {
      var p = le(u, d), M = p[0], N = p[1];
      return Yn(M, N) || p.every(ne) ? 0 : (F(p.every(be), "$strcasecmp must resolve to array(2) of strings"), M = M.toUpperCase(), N = N.toUpperCase(), M > N && 1 || M < N && -1 || 0);
    }
    function gi(u, d) {
      var p = le(u, d), M = p[0], N = p[1], O = p[2];
      F(be(M) && he(N) && N >= 0 && he(O) && O >= 0, "$substrBytes: invalid arguments");
      for (var q = il(M), Z = [], ce = 0, ie = 0; ie < q.length; ie++)
        Z.push(ce), ce += q[ie].length;
      var Ee = Z.indexOf(N), ge = Z.indexOf(N + O);
      return F(Ee > -1 && ge > -1, "$substrBytes: invalid range, start or end index is a UTF-8 continuation byte."), M.substring(Ee, ge);
    }
    function $t(u, d) {
      var p = le(u, d), M = p[0], N = p[1], O = p[2];
      return be(M) ? N < 0 ? "" : O < 0 ? M.substr(N) : M.substr(N, O) : "";
    }
    function Ja(u, d) {
      return $t(u, d);
    }
    function $r(u, d) {
      var p = le(u, d);
      return xt(p) ? "" : p.toLowerCase();
    }
    function xi(u, d) {
      var p = le(u, d);
      return xt(p) ? "" : p.toUpperCase();
    }
    var wi = [192, 224, 240];
    function ol(u) {
      if (u < 128) return [u];
      for (var d = u < 2048 && 1 || u < 65536 && 2 || 3, p = wi[d - 1], M = [(u >> 6 * d) + p]; d > 0; )
        M.push(128 | u >> 6 * --d & 63);
      return M;
    }
    function il(u) {
      for (var d = [], p = 0, M = u.length; p < M; p++)
        d.push(ol(u.codePointAt(p)));
      return d;
    }
    function Al(u, d) {
      var p = d.vars, M = d.in, N = Ue(p);
      return Se(N, function(O) {
        var q = le(u, p[O]), Z = "$" + O;
        u[Z] = q;
      }), le(u, M);
    }
    var ll = /* @__PURE__ */ Object.freeze({
      __proto__: null,
      $abs: IA,
      $add: PA,
      $ceil: OA,
      $divide: zA,
      $exp: HA,
      $floor: SA,
      $ln: Is,
      $log: RA,
      $log10: Ps,
      $mod: BA,
      $multiply: LA,
      $pow: QA,
      $round: Ho,
      $sqrt: So,
      $subtract: Ro,
      $trunc: XA,
      $arrayElemAt: FA,
      $arrayToObject: qA,
      $concatArrays: Lo,
      $filter: Qo,
      $in: Xo,
      $indexOfArray: Na,
      $isArray: GA,
      $map: Fo,
      $objectToArray: Os,
      $range: qo,
      $reduce: YA,
      $reverseArray: Go,
      $size: Yo,
      $slice: Ca,
      $zip: UA,
      $mergeObjects: Uo,
      $and: Ia,
      $or: Pa,
      $not: Nr,
      $eq: si,
      $ne: Qa,
      $gt: dn,
      $lt: ai,
      $gte: oi,
      $lte: ii,
      $nin: Ai,
      $cmp: li,
      $cond: ci,
      $switch: sn,
      $ifNull: $A,
      $dayOfYear: an,
      $dayOfMonth: ui,
      $dayOfWeek: Xa,
      $year: Rn,
      $month: _r,
      $week: Rs,
      $hour: At,
      $minute: Bn,
      $second: Bs,
      $millisecond: fi,
      $dateToString: el,
      $literal: nl,
      $setEquals: di,
      $setIntersection: Ls,
      $setDifference: Ir,
      $setUnion: rl,
      $setIsSubset: hi,
      $anyElementTrue: pi,
      $allElementsTrue: qa,
      $concat: Ga,
      $indexOfBytes: mi,
      $split: sl,
      $strLenBytes: Ya,
      $strLenCP: Ua,
      $strcasecmp: al,
      $substrBytes: gi,
      $substr: $t,
      $substrCP: Ja,
      $toLower: $r,
      $toUpper: xi,
      $let: Al
    });
    function Jn(u, d) {
      return ne(d) ? u : u.map(function(p) {
        return le(p, d);
      });
    }
    function Pr(u, d) {
      return Vr(Jn(u, d));
    }
    function cl(u, d) {
      var p = Jn(u, d).filter(he), M = qt(p, function(N, O) {
        return N + O;
      }, 0);
      return M / (p.length || 1);
    }
    function ul(u, d) {
      return u.length > 0 ? le(u[0], d) : void 0;
    }
    function Za(u, d) {
      return u.length > 0 ? le(u[u.length - 1], d) : void 0;
    }
    function bi(u, d) {
      return qt(Jn(u, d), function(p, M) {
        return ne(p) || M > p ? M : p;
      }, void 0);
    }
    function Zn(u, d) {
      return qt(u, function(p, M) {
        return Object.assign(p, le(M, d));
      }, {});
    }
    function Qs(u, d) {
      return qt(Jn(u, d), function(p, M) {
        return ne(p) || M < p ? M : p;
      }, void 0);
    }
    function fl(u, d) {
      return No(Jn(u, d).filter(he), !1);
    }
    function dl(u, d) {
      return No(Jn(u, d).filter(he), !0);
    }
    function hl(u, d) {
      return ue(u) ? he(d) ? u.length * d : qt(Jn(u, d).filter(he), function(p, M) {
        return p + M;
      }, 0) : 0;
    }
    var Or = /* @__PURE__ */ Object.freeze({
      __proto__: null,
      $addToSet: Pr,
      $avg: cl,
      $first: ul,
      $last: Za,
      $max: bi,
      $mergeObjects: Zn,
      $min: Qs,
      $push: Jn,
      $stdDevPop: fl,
      $stdDevSamp: dl,
      $sum: hl
    });
    function hn(u, d, p) {
      var M = Ue(d);
      return M.length === 0 ? u : u.map(function(N) {
        var O = _(N);
        return Se(M, function(q) {
          var Z = le(N, d[q]);
          ya(O, q, Z);
        }), O;
      });
    }
    var vi = hn;
    function pl(u, d, p) {
      var M = d.boundaries, N = d.default, O = M[0], q = M[M.length - 1], Z = d.output || {
        count: {
          $sum: 1
        }
      };
      F(M.length > 2, "$bucket 'boundaries' expression must have at least 3 elements");
      for (var ce = xe(O), ie = 0, Ee = M.length - 1; ie < Ee; ie++)
        F(ce === xe(M[ie + 1]), "$bucket 'boundaries' must all be of the same type"), F(M[ie] < M[ie + 1], "$bucket 'boundaries' must be sorted in ascending order");
      !ne(N) && xe(d.default) === xe(O) && F(O > d.default || q < d.default, "$bucket 'default' expression must be out of boundaries range");
      var ge = {};
      Se(M, function(Qe) {
        return ge[Qe] = [];
      }), ne(N) || (ge[N] = []);
      var Je = !1;
      return nn(function() {
        return Je || (u.each(function(Qe) {
          var ot = le(Qe, d.groupBy);
          if (ne(ot) || ot < O || ot >= q)
            F(!ne(N), "$bucket require a default for out of range values"), ge[N].push(Qe);
          else {
            F(ot >= O && ot < q, "$bucket 'groupBy' expression must resolve to a value in range of boundaries");
            var Pt = wa(M, ot), pn = M[Math.max(0, Pt - 1)];
            ge[pn].push(Qe);
          }
        }), M.pop(), ne(N) || M.push(N), Je = nn(M).map(function(Qe) {
          var ot = Ns(ge[Qe], null, Z);
          return Object.assign(ot, {
            _id: Qe
          });
        })), Je.next();
      });
    }
    function ml(u, d, p) {
      var M = d.output || {
        count: {
          $sum: 1
        }
      }, N = d.groupBy, O = d.buckets;
      return F(O > 0, "The $bucketAuto 'buckets' field must be greater than 0, but found: " + O), u.transform(function(q) {
        for (var Z = Math.max(1, Math.round(q.length / O)), ce = NA(le), ie = {}, Ee = [], ge = js(q, function(Ka) {
          var ns = ce(Ka, N);
          return ne(ns) ? Ee.push(Ka) : (ie[ns] || (ie[ns] = []), ie[ns].push(Ka)), ns;
        }), Je = Tr(), Qe = [], ot = 0, Pt = 0, pn = ge.length; Pt < O && ot < pn; Pt++) {
          for (var E = {}, kn = [], ts = 0; ts < Z && ot < pn; ts++) {
            var Ot = ce(ge[ot], N);
            if (ne(Ot) && (Ot = null), _t(kn, ne(Ot) ? Ee : ie[Ot]), ot += ne(Ot) ? Ee.length : ie[Ot].length, mt(E, "min") || (E.min = Ot), Qe.length > 0) {
              var Xe = Qe[Qe.length - 1];
              Xe[Je].max = E.min;
            }
          }
          Pt == O - 1 && _t(kn, ge.slice(ot)), Qe.push(Object.assign(Ns(kn, null, M), {
            _id: E
          }));
        }
        return Qe.length > 0 && (Qe[Qe.length - 1][Je].max = ce(ge[ge.length - 1], N)), Qe;
      });
    }
    function gl(u, d, p) {
      return F(be(d) && d.trim() !== "" && d.indexOf(".") === -1 && d.trim()[0] !== "$", "Invalid expression value for $count"), nn(function() {
        var M = {};
        return M[d] = u.size(), {
          value: M,
          done: !1
        };
      }).first();
    }
    function xl(u, d, p) {
      return u.transform(function(M) {
        return [kr(d, function(N) {
          return Vo(M, N);
        })];
      });
    }
    function yi(u, d, p) {
      var M = Tr(), N = d[M];
      return u.transform(function(O) {
        var q = Es(O, function(ie) {
          return le(ie, N, N);
        });
        d = fe(d), delete d[M];
        var Z = -1, ce = q.keys.length;
        return function() {
          if (++Z === ce) return {
            done: !0
          };
          var ie = q.keys[Z], Ee = {};
          return ie !== void 0 && (Ee[M] = ie), Se(d, function(ge, Je) {
            Ee[Je] = Ns(q.groups[Z], Je, ge);
          }), {
            value: Ee,
            done: !1
          };
        };
      });
    }
    function zr(u, d, p) {
      return u.take(d);
    }
    function L(u, d, p) {
      var M = d.from, N = d.localField, O = d.foreignField, q = d.as;
      F(ue(M) && be(O) && be(N) && be(q), "$lookup: invalid argument");
      var Z = {};
      return Se(M, function(ce) {
        var ie = Nn(vn(ce, O));
        Z[ie] = Z[ie] || [], Z[ie].push(ce);
      }), u.map(function(ce) {
        var ie = Nn(vn(ce, N)), Ee = fe(ce);
        return Ee[q] = Z[ie] || [], Ee;
      });
    }
    function re(u, d, p) {
      var M = new yn(d);
      return u.filter(function(N) {
        return M.test(N);
      });
    }
    function V(u, d, p) {
      return F(ue(d), "$out expression must be an array"), u.map(function(M) {
        return d.push(M), M;
      });
    }
    function we(u, d, p) {
      if (xt(d)) return u;
      var M = Ue(d), N = !1, O = Tr();
      if (Ye(d), Ge(M, O)) {
        var q = d[O];
        (q === 0 || q === !1) && (M = M.filter(pt.bind(null, [O])), F(pt(M, O), "Must not contain collections id key"), N = xt(M));
      } else
        M.push(O);
      return u.map(function(Z) {
        return Pe(Z, d, M, N);
      });
    }
    function Pe(u, d, p, M) {
      var N = Tr(), O = {}, q = !1, Z = !1, ce = [];
      return M && ce.push(N), p.forEach(function(ie) {
        var Ee, ge = d[ie];
        if (ie !== N && Ge([0, !1], ge) && (Z = !0), ie === N && xt(ge))
          Ee = u[ie];
        else if (be(ge))
          Ee = le(u, ge, ie);
        else if (!Ge([1, !0], ge)) if (ue(ge))
          Ee = ge.map(function(E) {
            var kn = le(u, E);
            return ne(kn) ? null : kn;
          });
        else if (De(ge)) {
          var Je = Ue(ge), Qe = Je.length > 1 ? !1 : Je[0];
          if (Ge(Ta(z), Qe)) {
            var ot = gt[z];
            Qe === "$slice" ? Ft(ge[Qe]).every(he) ? (Ee = ot[Qe](u, ge[Qe], ie), q = !0) : Ee = le(u, ge, ie) : Ee = ot[Qe](u, ge[Qe], ie);
          } else if (mt(u, ie)) {
            Ye(ge);
            var Pt = u[ie];
            Ee = ue(Pt) ? Pt.map(function(E) {
              return Pe(E, ge, Je, !1);
            }) : Pe(Pt, ge, Je, !1);
          } else
            Ee = le(u, ge, ie);
        } else {
          ce.push(ie);
          return;
        }
        var pn = Dr(u, ie, {
          preserveMissingValues: !0
        });
        pn !== void 0 && Mr(O, pn, {
          flatten: !0
        }), pt([0, 1, !1, !0], ge) && (Ee === void 0 ? ka(O, ie) : ya(O, ie, Ee));
      }), Ds(O), (q || Z || M) && (O = Object.assign({}, u, O), ce.length > 0 && (O = _(O), Se(ce, function(ie) {
        return ka(O, ie);
      }))), O;
    }
    function Ye(u) {
      var d = Tr(), p = [!1, !1];
      Se(u, function(M, N) {
        N !== d && (M === 0 || M === !1 ? p[0] = !0 : (M === 1 || M === !0) && (p[1] = !0), F(!(p[0] && p[1]), "Projection cannot have a mix of inclusion and exclusion."));
      });
    }
    function Tt(u, d, p) {
      return u.map(function(M) {
        return Cs(_(M), d);
      });
    }
    function at(u, d, p) {
      return u.map(function(M) {
        return M = le(M, d.newRoot), F(De(M), "$replaceRoot expression must return an object"), M;
      });
    }
    function Wa(u, d, p) {
      var M = d.size;
      return F(he(M), "$sample size must be a positive integer"), u.transform(function(N) {
        var O = N.length, q = -1;
        return function() {
          if (++q === M) return {
            done: !0
          };
          var Z = Math.floor(Math.random() * O);
          return {
            value: N[Z],
            done: !1
          };
        };
      });
    }
    function wl(u, d, p) {
      return u.drop(d);
    }
    function on(u, d, p) {
      if (xt(d) || !De(d)) return u;
      p = p || {};
      var M = Kr, N = p.collation;
      return De(N) && be(N.locale) && (M = bl(N)), u.transform(function(O) {
        var q = Ue(d);
        return Se(q.reverse(), function(Z) {
          var ce = Es(O, function(ge) {
            return vn(ge, Z);
          }), ie = {}, Ee = js(ce.keys, function(ge, Je) {
            return ie[ge] = Je, ge;
          }, M);
          d[Z] === -1 && Ee.reverse(), O = [], Se(Ee, function(ge) {
            return _t(O, ce.groups[ie[ge]]);
          });
        }), O;
      });
    }
    var Xs = {
      // Only strings that differ in base letters compare as unequal. Examples: a ≠ b, a = á, a = A.
      1: "base",
      //  Only strings that differ in base letters or accents and other diacritic marks compare as unequal.
      // Examples: a ≠ b, a ≠ á, a = A.
      2: "accent",
      // Strings that differ in base letters, accents and other diacritic marks, or case compare as unequal.
      // Other differences may also be taken into consideration. Examples: a ≠ b, a ≠ á, a ≠ A
      3: "variant"
      // case - Only strings that differ in base letters or case compare as unequal. Examples: a ≠ b, a = á, a ≠ A.
    };
    function bl(u) {
      var d = {
        sensitivity: Xs[u.strength || 3],
        caseFirst: u.caseFirst === "off" ? "false" : u.caseFirst || "false",
        numeric: u.numericOrdering || !1,
        ignorePunctuation: u.alternate === "shifted"
      };
      (u.caseLevel || !1) === !0 && (d.sensitivity === "base" && (d.sensitivity = "case"), d.sensitivity === "accent" && (d.sensitivity = "variant"));
      var p = new Intl.Collator(u.locale, d);
      return function(M, N) {
        if (!be(M) || !be(N)) return Kr(M, N);
        var O = p.compare(M, N);
        return O < 0 ? -1 : O > 0 ? 1 : 0;
      };
    }
    function Hr(u, d, p) {
      var M = {
        count: {
          $sum: 1
        }
      };
      return M[Tr()] = d, on(yi(u, M), {
        count: -1
      }, p);
    }
    function Fs(u, d, p) {
      be(d) && (d = {
        path: d
      });
      var M = d.path.substr(1), N = d.includeArrayIndex || !1, O = d.preserveNullAndEmptyArrays || !1, q = function(ie, Ee) {
        return N !== !1 && (ie[N] = Ee), ie;
      }, Z;
      return nn(function() {
        for (var ce = function() {
          if (nn.isIterator(Z)) {
            var ge = Z.next();
            if (!ge.done) return {
              v: ge
            };
          }
          var Je = u.next();
          if (Je.done) return {
            v: Je
          };
          if (Je = Je.value, Z = vn(Je, M), ue(Z))
            if (Z.length === 0 && O === !0) {
              Z = null;
              var Qe = _(Je);
              return ka(Qe, M), {
                v: {
                  value: q(Qe, null),
                  done: !1
                }
              };
            } else
              Z = nn(Z).map(function(Pt, pn) {
                var E = _(Je);
                return ya(E, M, Pt), q(E, pn);
              });
          else if (!xt(Z) || O === !0) {
            var ot = _(Je);
            return {
              v: {
                value: q(ot, null),
                done: !1
              }
            };
          }
        }; ; ) {
          var ie = ce();
          if (r(ie) === "object") return ie.v;
        }
      });
    }
    var qs = /* @__PURE__ */ Object.freeze({
      __proto__: null,
      $addFields: hn,
      $set: vi,
      $bucket: pl,
      $bucketAuto: ml,
      $count: gl,
      $facet: xl,
      $group: yi,
      $limit: zr,
      $lookup: L,
      $match: re,
      $out: V,
      $project: we,
      $redact: Tt,
      $replaceRoot: at,
      $sample: Wa,
      $skip: wl,
      $sort: on,
      $sortByCount: Hr,
      $unwind: Fs
    });
    function $e(u, d, p) {
      ar("$ not implemented");
    }
    function vl(u, d, p) {
      var M = vn(u, p), N = new yn(d);
      F(ue(M), "$elemMatch: invalid argument");
      for (var O = 0; O < M.length; O++)
        if (N.test(M[O])) return [M[O]];
    }
    function ki(u, d, p) {
      var M = vn(u, p);
      return ue(M) ? ue(d) ? Ea(M, d[0], d[1]) : (F(he(d), "$slice: invalid arguments for projection"), Ea(M, d)) : M;
    }
    var Gs = /* @__PURE__ */ Object.freeze({
      __proto__: null,
      $: $e,
      $elemMatch: vl,
      $slice: ki
    });
    function Zt(u) {
      return function(d, p) {
        return function(M) {
          var N = vn(M, d, {
            meta: !0
          });
          return N = Er(N.result, N.depth), u(N, p);
        };
      };
    }
    var yl = Zt(_A), kl = Zt(ri), Ys = Zt(La), Wn = Zt(KA), Us = Zt(ei), Mi = Zt(ti), Js = Zt(_o), ji = Zt(it), Ei = Zt(st), Zs = Zt(WA), Di = Zt(Ko), es = Zt($o), or = Zt(VA), Ws = Zt(ni), Ml = Zt(St);
    function jl(u, d) {
      F(ue(d), "Invalid expression: $and expects value to be an Array");
      var p = [];
      return Se(d, function(M) {
        return p.push(new yn(M));
      }), function(M) {
        for (var N = 0; N < p.length; N++)
          if (!p[N].test(M))
            return !1;
        return !0;
      };
    }
    function Ti(u, d) {
      F(ue(d), "Invalid expression. $or expects value to be an Array");
      var p = [];
      return Se(d, function(M) {
        return p.push(new yn(M));
      }), function(M) {
        for (var N = 0; N < p.length; N++)
          if (p[N].test(M))
            return !0;
        return !1;
      };
    }
    function Vs(u, d) {
      F(ue(d), "Invalid expression. $nor expects value to be an Array");
      var p = Ti("$or", d);
      return function(M) {
        return !p(M);
      };
    }
    function Ks(u, d) {
      var p = {};
      p[u] = ja(d);
      var M = new yn(p);
      return function(N) {
        return !M.test(N);
      };
    }
    function Va(u, d) {
      return Ht(d) || (d = new Function("return " + d + ";")), function(p) {
        return d.call(p) === !0;
      };
    }
    function El(u, d) {
      return function(p) {
        return le(p, d);
      };
    }
    var Ni = /* @__PURE__ */ Object.freeze({
      __proto__: null,
      $all: yl,
      $elemMatch: kl,
      $eq: Ys,
      $exists: Wn,
      $gt: Us,
      $gte: Mi,
      $in: Js,
      $lt: ji,
      $lte: Ei,
      $mod: Zs,
      $ne: Di,
      $nin: es,
      $regex: or,
      $size: Ws,
      $type: Ml,
      $and: jl,
      $or: Ti,
      $nor: Vs,
      $not: Ks,
      $where: Va,
      $expr: El
    }), gt = {};
    gt[U] = {}, gt[te] = {}, gt[R] = {}, gt[z] = {}, gt[$] = {};
    var Dl = [[U, ll], [te, Or], [R, qs], [z, Gs], [$, Ni]];
    function Nt() {
      Se(Dl, function(u) {
        var d = v(u, 2), p = d[0], M = d[1];
        Object.assign(gt[p], M);
      });
    }
    function Gt(u, d) {
      var p = d(Ts());
      F(mt(gt, u), "Invalid operator class ".concat(u));
      var M = gt[u];
      Se(p, function(O, q) {
        F(/^\$[a-zA-Z0-9_]*$/.test(q), "Invalid operator name ".concat(q)), F(!mt(M, q), "".concat(q, " already exists for '").concat(u, "' operators"));
      });
      var N = {};
      switch (u) {
        case $:
          Se(p, function(O, q) {
            O = O.bind(p), N[q] = function(Z, ce) {
              return function(ie) {
                var Ee = vn(ie, Z), ge = O(Z, Ee, ce);
                return F(de(ge), "".concat(q, " must return a boolean")), ge;
              };
            };
          });
          break;
        case z:
          Se(p, function(O, q) {
            O = O.bind(p), N[q] = function(Z, ce, ie) {
              var Ee = vn(Z, ie);
              return O(ie, Ee, ce);
            };
          });
          break;
        default:
          Se(p, function(O, q) {
            N[q] = function() {
              for (var Z = arguments.length, ce = new Array(Z), ie = 0; ie < Z; ie++)
                ce[ie] = arguments[ie];
              return O.apply(p, ce);
            };
          });
      }
      Object.assign(gt[u], N);
    }
    var Tl = {
      /**
       * Runs a query and returns a cursor to the result
       * @param criteria
       * @param projection
       * @returns {Cursor}
       */
      query: function(d, p) {
        return new yn(d).find(this.toJSON(), p);
      },
      /**
       * Runs the given aggregation operators on this collection
       * @params pipeline
       * @returns {Array}
       */
      aggregate: function(d) {
        return new Ss(d).run(this.toJSON());
      }
    };
    Nt();
    var Nl = "2.5.3", Ci = {
      _internal: Ts,
      Aggregator: Ss,
      CollectionMixin: Tl,
      Cursor: Ra,
      Lazy: nn,
      OP_EXPRESSION: U,
      OP_GROUP: te,
      OP_PIPELINE: R,
      OP_PROJECTION: z,
      OP_QUERY: $,
      Query: yn,
      VERSION: Nl,
      addOperators: Gt,
      aggregate: Vo,
      find: Ba,
      remove: ZA,
      setup: Da
    };
    return Ci;
  });
})(nm);
var a5 = nm.exports, vu = {}, Jc = { exports: {} }, oh = {};
(function(e, n) {
  var r = function() {
    var o = function(R, z, $, K) {
      for ($ = $ || {}, K = R.length; K--; $[R[K]] = z) ;
      return $;
    }, l = [1, 5], c = [1, 7], v = [1, 8], w = [1, 6, 10], A = [1, 9], h = [1, 6, 8, 10], f = [1, 24], b = [1, 25], x = [1, 26], g = [1, 27], y = [1, 28], k = [1, 29], D = [1, 30], C = [1, 17], S = [1, 18], G = [1, 19], Q = [21, 22, 23, 24, 25, 29, 30], W = [1, 6, 8, 10, 18], J = [1, 47], Y = [6, 18], B = {
      trace: function() {
      },
      yy: {},
      symbols_: { error: 2, expressions: 3, expression: 4, andCondition: 5, OR: 6, filterExpr: 7, AND: 8, LPAREN: 9, RPAREN: 10, propExpr: 11, valueExpr: 12, PROP: 13, NOT: 14, REGEXPOP: 15, LBRACKET: 16, inExpr: 17, RBRACKET: 18, OP: 19, VALUE: 20, NULL: 21, TRUE: 22, FALSE: 23, NUMBER: 24, NOW: 25, DATEOP: 26, AMOUNT: 27, INTERVAL: 28, LITERAL: 29, STRING: 30, ADD: 31, SUB: 32, CONTAINS: 33, STARTSWITH: 34, ENDSWITH: 35, GT: 36, LT: 37, GTE: 38, LTE: 39, $accept: 0, $end: 1 },
      terminals_: { 2: "error", 6: "OR", 8: "AND", 9: "LPAREN", 10: "RPAREN", 13: "PROP", 14: "NOT", 16: "LBRACKET", 18: "RBRACKET", 21: "NULL", 22: "TRUE", 23: "FALSE", 24: "NUMBER", 25: "NOW", 27: "AMOUNT", 28: "INTERVAL", 29: "LITERAL", 30: "STRING", 31: "ADD", 32: "SUB", 33: "CONTAINS", 34: "STARTSWITH", 35: "ENDSWITH", 36: "GT", 37: "LT", 38: "GTE", 39: "LTE" },
      productions_: [0, [3, 1], [4, 1], [4, 3], [5, 1], [5, 3], [7, 3], [7, 2], [11, 1], [12, 2], [12, 1], [12, 4], [12, 3], [12, 2], [12, 1], [17, 3], [17, 1], [20, 1], [20, 1], [20, 1], [20, 1], [20, 4], [20, 1], [20, 1], [26, 1], [26, 1], [15, 2], [15, 2], [15, 2], [19, 1], [19, 1], [19, 1], [19, 1], [19, 1]],
      performAction: function(z, $, K, ee, F, _, fe, xe) {
        var I = _.length - 1;
        switch (F) {
          case 1:
            return ee.debug("expression", _[I]), ee.debug("opt", xe), _[I] && _[I].yg ? _[I].yg : _[I];
          case 2:
            ee.debug("andCondition", _[I]), this.$ = _[I];
            break;
          case 3:
            ee.debug("expression OR andCondition", _[I - 2], _[I]), _[I - 2] = _[I - 2].$or ? _[I - 2] : { $or: [ee.ungroup(_[I - 2])] }, _[I - 2].$or.push(ee.ungroup(_[I])), this.$ = _[I - 2];
            break;
          case 4:
            ee.debug("filterExpr", _[I]), this.$ = _[I];
            break;
          case 5:
            ee.debug("andCondition AND filterExpr", _[I - 2], _[I]), _[I - 2] = _[I - 2].$and ? _[I - 2] : { $and: [ee.ungroup(_[I - 2])] }, _[I - 2].$and.push(ee.ungroup(_[I])), this.$ = _[I - 2];
            break;
          case 6:
            ee.debug("LPAREN expression RPAREN", _[I - 1]), this.$ = { yg: _[I - 1] };
            break;
          case 7:
            this.$ = { [_[I - 1]]: _[I] };
            break;
          case 8:
            _[I] = _[I].replace(/:$/, ""), _[I] = xe.aliases && xe.aliases[_[I]] ? xe.aliases[_[I]] : _[I], this.$ = _[I];
            break;
          case 9:
            this.$ = { $not: _[I] };
            break;
          case 10:
            this.$ = { $regex: _[I] };
            break;
          case 11:
            this.$ = { $nin: _[I - 1] };
            break;
          case 12:
            this.$ = { $in: _[I - 1] };
            break;
          case 13:
            this.$ = {}, this.$[_[I - 1]] = _[I];
            break;
          case 14:
            this.$ = _[I];
            break;
          case 15:
            this.$.push(_[I]);
            break;
          case 16:
            this.$ = [_[I]];
            break;
          case 17:
            this.$ = null;
            break;
          case 18:
            this.$ = !0;
            break;
          case 19:
            this.$ = !1;
            break;
          case 20:
            this.$ = parseInt(z);
            break;
          case 21:
            this.$ = ee.relDateToAbsolute(_[I - 2], _[I - 1], _[I]);
            break;
          case 22:
            this.$ = ee.unescape(_[I]);
            break;
          case 23:
            _[I] = _[I].replace(/^'|'$/g, ""), this.$ = ee.unescape(_[I]);
            break;
          case 24:
            this.$ = "add";
            break;
          case 25:
            this.$ = "sub";
            break;
          case 26:
            _[I] = _[I].replace(/^'|'$/g, ""), _[I] = ee.unescape(_[I]), this.$ = ee.stringToRegExp(_[I]);
            break;
          case 27:
            _[I] = _[I].replace(/^'|'$/g, ""), _[I] = ee.unescape(_[I]), this.$ = ee.stringToRegExp(_[I], "^");
            break;
          case 28:
            _[I] = _[I].replace(/^'|'$/g, ""), _[I] = ee.unescape(_[I]), this.$ = ee.stringToRegExp(_[I], "$");
            break;
          case 29:
            this.$ = "$ne";
            break;
          case 30:
            this.$ = "$gt";
            break;
          case 31:
            this.$ = "$lt";
            break;
          case 32:
            this.$ = "$gte";
            break;
          case 33:
            this.$ = "$lte";
            break;
        }
      },
      table: [{ 3: 1, 4: 2, 5: 3, 7: 4, 9: l, 11: 6, 13: c }, { 1: [3] }, { 1: [2, 1], 6: v }, o(w, [2, 2], { 8: A }), o(h, [2, 4]), { 4: 10, 5: 3, 7: 4, 9: l, 11: 6, 13: c }, { 12: 11, 14: [1, 12], 15: 13, 16: [1, 14], 19: 15, 20: 16, 21: f, 22: b, 23: x, 24: g, 25: y, 29: k, 30: D, 33: C, 34: S, 35: G, 36: [1, 20], 37: [1, 21], 38: [1, 22], 39: [1, 23] }, o([14, 16, 21, 22, 23, 24, 25, 29, 30, 33, 34, 35, 36, 37, 38, 39], [2, 8]), { 5: 31, 7: 4, 9: l, 11: 6, 13: c }, { 7: 32, 9: l, 11: 6, 13: c }, { 6: v, 10: [1, 33] }, o(h, [2, 7]), o(Q, [2, 29], { 15: 34, 16: [1, 35], 33: C, 34: S, 35: G }), o(h, [2, 10]), { 17: 36, 20: 37, 21: f, 22: b, 23: x, 24: g, 25: y, 29: k, 30: D }, { 20: 38, 21: f, 22: b, 23: x, 24: g, 25: y, 29: k, 30: D }, o(h, [2, 14]), { 30: [1, 39] }, { 30: [1, 40] }, { 30: [1, 41] }, o(Q, [2, 30]), o(Q, [2, 31]), o(Q, [2, 32]), o(Q, [2, 33]), o(W, [2, 17]), o(W, [2, 18]), o(W, [2, 19]), o(W, [2, 20]), { 26: 42, 31: [1, 43], 32: [1, 44] }, o(W, [2, 22]), o(W, [2, 23]), o(w, [2, 3], { 8: A }), o(h, [2, 5]), o(h, [2, 6]), o(h, [2, 9]), { 17: 45, 20: 37, 21: f, 22: b, 23: x, 24: g, 25: y, 29: k, 30: D }, { 6: J, 18: [1, 46] }, o(Y, [2, 16]), o(h, [2, 13]), o(h, [2, 26]), o(h, [2, 27]), o(h, [2, 28]), { 27: [1, 48] }, { 27: [2, 24] }, { 27: [2, 25] }, { 6: J, 18: [1, 49] }, o(h, [2, 12]), { 20: 50, 21: f, 22: b, 23: x, 24: g, 25: y, 29: k, 30: D }, { 28: [1, 51] }, o(h, [2, 11]), o(Y, [2, 15]), o(W, [2, 21])],
      defaultActions: { 43: [2, 24], 44: [2, 25] },
      parseError: function(z, $) {
        if ($.recoverable)
          this.trace(z);
        else {
          var K = new Error(z);
          throw K.hash = $, K;
        }
      },
      parse: function(z) {
        var $ = this, K = [0], ee = [null], F = [], _ = this.table, fe = "", xe = 0, I = 0, de = 2, be = 1, he = F.slice.call(arguments, 1), ue = Object.create(this.lexer), De = { yy: {} };
        for (var ft in this.yy)
          Object.prototype.hasOwnProperty.call(this.yy, ft) && (De.yy[ft] = this.yy[ft]);
        ue.setInput(z, De.yy), De.yy.lexer = ue, De.yy.parser = this, typeof ue.yylloc > "u" && (ue.yylloc = {});
        var Jt = ue.yylloc;
        F.push(Jt);
        var Qt = ue.options && ue.options.ranges;
        typeof De.yy.parseError == "function" ? this.parseError = De.yy.parseError : this.parseError = Object.getPrototypeOf(this).parseError;
        for (var Ht = function() {
          var Ue;
          return Ue = ue.lex() || be, typeof Ue != "number" && (Ue = $.symbols_[Ue] || Ue), Ue;
        }, ne, Me, Ne, Ge, pt = {}, Xt, xt, Ft, mt; ; ) {
          if (Me = K[K.length - 1], this.defaultActions[Me] ? Ne = this.defaultActions[Me] : ((ne === null || typeof ne > "u") && (ne = Ht()), Ne = _[Me] && _[Me][ne]), typeof Ne > "u" || !Ne.length || !Ne[0]) {
            var ar = "";
            mt = [];
            for (Xt in _[Me])
              this.terminals_[Xt] && Xt > de && mt.push("'" + this.terminals_[Xt] + "'");
            ue.showPosition ? ar = "Parse error on line " + (xe + 1) + `:
` + ue.showPosition() + `
Expecting ` + mt.join(", ") + ", got '" + (this.terminals_[ne] || ne) + "'" : ar = "Parse error on line " + (xe + 1) + ": Unexpected " + (ne == be ? "end of input" : "'" + (this.terminals_[ne] || ne) + "'"), this.parseError(ar, {
              text: ue.match,
              token: this.terminals_[ne] || ne,
              line: ue.yylineno,
              loc: Jt,
              expected: mt
            });
          }
          if (Ne[0] instanceof Array && Ne.length > 1)
            throw new Error("Parse Error: multiple actions possible at state: " + Me + ", token: " + ne);
          switch (Ne[0]) {
            case 1:
              K.push(ne), ee.push(ue.yytext), F.push(ue.yylloc), K.push(Ne[1]), ne = null, I = ue.yyleng, fe = ue.yytext, xe = ue.yylineno, Jt = ue.yylloc;
              break;
            case 2:
              if (xt = this.productions_[Ne[1]][1], pt.$ = ee[ee.length - xt], pt._$ = {
                first_line: F[F.length - (xt || 1)].first_line,
                last_line: F[F.length - 1].last_line,
                first_column: F[F.length - (xt || 1)].first_column,
                last_column: F[F.length - 1].last_column
              }, Qt && (pt._$.range = [
                F[F.length - (xt || 1)].range[0],
                F[F.length - 1].range[1]
              ]), Ge = this.performAction.apply(pt, [
                fe,
                I,
                xe,
                De.yy,
                Ne[1],
                ee,
                F
              ].concat(he)), typeof Ge < "u")
                return Ge;
              xt && (K = K.slice(0, -1 * xt * 2), ee = ee.slice(0, -1 * xt), F = F.slice(0, -1 * xt)), K.push(this.productions_[Ne[1]][0]), ee.push(pt.$), F.push(pt._$), Ft = _[K[K.length - 2]][K[K.length - 1]], K.push(Ft);
              break;
            case 3:
              return !0;
          }
        }
        return !0;
      }
    };
    B.parseError = function(R, z) {
      var $ = R.split(`
`);
      throw $[0] = "Query Error: unexpected character in filter at char " + (z.loc.first_column + 1), new Error($.join(`
`));
    };
    var U = function() {
      var R = {
        EOF: 1,
        parseError: function($, K) {
          if (this.yy.parser)
            this.yy.parser.parseError($, K);
          else
            throw new Error($);
        },
        // resets the lexer, sets new input
        setInput: function(z, $) {
          return this.yy = $ || this.yy || {}, this._input = z, this._more = this._backtrack = this.done = !1, this.yylineno = this.yyleng = 0, this.yytext = this.matched = this.match = "", this.conditionStack = ["INITIAL"], this.yylloc = {
            first_line: 1,
            first_column: 0,
            last_line: 1,
            last_column: 0
          }, this.options.ranges && (this.yylloc.range = [0, 0]), this.offset = 0, this;
        },
        // consumes and returns one char from the input
        input: function() {
          var z = this._input[0];
          this.yytext += z, this.yyleng++, this.offset++, this.match += z, this.matched += z;
          var $ = z.match(/(?:\r\n?|\n).*/g);
          return $ ? (this.yylineno++, this.yylloc.last_line++) : this.yylloc.last_column++, this.options.ranges && this.yylloc.range[1]++, this._input = this._input.slice(1), z;
        },
        // unshifts one char (or a string) into the input
        unput: function(z) {
          var $ = z.length, K = z.split(/(?:\r\n?|\n)/g);
          this._input = z + this._input, this.yytext = this.yytext.substr(0, this.yytext.length - $), this.offset -= $;
          var ee = this.match.split(/(?:\r\n?|\n)/g);
          this.match = this.match.substr(0, this.match.length - 1), this.matched = this.matched.substr(0, this.matched.length - 1), K.length - 1 && (this.yylineno -= K.length - 1);
          var F = this.yylloc.range;
          return this.yylloc = {
            first_line: this.yylloc.first_line,
            last_line: this.yylineno + 1,
            first_column: this.yylloc.first_column,
            last_column: K ? (K.length === ee.length ? this.yylloc.first_column : 0) + ee[ee.length - K.length].length - K[0].length : this.yylloc.first_column - $
          }, this.options.ranges && (this.yylloc.range = [F[0], F[0] + this.yyleng - $]), this.yyleng = this.yytext.length, this;
        },
        // When called from action, caches matched text and appends it on next action
        more: function() {
          return this._more = !0, this;
        },
        // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead.
        reject: function() {
          if (this.options.backtrack_lexer)
            this._backtrack = !0;
          else
            return this.parseError("Lexical error on line " + (this.yylineno + 1) + `. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
` + this.showPosition(), {
              text: "",
              token: null,
              line: this.yylineno
            });
          return this;
        },
        // retain first n characters of the match
        less: function(z) {
          this.unput(this.match.slice(z));
        },
        // displays already matched input, i.e. for error messages
        pastInput: function() {
          var z = this.matched.substr(0, this.matched.length - this.match.length);
          return (z.length > 20 ? "..." : "") + z.substr(-20).replace(/\n/g, "");
        },
        // displays upcoming input, i.e. for error messages
        upcomingInput: function() {
          var z = this.match;
          return z.length < 20 && (z += this._input.substr(0, 20 - z.length)), (z.substr(0, 20) + (z.length > 20 ? "..." : "")).replace(/\n/g, "");
        },
        // displays the character position where the lexing error occurred, i.e. for error messages
        showPosition: function() {
          var z = this.pastInput(), $ = new Array(z.length + 1).join("-");
          return z + this.upcomingInput() + `
` + $ + "^";
        },
        // test the lexed token: return FALSE when not a match, otherwise return token
        test_match: function(z, $) {
          var K, ee, F;
          if (this.options.backtrack_lexer && (F = {
            yylineno: this.yylineno,
            yylloc: {
              first_line: this.yylloc.first_line,
              last_line: this.last_line,
              first_column: this.yylloc.first_column,
              last_column: this.yylloc.last_column
            },
            yytext: this.yytext,
            match: this.match,
            matches: this.matches,
            matched: this.matched,
            yyleng: this.yyleng,
            offset: this.offset,
            _more: this._more,
            _input: this._input,
            yy: this.yy,
            conditionStack: this.conditionStack.slice(0),
            done: this.done
          }, this.options.ranges && (F.yylloc.range = this.yylloc.range.slice(0))), ee = z[0].match(/(?:\r\n?|\n).*/g), ee && (this.yylineno += ee.length), this.yylloc = {
            first_line: this.yylloc.last_line,
            last_line: this.yylineno + 1,
            first_column: this.yylloc.last_column,
            last_column: ee ? ee[ee.length - 1].length - ee[ee.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + z[0].length
          }, this.yytext += z[0], this.match += z[0], this.matches = z, this.yyleng = this.yytext.length, this.options.ranges && (this.yylloc.range = [this.offset, this.offset += this.yyleng]), this._more = !1, this._backtrack = !1, this._input = this._input.slice(z[0].length), this.matched += z[0], K = this.performAction.call(this, this.yy, this, $, this.conditionStack[this.conditionStack.length - 1]), this.done && this._input && (this.done = !1), K)
            return K;
          if (this._backtrack) {
            for (var _ in F)
              this[_] = F[_];
            return !1;
          }
          return !1;
        },
        // return next match in input
        next: function() {
          if (this.done)
            return this.EOF;
          this._input || (this.done = !0);
          var z, $, K, ee;
          this._more || (this.yytext = "", this.match = "");
          for (var F = this._currentRules(), _ = 0; _ < F.length; _++)
            if (K = this._input.match(this.rules[F[_]]), K && (!$ || K[0].length > $[0].length)) {
              if ($ = K, ee = _, this.options.backtrack_lexer) {
                if (z = this.test_match(K, F[_]), z !== !1)
                  return z;
                if (this._backtrack) {
                  $ = !1;
                  continue;
                } else
                  return !1;
              } else if (!this.options.flex)
                break;
            }
          return $ ? (z = this.test_match($, F[ee]), z !== !1 ? z : !1) : this._input === "" ? this.EOF : this.parseError("Lexical error on line " + (this.yylineno + 1) + `. Unrecognized text.
` + this.showPosition(), {
            text: "",
            token: null,
            line: this.yylineno
          });
        },
        // return next match that has a token
        lex: function() {
          var $ = this.next();
          return $ || this.lex();
        },
        // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)
        begin: function($) {
          this.conditionStack.push($);
        },
        // pop the previously active lexer condition state off the condition stack
        popState: function() {
          var $ = this.conditionStack.length - 1;
          return $ > 0 ? this.conditionStack.pop() : this.conditionStack[0];
        },
        // produce the lexer rule set which is active for the currently active lexer condition state
        _currentRules: function() {
          return this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1] ? this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules : this.conditions.INITIAL.rules;
        },
        // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available
        topState: function($) {
          return $ = this.conditionStack.length - 1 - Math.abs($ || 0), $ >= 0 ? this.conditionStack[$] : "INITIAL";
        },
        // alias for begin(condition)
        pushState: function($) {
          this.begin($);
        },
        // return the number of states currently on the stack
        stateStackSize: function() {
          return this.conditionStack.length;
        },
        options: {},
        performAction: function($, K, ee, F) {
          switch (ee) {
            case 0:
              break;
            case 1:
              return 21;
            case 2:
              return 22;
            case 3:
              return 23;
            case 4:
              return 13;
            case 5:
              return 24;
            case 6:
              return 16;
            case 7:
              return 18;
            case 8:
              return this.pushState("reldate"), 25;
            case 9:
              return 32;
            case 10:
              return 31;
            case 11:
              return 27;
            case 12:
              return this.popState(), 28;
            case 13:
              return 29;
            case 14:
              return 30;
            case 15:
              return 9;
            case 16:
              return 10;
            case 17:
              return 6;
            case 18:
              return 8;
            case 19:
              return 14;
            case 20:
              return 38;
            case 21:
              return 39;
            case 22:
              return 36;
            case 23:
              return 37;
            case 24:
              return 34;
            case 25:
              return 35;
            case 26:
              return 33;
            case 27:
              return 29;
          }
        },
        rules: [/^(?:\s+)/, /^(?:(?:null|NULL|Null)(?!(\\(['"\+\,\(\)\>\<=\[\]\~\^\$])|([^\s'"\+\,\(\)\>\<=\[\]\~]))+))/, /^(?:(?:true|TRUE|True)(?!(\\(['"\+\,\(\)\>\<=\[\]\~\^\$])|([^\s'"\+\,\(\)\>\<=\[\]\~]))+))/, /^(?:(?:false|FALSE|False)(?!(\\(['"\+\,\(\)\>\<=\[\]\~\^\$])|([^\s'"\+\,\(\)\>\<=\[\]\~]))+))/, /^(?:[a-zA-Z_][a-zA-Z0-9_\.]*[:])/, /^(?:[0-9]+(\.[0-9]+)?\b(?![\-]))/, /^(?:\[)/, /^(?:\])/, /^(?:now(?=[-+]\d+[dwMyhms](?:([\+\,\(\)\[\]])|$)))/, /^(?:-)/, /^(?:\+)/, /^(?:\d+)/, /^(?:[dwMyhms])/, /^(?:([^\s'"\+\,\(\)\>\<=\[\]\~\-])(\\(['"\+\,\(\)\>\<=\[\]\~\^\$])|([^\s'"\+\,\(\)\>\<=\[\]\~]))+)/, /^(?:['](\\['"]|[^'"])+?['])/, /^(?:\()/, /^(?:\))/, /^(?:,)/, /^(?:\+)/, /^(?:-)/, /^(?:>=)/, /^(?:<=)/, /^(?:>)/, /^(?:<)/, /^(?:~\^)/, /^(?:~\$)/, /^(?:~)/, /^(?:([a-zA-Z])(?![a-zA-Z'"\,\(\)\>\<=\[\]\~]))/],
        conditions: { reldate: { rules: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27], inclusive: !0 }, INITIAL: { rules: [0, 1, 2, 3, 4, 5, 6, 7, 8, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27], inclusive: !0 } }
      };
      return R.parseError = function(z, $) {
        var K = z.split(`
`), ee, F;
        throw ee = K[2].indexOf("^"), F = K[1].charAt(ee), K[0] = 'Query Error: unrecognized text "' + F + '" in filter at char ' + (ee + 1), Error(K.join(`
`));
      }, R;
    }();
    B.lexer = U;
    function te() {
      this.yy = {};
    }
    return te.prototype = B, B.Parser = te, new te();
  }();
  typeof o3 < "u" && (n.parser = r, n.Parser = r.Parser, n.parse = function() {
    return r.parse.apply(r, arguments);
  }, n.main = function(l) {
    l[1] || (console.log("Usage: " + l[0] + " FILE"), process.exit(1));
    var c = oh.readFileSync(oh.normalize(l[1]), "utf8");
    return n.parser.parse(c);
  }, require.main === e && n.main(process.argv.slice(1)));
})(Jc, Jc.exports);
var o5 = Jc.exports;
function Ut(e) {
  if (e === null || e === !0 || e === !1)
    return NaN;
  var n = Number(e);
  return isNaN(n) ? n : n < 0 ? Math.ceil(n) : Math.floor(n);
}
function Ms(e, n) {
  if (n.length < e)
    throw new TypeError(e + " argument" + (e > 1 ? "s" : "") + " required, but only " + n.length + " present");
}
function yu(e) {
  Ms(1, arguments);
  var n = Object.prototype.toString.call(e);
  return e instanceof Date || au(e) === "object" && n === "[object Date]" ? new Date(e.getTime()) : typeof e == "number" || n === "[object Number]" ? new Date(e) : ((typeof e == "string" || n === "[object String]") && typeof console < "u" && (console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments"), console.warn(new Error().stack)), /* @__PURE__ */ new Date(NaN));
}
function rm(e, n) {
  Ms(2, arguments);
  var r = yu(e), o = Ut(n);
  return isNaN(o) ? /* @__PURE__ */ new Date(NaN) : (o && r.setDate(r.getDate() + o), r);
}
function sm(e, n) {
  Ms(2, arguments);
  var r = yu(e), o = Ut(n);
  if (isNaN(o))
    return /* @__PURE__ */ new Date(NaN);
  if (!o)
    return r;
  var l = r.getDate(), c = new Date(r.getTime());
  c.setMonth(r.getMonth() + o + 1, 0);
  var v = c.getDate();
  return l >= v ? c : (r.setFullYear(c.getFullYear(), c.getMonth(), l), r);
}
function i5(e, n) {
  if (Ms(2, arguments), !n || au(n) !== "object") return /* @__PURE__ */ new Date(NaN);
  var r = n.years ? Ut(n.years) : 0, o = n.months ? Ut(n.months) : 0, l = n.weeks ? Ut(n.weeks) : 0, c = n.days ? Ut(n.days) : 0, v = n.hours ? Ut(n.hours) : 0, w = n.minutes ? Ut(n.minutes) : 0, A = n.seconds ? Ut(n.seconds) : 0, h = yu(e), f = o || r ? sm(h, o + r * 12) : h, b = c || l ? rm(f, c + l * 7) : f, x = w + v * 60, g = A + x * 60, y = g * 1e3, k = new Date(b.getTime() + y);
  return k;
}
const A5 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: i5
}, Symbol.toStringTag, { value: "Module" })), l5 = /* @__PURE__ */ Sh(A5);
function c5(e, n) {
  Ms(2, arguments);
  var r = Ut(n);
  return rm(e, -r);
}
function u5(e, n) {
  Ms(2, arguments);
  var r = Ut(n);
  return sm(e, -r);
}
function f5(e, n) {
  if (Ms(2, arguments), !n || au(n) !== "object") return /* @__PURE__ */ new Date(NaN);
  var r = n.years ? Ut(n.years) : 0, o = n.months ? Ut(n.months) : 0, l = n.weeks ? Ut(n.weeks) : 0, c = n.days ? Ut(n.days) : 0, v = n.hours ? Ut(n.hours) : 0, w = n.minutes ? Ut(n.minutes) : 0, A = n.seconds ? Ut(n.seconds) : 0, h = u5(e, o + r * 12), f = c5(h, c + l * 7), b = w + v * 60, x = A + b * 60, g = x * 1e3, y = new Date(f.getTime() - g);
  return y;
}
const d5 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: f5
}, Symbol.toStringTag, { value: "Module" })), h5 = /* @__PURE__ */ Sh(d5), p5 = l5, m5 = h5, g5 = {
  add: p5,
  sub: m5
}, x5 = {
  d: "days",
  w: "weeks",
  M: "months",
  y: "years",
  h: "hours",
  m: "minutes",
  s: "seconds"
}, w5 = (e) => e.toISOString().replace("T", " ").replace(/\.[0-9]{3}Z/, "");
var b5 = {
  ungroup(e) {
    return e.yg ? e.yg : e;
  },
  unescape(e) {
    const n = new RegExp(`\\\\(['"])`, "g");
    return e.replace(n, "$1");
  },
  stringToRegExp(e, n) {
    let r = e.replace(/[.*+?^$(){}|[\]\\]/g, "\\$&");
    return n === "^" ? r = "^" + r : n === "$" && (r = r + "$"), new RegExp(r, "i");
  },
  relDateToAbsolute(e, n, r) {
    const o = /* @__PURE__ */ new Date(), l = g5[e](o, { [x5[r]]: n });
    return w5(l);
  },
  debug() {
  }
};
const Gr = o5.parser;
Gr.yy = b5;
vu.lex = (e) => {
  Gr.lexer.setInput(e);
  let n = Gr.lexer.lex();
  const r = [];
  for (; n !== Gr.lexer.EOF; )
    r.push({ token: Gr.terminals_[n], matched: Gr.lexer.match }), n = Gr.lexer.lex();
  return r;
};
vu.parse = (e, n) => Gr.parse(e, n || {});
var am = vu, pA = { exports: {} };
/**
 * @license
 * Lodash <https://lodash.com/>
 * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
 * Released under MIT license <https://lodash.com/license>
 * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
 * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
 */
pA.exports;
(function(e, n) {
  (function() {
    var r, o = "4.17.21", l = 200, c = "Unsupported core-js use. Try https://npms.io/search?q=ponyfill.", v = "Expected a function", w = "Invalid `variable` option passed into `_.template`", A = "__lodash_hash_undefined__", h = 500, f = "__lodash_placeholder__", b = 1, x = 2, g = 4, y = 1, k = 2, D = 1, C = 2, S = 4, G = 8, Q = 16, W = 32, J = 64, Y = 128, B = 256, U = 512, te = 30, R = "...", z = 800, $ = 16, K = 1, ee = 2, F = 3, _ = 1 / 0, fe = 9007199254740991, xe = 17976931348623157e292, I = NaN, de = 4294967295, be = de - 1, he = de >>> 1, ue = [
      ["ary", Y],
      ["bind", D],
      ["bindKey", C],
      ["curry", G],
      ["curryRight", Q],
      ["flip", U],
      ["partial", W],
      ["partialRight", J],
      ["rearg", B]
    ], De = "[object Arguments]", ft = "[object Array]", Jt = "[object AsyncFunction]", Qt = "[object Boolean]", Ht = "[object Date]", ne = "[object DOMException]", Me = "[object Error]", Ne = "[object Function]", Ge = "[object GeneratorFunction]", pt = "[object Map]", Xt = "[object Number]", xt = "[object Null]", Ft = "[object Object]", mt = "[object Promise]", ar = "[object Proxy]", Ue = "[object RegExp]", Se = "[object Set]", kr = "[object String]", Mr = "[object Symbol]", qt = "[object Undefined]", Sn = "[object WeakMap]", TA = "[object WeakSet]", jr = "[object ArrayBuffer]", Er = "[object DataView]", Yn = "[object Float32Array]", Vr = "[object Float64Array]", Un = "[object Int8Array]", Nn = "[object Int16Array]", Kr = "[object Int32Array]", js = "[object Uint8Array]", Es = "[object Uint8ClampedArray]", _t = "[object Uint16Array]", wa = "[object Uint32Array]", NA = /\b__p \+= '';/g, ba = /\b(__p \+=) '' \+/g, vn = /(__e\(.*?\)|\b__t\)) \+\n'';/g, Dr = /&(?:amp|lt|gt|quot|#39);/g, Ds = /[&<>"']/g, va = RegExp(Dr.source), ya = RegExp(Ds.source), ka = /<%-([\s\S]+?)%>/g, Ma = /<%([\s\S]+?)%>/g, ja = /<%=([\s\S]+?)%>/g, Ea = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, No = /^\w*$/, CA = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g, Ts = /[\\^$.*+?()[\]{}|]/g, Co = RegExp(Ts.source), Da = /^\s+/, Io = /\s/, Po = /\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/, Oo = /\{\n\/\* \[wrapped with (.+)\] \*/, zo = /,? & /, Tr = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g, Ta = /[()=,{}\[\]\/\s]/, Ns = /\\(\\)?/g, le = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g, Cs = /\w*$/, IA = /^[-+]0x[0-9a-f]+$/i, PA = /^0b[01]+$/i, OA = /^\[object .+?Constructor\]$/, zA = /^0o[0-7]+$/i, HA = /^(?:0|[1-9]\d*)$/, SA = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g, Is = /($^)/, RA = /['\n\r\u2028\u2029\\]/g, Ps = "\\ud800-\\udfff", BA = "\\u0300-\\u036f", LA = "\\ufe20-\\ufe2f", QA = "\\u20d0-\\u20ff", Ho = BA + LA + QA, So = "\\u2700-\\u27bf", Ro = "a-z\\xdf-\\xf6\\xf8-\\xff", XA = "\\xac\\xb1\\xd7\\xf7", Bo = "\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf", FA = "\\u2000-\\u206f", qA = " \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000", Lo = "A-Z\\xc0-\\xd6\\xd8-\\xde", Qo = "\\ufe0e\\ufe0f", Xo = XA + Bo + FA + qA, Na = "['’]", GA = "[" + Ps + "]", Fo = "[" + Xo + "]", Os = "[" + Ho + "]", qo = "\\d+", YA = "[" + So + "]", Go = "[" + Ro + "]", Yo = "[^" + Ps + Xo + qo + So + Ro + Lo + "]", Ca = "\\ud83c[\\udffb-\\udfff]", UA = "(?:" + Os + "|" + Ca + ")", Uo = "[^" + Ps + "]", Ia = "(?:\\ud83c[\\udde6-\\uddff]){2}", Pa = "[\\ud800-\\udbff][\\udc00-\\udfff]", Nr = "[" + Lo + "]", nn = "\\u200d", Oa = "(?:" + Go + "|" + Yo + ")", za = "(?:" + Nr + "|" + Yo + ")", Jo = "(?:" + Na + "(?:d|ll|m|re|s|t|ve))?", zs = "(?:" + Na + "(?:D|LL|M|RE|S|T|VE))?", Ha = UA + "?", Sa = "[" + Qo + "]?", Zo = "(?:" + nn + "(?:" + [Uo, Ia, Pa].join("|") + ")" + Sa + Ha + ")*", Wo = "\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])", JA = "\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])", Hs = Sa + Ha + Zo, Ss = "(?:" + [YA, Ia, Pa].join("|") + ")" + Hs, Vo = "(?:" + [Uo + Os + "?", Os, Ia, Pa, GA].join("|") + ")", Ra = RegExp(Na, "g"), yn = RegExp(Os, "g"), Ba = RegExp(Ca + "(?=" + Ca + ")|" + Vo + Hs, "g"), ZA = RegExp([
      Nr + "?" + Go + "+" + Jo + "(?=" + [Fo, Nr, "$"].join("|") + ")",
      za + "+" + zs + "(?=" + [Fo, Nr + Oa, "$"].join("|") + ")",
      Nr + "?" + Oa + "+" + Jo,
      Nr + "+" + zs,
      JA,
      Wo,
      qo,
      Ss
    ].join("|"), "g"), La = RegExp("[" + nn + Ps + Ho + Qo + "]"), Ko = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/, _o = [
      "Array",
      "Buffer",
      "DataView",
      "Date",
      "Error",
      "Float32Array",
      "Float64Array",
      "Function",
      "Int8Array",
      "Int16Array",
      "Int32Array",
      "Map",
      "Math",
      "Object",
      "Promise",
      "RegExp",
      "Set",
      "String",
      "Symbol",
      "TypeError",
      "Uint8Array",
      "Uint8ClampedArray",
      "Uint16Array",
      "Uint32Array",
      "WeakMap",
      "_",
      "clearTimeout",
      "isFinite",
      "parseInt",
      "setTimeout"
    ], $o = -1, it = {};
    it[Yn] = it[Vr] = it[Un] = it[Nn] = it[Kr] = it[js] = it[Es] = it[_t] = it[wa] = !0, it[De] = it[ft] = it[jr] = it[Qt] = it[Er] = it[Ht] = it[Me] = it[Ne] = it[pt] = it[Xt] = it[Ft] = it[Ue] = it[Se] = it[kr] = it[Sn] = !1;
    var st = {};
    st[De] = st[ft] = st[jr] = st[Er] = st[Qt] = st[Ht] = st[Yn] = st[Vr] = st[Un] = st[Nn] = st[Kr] = st[pt] = st[Xt] = st[Ft] = st[Ue] = st[Se] = st[kr] = st[Mr] = st[js] = st[Es] = st[_t] = st[wa] = !0, st[Me] = st[Ne] = st[Sn] = !1;
    var ei = {
      // Latin-1 Supplement block.
      À: "A",
      Á: "A",
      Â: "A",
      Ã: "A",
      Ä: "A",
      Å: "A",
      à: "a",
      á: "a",
      â: "a",
      ã: "a",
      ä: "a",
      å: "a",
      Ç: "C",
      ç: "c",
      Ð: "D",
      ð: "d",
      È: "E",
      É: "E",
      Ê: "E",
      Ë: "E",
      è: "e",
      é: "e",
      ê: "e",
      ë: "e",
      Ì: "I",
      Í: "I",
      Î: "I",
      Ï: "I",
      ì: "i",
      í: "i",
      î: "i",
      ï: "i",
      Ñ: "N",
      ñ: "n",
      Ò: "O",
      Ó: "O",
      Ô: "O",
      Õ: "O",
      Ö: "O",
      Ø: "O",
      ò: "o",
      ó: "o",
      ô: "o",
      õ: "o",
      ö: "o",
      ø: "o",
      Ù: "U",
      Ú: "U",
      Û: "U",
      Ü: "U",
      ù: "u",
      ú: "u",
      û: "u",
      ü: "u",
      Ý: "Y",
      ý: "y",
      ÿ: "y",
      Æ: "Ae",
      æ: "ae",
      Þ: "Th",
      þ: "th",
      ß: "ss",
      // Latin Extended-A block.
      Ā: "A",
      Ă: "A",
      Ą: "A",
      ā: "a",
      ă: "a",
      ą: "a",
      Ć: "C",
      Ĉ: "C",
      Ċ: "C",
      Č: "C",
      ć: "c",
      ĉ: "c",
      ċ: "c",
      č: "c",
      Ď: "D",
      Đ: "D",
      ď: "d",
      đ: "d",
      Ē: "E",
      Ĕ: "E",
      Ė: "E",
      Ę: "E",
      Ě: "E",
      ē: "e",
      ĕ: "e",
      ė: "e",
      ę: "e",
      ě: "e",
      Ĝ: "G",
      Ğ: "G",
      Ġ: "G",
      Ģ: "G",
      ĝ: "g",
      ğ: "g",
      ġ: "g",
      ģ: "g",
      Ĥ: "H",
      Ħ: "H",
      ĥ: "h",
      ħ: "h",
      Ĩ: "I",
      Ī: "I",
      Ĭ: "I",
      Į: "I",
      İ: "I",
      ĩ: "i",
      ī: "i",
      ĭ: "i",
      į: "i",
      ı: "i",
      Ĵ: "J",
      ĵ: "j",
      Ķ: "K",
      ķ: "k",
      ĸ: "k",
      Ĺ: "L",
      Ļ: "L",
      Ľ: "L",
      Ŀ: "L",
      Ł: "L",
      ĺ: "l",
      ļ: "l",
      ľ: "l",
      ŀ: "l",
      ł: "l",
      Ń: "N",
      Ņ: "N",
      Ň: "N",
      Ŋ: "N",
      ń: "n",
      ņ: "n",
      ň: "n",
      ŋ: "n",
      Ō: "O",
      Ŏ: "O",
      Ő: "O",
      ō: "o",
      ŏ: "o",
      ő: "o",
      Ŕ: "R",
      Ŗ: "R",
      Ř: "R",
      ŕ: "r",
      ŗ: "r",
      ř: "r",
      Ś: "S",
      Ŝ: "S",
      Ş: "S",
      Š: "S",
      ś: "s",
      ŝ: "s",
      ş: "s",
      š: "s",
      Ţ: "T",
      Ť: "T",
      Ŧ: "T",
      ţ: "t",
      ť: "t",
      ŧ: "t",
      Ũ: "U",
      Ū: "U",
      Ŭ: "U",
      Ů: "U",
      Ű: "U",
      Ų: "U",
      ũ: "u",
      ū: "u",
      ŭ: "u",
      ů: "u",
      ű: "u",
      ų: "u",
      Ŵ: "W",
      ŵ: "w",
      Ŷ: "Y",
      ŷ: "y",
      Ÿ: "Y",
      Ź: "Z",
      Ż: "Z",
      Ž: "Z",
      ź: "z",
      ż: "z",
      ž: "z",
      IJ: "IJ",
      ij: "ij",
      Œ: "Oe",
      œ: "oe",
      ʼn: "'n",
      ſ: "s"
    }, ti = {
      "&": "&amp;",
      "<": "&lt;",
      ">": "&gt;",
      '"': "&quot;",
      "'": "&#39;"
    }, WA = {
      "&amp;": "&",
      "&lt;": "<",
      "&gt;": ">",
      "&quot;": '"',
      "&#39;": "'"
    }, VA = {
      "\\": "\\",
      "'": "'",
      "\n": "n",
      "\r": "r",
      "\u2028": "u2028",
      "\u2029": "u2029"
    }, KA = parseFloat, _A = parseInt, ni = typeof oa == "object" && oa && oa.Object === Object && oa, ri = typeof self == "object" && self && self.Object === Object && self, St = ni || ri || Function("return this")(), Cr = n && !n.nodeType && n, rn = Cr && !0 && e && !e.nodeType && e, si = rn && rn.exports === Cr, Qa = si && ni.process, dn = function() {
      try {
        var L = rn && rn.require && rn.require("util").types;
        return L || Qa && Qa.binding && Qa.binding("util");
      } catch {
      }
    }(), ai = dn && dn.isArrayBuffer, oi = dn && dn.isDate, ii = dn && dn.isMap, Ai = dn && dn.isRegExp, li = dn && dn.isSet, ci = dn && dn.isTypedArray;
    function sn(L, re, V) {
      switch (V.length) {
        case 0:
          return L.call(re);
        case 1:
          return L.call(re, V[0]);
        case 2:
          return L.call(re, V[0], V[1]);
        case 3:
          return L.call(re, V[0], V[1], V[2]);
      }
      return L.apply(re, V);
    }
    function $A(L, re, V, we) {
      for (var Pe = -1, Ye = L == null ? 0 : L.length; ++Pe < Ye; ) {
        var Tt = L[Pe];
        re(we, Tt, V(Tt), L);
      }
      return we;
    }
    function an(L, re) {
      for (var V = -1, we = L == null ? 0 : L.length; ++V < we && re(L[V], V, L) !== !1; )
        ;
      return L;
    }
    function ui(L, re) {
      for (var V = L == null ? 0 : L.length; V-- && re(L[V], V, L) !== !1; )
        ;
      return L;
    }
    function Xa(L, re) {
      for (var V = -1, we = L == null ? 0 : L.length; ++V < we; )
        if (!re(L[V], V, L))
          return !1;
      return !0;
    }
    function Rn(L, re) {
      for (var V = -1, we = L == null ? 0 : L.length, Pe = 0, Ye = []; ++V < we; ) {
        var Tt = L[V];
        re(Tt, V, L) && (Ye[Pe++] = Tt);
      }
      return Ye;
    }
    function _r(L, re) {
      var V = L == null ? 0 : L.length;
      return !!V && Ir(L, re, 0) > -1;
    }
    function Rs(L, re, V) {
      for (var we = -1, Pe = L == null ? 0 : L.length; ++we < Pe; )
        if (V(re, L[we]))
          return !0;
      return !1;
    }
    function At(L, re) {
      for (var V = -1, we = L == null ? 0 : L.length, Pe = Array(we); ++V < we; )
        Pe[V] = re(L[V], V, L);
      return Pe;
    }
    function Bn(L, re) {
      for (var V = -1, we = re.length, Pe = L.length; ++V < we; )
        L[Pe + V] = re[V];
      return L;
    }
    function Bs(L, re, V, we) {
      var Pe = -1, Ye = L == null ? 0 : L.length;
      for (we && Ye && (V = L[++Pe]); ++Pe < Ye; )
        V = re(V, L[Pe], Pe, L);
      return V;
    }
    function fi(L, re, V, we) {
      var Pe = L == null ? 0 : L.length;
      for (we && Pe && (V = L[--Pe]); Pe--; )
        V = re(V, L[Pe], Pe, L);
      return V;
    }
    function Fa(L, re) {
      for (var V = -1, we = L == null ? 0 : L.length; ++V < we; )
        if (re(L[V], V, L))
          return !0;
      return !1;
    }
    var el = qa("length");
    function tl(L) {
      return L.split("");
    }
    function nl(L) {
      return L.match(Tr) || [];
    }
    function di(L, re, V) {
      var we;
      return V(L, function(Pe, Ye, Tt) {
        if (re(Pe, Ye, Tt))
          return we = Ye, !1;
      }), we;
    }
    function Ls(L, re, V, we) {
      for (var Pe = L.length, Ye = V + (we ? 1 : -1); we ? Ye-- : ++Ye < Pe; )
        if (re(L[Ye], Ye, L))
          return Ye;
      return -1;
    }
    function Ir(L, re, V) {
      return re === re ? dl(L, re, V) : Ls(L, hi, V);
    }
    function rl(L, re, V, we) {
      for (var Pe = V - 1, Ye = L.length; ++Pe < Ye; )
        if (we(L[Pe], re))
          return Pe;
      return -1;
    }
    function hi(L) {
      return L !== L;
    }
    function pi(L, re) {
      var V = L == null ? 0 : L.length;
      return V ? Ya(L, re) / V : I;
    }
    function qa(L) {
      return function(re) {
        return re == null ? r : re[L];
      };
    }
    function Ga(L) {
      return function(re) {
        return L == null ? r : L[re];
      };
    }
    function mi(L, re, V, we, Pe) {
      return Pe(L, function(Ye, Tt, at) {
        V = we ? (we = !1, Ye) : re(V, Ye, Tt, at);
      }), V;
    }
    function sl(L, re) {
      var V = L.length;
      for (L.sort(re); V--; )
        L[V] = L[V].value;
      return L;
    }
    function Ya(L, re) {
      for (var V, we = -1, Pe = L.length; ++we < Pe; ) {
        var Ye = re(L[we]);
        Ye !== r && (V = V === r ? Ye : V + Ye);
      }
      return V;
    }
    function Ua(L, re) {
      for (var V = -1, we = Array(L); ++V < L; )
        we[V] = re(V);
      return we;
    }
    function al(L, re) {
      return At(re, function(V) {
        return [V, L[V]];
      });
    }
    function gi(L) {
      return L && L.slice(0, vi(L) + 1).replace(Da, "");
    }
    function $t(L) {
      return function(re) {
        return L(re);
      };
    }
    function Ja(L, re) {
      return At(re, function(V) {
        return L[V];
      });
    }
    function $r(L, re) {
      return L.has(re);
    }
    function xi(L, re) {
      for (var V = -1, we = L.length; ++V < we && Ir(re, L[V], 0) > -1; )
        ;
      return V;
    }
    function wi(L, re) {
      for (var V = L.length; V-- && Ir(re, L[V], 0) > -1; )
        ;
      return V;
    }
    function ol(L, re) {
      for (var V = L.length, we = 0; V--; )
        L[V] === re && ++we;
      return we;
    }
    var il = Ga(ei), Al = Ga(ti);
    function ll(L) {
      return "\\" + VA[L];
    }
    function Jn(L, re) {
      return L == null ? r : L[re];
    }
    function Pr(L) {
      return La.test(L);
    }
    function cl(L) {
      return Ko.test(L);
    }
    function ul(L) {
      for (var re, V = []; !(re = L.next()).done; )
        V.push(re.value);
      return V;
    }
    function Za(L) {
      var re = -1, V = Array(L.size);
      return L.forEach(function(we, Pe) {
        V[++re] = [Pe, we];
      }), V;
    }
    function bi(L, re) {
      return function(V) {
        return L(re(V));
      };
    }
    function Zn(L, re) {
      for (var V = -1, we = L.length, Pe = 0, Ye = []; ++V < we; ) {
        var Tt = L[V];
        (Tt === re || Tt === f) && (L[V] = f, Ye[Pe++] = V);
      }
      return Ye;
    }
    function Qs(L) {
      var re = -1, V = Array(L.size);
      return L.forEach(function(we) {
        V[++re] = we;
      }), V;
    }
    function fl(L) {
      var re = -1, V = Array(L.size);
      return L.forEach(function(we) {
        V[++re] = [we, we];
      }), V;
    }
    function dl(L, re, V) {
      for (var we = V - 1, Pe = L.length; ++we < Pe; )
        if (L[we] === re)
          return we;
      return -1;
    }
    function hl(L, re, V) {
      for (var we = V + 1; we--; )
        if (L[we] === re)
          return we;
      return we;
    }
    function Or(L) {
      return Pr(L) ? ml(L) : el(L);
    }
    function hn(L) {
      return Pr(L) ? gl(L) : tl(L);
    }
    function vi(L) {
      for (var re = L.length; re-- && Io.test(L.charAt(re)); )
        ;
      return re;
    }
    var pl = Ga(WA);
    function ml(L) {
      for (var re = Ba.lastIndex = 0; Ba.test(L); )
        ++re;
      return re;
    }
    function gl(L) {
      return L.match(Ba) || [];
    }
    function xl(L) {
      return L.match(ZA) || [];
    }
    var yi = function L(re) {
      re = re == null ? St : zr.defaults(St.Object(), re, zr.pick(St, _o));
      var V = re.Array, we = re.Date, Pe = re.Error, Ye = re.Function, Tt = re.Math, at = re.Object, Wa = re.RegExp, wl = re.String, on = re.TypeError, Xs = V.prototype, bl = Ye.prototype, Hr = at.prototype, Fs = re["__core-js_shared__"], qs = bl.toString, $e = Hr.hasOwnProperty, vl = 0, ki = function() {
        var t = /[^.]+$/.exec(Fs && Fs.keys && Fs.keys.IE_PROTO || "");
        return t ? "Symbol(src)_1." + t : "";
      }(), Gs = Hr.toString, Zt = qs.call(at), yl = St._, kl = Wa(
        "^" + qs.call($e).replace(Ts, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"
      ), Ys = si ? re.Buffer : r, Wn = re.Symbol, Us = re.Uint8Array, Mi = Ys ? Ys.allocUnsafe : r, Js = bi(at.getPrototypeOf, at), ji = at.create, Ei = Hr.propertyIsEnumerable, Zs = Xs.splice, Di = Wn ? Wn.isConcatSpreadable : r, es = Wn ? Wn.iterator : r, or = Wn ? Wn.toStringTag : r, Ws = function() {
        try {
          var t = is(at, "defineProperty");
          return t({}, "", {}), t;
        } catch {
        }
      }(), Ml = re.clearTimeout !== St.clearTimeout && re.clearTimeout, jl = we && we.now !== St.Date.now && we.now, Ti = re.setTimeout !== St.setTimeout && re.setTimeout, Vs = Tt.ceil, Ks = Tt.floor, Va = at.getOwnPropertySymbols, El = Ys ? Ys.isBuffer : r, Ni = re.isFinite, gt = Xs.join, Dl = bi(at.keys, at), Nt = Tt.max, Gt = Tt.min, Tl = we.now, Nl = re.parseInt, Ci = Tt.random, u = Xs.reverse, d = is(re, "DataView"), p = is(re, "Map"), M = is(re, "Promise"), N = is(re, "Set"), O = is(re, "WeakMap"), q = is(at, "create"), Z = O && new O(), ce = {}, ie = As(d), Ee = As(p), ge = As(M), Je = As(N), Qe = As(O), ot = Wn ? Wn.prototype : r, Pt = ot ? ot.valueOf : r, pn = ot ? ot.toString : r;
      function E(t) {
        if (yt(t) && !ze(t) && !(t instanceof Xe)) {
          if (t instanceof Ot)
            return t;
          if ($e.call(t, "__wrapped__"))
            return Tf(t);
        }
        return new Ot(t);
      }
      var kn = /* @__PURE__ */ function() {
        function t() {
        }
        return function(s) {
          if (!wt(s))
            return {};
          if (ji)
            return ji(s);
          t.prototype = s;
          var i = new t();
          return t.prototype = r, i;
        };
      }();
      function ts() {
      }
      function Ot(t, s) {
        this.__wrapped__ = t, this.__actions__ = [], this.__chain__ = !!s, this.__index__ = 0, this.__values__ = r;
      }
      E.templateSettings = {
        /**
         * Used to detect `data` property values to be HTML-escaped.
         *
         * @memberOf _.templateSettings
         * @type {RegExp}
         */
        escape: ka,
        /**
         * Used to detect code to be evaluated.
         *
         * @memberOf _.templateSettings
         * @type {RegExp}
         */
        evaluate: Ma,
        /**
         * Used to detect `data` property values to inject.
         *
         * @memberOf _.templateSettings
         * @type {RegExp}
         */
        interpolate: ja,
        /**
         * Used to reference the data object in the template text.
         *
         * @memberOf _.templateSettings
         * @type {string}
         */
        variable: "",
        /**
         * Used to import variables into the compiled template.
         *
         * @memberOf _.templateSettings
         * @type {Object}
         */
        imports: {
          /**
           * A reference to the `lodash` function.
           *
           * @memberOf _.templateSettings.imports
           * @type {Function}
           */
          _: E
        }
      }, E.prototype = ts.prototype, E.prototype.constructor = E, Ot.prototype = kn(ts.prototype), Ot.prototype.constructor = Ot;
      function Xe(t) {
        this.__wrapped__ = t, this.__actions__ = [], this.__dir__ = 1, this.__filtered__ = !1, this.__iteratees__ = [], this.__takeCount__ = de, this.__views__ = [];
      }
      function Ka() {
        var t = new Xe(this.__wrapped__);
        return t.__actions__ = mn(this.__actions__), t.__dir__ = this.__dir__, t.__filtered__ = this.__filtered__, t.__iteratees__ = mn(this.__iteratees__), t.__takeCount__ = this.__takeCount__, t.__views__ = mn(this.__views__), t;
      }
      function ns() {
        if (this.__filtered__) {
          var t = new Xe(this);
          t.__dir__ = -1, t.__filtered__ = !0;
        } else
          t = this.clone(), t.__dir__ *= -1;
        return t;
      }
      function mm() {
        var t = this.__wrapped__.value(), s = this.__dir__, i = ze(t), m = s < 0, j = i ? t.length : 0, T = Tg(0, j, this.__views__), P = T.start, H = T.end, X = H - P, ae = m ? H : P - 1, oe = this.__iteratees__, Ae = oe.length, pe = 0, ke = Gt(X, this.__takeCount__);
        if (!i || !m && j == X && ke == X)
          return Vu(t, this.__actions__);
        var Ce = [];
        e:
          for (; X-- && pe < ke; ) {
            ae += s;
            for (var Be = -1, Ie = t[ae]; ++Be < Ae; ) {
              var Fe = oe[Be], qe = Fe.iteratee, En = Fe.type, cn = qe(Ie);
              if (En == ee)
                Ie = cn;
              else if (!cn) {
                if (En == K)
                  continue e;
                break e;
              }
            }
            Ce[pe++] = Ie;
          }
        return Ce;
      }
      Xe.prototype = kn(ts.prototype), Xe.prototype.constructor = Xe;
      function rs(t) {
        var s = -1, i = t == null ? 0 : t.length;
        for (this.clear(); ++s < i; ) {
          var m = t[s];
          this.set(m[0], m[1]);
        }
      }
      function gm() {
        this.__data__ = q ? q(null) : {}, this.size = 0;
      }
      function xm(t) {
        var s = this.has(t) && delete this.__data__[t];
        return this.size -= s ? 1 : 0, s;
      }
      function wm(t) {
        var s = this.__data__;
        if (q) {
          var i = s[t];
          return i === A ? r : i;
        }
        return $e.call(s, t) ? s[t] : r;
      }
      function bm(t) {
        var s = this.__data__;
        return q ? s[t] !== r : $e.call(s, t);
      }
      function vm(t, s) {
        var i = this.__data__;
        return this.size += this.has(t) ? 0 : 1, i[t] = q && s === r ? A : s, this;
      }
      rs.prototype.clear = gm, rs.prototype.delete = xm, rs.prototype.get = wm, rs.prototype.has = bm, rs.prototype.set = vm;
      function ir(t) {
        var s = -1, i = t == null ? 0 : t.length;
        for (this.clear(); ++s < i; ) {
          var m = t[s];
          this.set(m[0], m[1]);
        }
      }
      function ym() {
        this.__data__ = [], this.size = 0;
      }
      function km(t) {
        var s = this.__data__, i = Ii(s, t);
        if (i < 0)
          return !1;
        var m = s.length - 1;
        return i == m ? s.pop() : Zs.call(s, i, 1), --this.size, !0;
      }
      function Mm(t) {
        var s = this.__data__, i = Ii(s, t);
        return i < 0 ? r : s[i][1];
      }
      function jm(t) {
        return Ii(this.__data__, t) > -1;
      }
      function Em(t, s) {
        var i = this.__data__, m = Ii(i, t);
        return m < 0 ? (++this.size, i.push([t, s])) : i[m][1] = s, this;
      }
      ir.prototype.clear = ym, ir.prototype.delete = km, ir.prototype.get = Mm, ir.prototype.has = jm, ir.prototype.set = Em;
      function Ar(t) {
        var s = -1, i = t == null ? 0 : t.length;
        for (this.clear(); ++s < i; ) {
          var m = t[s];
          this.set(m[0], m[1]);
        }
      }
      function Dm() {
        this.size = 0, this.__data__ = {
          hash: new rs(),
          map: new (p || ir)(),
          string: new rs()
        };
      }
      function Tm(t) {
        var s = qi(this, t).delete(t);
        return this.size -= s ? 1 : 0, s;
      }
      function Nm(t) {
        return qi(this, t).get(t);
      }
      function Cm(t) {
        return qi(this, t).has(t);
      }
      function Im(t, s) {
        var i = qi(this, t), m = i.size;
        return i.set(t, s), this.size += i.size == m ? 0 : 1, this;
      }
      Ar.prototype.clear = Dm, Ar.prototype.delete = Tm, Ar.prototype.get = Nm, Ar.prototype.has = Cm, Ar.prototype.set = Im;
      function ss(t) {
        var s = -1, i = t == null ? 0 : t.length;
        for (this.__data__ = new Ar(); ++s < i; )
          this.add(t[s]);
      }
      function Pm(t) {
        return this.__data__.set(t, A), this;
      }
      function Om(t) {
        return this.__data__.has(t);
      }
      ss.prototype.add = ss.prototype.push = Pm, ss.prototype.has = Om;
      function Ln(t) {
        var s = this.__data__ = new ir(t);
        this.size = s.size;
      }
      function zm() {
        this.__data__ = new ir(), this.size = 0;
      }
      function Hm(t) {
        var s = this.__data__, i = s.delete(t);
        return this.size = s.size, i;
      }
      function Sm(t) {
        return this.__data__.get(t);
      }
      function Rm(t) {
        return this.__data__.has(t);
      }
      function Bm(t, s) {
        var i = this.__data__;
        if (i instanceof ir) {
          var m = i.__data__;
          if (!p || m.length < l - 1)
            return m.push([t, s]), this.size = ++i.size, this;
          i = this.__data__ = new Ar(m);
        }
        return i.set(t, s), this.size = i.size, this;
      }
      Ln.prototype.clear = zm, Ln.prototype.delete = Hm, Ln.prototype.get = Sm, Ln.prototype.has = Rm, Ln.prototype.set = Bm;
      function Du(t, s) {
        var i = ze(t), m = !i && ls(t), j = !i && !m && Qr(t), T = !i && !m && !j && ta(t), P = i || m || j || T, H = P ? Ua(t.length, wl) : [], X = H.length;
        for (var ae in t)
          (s || $e.call(t, ae)) && !(P && // Safari 9 has enumerable `arguments.length` in strict mode.
          (ae == "length" || // Node.js 0.10 has enumerable non-index properties on buffers.
          j && (ae == "offset" || ae == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays.
          T && (ae == "buffer" || ae == "byteLength" || ae == "byteOffset") || // Skip index properties.
          fr(ae, X))) && H.push(ae);
        return H;
      }
      function Tu(t) {
        var s = t.length;
        return s ? t[Ql(0, s - 1)] : r;
      }
      function Lm(t, s) {
        return Gi(mn(t), as(s, 0, t.length));
      }
      function Qm(t) {
        return Gi(mn(t));
      }
      function Cl(t, s, i) {
        (i !== r && !Qn(t[s], i) || i === r && !(s in t)) && lr(t, s, i);
      }
      function _a(t, s, i) {
        var m = t[s];
        (!($e.call(t, s) && Qn(m, i)) || i === r && !(s in t)) && lr(t, s, i);
      }
      function Ii(t, s) {
        for (var i = t.length; i--; )
          if (Qn(t[i][0], s))
            return i;
        return -1;
      }
      function Xm(t, s, i, m) {
        return Sr(t, function(j, T, P) {
          s(m, j, i(j), P);
        }), m;
      }
      function Nu(t, s) {
        return t && Kn(s, Yt(s), t);
      }
      function Fm(t, s) {
        return t && Kn(s, xn(s), t);
      }
      function lr(t, s, i) {
        s == "__proto__" && Ws ? Ws(t, s, {
          configurable: !0,
          enumerable: !0,
          value: i,
          writable: !0
        }) : t[s] = i;
      }
      function Il(t, s) {
        for (var i = -1, m = s.length, j = V(m), T = t == null; ++i < m; )
          j[i] = T ? r : uc(t, s[i]);
        return j;
      }
      function as(t, s, i) {
        return t === t && (i !== r && (t = t <= i ? t : i), s !== r && (t = t >= s ? t : s)), t;
      }
      function Cn(t, s, i, m, j, T) {
        var P, H = s & b, X = s & x, ae = s & g;
        if (i && (P = j ? i(t, m, j, T) : i(t)), P !== r)
          return P;
        if (!wt(t))
          return t;
        var oe = ze(t);
        if (oe) {
          if (P = Cg(t), !H)
            return mn(t, P);
        } else {
          var Ae = en(t), pe = Ae == Ne || Ae == Ge;
          if (Qr(t))
            return $u(t, H);
          if (Ae == Ft || Ae == De || pe && !j) {
            if (P = X || pe ? {} : wf(t), !H)
              return X ? wg(t, Fm(P, t)) : xg(t, Nu(P, t));
          } else {
            if (!st[Ae])
              return j ? t : {};
            P = Ig(t, Ae, H);
          }
        }
        T || (T = new Ln());
        var ke = T.get(t);
        if (ke)
          return ke;
        T.set(t, P), Zf(t) ? t.forEach(function(Ie) {
          P.add(Cn(Ie, s, i, Ie, t, T));
        }) : Uf(t) && t.forEach(function(Ie, Fe) {
          P.set(Fe, Cn(Ie, s, i, Fe, t, T));
        });
        var Ce = ae ? X ? Kl : Vl : X ? xn : Yt, Be = oe ? r : Ce(t);
        return an(Be || t, function(Ie, Fe) {
          Be && (Fe = Ie, Ie = t[Fe]), _a(P, Fe, Cn(Ie, s, i, Fe, t, T));
        }), P;
      }
      function qm(t) {
        var s = Yt(t);
        return function(i) {
          return Cu(i, t, s);
        };
      }
      function Cu(t, s, i) {
        var m = i.length;
        if (t == null)
          return !m;
        for (t = at(t); m--; ) {
          var j = i[m], T = s[j], P = t[j];
          if (P === r && !(j in t) || !T(P))
            return !1;
        }
        return !0;
      }
      function Iu(t, s, i) {
        if (typeof t != "function")
          throw new on(v);
        return ao(function() {
          t.apply(r, i);
        }, s);
      }
      function $a(t, s, i, m) {
        var j = -1, T = _r, P = !0, H = t.length, X = [], ae = s.length;
        if (!H)
          return X;
        i && (s = At(s, $t(i))), m ? (T = Rs, P = !1) : s.length >= l && (T = $r, P = !1, s = new ss(s));
        e:
          for (; ++j < H; ) {
            var oe = t[j], Ae = i == null ? oe : i(oe);
            if (oe = m || oe !== 0 ? oe : 0, P && Ae === Ae) {
              for (var pe = ae; pe--; )
                if (s[pe] === Ae)
                  continue e;
              X.push(oe);
            } else T(s, Ae, m) || X.push(oe);
          }
        return X;
      }
      var Sr = sf(Vn), Pu = sf(Ol, !0);
      function Gm(t, s) {
        var i = !0;
        return Sr(t, function(m, j, T) {
          return i = !!s(m, j, T), i;
        }), i;
      }
      function Pi(t, s, i) {
        for (var m = -1, j = t.length; ++m < j; ) {
          var T = t[m], P = s(T);
          if (P != null && (H === r ? P === P && !jn(P) : i(P, H)))
            var H = P, X = T;
        }
        return X;
      }
      function Ym(t, s, i, m) {
        var j = t.length;
        for (i = Re(i), i < 0 && (i = -i > j ? 0 : j + i), m = m === r || m > j ? j : Re(m), m < 0 && (m += j), m = i > m ? 0 : Vf(m); i < m; )
          t[i++] = s;
        return t;
      }
      function Ou(t, s) {
        var i = [];
        return Sr(t, function(m, j, T) {
          s(m, j, T) && i.push(m);
        }), i;
      }
      function Wt(t, s, i, m, j) {
        var T = -1, P = t.length;
        for (i || (i = Og), j || (j = []); ++T < P; ) {
          var H = t[T];
          s > 0 && i(H) ? s > 1 ? Wt(H, s - 1, i, m, j) : Bn(j, H) : m || (j[j.length] = H);
        }
        return j;
      }
      var Pl = af(), zu = af(!0);
      function Vn(t, s) {
        return t && Pl(t, s, Yt);
      }
      function Ol(t, s) {
        return t && zu(t, s, Yt);
      }
      function Oi(t, s) {
        return Rn(s, function(i) {
          return dr(t[i]);
        });
      }
      function os(t, s) {
        s = Br(s, t);
        for (var i = 0, m = s.length; t != null && i < m; )
          t = t[_n(s[i++])];
        return i && i == m ? t : r;
      }
      function Hu(t, s, i) {
        var m = s(t);
        return ze(t) ? m : Bn(m, i(t));
      }
      function An(t) {
        return t == null ? t === r ? qt : xt : or && or in at(t) ? Dg(t) : Qg(t);
      }
      function zl(t, s) {
        return t > s;
      }
      function Um(t, s) {
        return t != null && $e.call(t, s);
      }
      function Jm(t, s) {
        return t != null && s in at(t);
      }
      function Zm(t, s, i) {
        return t >= Gt(s, i) && t < Nt(s, i);
      }
      function Hl(t, s, i) {
        for (var m = i ? Rs : _r, j = t[0].length, T = t.length, P = T, H = V(T), X = 1 / 0, ae = []; P--; ) {
          var oe = t[P];
          P && s && (oe = At(oe, $t(s))), X = Gt(oe.length, X), H[P] = !i && (s || j >= 120 && oe.length >= 120) ? new ss(P && oe) : r;
        }
        oe = t[0];
        var Ae = -1, pe = H[0];
        e:
          for (; ++Ae < j && ae.length < X; ) {
            var ke = oe[Ae], Ce = s ? s(ke) : ke;
            if (ke = i || ke !== 0 ? ke : 0, !(pe ? $r(pe, Ce) : m(ae, Ce, i))) {
              for (P = T; --P; ) {
                var Be = H[P];
                if (!(Be ? $r(Be, Ce) : m(t[P], Ce, i)))
                  continue e;
              }
              pe && pe.push(Ce), ae.push(ke);
            }
          }
        return ae;
      }
      function Wm(t, s, i, m) {
        return Vn(t, function(j, T, P) {
          s(m, i(j), T, P);
        }), m;
      }
      function eo(t, s, i) {
        s = Br(s, t), t = kf(t, s);
        var m = t == null ? t : t[_n(Pn(s))];
        return m == null ? r : sn(m, t, i);
      }
      function Su(t) {
        return yt(t) && An(t) == De;
      }
      function Vm(t) {
        return yt(t) && An(t) == jr;
      }
      function Km(t) {
        return yt(t) && An(t) == Ht;
      }
      function to(t, s, i, m, j) {
        return t === s ? !0 : t == null || s == null || !yt(t) && !yt(s) ? t !== t && s !== s : _m(t, s, i, m, to, j);
      }
      function _m(t, s, i, m, j, T) {
        var P = ze(t), H = ze(s), X = P ? ft : en(t), ae = H ? ft : en(s);
        X = X == De ? Ft : X, ae = ae == De ? Ft : ae;
        var oe = X == Ft, Ae = ae == Ft, pe = X == ae;
        if (pe && Qr(t)) {
          if (!Qr(s))
            return !1;
          P = !0, oe = !1;
        }
        if (pe && !oe)
          return T || (T = new Ln()), P || ta(t) ? mf(t, s, i, m, j, T) : jg(t, s, X, i, m, j, T);
        if (!(i & y)) {
          var ke = oe && $e.call(t, "__wrapped__"), Ce = Ae && $e.call(s, "__wrapped__");
          if (ke || Ce) {
            var Be = ke ? t.value() : t, Ie = Ce ? s.value() : s;
            return T || (T = new Ln()), j(Be, Ie, i, m, T);
          }
        }
        return pe ? (T || (T = new Ln()), Eg(t, s, i, m, j, T)) : !1;
      }
      function $m(t) {
        return yt(t) && en(t) == pt;
      }
      function Sl(t, s, i, m) {
        var j = i.length, T = j, P = !m;
        if (t == null)
          return !T;
        for (t = at(t); j--; ) {
          var H = i[j];
          if (P && H[2] ? H[1] !== t[H[0]] : !(H[0] in t))
            return !1;
        }
        for (; ++j < T; ) {
          H = i[j];
          var X = H[0], ae = t[X], oe = H[1];
          if (P && H[2]) {
            if (ae === r && !(X in t))
              return !1;
          } else {
            var Ae = new Ln();
            if (m)
              var pe = m(ae, oe, X, t, s, Ae);
            if (!(pe === r ? to(oe, ae, y | k, m, Ae) : pe))
              return !1;
          }
        }
        return !0;
      }
      function Ru(t) {
        if (!wt(t) || Hg(t))
          return !1;
        var s = dr(t) ? kl : OA;
        return s.test(As(t));
      }
      function eg(t) {
        return yt(t) && An(t) == Ue;
      }
      function tg(t) {
        return yt(t) && en(t) == Se;
      }
      function ng(t) {
        return yt(t) && Vi(t.length) && !!it[An(t)];
      }
      function Bu(t) {
        return typeof t == "function" ? t : t == null ? wn : typeof t == "object" ? ze(t) ? Xu(t[0], t[1]) : Qu(t) : id(t);
      }
      function Rl(t) {
        if (!so(t))
          return Dl(t);
        var s = [];
        for (var i in at(t))
          $e.call(t, i) && i != "constructor" && s.push(i);
        return s;
      }
      function rg(t) {
        if (!wt(t))
          return Lg(t);
        var s = so(t), i = [];
        for (var m in t)
          m == "constructor" && (s || !$e.call(t, m)) || i.push(m);
        return i;
      }
      function Bl(t, s) {
        return t < s;
      }
      function Lu(t, s) {
        var i = -1, m = gn(t) ? V(t.length) : [];
        return Sr(t, function(j, T, P) {
          m[++i] = s(j, T, P);
        }), m;
      }
      function Qu(t) {
        var s = $l(t);
        return s.length == 1 && s[0][2] ? vf(s[0][0], s[0][1]) : function(i) {
          return i === t || Sl(i, t, s);
        };
      }
      function Xu(t, s) {
        return tc(t) && bf(s) ? vf(_n(t), s) : function(i) {
          var m = uc(i, t);
          return m === r && m === s ? fc(i, t) : to(s, m, y | k);
        };
      }
      function zi(t, s, i, m, j) {
        t !== s && Pl(s, function(T, P) {
          if (j || (j = new Ln()), wt(T))
            sg(t, s, P, i, zi, m, j);
          else {
            var H = m ? m(rc(t, P), T, P + "", t, s, j) : r;
            H === r && (H = T), Cl(t, P, H);
          }
        }, xn);
      }
      function sg(t, s, i, m, j, T, P) {
        var H = rc(t, i), X = rc(s, i), ae = P.get(X);
        if (ae) {
          Cl(t, i, ae);
          return;
        }
        var oe = T ? T(H, X, i + "", t, s, P) : r, Ae = oe === r;
        if (Ae) {
          var pe = ze(X), ke = !pe && Qr(X), Ce = !pe && !ke && ta(X);
          oe = X, pe || ke || Ce ? ze(H) ? oe = H : Ct(H) ? oe = mn(H) : ke ? (Ae = !1, oe = $u(X, !0)) : Ce ? (Ae = !1, oe = ef(X, !0)) : oe = [] : oo(X) || ls(X) ? (oe = H, ls(H) ? oe = Kf(H) : (!wt(H) || dr(H)) && (oe = wf(X))) : Ae = !1;
        }
        Ae && (P.set(X, oe), j(oe, X, m, T, P), P.delete(X)), Cl(t, i, oe);
      }
      function Fu(t, s) {
        var i = t.length;
        if (i)
          return s += s < 0 ? i : 0, fr(s, i) ? t[s] : r;
      }
      function qu(t, s, i) {
        s.length ? s = At(s, function(T) {
          return ze(T) ? function(P) {
            return os(P, T.length === 1 ? T[0] : T);
          } : T;
        }) : s = [wn];
        var m = -1;
        s = At(s, $t(Te()));
        var j = Lu(t, function(T, P, H) {
          var X = At(s, function(ae) {
            return ae(T);
          });
          return { criteria: X, index: ++m, value: T };
        });
        return sl(j, function(T, P) {
          return gg(T, P, i);
        });
      }
      function ag(t, s) {
        return Gu(t, s, function(i, m) {
          return fc(t, m);
        });
      }
      function Gu(t, s, i) {
        for (var m = -1, j = s.length, T = {}; ++m < j; ) {
          var P = s[m], H = os(t, P);
          i(H, P) && no(T, Br(P, t), H);
        }
        return T;
      }
      function og(t) {
        return function(s) {
          return os(s, t);
        };
      }
      function Ll(t, s, i, m) {
        var j = m ? rl : Ir, T = -1, P = s.length, H = t;
        for (t === s && (s = mn(s)), i && (H = At(t, $t(i))); ++T < P; )
          for (var X = 0, ae = s[T], oe = i ? i(ae) : ae; (X = j(H, oe, X, m)) > -1; )
            H !== t && Zs.call(H, X, 1), Zs.call(t, X, 1);
        return t;
      }
      function Yu(t, s) {
        for (var i = t ? s.length : 0, m = i - 1; i--; ) {
          var j = s[i];
          if (i == m || j !== T) {
            var T = j;
            fr(j) ? Zs.call(t, j, 1) : ql(t, j);
          }
        }
        return t;
      }
      function Ql(t, s) {
        return t + Ks(Ci() * (s - t + 1));
      }
      function ig(t, s, i, m) {
        for (var j = -1, T = Nt(Vs((s - t) / (i || 1)), 0), P = V(T); T--; )
          P[m ? T : ++j] = t, t += i;
        return P;
      }
      function Xl(t, s) {
        var i = "";
        if (!t || s < 1 || s > fe)
          return i;
        do
          s % 2 && (i += t), s = Ks(s / 2), s && (t += t);
        while (s);
        return i;
      }
      function Le(t, s) {
        return sc(yf(t, s, wn), t + "");
      }
      function Ag(t) {
        return Tu(na(t));
      }
      function lg(t, s) {
        var i = na(t);
        return Gi(i, as(s, 0, i.length));
      }
      function no(t, s, i, m) {
        if (!wt(t))
          return t;
        s = Br(s, t);
        for (var j = -1, T = s.length, P = T - 1, H = t; H != null && ++j < T; ) {
          var X = _n(s[j]), ae = i;
          if (X === "__proto__" || X === "constructor" || X === "prototype")
            return t;
          if (j != P) {
            var oe = H[X];
            ae = m ? m(oe, X, H) : r, ae === r && (ae = wt(oe) ? oe : fr(s[j + 1]) ? [] : {});
          }
          _a(H, X, ae), H = H[X];
        }
        return t;
      }
      var Uu = Z ? function(t, s) {
        return Z.set(t, s), t;
      } : wn, cg = Ws ? function(t, s) {
        return Ws(t, "toString", {
          configurable: !0,
          enumerable: !1,
          value: hc(s),
          writable: !0
        });
      } : wn;
      function ug(t) {
        return Gi(na(t));
      }
      function In(t, s, i) {
        var m = -1, j = t.length;
        s < 0 && (s = -s > j ? 0 : j + s), i = i > j ? j : i, i < 0 && (i += j), j = s > i ? 0 : i - s >>> 0, s >>>= 0;
        for (var T = V(j); ++m < j; )
          T[m] = t[m + s];
        return T;
      }
      function fg(t, s) {
        var i;
        return Sr(t, function(m, j, T) {
          return i = s(m, j, T), !i;
        }), !!i;
      }
      function Hi(t, s, i) {
        var m = 0, j = t == null ? m : t.length;
        if (typeof s == "number" && s === s && j <= he) {
          for (; m < j; ) {
            var T = m + j >>> 1, P = t[T];
            P !== null && !jn(P) && (i ? P <= s : P < s) ? m = T + 1 : j = T;
          }
          return j;
        }
        return Fl(t, s, wn, i);
      }
      function Fl(t, s, i, m) {
        var j = 0, T = t == null ? 0 : t.length;
        if (T === 0)
          return 0;
        s = i(s);
        for (var P = s !== s, H = s === null, X = jn(s), ae = s === r; j < T; ) {
          var oe = Ks((j + T) / 2), Ae = i(t[oe]), pe = Ae !== r, ke = Ae === null, Ce = Ae === Ae, Be = jn(Ae);
          if (P)
            var Ie = m || Ce;
          else ae ? Ie = Ce && (m || pe) : H ? Ie = Ce && pe && (m || !ke) : X ? Ie = Ce && pe && !ke && (m || !Be) : ke || Be ? Ie = !1 : Ie = m ? Ae <= s : Ae < s;
          Ie ? j = oe + 1 : T = oe;
        }
        return Gt(T, be);
      }
      function Ju(t, s) {
        for (var i = -1, m = t.length, j = 0, T = []; ++i < m; ) {
          var P = t[i], H = s ? s(P) : P;
          if (!i || !Qn(H, X)) {
            var X = H;
            T[j++] = P === 0 ? 0 : P;
          }
        }
        return T;
      }
      function Zu(t) {
        return typeof t == "number" ? t : jn(t) ? I : +t;
      }
      function Mn(t) {
        if (typeof t == "string")
          return t;
        if (ze(t))
          return At(t, Mn) + "";
        if (jn(t))
          return pn ? pn.call(t) : "";
        var s = t + "";
        return s == "0" && 1 / t == -_ ? "-0" : s;
      }
      function Rr(t, s, i) {
        var m = -1, j = _r, T = t.length, P = !0, H = [], X = H;
        if (i)
          P = !1, j = Rs;
        else if (T >= l) {
          var ae = s ? null : kg(t);
          if (ae)
            return Qs(ae);
          P = !1, j = $r, X = new ss();
        } else
          X = s ? [] : H;
        e:
          for (; ++m < T; ) {
            var oe = t[m], Ae = s ? s(oe) : oe;
            if (oe = i || oe !== 0 ? oe : 0, P && Ae === Ae) {
              for (var pe = X.length; pe--; )
                if (X[pe] === Ae)
                  continue e;
              s && X.push(Ae), H.push(oe);
            } else j(X, Ae, i) || (X !== H && X.push(Ae), H.push(oe));
          }
        return H;
      }
      function ql(t, s) {
        return s = Br(s, t), t = kf(t, s), t == null || delete t[_n(Pn(s))];
      }
      function Wu(t, s, i, m) {
        return no(t, s, i(os(t, s)), m);
      }
      function Si(t, s, i, m) {
        for (var j = t.length, T = m ? j : -1; (m ? T-- : ++T < j) && s(t[T], T, t); )
          ;
        return i ? In(t, m ? 0 : T, m ? T + 1 : j) : In(t, m ? T + 1 : 0, m ? j : T);
      }
      function Vu(t, s) {
        var i = t;
        return i instanceof Xe && (i = i.value()), Bs(s, function(m, j) {
          return j.func.apply(j.thisArg, Bn([m], j.args));
        }, i);
      }
      function Gl(t, s, i) {
        var m = t.length;
        if (m < 2)
          return m ? Rr(t[0]) : [];
        for (var j = -1, T = V(m); ++j < m; )
          for (var P = t[j], H = -1; ++H < m; )
            H != j && (T[j] = $a(T[j] || P, t[H], s, i));
        return Rr(Wt(T, 1), s, i);
      }
      function Ku(t, s, i) {
        for (var m = -1, j = t.length, T = s.length, P = {}; ++m < j; ) {
          var H = m < T ? s[m] : r;
          i(P, t[m], H);
        }
        return P;
      }
      function Yl(t) {
        return Ct(t) ? t : [];
      }
      function Ul(t) {
        return typeof t == "function" ? t : wn;
      }
      function Br(t, s) {
        return ze(t) ? t : tc(t, s) ? [t] : Df(nt(t));
      }
      var dg = Le;
      function Lr(t, s, i) {
        var m = t.length;
        return i = i === r ? m : i, !s && i >= m ? t : In(t, s, i);
      }
      var _u = Ml || function(t) {
        return St.clearTimeout(t);
      };
      function $u(t, s) {
        if (s)
          return t.slice();
        var i = t.length, m = Mi ? Mi(i) : new t.constructor(i);
        return t.copy(m), m;
      }
      function Jl(t) {
        var s = new t.constructor(t.byteLength);
        return new Us(s).set(new Us(t)), s;
      }
      function hg(t, s) {
        var i = s ? Jl(t.buffer) : t.buffer;
        return new t.constructor(i, t.byteOffset, t.byteLength);
      }
      function pg(t) {
        var s = new t.constructor(t.source, Cs.exec(t));
        return s.lastIndex = t.lastIndex, s;
      }
      function mg(t) {
        return Pt ? at(Pt.call(t)) : {};
      }
      function ef(t, s) {
        var i = s ? Jl(t.buffer) : t.buffer;
        return new t.constructor(i, t.byteOffset, t.length);
      }
      function tf(t, s) {
        if (t !== s) {
          var i = t !== r, m = t === null, j = t === t, T = jn(t), P = s !== r, H = s === null, X = s === s, ae = jn(s);
          if (!H && !ae && !T && t > s || T && P && X && !H && !ae || m && P && X || !i && X || !j)
            return 1;
          if (!m && !T && !ae && t < s || ae && i && j && !m && !T || H && i && j || !P && j || !X)
            return -1;
        }
        return 0;
      }
      function gg(t, s, i) {
        for (var m = -1, j = t.criteria, T = s.criteria, P = j.length, H = i.length; ++m < P; ) {
          var X = tf(j[m], T[m]);
          if (X) {
            if (m >= H)
              return X;
            var ae = i[m];
            return X * (ae == "desc" ? -1 : 1);
          }
        }
        return t.index - s.index;
      }
      function nf(t, s, i, m) {
        for (var j = -1, T = t.length, P = i.length, H = -1, X = s.length, ae = Nt(T - P, 0), oe = V(X + ae), Ae = !m; ++H < X; )
          oe[H] = s[H];
        for (; ++j < P; )
          (Ae || j < T) && (oe[i[j]] = t[j]);
        for (; ae--; )
          oe[H++] = t[j++];
        return oe;
      }
      function rf(t, s, i, m) {
        for (var j = -1, T = t.length, P = -1, H = i.length, X = -1, ae = s.length, oe = Nt(T - H, 0), Ae = V(oe + ae), pe = !m; ++j < oe; )
          Ae[j] = t[j];
        for (var ke = j; ++X < ae; )
          Ae[ke + X] = s[X];
        for (; ++P < H; )
          (pe || j < T) && (Ae[ke + i[P]] = t[j++]);
        return Ae;
      }
      function mn(t, s) {
        var i = -1, m = t.length;
        for (s || (s = V(m)); ++i < m; )
          s[i] = t[i];
        return s;
      }
      function Kn(t, s, i, m) {
        var j = !i;
        i || (i = {});
        for (var T = -1, P = s.length; ++T < P; ) {
          var H = s[T], X = m ? m(i[H], t[H], H, i, t) : r;
          X === r && (X = t[H]), j ? lr(i, H, X) : _a(i, H, X);
        }
        return i;
      }
      function xg(t, s) {
        return Kn(t, ec(t), s);
      }
      function wg(t, s) {
        return Kn(t, gf(t), s);
      }
      function Ri(t, s) {
        return function(i, m) {
          var j = ze(i) ? $A : Xm, T = s ? s() : {};
          return j(i, t, Te(m, 2), T);
        };
      }
      function _s(t) {
        return Le(function(s, i) {
          var m = -1, j = i.length, T = j > 1 ? i[j - 1] : r, P = j > 2 ? i[2] : r;
          for (T = t.length > 3 && typeof T == "function" ? (j--, T) : r, P && ln(i[0], i[1], P) && (T = j < 3 ? r : T, j = 1), s = at(s); ++m < j; ) {
            var H = i[m];
            H && t(s, H, m, T);
          }
          return s;
        });
      }
      function sf(t, s) {
        return function(i, m) {
          if (i == null)
            return i;
          if (!gn(i))
            return t(i, m);
          for (var j = i.length, T = s ? j : -1, P = at(i); (s ? T-- : ++T < j) && m(P[T], T, P) !== !1; )
            ;
          return i;
        };
      }
      function af(t) {
        return function(s, i, m) {
          for (var j = -1, T = at(s), P = m(s), H = P.length; H--; ) {
            var X = P[t ? H : ++j];
            if (i(T[X], X, T) === !1)
              break;
          }
          return s;
        };
      }
      function bg(t, s, i) {
        var m = s & D, j = ro(t);
        function T() {
          var P = this && this !== St && this instanceof T ? j : t;
          return P.apply(m ? i : this, arguments);
        }
        return T;
      }
      function of(t) {
        return function(s) {
          s = nt(s);
          var i = Pr(s) ? hn(s) : r, m = i ? i[0] : s.charAt(0), j = i ? Lr(i, 1).join("") : s.slice(1);
          return m[t]() + j;
        };
      }
      function $s(t) {
        return function(s) {
          return Bs(ad(sd(s).replace(Ra, "")), t, "");
        };
      }
      function ro(t) {
        return function() {
          var s = arguments;
          switch (s.length) {
            case 0:
              return new t();
            case 1:
              return new t(s[0]);
            case 2:
              return new t(s[0], s[1]);
            case 3:
              return new t(s[0], s[1], s[2]);
            case 4:
              return new t(s[0], s[1], s[2], s[3]);
            case 5:
              return new t(s[0], s[1], s[2], s[3], s[4]);
            case 6:
              return new t(s[0], s[1], s[2], s[3], s[4], s[5]);
            case 7:
              return new t(s[0], s[1], s[2], s[3], s[4], s[5], s[6]);
          }
          var i = kn(t.prototype), m = t.apply(i, s);
          return wt(m) ? m : i;
        };
      }
      function vg(t, s, i) {
        var m = ro(t);
        function j() {
          for (var T = arguments.length, P = V(T), H = T, X = ea(j); H--; )
            P[H] = arguments[H];
          var ae = T < 3 && P[0] !== X && P[T - 1] !== X ? [] : Zn(P, X);
          if (T -= ae.length, T < i)
            return ff(
              t,
              s,
              Bi,
              j.placeholder,
              r,
              P,
              ae,
              r,
              r,
              i - T
            );
          var oe = this && this !== St && this instanceof j ? m : t;
          return sn(oe, this, P);
        }
        return j;
      }
      function Af(t) {
        return function(s, i, m) {
          var j = at(s);
          if (!gn(s)) {
            var T = Te(i, 3);
            s = Yt(s), i = function(H) {
              return T(j[H], H, j);
            };
          }
          var P = t(s, i, m);
          return P > -1 ? j[T ? s[P] : P] : r;
        };
      }
      function lf(t) {
        return ur(function(s) {
          var i = s.length, m = i, j = Ot.prototype.thru;
          for (t && s.reverse(); m--; ) {
            var T = s[m];
            if (typeof T != "function")
              throw new on(v);
            if (j && !P && Fi(T) == "wrapper")
              var P = new Ot([], !0);
          }
          for (m = P ? m : i; ++m < i; ) {
            T = s[m];
            var H = Fi(T), X = H == "wrapper" ? _l(T) : r;
            X && nc(X[0]) && X[1] == (Y | G | W | B) && !X[4].length && X[9] == 1 ? P = P[Fi(X[0])].apply(P, X[3]) : P = T.length == 1 && nc(T) ? P[H]() : P.thru(T);
          }
          return function() {
            var ae = arguments, oe = ae[0];
            if (P && ae.length == 1 && ze(oe))
              return P.plant(oe).value();
            for (var Ae = 0, pe = i ? s[Ae].apply(this, ae) : oe; ++Ae < i; )
              pe = s[Ae].call(this, pe);
            return pe;
          };
        });
      }
      function Bi(t, s, i, m, j, T, P, H, X, ae) {
        var oe = s & Y, Ae = s & D, pe = s & C, ke = s & (G | Q), Ce = s & U, Be = pe ? r : ro(t);
        function Ie() {
          for (var Fe = arguments.length, qe = V(Fe), En = Fe; En--; )
            qe[En] = arguments[En];
          if (ke)
            var cn = ea(Ie), Dn = ol(qe, cn);
          if (m && (qe = nf(qe, m, j, ke)), T && (qe = rf(qe, T, P, ke)), Fe -= Dn, ke && Fe < ae) {
            var It = Zn(qe, cn);
            return ff(
              t,
              s,
              Bi,
              Ie.placeholder,
              i,
              qe,
              It,
              H,
              X,
              ae - Fe
            );
          }
          var Xn = Ae ? i : this, pr = pe ? Xn[t] : t;
          return Fe = qe.length, H ? qe = Xg(qe, H) : Ce && Fe > 1 && qe.reverse(), oe && X < Fe && (qe.length = X), this && this !== St && this instanceof Ie && (pr = Be || ro(pr)), pr.apply(Xn, qe);
        }
        return Ie;
      }
      function cf(t, s) {
        return function(i, m) {
          return Wm(i, t, s(m), {});
        };
      }
      function Li(t, s) {
        return function(i, m) {
          var j;
          if (i === r && m === r)
            return s;
          if (i !== r && (j = i), m !== r) {
            if (j === r)
              return m;
            typeof i == "string" || typeof m == "string" ? (i = Mn(i), m = Mn(m)) : (i = Zu(i), m = Zu(m)), j = t(i, m);
          }
          return j;
        };
      }
      function Zl(t) {
        return ur(function(s) {
          return s = At(s, $t(Te())), Le(function(i) {
            var m = this;
            return t(s, function(j) {
              return sn(j, m, i);
            });
          });
        });
      }
      function Qi(t, s) {
        s = s === r ? " " : Mn(s);
        var i = s.length;
        if (i < 2)
          return i ? Xl(s, t) : s;
        var m = Xl(s, Vs(t / Or(s)));
        return Pr(s) ? Lr(hn(m), 0, t).join("") : m.slice(0, t);
      }
      function yg(t, s, i, m) {
        var j = s & D, T = ro(t);
        function P() {
          for (var H = -1, X = arguments.length, ae = -1, oe = m.length, Ae = V(oe + X), pe = this && this !== St && this instanceof P ? T : t; ++ae < oe; )
            Ae[ae] = m[ae];
          for (; X--; )
            Ae[ae++] = arguments[++H];
          return sn(pe, j ? i : this, Ae);
        }
        return P;
      }
      function uf(t) {
        return function(s, i, m) {
          return m && typeof m != "number" && ln(s, i, m) && (i = m = r), s = hr(s), i === r ? (i = s, s = 0) : i = hr(i), m = m === r ? s < i ? 1 : -1 : hr(m), ig(s, i, m, t);
        };
      }
      function Xi(t) {
        return function(s, i) {
          return typeof s == "string" && typeof i == "string" || (s = On(s), i = On(i)), t(s, i);
        };
      }
      function ff(t, s, i, m, j, T, P, H, X, ae) {
        var oe = s & G, Ae = oe ? P : r, pe = oe ? r : P, ke = oe ? T : r, Ce = oe ? r : T;
        s |= oe ? W : J, s &= ~(oe ? J : W), s & S || (s &= -4);
        var Be = [
          t,
          s,
          j,
          ke,
          Ae,
          Ce,
          pe,
          H,
          X,
          ae
        ], Ie = i.apply(r, Be);
        return nc(t) && Mf(Ie, Be), Ie.placeholder = m, jf(Ie, t, s);
      }
      function Wl(t) {
        var s = Tt[t];
        return function(i, m) {
          if (i = On(i), m = m == null ? 0 : Gt(Re(m), 292), m && Ni(i)) {
            var j = (nt(i) + "e").split("e"), T = s(j[0] + "e" + (+j[1] + m));
            return j = (nt(T) + "e").split("e"), +(j[0] + "e" + (+j[1] - m));
          }
          return s(i);
        };
      }
      var kg = N && 1 / Qs(new N([, -0]))[1] == _ ? function(t) {
        return new N(t);
      } : gc;
      function df(t) {
        return function(s) {
          var i = en(s);
          return i == pt ? Za(s) : i == Se ? fl(s) : al(s, t(s));
        };
      }
      function cr(t, s, i, m, j, T, P, H) {
        var X = s & C;
        if (!X && typeof t != "function")
          throw new on(v);
        var ae = m ? m.length : 0;
        if (ae || (s &= -97, m = j = r), P = P === r ? P : Nt(Re(P), 0), H = H === r ? H : Re(H), ae -= j ? j.length : 0, s & J) {
          var oe = m, Ae = j;
          m = j = r;
        }
        var pe = X ? r : _l(t), ke = [
          t,
          s,
          i,
          m,
          j,
          oe,
          Ae,
          T,
          P,
          H
        ];
        if (pe && Bg(ke, pe), t = ke[0], s = ke[1], i = ke[2], m = ke[3], j = ke[4], H = ke[9] = ke[9] === r ? X ? 0 : t.length : Nt(ke[9] - ae, 0), !H && s & (G | Q) && (s &= -25), !s || s == D)
          var Ce = bg(t, s, i);
        else s == G || s == Q ? Ce = vg(t, s, H) : (s == W || s == (D | W)) && !j.length ? Ce = yg(t, s, i, m) : Ce = Bi.apply(r, ke);
        var Be = pe ? Uu : Mf;
        return jf(Be(Ce, ke), t, s);
      }
      function hf(t, s, i, m) {
        return t === r || Qn(t, Hr[i]) && !$e.call(m, i) ? s : t;
      }
      function pf(t, s, i, m, j, T) {
        return wt(t) && wt(s) && (T.set(s, t), zi(t, s, r, pf, T), T.delete(s)), t;
      }
      function Mg(t) {
        return oo(t) ? r : t;
      }
      function mf(t, s, i, m, j, T) {
        var P = i & y, H = t.length, X = s.length;
        if (H != X && !(P && X > H))
          return !1;
        var ae = T.get(t), oe = T.get(s);
        if (ae && oe)
          return ae == s && oe == t;
        var Ae = -1, pe = !0, ke = i & k ? new ss() : r;
        for (T.set(t, s), T.set(s, t); ++Ae < H; ) {
          var Ce = t[Ae], Be = s[Ae];
          if (m)
            var Ie = P ? m(Be, Ce, Ae, s, t, T) : m(Ce, Be, Ae, t, s, T);
          if (Ie !== r) {
            if (Ie)
              continue;
            pe = !1;
            break;
          }
          if (ke) {
            if (!Fa(s, function(Fe, qe) {
              if (!$r(ke, qe) && (Ce === Fe || j(Ce, Fe, i, m, T)))
                return ke.push(qe);
            })) {
              pe = !1;
              break;
            }
          } else if (!(Ce === Be || j(Ce, Be, i, m, T))) {
            pe = !1;
            break;
          }
        }
        return T.delete(t), T.delete(s), pe;
      }
      function jg(t, s, i, m, j, T, P) {
        switch (i) {
          case Er:
            if (t.byteLength != s.byteLength || t.byteOffset != s.byteOffset)
              return !1;
            t = t.buffer, s = s.buffer;
          case jr:
            return !(t.byteLength != s.byteLength || !T(new Us(t), new Us(s)));
          case Qt:
          case Ht:
          case Xt:
            return Qn(+t, +s);
          case Me:
            return t.name == s.name && t.message == s.message;
          case Ue:
          case kr:
            return t == s + "";
          case pt:
            var H = Za;
          case Se:
            var X = m & y;
            if (H || (H = Qs), t.size != s.size && !X)
              return !1;
            var ae = P.get(t);
            if (ae)
              return ae == s;
            m |= k, P.set(t, s);
            var oe = mf(H(t), H(s), m, j, T, P);
            return P.delete(t), oe;
          case Mr:
            if (Pt)
              return Pt.call(t) == Pt.call(s);
        }
        return !1;
      }
      function Eg(t, s, i, m, j, T) {
        var P = i & y, H = Vl(t), X = H.length, ae = Vl(s), oe = ae.length;
        if (X != oe && !P)
          return !1;
        for (var Ae = X; Ae--; ) {
          var pe = H[Ae];
          if (!(P ? pe in s : $e.call(s, pe)))
            return !1;
        }
        var ke = T.get(t), Ce = T.get(s);
        if (ke && Ce)
          return ke == s && Ce == t;
        var Be = !0;
        T.set(t, s), T.set(s, t);
        for (var Ie = P; ++Ae < X; ) {
          pe = H[Ae];
          var Fe = t[pe], qe = s[pe];
          if (m)
            var En = P ? m(qe, Fe, pe, s, t, T) : m(Fe, qe, pe, t, s, T);
          if (!(En === r ? Fe === qe || j(Fe, qe, i, m, T) : En)) {
            Be = !1;
            break;
          }
          Ie || (Ie = pe == "constructor");
        }
        if (Be && !Ie) {
          var cn = t.constructor, Dn = s.constructor;
          cn != Dn && "constructor" in t && "constructor" in s && !(typeof cn == "function" && cn instanceof cn && typeof Dn == "function" && Dn instanceof Dn) && (Be = !1);
        }
        return T.delete(t), T.delete(s), Be;
      }
      function ur(t) {
        return sc(yf(t, r, If), t + "");
      }
      function Vl(t) {
        return Hu(t, Yt, ec);
      }
      function Kl(t) {
        return Hu(t, xn, gf);
      }
      var _l = Z ? function(t) {
        return Z.get(t);
      } : gc;
      function Fi(t) {
        for (var s = t.name + "", i = ce[s], m = $e.call(ce, s) ? i.length : 0; m--; ) {
          var j = i[m], T = j.func;
          if (T == null || T == t)
            return j.name;
        }
        return s;
      }
      function ea(t) {
        var s = $e.call(E, "placeholder") ? E : t;
        return s.placeholder;
      }
      function Te() {
        var t = E.iteratee || pc;
        return t = t === pc ? Bu : t, arguments.length ? t(arguments[0], arguments[1]) : t;
      }
      function qi(t, s) {
        var i = t.__data__;
        return zg(s) ? i[typeof s == "string" ? "string" : "hash"] : i.map;
      }
      function $l(t) {
        for (var s = Yt(t), i = s.length; i--; ) {
          var m = s[i], j = t[m];
          s[i] = [m, j, bf(j)];
        }
        return s;
      }
      function is(t, s) {
        var i = Jn(t, s);
        return Ru(i) ? i : r;
      }
      function Dg(t) {
        var s = $e.call(t, or), i = t[or];
        try {
          t[or] = r;
          var m = !0;
        } catch {
        }
        var j = Gs.call(t);
        return m && (s ? t[or] = i : delete t[or]), j;
      }
      var ec = Va ? function(t) {
        return t == null ? [] : (t = at(t), Rn(Va(t), function(s) {
          return Ei.call(t, s);
        }));
      } : xc, gf = Va ? function(t) {
        for (var s = []; t; )
          Bn(s, ec(t)), t = Js(t);
        return s;
      } : xc, en = An;
      (d && en(new d(new ArrayBuffer(1))) != Er || p && en(new p()) != pt || M && en(M.resolve()) != mt || N && en(new N()) != Se || O && en(new O()) != Sn) && (en = function(t) {
        var s = An(t), i = s == Ft ? t.constructor : r, m = i ? As(i) : "";
        if (m)
          switch (m) {
            case ie:
              return Er;
            case Ee:
              return pt;
            case ge:
              return mt;
            case Je:
              return Se;
            case Qe:
              return Sn;
          }
        return s;
      });
      function Tg(t, s, i) {
        for (var m = -1, j = i.length; ++m < j; ) {
          var T = i[m], P = T.size;
          switch (T.type) {
            case "drop":
              t += P;
              break;
            case "dropRight":
              s -= P;
              break;
            case "take":
              s = Gt(s, t + P);
              break;
            case "takeRight":
              t = Nt(t, s - P);
              break;
          }
        }
        return { start: t, end: s };
      }
      function Ng(t) {
        var s = t.match(Oo);
        return s ? s[1].split(zo) : [];
      }
      function xf(t, s, i) {
        s = Br(s, t);
        for (var m = -1, j = s.length, T = !1; ++m < j; ) {
          var P = _n(s[m]);
          if (!(T = t != null && i(t, P)))
            break;
          t = t[P];
        }
        return T || ++m != j ? T : (j = t == null ? 0 : t.length, !!j && Vi(j) && fr(P, j) && (ze(t) || ls(t)));
      }
      function Cg(t) {
        var s = t.length, i = new t.constructor(s);
        return s && typeof t[0] == "string" && $e.call(t, "index") && (i.index = t.index, i.input = t.input), i;
      }
      function wf(t) {
        return typeof t.constructor == "function" && !so(t) ? kn(Js(t)) : {};
      }
      function Ig(t, s, i) {
        var m = t.constructor;
        switch (s) {
          case jr:
            return Jl(t);
          case Qt:
          case Ht:
            return new m(+t);
          case Er:
            return hg(t, i);
          case Yn:
          case Vr:
          case Un:
          case Nn:
          case Kr:
          case js:
          case Es:
          case _t:
          case wa:
            return ef(t, i);
          case pt:
            return new m();
          case Xt:
          case kr:
            return new m(t);
          case Ue:
            return pg(t);
          case Se:
            return new m();
          case Mr:
            return mg(t);
        }
      }
      function Pg(t, s) {
        var i = s.length;
        if (!i)
          return t;
        var m = i - 1;
        return s[m] = (i > 1 ? "& " : "") + s[m], s = s.join(i > 2 ? ", " : " "), t.replace(Po, `{
/* [wrapped with ` + s + `] */
`);
      }
      function Og(t) {
        return ze(t) || ls(t) || !!(Di && t && t[Di]);
      }
      function fr(t, s) {
        var i = typeof t;
        return s = s ?? fe, !!s && (i == "number" || i != "symbol" && HA.test(t)) && t > -1 && t % 1 == 0 && t < s;
      }
      function ln(t, s, i) {
        if (!wt(i))
          return !1;
        var m = typeof s;
        return (m == "number" ? gn(i) && fr(s, i.length) : m == "string" && s in i) ? Qn(i[s], t) : !1;
      }
      function tc(t, s) {
        if (ze(t))
          return !1;
        var i = typeof t;
        return i == "number" || i == "symbol" || i == "boolean" || t == null || jn(t) ? !0 : No.test(t) || !Ea.test(t) || s != null && t in at(s);
      }
      function zg(t) {
        var s = typeof t;
        return s == "string" || s == "number" || s == "symbol" || s == "boolean" ? t !== "__proto__" : t === null;
      }
      function nc(t) {
        var s = Fi(t), i = E[s];
        if (typeof i != "function" || !(s in Xe.prototype))
          return !1;
        if (t === i)
          return !0;
        var m = _l(i);
        return !!m && t === m[0];
      }
      function Hg(t) {
        return !!ki && ki in t;
      }
      var Sg = Fs ? dr : wc;
      function so(t) {
        var s = t && t.constructor, i = typeof s == "function" && s.prototype || Hr;
        return t === i;
      }
      function bf(t) {
        return t === t && !wt(t);
      }
      function vf(t, s) {
        return function(i) {
          return i == null ? !1 : i[t] === s && (s !== r || t in at(i));
        };
      }
      function Rg(t) {
        var s = Zi(t, function(m) {
          return i.size === h && i.clear(), m;
        }), i = s.cache;
        return s;
      }
      function Bg(t, s) {
        var i = t[1], m = s[1], j = i | m, T = j < (D | C | Y), P = m == Y && i == G || m == Y && i == B && t[7].length <= s[8] || m == (Y | B) && s[7].length <= s[8] && i == G;
        if (!(T || P))
          return t;
        m & D && (t[2] = s[2], j |= i & D ? 0 : S);
        var H = s[3];
        if (H) {
          var X = t[3];
          t[3] = X ? nf(X, H, s[4]) : H, t[4] = X ? Zn(t[3], f) : s[4];
        }
        return H = s[5], H && (X = t[5], t[5] = X ? rf(X, H, s[6]) : H, t[6] = X ? Zn(t[5], f) : s[6]), H = s[7], H && (t[7] = H), m & Y && (t[8] = t[8] == null ? s[8] : Gt(t[8], s[8])), t[9] == null && (t[9] = s[9]), t[0] = s[0], t[1] = j, t;
      }
      function Lg(t) {
        var s = [];
        if (t != null)
          for (var i in at(t))
            s.push(i);
        return s;
      }
      function Qg(t) {
        return Gs.call(t);
      }
      function yf(t, s, i) {
        return s = Nt(s === r ? t.length - 1 : s, 0), function() {
          for (var m = arguments, j = -1, T = Nt(m.length - s, 0), P = V(T); ++j < T; )
            P[j] = m[s + j];
          j = -1;
          for (var H = V(s + 1); ++j < s; )
            H[j] = m[j];
          return H[s] = i(P), sn(t, this, H);
        };
      }
      function kf(t, s) {
        return s.length < 2 ? t : os(t, In(s, 0, -1));
      }
      function Xg(t, s) {
        for (var i = t.length, m = Gt(s.length, i), j = mn(t); m--; ) {
          var T = s[m];
          t[m] = fr(T, i) ? j[T] : r;
        }
        return t;
      }
      function rc(t, s) {
        if (!(s === "constructor" && typeof t[s] == "function") && s != "__proto__")
          return t[s];
      }
      var Mf = Ef(Uu), ao = Ti || function(t, s) {
        return St.setTimeout(t, s);
      }, sc = Ef(cg);
      function jf(t, s, i) {
        var m = s + "";
        return sc(t, Pg(m, Fg(Ng(m), i)));
      }
      function Ef(t) {
        var s = 0, i = 0;
        return function() {
          var m = Tl(), j = $ - (m - i);
          if (i = m, j > 0) {
            if (++s >= z)
              return arguments[0];
          } else
            s = 0;
          return t.apply(r, arguments);
        };
      }
      function Gi(t, s) {
        var i = -1, m = t.length, j = m - 1;
        for (s = s === r ? m : s; ++i < s; ) {
          var T = Ql(i, j), P = t[T];
          t[T] = t[i], t[i] = P;
        }
        return t.length = s, t;
      }
      var Df = Rg(function(t) {
        var s = [];
        return t.charCodeAt(0) === 46 && s.push(""), t.replace(CA, function(i, m, j, T) {
          s.push(j ? T.replace(Ns, "$1") : m || i);
        }), s;
      });
      function _n(t) {
        if (typeof t == "string" || jn(t))
          return t;
        var s = t + "";
        return s == "0" && 1 / t == -_ ? "-0" : s;
      }
      function As(t) {
        if (t != null) {
          try {
            return qs.call(t);
          } catch {
          }
          try {
            return t + "";
          } catch {
          }
        }
        return "";
      }
      function Fg(t, s) {
        return an(ue, function(i) {
          var m = "_." + i[0];
          s & i[1] && !_r(t, m) && t.push(m);
        }), t.sort();
      }
      function Tf(t) {
        if (t instanceof Xe)
          return t.clone();
        var s = new Ot(t.__wrapped__, t.__chain__);
        return s.__actions__ = mn(t.__actions__), s.__index__ = t.__index__, s.__values__ = t.__values__, s;
      }
      function qg(t, s, i) {
        (i ? ln(t, s, i) : s === r) ? s = 1 : s = Nt(Re(s), 0);
        var m = t == null ? 0 : t.length;
        if (!m || s < 1)
          return [];
        for (var j = 0, T = 0, P = V(Vs(m / s)); j < m; )
          P[T++] = In(t, j, j += s);
        return P;
      }
      function Gg(t) {
        for (var s = -1, i = t == null ? 0 : t.length, m = 0, j = []; ++s < i; ) {
          var T = t[s];
          T && (j[m++] = T);
        }
        return j;
      }
      function Yg() {
        var t = arguments.length;
        if (!t)
          return [];
        for (var s = V(t - 1), i = arguments[0], m = t; m--; )
          s[m - 1] = arguments[m];
        return Bn(ze(i) ? mn(i) : [i], Wt(s, 1));
      }
      var Ug = Le(function(t, s) {
        return Ct(t) ? $a(t, Wt(s, 1, Ct, !0)) : [];
      }), Jg = Le(function(t, s) {
        var i = Pn(s);
        return Ct(i) && (i = r), Ct(t) ? $a(t, Wt(s, 1, Ct, !0), Te(i, 2)) : [];
      }), Zg = Le(function(t, s) {
        var i = Pn(s);
        return Ct(i) && (i = r), Ct(t) ? $a(t, Wt(s, 1, Ct, !0), r, i) : [];
      });
      function Wg(t, s, i) {
        var m = t == null ? 0 : t.length;
        return m ? (s = i || s === r ? 1 : Re(s), In(t, s < 0 ? 0 : s, m)) : [];
      }
      function Vg(t, s, i) {
        var m = t == null ? 0 : t.length;
        return m ? (s = i || s === r ? 1 : Re(s), s = m - s, In(t, 0, s < 0 ? 0 : s)) : [];
      }
      function Kg(t, s) {
        return t && t.length ? Si(t, Te(s, 3), !0, !0) : [];
      }
      function _g(t, s) {
        return t && t.length ? Si(t, Te(s, 3), !0) : [];
      }
      function $g(t, s, i, m) {
        var j = t == null ? 0 : t.length;
        return j ? (i && typeof i != "number" && ln(t, s, i) && (i = 0, m = j), Ym(t, s, i, m)) : [];
      }
      function Nf(t, s, i) {
        var m = t == null ? 0 : t.length;
        if (!m)
          return -1;
        var j = i == null ? 0 : Re(i);
        return j < 0 && (j = Nt(m + j, 0)), Ls(t, Te(s, 3), j);
      }
      function Cf(t, s, i) {
        var m = t == null ? 0 : t.length;
        if (!m)
          return -1;
        var j = m - 1;
        return i !== r && (j = Re(i), j = i < 0 ? Nt(m + j, 0) : Gt(j, m - 1)), Ls(t, Te(s, 3), j, !0);
      }
      function If(t) {
        var s = t == null ? 0 : t.length;
        return s ? Wt(t, 1) : [];
      }
      function e0(t) {
        var s = t == null ? 0 : t.length;
        return s ? Wt(t, _) : [];
      }
      function t0(t, s) {
        var i = t == null ? 0 : t.length;
        return i ? (s = s === r ? 1 : Re(s), Wt(t, s)) : [];
      }
      function n0(t) {
        for (var s = -1, i = t == null ? 0 : t.length, m = {}; ++s < i; ) {
          var j = t[s];
          m[j[0]] = j[1];
        }
        return m;
      }
      function Pf(t) {
        return t && t.length ? t[0] : r;
      }
      function r0(t, s, i) {
        var m = t == null ? 0 : t.length;
        if (!m)
          return -1;
        var j = i == null ? 0 : Re(i);
        return j < 0 && (j = Nt(m + j, 0)), Ir(t, s, j);
      }
      function s0(t) {
        var s = t == null ? 0 : t.length;
        return s ? In(t, 0, -1) : [];
      }
      var a0 = Le(function(t) {
        var s = At(t, Yl);
        return s.length && s[0] === t[0] ? Hl(s) : [];
      }), o0 = Le(function(t) {
        var s = Pn(t), i = At(t, Yl);
        return s === Pn(i) ? s = r : i.pop(), i.length && i[0] === t[0] ? Hl(i, Te(s, 2)) : [];
      }), i0 = Le(function(t) {
        var s = Pn(t), i = At(t, Yl);
        return s = typeof s == "function" ? s : r, s && i.pop(), i.length && i[0] === t[0] ? Hl(i, r, s) : [];
      });
      function A0(t, s) {
        return t == null ? "" : gt.call(t, s);
      }
      function Pn(t) {
        var s = t == null ? 0 : t.length;
        return s ? t[s - 1] : r;
      }
      function l0(t, s, i) {
        var m = t == null ? 0 : t.length;
        if (!m)
          return -1;
        var j = m;
        return i !== r && (j = Re(i), j = j < 0 ? Nt(m + j, 0) : Gt(j, m - 1)), s === s ? hl(t, s, j) : Ls(t, hi, j, !0);
      }
      function c0(t, s) {
        return t && t.length ? Fu(t, Re(s)) : r;
      }
      var u0 = Le(Of);
      function Of(t, s) {
        return t && t.length && s && s.length ? Ll(t, s) : t;
      }
      function f0(t, s, i) {
        return t && t.length && s && s.length ? Ll(t, s, Te(i, 2)) : t;
      }
      function d0(t, s, i) {
        return t && t.length && s && s.length ? Ll(t, s, r, i) : t;
      }
      var h0 = ur(function(t, s) {
        var i = t == null ? 0 : t.length, m = Il(t, s);
        return Yu(t, At(s, function(j) {
          return fr(j, i) ? +j : j;
        }).sort(tf)), m;
      });
      function p0(t, s) {
        var i = [];
        if (!(t && t.length))
          return i;
        var m = -1, j = [], T = t.length;
        for (s = Te(s, 3); ++m < T; ) {
          var P = t[m];
          s(P, m, t) && (i.push(P), j.push(m));
        }
        return Yu(t, j), i;
      }
      function ac(t) {
        return t == null ? t : u.call(t);
      }
      function m0(t, s, i) {
        var m = t == null ? 0 : t.length;
        return m ? (i && typeof i != "number" && ln(t, s, i) ? (s = 0, i = m) : (s = s == null ? 0 : Re(s), i = i === r ? m : Re(i)), In(t, s, i)) : [];
      }
      function g0(t, s) {
        return Hi(t, s);
      }
      function x0(t, s, i) {
        return Fl(t, s, Te(i, 2));
      }
      function w0(t, s) {
        var i = t == null ? 0 : t.length;
        if (i) {
          var m = Hi(t, s);
          if (m < i && Qn(t[m], s))
            return m;
        }
        return -1;
      }
      function b0(t, s) {
        return Hi(t, s, !0);
      }
      function v0(t, s, i) {
        return Fl(t, s, Te(i, 2), !0);
      }
      function y0(t, s) {
        var i = t == null ? 0 : t.length;
        if (i) {
          var m = Hi(t, s, !0) - 1;
          if (Qn(t[m], s))
            return m;
        }
        return -1;
      }
      function k0(t) {
        return t && t.length ? Ju(t) : [];
      }
      function M0(t, s) {
        return t && t.length ? Ju(t, Te(s, 2)) : [];
      }
      function j0(t) {
        var s = t == null ? 0 : t.length;
        return s ? In(t, 1, s) : [];
      }
      function E0(t, s, i) {
        return t && t.length ? (s = i || s === r ? 1 : Re(s), In(t, 0, s < 0 ? 0 : s)) : [];
      }
      function D0(t, s, i) {
        var m = t == null ? 0 : t.length;
        return m ? (s = i || s === r ? 1 : Re(s), s = m - s, In(t, s < 0 ? 0 : s, m)) : [];
      }
      function T0(t, s) {
        return t && t.length ? Si(t, Te(s, 3), !1, !0) : [];
      }
      function N0(t, s) {
        return t && t.length ? Si(t, Te(s, 3)) : [];
      }
      var C0 = Le(function(t) {
        return Rr(Wt(t, 1, Ct, !0));
      }), I0 = Le(function(t) {
        var s = Pn(t);
        return Ct(s) && (s = r), Rr(Wt(t, 1, Ct, !0), Te(s, 2));
      }), P0 = Le(function(t) {
        var s = Pn(t);
        return s = typeof s == "function" ? s : r, Rr(Wt(t, 1, Ct, !0), r, s);
      });
      function O0(t) {
        return t && t.length ? Rr(t) : [];
      }
      function z0(t, s) {
        return t && t.length ? Rr(t, Te(s, 2)) : [];
      }
      function H0(t, s) {
        return s = typeof s == "function" ? s : r, t && t.length ? Rr(t, r, s) : [];
      }
      function oc(t) {
        if (!(t && t.length))
          return [];
        var s = 0;
        return t = Rn(t, function(i) {
          if (Ct(i))
            return s = Nt(i.length, s), !0;
        }), Ua(s, function(i) {
          return At(t, qa(i));
        });
      }
      function zf(t, s) {
        if (!(t && t.length))
          return [];
        var i = oc(t);
        return s == null ? i : At(i, function(m) {
          return sn(s, r, m);
        });
      }
      var S0 = Le(function(t, s) {
        return Ct(t) ? $a(t, s) : [];
      }), R0 = Le(function(t) {
        return Gl(Rn(t, Ct));
      }), B0 = Le(function(t) {
        var s = Pn(t);
        return Ct(s) && (s = r), Gl(Rn(t, Ct), Te(s, 2));
      }), L0 = Le(function(t) {
        var s = Pn(t);
        return s = typeof s == "function" ? s : r, Gl(Rn(t, Ct), r, s);
      }), Q0 = Le(oc);
      function X0(t, s) {
        return Ku(t || [], s || [], _a);
      }
      function F0(t, s) {
        return Ku(t || [], s || [], no);
      }
      var q0 = Le(function(t) {
        var s = t.length, i = s > 1 ? t[s - 1] : r;
        return i = typeof i == "function" ? (t.pop(), i) : r, zf(t, i);
      });
      function Hf(t) {
        var s = E(t);
        return s.__chain__ = !0, s;
      }
      function G0(t, s) {
        return s(t), t;
      }
      function Yi(t, s) {
        return s(t);
      }
      var Y0 = ur(function(t) {
        var s = t.length, i = s ? t[0] : 0, m = this.__wrapped__, j = function(T) {
          return Il(T, t);
        };
        return s > 1 || this.__actions__.length || !(m instanceof Xe) || !fr(i) ? this.thru(j) : (m = m.slice(i, +i + (s ? 1 : 0)), m.__actions__.push({
          func: Yi,
          args: [j],
          thisArg: r
        }), new Ot(m, this.__chain__).thru(function(T) {
          return s && !T.length && T.push(r), T;
        }));
      });
      function U0() {
        return Hf(this);
      }
      function J0() {
        return new Ot(this.value(), this.__chain__);
      }
      function Z0() {
        this.__values__ === r && (this.__values__ = Wf(this.value()));
        var t = this.__index__ >= this.__values__.length, s = t ? r : this.__values__[this.__index__++];
        return { done: t, value: s };
      }
      function W0() {
        return this;
      }
      function V0(t) {
        for (var s, i = this; i instanceof ts; ) {
          var m = Tf(i);
          m.__index__ = 0, m.__values__ = r, s ? j.__wrapped__ = m : s = m;
          var j = m;
          i = i.__wrapped__;
        }
        return j.__wrapped__ = t, s;
      }
      function K0() {
        var t = this.__wrapped__;
        if (t instanceof Xe) {
          var s = t;
          return this.__actions__.length && (s = new Xe(this)), s = s.reverse(), s.__actions__.push({
            func: Yi,
            args: [ac],
            thisArg: r
          }), new Ot(s, this.__chain__);
        }
        return this.thru(ac);
      }
      function _0() {
        return Vu(this.__wrapped__, this.__actions__);
      }
      var $0 = Ri(function(t, s, i) {
        $e.call(t, i) ? ++t[i] : lr(t, i, 1);
      });
      function e1(t, s, i) {
        var m = ze(t) ? Xa : Gm;
        return i && ln(t, s, i) && (s = r), m(t, Te(s, 3));
      }
      function t1(t, s) {
        var i = ze(t) ? Rn : Ou;
        return i(t, Te(s, 3));
      }
      var n1 = Af(Nf), r1 = Af(Cf);
      function s1(t, s) {
        return Wt(Ui(t, s), 1);
      }
      function a1(t, s) {
        return Wt(Ui(t, s), _);
      }
      function o1(t, s, i) {
        return i = i === r ? 1 : Re(i), Wt(Ui(t, s), i);
      }
      function Sf(t, s) {
        var i = ze(t) ? an : Sr;
        return i(t, Te(s, 3));
      }
      function Rf(t, s) {
        var i = ze(t) ? ui : Pu;
        return i(t, Te(s, 3));
      }
      var i1 = Ri(function(t, s, i) {
        $e.call(t, i) ? t[i].push(s) : lr(t, i, [s]);
      });
      function A1(t, s, i, m) {
        t = gn(t) ? t : na(t), i = i && !m ? Re(i) : 0;
        var j = t.length;
        return i < 0 && (i = Nt(j + i, 0)), Ki(t) ? i <= j && t.indexOf(s, i) > -1 : !!j && Ir(t, s, i) > -1;
      }
      var l1 = Le(function(t, s, i) {
        var m = -1, j = typeof s == "function", T = gn(t) ? V(t.length) : [];
        return Sr(t, function(P) {
          T[++m] = j ? sn(s, P, i) : eo(P, s, i);
        }), T;
      }), c1 = Ri(function(t, s, i) {
        lr(t, i, s);
      });
      function Ui(t, s) {
        var i = ze(t) ? At : Lu;
        return i(t, Te(s, 3));
      }
      function u1(t, s, i, m) {
        return t == null ? [] : (ze(s) || (s = s == null ? [] : [s]), i = m ? r : i, ze(i) || (i = i == null ? [] : [i]), qu(t, s, i));
      }
      var f1 = Ri(function(t, s, i) {
        t[i ? 0 : 1].push(s);
      }, function() {
        return [[], []];
      });
      function d1(t, s, i) {
        var m = ze(t) ? Bs : mi, j = arguments.length < 3;
        return m(t, Te(s, 4), i, j, Sr);
      }
      function h1(t, s, i) {
        var m = ze(t) ? fi : mi, j = arguments.length < 3;
        return m(t, Te(s, 4), i, j, Pu);
      }
      function p1(t, s) {
        var i = ze(t) ? Rn : Ou;
        return i(t, Wi(Te(s, 3)));
      }
      function m1(t) {
        var s = ze(t) ? Tu : Ag;
        return s(t);
      }
      function g1(t, s, i) {
        (i ? ln(t, s, i) : s === r) ? s = 1 : s = Re(s);
        var m = ze(t) ? Lm : lg;
        return m(t, s);
      }
      function x1(t) {
        var s = ze(t) ? Qm : ug;
        return s(t);
      }
      function w1(t) {
        if (t == null)
          return 0;
        if (gn(t))
          return Ki(t) ? Or(t) : t.length;
        var s = en(t);
        return s == pt || s == Se ? t.size : Rl(t).length;
      }
      function b1(t, s, i) {
        var m = ze(t) ? Fa : fg;
        return i && ln(t, s, i) && (s = r), m(t, Te(s, 3));
      }
      var v1 = Le(function(t, s) {
        if (t == null)
          return [];
        var i = s.length;
        return i > 1 && ln(t, s[0], s[1]) ? s = [] : i > 2 && ln(s[0], s[1], s[2]) && (s = [s[0]]), qu(t, Wt(s, 1), []);
      }), Ji = jl || function() {
        return St.Date.now();
      };
      function y1(t, s) {
        if (typeof s != "function")
          throw new on(v);
        return t = Re(t), function() {
          if (--t < 1)
            return s.apply(this, arguments);
        };
      }
      function Bf(t, s, i) {
        return s = i ? r : s, s = t && s == null ? t.length : s, cr(t, Y, r, r, r, r, s);
      }
      function Lf(t, s) {
        var i;
        if (typeof s != "function")
          throw new on(v);
        return t = Re(t), function() {
          return --t > 0 && (i = s.apply(this, arguments)), t <= 1 && (s = r), i;
        };
      }
      var ic = Le(function(t, s, i) {
        var m = D;
        if (i.length) {
          var j = Zn(i, ea(ic));
          m |= W;
        }
        return cr(t, m, s, i, j);
      }), Qf = Le(function(t, s, i) {
        var m = D | C;
        if (i.length) {
          var j = Zn(i, ea(Qf));
          m |= W;
        }
        return cr(s, m, t, i, j);
      });
      function Xf(t, s, i) {
        s = i ? r : s;
        var m = cr(t, G, r, r, r, r, r, s);
        return m.placeholder = Xf.placeholder, m;
      }
      function Ff(t, s, i) {
        s = i ? r : s;
        var m = cr(t, Q, r, r, r, r, r, s);
        return m.placeholder = Ff.placeholder, m;
      }
      function qf(t, s, i) {
        var m, j, T, P, H, X, ae = 0, oe = !1, Ae = !1, pe = !0;
        if (typeof t != "function")
          throw new on(v);
        s = On(s) || 0, wt(i) && (oe = !!i.leading, Ae = "maxWait" in i, T = Ae ? Nt(On(i.maxWait) || 0, s) : T, pe = "trailing" in i ? !!i.trailing : pe);
        function ke(It) {
          var Xn = m, pr = j;
          return m = j = r, ae = It, P = t.apply(pr, Xn), P;
        }
        function Ce(It) {
          return ae = It, H = ao(Fe, s), oe ? ke(It) : P;
        }
        function Be(It) {
          var Xn = It - X, pr = It - ae, Ad = s - Xn;
          return Ae ? Gt(Ad, T - pr) : Ad;
        }
        function Ie(It) {
          var Xn = It - X, pr = It - ae;
          return X === r || Xn >= s || Xn < 0 || Ae && pr >= T;
        }
        function Fe() {
          var It = Ji();
          if (Ie(It))
            return qe(It);
          H = ao(Fe, Be(It));
        }
        function qe(It) {
          return H = r, pe && m ? ke(It) : (m = j = r, P);
        }
        function En() {
          H !== r && _u(H), ae = 0, m = X = j = H = r;
        }
        function cn() {
          return H === r ? P : qe(Ji());
        }
        function Dn() {
          var It = Ji(), Xn = Ie(It);
          if (m = arguments, j = this, X = It, Xn) {
            if (H === r)
              return Ce(X);
            if (Ae)
              return _u(H), H = ao(Fe, s), ke(X);
          }
          return H === r && (H = ao(Fe, s)), P;
        }
        return Dn.cancel = En, Dn.flush = cn, Dn;
      }
      var k1 = Le(function(t, s) {
        return Iu(t, 1, s);
      }), M1 = Le(function(t, s, i) {
        return Iu(t, On(s) || 0, i);
      });
      function j1(t) {
        return cr(t, U);
      }
      function Zi(t, s) {
        if (typeof t != "function" || s != null && typeof s != "function")
          throw new on(v);
        var i = function() {
          var m = arguments, j = s ? s.apply(this, m) : m[0], T = i.cache;
          if (T.has(j))
            return T.get(j);
          var P = t.apply(this, m);
          return i.cache = T.set(j, P) || T, P;
        };
        return i.cache = new (Zi.Cache || Ar)(), i;
      }
      Zi.Cache = Ar;
      function Wi(t) {
        if (typeof t != "function")
          throw new on(v);
        return function() {
          var s = arguments;
          switch (s.length) {
            case 0:
              return !t.call(this);
            case 1:
              return !t.call(this, s[0]);
            case 2:
              return !t.call(this, s[0], s[1]);
            case 3:
              return !t.call(this, s[0], s[1], s[2]);
          }
          return !t.apply(this, s);
        };
      }
      function E1(t) {
        return Lf(2, t);
      }
      var D1 = dg(function(t, s) {
        s = s.length == 1 && ze(s[0]) ? At(s[0], $t(Te())) : At(Wt(s, 1), $t(Te()));
        var i = s.length;
        return Le(function(m) {
          for (var j = -1, T = Gt(m.length, i); ++j < T; )
            m[j] = s[j].call(this, m[j]);
          return sn(t, this, m);
        });
      }), Ac = Le(function(t, s) {
        var i = Zn(s, ea(Ac));
        return cr(t, W, r, s, i);
      }), Gf = Le(function(t, s) {
        var i = Zn(s, ea(Gf));
        return cr(t, J, r, s, i);
      }), T1 = ur(function(t, s) {
        return cr(t, B, r, r, r, s);
      });
      function N1(t, s) {
        if (typeof t != "function")
          throw new on(v);
        return s = s === r ? s : Re(s), Le(t, s);
      }
      function C1(t, s) {
        if (typeof t != "function")
          throw new on(v);
        return s = s == null ? 0 : Nt(Re(s), 0), Le(function(i) {
          var m = i[s], j = Lr(i, 0, s);
          return m && Bn(j, m), sn(t, this, j);
        });
      }
      function I1(t, s, i) {
        var m = !0, j = !0;
        if (typeof t != "function")
          throw new on(v);
        return wt(i) && (m = "leading" in i ? !!i.leading : m, j = "trailing" in i ? !!i.trailing : j), qf(t, s, {
          leading: m,
          maxWait: s,
          trailing: j
        });
      }
      function P1(t) {
        return Bf(t, 1);
      }
      function O1(t, s) {
        return Ac(Ul(s), t);
      }
      function z1() {
        if (!arguments.length)
          return [];
        var t = arguments[0];
        return ze(t) ? t : [t];
      }
      function H1(t) {
        return Cn(t, g);
      }
      function S1(t, s) {
        return s = typeof s == "function" ? s : r, Cn(t, g, s);
      }
      function R1(t) {
        return Cn(t, b | g);
      }
      function B1(t, s) {
        return s = typeof s == "function" ? s : r, Cn(t, b | g, s);
      }
      function L1(t, s) {
        return s == null || Cu(t, s, Yt(s));
      }
      function Qn(t, s) {
        return t === s || t !== t && s !== s;
      }
      var Q1 = Xi(zl), X1 = Xi(function(t, s) {
        return t >= s;
      }), ls = Su(/* @__PURE__ */ function() {
        return arguments;
      }()) ? Su : function(t) {
        return yt(t) && $e.call(t, "callee") && !Ei.call(t, "callee");
      }, ze = V.isArray, F1 = ai ? $t(ai) : Vm;
      function gn(t) {
        return t != null && Vi(t.length) && !dr(t);
      }
      function Ct(t) {
        return yt(t) && gn(t);
      }
      function q1(t) {
        return t === !0 || t === !1 || yt(t) && An(t) == Qt;
      }
      var Qr = El || wc, G1 = oi ? $t(oi) : Km;
      function Y1(t) {
        return yt(t) && t.nodeType === 1 && !oo(t);
      }
      function U1(t) {
        if (t == null)
          return !0;
        if (gn(t) && (ze(t) || typeof t == "string" || typeof t.splice == "function" || Qr(t) || ta(t) || ls(t)))
          return !t.length;
        var s = en(t);
        if (s == pt || s == Se)
          return !t.size;
        if (so(t))
          return !Rl(t).length;
        for (var i in t)
          if ($e.call(t, i))
            return !1;
        return !0;
      }
      function J1(t, s) {
        return to(t, s);
      }
      function Z1(t, s, i) {
        i = typeof i == "function" ? i : r;
        var m = i ? i(t, s) : r;
        return m === r ? to(t, s, r, i) : !!m;
      }
      function lc(t) {
        if (!yt(t))
          return !1;
        var s = An(t);
        return s == Me || s == ne || typeof t.message == "string" && typeof t.name == "string" && !oo(t);
      }
      function W1(t) {
        return typeof t == "number" && Ni(t);
      }
      function dr(t) {
        if (!wt(t))
          return !1;
        var s = An(t);
        return s == Ne || s == Ge || s == Jt || s == ar;
      }
      function Yf(t) {
        return typeof t == "number" && t == Re(t);
      }
      function Vi(t) {
        return typeof t == "number" && t > -1 && t % 1 == 0 && t <= fe;
      }
      function wt(t) {
        var s = typeof t;
        return t != null && (s == "object" || s == "function");
      }
      function yt(t) {
        return t != null && typeof t == "object";
      }
      var Uf = ii ? $t(ii) : $m;
      function V1(t, s) {
        return t === s || Sl(t, s, $l(s));
      }
      function K1(t, s, i) {
        return i = typeof i == "function" ? i : r, Sl(t, s, $l(s), i);
      }
      function _1(t) {
        return Jf(t) && t != +t;
      }
      function $1(t) {
        if (Sg(t))
          throw new Pe(c);
        return Ru(t);
      }
      function ex(t) {
        return t === null;
      }
      function tx(t) {
        return t == null;
      }
      function Jf(t) {
        return typeof t == "number" || yt(t) && An(t) == Xt;
      }
      function oo(t) {
        if (!yt(t) || An(t) != Ft)
          return !1;
        var s = Js(t);
        if (s === null)
          return !0;
        var i = $e.call(s, "constructor") && s.constructor;
        return typeof i == "function" && i instanceof i && qs.call(i) == Zt;
      }
      var cc = Ai ? $t(Ai) : eg;
      function nx(t) {
        return Yf(t) && t >= -fe && t <= fe;
      }
      var Zf = li ? $t(li) : tg;
      function Ki(t) {
        return typeof t == "string" || !ze(t) && yt(t) && An(t) == kr;
      }
      function jn(t) {
        return typeof t == "symbol" || yt(t) && An(t) == Mr;
      }
      var ta = ci ? $t(ci) : ng;
      function rx(t) {
        return t === r;
      }
      function sx(t) {
        return yt(t) && en(t) == Sn;
      }
      function ax(t) {
        return yt(t) && An(t) == TA;
      }
      var ox = Xi(Bl), ix = Xi(function(t, s) {
        return t <= s;
      });
      function Wf(t) {
        if (!t)
          return [];
        if (gn(t))
          return Ki(t) ? hn(t) : mn(t);
        if (es && t[es])
          return ul(t[es]());
        var s = en(t), i = s == pt ? Za : s == Se ? Qs : na;
        return i(t);
      }
      function hr(t) {
        if (!t)
          return t === 0 ? t : 0;
        if (t = On(t), t === _ || t === -_) {
          var s = t < 0 ? -1 : 1;
          return s * xe;
        }
        return t === t ? t : 0;
      }
      function Re(t) {
        var s = hr(t), i = s % 1;
        return s === s ? i ? s - i : s : 0;
      }
      function Vf(t) {
        return t ? as(Re(t), 0, de) : 0;
      }
      function On(t) {
        if (typeof t == "number")
          return t;
        if (jn(t))
          return I;
        if (wt(t)) {
          var s = typeof t.valueOf == "function" ? t.valueOf() : t;
          t = wt(s) ? s + "" : s;
        }
        if (typeof t != "string")
          return t === 0 ? t : +t;
        t = gi(t);
        var i = PA.test(t);
        return i || zA.test(t) ? _A(t.slice(2), i ? 2 : 8) : IA.test(t) ? I : +t;
      }
      function Kf(t) {
        return Kn(t, xn(t));
      }
      function Ax(t) {
        return t ? as(Re(t), -fe, fe) : t === 0 ? t : 0;
      }
      function nt(t) {
        return t == null ? "" : Mn(t);
      }
      var lx = _s(function(t, s) {
        if (so(s) || gn(s)) {
          Kn(s, Yt(s), t);
          return;
        }
        for (var i in s)
          $e.call(s, i) && _a(t, i, s[i]);
      }), _f = _s(function(t, s) {
        Kn(s, xn(s), t);
      }), _i = _s(function(t, s, i, m) {
        Kn(s, xn(s), t, m);
      }), cx = _s(function(t, s, i, m) {
        Kn(s, Yt(s), t, m);
      }), ux = ur(Il);
      function fx(t, s) {
        var i = kn(t);
        return s == null ? i : Nu(i, s);
      }
      var dx = Le(function(t, s) {
        t = at(t);
        var i = -1, m = s.length, j = m > 2 ? s[2] : r;
        for (j && ln(s[0], s[1], j) && (m = 1); ++i < m; )
          for (var T = s[i], P = xn(T), H = -1, X = P.length; ++H < X; ) {
            var ae = P[H], oe = t[ae];
            (oe === r || Qn(oe, Hr[ae]) && !$e.call(t, ae)) && (t[ae] = T[ae]);
          }
        return t;
      }), hx = Le(function(t) {
        return t.push(r, pf), sn($f, r, t);
      });
      function px(t, s) {
        return di(t, Te(s, 3), Vn);
      }
      function mx(t, s) {
        return di(t, Te(s, 3), Ol);
      }
      function gx(t, s) {
        return t == null ? t : Pl(t, Te(s, 3), xn);
      }
      function xx(t, s) {
        return t == null ? t : zu(t, Te(s, 3), xn);
      }
      function wx(t, s) {
        return t && Vn(t, Te(s, 3));
      }
      function bx(t, s) {
        return t && Ol(t, Te(s, 3));
      }
      function vx(t) {
        return t == null ? [] : Oi(t, Yt(t));
      }
      function yx(t) {
        return t == null ? [] : Oi(t, xn(t));
      }
      function uc(t, s, i) {
        var m = t == null ? r : os(t, s);
        return m === r ? i : m;
      }
      function kx(t, s) {
        return t != null && xf(t, s, Um);
      }
      function fc(t, s) {
        return t != null && xf(t, s, Jm);
      }
      var Mx = cf(function(t, s, i) {
        s != null && typeof s.toString != "function" && (s = Gs.call(s)), t[s] = i;
      }, hc(wn)), jx = cf(function(t, s, i) {
        s != null && typeof s.toString != "function" && (s = Gs.call(s)), $e.call(t, s) ? t[s].push(i) : t[s] = [i];
      }, Te), Ex = Le(eo);
      function Yt(t) {
        return gn(t) ? Du(t) : Rl(t);
      }
      function xn(t) {
        return gn(t) ? Du(t, !0) : rg(t);
      }
      function Dx(t, s) {
        var i = {};
        return s = Te(s, 3), Vn(t, function(m, j, T) {
          lr(i, s(m, j, T), m);
        }), i;
      }
      function Tx(t, s) {
        var i = {};
        return s = Te(s, 3), Vn(t, function(m, j, T) {
          lr(i, j, s(m, j, T));
        }), i;
      }
      var Nx = _s(function(t, s, i) {
        zi(t, s, i);
      }), $f = _s(function(t, s, i, m) {
        zi(t, s, i, m);
      }), Cx = ur(function(t, s) {
        var i = {};
        if (t == null)
          return i;
        var m = !1;
        s = At(s, function(T) {
          return T = Br(T, t), m || (m = T.length > 1), T;
        }), Kn(t, Kl(t), i), m && (i = Cn(i, b | x | g, Mg));
        for (var j = s.length; j--; )
          ql(i, s[j]);
        return i;
      });
      function Ix(t, s) {
        return ed(t, Wi(Te(s)));
      }
      var Px = ur(function(t, s) {
        return t == null ? {} : ag(t, s);
      });
      function ed(t, s) {
        if (t == null)
          return {};
        var i = At(Kl(t), function(m) {
          return [m];
        });
        return s = Te(s), Gu(t, i, function(m, j) {
          return s(m, j[0]);
        });
      }
      function Ox(t, s, i) {
        s = Br(s, t);
        var m = -1, j = s.length;
        for (j || (j = 1, t = r); ++m < j; ) {
          var T = t == null ? r : t[_n(s[m])];
          T === r && (m = j, T = i), t = dr(T) ? T.call(t) : T;
        }
        return t;
      }
      function zx(t, s, i) {
        return t == null ? t : no(t, s, i);
      }
      function Hx(t, s, i, m) {
        return m = typeof m == "function" ? m : r, t == null ? t : no(t, s, i, m);
      }
      var td = df(Yt), nd = df(xn);
      function Sx(t, s, i) {
        var m = ze(t), j = m || Qr(t) || ta(t);
        if (s = Te(s, 4), i == null) {
          var T = t && t.constructor;
          j ? i = m ? new T() : [] : wt(t) ? i = dr(T) ? kn(Js(t)) : {} : i = {};
        }
        return (j ? an : Vn)(t, function(P, H, X) {
          return s(i, P, H, X);
        }), i;
      }
      function Rx(t, s) {
        return t == null ? !0 : ql(t, s);
      }
      function Bx(t, s, i) {
        return t == null ? t : Wu(t, s, Ul(i));
      }
      function Lx(t, s, i, m) {
        return m = typeof m == "function" ? m : r, t == null ? t : Wu(t, s, Ul(i), m);
      }
      function na(t) {
        return t == null ? [] : Ja(t, Yt(t));
      }
      function Qx(t) {
        return t == null ? [] : Ja(t, xn(t));
      }
      function Xx(t, s, i) {
        return i === r && (i = s, s = r), i !== r && (i = On(i), i = i === i ? i : 0), s !== r && (s = On(s), s = s === s ? s : 0), as(On(t), s, i);
      }
      function Fx(t, s, i) {
        return s = hr(s), i === r ? (i = s, s = 0) : i = hr(i), t = On(t), Zm(t, s, i);
      }
      function qx(t, s, i) {
        if (i && typeof i != "boolean" && ln(t, s, i) && (s = i = r), i === r && (typeof s == "boolean" ? (i = s, s = r) : typeof t == "boolean" && (i = t, t = r)), t === r && s === r ? (t = 0, s = 1) : (t = hr(t), s === r ? (s = t, t = 0) : s = hr(s)), t > s) {
          var m = t;
          t = s, s = m;
        }
        if (i || t % 1 || s % 1) {
          var j = Ci();
          return Gt(t + j * (s - t + KA("1e-" + ((j + "").length - 1))), s);
        }
        return Ql(t, s);
      }
      var Gx = $s(function(t, s, i) {
        return s = s.toLowerCase(), t + (i ? rd(s) : s);
      });
      function rd(t) {
        return dc(nt(t).toLowerCase());
      }
      function sd(t) {
        return t = nt(t), t && t.replace(SA, il).replace(yn, "");
      }
      function Yx(t, s, i) {
        t = nt(t), s = Mn(s);
        var m = t.length;
        i = i === r ? m : as(Re(i), 0, m);
        var j = i;
        return i -= s.length, i >= 0 && t.slice(i, j) == s;
      }
      function Ux(t) {
        return t = nt(t), t && ya.test(t) ? t.replace(Ds, Al) : t;
      }
      function Jx(t) {
        return t = nt(t), t && Co.test(t) ? t.replace(Ts, "\\$&") : t;
      }
      var Zx = $s(function(t, s, i) {
        return t + (i ? "-" : "") + s.toLowerCase();
      }), Wx = $s(function(t, s, i) {
        return t + (i ? " " : "") + s.toLowerCase();
      }), Vx = of("toLowerCase");
      function Kx(t, s, i) {
        t = nt(t), s = Re(s);
        var m = s ? Or(t) : 0;
        if (!s || m >= s)
          return t;
        var j = (s - m) / 2;
        return Qi(Ks(j), i) + t + Qi(Vs(j), i);
      }
      function _x(t, s, i) {
        t = nt(t), s = Re(s);
        var m = s ? Or(t) : 0;
        return s && m < s ? t + Qi(s - m, i) : t;
      }
      function $x(t, s, i) {
        t = nt(t), s = Re(s);
        var m = s ? Or(t) : 0;
        return s && m < s ? Qi(s - m, i) + t : t;
      }
      function ew(t, s, i) {
        return i || s == null ? s = 0 : s && (s = +s), Nl(nt(t).replace(Da, ""), s || 0);
      }
      function tw(t, s, i) {
        return (i ? ln(t, s, i) : s === r) ? s = 1 : s = Re(s), Xl(nt(t), s);
      }
      function nw() {
        var t = arguments, s = nt(t[0]);
        return t.length < 3 ? s : s.replace(t[1], t[2]);
      }
      var rw = $s(function(t, s, i) {
        return t + (i ? "_" : "") + s.toLowerCase();
      });
      function sw(t, s, i) {
        return i && typeof i != "number" && ln(t, s, i) && (s = i = r), i = i === r ? de : i >>> 0, i ? (t = nt(t), t && (typeof s == "string" || s != null && !cc(s)) && (s = Mn(s), !s && Pr(t)) ? Lr(hn(t), 0, i) : t.split(s, i)) : [];
      }
      var aw = $s(function(t, s, i) {
        return t + (i ? " " : "") + dc(s);
      });
      function ow(t, s, i) {
        return t = nt(t), i = i == null ? 0 : as(Re(i), 0, t.length), s = Mn(s), t.slice(i, i + s.length) == s;
      }
      function iw(t, s, i) {
        var m = E.templateSettings;
        i && ln(t, s, i) && (s = r), t = nt(t), s = _i({}, s, m, hf);
        var j = _i({}, s.imports, m.imports, hf), T = Yt(j), P = Ja(j, T), H, X, ae = 0, oe = s.interpolate || Is, Ae = "__p += '", pe = Wa(
          (s.escape || Is).source + "|" + oe.source + "|" + (oe === ja ? le : Is).source + "|" + (s.evaluate || Is).source + "|$",
          "g"
        ), ke = "//# sourceURL=" + ($e.call(s, "sourceURL") ? (s.sourceURL + "").replace(/\s/g, " ") : "lodash.templateSources[" + ++$o + "]") + `
`;
        t.replace(pe, function(Ie, Fe, qe, En, cn, Dn) {
          return qe || (qe = En), Ae += t.slice(ae, Dn).replace(RA, ll), Fe && (H = !0, Ae += `' +
__e(` + Fe + `) +
'`), cn && (X = !0, Ae += `';
` + cn + `;
__p += '`), qe && (Ae += `' +
((__t = (` + qe + `)) == null ? '' : __t) +
'`), ae = Dn + Ie.length, Ie;
        }), Ae += `';
`;
        var Ce = $e.call(s, "variable") && s.variable;
        if (!Ce)
          Ae = `with (obj) {
` + Ae + `
}
`;
        else if (Ta.test(Ce))
          throw new Pe(w);
        Ae = (X ? Ae.replace(NA, "") : Ae).replace(ba, "$1").replace(vn, "$1;"), Ae = "function(" + (Ce || "obj") + `) {
` + (Ce ? "" : `obj || (obj = {});
`) + "var __t, __p = ''" + (H ? ", __e = _.escape" : "") + (X ? `, __j = Array.prototype.join;
function print() { __p += __j.call(arguments, '') }
` : `;
`) + Ae + `return __p
}`;
        var Be = od(function() {
          return Ye(T, ke + "return " + Ae).apply(r, P);
        });
        if (Be.source = Ae, lc(Be))
          throw Be;
        return Be;
      }
      function Aw(t) {
        return nt(t).toLowerCase();
      }
      function lw(t) {
        return nt(t).toUpperCase();
      }
      function cw(t, s, i) {
        if (t = nt(t), t && (i || s === r))
          return gi(t);
        if (!t || !(s = Mn(s)))
          return t;
        var m = hn(t), j = hn(s), T = xi(m, j), P = wi(m, j) + 1;
        return Lr(m, T, P).join("");
      }
      function uw(t, s, i) {
        if (t = nt(t), t && (i || s === r))
          return t.slice(0, vi(t) + 1);
        if (!t || !(s = Mn(s)))
          return t;
        var m = hn(t), j = wi(m, hn(s)) + 1;
        return Lr(m, 0, j).join("");
      }
      function fw(t, s, i) {
        if (t = nt(t), t && (i || s === r))
          return t.replace(Da, "");
        if (!t || !(s = Mn(s)))
          return t;
        var m = hn(t), j = xi(m, hn(s));
        return Lr(m, j).join("");
      }
      function dw(t, s) {
        var i = te, m = R;
        if (wt(s)) {
          var j = "separator" in s ? s.separator : j;
          i = "length" in s ? Re(s.length) : i, m = "omission" in s ? Mn(s.omission) : m;
        }
        t = nt(t);
        var T = t.length;
        if (Pr(t)) {
          var P = hn(t);
          T = P.length;
        }
        if (i >= T)
          return t;
        var H = i - Or(m);
        if (H < 1)
          return m;
        var X = P ? Lr(P, 0, H).join("") : t.slice(0, H);
        if (j === r)
          return X + m;
        if (P && (H += X.length - H), cc(j)) {
          if (t.slice(H).search(j)) {
            var ae, oe = X;
            for (j.global || (j = Wa(j.source, nt(Cs.exec(j)) + "g")), j.lastIndex = 0; ae = j.exec(oe); )
              var Ae = ae.index;
            X = X.slice(0, Ae === r ? H : Ae);
          }
        } else if (t.indexOf(Mn(j), H) != H) {
          var pe = X.lastIndexOf(j);
          pe > -1 && (X = X.slice(0, pe));
        }
        return X + m;
      }
      function hw(t) {
        return t = nt(t), t && va.test(t) ? t.replace(Dr, pl) : t;
      }
      var pw = $s(function(t, s, i) {
        return t + (i ? " " : "") + s.toUpperCase();
      }), dc = of("toUpperCase");
      function ad(t, s, i) {
        return t = nt(t), s = i ? r : s, s === r ? cl(t) ? xl(t) : nl(t) : t.match(s) || [];
      }
      var od = Le(function(t, s) {
        try {
          return sn(t, r, s);
        } catch (i) {
          return lc(i) ? i : new Pe(i);
        }
      }), mw = ur(function(t, s) {
        return an(s, function(i) {
          i = _n(i), lr(t, i, ic(t[i], t));
        }), t;
      });
      function gw(t) {
        var s = t == null ? 0 : t.length, i = Te();
        return t = s ? At(t, function(m) {
          if (typeof m[1] != "function")
            throw new on(v);
          return [i(m[0]), m[1]];
        }) : [], Le(function(m) {
          for (var j = -1; ++j < s; ) {
            var T = t[j];
            if (sn(T[0], this, m))
              return sn(T[1], this, m);
          }
        });
      }
      function xw(t) {
        return qm(Cn(t, b));
      }
      function hc(t) {
        return function() {
          return t;
        };
      }
      function ww(t, s) {
        return t == null || t !== t ? s : t;
      }
      var bw = lf(), vw = lf(!0);
      function wn(t) {
        return t;
      }
      function pc(t) {
        return Bu(typeof t == "function" ? t : Cn(t, b));
      }
      function yw(t) {
        return Qu(Cn(t, b));
      }
      function kw(t, s) {
        return Xu(t, Cn(s, b));
      }
      var Mw = Le(function(t, s) {
        return function(i) {
          return eo(i, t, s);
        };
      }), jw = Le(function(t, s) {
        return function(i) {
          return eo(t, i, s);
        };
      });
      function mc(t, s, i) {
        var m = Yt(s), j = Oi(s, m);
        i == null && !(wt(s) && (j.length || !m.length)) && (i = s, s = t, t = this, j = Oi(s, Yt(s)));
        var T = !(wt(i) && "chain" in i) || !!i.chain, P = dr(t);
        return an(j, function(H) {
          var X = s[H];
          t[H] = X, P && (t.prototype[H] = function() {
            var ae = this.__chain__;
            if (T || ae) {
              var oe = t(this.__wrapped__), Ae = oe.__actions__ = mn(this.__actions__);
              return Ae.push({ func: X, args: arguments, thisArg: t }), oe.__chain__ = ae, oe;
            }
            return X.apply(t, Bn([this.value()], arguments));
          });
        }), t;
      }
      function Ew() {
        return St._ === this && (St._ = yl), this;
      }
      function gc() {
      }
      function Dw(t) {
        return t = Re(t), Le(function(s) {
          return Fu(s, t);
        });
      }
      var Tw = Zl(At), Nw = Zl(Xa), Cw = Zl(Fa);
      function id(t) {
        return tc(t) ? qa(_n(t)) : og(t);
      }
      function Iw(t) {
        return function(s) {
          return t == null ? r : os(t, s);
        };
      }
      var Pw = uf(), Ow = uf(!0);
      function xc() {
        return [];
      }
      function wc() {
        return !1;
      }
      function zw() {
        return {};
      }
      function Hw() {
        return "";
      }
      function Sw() {
        return !0;
      }
      function Rw(t, s) {
        if (t = Re(t), t < 1 || t > fe)
          return [];
        var i = de, m = Gt(t, de);
        s = Te(s), t -= de;
        for (var j = Ua(m, s); ++i < t; )
          s(i);
        return j;
      }
      function Bw(t) {
        return ze(t) ? At(t, _n) : jn(t) ? [t] : mn(Df(nt(t)));
      }
      function Lw(t) {
        var s = ++vl;
        return nt(t) + s;
      }
      var Qw = Li(function(t, s) {
        return t + s;
      }, 0), Xw = Wl("ceil"), Fw = Li(function(t, s) {
        return t / s;
      }, 1), qw = Wl("floor");
      function Gw(t) {
        return t && t.length ? Pi(t, wn, zl) : r;
      }
      function Yw(t, s) {
        return t && t.length ? Pi(t, Te(s, 2), zl) : r;
      }
      function Uw(t) {
        return pi(t, wn);
      }
      function Jw(t, s) {
        return pi(t, Te(s, 2));
      }
      function Zw(t) {
        return t && t.length ? Pi(t, wn, Bl) : r;
      }
      function Ww(t, s) {
        return t && t.length ? Pi(t, Te(s, 2), Bl) : r;
      }
      var Vw = Li(function(t, s) {
        return t * s;
      }, 1), Kw = Wl("round"), _w = Li(function(t, s) {
        return t - s;
      }, 0);
      function $w(t) {
        return t && t.length ? Ya(t, wn) : 0;
      }
      function eb(t, s) {
        return t && t.length ? Ya(t, Te(s, 2)) : 0;
      }
      return E.after = y1, E.ary = Bf, E.assign = lx, E.assignIn = _f, E.assignInWith = _i, E.assignWith = cx, E.at = ux, E.before = Lf, E.bind = ic, E.bindAll = mw, E.bindKey = Qf, E.castArray = z1, E.chain = Hf, E.chunk = qg, E.compact = Gg, E.concat = Yg, E.cond = gw, E.conforms = xw, E.constant = hc, E.countBy = $0, E.create = fx, E.curry = Xf, E.curryRight = Ff, E.debounce = qf, E.defaults = dx, E.defaultsDeep = hx, E.defer = k1, E.delay = M1, E.difference = Ug, E.differenceBy = Jg, E.differenceWith = Zg, E.drop = Wg, E.dropRight = Vg, E.dropRightWhile = Kg, E.dropWhile = _g, E.fill = $g, E.filter = t1, E.flatMap = s1, E.flatMapDeep = a1, E.flatMapDepth = o1, E.flatten = If, E.flattenDeep = e0, E.flattenDepth = t0, E.flip = j1, E.flow = bw, E.flowRight = vw, E.fromPairs = n0, E.functions = vx, E.functionsIn = yx, E.groupBy = i1, E.initial = s0, E.intersection = a0, E.intersectionBy = o0, E.intersectionWith = i0, E.invert = Mx, E.invertBy = jx, E.invokeMap = l1, E.iteratee = pc, E.keyBy = c1, E.keys = Yt, E.keysIn = xn, E.map = Ui, E.mapKeys = Dx, E.mapValues = Tx, E.matches = yw, E.matchesProperty = kw, E.memoize = Zi, E.merge = Nx, E.mergeWith = $f, E.method = Mw, E.methodOf = jw, E.mixin = mc, E.negate = Wi, E.nthArg = Dw, E.omit = Cx, E.omitBy = Ix, E.once = E1, E.orderBy = u1, E.over = Tw, E.overArgs = D1, E.overEvery = Nw, E.overSome = Cw, E.partial = Ac, E.partialRight = Gf, E.partition = f1, E.pick = Px, E.pickBy = ed, E.property = id, E.propertyOf = Iw, E.pull = u0, E.pullAll = Of, E.pullAllBy = f0, E.pullAllWith = d0, E.pullAt = h0, E.range = Pw, E.rangeRight = Ow, E.rearg = T1, E.reject = p1, E.remove = p0, E.rest = N1, E.reverse = ac, E.sampleSize = g1, E.set = zx, E.setWith = Hx, E.shuffle = x1, E.slice = m0, E.sortBy = v1, E.sortedUniq = k0, E.sortedUniqBy = M0, E.split = sw, E.spread = C1, E.tail = j0, E.take = E0, E.takeRight = D0, E.takeRightWhile = T0, E.takeWhile = N0, E.tap = G0, E.throttle = I1, E.thru = Yi, E.toArray = Wf, E.toPairs = td, E.toPairsIn = nd, E.toPath = Bw, E.toPlainObject = Kf, E.transform = Sx, E.unary = P1, E.union = C0, E.unionBy = I0, E.unionWith = P0, E.uniq = O0, E.uniqBy = z0, E.uniqWith = H0, E.unset = Rx, E.unzip = oc, E.unzipWith = zf, E.update = Bx, E.updateWith = Lx, E.values = na, E.valuesIn = Qx, E.without = S0, E.words = ad, E.wrap = O1, E.xor = R0, E.xorBy = B0, E.xorWith = L0, E.zip = Q0, E.zipObject = X0, E.zipObjectDeep = F0, E.zipWith = q0, E.entries = td, E.entriesIn = nd, E.extend = _f, E.extendWith = _i, mc(E, E), E.add = Qw, E.attempt = od, E.camelCase = Gx, E.capitalize = rd, E.ceil = Xw, E.clamp = Xx, E.clone = H1, E.cloneDeep = R1, E.cloneDeepWith = B1, E.cloneWith = S1, E.conformsTo = L1, E.deburr = sd, E.defaultTo = ww, E.divide = Fw, E.endsWith = Yx, E.eq = Qn, E.escape = Ux, E.escapeRegExp = Jx, E.every = e1, E.find = n1, E.findIndex = Nf, E.findKey = px, E.findLast = r1, E.findLastIndex = Cf, E.findLastKey = mx, E.floor = qw, E.forEach = Sf, E.forEachRight = Rf, E.forIn = gx, E.forInRight = xx, E.forOwn = wx, E.forOwnRight = bx, E.get = uc, E.gt = Q1, E.gte = X1, E.has = kx, E.hasIn = fc, E.head = Pf, E.identity = wn, E.includes = A1, E.indexOf = r0, E.inRange = Fx, E.invoke = Ex, E.isArguments = ls, E.isArray = ze, E.isArrayBuffer = F1, E.isArrayLike = gn, E.isArrayLikeObject = Ct, E.isBoolean = q1, E.isBuffer = Qr, E.isDate = G1, E.isElement = Y1, E.isEmpty = U1, E.isEqual = J1, E.isEqualWith = Z1, E.isError = lc, E.isFinite = W1, E.isFunction = dr, E.isInteger = Yf, E.isLength = Vi, E.isMap = Uf, E.isMatch = V1, E.isMatchWith = K1, E.isNaN = _1, E.isNative = $1, E.isNil = tx, E.isNull = ex, E.isNumber = Jf, E.isObject = wt, E.isObjectLike = yt, E.isPlainObject = oo, E.isRegExp = cc, E.isSafeInteger = nx, E.isSet = Zf, E.isString = Ki, E.isSymbol = jn, E.isTypedArray = ta, E.isUndefined = rx, E.isWeakMap = sx, E.isWeakSet = ax, E.join = A0, E.kebabCase = Zx, E.last = Pn, E.lastIndexOf = l0, E.lowerCase = Wx, E.lowerFirst = Vx, E.lt = ox, E.lte = ix, E.max = Gw, E.maxBy = Yw, E.mean = Uw, E.meanBy = Jw, E.min = Zw, E.minBy = Ww, E.stubArray = xc, E.stubFalse = wc, E.stubObject = zw, E.stubString = Hw, E.stubTrue = Sw, E.multiply = Vw, E.nth = c0, E.noConflict = Ew, E.noop = gc, E.now = Ji, E.pad = Kx, E.padEnd = _x, E.padStart = $x, E.parseInt = ew, E.random = qx, E.reduce = d1, E.reduceRight = h1, E.repeat = tw, E.replace = nw, E.result = Ox, E.round = Kw, E.runInContext = L, E.sample = m1, E.size = w1, E.snakeCase = rw, E.some = b1, E.sortedIndex = g0, E.sortedIndexBy = x0, E.sortedIndexOf = w0, E.sortedLastIndex = b0, E.sortedLastIndexBy = v0, E.sortedLastIndexOf = y0, E.startCase = aw, E.startsWith = ow, E.subtract = _w, E.sum = $w, E.sumBy = eb, E.template = iw, E.times = Rw, E.toFinite = hr, E.toInteger = Re, E.toLength = Vf, E.toLower = Aw, E.toNumber = On, E.toSafeInteger = Ax, E.toString = nt, E.toUpper = lw, E.trim = cw, E.trimEnd = uw, E.trimStart = fw, E.truncate = dw, E.unescape = hw, E.uniqueId = Lw, E.upperCase = pw, E.upperFirst = dc, E.each = Sf, E.eachRight = Rf, E.first = Pf, mc(E, function() {
        var t = {};
        return Vn(E, function(s, i) {
          $e.call(E.prototype, i) || (t[i] = s);
        }), t;
      }(), { chain: !1 }), E.VERSION = o, an(["bind", "bindKey", "curry", "curryRight", "partial", "partialRight"], function(t) {
        E[t].placeholder = E;
      }), an(["drop", "take"], function(t, s) {
        Xe.prototype[t] = function(i) {
          i = i === r ? 1 : Nt(Re(i), 0);
          var m = this.__filtered__ && !s ? new Xe(this) : this.clone();
          return m.__filtered__ ? m.__takeCount__ = Gt(i, m.__takeCount__) : m.__views__.push({
            size: Gt(i, de),
            type: t + (m.__dir__ < 0 ? "Right" : "")
          }), m;
        }, Xe.prototype[t + "Right"] = function(i) {
          return this.reverse()[t](i).reverse();
        };
      }), an(["filter", "map", "takeWhile"], function(t, s) {
        var i = s + 1, m = i == K || i == F;
        Xe.prototype[t] = function(j) {
          var T = this.clone();
          return T.__iteratees__.push({
            iteratee: Te(j, 3),
            type: i
          }), T.__filtered__ = T.__filtered__ || m, T;
        };
      }), an(["head", "last"], function(t, s) {
        var i = "take" + (s ? "Right" : "");
        Xe.prototype[t] = function() {
          return this[i](1).value()[0];
        };
      }), an(["initial", "tail"], function(t, s) {
        var i = "drop" + (s ? "" : "Right");
        Xe.prototype[t] = function() {
          return this.__filtered__ ? new Xe(this) : this[i](1);
        };
      }), Xe.prototype.compact = function() {
        return this.filter(wn);
      }, Xe.prototype.find = function(t) {
        return this.filter(t).head();
      }, Xe.prototype.findLast = function(t) {
        return this.reverse().find(t);
      }, Xe.prototype.invokeMap = Le(function(t, s) {
        return typeof t == "function" ? new Xe(this) : this.map(function(i) {
          return eo(i, t, s);
        });
      }), Xe.prototype.reject = function(t) {
        return this.filter(Wi(Te(t)));
      }, Xe.prototype.slice = function(t, s) {
        t = Re(t);
        var i = this;
        return i.__filtered__ && (t > 0 || s < 0) ? new Xe(i) : (t < 0 ? i = i.takeRight(-t) : t && (i = i.drop(t)), s !== r && (s = Re(s), i = s < 0 ? i.dropRight(-s) : i.take(s - t)), i);
      }, Xe.prototype.takeRightWhile = function(t) {
        return this.reverse().takeWhile(t).reverse();
      }, Xe.prototype.toArray = function() {
        return this.take(de);
      }, Vn(Xe.prototype, function(t, s) {
        var i = /^(?:filter|find|map|reject)|While$/.test(s), m = /^(?:head|last)$/.test(s), j = E[m ? "take" + (s == "last" ? "Right" : "") : s], T = m || /^find/.test(s);
        j && (E.prototype[s] = function() {
          var P = this.__wrapped__, H = m ? [1] : arguments, X = P instanceof Xe, ae = H[0], oe = X || ze(P), Ae = function(Fe) {
            var qe = j.apply(E, Bn([Fe], H));
            return m && pe ? qe[0] : qe;
          };
          oe && i && typeof ae == "function" && ae.length != 1 && (X = oe = !1);
          var pe = this.__chain__, ke = !!this.__actions__.length, Ce = T && !pe, Be = X && !ke;
          if (!T && oe) {
            P = Be ? P : new Xe(this);
            var Ie = t.apply(P, H);
            return Ie.__actions__.push({ func: Yi, args: [Ae], thisArg: r }), new Ot(Ie, pe);
          }
          return Ce && Be ? t.apply(this, H) : (Ie = this.thru(Ae), Ce ? m ? Ie.value()[0] : Ie.value() : Ie);
        });
      }), an(["pop", "push", "shift", "sort", "splice", "unshift"], function(t) {
        var s = Xs[t], i = /^(?:push|sort|unshift)$/.test(t) ? "tap" : "thru", m = /^(?:pop|shift)$/.test(t);
        E.prototype[t] = function() {
          var j = arguments;
          if (m && !this.__chain__) {
            var T = this.value();
            return s.apply(ze(T) ? T : [], j);
          }
          return this[i](function(P) {
            return s.apply(ze(P) ? P : [], j);
          });
        };
      }), Vn(Xe.prototype, function(t, s) {
        var i = E[s];
        if (i) {
          var m = i.name + "";
          $e.call(ce, m) || (ce[m] = []), ce[m].push({ name: s, func: i });
        }
      }), ce[Bi(r, C).name] = [{
        name: "wrapper",
        func: r
      }], Xe.prototype.clone = Ka, Xe.prototype.reverse = ns, Xe.prototype.value = mm, E.prototype.at = Y0, E.prototype.chain = U0, E.prototype.commit = J0, E.prototype.next = Z0, E.prototype.plant = V0, E.prototype.reverse = K0, E.prototype.toJSON = E.prototype.valueOf = E.prototype.value = _0, E.prototype.first = E.prototype.head, es && (E.prototype[es] = W0), E;
    }, zr = yi();
    rn ? ((rn.exports = zr)._ = zr, Cr._ = zr) : St._ = zr;
  }).call(oa);
})(pA, pA.exports);
var ku = pA.exports, Zc = { exports: {} }, Ec, ih;
function v5() {
  if (ih) return Ec;
  ih = 1;
  var e = 1e3, n = e * 60, r = n * 60, o = r * 24, l = o * 7, c = o * 365.25;
  Ec = function(f, b) {
    b = b || {};
    var x = typeof f;
    if (x === "string" && f.length > 0)
      return v(f);
    if (x === "number" && isFinite(f))
      return b.long ? A(f) : w(f);
    throw new Error(
      "val is not a non-empty string or a valid number. val=" + JSON.stringify(f)
    );
  };
  function v(f) {
    if (f = String(f), !(f.length > 100)) {
      var b = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(
        f
      );
      if (b) {
        var x = parseFloat(b[1]), g = (b[2] || "ms").toLowerCase();
        switch (g) {
          case "years":
          case "year":
          case "yrs":
          case "yr":
          case "y":
            return x * c;
          case "weeks":
          case "week":
          case "w":
            return x * l;
          case "days":
          case "day":
          case "d":
            return x * o;
          case "hours":
          case "hour":
          case "hrs":
          case "hr":
          case "h":
            return x * r;
          case "minutes":
          case "minute":
          case "mins":
          case "min":
          case "m":
            return x * n;
          case "seconds":
          case "second":
          case "secs":
          case "sec":
          case "s":
            return x * e;
          case "milliseconds":
          case "millisecond":
          case "msecs":
          case "msec":
          case "ms":
            return x;
          default:
            return;
        }
      }
    }
  }
  function w(f) {
    var b = Math.abs(f);
    return b >= o ? Math.round(f / o) + "d" : b >= r ? Math.round(f / r) + "h" : b >= n ? Math.round(f / n) + "m" : b >= e ? Math.round(f / e) + "s" : f + "ms";
  }
  function A(f) {
    var b = Math.abs(f);
    return b >= o ? h(f, b, o, "day") : b >= r ? h(f, b, r, "hour") : b >= n ? h(f, b, n, "minute") : b >= e ? h(f, b, e, "second") : f + " ms";
  }
  function h(f, b, x, g) {
    var y = b >= x * 1.5;
    return Math.round(f / x) + " " + g + (y ? "s" : "");
  }
  return Ec;
}
function y5(e) {
  r.debug = r, r.default = r, r.coerce = A, r.disable = v, r.enable = l, r.enabled = w, r.humanize = v5(), r.destroy = h, Object.keys(e).forEach((f) => {
    r[f] = e[f];
  }), r.names = [], r.skips = [], r.formatters = {};
  function n(f) {
    let b = 0;
    for (let x = 0; x < f.length; x++)
      b = (b << 5) - b + f.charCodeAt(x), b |= 0;
    return r.colors[Math.abs(b) % r.colors.length];
  }
  r.selectColor = n;
  function r(f) {
    let b, x = null, g, y;
    function k(...D) {
      if (!k.enabled)
        return;
      const C = k, S = Number(/* @__PURE__ */ new Date()), G = S - (b || S);
      C.diff = G, C.prev = b, C.curr = S, b = S, D[0] = r.coerce(D[0]), typeof D[0] != "string" && D.unshift("%O");
      let Q = 0;
      D[0] = D[0].replace(/%([a-zA-Z%])/g, (J, Y) => {
        if (J === "%%")
          return "%";
        Q++;
        const B = r.formatters[Y];
        if (typeof B == "function") {
          const U = D[Q];
          J = B.call(C, U), D.splice(Q, 1), Q--;
        }
        return J;
      }), r.formatArgs.call(C, D), (C.log || r.log).apply(C, D);
    }
    return k.namespace = f, k.useColors = r.useColors(), k.color = r.selectColor(f), k.extend = o, k.destroy = r.destroy, Object.defineProperty(k, "enabled", {
      enumerable: !0,
      configurable: !1,
      get: () => x !== null ? x : (g !== r.namespaces && (g = r.namespaces, y = r.enabled(f)), y),
      set: (D) => {
        x = D;
      }
    }), typeof r.init == "function" && r.init(k), k;
  }
  function o(f, b) {
    const x = r(this.namespace + (typeof b > "u" ? ":" : b) + f);
    return x.log = this.log, x;
  }
  function l(f) {
    r.save(f), r.namespaces = f, r.names = [], r.skips = [];
    const b = (typeof f == "string" ? f : "").trim().replace(/\s+/g, ",").split(",").filter(Boolean);
    for (const x of b)
      x[0] === "-" ? r.skips.push(x.slice(1)) : r.names.push(x);
  }
  function c(f, b) {
    let x = 0, g = 0, y = -1, k = 0;
    for (; x < f.length; )
      if (g < b.length && (b[g] === f[x] || b[g] === "*"))
        b[g] === "*" ? (y = g, k = x, g++) : (x++, g++);
      else if (y !== -1)
        g = y + 1, k++, x = k;
      else
        return !1;
    for (; g < b.length && b[g] === "*"; )
      g++;
    return g === b.length;
  }
  function v() {
    const f = [
      ...r.names,
      ...r.skips.map((b) => "-" + b)
    ].join(",");
    return r.enable(""), f;
  }
  function w(f) {
    for (const b of r.skips)
      if (c(f, b))
        return !1;
    for (const b of r.names)
      if (c(f, b))
        return !0;
    return !1;
  }
  function A(f) {
    return f instanceof Error ? f.stack || f.message : f;
  }
  function h() {
    console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");
  }
  return r.enable(r.load()), r;
}
var k5 = y5;
(function(e, n) {
  n.formatArgs = o, n.save = l, n.load = c, n.useColors = r, n.storage = v(), n.destroy = /* @__PURE__ */ (() => {
    let A = !1;
    return () => {
      A || (A = !0, console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."));
    };
  })(), n.colors = [
    "#0000CC",
    "#0000FF",
    "#0033CC",
    "#0033FF",
    "#0066CC",
    "#0066FF",
    "#0099CC",
    "#0099FF",
    "#00CC00",
    "#00CC33",
    "#00CC66",
    "#00CC99",
    "#00CCCC",
    "#00CCFF",
    "#3300CC",
    "#3300FF",
    "#3333CC",
    "#3333FF",
    "#3366CC",
    "#3366FF",
    "#3399CC",
    "#3399FF",
    "#33CC00",
    "#33CC33",
    "#33CC66",
    "#33CC99",
    "#33CCCC",
    "#33CCFF",
    "#6600CC",
    "#6600FF",
    "#6633CC",
    "#6633FF",
    "#66CC00",
    "#66CC33",
    "#9900CC",
    "#9900FF",
    "#9933CC",
    "#9933FF",
    "#99CC00",
    "#99CC33",
    "#CC0000",
    "#CC0033",
    "#CC0066",
    "#CC0099",
    "#CC00CC",
    "#CC00FF",
    "#CC3300",
    "#CC3333",
    "#CC3366",
    "#CC3399",
    "#CC33CC",
    "#CC33FF",
    "#CC6600",
    "#CC6633",
    "#CC9900",
    "#CC9933",
    "#CCCC00",
    "#CCCC33",
    "#FF0000",
    "#FF0033",
    "#FF0066",
    "#FF0099",
    "#FF00CC",
    "#FF00FF",
    "#FF3300",
    "#FF3333",
    "#FF3366",
    "#FF3399",
    "#FF33CC",
    "#FF33FF",
    "#FF6600",
    "#FF6633",
    "#FF9900",
    "#FF9933",
    "#FFCC00",
    "#FFCC33"
  ];
  function r() {
    if (typeof window < "u" && window.process && (window.process.type === "renderer" || window.process.__nwjs))
      return !0;
    if (typeof navigator < "u" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))
      return !1;
    let A;
    return typeof document < "u" && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || // Is firebug? http://stackoverflow.com/a/398120/376773
    typeof window < "u" && window.console && (window.console.firebug || window.console.exception && window.console.table) || // Is firefox >= v31?
    // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
    typeof navigator < "u" && navigator.userAgent && (A = navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)) && parseInt(A[1], 10) >= 31 || // Double check webkit in userAgent just in case we are in a worker
    typeof navigator < "u" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/);
  }
  function o(A) {
    if (A[0] = (this.useColors ? "%c" : "") + this.namespace + (this.useColors ? " %c" : " ") + A[0] + (this.useColors ? "%c " : " ") + "+" + e.exports.humanize(this.diff), !this.useColors)
      return;
    const h = "color: " + this.color;
    A.splice(1, 0, h, "color: inherit");
    let f = 0, b = 0;
    A[0].replace(/%[a-zA-Z%]/g, (x) => {
      x !== "%%" && (f++, x === "%c" && (b = f));
    }), A.splice(b, 0, h);
  }
  n.log = console.debug || console.log || (() => {
  });
  function l(A) {
    try {
      A ? n.storage.setItem("debug", A) : n.storage.removeItem("debug");
    } catch {
    }
  }
  function c() {
    let A;
    try {
      A = n.storage.getItem("debug") || n.storage.getItem("DEBUG");
    } catch {
    }
    return !A && typeof process < "u" && "env" in process && (A = !1), A;
  }
  function v() {
    try {
      return localStorage;
    } catch {
    }
  }
  e.exports = k5(n);
  const { formatters: w } = e.exports;
  w.j = function(A) {
    try {
      return JSON.stringify(A);
    } catch (h) {
      return "[UnexpectedJSONParseError]: " + h.message;
    }
  };
})(Zc, Zc.exports);
var om = Zc.exports;
const lt = ku, zt = om("mongo-knex:converter"), un = om("mongo-knex:converter-extended"), M5 = [
  "$and",
  "$or"
], tn = {
  $eq: "=",
  $ne: "!=",
  $gt: ">",
  $gte: ">=",
  $lt: "<",
  $lte: "<=",
  $in: "in",
  $nin: "not in",
  $regex: "like",
  $not: "not like"
}, fs = "*", Mu = (e) => e.charAt(0) === "$", j5 = (e) => Mu(e) && lt.includes(M5, e), Dc = (e) => Mu(e) && lt.includes(lt.keys(tn), e), co = (e) => Mu(e) && lt.includes(["$ne", "$nin"], e), Ah = (e) => lt.includes([tn.$in, tn.$nin], e), aa = (e) => JSON.stringify(e, function(n, r) {
  return r instanceof RegExp ? r.toString() : r;
}), E5 = ({ source: e, ignoreCase: n }) => (e = e.replace(/\\([.*+?^${}()|[\]\\/])/g, "$1"), n && (e = e.toLowerCase()), e = e.replace(new RegExp(lt.escapeRegExp(fs), "g"), fs + fs), e = e.replace(/%/g, fs + "%"), e = e.replace(/_/g, fs + "_"), e.startsWith("^") ? e = e.substring(1) + "%" : e.endsWith("$") ? e = "%" + e.substring(0, e.length - 1) : e = "%" + e + "%", { source: e, ignoreCase: n });
class D5 {
  /**
   *
   * @param {Object} options
   * @param {String} options.tableName
   *
   * @param {Object} config
   * @param {Object} config.relations structure:
   *  {[relation-name]}: {
   *      tableName: String (e.g. tags)
   *      tableNameAs: String (e.g. t, optional)
   *      type: String (e.g. manyToMany)
   *      joinTable: String (e.g.  posts_tags)
   *      joinFrom: String (e.g. post_id)
   *      joinTo: String (e.g. tag_id)
   *  }
   */
  constructor(n = {}, r = {}) {
    this.tableName = n.tableName, this.cte = r.cte, this.config = {}, Object.assign(this.config, { relations: {} }, r);
  }
  processWhereType(n, r, o) {
    return o === null ? (n === "$or" ? "orWhere" : "where") + (r === "$ne" ? "NotNull" : "Null") : n === "$or" ? "orWhere" : "andWhere";
  }
  /**
   * Determine if statement lives on parent table or if statement refers to a relation.
   */
  processStatement(n, r, o) {
    const [l, c] = n.split(".");
    if (c) {
      zt(l, c);
      const v = l;
      let w = this.config.relations[v];
      return w ? {
        table: l,
        column: c,
        operator: r,
        value: o,
        config: w,
        isRelation: !0
      } : (w = lt.find(this.config.relations, (A) => A.joinTable === v), w ? {
        joinTable: w.joinTable,
        table: w.tableName,
        column: c,
        operator: r,
        value: o,
        config: w,
        isRelation: !0
      } : {
        column: n,
        operator: r,
        value: o,
        isRelation: !1
      });
    }
    return {
      column: this.cte && this.cte === !0 ? `${n}` : `${this.tableName}.${n}`,
      operator: r,
      value: o,
      isRelation: !1
    };
  }
  /**
   * We group the relations by a unique key.
   * Each grouping will create a sub query.
   *
   * Returns a group structure of following format:
   *  {
   *      "groupKey": {
   *          innerWhereStatements: [],
   *          joinFilterStatements: []
   *      }
   *  }
   */
  groupRelationStatements(n, r) {
    const o = {}, l = r === "$and" ? n.filter((c) => !c.joinTable) : n;
    if (lt.each(l, (c, v) => {
      let w = co(c.operator);
      !w && o[c.table] && (w = lt.find(o[c.table].innerWhereStatements, (h) => {
        if (h.column === c.column)
          return !0;
      }));
      let A = c.table;
      if (w && (A = `${c.table}_${v})}`, o[A]))
        throw new Error("Key collision detected");
      o[A] || (o[A] = {}, o[A].innerWhereStatements = []), o[A].innerWhereStatements.push(c);
    }), r === "$and") {
      const c = n.filter((v) => v.joinTable);
      lt.each(Object.keys(o), (v) => {
        o[v].joinFilterStatements = c;
      });
    }
    return o;
  }
  /**
   * Build queries for relations.
   */
  buildRelationQuery(n, r, o) {
    zt("(buildRelationQuery)"), un.enabled && un(`(buildRelationQuery) ${aa(r)}`);
    const l = this.groupRelationStatements(r, o);
    un.enabled && un(`(buildRelationQuery) grouped: ${aa(l)}`), lt.each(Object.keys(l), (c) => {
      zt(`(buildRelationQuery) build relation for ${c}`);
      const v = l[c].innerWhereStatements, w = v[0];
      if (w.config.type === "manyToMany")
        if (lt.every(v.map((A) => A.operator), Dc)) {
          const A = lt.every(v.map((b) => b.operator), (b) => co(b)), h = A ? tn.$nin : tn.$in, f = ["whereNull", "whereNotNull"].includes(w.whereType) ? "andWhere" : ["orWhereNull", "orWhereNotNull"].includes(w.whereType) ? "orWhere" : w.whereType;
          n[f](`${this.tableName}.id`, h, function() {
            const b = l[c].joinFilterStatements;
            let x = w.config.tableName, g = `${w.config.tableName}.${w.config.joinToForeign || "id"}`;
            w.config.tableNameAs && (x = `${w.config.tableName} as ${w.config.tableNameAs}`, g = `${w.config.tableNameAs}.${w.config.joinToForeign || "id"}`);
            const y = w.config.joinType || "innerJoin", k = this.select(`${w.config.joinTable}.${w.config.joinFrom}`).from(`${w.config.joinTable}`)[y](x, function() {
              this.on(g, "=", `${w.config.joinTable}.${w.config.joinTo}`), lt.each(b, (D) => {
                this.andOn(`${D.joinTable}.${D.column}`, tn[D.operator], D.value);
              });
            });
            return un.enabled && zt(`(buildRelationQuery) innerQB sql-pre: ${k.toSQL().sql}`), lt.each(v, (D, C) => {
              zt(`(buildRelationQuery) build relation where statements for ${C}`);
              const S = `${D.joinTable || D.table}.${D.column}`;
              let G;
              A ? G = tn.$in : co(D.operator) ? G = tn.$nin : G = tn[D.operator];
              let Q = D.value;
              Ah(G) && (Q = lt.isArray(D.value) ? D.value : [D.value]), k[D.whereType](S, G, Q);
            }), un.enabled && zt(`(buildRelationQuery) innerQB sql-post: ${k.toSQL().sql}`), k;
          });
        } else
          zt(`one of ${c} group statements contains unknown operator`);
      else if (w.config.type === "oneToOne")
        if (lt.every(v.map((A) => A.operator), Dc)) {
          const A = lt.every(v.map((x) => x.operator), (x) => co(x)), h = A ? tn.$nin : tn.$in, f = this.tableName, b = w.whereType === "orWhere" ? "orWhere" : "where";
          n[b](`${this.tableName}.id`, h, function() {
            const x = l[c].joinFilterStatements;
            let g = w.config.tableName, y = `${w.config.tableName}.${w.config.joinFrom}`;
            w.config.tableNameAs && (g = `${w.config.tableName} as ${w.config.tableNameAs}`, y = `${w.config.tableNameAs}.${w.config.joinFrom}`);
            const k = this.select(`${f}.id`).from(`${f}`).leftJoin(g, function() {
              this.on(y, "=", `${f}.id`), lt.each(x, (D) => {
                this.andOn(`${D.joinTable}.${D.column}`, tn[D.operator], D.value);
              });
            });
            return lt.each(v, (D, C) => {
              zt(`(buildRelationQuery) build relation where statements for ${C}`);
              const S = `${D.table}.${D.column}`;
              let G;
              A ? (G = tn.$in, D.value === null && (D.whereType = D.whereType === "whereNotNull" ? "whereNull" : "whereNotNull")) : co(D.operator) ? G = tn.$nin : G = tn[D.operator];
              let Q = D.value;
              Ah(G) && (Q = lt.isArray(D.value) ? D.value : [D.value]), k[D.whereType](S, G, Q);
            }), un.enabled && zt(`(buildRelationQuery) innerQB sql-pre: ${k.toSQL().sql}`), k;
          });
        } else
          zt(`one of ${c} group statements contains unknown operator`);
    });
  }
  /**
   * Determines if statement is a simple where comparison on the parent table or if the statement is a relation query.
   *
   * e.g.
   *
   * `where column = value`
   * `where column != value`
   * `where column > value`
   */
  buildComparison(n, r, o, l, c, v) {
    const w = tn[l] || "=", A = this.processStatement(o, l, c);
    let h = this.processWhereType(r, l, c);
    if (zt(`(buildComparison) mode: ${r}, op: ${l}, isRelation: ${A.isRelation}, group: ${v}`), A.isRelation) {
      if (A.whereType = h, !v) {
        this.buildRelationQuery(n, [A], r);
        return;
      }
      Object.prototype.hasOwnProperty.call(n, "relations") || (n.relations = []), n.relations.push(A);
      return;
    }
    const f = A.column;
    if (l = A.operator, c = A.value, l === "$regex" || l === "$not") {
      const { source: b, ignoreCase: x } = E5(c);
      if (c = b, x) {
        h += "Raw", zt(`(buildComparison) whereType: ${h}, statement: ${o}, op: ${l}, comp: ${w}, value: ${c} (REGEX/i)`), n[h](`lower(??) ${w} ? ESCAPE ?`, [f, c, fs]);
        return;
      }
      h += "Raw", zt(`(buildComparison) whereType: ${h}, statement: ${o}, op: ${l}, comp: ${w}, value: ${c} (REGEX)`), n[h](`?? ${w} ? ESCAPE ?`, [f, c, fs]);
      return;
    }
    zt(`(buildComparison) whereType: ${h}, statement: ${o}, op: ${l}, comp: ${w}, value: ${c}`), n[h](f, w, c);
  }
  /**
   * {author: 'carl'}
   */
  buildWhereClause(n, r, o, l, c) {
    if (zt(`(buildWhereClause) mode: ${r}, statement: ${o}`), un.enabled && un(`(buildWhereClause) ${aa(l)}`), !lt.isObject(l))
      return this.buildComparison(n, r, o, "$eq", l, c);
    lt.forIn(l, (v, w) => {
      Dc(w) ? this.buildComparison(n, r, o, w, v, c) : zt("unknown operator");
    });
  }
  /**
   * {$and: [{author: 'carl'}, {status: 'draft'}]}}
   * {$and: {author: 'carl'}}
   * {$and: {author: { $in: [...] }}}
   */
  buildWhereGroup(n, r, o, l) {
    const c = this.processWhereType(r);
    zt(`(buildWhereGroup) mode: ${o}, whereType: ${c}`), un.enabled && un(`(buildWhereGroup) ${aa(l)}`), n[c]((v) => {
      lt.isArray(l) ? l.forEach((w) => this.buildQuery(v, o, w, !0)) : lt.isObject(l) && this.buildQuery(v, o, l, !0), Object.prototype.hasOwnProperty.call(v, "relations") && (this.buildRelationQuery(v, v.relations, o), delete v.relations);
    });
  }
  buildQuery(n, r, o, l) {
    zt(`(buildQuery) mode: ${r}`), un.enabled && un(`(buildQuery) ${aa(o)}`), lt.forIn(o, (c, v) => {
      zt(`(buildQuery) key: ${v}`), j5(v) ? this.buildWhereGroup(n, r, v, c) : this.buildWhereClause(n, r, v, c, l);
    });
  }
  /**
   * The converter receives sub query objects e.g. `qb.where('..', (qb) => {})`, which
   * we then pass around to our class methods. That's why we pass the parent `qb` object
   * around instead of remembering it as `this.qb`. There are multiple `qb` objects.
   */
  processJSON(n, r) {
    zt("(processJSON)"), un.enabled && un(`(processJSON) ${aa(r)}`), this.buildQuery(n, "$and", r);
  }
}
var T5 = function(n, r, o) {
  return new D5({
    tableName: n._single.table
  }, o).processJSON(n, r), n;
}, N5 = T5;
const tr = ku, C5 = ["$and", "$or"], Jr = (e, n) => Array.isArray(e) ? e.map((r) => Jr(r, n)).filter((r) => !tr.isEmpty(r)) : tr.reduce(e, (r, o, l) => {
  let c;
  if (C5.includes(l)) {
    const v = Jr(o, n);
    c = tr.isEmpty(v) ? null : {
      [l]: v
    };
  } else l === "yg" ? c = {
    [l]: Jr(o, n)
  } : c = n(o, l);
  return tr.assign({}, r, c);
}, {}), im = (e, n) => tr.isEmpty(e) ? n : tr.isEmpty(n) ? e : {
  $and: [e, n]
}, mo = (e, n) => tr.some(e, (r, o, l) => o === "$and" ? mo(l.$and, n) : o === "$or" ? mo(l.$or, n) : o !== n && tr.isObject(r) ? mo(r, n) : o === n), Am = (e, n) => e && Jr(e, function(r, o) {
  if (!n(o))
    return {
      [o]: r
    };
}), I5 = (...e) => {
  let n = {};
  return e.filter((r) => !!r).forEach((r) => {
    r && Object.keys(r).length > 0 && (r = Am(r, (o) => mo(n, o)), r && (n = Object.keys(n).length > 0 ? im(n, r) : r));
  }), n;
}, P5 = (e, n) => {
  const r = (o, l) => l.$and ? { $and: [
    o,
    ...l.$and
  ] } : { $and: [
    o,
    l
  ] };
  return Jr(e, function(o, l) {
    const c = tr.find(n, { key: l });
    if (!c)
      return {
        [l]: o
      };
    let v = {
      [c.replacement]: o
    };
    return c.expansion ? r(v, c.expansion) : v;
  });
};
function lh(e, n) {
  const r = n.find(({ from: o }) => o === e);
  return r ? r.to : e;
}
function O5(e, n) {
  return Array.isArray(e) ? e.map(n) : n(e);
}
function lm(e) {
  return function(r) {
    return Jr(r, function(o, l) {
      return l !== e.key.from ? {
        [l]: o
      } : typeof o != "object" ? {
        [e.key.to]: lh(o, e.values)
      } : {
        [e.key.to]: tr.reduce(o, (c, v, w) => Object.assign(c, {
          [w]: O5(v, (A) => lh(A, e.values))
        }), {})
      };
    });
  };
}
const z5 = (e, n) => Jr(e, function(r, o) {
  return Object.keys(n).includes(o) ? n[o] ?? {} : {
    [o]: r
  };
});
function H5(...e) {
  return function(n) {
    for (const r of e)
      n = r(n);
    return n;
  };
}
function la(e) {
  if (!e)
    return [];
  const n = [];
  if (e.$and)
    for (const r of e.$and)
      for (const o of la(r))
        n.includes(o) || n.push(o);
  else if (e.$or)
    for (const r of e.$or)
      for (const o of la(r))
        n.includes(o) || n.push(o);
  else e.yg ? n.push(...la(e.yg)) : n.push(...Object.keys(e));
  return n;
}
function S5(e, n) {
  let r, o;
  if (typeof e != "object")
    return [r, o];
  if (e.$and) {
    for (const l of e.$and) {
      const c = la(l);
      let v = !1;
      for (const w of c)
        if (n.includes(w))
          v = !0;
        else if (v)
          throw new Error(`This filter is not supported because you cannot combine ${n.join(", ")} filters with other filters except at the root level in an AND.`);
      v ? r ? r.$and.push(l) : r = { $and: [l] } : o ? o.$and.push(l) : o = { $and: [l] };
    }
    r && r.$and.length === 1 && (r = r.$and[0]), o && o.$and.length === 1 && (o = o.$and[0]);
  } else if (e.$or) {
    let l = !1;
    for (const c of e.$or) {
      const v = la(c);
      for (const w of v)
        if (n.includes(w)) {
          l = !0;
          continue;
        } else if (l)
          throw new Error(`This filter is not supported because you cannot combine ${n.join(", ")} filters with other filters in an OR.`);
    }
    l ? r = e : o = e;
  } else {
    if (e.yg)
      return this.splitFilter(e.yg, n);
    {
      const l = Object.keys(e);
      for (const c of l)
        n.includes(c) ? r ? r[c] = e[c] : r = { [c]: e[c] } : o ? o[c] = e[c] : o = { [c]: e[c] };
    }
  }
  return [r, o];
}
function R5(e) {
  const n = [];
  for (const r of Object.keys(e))
    e[r] && n.push({
      key: {
        from: r,
        to: e[r]
      },
      values: []
      // No mapping in values
    });
  return n.map((r) => lm(r));
}
var B5 = {
  mapKeyValues: lm,
  combineFilters: im,
  findStatement: mo,
  rejectStatements: Am,
  mergeFilters: I5,
  expandFilters: P5,
  mapQuery: Jr,
  replaceFilters: z5,
  chainTransformers: H5,
  getUsedKeys: la,
  splitFilter: S5,
  mapKeys: R5
}, Wc = B5;
const mA = Wc, L5 = am, Q5 = ku, cm = (e) => !e || Object.keys(e).length === 0 ? e : e.map((n) => {
  const r = Object.assign({}, n);
  return r.expansion && (r.expansion = L5.parse(n.expansion)), r;
}), X5 = (e, n) => {
  const r = cm(n);
  return mA.expandFilters(e, r);
}, um = (e) => {
  if (!e.$and || !mA.findStatement(e, "$ne"))
    return e;
  const n = e.$and, r = n.filter((c) => mA.findStatement(c, "$ne")), o = Q5.groupBy(r, (c) => Object.keys(c)[0]);
  Object.keys(o).filter((c) => o[c].length > 1).forEach((c) => {
    const v = o[c].map((w) => w[c].$ne).filter((w) => w !== void 0);
    v.length !== 0 && (e[c] = { $nin: v }, o[c].forEach((w) => {
      const A = n.indexOf(w);
      A > -1 && n.splice(A, 1);
    }));
  }), n.length === 0 && delete e.$and;
  for (const c in e)
    c === "$and" && (e[c] = e[c].map(um));
  return e;
};
var F5 = {
  mergeFilters: mA.mergeFilters,
  parseExpansions: cm,
  expandFilters: X5,
  combineNeFilters: um
};
const q5 = a5, aA = am, G5 = N5, Tc = F5;
bu.exports = (e, n = {}) => {
  const r = {};
  return r.lex = () => aA.lex(e), r.parse = function() {
    !this.filter && e && (this.filter = aA.parse(e), n.transformer && (this.filter = n.transformer(this.filter)));
    let o, l;
    n.overrides && (o = aA.parse(n.overrides)), n.defaults && (l = aA.parse(n.defaults));
    let c = Tc.mergeFilters(o, this.filter, l);
    return c = Tc.combineNeFilters(c), n.expansions && (c = Tc.expandFilters(c, n.expansions)), c;
  }, r.queryJSON = function(o) {
    return this.query = this.query || new q5.Query(r.parse()), this.query.test(o);
  }, r.querySQL = (o) => G5(o, r.parse(), n), r.toString = () => e, r.toJSON = r.parse, r;
};
bu.exports.utils = {
  mapQuery: Wc.mapQuery,
  mapKeyValues: Wc.mapKeyValues
};
var Y5 = bu.exports, U5 = Y5;
const J5 = /* @__PURE__ */ Eh(U5);
function fm(e, n) {
  return e.visibility ? J5(e.visibility).queryJSON(n) : !0;
}
function Z5({
  description: e,
  accentColor: n,
  icon: r,
  logo: o,
  coverImage: l,
  themeSettings: c,
  bodyFont: v,
  headingFont: w
}) {
  if (!c)
    return;
  const A = c.reduce((b, { key: x, value: g }) => ({ ...b, [x]: g }), {}), h = new URLSearchParams();
  h.append("c", n), h.append("d", e), h.append("icon", r), h.append("logo", o), h.append("cover", l), h.append("bf", v), h.append("hf", w);
  const f = {};
  return c.forEach((b) => {
    f[b.key] = fm(b, A) ? b.value : Lb;
  }), h.append("custom", JSON.stringify(f)), h.toString();
}
const W5 = ({ settings: e, url: n }) => {
  const r = Z5({ ...e }), o = Bt((l) => {
    !n || !r || fetch(n, {
      method: "POST",
      headers: {
        "Content-Type": "text/html;charset=utf-8",
        "x-ghost-preview": r,
        Accept: "text/plain"
      },
      mode: "cors",
      credentials: "include"
    }).then((c) => c.text()).then((c) => {
      var g, y, k;
      const v = "html { pointer-events: none; }", A = new DOMParser().parseFromString(c, "text/html"), h = A.querySelector("style"), f = h == null ? void 0 : h.innerHTML;
      f ? h.innerHTML = `${f}

${v}` : A.head.innerHTML += `<style>${v}</style>`;
      let x = (A.doctype ? new XMLSerializer().serializeToString(A.doctype) : "") + A.documentElement.outerHTML;
      (g = l.contentDocument) == null || g.open(), (y = l.contentDocument) == null || y.write(x), (k = l.contentDocument) == null || k.close();
    });
  }, [r, n]);
  return /* @__PURE__ */ a.jsx(
    gu,
    {
      addDelay: !1,
      className: "absolute size-[110%] origin-top-left scale-[.90909] bg-white max-[1600px]:size-[130%] max-[1600px]:scale-[.76923]",
      generateContent: o,
      height: "100%",
      parentClassName: "relative h-full w-full",
      testId: "theme-preview",
      width: "100%"
    }
  );
}, V5 = ({ setting: e, setSetting: n }) => {
  const [r, o] = se({});
  ye(() => {
    const h = e.value === null ? "" : String(e.value);
    o((f) => ({ ...f, [e.key]: h }));
  }, [e]);
  const l = (h) => {
    r[h] !== void 0 && n(r[h]);
  }, c = (h, f) => {
    o((b) => ({ ...b, [h]: f }));
  }, { mutateAsync: v } = pa(), w = rt(), A = async (h) => {
    try {
      const f = gr(await v({ file: h }));
      n(f);
    } catch (f) {
      w(f);
    }
  };
  switch (e.type) {
    case "text":
      return /* @__PURE__ */ a.jsx(
        je,
        {
          hint: e.description,
          title: io(e.key),
          value: r[e.key] || "",
          onBlur: () => l(e.key),
          onChange: (h) => c(e.key, h.target.value)
        }
      );
    case "boolean":
      return /* @__PURE__ */ a.jsx(
        et,
        {
          checked: e.value,
          direction: "rtl",
          hint: e.description,
          label: io(e.key),
          onChange: (h) => n(h.target.checked)
        }
      );
    case "select":
      return /* @__PURE__ */ a.jsx(
        Lt,
        {
          hint: e.description,
          options: e.options.map((h) => ({ label: h, value: h })),
          selectedOption: { label: e.value, value: e.value },
          testId: `setting-select-${e.key}`,
          title: io(e.key),
          onSelect: (h) => n((h == null ? void 0 : h.value) || null)
        }
      );
    case "color":
      return /* @__PURE__ */ a.jsx(
        er,
        {
          debounceMs: 200,
          direction: "rtl",
          hint: e.description,
          title: io(e.key),
          value: e.value || "",
          onChange: (h) => n(h)
        }
      );
    case "image":
      return /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        /* @__PURE__ */ a.jsx(ct, { useLabelTag: !0, children: io(e.key) }),
        /* @__PURE__ */ a.jsx(
          wr,
          {
            height: e.value ? "100px" : "32px",
            id: `custom-${e.key}`,
            imageURL: e.value || "",
            onDelete: () => n(null),
            onUpload: (h) => A(h),
            children: "Upload image"
          }
        ),
        e.description && /* @__PURE__ */ a.jsx(nr, { children: e.description })
      ] });
  }
}, K5 = {
  source: ["title_font", "body_font"],
  casper: ["title_font", "body_font"],
  alto: ["title_font", "body_font"],
  bulletin: ["title_font", "body_font"],
  dawn: ["title_font", "body_font"],
  digest: ["title_font", "body_font"],
  dope: ["title_font", "body_font"],
  ease: ["title_font", "body_font"],
  edge: ["title_font", "body_font"],
  edition: ["title_font", "body_font"],
  episode: ["typography"],
  headline: ["title_font", "body_font"],
  journal: ["title_font", "body_font"],
  london: ["title_font", "body_font"],
  ruby: ["title_font", "body_font"],
  solo: ["typography"],
  taste: ["style"],
  wave: ["title_font", "body_font"]
}, _5 = ({ sections: e, updateSetting: n }) => {
  var w, A;
  const { data: r } = ru(), o = r == null ? void 0 : r.themes.find((h) => h.active), l = ((w = o == null ? void 0 : o.package.name) == null ? void 0 : w.toLowerCase()) || "", c = ((A = o == null ? void 0 : o.package.author) == null ? void 0 : A.name) || "", { supportsCustomFonts: v } = wu();
  return /* @__PURE__ */ a.jsx(a.Fragment, { children: e.map((h) => {
    const f = h.settings.filter(
      (x) => fm(x, h.settings.reduce((g, { key: y, value: k }) => ({ ...g, [y]: k }), {}))
    );
    let b;
    return /* @__PURE__ */ a.jsx(Ke, { className: "first-of-type:mt-6", gap: "xs", margins: "lg", title: h.title, children: f.map((x) => {
      let g = "";
      x.type === "boolean" && b !== "boolean" && b !== void 0 && (g = "mt-3"), (x.type === "text" || x.type === "select") && (b === "text" || b === "select") && (g = "mt-2");
      const y = K5[l];
      return y && y.includes(x.key) && c === "Ghost Foundation" && v && (g += " hidden"), b = x.type, /* @__PURE__ */ a.jsx("div", { className: g, children: /* @__PURE__ */ a.jsx(
        V5,
        {
          setSetting: (k) => n({ ...x, value: k }),
          setting: x
        },
        x.key
      ) }, x.key);
    }) }, h.id);
  }) });
}, $5 = ({
  globalSettings: e,
  themeSettingSections: n,
  updateGlobalSetting: r,
  updateThemeSetting: o,
  onTabChange: l
}) => {
  const [c, v] = se("global"), w = [
    {
      id: "global",
      title: "Brand",
      contents: /* @__PURE__ */ a.jsx(ah, { updateSetting: r, values: e })
    }
  ];
  n.length > 0 && w.push({
    id: "theme-settings",
    title: "Theme",
    contents: /* @__PURE__ */ a.jsx(_5, { sections: n, updateSetting: o })
  });
  const A = (h) => {
    v(h), l(h);
  };
  return /* @__PURE__ */ a.jsx("div", { className: "flex h-full flex-col justify-between", children: /* @__PURE__ */ a.jsx("div", { className: "grow p-7 pt-0", "data-testid": "design-setting-tabs", children: w.length > 1 ? /* @__PURE__ */ a.jsx(Zr, { selectedTab: c, stickyHeader: !0, tabs: w, onTabChange: A }) : /* @__PURE__ */ a.jsx(ah, { updateSetting: r, values: e }) }) });
}, e9 = () => {
  const { settings: e, siteData: n } = Ve(), { mutateAsync: r } = vs(), { data: { posts: [o] } = { posts: [] } } = Ch({
    searchParams: {
      filter: "status:published",
      order: "published_at DESC",
      limit: "1",
      fields: "id,url"
    }
  }), { data: l } = Qb(), { mutateAsync: c } = Xb(), v = rt(), [w, A] = se("homepage"), { updateRoute: h } = We(), f = Rh().getParam("ref"), {
    formState: b,
    saveState: x,
    handleSave: g,
    updateForm: y,
    setFormState: k,
    okProps: D
  } = Hn({
    initialState: {
      settings: e,
      themeSettings: l ? l.custom_theme_settings : void 0
    },
    savingDelay: 500,
    onSave: async () => {
      var fe;
      if ((fe = b.themeSettings) != null && fe.some((xe) => xe.dirty)) {
        const xe = await c(b.themeSettings);
        k((I) => ({ ...I, themeSettings: xe.custom_theme_settings }));
      }
      if (b.settings.some((xe) => xe.dirty)) {
        const { settings: xe } = await r(b.settings.filter((I) => I.dirty));
        k((I) => ({ ...I, settings: xe }));
      }
    },
    onSaveError: v
  });
  ye(() => {
    l && k((fe) => ({ ...fe, themeSettings: l.custom_theme_settings }));
  }, [k, l]);
  const C = (fe, xe) => {
    y((I) => ({ ...I, settings: I.settings.map((de) => de.key === fe ? { ...de, value: xe, dirty: !0 } : de) }));
  }, S = (fe) => {
    y((xe) => {
      var I;
      return { ...xe, themeSettings: (I = xe.themeSettings) == null ? void 0 : I.map((de) => de.key === fe.key ? { ...fe, dirty: !0 } : de) };
    });
  }, [G, Q, W, J, Y, B, U] = ht(b.settings, ["description", "accent_color", "icon", "logo", "cover_image", "heading_font", "body_font"]), te = (b.themeSettings || []).reduce((fe, xe) => {
    const I = xe.group === "homepage" || xe.group === "post" ? xe.group : "site-wide";
    return {
      ...fe,
      [I]: (fe[I] || []).concat(xe)
    };
  }, {}), R = Object.entries(te).map(([fe, xe]) => ({
    id: fe,
    settings: xe || [],
    title: fe === "site-wide" ? "Site wide" : fe === "homepage" ? "Homepage" : "Post"
  }));
  let z = [];
  o && (z = [
    { id: "homepage", title: "Homepage" },
    { id: "post", title: "Post" }
  ]);
  const $ = (fe) => {
    z.length && A(fe);
  }, K = (fe) => {
    A(fe === "post" && o ? "post" : "homepage");
  };
  let ee = xr(n);
  switch (w) {
    case "homepage":
      ee = xr(n);
      break;
    case "post":
      ee = o.url;
      break;
  }
  const F = /* @__PURE__ */ a.jsx(
    W5,
    {
      settings: {
        description: G,
        accentColor: Q,
        icon: W,
        logo: J,
        coverImage: Y,
        themeSettings: b.themeSettings,
        headingFont: B,
        bodyFont: U
      },
      url: ee
    }
  ), _ = /* @__PURE__ */ a.jsx(
    $5,
    {
      globalSettings: { description: G, accentColor: Q, icon: W, logo: J, coverImage: Y, headingFont: B, bodyFont: U },
      handleSave: g,
      themeSettingSections: R,
      updateGlobalSetting: C,
      updateThemeSetting: S,
      onTabChange: K
    }
  );
  return /* @__PURE__ */ a.jsx(
    ga,
    {
      afterClose: () => {
        f === "setup" ? window.location.hash = "/dashboard/" : h("design");
      },
      buttonsDisabled: D.disabled,
      cancelLabel: "Close",
      defaultTab: "homepage",
      dirty: x === "unsaved",
      okColor: D.color,
      okLabel: D.label || "Save",
      preview: F,
      previewToolbarTabs: z,
      selectedURL: w,
      sidebar: _,
      sidebarPadding: !1,
      siteLink: xr(n),
      size: "full",
      testId: "design-modal",
      title: "Design",
      onOk: async () => {
        await g({ fakeWhenUnchanged: !0 });
      },
      onSelectURL: $
    }
  );
}, t9 = ({ pathName: e }) => {
  const n = fn(), { updateRoute: r } = We(), [o, l] = se(null), [c, v] = se(!1), [w, A] = se(!1), { checkThemeLimitError: h, isThemeLimitCheckReady: f, noThemeChangesAllowed: b, isThemeLimited: x } = su(), [g, y] = se(null), [k, D] = se(!1);
  if (ye(() => {
    e === "design/change-theme" && f ? (async () => {
      if (!b) {
        v(!1), l(null);
        return;
      }
      v(!0);
      const S = await h();
      l(S), v(!1), S && (ve.show(rr, {
        prompt: S,
        onOk: () => r({ route: "/pro", isExternal: !0 })
      }), n.remove());
    })() : (l(null), v(!1));
  }, [h, f, e, n, r, b]), ye(() => {
    e !== "theme/install" && (D(!1), y(null), A(!1));
  }, [e]), ye(() => {
    const C = () => {
      const W = window.location.href.split("#")[1], J = W == null ? void 0 : W.split("?")[1];
      return J ? new URLSearchParams(J).get("ref") : null;
    }, S = (Q) => {
      y(!1);
      const W = {
        prompt: Q,
        onOk: () => r({ route: "/pro", isExternal: !0 })
      };
      b ? (ve.show(rr, W), window.history.replaceState({}, "", window.location.pathname + window.location.hash.split("?")[0]), n.remove(), r("theme")) : (ve.show(rr, W), n.remove(), r("theme"));
    };
    (async () => {
      var Y;
      if (e !== "theme/install") {
        A(!1);
        return;
      }
      if (D(!0), !f) {
        A(!0);
        return;
      }
      if (!x) {
        y(!0), A(!1);
        return;
      }
      A(!0);
      const Q = C();
      if (!Q) {
        y(!1), A(!1);
        return;
      }
      const W = (Y = Q.split("/")[1]) == null ? void 0 : Y.toLowerCase(), J = await h(W);
      if (e !== "theme/install") {
        A(!1);
        return;
      }
      if (J) {
        y(!1), A(!1), S(J);
        return;
      }
      y(!0), A(!1);
    })();
  }, [e, f, h, b, x, n, r]), e === "design/edit")
    return /* @__PURE__ */ a.jsx(e9, {});
  if (e === "design/change-theme")
    return c || o ? null : /* @__PURE__ */ a.jsx(th, {});
  if (e === "theme/install") {
    if (!k || !f || w || g === null || !g)
      return null;
    const S = window.location.href.split("#")[1], G = S == null ? void 0 : S.split("?")[1];
    let Q = null, W = null;
    if (G) {
      const J = new URLSearchParams(G);
      Q = J.get("ref"), W = J.get("source");
    }
    return /* @__PURE__ */ a.jsx(th, { source: W, themeRef: Q });
  } else
    n.remove();
}, n9 = ve.create(t9), r9 = ({ html: e, style: n }) => {
  const r = (o) => {
    var v;
    const l = o.contentDocument || ((v = o.contentWindow) == null ? void 0 : v.document);
    if (!l)
      return;
    const c = `
            <html>
                <head>
                    <style>body, html {padding: 0; margin: 0; overflow: hidden;}</style>
                    <style>${n}</style>
                </head>
                <body>${e}</body>
            </html>
        `;
    l.open(), l.write(c), l.close();
  };
  return /* @__PURE__ */ a.jsx(
    gu,
    {
      className: "absolute size-full overflow-hidden transition-opacity duration-500",
      generateContent: r,
      height: "100%",
      parentClassName: "relative h-full w-full",
      width: "100%"
    }
  );
}, s9 = ({
  selectedLayout: e,
  accentColor: n,
  handleColorToggle: r,
  selectedColor: o,
  selectedLabels: l,
  handleLabelClick: c,
  embedScript: v,
  handleLayoutSelect: w,
  handleCopyClick: A,
  isCopied: h
}) => {
  const { loadData: f } = Bh({ path: "/labels/", filterKey: "name", responseKey: "labels" }), b = async (x, g) => {
    const y = await f(x);
    g(y.map((k) => ({ label: k.name, value: k.name })));
  };
  return /* @__PURE__ */ a.jsxs("div", { className: "flex h-[calc(100vh-16vmin)] max-h-[645px] flex-col justify-between overflow-y-scroll border-l border-grey-200 p-6 pb-0 dark:border-grey-900", children: [
    /* @__PURE__ */ a.jsxs("div", { children: [
      /* @__PURE__ */ a.jsx(ct, { className: "mb-8", level: 4, children: "Embed signup form" }),
      /* @__PURE__ */ a.jsxs(Ke, { gap: "sm", children: [
        /* @__PURE__ */ a.jsxs("div", { className: "flex w-full items-center justify-between", children: [
          /* @__PURE__ */ a.jsx("div", { children: "Layout" }),
          /* @__PURE__ */ a.jsx(
            mr,
            {
              activeKey: e,
              buttons: [
                {
                  key: "all-in-one",
                  label: "Branded",
                  size: "md",
                  className: "w-auto !px-3",
                  onClick: () => w("all-in-one")
                },
                {
                  key: "minimal",
                  label: "Minimal",
                  size: "md",
                  className: "w-auto !px-3",
                  onClick: () => w("minimal")
                }
              ],
              clearBg: !1
            }
          )
        ] }),
        e === "all-in-one" && /* @__PURE__ */ a.jsx(
          er,
          {
            direction: "rtl",
            eyedropper: !0,
            swatches: [
              {
                hex: "#08090c",
                title: "Dark",
                value: "#08090c"
              },
              {
                hex: "#ffffff",
                title: "Light",
                value: "#ffffff"
              },
              {
                hex: n || "#d74780",
                title: "Accent",
                value: n || "#d74780"
              }
            ],
            title: "Background color",
            value: o,
            onChange: (x) => {
              x && r(x);
            }
          }
        ),
        /* @__PURE__ */ a.jsx(
          Fb,
          {
            hint: "Will be applied to all members signing up via this form",
            loadOptions: wA(b, 500),
            placeholder: "Pick one or more labels (optional)",
            title: "Labels at signup",
            values: l || [],
            async: !0,
            canCreate: !0,
            defaultOptions: !0,
            onChange: c
          }
        ),
        /* @__PURE__ */ a.jsx(
          xs,
          {
            className: "text-grey-800",
            fontStyle: "mono",
            hint: "Paste this code onto any website where you'd like your signup to appear.",
            title: "Embed code",
            value: `${v}`,
            onChange: () => {
            }
          }
        )
      ] })
    ] }),
    /* @__PURE__ */ a.jsx(qb, { height: 74, children: /* @__PURE__ */ a.jsx("div", { className: "flex w-full justify-end", children: /* @__PURE__ */ a.jsx(He, { color: h ? "green" : "black", label: h ? "Copied!" : "Copy code", onClick: A }) }) })
  ] });
};
function ch(e) {
  return e ? e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#039;") : "";
}
function ju(e, n) {
  return n = { exports: {} }, e(n, n.exports), n.exports;
}
var uo = {
  aliceblue: [240, 248, 255],
  antiquewhite: [250, 235, 215],
  aqua: [0, 255, 255],
  aquamarine: [127, 255, 212],
  azure: [240, 255, 255],
  beige: [245, 245, 220],
  bisque: [255, 228, 196],
  black: [0, 0, 0],
  blanchedalmond: [255, 235, 205],
  blue: [0, 0, 255],
  blueviolet: [138, 43, 226],
  brown: [165, 42, 42],
  burlywood: [222, 184, 135],
  cadetblue: [95, 158, 160],
  chartreuse: [127, 255, 0],
  chocolate: [210, 105, 30],
  coral: [255, 127, 80],
  cornflowerblue: [100, 149, 237],
  cornsilk: [255, 248, 220],
  crimson: [220, 20, 60],
  cyan: [0, 255, 255],
  darkblue: [0, 0, 139],
  darkcyan: [0, 139, 139],
  darkgoldenrod: [184, 134, 11],
  darkgray: [169, 169, 169],
  darkgreen: [0, 100, 0],
  darkgrey: [169, 169, 169],
  darkkhaki: [189, 183, 107],
  darkmagenta: [139, 0, 139],
  darkolivegreen: [85, 107, 47],
  darkorange: [255, 140, 0],
  darkorchid: [153, 50, 204],
  darkred: [139, 0, 0],
  darksalmon: [233, 150, 122],
  darkseagreen: [143, 188, 143],
  darkslateblue: [72, 61, 139],
  darkslategray: [47, 79, 79],
  darkslategrey: [47, 79, 79],
  darkturquoise: [0, 206, 209],
  darkviolet: [148, 0, 211],
  deeppink: [255, 20, 147],
  deepskyblue: [0, 191, 255],
  dimgray: [105, 105, 105],
  dimgrey: [105, 105, 105],
  dodgerblue: [30, 144, 255],
  firebrick: [178, 34, 34],
  floralwhite: [255, 250, 240],
  forestgreen: [34, 139, 34],
  fuchsia: [255, 0, 255],
  gainsboro: [220, 220, 220],
  ghostwhite: [248, 248, 255],
  gold: [255, 215, 0],
  goldenrod: [218, 165, 32],
  gray: [128, 128, 128],
  green: [0, 128, 0],
  greenyellow: [173, 255, 47],
  grey: [128, 128, 128],
  honeydew: [240, 255, 240],
  hotpink: [255, 105, 180],
  indianred: [205, 92, 92],
  indigo: [75, 0, 130],
  ivory: [255, 255, 240],
  khaki: [240, 230, 140],
  lavender: [230, 230, 250],
  lavenderblush: [255, 240, 245],
  lawngreen: [124, 252, 0],
  lemonchiffon: [255, 250, 205],
  lightblue: [173, 216, 230],
  lightcoral: [240, 128, 128],
  lightcyan: [224, 255, 255],
  lightgoldenrodyellow: [250, 250, 210],
  lightgray: [211, 211, 211],
  lightgreen: [144, 238, 144],
  lightgrey: [211, 211, 211],
  lightpink: [255, 182, 193],
  lightsalmon: [255, 160, 122],
  lightseagreen: [32, 178, 170],
  lightskyblue: [135, 206, 250],
  lightslategray: [119, 136, 153],
  lightslategrey: [119, 136, 153],
  lightsteelblue: [176, 196, 222],
  lightyellow: [255, 255, 224],
  lime: [0, 255, 0],
  limegreen: [50, 205, 50],
  linen: [250, 240, 230],
  magenta: [255, 0, 255],
  maroon: [128, 0, 0],
  mediumaquamarine: [102, 205, 170],
  mediumblue: [0, 0, 205],
  mediumorchid: [186, 85, 211],
  mediumpurple: [147, 112, 219],
  mediumseagreen: [60, 179, 113],
  mediumslateblue: [123, 104, 238],
  mediumspringgreen: [0, 250, 154],
  mediumturquoise: [72, 209, 204],
  mediumvioletred: [199, 21, 133],
  midnightblue: [25, 25, 112],
  mintcream: [245, 255, 250],
  mistyrose: [255, 228, 225],
  moccasin: [255, 228, 181],
  navajowhite: [255, 222, 173],
  navy: [0, 0, 128],
  oldlace: [253, 245, 230],
  olive: [128, 128, 0],
  olivedrab: [107, 142, 35],
  orange: [255, 165, 0],
  orangered: [255, 69, 0],
  orchid: [218, 112, 214],
  palegoldenrod: [238, 232, 170],
  palegreen: [152, 251, 152],
  paleturquoise: [175, 238, 238],
  palevioletred: [219, 112, 147],
  papayawhip: [255, 239, 213],
  peachpuff: [255, 218, 185],
  peru: [205, 133, 63],
  pink: [255, 192, 203],
  plum: [221, 160, 221],
  powderblue: [176, 224, 230],
  purple: [128, 0, 128],
  rebeccapurple: [102, 51, 153],
  red: [255, 0, 0],
  rosybrown: [188, 143, 143],
  royalblue: [65, 105, 225],
  saddlebrown: [139, 69, 19],
  salmon: [250, 128, 114],
  sandybrown: [244, 164, 96],
  seagreen: [46, 139, 87],
  seashell: [255, 245, 238],
  sienna: [160, 82, 45],
  silver: [192, 192, 192],
  skyblue: [135, 206, 235],
  slateblue: [106, 90, 205],
  slategray: [112, 128, 144],
  slategrey: [112, 128, 144],
  snow: [255, 250, 250],
  springgreen: [0, 255, 127],
  steelblue: [70, 130, 180],
  tan: [210, 180, 140],
  teal: [0, 128, 128],
  thistle: [216, 191, 216],
  tomato: [255, 99, 71],
  turquoise: [64, 224, 208],
  violet: [238, 130, 238],
  wheat: [245, 222, 179],
  white: [255, 255, 255],
  whitesmoke: [245, 245, 245],
  yellow: [255, 255, 0],
  yellowgreen: [154, 205, 50]
}, a9 = function(n) {
  return !n || typeof n == "string" ? !1 : n instanceof Array || Array.isArray(n) || n.length >= 0 && (n.splice instanceof Function || Object.getOwnPropertyDescriptor(n, n.length - 1) && n.constructor.name !== "String");
}, fo = ju(function(e) {
  var n = Array.prototype.concat, r = Array.prototype.slice, o = e.exports = function(c) {
    for (var v = [], w = 0, A = c.length; w < A; w++) {
      var h = c[w];
      a9(h) ? v = n.call(v, r.call(h)) : v.push(h);
    }
    return v;
  };
  o.wrap = function(l) {
    return function() {
      return l(o(arguments));
    };
  };
}), ds = ju(function(e) {
  var n = Object.hasOwnProperty, r = /* @__PURE__ */ Object.create(null);
  for (var o in uo)
    n.call(uo, o) && (r[uo[o]] = o);
  var l = e.exports = {
    to: {},
    get: {}
  };
  l.get = function(w) {
    var A = w.substring(0, 3).toLowerCase(), h, f;
    switch (A) {
      case "hsl":
        h = l.get.hsl(w), f = "hsl";
        break;
      case "hwb":
        h = l.get.hwb(w), f = "hwb";
        break;
      default:
        h = l.get.rgb(w), f = "rgb";
        break;
    }
    return h ? { model: f, value: h } : null;
  }, l.get.rgb = function(w) {
    if (!w)
      return null;
    var A = /^#([a-f0-9]{3,4})$/i, h = /^#([a-f0-9]{6})([a-f0-9]{2})?$/i, f = /^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/, b = /^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/, x = /^(\w+)$/, g = [0, 0, 0, 1], y, k, D;
    if (y = w.match(h)) {
      for (D = y[2], y = y[1], k = 0; k < 3; k++) {
        var C = k * 2;
        g[k] = parseInt(y.slice(C, C + 2), 16);
      }
      D && (g[3] = parseInt(D, 16) / 255);
    } else if (y = w.match(A)) {
      for (y = y[1], D = y[3], k = 0; k < 3; k++)
        g[k] = parseInt(y[k] + y[k], 16);
      D && (g[3] = parseInt(D + D, 16) / 255);
    } else if (y = w.match(f)) {
      for (k = 0; k < 3; k++)
        g[k] = parseInt(y[k + 1], 0);
      y[4] && (y[5] ? g[3] = parseFloat(y[4]) * 0.01 : g[3] = parseFloat(y[4]));
    } else if (y = w.match(b)) {
      for (k = 0; k < 3; k++)
        g[k] = Math.round(parseFloat(y[k + 1]) * 2.55);
      y[4] && (y[5] ? g[3] = parseFloat(y[4]) * 0.01 : g[3] = parseFloat(y[4]));
    } else return (y = w.match(x)) ? y[1] === "transparent" ? [0, 0, 0, 0] : n.call(uo, y[1]) ? (g = uo[y[1]], g[3] = 1, g) : null : null;
    for (k = 0; k < 3; k++)
      g[k] = c(g[k], 0, 255);
    return g[3] = c(g[3], 0, 1), g;
  }, l.get.hsl = function(w) {
    if (!w)
      return null;
    var A = /^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/, h = w.match(A);
    if (h) {
      var f = parseFloat(h[4]), b = (parseFloat(h[1]) % 360 + 360) % 360, x = c(parseFloat(h[2]), 0, 100), g = c(parseFloat(h[3]), 0, 100), y = c(isNaN(f) ? 1 : f, 0, 1);
      return [b, x, g, y];
    }
    return null;
  }, l.get.hwb = function(w) {
    if (!w)
      return null;
    var A = /^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/, h = w.match(A);
    if (h) {
      var f = parseFloat(h[4]), b = (parseFloat(h[1]) % 360 + 360) % 360, x = c(parseFloat(h[2]), 0, 100), g = c(parseFloat(h[3]), 0, 100), y = c(isNaN(f) ? 1 : f, 0, 1);
      return [b, x, g, y];
    }
    return null;
  }, l.to.hex = function() {
    var w = fo(arguments);
    return "#" + v(w[0]) + v(w[1]) + v(w[2]) + (w[3] < 1 ? v(Math.round(w[3] * 255)) : "");
  }, l.to.rgb = function() {
    var w = fo(arguments);
    return w.length < 4 || w[3] === 1 ? "rgb(" + Math.round(w[0]) + ", " + Math.round(w[1]) + ", " + Math.round(w[2]) + ")" : "rgba(" + Math.round(w[0]) + ", " + Math.round(w[1]) + ", " + Math.round(w[2]) + ", " + w[3] + ")";
  }, l.to.rgb.percent = function() {
    var w = fo(arguments), A = Math.round(w[0] / 255 * 100), h = Math.round(w[1] / 255 * 100), f = Math.round(w[2] / 255 * 100);
    return w.length < 4 || w[3] === 1 ? "rgb(" + A + "%, " + h + "%, " + f + "%)" : "rgba(" + A + "%, " + h + "%, " + f + "%, " + w[3] + ")";
  }, l.to.hsl = function() {
    var w = fo(arguments);
    return w.length < 4 || w[3] === 1 ? "hsl(" + w[0] + ", " + w[1] + "%, " + w[2] + "%)" : "hsla(" + w[0] + ", " + w[1] + "%, " + w[2] + "%, " + w[3] + ")";
  }, l.to.hwb = function() {
    var w = fo(arguments), A = "";
    return w.length >= 4 && w[3] !== 1 && (A = ", " + w[3]), "hwb(" + w[0] + ", " + w[1] + "%, " + w[2] + "%" + A + ")";
  }, l.to.keyword = function(w) {
    return r[w.slice(0, 3)];
  };
  function c(w, A, h) {
    return Math.min(Math.max(A, w), h);
  }
  function v(w) {
    var A = Math.round(w).toString(16).toUpperCase();
    return A.length < 2 ? "0" + A : A;
  }
});
ds.to;
ds.get;
var cs = {
  aliceblue: [240, 248, 255],
  antiquewhite: [250, 235, 215],
  aqua: [0, 255, 255],
  aquamarine: [127, 255, 212],
  azure: [240, 255, 255],
  beige: [245, 245, 220],
  bisque: [255, 228, 196],
  black: [0, 0, 0],
  blanchedalmond: [255, 235, 205],
  blue: [0, 0, 255],
  blueviolet: [138, 43, 226],
  brown: [165, 42, 42],
  burlywood: [222, 184, 135],
  cadetblue: [95, 158, 160],
  chartreuse: [127, 255, 0],
  chocolate: [210, 105, 30],
  coral: [255, 127, 80],
  cornflowerblue: [100, 149, 237],
  cornsilk: [255, 248, 220],
  crimson: [220, 20, 60],
  cyan: [0, 255, 255],
  darkblue: [0, 0, 139],
  darkcyan: [0, 139, 139],
  darkgoldenrod: [184, 134, 11],
  darkgray: [169, 169, 169],
  darkgreen: [0, 100, 0],
  darkgrey: [169, 169, 169],
  darkkhaki: [189, 183, 107],
  darkmagenta: [139, 0, 139],
  darkolivegreen: [85, 107, 47],
  darkorange: [255, 140, 0],
  darkorchid: [153, 50, 204],
  darkred: [139, 0, 0],
  darksalmon: [233, 150, 122],
  darkseagreen: [143, 188, 143],
  darkslateblue: [72, 61, 139],
  darkslategray: [47, 79, 79],
  darkslategrey: [47, 79, 79],
  darkturquoise: [0, 206, 209],
  darkviolet: [148, 0, 211],
  deeppink: [255, 20, 147],
  deepskyblue: [0, 191, 255],
  dimgray: [105, 105, 105],
  dimgrey: [105, 105, 105],
  dodgerblue: [30, 144, 255],
  firebrick: [178, 34, 34],
  floralwhite: [255, 250, 240],
  forestgreen: [34, 139, 34],
  fuchsia: [255, 0, 255],
  gainsboro: [220, 220, 220],
  ghostwhite: [248, 248, 255],
  gold: [255, 215, 0],
  goldenrod: [218, 165, 32],
  gray: [128, 128, 128],
  green: [0, 128, 0],
  greenyellow: [173, 255, 47],
  grey: [128, 128, 128],
  honeydew: [240, 255, 240],
  hotpink: [255, 105, 180],
  indianred: [205, 92, 92],
  indigo: [75, 0, 130],
  ivory: [255, 255, 240],
  khaki: [240, 230, 140],
  lavender: [230, 230, 250],
  lavenderblush: [255, 240, 245],
  lawngreen: [124, 252, 0],
  lemonchiffon: [255, 250, 205],
  lightblue: [173, 216, 230],
  lightcoral: [240, 128, 128],
  lightcyan: [224, 255, 255],
  lightgoldenrodyellow: [250, 250, 210],
  lightgray: [211, 211, 211],
  lightgreen: [144, 238, 144],
  lightgrey: [211, 211, 211],
  lightpink: [255, 182, 193],
  lightsalmon: [255, 160, 122],
  lightseagreen: [32, 178, 170],
  lightskyblue: [135, 206, 250],
  lightslategray: [119, 136, 153],
  lightslategrey: [119, 136, 153],
  lightsteelblue: [176, 196, 222],
  lightyellow: [255, 255, 224],
  lime: [0, 255, 0],
  limegreen: [50, 205, 50],
  linen: [250, 240, 230],
  magenta: [255, 0, 255],
  maroon: [128, 0, 0],
  mediumaquamarine: [102, 205, 170],
  mediumblue: [0, 0, 205],
  mediumorchid: [186, 85, 211],
  mediumpurple: [147, 112, 219],
  mediumseagreen: [60, 179, 113],
  mediumslateblue: [123, 104, 238],
  mediumspringgreen: [0, 250, 154],
  mediumturquoise: [72, 209, 204],
  mediumvioletred: [199, 21, 133],
  midnightblue: [25, 25, 112],
  mintcream: [245, 255, 250],
  mistyrose: [255, 228, 225],
  moccasin: [255, 228, 181],
  navajowhite: [255, 222, 173],
  navy: [0, 0, 128],
  oldlace: [253, 245, 230],
  olive: [128, 128, 0],
  olivedrab: [107, 142, 35],
  orange: [255, 165, 0],
  orangered: [255, 69, 0],
  orchid: [218, 112, 214],
  palegoldenrod: [238, 232, 170],
  palegreen: [152, 251, 152],
  paleturquoise: [175, 238, 238],
  palevioletred: [219, 112, 147],
  papayawhip: [255, 239, 213],
  peachpuff: [255, 218, 185],
  peru: [205, 133, 63],
  pink: [255, 192, 203],
  plum: [221, 160, 221],
  powderblue: [176, 224, 230],
  purple: [128, 0, 128],
  rebeccapurple: [102, 51, 153],
  red: [255, 0, 0],
  rosybrown: [188, 143, 143],
  royalblue: [65, 105, 225],
  saddlebrown: [139, 69, 19],
  salmon: [250, 128, 114],
  sandybrown: [244, 164, 96],
  seagreen: [46, 139, 87],
  seashell: [255, 245, 238],
  sienna: [160, 82, 45],
  silver: [192, 192, 192],
  skyblue: [135, 206, 235],
  slateblue: [106, 90, 205],
  slategray: [112, 128, 144],
  slategrey: [112, 128, 144],
  snow: [255, 250, 250],
  springgreen: [0, 255, 127],
  steelblue: [70, 130, 180],
  tan: [210, 180, 140],
  teal: [0, 128, 128],
  thistle: [216, 191, 216],
  tomato: [255, 99, 71],
  turquoise: [64, 224, 208],
  violet: [238, 130, 238],
  wheat: [245, 222, 179],
  white: [255, 255, 255],
  whitesmoke: [245, 245, 245],
  yellow: [255, 255, 0],
  yellowgreen: [154, 205, 50]
}, Dt = ju(function(e) {
  var n = {};
  for (var r in cs)
    cs.hasOwnProperty(r) && (n[cs[r]] = r);
  var o = e.exports = {
    rgb: { channels: 3, labels: "rgb" },
    hsl: { channels: 3, labels: "hsl" },
    hsv: { channels: 3, labels: "hsv" },
    hwb: { channels: 3, labels: "hwb" },
    cmyk: { channels: 4, labels: "cmyk" },
    xyz: { channels: 3, labels: "xyz" },
    lab: { channels: 3, labels: "lab" },
    lch: { channels: 3, labels: "lch" },
    hex: { channels: 1, labels: ["hex"] },
    keyword: { channels: 1, labels: ["keyword"] },
    ansi16: { channels: 1, labels: ["ansi16"] },
    ansi256: { channels: 1, labels: ["ansi256"] },
    hcg: { channels: 3, labels: ["h", "c", "g"] },
    apple: { channels: 3, labels: ["r16", "g16", "b16"] },
    gray: { channels: 1, labels: ["gray"] }
  };
  for (var l in o)
    if (o.hasOwnProperty(l)) {
      if (!("channels" in o[l]))
        throw new Error("missing channels property: " + l);
      if (!("labels" in o[l]))
        throw new Error("missing channel labels property: " + l);
      if (o[l].labels.length !== o[l].channels)
        throw new Error("channel and label counts mismatch: " + l);
      var c = o[l].channels, v = o[l].labels;
      delete o[l].channels, delete o[l].labels, Object.defineProperty(o[l], "channels", { value: c }), Object.defineProperty(o[l], "labels", { value: v });
    }
  o.rgb.hsl = function(A) {
    var h = A[0] / 255, f = A[1] / 255, b = A[2] / 255, x = Math.min(h, f, b), g = Math.max(h, f, b), y = g - x, k, D, C;
    return g === x ? k = 0 : h === g ? k = (f - b) / y : f === g ? k = 2 + (b - h) / y : b === g && (k = 4 + (h - f) / y), k = Math.min(k * 60, 360), k < 0 && (k += 360), C = (x + g) / 2, g === x ? D = 0 : C <= 0.5 ? D = y / (g + x) : D = y / (2 - g - x), [k, D * 100, C * 100];
  }, o.rgb.hsv = function(A) {
    var h, f, b, x, g, y = A[0] / 255, k = A[1] / 255, D = A[2] / 255, C = Math.max(y, k, D), S = C - Math.min(y, k, D), G = function(Q) {
      return (C - Q) / 6 / S + 1 / 2;
    };
    return S === 0 ? x = g = 0 : (g = S / C, h = G(y), f = G(k), b = G(D), y === C ? x = b - f : k === C ? x = 1 / 3 + h - b : D === C && (x = 2 / 3 + f - h), x < 0 ? x += 1 : x > 1 && (x -= 1)), [
      x * 360,
      g * 100,
      C * 100
    ];
  }, o.rgb.hwb = function(A) {
    var h = A[0], f = A[1], b = A[2], x = o.rgb.hsl(A)[0], g = 1 / 255 * Math.min(h, Math.min(f, b));
    return b = 1 - 1 / 255 * Math.max(h, Math.max(f, b)), [x, g * 100, b * 100];
  }, o.rgb.cmyk = function(A) {
    var h = A[0] / 255, f = A[1] / 255, b = A[2] / 255, x, g, y, k;
    return k = Math.min(1 - h, 1 - f, 1 - b), x = (1 - h - k) / (1 - k) || 0, g = (1 - f - k) / (1 - k) || 0, y = (1 - b - k) / (1 - k) || 0, [x * 100, g * 100, y * 100, k * 100];
  };
  function w(A, h) {
    return Math.pow(A[0] - h[0], 2) + Math.pow(A[1] - h[1], 2) + Math.pow(A[2] - h[2], 2);
  }
  o.rgb.keyword = function(A) {
    var h = n[A];
    if (h)
      return h;
    var f = 1 / 0, b;
    for (var x in cs)
      if (cs.hasOwnProperty(x)) {
        var g = cs[x], y = w(A, g);
        y < f && (f = y, b = x);
      }
    return b;
  }, o.keyword.rgb = function(A) {
    return cs[A];
  }, o.rgb.xyz = function(A) {
    var h = A[0] / 255, f = A[1] / 255, b = A[2] / 255;
    h = h > 0.04045 ? Math.pow((h + 0.055) / 1.055, 2.4) : h / 12.92, f = f > 0.04045 ? Math.pow((f + 0.055) / 1.055, 2.4) : f / 12.92, b = b > 0.04045 ? Math.pow((b + 0.055) / 1.055, 2.4) : b / 12.92;
    var x = h * 0.4124 + f * 0.3576 + b * 0.1805, g = h * 0.2126 + f * 0.7152 + b * 0.0722, y = h * 0.0193 + f * 0.1192 + b * 0.9505;
    return [x * 100, g * 100, y * 100];
  }, o.rgb.lab = function(A) {
    var h = o.rgb.xyz(A), f = h[0], b = h[1], x = h[2], g, y, k;
    return f /= 95.047, b /= 100, x /= 108.883, f = f > 8856e-6 ? Math.pow(f, 1 / 3) : 7.787 * f + 16 / 116, b = b > 8856e-6 ? Math.pow(b, 1 / 3) : 7.787 * b + 16 / 116, x = x > 8856e-6 ? Math.pow(x, 1 / 3) : 7.787 * x + 16 / 116, g = 116 * b - 16, y = 500 * (f - b), k = 200 * (b - x), [g, y, k];
  }, o.hsl.rgb = function(A) {
    var h = A[0] / 360, f = A[1] / 100, b = A[2] / 100, x, g, y, k, D;
    if (f === 0)
      return D = b * 255, [D, D, D];
    b < 0.5 ? g = b * (1 + f) : g = b + f - b * f, x = 2 * b - g, k = [0, 0, 0];
    for (var C = 0; C < 3; C++)
      y = h + 1 / 3 * -(C - 1), y < 0 && y++, y > 1 && y--, 6 * y < 1 ? D = x + (g - x) * 6 * y : 2 * y < 1 ? D = g : 3 * y < 2 ? D = x + (g - x) * (2 / 3 - y) * 6 : D = x, k[C] = D * 255;
    return k;
  }, o.hsl.hsv = function(A) {
    var h = A[0], f = A[1] / 100, b = A[2] / 100, x = f, g = Math.max(b, 0.01), y, k;
    return b *= 2, f *= b <= 1 ? b : 2 - b, x *= g <= 1 ? g : 2 - g, k = (b + f) / 2, y = b === 0 ? 2 * x / (g + x) : 2 * f / (b + f), [h, y * 100, k * 100];
  }, o.hsv.rgb = function(A) {
    var h = A[0] / 60, f = A[1] / 100, b = A[2] / 100, x = Math.floor(h) % 6, g = h - Math.floor(h), y = 255 * b * (1 - f), k = 255 * b * (1 - f * g), D = 255 * b * (1 - f * (1 - g));
    switch (b *= 255, x) {
      case 0:
        return [b, D, y];
      case 1:
        return [k, b, y];
      case 2:
        return [y, b, D];
      case 3:
        return [y, k, b];
      case 4:
        return [D, y, b];
      case 5:
        return [b, y, k];
    }
  }, o.hsv.hsl = function(A) {
    var h = A[0], f = A[1] / 100, b = A[2] / 100, x = Math.max(b, 0.01), g, y, k;
    return k = (2 - f) * b, g = (2 - f) * x, y = f * x, y /= g <= 1 ? g : 2 - g, y = y || 0, k /= 2, [h, y * 100, k * 100];
  }, o.hwb.rgb = function(A) {
    var h = A[0] / 360, f = A[1] / 100, b = A[2] / 100, x = f + b, g, y, k, D;
    x > 1 && (f /= x, b /= x), g = Math.floor(6 * h), y = 1 - b, k = 6 * h - g, g & 1 && (k = 1 - k), D = f + k * (y - f);
    var C, S, G;
    switch (g) {
      default:
      case 6:
      case 0:
        C = y, S = D, G = f;
        break;
      case 1:
        C = D, S = y, G = f;
        break;
      case 2:
        C = f, S = y, G = D;
        break;
      case 3:
        C = f, S = D, G = y;
        break;
      case 4:
        C = D, S = f, G = y;
        break;
      case 5:
        C = y, S = f, G = D;
        break;
    }
    return [C * 255, S * 255, G * 255];
  }, o.cmyk.rgb = function(A) {
    var h = A[0] / 100, f = A[1] / 100, b = A[2] / 100, x = A[3] / 100, g, y, k;
    return g = 1 - Math.min(1, h * (1 - x) + x), y = 1 - Math.min(1, f * (1 - x) + x), k = 1 - Math.min(1, b * (1 - x) + x), [g * 255, y * 255, k * 255];
  }, o.xyz.rgb = function(A) {
    var h = A[0] / 100, f = A[1] / 100, b = A[2] / 100, x, g, y;
    return x = h * 3.2406 + f * -1.5372 + b * -0.4986, g = h * -0.9689 + f * 1.8758 + b * 0.0415, y = h * 0.0557 + f * -0.204 + b * 1.057, x = x > 31308e-7 ? 1.055 * Math.pow(x, 1 / 2.4) - 0.055 : x * 12.92, g = g > 31308e-7 ? 1.055 * Math.pow(g, 1 / 2.4) - 0.055 : g * 12.92, y = y > 31308e-7 ? 1.055 * Math.pow(y, 1 / 2.4) - 0.055 : y * 12.92, x = Math.min(Math.max(0, x), 1), g = Math.min(Math.max(0, g), 1), y = Math.min(Math.max(0, y), 1), [x * 255, g * 255, y * 255];
  }, o.xyz.lab = function(A) {
    var h = A[0], f = A[1], b = A[2], x, g, y;
    return h /= 95.047, f /= 100, b /= 108.883, h = h > 8856e-6 ? Math.pow(h, 1 / 3) : 7.787 * h + 16 / 116, f = f > 8856e-6 ? Math.pow(f, 1 / 3) : 7.787 * f + 16 / 116, b = b > 8856e-6 ? Math.pow(b, 1 / 3) : 7.787 * b + 16 / 116, x = 116 * f - 16, g = 500 * (h - f), y = 200 * (f - b), [x, g, y];
  }, o.lab.xyz = function(A) {
    var h = A[0], f = A[1], b = A[2], x, g, y;
    g = (h + 16) / 116, x = f / 500 + g, y = g - b / 200;
    var k = Math.pow(g, 3), D = Math.pow(x, 3), C = Math.pow(y, 3);
    return g = k > 8856e-6 ? k : (g - 16 / 116) / 7.787, x = D > 8856e-6 ? D : (x - 16 / 116) / 7.787, y = C > 8856e-6 ? C : (y - 16 / 116) / 7.787, x *= 95.047, g *= 100, y *= 108.883, [x, g, y];
  }, o.lab.lch = function(A) {
    var h = A[0], f = A[1], b = A[2], x, g, y;
    return x = Math.atan2(b, f), g = x * 360 / 2 / Math.PI, g < 0 && (g += 360), y = Math.sqrt(f * f + b * b), [h, y, g];
  }, o.lch.lab = function(A) {
    var h = A[0], f = A[1], b = A[2], x, g, y;
    return y = b / 360 * 2 * Math.PI, x = f * Math.cos(y), g = f * Math.sin(y), [h, x, g];
  }, o.rgb.ansi16 = function(A) {
    var h = A[0], f = A[1], b = A[2], x = 1 in arguments ? arguments[1] : o.rgb.hsv(A)[2];
    if (x = Math.round(x / 50), x === 0)
      return 30;
    var g = 30 + (Math.round(b / 255) << 2 | Math.round(f / 255) << 1 | Math.round(h / 255));
    return x === 2 && (g += 60), g;
  }, o.hsv.ansi16 = function(A) {
    return o.rgb.ansi16(o.hsv.rgb(A), A[2]);
  }, o.rgb.ansi256 = function(A) {
    var h = A[0], f = A[1], b = A[2];
    if (h === f && f === b)
      return h < 8 ? 16 : h > 248 ? 231 : Math.round((h - 8) / 247 * 24) + 232;
    var x = 16 + 36 * Math.round(h / 255 * 5) + 6 * Math.round(f / 255 * 5) + Math.round(b / 255 * 5);
    return x;
  }, o.ansi16.rgb = function(A) {
    var h = A % 10;
    if (h === 0 || h === 7)
      return A > 50 && (h += 3.5), h = h / 10.5 * 255, [h, h, h];
    var f = (~~(A > 50) + 1) * 0.5, b = (h & 1) * f * 255, x = (h >> 1 & 1) * f * 255, g = (h >> 2 & 1) * f * 255;
    return [b, x, g];
  }, o.ansi256.rgb = function(A) {
    if (A >= 232) {
      var h = (A - 232) * 10 + 8;
      return [h, h, h];
    }
    A -= 16;
    var f, b = Math.floor(A / 36) / 5 * 255, x = Math.floor((f = A % 36) / 6) / 5 * 255, g = f % 6 / 5 * 255;
    return [b, x, g];
  }, o.rgb.hex = function(A) {
    var h = ((Math.round(A[0]) & 255) << 16) + ((Math.round(A[1]) & 255) << 8) + (Math.round(A[2]) & 255), f = h.toString(16).toUpperCase();
    return "000000".substring(f.length) + f;
  }, o.hex.rgb = function(A) {
    var h = A.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);
    if (!h)
      return [0, 0, 0];
    var f = h[0];
    h[0].length === 3 && (f = f.split("").map(function(k) {
      return k + k;
    }).join(""));
    var b = parseInt(f, 16), x = b >> 16 & 255, g = b >> 8 & 255, y = b & 255;
    return [x, g, y];
  }, o.rgb.hcg = function(A) {
    var h = A[0] / 255, f = A[1] / 255, b = A[2] / 255, x = Math.max(Math.max(h, f), b), g = Math.min(Math.min(h, f), b), y = x - g, k, D;
    return y < 1 ? k = g / (1 - y) : k = 0, y <= 0 ? D = 0 : x === h ? D = (f - b) / y % 6 : x === f ? D = 2 + (b - h) / y : D = 4 + (h - f) / y + 4, D /= 6, D %= 1, [D * 360, y * 100, k * 100];
  }, o.hsl.hcg = function(A) {
    var h = A[1] / 100, f = A[2] / 100, b = 1, x = 0;
    return f < 0.5 ? b = 2 * h * f : b = 2 * h * (1 - f), b < 1 && (x = (f - 0.5 * b) / (1 - b)), [A[0], b * 100, x * 100];
  }, o.hsv.hcg = function(A) {
    var h = A[1] / 100, f = A[2] / 100, b = h * f, x = 0;
    return b < 1 && (x = (f - b) / (1 - b)), [A[0], b * 100, x * 100];
  }, o.hcg.rgb = function(A) {
    var h = A[0] / 360, f = A[1] / 100, b = A[2] / 100;
    if (f === 0)
      return [b * 255, b * 255, b * 255];
    var x = [0, 0, 0], g = h % 1 * 6, y = g % 1, k = 1 - y, D = 0;
    switch (Math.floor(g)) {
      case 0:
        x[0] = 1, x[1] = y, x[2] = 0;
        break;
      case 1:
        x[0] = k, x[1] = 1, x[2] = 0;
        break;
      case 2:
        x[0] = 0, x[1] = 1, x[2] = y;
        break;
      case 3:
        x[0] = 0, x[1] = k, x[2] = 1;
        break;
      case 4:
        x[0] = y, x[1] = 0, x[2] = 1;
        break;
      default:
        x[0] = 1, x[1] = 0, x[2] = k;
    }
    return D = (1 - f) * b, [
      (f * x[0] + D) * 255,
      (f * x[1] + D) * 255,
      (f * x[2] + D) * 255
    ];
  }, o.hcg.hsv = function(A) {
    var h = A[1] / 100, f = A[2] / 100, b = h + f * (1 - h), x = 0;
    return b > 0 && (x = h / b), [A[0], x * 100, b * 100];
  }, o.hcg.hsl = function(A) {
    var h = A[1] / 100, f = A[2] / 100, b = f * (1 - h) + 0.5 * h, x = 0;
    return b > 0 && b < 0.5 ? x = h / (2 * b) : b >= 0.5 && b < 1 && (x = h / (2 * (1 - b))), [A[0], x * 100, b * 100];
  }, o.hcg.hwb = function(A) {
    var h = A[1] / 100, f = A[2] / 100, b = h + f * (1 - h);
    return [A[0], (b - h) * 100, (1 - b) * 100];
  }, o.hwb.hcg = function(A) {
    var h = A[1] / 100, f = A[2] / 100, b = 1 - f, x = b - h, g = 0;
    return x < 1 && (g = (b - x) / (1 - x)), [A[0], x * 100, g * 100];
  }, o.apple.rgb = function(A) {
    return [A[0] / 65535 * 255, A[1] / 65535 * 255, A[2] / 65535 * 255];
  }, o.rgb.apple = function(A) {
    return [A[0] / 255 * 65535, A[1] / 255 * 65535, A[2] / 255 * 65535];
  }, o.gray.rgb = function(A) {
    return [A[0] / 100 * 255, A[0] / 100 * 255, A[0] / 100 * 255];
  }, o.gray.hsl = o.gray.hsv = function(A) {
    return [0, 0, A[0]];
  }, o.gray.hwb = function(A) {
    return [0, 100, A[0]];
  }, o.gray.cmyk = function(A) {
    return [0, 0, 0, A[0]];
  }, o.gray.lab = function(A) {
    return [A[0], 0, 0];
  }, o.gray.hex = function(A) {
    var h = Math.round(A[0] / 100 * 255) & 255, f = (h << 16) + (h << 8) + h, b = f.toString(16).toUpperCase();
    return "000000".substring(b.length) + b;
  }, o.rgb.gray = function(A) {
    var h = (A[0] + A[1] + A[2]) / 3;
    return [h / 255 * 100];
  };
});
Dt.rgb;
Dt.hsl;
Dt.hsv;
Dt.hwb;
Dt.cmyk;
Dt.xyz;
Dt.lab;
Dt.lch;
Dt.hex;
Dt.keyword;
Dt.ansi16;
Dt.ansi256;
Dt.hcg;
Dt.apple;
Dt.gray;
function o9() {
  for (var e = {}, n = Object.keys(Dt), r = n.length, o = 0; o < r; o++)
    e[n[o]] = {
      // http://jsperf.com/1-vs-infinity
      // micro-opt, but this is simple.
      distance: -1,
      parent: null
    };
  return e;
}
function i9(e) {
  var n = o9(), r = [e];
  for (n[e].distance = 0; r.length; )
    for (var o = r.pop(), l = Object.keys(Dt[o]), c = l.length, v = 0; v < c; v++) {
      var w = l[v], A = n[w];
      A.distance === -1 && (A.distance = n[o].distance + 1, A.parent = o, r.unshift(w));
    }
  return n;
}
function A9(e, n) {
  return function(r) {
    return n(e(r));
  };
}
function l9(e, n) {
  for (var r = [n[e].parent, e], o = Dt[n[e].parent][e], l = n[e].parent; n[l].parent; )
    r.unshift(n[l].parent), o = A9(Dt[n[l].parent][l], o), l = n[l].parent;
  return o.conversion = r, o;
}
var c9 = function(e) {
  for (var n = i9(e), r = {}, o = Object.keys(n), l = o.length, c = 0; c < l; c++) {
    var v = o[c], w = n[v];
    w.parent !== null && (r[v] = l9(v, n));
  }
  return r;
}, ia = {}, u9 = Object.keys(Dt);
function f9(e) {
  var n = function(r) {
    return r == null ? r : (arguments.length > 1 && (r = Array.prototype.slice.call(arguments)), e(r));
  };
  return "conversion" in e && (n.conversion = e.conversion), n;
}
function d9(e) {
  var n = function(r) {
    if (r == null)
      return r;
    arguments.length > 1 && (r = Array.prototype.slice.call(arguments));
    var o = e(r);
    if (typeof o == "object")
      for (var l = o.length, c = 0; c < l; c++)
        o[c] = Math.round(o[c]);
    return o;
  };
  return "conversion" in e && (n.conversion = e.conversion), n;
}
u9.forEach(function(e) {
  ia[e] = {}, Object.defineProperty(ia[e], "channels", { value: Dt[e].channels }), Object.defineProperty(ia[e], "labels", { value: Dt[e].labels });
  var n = c9(e), r = Object.keys(n);
  r.forEach(function(o) {
    var l = n[o];
    ia[e][o] = d9(l), ia[e][o].raw = f9(l);
  });
});
var Tn = ia, Eu = [].slice, dm = [
  // to be honest, I don't really feel like keyword belongs in color convert, but eh.
  "keyword",
  // gray conflicts with some method names, and has its own method defined.
  "gray",
  // shouldn't really be in color-convert either...
  "hex"
], Vc = {};
Object.keys(Tn).forEach(function(e) {
  Vc[Eu.call(Tn[e].labels).sort().join("")] = e;
});
var gA = {};
function Vt(e, n) {
  if (!(this instanceof Vt))
    return new Vt(e, n);
  if (n && n in dm && (n = null), n && !(n in Tn))
    throw new Error("Unknown model: " + n);
  var r, o;
  if (e == null)
    this.model = "rgb", this.color = [0, 0, 0], this.valpha = 1;
  else if (e instanceof Vt)
    this.model = e.model, this.color = e.color.slice(), this.valpha = e.valpha;
  else if (typeof e == "string") {
    var l = ds.get(e);
    if (l === null)
      throw new Error("Unable to parse color from string: " + e);
    this.model = l.model, o = Tn[this.model].channels, this.color = l.value.slice(0, o), this.valpha = typeof l.value[o] == "number" ? l.value[o] : 1;
  } else if (e.length) {
    this.model = n || "rgb", o = Tn[this.model].channels;
    var c = Eu.call(e, 0, o);
    this.color = Kc(c, o), this.valpha = typeof e[o] == "number" ? e[o] : 1;
  } else if (typeof e == "number")
    e &= 16777215, this.model = "rgb", this.color = [
      e >> 16 & 255,
      e >> 8 & 255,
      e & 255
    ], this.valpha = 1;
  else {
    this.valpha = 1;
    var v = Object.keys(e);
    "alpha" in e && (v.splice(v.indexOf("alpha"), 1), this.valpha = typeof e.alpha == "number" ? e.alpha : 0);
    var w = v.sort().join("");
    if (!(w in Vc))
      throw new Error("Unable to parse color from object: " + JSON.stringify(e));
    this.model = Vc[w];
    var A = Tn[this.model].labels, h = [];
    for (r = 0; r < A.length; r++)
      h.push(e[A[r]]);
    this.color = Kc(h);
  }
  if (gA[this.model])
    for (o = Tn[this.model].channels, r = 0; r < o; r++) {
      var f = gA[this.model][r];
      f && (this.color[r] = f(this.color[r]));
    }
  this.valpha = Math.max(0, Math.min(1, this.valpha)), Object.freeze && Object.freeze(this);
}
Vt.prototype = {
  toString: function() {
    return this.string();
  },
  toJSON: function() {
    return this[this.model]();
  },
  string: function(e) {
    var n = this.model in ds.to ? this : this.rgb();
    n = n.round(typeof e == "number" ? e : 1);
    var r = n.valpha === 1 ? n.color : n.color.concat(this.valpha);
    return ds.to[n.model](r);
  },
  percentString: function(e) {
    var n = this.rgb().round(typeof e == "number" ? e : 1), r = n.valpha === 1 ? n.color : n.color.concat(this.valpha);
    return ds.to.rgb.percent(r);
  },
  array: function() {
    return this.valpha === 1 ? this.color.slice() : this.color.concat(this.valpha);
  },
  object: function() {
    for (var e = {}, n = Tn[this.model].channels, r = Tn[this.model].labels, o = 0; o < n; o++)
      e[r[o]] = this.color[o];
    return this.valpha !== 1 && (e.alpha = this.valpha), e;
  },
  unitArray: function() {
    var e = this.rgb().color;
    return e[0] /= 255, e[1] /= 255, e[2] /= 255, this.valpha !== 1 && e.push(this.valpha), e;
  },
  unitObject: function() {
    var e = this.rgb().object();
    return e.r /= 255, e.g /= 255, e.b /= 255, this.valpha !== 1 && (e.alpha = this.valpha), e;
  },
  round: function(e) {
    return e = Math.max(e || 0, 0), new Vt(this.color.map(p9(e)).concat(this.valpha), this.model);
  },
  alpha: function(e) {
    return arguments.length ? new Vt(this.color.concat(Math.max(0, Math.min(1, e))), this.model) : this.valpha;
  },
  // rgb
  red: kt("rgb", 0, Rt(255)),
  green: kt("rgb", 1, Rt(255)),
  blue: kt("rgb", 2, Rt(255)),
  hue: kt(["hsl", "hsv", "hsl", "hwb", "hcg"], 0, function(e) {
    return (e % 360 + 360) % 360;
  }),
  // eslint-disable-line brace-style
  saturationl: kt("hsl", 1, Rt(100)),
  lightness: kt("hsl", 2, Rt(100)),
  saturationv: kt("hsv", 1, Rt(100)),
  value: kt("hsv", 2, Rt(100)),
  chroma: kt("hcg", 1, Rt(100)),
  gray: kt("hcg", 2, Rt(100)),
  white: kt("hwb", 1, Rt(100)),
  wblack: kt("hwb", 2, Rt(100)),
  cyan: kt("cmyk", 0, Rt(100)),
  magenta: kt("cmyk", 1, Rt(100)),
  yellow: kt("cmyk", 2, Rt(100)),
  black: kt("cmyk", 3, Rt(100)),
  x: kt("xyz", 0, Rt(100)),
  y: kt("xyz", 1, Rt(100)),
  z: kt("xyz", 2, Rt(100)),
  l: kt("lab", 0, Rt(100)),
  a: kt("lab", 1),
  b: kt("lab", 2),
  keyword: function(e) {
    return arguments.length ? new Vt(e) : Tn[this.model].keyword(this.color);
  },
  hex: function(e) {
    return arguments.length ? new Vt(e) : ds.to.hex(this.rgb().round().color);
  },
  rgbNumber: function() {
    var e = this.rgb().color;
    return (e[0] & 255) << 16 | (e[1] & 255) << 8 | e[2] & 255;
  },
  luminosity: function() {
    for (var e = this.rgb().color, n = [], r = 0; r < e.length; r++) {
      var o = e[r] / 255;
      n[r] = o <= 0.03928 ? o / 12.92 : Math.pow((o + 0.055) / 1.055, 2.4);
    }
    return 0.2126 * n[0] + 0.7152 * n[1] + 0.0722 * n[2];
  },
  contrast: function(e) {
    var n = this.luminosity(), r = e.luminosity();
    return n > r ? (n + 0.05) / (r + 0.05) : (r + 0.05) / (n + 0.05);
  },
  level: function(e) {
    var n = this.contrast(e);
    return n >= 7.1 ? "AAA" : n >= 4.5 ? "AA" : "";
  },
  isDark: function() {
    var e = this.rgb().color, n = (e[0] * 299 + e[1] * 587 + e[2] * 114) / 1e3;
    return n < 128;
  },
  isLight: function() {
    return !this.isDark();
  },
  negate: function() {
    for (var e = this.rgb(), n = 0; n < 3; n++)
      e.color[n] = 255 - e.color[n];
    return e;
  },
  lighten: function(e) {
    var n = this.hsl();
    return n.color[2] += n.color[2] * e, n;
  },
  darken: function(e) {
    var n = this.hsl();
    return n.color[2] -= n.color[2] * e, n;
  },
  saturate: function(e) {
    var n = this.hsl();
    return n.color[1] += n.color[1] * e, n;
  },
  desaturate: function(e) {
    var n = this.hsl();
    return n.color[1] -= n.color[1] * e, n;
  },
  whiten: function(e) {
    var n = this.hwb();
    return n.color[1] += n.color[1] * e, n;
  },
  blacken: function(e) {
    var n = this.hwb();
    return n.color[2] += n.color[2] * e, n;
  },
  grayscale: function() {
    var e = this.rgb().color, n = e[0] * 0.3 + e[1] * 0.59 + e[2] * 0.11;
    return Vt.rgb(n, n, n);
  },
  fade: function(e) {
    return this.alpha(this.valpha - this.valpha * e);
  },
  opaquer: function(e) {
    return this.alpha(this.valpha + this.valpha * e);
  },
  rotate: function(e) {
    var n = this.hsl(), r = n.color[0];
    return r = (r + e) % 360, r = r < 0 ? 360 + r : r, n.color[0] = r, n;
  },
  mix: function(e, n) {
    if (!e || !e.rgb)
      throw new Error('Argument to "mix" was not a Color instance, but rather an instance of ' + typeof e);
    var r = e.rgb(), o = this.rgb(), l = n === void 0 ? 0.5 : n, c = 2 * l - 1, v = r.alpha() - o.alpha(), w = ((c * v === -1 ? c : (c + v) / (1 + c * v)) + 1) / 2, A = 1 - w;
    return Vt.rgb(
      w * r.red() + A * o.red(),
      w * r.green() + A * o.green(),
      w * r.blue() + A * o.blue(),
      r.alpha() * l + o.alpha() * (1 - l)
    );
  }
};
Object.keys(Tn).forEach(function(e) {
  if (dm.indexOf(e) === -1) {
    var n = Tn[e].channels;
    Vt.prototype[e] = function() {
      if (this.model === e)
        return new Vt(this);
      if (arguments.length)
        return new Vt(arguments, e);
      var r = typeof arguments[n] == "number" ? n : this.valpha;
      return new Vt(m9(Tn[this.model][e].raw(this.color)).concat(r), e);
    }, Vt[e] = function(r) {
      return typeof r == "number" && (r = Kc(Eu.call(arguments), n)), new Vt(r, e);
    };
  }
});
function h9(e, n) {
  return Number(e.toFixed(n));
}
function p9(e) {
  return function(n) {
    return h9(n, e);
  };
}
function kt(e, n, r) {
  return e = Array.isArray(e) ? e : [e], e.forEach(function(o) {
    (gA[o] || (gA[o] = []))[n] = r;
  }), e = e[0], function(o) {
    var l;
    return arguments.length ? (r && (o = r(o)), l = this[e](), l.color[n] = o, l) : (l = this[e]().color[n], r && (l = r(l)), l);
  };
}
function Rt(e) {
  return function(n) {
    return Math.max(0, Math.min(e, n));
  };
}
function m9(e) {
  return Array.isArray(e) ? e : [e];
}
function Kc(e, n) {
  for (var r = 0; r < n; r++)
    typeof e[r] != "number" && (e[r] = 0);
  return e;
}
var Nc = Vt;
function zn(e) {
  const n = Nc(e), r = Nc({ r: 255, g: 255, b: 255 }), o = Nc({ r: 0, g: 0, b: 0 });
  return n.red() * 0.299 + n.green() * 0.587 + n.b() * 0.114 >= 186 ? o : r;
}
const uh = ({
  preview: e,
  config: n,
  settings: r,
  labels: o,
  backgroundColor: l,
  layout: c,
  i18nEnabled: v
}) => {
  const w = n.blogUrl, A = n.signupForm.url.replace("{version}", n.signupForm.version);
  let h = {
    site: w,
    "button-color": r.accentColor,
    "button-text-color": zn(r.accentColor).hex()
  };
  v && r.locale && (h.locale = r.locale);
  for (const [k, D] of o.entries())
    h[`label-${k + 1}`] = D.name;
  let f = "min-height: 58px;max-width: 440px;margin: 0 auto;width: 100%";
  c === "all-in-one" && (r.icon && r.icon !== "" && (h.icon = r.icon.replace(/\/content\/images\//, "/content/images/size/w192h192/")), h.title = r.title, h.description = r.description, h["background-color"] = l, h["text-color"] = zn(l).hex(), f = "height: 40vmin;min-height: 360px"), e && (c === "minimal" ? f = "min-height: 58px; max-width: 440px;width: 100%;position: absolute; left: 50%; top:50%; transform: translate(-50%, -50%);" : f = "height: 100vh");
  let b = "";
  const x = [
    "background-color",
    "text-color",
    "button-color",
    "button-text-color",
    "title",
    "description",
    "icon",
    "site",
    "locale"
  ], g = Object.keys(h).sort((k, D) => x.indexOf(k) - x.indexOf(D));
  for (const k of g) {
    const D = h[k];
    b += ` data-${k}="${ch(D)}"`;
  }
  const y = `<div style="${ch(f)}"><script src="${encodeURI(A)}"${b} async><\/script></div>`;
  return e && c === "minimal" ? `<div style="position: absolute; z-index: -1; top: 0; left: 0; width: 100%; height: 100%; background-image: linear-gradient(45deg, #eee 25%, transparent 25%, transparent 75%, #eee 75%), linear-gradient(45deg, #eee 25%, transparent 25%, transparent 75%, #eee 75%);background-size: 16px 16px;background-position: 0 0, 8px 8px;;"></div>${y}` : y;
}, g9 = ve.create(() => {
  let e = !1;
  const [n, r] = se("#08090c"), [o, l] = se([]), [c, v] = se("all-in-one"), [w, A] = se(""), [h, f] = se(""), [b, x] = se(!1), { updateRoute: g } = We(), { config: y } = Ve(), { localSettings: k, siteData: D } = ws(), [C, S, G, Q, W, J] = ht(k, ["accent_color", "title", "description", "locale", "labs", "icon"]), [Y, B] = se({ active: !1 });
  W && (e = JSON.parse(W).i18n), ye(() => {
    var ee, F;
    if (!D)
      return;
    const z = {
      config: {
        blogUrl: D.url,
        signupForm: {
          url: (ee = y == null ? void 0 : y.signupForm) == null ? void 0 : ee.url,
          version: (F = y == null ? void 0 : y.signupForm) == null ? void 0 : F.version
        }
      },
      settings: {
        accentColor: C || "#d74780",
        title: S || "",
        locale: Q || "en",
        icon: J || "",
        description: G || ""
      },
      labels: o.map(({ label: _ }) => ({ name: _ })),
      backgroundColor: n || "#08090c",
      layout: c,
      i18nEnabled: e
    }, $ = uh({
      preview: !0,
      ...z
    });
    A($);
    const K = uh({
      preview: !1,
      ...z
    });
    f(K);
  }, [D, C, o, y, S, n, c, Q, e, J, G]);
  const U = async () => {
    try {
      await navigator.clipboard.writeText(h), x(!0), setTimeout(() => x(!1), 2e3);
    } catch (z) {
      console.error("Failed to copy text: ", z);
    }
  }, te = (z) => {
    r(z);
  }, R = (z) => {
    if (z != null && z.length) {
      const $ = z == null ? void 0 : z.map(({ value: K }) => ({ label: K, value: K }));
      l($);
    } else
      l([]);
  };
  return /* @__PURE__ */ a.jsx(
    vt,
    {
      afterClose: () => {
        g("embed-signup-form");
      },
      cancelLabel: "",
      footer: !1,
      height: 645,
      padding: !1,
      testId: "embed-signup-form",
      title: "",
      topRightContent: "close",
      width: 1120,
      children: /* @__PURE__ */ a.jsxs("div", { className: "grid grid-cols-[5.2fr_2.8fr]", children: [
        /* @__PURE__ */ a.jsx(
          r9,
          {
            html: w,
            style: c
          }
        ),
        /* @__PURE__ */ a.jsx(
          s9,
          {
            accentColor: C,
            customColor: Y,
            embedScript: h,
            handleColorToggle: te,
            handleCopyClick: U,
            handleLabelClick: R,
            handleLayoutSelect: v,
            isCopied: b,
            selectedColor: n,
            selectedLabels: o,
            selectedLayout: c,
            setCustomColor: B
          }
        )
      ] })
    }
  );
}), To = ({
  icon: e,
  title: n,
  detail: r,
  extra: o
}) => /* @__PURE__ */ a.jsxs("div", { className: "-mx-8 -mt-8 flex flex-col gap-4 bg-grey-75 p-8 md:flex-row dark:bg-grey-950", children: [
  /* @__PURE__ */ a.jsx("div", { className: "size-14", children: e }),
  /* @__PURE__ */ a.jsxs("div", { className: "mt-1.5 flex min-w-0 flex-1 flex-col", children: [
    /* @__PURE__ */ a.jsx("h3", { children: n }),
    /* @__PURE__ */ a.jsx("div", { children: r }),
    o && /* @__PURE__ */ a.jsx("div", { className: "mt-4", children: o })
  ] })
] }), x9 = ve.create(() => {
  const { updateRoute: e } = We(), { settings: n } = Ve(), { mutateAsync: r } = vs(), o = rt(), [l, c] = se(""), [v] = ht(n, ["firstpromoter"]), [w] = ht(n, ["firstpromoter_id"]), [A, h] = se("Save"), [f, b] = se(!!v);
  ye(() => {
    b(v || !1), c(w || null);
  }, [v, w]);
  const x = async () => {
    const g = [
      {
        key: "firstpromoter",
        value: f
      },
      {
        key: "firstpromoter_id",
        value: l
      }
    ];
    try {
      h("Saving..."), await Promise.all([
        r(g),
        new Promise((y) => {
          setTimeout(y, 1e3);
        })
      ]), h("Saved");
    } catch (y) {
      o(y);
    } finally {
      setTimeout(() => h("Save"), 1e3);
    }
  };
  return /* @__PURE__ */ a.jsxs(
    vt,
    {
      afterClose: () => {
        e("integrations");
      },
      cancelLabel: "Close",
      dirty: f !== v || l !== w,
      okColor: A === "Saved" ? "green" : "black",
      okLabel: A,
      testId: "firstpromoter-modal",
      title: "",
      onOk: async () => {
        try {
          await x();
        } catch (g) {
          o(g);
        }
      },
      children: [
        /* @__PURE__ */ a.jsx(
          To,
          {
            detail: "Launch your own member referral program",
            icon: /* @__PURE__ */ a.jsx(Gb, { className: "-mt-2 size-14" }),
            title: "FirstPromoter"
          }
        ),
        /* @__PURE__ */ a.jsx("div", { className: "mt-7", children: /* @__PURE__ */ a.jsxs(Ke, { marginBottom: !1, title: "FirstPromoter configuration", grouped: !0, children: [
          /* @__PURE__ */ a.jsx(
            et,
            {
              checked: f,
              direction: "rtl",
              hint: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
                "Enable ",
                /* @__PURE__ */ a.jsx("a", { className: "text-green", href: "https://firstpromoter.com/?fpr=ghost&fp_sid=admin", rel: "noopener noreferrer", target: "_blank", children: "FirstPromoter" }),
                " for tracking referrals"
              ] }),
              label: "Enable FirstPromoter",
              onChange: (g) => {
                b(g.target.checked);
              }
            }
          ),
          f && /* @__PURE__ */ a.jsx(
            je,
            {
              hint: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
                "Affiliate and referral tracking, find your ID  ",
                /* @__PURE__ */ a.jsx("a", { className: "text-green", href: "https://ghost.org/help/firstpromoter-id/", rel: "noopener noreferrer", target: "_blank", children: "here" })
              ] }),
              placeholder: "XXXXXXXX",
              title: "FirstPromoter account ID",
              value: l || "",
              onChange: (g) => {
                c(g.target.value);
              }
            }
          )
        ] }) })
      ]
    }
  );
}), w9 = "ActionsResponseType", b9 = Yb({
  dataType: w9,
  path: "/actions/",
  returnData: (e) => {
    const { pages: n } = e;
    let r = n.flatMap((c) => c.actions.map(
      ({ context: v, ...w }) => ({ ...w, context: JSON.parse(v) })
    ));
    r = r.reverse();
    let o = 1;
    r.forEach((c, v) => {
      const w = r[v + 1];
      w && c.resource_id === w.resource_id && c.event === w.event ? (c.skip = !0, o += 1) : o > 1 && (c.count = o, o = 1);
    });
    const l = n[n.length - 1].meta;
    return {
      actions: r.reverse(),
      meta: l,
      isEnd: l ? l.pagination.pages === l.pagination.page : !0
    };
  }
}), v9 = (e) => {
  var n, r;
  let o = e.resource_type;
  if (e.event !== "deleted")
    switch (e.resource_type) {
      case "page":
      case "post":
        return !e.resource || !e.resource.id ? void 0 : (o === "post" && (n = e.context) != null && n.type && (o = (r = e.context) == null ? void 0 : r.type), {
          isExternal: !0,
          route: `editor/${o}/${e.resource.id}`,
          models: [o, e.resource.id]
        });
      case "integration":
        return !e.resource || !e.resource.id ? void 0 : { route: `integrations/${e.resource.id}` };
      case "offer":
        return !e.resource || !e.resource.id ? void 0 : {
          isExternal: !0,
          route: `offers/${e.resource.id}`,
          models: [e.resource.id]
        };
      case "tag":
        return !e.resource || !e.resource.slug ? void 0 : {
          isExternal: !0,
          route: "tag",
          models: [e.resource.slug]
        };
      case "product":
        return { route: "tiers" };
      case "user":
        return !e.resource || !e.resource.slug ? void 0 : { route: `staff/${e.resource.slug}` };
    }
}, y9 = (e) => {
  var n, r, o, l, c, v, w;
  let A = e.resource_type;
  A === "api_key" ? A = "API key" : A === "setting" ? A = "settings" : A === "product" && (A = "tier"), A === "post" && (n = e.context) != null && n.type && (A = (r = e.context) == null ? void 0 : r.type);
  let h = e.event;
  return e.event === "edited" && (o = e.context) != null && o.action_name && (h = (l = e.context) == null ? void 0 : l.action_name), (c = e.context) != null && c.count && ((v = e.context) == null ? void 0 : v.count) > 1 ? `${(w = e.context) == null ? void 0 : w.count} ${A}s ${h}` : `${A.slice(0, 1).toUpperCase()}${A.slice(1)} ${h}`;
}, k9 = (e) => {
  var n, r, o, l;
  if (e.resource_type === "setting" && (n = e.context) != null && n.group && (r = e.context) != null && r.key)
    return {
      group: (o = e.context) == null ? void 0 : o.group,
      key: (l = e.context) == null ? void 0 : l.key
    };
}, fh = (e) => {
  var n, r;
  return typeof ((n = e.context) == null ? void 0 : n.count) == "number" && ((r = e.context) == null ? void 0 : r.count) > 1;
}, M9 = ({ action: e }) => {
  let n = "pen";
  switch (e.event) {
    case "added":
      n = "add";
      break;
    case "deleted":
      n = "trash";
      break;
  }
  return /* @__PURE__ */ a.jsx(Mt, { name: n, size: "xs" });
}, j9 = ({ action: e }) => {
  var n, r, o, l, c;
  return /* @__PURE__ */ a.jsxs("div", { className: "relative shrink-0", children: [
    /* @__PURE__ */ a.jsx(
      Ub,
      {
        bgColor: Zb(((n = e.actor) == null ? void 0 : n.name) || ((r = e.actor) == null ? void 0 : r.slug) || ""),
        image: ((o = e.actor) == null ? void 0 : o.image) ?? void 0,
        label: Jb(((l = e.actor) == null ? void 0 : l.name) || ((c = e.actor) == null ? void 0 : c.slug)),
        labelColor: "white",
        size: "md"
      }
    ),
    /* @__PURE__ */ a.jsx("div", { className: "absolute -bottom-1 -right-1 z-30 flex items-center justify-center rounded-full border border-grey-100 bg-white p-1 shadow-sm dark:border-grey-900 dark:bg-black", children: /* @__PURE__ */ a.jsx(M9, { action: e }) })
  ] });
}, Fr = ({ label: e, item: n, excludedItems: r, toggleItem: o }) => /* @__PURE__ */ a.jsx(
  et,
  {
    checked: !r.includes(n),
    direction: "rtl",
    label: e,
    labelClasses: "text-sm",
    onChange: (l) => o(n, l.target.checked)
  }
), E9 = ({ excludedEvents: e, excludedResources: n, toggleEventType: r, toggleResourceType: o }) => {
  const { updateRoute: l } = We(), c = Bh({ path: "/users/", filterKey: "name", responseKey: "users" }), v = async (f, b) => {
    const x = await c.loadData(f);
    b(x.map((g) => ({ label: g.name, value: g.id })));
  }, [w, A] = se(), h = () => {
    A(null);
  };
  return /* @__PURE__ */ a.jsxs("div", { className: "flex items-center gap-4", children: [
    /* @__PURE__ */ a.jsx(jh, { position: "end", trigger: /* @__PURE__ */ a.jsx(He, { color: "outline", label: "Filter" }), children: /* @__PURE__ */ a.jsxs("div", { className: "flex w-[220px] flex-col gap-8 p-5", children: [
      /* @__PURE__ */ a.jsxs(fA, { children: [
        /* @__PURE__ */ a.jsx(Fr, { excludedItems: e, item: "added", label: "Added", toggleItem: r }),
        /* @__PURE__ */ a.jsx(Fr, { excludedItems: e, item: "edited", label: "Edited", toggleItem: r }),
        /* @__PURE__ */ a.jsx(Fr, { excludedItems: e, item: "deleted", label: "Deleted", toggleItem: r })
      ] }),
      /* @__PURE__ */ a.jsxs(fA, { children: [
        /* @__PURE__ */ a.jsx(Fr, { excludedItems: n, item: "post", label: "Posts", toggleItem: o }),
        /* @__PURE__ */ a.jsx(Fr, { excludedItems: n, item: "page", label: "Pages", toggleItem: o }),
        /* @__PURE__ */ a.jsx(Fr, { excludedItems: n, item: "tag", label: "Tags", toggleItem: o }),
        /* @__PURE__ */ a.jsx(Fr, { excludedItems: n, item: "offer,product", label: "Tiers & offers", toggleItem: o }),
        /* @__PURE__ */ a.jsx(Fr, { excludedItems: n, item: "api_key,integration,setting,user,webhook", label: "Settings & staff", toggleItem: o })
      ] })
    ] }) }),
    /* @__PURE__ */ a.jsx("div", { className: "w-[200px]", children: /* @__PURE__ */ a.jsx(
      Lt,
      {
        loadOptions: wA(v, 500),
        placeholder: "Search staff",
        value: w,
        async: !0,
        defaultOptions: !0,
        isClearable: !0,
        onSelect: (f) => {
          f ? (A(f), l(`history/view/${f.value}`)) : (h(), l("history/view"));
        }
      }
    ) })
  ] });
}, D9 = ({ action: e }) => {
  var o, l, c, v, w, A, h, f;
  const { updateRoute: n } = We(), r = k9(e);
  if (r) {
    const { group: b, key: x } = r;
    return /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
      b.slice(0, 1).toUpperCase(),
      b.slice(1),
      b !== x && /* @__PURE__ */ a.jsxs("span", { className: "text-xs", children: [
        " ",
        /* @__PURE__ */ a.jsxs("code", { className: "mb-1 bg-white text-grey-800 dark:bg-grey-900 dark:text-white", children: [
          "(",
          x,
          ")"
        ] })
      ] })
    ] });
  } else if ((o = e.resource) != null && o.title || (l = e.resource) != null && l.name || (c = e.context) != null && c.primary_name) {
    const b = v9(e);
    return b ? /* @__PURE__ */ a.jsx("a", { className: "cursor-pointer font-bold", onClick: (x) => {
      x.preventDefault(), n(b);
    }, children: ((v = e.resource) == null ? void 0 : v.title) || ((w = e.resource) == null ? void 0 : w.name) }) : /* @__PURE__ */ a.jsx(a.Fragment, { children: ((A = e.resource) == null ? void 0 : A.title) || ((h = e.resource) == null ? void 0 : h.name) || ((f = e.context) == null ? void 0 : f.primary_name) });
  } else
    return /* @__PURE__ */ a.jsx("span", { className: "text-grey-500", children: "(unknown)" });
}, T9 = (e) => {
  const r = new Intl.DateTimeFormat("en-US", {
    year: "numeric",
    month: "2-digit",
    day: "2-digit",
    hour: "2-digit",
    minute: "2-digit",
    second: "2-digit"
  }).formatToParts(e).reduce((o, { type: l, value: c }) => ({ ...o, [l]: c }), {});
  return `${r.year}-${r.month}-${r.day} ${r.hour}:${r.minute}:${r.second}`;
}, N9 = 200, C9 = ve.create(({ params: e }) => {
  const n = fn(), { updateRoute: r } = We(), [o, l] = se([]), [c, v] = se(["label"]), { data: w, fetchNextPage: A, isFetchingNextPage: h } = b9({
    searchParams: {
      include: "actor,resource",
      limit: N9.toString(),
      filter: [
        o.length && `event:-[${o.join(",")}]`,
        c.length && `resource_type:-[${c.join(",")}]`,
        (e == null ? void 0 : e.user) && `actor_id:'${e.user}'`
      ].filter(Boolean).join("+")
    },
    getNextPageParams: (g, y) => ({
      ...y,
      filter: [y.filter, g.actions.length && `created_at:<'${T9(new Date(g.actions[g.actions.length - 1].created_at))}'`].join("+")
    }),
    keepPreviousData: !0
  }), f = Bt(() => {
    w != null && w.isEnd || A();
  }, [w == null ? void 0 : w.isEnd, A]), b = (g, y, k) => {
    g((D) => k ? D.concat(y) : D.filter((C) => C !== y));
  }, x = o.length > 0 || c.length > 0 || (e == null ? void 0 : e.user);
  return /* @__PURE__ */ a.jsx(
    vt,
    {
      afterClose: () => {
        r("history");
      },
      cancelLabel: "",
      okLabel: "Close",
      scrolling: !0,
      size: "md",
      stickyFooter: !0,
      stickyHeader: !0,
      testId: "history-modal",
      title: "History",
      topRightContent: /* @__PURE__ */ a.jsx(
        E9,
        {
          excludedEvents: o,
          excludedResources: c,
          toggleEventType: (g, y) => b(l, g, !y),
          toggleResourceType: (g, y) => b(v, g, !y),
          userId: e == null ? void 0 : e.user
        }
      ),
      onOk: () => {
        n.remove(), r("history");
      },
      children: /* @__PURE__ */ a.jsx("div", { className: "relative mt-6", children: /* @__PURE__ */ a.jsx(br, { hint: w != null && w.isEnd && w.actions.length > 0 ? "End of history log" : void 0, children: w != null && w.actions ? w.actions.length > 0 ? /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        /* @__PURE__ */ a.jsx(k3, { offset: 250, onTrigger: f }),
        w.actions.map((g) => {
          var y, k;
          return !g.skip && /* @__PURE__ */ a.jsx(
            Wr,
            {
              avatar: /* @__PURE__ */ a.jsx(j9, { action: g }),
              detail: [
                new Date(g.created_at).toLocaleDateString("default", { year: "numeric", month: "short", day: "2-digit" }),
                new Date(g.created_at).toLocaleTimeString("default", { hour: "2-digit", minute: "2-digit", second: "2-digit" })
              ].join(" | "),
              title: /* @__PURE__ */ a.jsxs("div", { className: "text-sm", children: [
                y9(g),
                fh(g) ? "" : ": ",
                !fh(g) && /* @__PURE__ */ a.jsx(D9, { action: g }),
                g.count ? /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
                  " ",
                  g.count,
                  " times"
                ] }) : null,
                /* @__PURE__ */ a.jsxs("span", { children: [
                  " — by ",
                  ((y = g.actor) == null ? void 0 : y.name) || ((k = g.actor) == null ? void 0 : k.slug)
                ] })
              ] }),
              separator: !0
            }
          );
        }),
        h && /* @__PURE__ */ a.jsx("div", { className: "flex items-center justify-center p-5", children: /* @__PURE__ */ a.jsx(AA, { size: "md" }) })
      ] }) : /* @__PURE__ */ a.jsx(fd, { icon: "time-back", children: x ? "No entries match your current filters." : "No history entries found." }) : w === void 0 ? /* @__PURE__ */ a.jsx("div", { className: "flex items-center justify-center px-5 pb-10 pt-12", children: /* @__PURE__ */ a.jsx(AA, {}) }) : /* @__PURE__ */ a.jsx(fd, { children: "No entries found." }) }) })
    }
  );
}), I9 = ve.create(() => {
  var te, R;
  const e = ve.useModal(), n = Ic(), r = Ic({
    searchParams: { limit: "100", permissions: "assign" }
  }), o = da(), { updateRoute: l } = We(), { config: c } = Ve(), v = c.labs.superEditors, w = tt(null), [A, h] = se(""), [f, b] = se(""), [x, g] = se("contributor"), [y, k] = se({}), { data: { users: D } = {} } = Wb(), { data: { invites: C } = {} } = Vb(), { mutateAsync: S } = Kb(), G = rt();
  if (ye(() => {
    w.current && w.current.focus();
  }, []), ye(() => {
    f === "saved" && setTimeout(() => {
      b("");
    }, 2e3);
  }, [f]), ye(() => {
    x !== "contributor" && (o != null && o.isLimited("staff")) ? o.errorIfWouldGoOverLimit("staff").then(() => {
      k((z) => ({ ...z, role: void 0 }));
    }).catch((z) => {
      if (z instanceof ha) {
        k(($) => ({ ...$, role: z.message }));
        return;
      } else
        throw z;
    }) : k((z) => ({ ...z, role: void 0 }));
  }, [o, x]), !((te = n.data) != null && te.roles) || !((R = r.data) != null && R.roles))
    return null;
  const Q = n.data.roles, W = r.data.roles;
  let J = "Send invitation";
  f === "saving" ? J = "Sending..." : f === "saved" ? J = "Invite sent!" : f === "error" && (J = "Retry");
  const Y = async () => {
    var z, $;
    if (f !== "saving") {
      if (!jt.isEmail(A)) {
        k({
          email: "Please enter a valid email address."
        });
        return;
      }
      if (D != null && D.some(({ email: K }) => K === A)) {
        k({
          email: "A user with that email address already exists."
        });
        return;
      }
      if (C != null && C.some(({ email: K }) => K === A)) {
        k({
          email: "A user with that email address was already invited."
        });
        return;
      }
      if (!y.role) {
        b("saving");
        try {
          await S({
            email: A,
            roleId: Q.find(({ name: K }) => K.toLowerCase() === x.toLowerCase()).id
          }), b("saved"), ut({
            title: "Invitation sent",
            message: `${A}`,
            type: "success"
          }), e.remove(), l("staff?tab=invited");
        } catch (K) {
          b("error");
          let ee = "Failed to send invitation", F = /* @__PURE__ */ a.jsxs("span", { children: [
            "If the problem persists, ",
            /* @__PURE__ */ a.jsxs("a", { href: "https://ghost.org/contact", children: [
              /* @__PURE__ */ a.jsx("u", { children: "contact support" }),
              "."
            ] }),
            "."
          ] });
          if (K instanceof _b) {
            let _ = K.data;
            (($ = (z = _ == null ? void 0 : _.errors) == null ? void 0 : z[0]) == null ? void 0 : $.type) === "EmailError" && (F = /* @__PURE__ */ a.jsx("span", { children: "Check your Mailgun configuration." }));
          }
          ut({
            title: ee,
            message: F,
            type: "error"
          }), G(K, { withToast: !1 });
          return;
        }
      }
    }
  }, B = [
    {
      hint: "Can create and edit their own posts, but cannot publish. An Editor needs to approve and publish for them.",
      label: "Contributor",
      value: "contributor"
    },
    {
      hint: "A trusted user who can create, edit and publish their own posts, but can’t modify others.",
      label: "Author",
      value: "author"
    },
    {
      hint: "Can invite and manage other Authors and Contributors, as well as edit and publish any posts on the site.",
      label: "Editor",
      value: "editor"
    },
    {
      hint: "Trusted staff user who should be able to manage all content and users, as well as site settings and options.",
      label: "Administrator",
      value: "administrator"
    }
  ];
  v && (B[2] = {
    hint: "Can invite and manage other Authors and Contributors, as well as edit and publish any posts on the site. Can manage members and moderate comments.",
    label: "Editor (beta mode)",
    value: "super editor"
  });
  const U = B.filter((z) => W.some(($) => $.name === z.label || $.name === "Super Editor" && z.label === "Editor (beta mode)"));
  return y.email && (J = "Retry"), /* @__PURE__ */ a.jsx(
    vt,
    {
      afterClose: () => {
        l("staff");
      },
      cancelLabel: "",
      okColor: f === "error" || y.email ? "red" : "black",
      okLabel: J,
      testId: "invite-user-modal",
      title: "Invite a new staff user",
      width: 540,
      onOk: Y,
      children: /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col gap-6 py-4", children: [
        /* @__PURE__ */ a.jsx("p", { children: "Send an invitation for a new person to create a staff account on your site, and select a role that matches what you’d like them to be able to do." }),
        /* @__PURE__ */ a.jsx(
          je,
          {
            error: !!y.email,
            hint: y.email,
            inputRef: w,
            placeholder: "jamie@example.com",
            title: "Email address",
            value: A,
            onChange: (z) => {
              h(z.target.value);
            },
            onKeyDown: () => k((z) => ({ ...z, email: void 0 }))
          }
        ),
        /* @__PURE__ */ a.jsx("div", { children: /* @__PURE__ */ a.jsx(
          y3,
          {
            error: !!y.role,
            hint: y.role,
            id: "role",
            options: U,
            selectedOption: x,
            separator: !0,
            title: "Role",
            onSelect: (z) => {
              g(z);
            }
          }
        ) })
      ] })
    }
  );
}), dh = ({ baseUrl: e, item: n, updateItem: r, addItem: o, clearError: l, labelPlaceholder: c, unstyled: v, textFieldClasses: w, action: A, className: h, ...f }) => /* @__PURE__ */ a.jsxs("div", { className: me("flex w-full items-start gap-3", h), "data-testid": "navigation-item-editor", ...f, children: [
  /* @__PURE__ */ a.jsx("div", { className: "flex flex-1 pt-1", children: /* @__PURE__ */ a.jsx(
    je,
    {
      className: w,
      containerClassName: "grow",
      error: !!n.errors.label,
      hint: n.errors.label,
      placeholder: c,
      title: "Label",
      unstyled: v,
      value: n.label,
      hideTitle: !0,
      onChange: (b) => r == null ? void 0 : r({ label: b.target.value }),
      onKeyDown: (b) => {
        r == null || r({ label: b.target.value }), b.key === "Enter" && (b.preventDefault(), o == null || o()), n.errors.label && (l == null || l("label"));
      }
    }
  ) }),
  /* @__PURE__ */ a.jsx("div", { className: "flex flex-1 pt-1", children: /* @__PURE__ */ a.jsx(
    Lh,
    {
      baseUrl: e,
      className: w,
      containerClassName: "grow",
      error: !!n.errors.url,
      hint: n.errors.url,
      title: "URL",
      unstyled: v,
      value: n.url,
      hideTitle: !0,
      onChange: (b) => r == null ? void 0 : r({ url: b || "" }),
      onKeyDown: (b) => {
        const x = iA(b.target.value, e, !0);
        r == null || r({ url: x.save || "" });
      },
      onKeyUp: (b) => {
        if (b.key === "Enter") {
          b.preventDefault();
          const x = iA(b.target.value, e, !0);
          r == null || r({ url: x.save || "" }), o == null || o();
        }
        n.errors.url && (l == null || l("url"));
      }
    }
  ) }),
  A
] }), hh = ({ baseUrl: e, navigation: n }) => /* @__PURE__ */ a.jsxs("div", { className: "w-full pt-2", children: [
  /* @__PURE__ */ a.jsx(
    Qh,
    {
      items: n.items,
      itemSeparator: !1,
      renderItem: (r) => /* @__PURE__ */ a.jsx(
        dh,
        {
          action: /* @__PURE__ */ a.jsx(He, { className: "mt-1 self-center", icon: "trash", iconColorClass: "dark:text-white", size: "sm", onClick: () => n.removeItem(r.id) }),
          baseUrl: e,
          clearError: (o) => n.clearError(r.id, o),
          item: r,
          updateItem: (o) => n.updateItem(r.id, o)
        }
      ),
      onMove: n.moveItem
    }
  ),
  /* @__PURE__ */ a.jsxs("div", { className: "flex items-center gap-3", children: [
    /* @__PURE__ */ a.jsx(Mt, { colorClass: "text-grey-300 dark:text-grey-900 mt-1", name: "add", size: "sm" }),
    /* @__PURE__ */ a.jsx(
      dh,
      {
        action: /* @__PURE__ */ a.jsx(He, { className: "mx-2 mt-1 self-center rounded bg-green p-1", "data-testid": "add-button", icon: "add", iconColorClass: "text-white", size: "sm", unstyled: !0, onClick: n.addItem }),
        addItem: n.addItem,
        baseUrl: e,
        className: "mt-1",
        clearError: (r) => n.clearError(n.newItem.id, r),
        "data-testid": "new-navigation-item",
        item: n.newItem,
        labelPlaceholder: "New item label",
        updateItem: n.setNewItem
      }
    )
  ] })
] }), ph = ({ items: e, setItems: n }) => {
  const r = (x) => !!(x.label && !x.label.match(/^\s*$/) || x.url !== "/"), o = zp({
    items: e.map((x) => ({ ...x, errors: {} })),
    setItems: (x) => n(x.map(({ url: g, label: y }) => ({ url: g, label: y }))),
    blank: { url: "/", label: "", errors: {} },
    canAddNewItem: r
  }), l = new RegExp(/^(\/|#|[a-zA-Z0-9-]+:)/), c = (x) => {
    const g = {};
    return (!x.label || x.label.match(/^\s*$/)) && (g.label = "You must specify a label"), (!x.url || x.url.match(/\s/) || !jt.isURL(x.url, { require_protocol: !0 }) && !x.url.match(l)) && (g.url = "You must specify a valid URL or relative path"), g;
  }, v = (x, g) => {
    const y = o.items.find((k) => k.id === x);
    o.updateItem(x, { ...y.item, ...g });
  }, w = () => {
    const x = c(o.newItem);
    Object.values(x).some((g) => g) ? o.setNewItem({ ...o.newItem, errors: x }) : o.addItem();
  }, A = (x) => {
    o.removeItem(x);
  }, h = (x, g) => {
    o.moveItem(x, g);
  }, f = "new", b = (x, g) => {
    if (x === f)
      o.setNewItem({ ...o.newItem, errors: { ...o.newItem.errors, [g]: void 0 } });
    else {
      const y = o.items.find((k) => k.id === x).item;
      o.updateItem(x, { ...y, errors: { ...y.errors, [g]: void 0 } });
    }
  };
  return {
    items: o.items.map(({ item: x, id: g }) => ({ ...x, id: g })),
    updateItem: v,
    addItem: w,
    removeItem: A,
    moveItem: h,
    newItem: { ...o.newItem, id: f },
    setNewItem: (x) => o.setNewItem({ ...o.newItem, ...x }),
    clearError: b,
    validate: () => {
      let x = !0;
      if (o.items.forEach(({ item: g, id: y }) => {
        let k = c(g);
        Object.values(k).some((D) => D) && (x = !1, o.updateItem(y, { ...g, errors: k }));
      }), r(o.newItem)) {
        const g = c(o.newItem);
        Object.values(g).some((y) => y) && (x = !1, o.setNewItem({ ...o.newItem, errors: g }));
      }
      return x;
    }
  };
}, P9 = ve.create(() => {
  const e = fn(), { updateRoute: n } = We(), {
    localSettings: r,
    updateSetting: o,
    saveState: l,
    handleSave: c,
    siteData: v
  } = ws(), [w, A] = ht(
    r,
    ["navigation", "secondary_navigation"]
  ).map((g) => JSON.parse(g || "[]")), h = ph({
    items: w,
    setItems: (g) => {
      o("navigation", JSON.stringify(g));
    }
  }), f = ph({
    items: A,
    setItems: (g) => o("secondary_navigation", JSON.stringify(g))
  }), [b, x] = se("primary-nav");
  return /* @__PURE__ */ a.jsx(
    vt,
    {
      afterClose: () => {
        n("navigation");
      },
      buttonsDisabled: l === "saving",
      cancelLabel: "Close",
      dirty: r.some((g) => g.dirty),
      okLabel: l === "saving" ? "Saving..." : "Save",
      scrolling: !0,
      size: "lg",
      stickyFooter: !0,
      testId: "navigation-modal",
      title: "Navigation",
      onOk: async () => {
        h.validate() && f.validate() && (await c(), e.remove(), n("navigation"));
      },
      children: /* @__PURE__ */ a.jsx("div", { className: "mb-1 mt-6", children: /* @__PURE__ */ a.jsx(
        Zr,
        {
          selectedTab: b,
          tabs: [
            {
              id: "primary-nav",
              title: "Primary",
              contents: /* @__PURE__ */ a.jsx(hh, { baseUrl: v.url, navigation: h })
            },
            {
              id: "secondary-nav",
              title: "Secondary",
              contents: /* @__PURE__ */ a.jsx(hh, { baseUrl: v.url, navigation: f })
            }
          ],
          onTabChange: x
        }
      ) })
    }
  );
}), O9 = "data:image/jpeg;base64,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", z9 = "data:image/jpeg;base64,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", H9 = "data:image/jpeg;base64,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", S9 = "data:image/jpeg;base64,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", R9 = ({
  senderName: e,
  senderEmail: n,
  senderReplyTo: r,
  headerImage: o,
  headerIcon: l,
  headerTitle: c,
  headerSubtitle: v,
  showPostTitleSection: w,
  showExcerpt: A,
  titleAlignment: h,
  titleFontCategory: f,
  titleFontWeight: b,
  bodyFontCategory: x,
  authorPlaceholder: g,
  showCommentCta: y,
  showFeatureImage: k,
  showFeedback: D,
  showLatestPosts: C,
  showSubscriptionDetails: S,
  siteTitle: G,
  footerContent: Q,
  showBadge: W,
  backgroundColor: J,
  headerBackgroundColor: Y,
  accentColor: B,
  textColor: U,
  secondaryTextColor: te,
  headerTextColor: R,
  secondaryHeaderTextColor: z,
  postTitleColor: $,
  sectionTitleColor: K,
  dividerColor: ee,
  buttonColor: F,
  buttonTextColor: _,
  linkColor: fe,
  buttonCorners: xe,
  buttonStyle: I,
  imageCorners: de,
  linkStyle: be,
  dividerStyle: he
}) => {
  const ue = l || c, { config: De } = Ve(), ft = (/* @__PURE__ */ new Date()).toLocaleDateString("default", {
    year: "numeric",
    month: "short",
    day: "numeric"
  }), Jt = (/* @__PURE__ */ new Date()).getFullYear(), Qt = Q ? Q.replace(/<a/g, '<a target="_blank" rel="noopener noreferrer"') : "";
  let Ht;
  vA(De) ? Ht = /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
    /* @__PURE__ */ a.jsxs("p", { className: "leading-normal", children: [
      /* @__PURE__ */ a.jsx("span", { className: "font-semibold text-grey-900", children: "From: " }),
      /* @__PURE__ */ a.jsxs("span", { children: [
        e,
        " (",
        n,
        ")"
      ] })
    ] }),
    /* @__PURE__ */ a.jsxs("p", { className: "leading-normal", children: [
      /* @__PURE__ */ a.jsx("span", { className: "font-semibold text-grey-900", children: "Reply-to: " }),
      r || n
    ] })
  ] }) : Ht = /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
    /* @__PURE__ */ a.jsxs("p", { className: "leading-normal", children: [
      /* @__PURE__ */ a.jsx("span", { className: "font-semibold text-grey-900", children: e }),
      /* @__PURE__ */ a.jsxs("span", { children: [
        " ",
        n
      ] })
    ] }),
    /* @__PURE__ */ a.jsxs("p", { className: "leading-normal", children: [
      /* @__PURE__ */ a.jsx("span", { className: "font-semibold text-grey-900", children: "To:" }),
      " Jamie Larson jamie@example.com"
    ] })
  ] });
  let ne = "mb-5 text-pretty leading-[1.7] text-black";
  return f === "serif" && x === "serif" ? ne = me(ne, "mb-8 font-serif text-[2.0rem] leading-tight") : f !== "serif" && x === "serif" ? ne = me(ne, "mb-8 text-[1.7rem] leading-tight tracking-tight") : f === "serif" && x !== "serif" ? ne = me(ne, "mb-8 font-serif text-[2.0rem] leading-tight") : ne = me(ne, "mb-8 text-[1.9rem] leading-tight tracking-tight"), h === "center" && (ne = me(
    ne,
    "text-center"
  )), /* @__PURE__ */ a.jsx("div", { className: "relative flex grow flex-col", children: /* @__PURE__ */ a.jsx("div", { className: "absolute inset-0 m-5 flex items-center justify-center", children: /* @__PURE__ */ a.jsxs("div", { className: "mx-auto my-0 flex max-h-full w-full max-w-[700px] flex-col overflow-hidden rounded-[4px] text-black shadow-sm", children: [
    /* @__PURE__ */ a.jsx("div", { className: "flex-column flex min-h-[77px] justify-center rounded-t-sm border-b border-grey-200 bg-white px-6 text-sm text-grey-700", children: Ht }),
    /* @__PURE__ */ a.jsxs("div", { className: "overflow-y-auto text-sm", style: { backgroundColor: J }, children: [
      /* @__PURE__ */ a.jsxs("div", { className: "px-[7rem]", style: { backgroundColor: Y }, children: [
        o && /* @__PURE__ */ a.jsx("div", { children: /* @__PURE__ */ a.jsx("img", { alt: "", className: "mb-4 block pt-6", src: o }) }),
        ue && /* @__PURE__ */ a.jsxs("div", { className: "py-3", children: [
          l && /* @__PURE__ */ a.jsx("img", { alt: "", className: "mx-auto mb-2 size-10", role: "presentation", src: l }),
          c && /* @__PURE__ */ a.jsx("h4", { className: "mb-1 text-center text-[1.6rem] font-bold uppercase leading-tight tracking-tight text-grey-900", style: { color: R }, children: c }),
          v && /* @__PURE__ */ a.jsx("h5", { className: "mb-1 text-center text-[1.3rem] font-normal text-grey-700", style: { color: z }, children: v })
        ] }),
        w && /* @__PURE__ */ a.jsxs("div", { className: me("flex flex-col py-8", h === "center" ? "items-center" : "items-start"), children: [
          /* @__PURE__ */ a.jsx("h2", { className: me(
            "text-4xl font-bold leading-supertight text-black",
            f === "serif" && "font-serif",
            b === "normal" && "font-normal",
            b === "medium" && "font-medium",
            b === "semibold" && "font-semibold",
            b === "bold" && "font-bold",
            h === "center" ? "text-center" : "text-left",
            A ? "mb-2" : "mb-8"
          ), style: { color: $ }, children: "Your email newsletter" }),
          A && /* @__PURE__ */ a.jsx("p", { className: ne, style: { color: R }, children: "A subtitle to highlight key points and engage your readers." }),
          /* @__PURE__ */ a.jsxs("div", { className: me(
            "flex w-full justify-between text-center text-md leading-none text-grey-700",
            h === "center" ? "flex-col gap-1" : "flex-row"
          ), children: [
            /* @__PURE__ */ a.jsxs("p", { className: "pb-1 text-[1.3rem]", style: { color: z }, children: [
              "By ",
              g,
              /* @__PURE__ */ a.jsx("span", { className: "before:pl-0.5 before:pr-1 before:content-['•']", children: ft })
            ] }),
            /* @__PURE__ */ a.jsx("p", { className: "pb-1 text-[1.3rem] underline", style: { color: z }, children: /* @__PURE__ */ a.jsx("span", { children: "View in browser" }) })
          ] })
        ] }),
        k && /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
          /* @__PURE__ */ a.jsx("div", { className: me(
            "h-[unset] w-full max-w-[600px] bg-cover bg-no-repeat",
            w ? "" : "pt-6"
          ), children: /* @__PURE__ */ a.jsx("img", { alt: "Feature", className: me(
            "min-h-full min-w-full shrink-0",
            de === "square" && "rounded-none",
            de === "rounded" && "rounded-md"
          ), src: O9 }) }),
          /* @__PURE__ */ a.jsx("div", { className: "mt-1 w-full max-w-[600px] pb-8 text-center text-[1.3rem] text-grey-700", style: { color: z }, children: "Feature image caption" })
        ] })
      ] }),
      /* @__PURE__ */ a.jsxs("div", { className: me("px-[7rem]", Y !== "transparent" && "pt-10"), children: [
        /* @__PURE__ */ a.jsxs("div", { className: me(
          "max-w-[600px] border-b border-grey-200 pb-[52px] leading-[27.2px] text-black",
          he === "dashed" && "border-dashed",
          he === "dotted" && "border-b-2 border-dotted",
          x === "serif" ? "font-serif text-[1.8rem]" : "text-[1.7rem] tracking-tight",
          k || w ? "" : "pt-8"
        ), style: { borderColor: ee }, children: [
          /* @__PURE__ */ a.jsx("p", { className: "mb-6", style: { color: U }, children: "This is what your content will look like when you send one of your posts as an email newsletter to your subscribers." }),
          /* @__PURE__ */ a.jsx("p", { className: "mb-6", style: { color: U }, children: "Over there on the right you'll see some settings that allow you to customize the look and feel of this template – from colors and typography to layout and buttons – to make it perfectly suited to your brand." }),
          /* @__PURE__ */ a.jsx("p", { className: "mb-[52px]", style: { color: U }, children: "Email templates are exceptionally finnicky to make, but we've spent a long time optimising this one to make it work beautifully across devices, email clients and content types. So, you can trust that every email you send with Ghost will look great and work well. Just like the rest of your site." }),
          /* @__PURE__ */ a.jsx("hr", { className: me("my-[52px] border-[#e0e7eb]", he === "dashed" && "border-dashed", he === "dotted" && "border-b-2 border-t-0 border-dotted"), style: { borderColor: ee } }),
          /* @__PURE__ */ a.jsx(
            "h3",
            {
              className: me(
                "mb-[13px] text-[2.6rem] leading-supertight",
                f === "serif" && "font-serif",
                f === "sans_serif" && "font-sans",
                b === "normal" && "font-normal",
                b === "medium" && "font-medium",
                b === "semibold" && "font-semibold",
                b === "bold" && "font-bold"
              ),
              style: { color: K },
              children: "Need inspiration?"
            }
          ),
          /* @__PURE__ */ a.jsxs("p", { className: "mb-[27px]", style: { color: U }, children: [
            "We've put together a ",
            /* @__PURE__ */ a.jsx("a", { className: me(be === "underline" && "underline", be === "bold" && "font-bold"), href: "https://ghost.org/help/email-design/", rel: "noopener noreferrer", style: { color: fe || B }, target: "_blank", children: "quick guide" }),
            " that walks through all of the available settings, along with a few examples of what's possible."
          ] }),
          /* @__PURE__ */ a.jsx(
            "a",
            {
              className: me(
                "inline-block border px-[18px] py-2 font-sans text-[15px]",
                xe === "rounded" && "rounded-[6px]",
                xe === "pill" && "rounded-full",
                xe === "square" && "rounded-none",
                I === "outline" ? "bg-transparent" : "border-transparent text-white",
                be === "bold" ? "font-bold" : "font-semibold"
              ),
              href: "https://ghost.org/help/email-design/",
              rel: "noopener noreferrer",
              style: I === "outline" ? {
                borderColor: F || B,
                color: F || B
              } : {
                backgroundColor: F || B,
                color: _
              },
              target: "_blank",
              children: "Learn more"
            }
          )
        ] }),
        (D || y) && /* @__PURE__ */ a.jsx("div", { className: me("grid gap-5 border-b border-grey-200 px-6 py-5", he === "dashed" && "border-dashed", he === "dotted" && "border-b-2 border-dotted"), style: { borderColor: ee }, children: /* @__PURE__ */ a.jsxs("div", { className: "flex justify-center gap-3", children: [
          D && /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
            /* @__PURE__ */ a.jsx("button", { className: "pointer-events-none cursor-default whitespace-nowrap rounded-[2.2rem] bg-transparent font-semibold", type: "button", children: /* @__PURE__ */ a.jsxs("span", { className: "inline-flex items-center gap-2 px-[18px] py-[7px]", style: { color: U }, children: [
              /* @__PURE__ */ a.jsx(Mt, { colorClass: "", name: "thumbs-up", size: "md" }),
              /* @__PURE__ */ a.jsx("span", { children: "More like this" })
            ] }) }),
            /* @__PURE__ */ a.jsx("button", { className: "pointer-events-none cursor-default whitespace-nowrap rounded-[2.2rem] bg-transparent font-semibold", type: "button", children: /* @__PURE__ */ a.jsxs("span", { className: "inline-flex items-center gap-2 px-[18px] py-[7px]", style: { color: U }, children: [
              /* @__PURE__ */ a.jsx(Mt, { colorClass: "", name: "thumbs-down" }),
              /* @__PURE__ */ a.jsx("span", { children: "Less like this" })
            ] }) })
          ] }),
          y && /* @__PURE__ */ a.jsx("button", { className: "pointer-events-none cursor-default whitespace-nowrap rounded-[2.2rem] bg-transparent font-semibold", type: "button", children: /* @__PURE__ */ a.jsxs("span", { className: "inline-flex items-center gap-2 px-[18px] py-[7px]", style: { color: U }, children: [
            /* @__PURE__ */ a.jsx(Mt, { colorClass: "", name: "comment" }),
            /* @__PURE__ */ a.jsx("span", { children: "Comment" })
          ] }) })
        ] }) }),
        C && /* @__PURE__ */ a.jsxs("div", { className: me("border-b border-grey-200 py-6", he === "dashed" && "border-dashed", he === "dotted" && "border-b-2 border-dotted"), style: { borderColor: ee }, children: [
          /* @__PURE__ */ a.jsx("h3", { className: "mb-4 mt-2 pb-1 text-[1.2rem] font-semibold uppercase tracking-wide text-black", style: { color: U }, children: "Keep reading" }),
          /* @__PURE__ */ a.jsxs("div", { className: "flex justify-between gap-4 py-2", children: [
            /* @__PURE__ */ a.jsxs("div", { children: [
              /* @__PURE__ */ a.jsx(
                "h4",
                {
                  className: me(
                    "mt-0.5 text-[1.9rem] text-black",
                    f === "serif" && "font-serif",
                    b === "normal" && "font-normal",
                    b === "medium" && "font-medium",
                    b === "semibold" && "font-semibold",
                    b === "bold" && "font-bold"
                  ),
                  style: { color: K },
                  children: "The three latest posts published on your site"
                }
              ),
              /* @__PURE__ */ a.jsx("p", { className: "m-0 text-base text-grey-700", style: { color: te }, children: "Posts sent as an email only will never be shown here." })
            ] }),
            /* @__PURE__ */ a.jsx("div", { className: "aspect-square h-auto w-full max-w-[100px] bg-cover bg-no-repeat", children: /* @__PURE__ */ a.jsx("img", { alt: "Latest post", className: me(
              de === "square" && "rounded-none",
              de === "rounded" && "rounded-md"
            ), src: z9 }) })
          ] }),
          /* @__PURE__ */ a.jsxs("div", { className: "flex justify-between gap-4 py-2", children: [
            /* @__PURE__ */ a.jsxs("div", { children: [
              /* @__PURE__ */ a.jsx(
                "h4",
                {
                  className: me(
                    "mt-0.5 text-[1.9rem] text-black",
                    f === "serif" && "font-serif",
                    b === "normal" && "font-normal",
                    b === "medium" && "font-medium",
                    b === "semibold" && "font-semibold",
                    b === "bold" && "font-bold"
                  ),
                  style: { color: K },
                  children: "Displayed at the bottom of each newsletter"
                }
              ),
              /* @__PURE__ */ a.jsx("p", { className: "m-0 text-base text-grey-700", style: { color: te }, children: "Giving your readers one more place to discover your stories." })
            ] }),
            /* @__PURE__ */ a.jsx("div", { className: "aspect-square h-auto w-full max-w-[100px] bg-cover bg-no-repeat", children: /* @__PURE__ */ a.jsx("img", { alt: "Latest post", className: me(
              de === "square" && "rounded-none",
              de === "rounded" && "rounded-md"
            ), src: H9 }) })
          ] }),
          /* @__PURE__ */ a.jsxs("div", { className: "flex justify-between gap-4 py-2", children: [
            /* @__PURE__ */ a.jsxs("div", { children: [
              /* @__PURE__ */ a.jsx(
                "h4",
                {
                  className: me(
                    "mt-0.5 text-[1.9rem] text-black",
                    f === "serif" && "font-serif",
                    b === "normal" && "font-normal",
                    b === "medium" && "font-medium",
                    b === "semibold" && "font-semibold",
                    b === "bold" && "font-bold"
                  ),
                  style: { color: K },
                  children: "To keep your work front and center"
                }
              ),
              /* @__PURE__ */ a.jsx("p", { className: "m-0 text-base text-grey-700", style: { color: te }, children: "Making sure that your audience stays engaged." })
            ] }),
            /* @__PURE__ */ a.jsx("div", { className: "aspect-square h-auto w-full max-w-[100px] bg-cover bg-no-repeat", children: /* @__PURE__ */ a.jsx("img", { alt: "Latest post", className: me(
              de === "square" && "rounded-none",
              de === "rounded" && "rounded-md"
            ), src: S9 }) })
          ] })
        ] }),
        S && /* @__PURE__ */ a.jsxs("div", { className: me("border-b border-grey-200 py-8", he === "dashed" && "border-dashed", he === "dotted" && "border-b-2 border-dotted"), style: { borderColor: ee }, children: [
          /* @__PURE__ */ a.jsx("h4", { className: "mb-3 text-[1.2rem] uppercase tracking-wide text-black", style: { color: U }, children: "Subscription details" }),
          /* @__PURE__ */ a.jsxs("p", { className: "m-0 mb-4 text-base", style: { color: U }, children: [
            "You are receiving this because you are a paid subscriber to ",
            G,
            ". Your subscription will renew on 17 Jul 2024."
          ] }),
          /* @__PURE__ */ a.jsxs("div", { className: "flex", children: [
            /* @__PURE__ */ a.jsxs("div", { className: "shrink-0 text-base", children: [
              /* @__PURE__ */ a.jsx("p", { style: { color: U }, children: "Name: Jamie Larson" }),
              /* @__PURE__ */ a.jsx("p", { style: { color: U }, children: "Email: jamie@example.com" }),
              /* @__PURE__ */ a.jsx("p", { style: { color: U }, children: "Member since: 17 July 2023" })
            ] }),
            /* @__PURE__ */ a.jsx("span", { className: me("w-full self-end whitespace-nowrap text-right text-base", be === "underline" && "underline", be === "bold" && "font-bold"), style: { color: fe || B }, children: "Manage subscription" })
          ] })
        ] }),
        /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col items-center pt-10", children: [
          /* @__PURE__ */ a.jsx("div", { dangerouslySetInnerHTML: { __html: Qt || "" }, className: "text break-words px-8 py-3 text-center text-[1.3rem] leading-base text-grey-700 [&_a]:underline", style: { color: te } }),
          /* @__PURE__ */ a.jsxs("div", { className: "px-8 pb-14 pt-3 text-center text-[1.3rem] text-grey-700", children: [
            /* @__PURE__ */ a.jsxs("span", { style: { color: te }, children: [
              G,
              " © ",
              Jt,
              " — "
            ] }),
            /* @__PURE__ */ a.jsx("span", { className: "pointer-events-none cursor-auto underline", style: { color: te }, children: "Unsubscribe" })
          ] }),
          W && /* @__PURE__ */ a.jsx("div", { className: "flex flex-col items-center pb-[40px] pt-[10px]", children: /* @__PURE__ */ a.jsxs("a", { className: "pointer-events-none inline-flex cursor-auto items-center px-2 py-1 text-[1.25rem] font-semibold tracking-tight text-grey-900", href: "https://ghost.org", style: { color: U }, children: [
            /* @__PURE__ */ a.jsx($b, { className: "mr-[6px] size-4" }),
            /* @__PURE__ */ a.jsx("span", { children: "Powered by Ghost" })
          ] }) })
        ] })
      ] })
    ] })
  ] }) }) });
}, DA = (e, n, r) => vA(n) && !ou(n) && r ? r : e.sender_email || r || "", _c = (e, n, r, o) => e.sender_reply_to === "newsletter" ? vA(n) ? "" : DA(e, n, o) : e.sender_reply_to === "support" ? r || o || "" : e.sender_reply_to, B9 = ({ newsletter: e }) => {
  const { currentUser: n, settings: r, siteData: o, config: l } = Ve(), [c, v, w, A, h] = ht(r, ["title", "icon", "comments_enabled", "support_email_address", "default_email_address"]);
  let f = null;
  e.show_header_title ? f = c || null : e.show_header_name && (f = e.name);
  const b = e.show_header_title && e.show_header_name ? e.name : void 0, x = e.show_comment_cta && w !== "off", g = e.feedback_enabled && l.labs.audienceFeedback, y = () => {
    const R = e.background_color;
    return /#([0-9a-f]{3}){1,2}$/i.test(R) ? R : "#ffffff";
  }, k = () => {
    const R = e.header_background_color;
    return !R || R === "transparent" ? "transparent" : /#([0-9a-f]{3}){1,2}$/i.test(R) ? R : "transparent";
  }, D = () => {
    const R = e.button_color;
    if (/#([0-9a-f]{3}){1,2}$/i.test(R || ""))
      return R;
    if (R === null) {
      const $ = y();
      return zn($).hex();
    }
    return o.accent_color;
  }, C = () => {
    const R = e.button_style, z = D();
    if (z && R === "fill")
      return zn(z).hex();
  }, S = () => {
    const R = e.link_color === void 0 ? "accent" : e.link_color, z = /#([0-9a-f]{3}){1,2}$/i;
    return R === "accent" ? o.accent_color : z.test(R || "") ? R : zn(y()).hex();
  }, G = () => {
    const R = e.post_title_color;
    if (/#([0-9a-f]{3}){1,2}$/i.test(R || ""))
      return R;
    if (R === "accent")
      return o.accent_color;
    const $ = k(), K = $ === "transparent" ? y() : $;
    return zn(K).hex();
  }, Q = () => {
    const R = e.section_title_color;
    return /#([0-9a-f]{3}){1,2}$/i.test(R || "") ? R : R === "accent" ? o.accent_color : zn(y()).hex();
  }, W = () => {
    const R = e.divider_color;
    return /#([0-9a-f]{3}){1,2}$/i.test(R || "") ? R : R === "accent" ? o.accent_color : "#e0e7eb";
  }, J = zn(y()).hex(), Y = zn(y()).alpha(0.5).toString(), B = k() === "transparent" ? J : zn(k()).hex(), U = k() === "transparent" ? Y : zn(k()).alpha(0.5).toString(), te = {
    backgroundColor: y(),
    headerBackgroundColor: k(),
    postTitleColor: G() || void 0,
    sectionTitleColor: Q() || void 0,
    buttonColor: D() || void 0,
    buttonTextColor: C() || void 0,
    linkColor: S() || void 0,
    dividerColor: W() || void 0,
    textColor: J,
    secondaryTextColor: Y,
    headerTextColor: B,
    secondaryHeaderTextColor: U
  };
  return /* @__PURE__ */ a.jsx(
    R9,
    {
      accentColor: o.accent_color,
      authorPlaceholder: n.name || n.email,
      backgroundColor: te.backgroundColor || "#ffffff",
      bodyFontCategory: e.body_font_category,
      buttonCorners: e.button_corners || "rounded",
      buttonStyle: e.button_style || "fill",
      dividerStyle: e.divider_style || "solid",
      footerContent: e.footer_content,
      headerBackgroundColor: te.headerBackgroundColor || "transparent",
      headerIcon: e.show_header_icon ? v : void 0,
      headerImage: e.header_image,
      headerSubtitle: b,
      headerTitle: f,
      imageCorners: e.image_corners || "square",
      linkStyle: e.link_style || "underline",
      senderEmail: DA(e, l, h),
      senderName: e.sender_name || c,
      senderReplyTo: _c(e, l, A, h),
      showBadge: e.show_badge,
      showCommentCta: x,
      showExcerpt: e.show_excerpt,
      showFeatureImage: e.show_feature_image,
      showFeedback: g,
      showLatestPosts: e.show_latest_posts,
      showPostTitleSection: e.show_post_title_section,
      showSubscriptionDetails: e.show_subscription_details,
      siteTitle: c,
      titleAlignment: e.title_alignment,
      titleFontCategory: e.title_font_category,
      titleFontWeight: e.title_font_weight || "bold",
      ...te
    }
  );
}, L9 = ({ newsletter: e, updateNewsletter: n, errors: r, clearError: o }) => {
  const { settings: l, config: c } = Ve(), [v, w] = ht(l, ["default_email_address", "support_email_address"]), [A, h] = se(_c(e, c, w, v) || "");
  let f = DA(e, c, v);
  const b = Bt((g) => {
    h(g.target.value), n({ sender_reply_to: g.target.value || "newsletter" });
  }, [n, h]), x = () => {
    const g = _c(e, c, w, v) || "";
    h(g);
  };
  return /* @__PURE__ */ a.jsx(
    je,
    {
      error: !!r.sender_reply_to,
      hint: r.sender_reply_to,
      maxLength: 191,
      placeholder: f || "",
      title: "Reply-to email",
      value: A,
      onBlur: x,
      onChange: b,
      onKeyDown: () => o("sender_reply_to")
    }
  );
}, Q9 = ({ newsletter: e, onlyOne: n, updateNewsletter: r, validate: o, errors: l, clearError: c }) => {
  const { updateRoute: v } = We(), { mutateAsync: w } = Fh(), A = da(), { settings: h, config: f, siteData: b } = Ve(), [x, g] = ht(h, ["icon", "default_email_address"]), { mutateAsync: y } = pa(), [k, D] = se("generalSettings"), { localSettings: C } = ws(), [S] = ht(C, ["title"]), G = rt(), { data: { newsletters: Q } = {} } = Xh(), W = ["all", "paid"].includes(bn(h, "comments_enabled") || "");
  let J = DA(e, f, g);
  const [Y, B] = se(Q || []), U = Y.filter((I) => I.status === "active");
  ye(() => {
    B(Q || []);
  }, [Q]);
  const te = [
    { value: "serif", label: "Elegant serif", className: "font-serif" },
    { value: "sans_serif", label: "Clean sans-serif" }
  ], R = {
    sans_serif: {
      options: [
        { value: "normal", label: "Regular", className: "font-normal" },
        { value: "medium", label: "Medium", className: "font-medium" },
        { value: "semibold", label: "Semi-bold", className: "font-semibold" },
        { value: "bold", label: "Bold", className: "font-bold" }
      ]
    },
    serif: {
      options: [
        { value: "normal", label: "Regular", className: "font-normal" },
        { value: "bold", label: "Bold", className: "font-bold" }
      ],
      map: {
        medium: "normal",
        semibold: "bold"
      }
    }
  }, z = () => e.background_color === "light" ? !1 : zn(e.background_color).hex().toLowerCase() === "#ffffff", $ = async () => {
    if (e.status === "active")
      ve.show(Et, {
        title: "Archive newsletter",
        prompt: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
          /* @__PURE__ */ a.jsxs("div", { className: "mb-6", children: [
            "Your newsletter ",
            /* @__PURE__ */ a.jsx("strong", { children: e.name }),
            " will no longer be visible to members or available as an option when publishing new posts."
          ] }),
          /* @__PURE__ */ a.jsx("div", { children: "Existing posts previously sent as this newsletter will remain unchanged." })
        ] }),
        okLabel: "Archive",
        okColor: "red",
        onOk: async (I) => {
          try {
            await w({ ...e, status: "archived" }), I == null || I.remove(), ut({
              type: "success",
              message: "Newsletter archived"
            });
          } catch (de) {
            G(de);
          }
        }
      });
    else {
      try {
        await (A == null ? void 0 : A.errorIfWouldGoOverLimit("newsletters"));
      } catch (I) {
        if (I instanceof ha) {
          ve.show(rr, {
            prompt: I.message || "Your current plan doesn't support more newsletters.",
            onOk: () => v({ route: "/pro", isExternal: !0 })
          });
          return;
        } else
          throw I;
      }
      ve.show(Et, {
        title: "Reactivate newsletter",
        prompt: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
          "Reactivating ",
          /* @__PURE__ */ a.jsx("strong", { children: e.name }),
          " will immediately make it visible to members and re-enable it as an option when publishing new posts."
        ] }),
        okLabel: "Reactivate",
        onOk: async (I) => {
          await w({ ...e, status: "active" }), I == null || I.remove(), ut({
            type: "success",
            message: "Newsletter reactivated"
          });
        }
      });
    }
  }, K = () => {
    if (!vA(f))
      return /* @__PURE__ */ a.jsx(
        je,
        {
          error: !!l.sender_email,
          hint: l.sender_email,
          placeholder: J || "",
          title: "Sender email address",
          value: e.sender_email || "",
          onChange: (I) => r({ sender_email: I.target.value }),
          onKeyDown: () => c("sender_email")
        }
      );
    if (ou(f))
      return /* @__PURE__ */ a.jsx(
        je,
        {
          error: !!l.sender_email,
          hint: l.sender_email,
          maxLength: 191,
          placeholder: g,
          title: "Sender email address",
          value: e.sender_email || "",
          onChange: (I) => {
            r({ sender_email: I.target.value });
          },
          onKeyDown: () => c("sender_email")
        }
      );
  }, ee = R[e.title_font_category || "sans_serif"].options, F = () => {
    const I = e.title_font_category || "sans_serif", de = e.title_font_weight, be = R[I].map, he = be && be[de] || de;
    return ee.find((De) => De.value === he) || ee[0];
  }, _ = (I) => {
    var ue;
    const de = (I == null ? void 0 : I.value) || "sans_serif", be = e.title_font_weight;
    let he = be;
    return R[de].options.find((De) => De.value === be) || (he = ((ue = R[de].map) == null ? void 0 : ue[be]) || "bold"), r({
      title_font_category: de,
      title_font_weight: he
    });
  }, fe = [
    {
      id: "generalSettings",
      title: "General",
      contents: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        /* @__PURE__ */ a.jsxs(Ke, { className: "mt-6", gap: "sm", margins: "lg", title: "Name and description", children: [
          /* @__PURE__ */ a.jsx(
            je,
            {
              error: !!l.name,
              hint: l.name,
              maxLength: 191,
              placeholder: "Weekly Roundup",
              title: "Name",
              value: e.name || "",
              onChange: (I) => r({ name: I.target.value }),
              onKeyDown: () => c("name")
            }
          ),
          /* @__PURE__ */ a.jsx(xs, { maxLength: 2e3, rows: 2, title: "Description", value: e.description || "", onChange: (I) => r({ description: I.target.value }) })
        ] }),
        /* @__PURE__ */ a.jsxs(Ke, { className: "mt-6", gap: "sm", margins: "lg", title: "Email info", children: [
          /* @__PURE__ */ a.jsx(je, { maxLength: 191, placeholder: S, title: "Sender name", value: e.sender_name || "", onChange: (I) => r({ sender_name: I.target.value }) }),
          K(),
          /* @__PURE__ */ a.jsx(L9, { clearError: c, errors: l, newsletter: e, updateNewsletter: r, validate: o })
        ] }),
        /* @__PURE__ */ a.jsx(Ke, { className: "mt-6", gap: "sm", margins: "lg", title: "Member settings", children: /* @__PURE__ */ a.jsx(
          et,
          {
            checked: e.subscribe_on_signup,
            direction: "rtl",
            label: "Subscribe new members on signup",
            labelStyle: "value",
            onChange: (I) => r({ subscribe_on_signup: I.target.checked })
          }
        ) }),
        /* @__PURE__ */ a.jsx("div", { className: "mb-5 mt-10", children: e.status === "active" ? !n && /* @__PURE__ */ a.jsx(He, { color: "red", disabled: U.length === 1, label: "Archive newsletter", link: !0, onClick: $ }) : /* @__PURE__ */ a.jsx(He, { color: "green", label: "Reactivate newsletter", link: !0, onClick: $ }) })
      ] })
    },
    {
      id: "content",
      title: "Content",
      contents: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        /* @__PURE__ */ a.jsxs(Ke, { className: "mt-6", gap: "sm", margins: "lg", title: "Header", children: [
          /* @__PURE__ */ a.jsxs("div", { children: [
            /* @__PURE__ */ a.jsx("div", { children: /* @__PURE__ */ a.jsx(ct, { className: "mb-2", level: 6, children: "Header image" }) }),
            /* @__PURE__ */ a.jsxs("div", { className: "flex-column flex gap-1", children: [
              /* @__PURE__ */ a.jsx(
                wr,
                {
                  deleteButtonClassName: "!top-1 !right-1",
                  height: e.header_image ? "66px" : "64px",
                  id: "logo",
                  imageURL: e.header_image || void 0,
                  onDelete: () => {
                    r({ header_image: null });
                  },
                  onUpload: async (I) => {
                    try {
                      const de = gr(await y({ file: I }));
                      r({ header_image: de });
                    } catch (de) {
                      G(de);
                    }
                  },
                  children: /* @__PURE__ */ a.jsx(Mt, { colorClass: "text-grey-700 dark:text-grey-300", name: "picture" })
                }
              ),
              /* @__PURE__ */ a.jsx(nr, { children: "1200×600 recommended. Use a transparent PNG for best results on any background." })
            ] })
          ] }),
          /* @__PURE__ */ a.jsxs(fA, { children: [
            x && /* @__PURE__ */ a.jsx(
              et,
              {
                checked: e.show_header_icon,
                direction: "rtl",
                label: "Publication icon",
                onChange: (I) => r({ show_header_icon: I.target.checked })
              }
            ),
            /* @__PURE__ */ a.jsx(
              et,
              {
                checked: e.show_header_title,
                direction: "rtl",
                label: "Publication title",
                onChange: (I) => r({ show_header_title: I.target.checked })
              }
            ),
            /* @__PURE__ */ a.jsx(
              et,
              {
                checked: e.show_header_name,
                direction: "rtl",
                label: "Newsletter name",
                onChange: (I) => r({ show_header_name: I.target.checked })
              }
            )
          ] })
        ] }),
        /* @__PURE__ */ a.jsxs(Ke, { className: "mt-6", gap: "xs", margins: "lg", title: "Title section", children: [
          /* @__PURE__ */ a.jsx(
            et,
            {
              checked: e.show_post_title_section,
              direction: "rtl",
              label: "Post title",
              onChange: (I) => r({ show_post_title_section: I.target.checked })
            }
          ),
          e.show_post_title_section && /* @__PURE__ */ a.jsx(
            et,
            {
              checked: e.show_excerpt,
              direction: "rtl",
              label: "Post excerpt",
              onChange: (I) => r({ show_excerpt: I.target.checked })
            }
          ),
          /* @__PURE__ */ a.jsx(
            et,
            {
              checked: e.show_feature_image,
              direction: "rtl",
              label: "Feature image",
              onChange: (I) => r({ show_feature_image: I.target.checked })
            }
          )
        ] }),
        /* @__PURE__ */ a.jsxs(Ke, { className: "mt-6", gap: "sm", margins: "lg", title: "Footer", children: [
          /* @__PURE__ */ a.jsxs(fA, { gap: "lg", children: [
            /* @__PURE__ */ a.jsx(
              et,
              {
                checked: e.feedback_enabled,
                direction: "rtl",
                label: "Ask your readers for feedback",
                onChange: (I) => r({ feedback_enabled: I.target.checked })
              }
            ),
            W && /* @__PURE__ */ a.jsx(
              et,
              {
                checked: e.show_comment_cta,
                direction: "rtl",
                label: "Add a link to your comments",
                onChange: (I) => r({ show_comment_cta: I.target.checked })
              }
            ),
            /* @__PURE__ */ a.jsx(
              et,
              {
                checked: e.show_latest_posts,
                direction: "rtl",
                label: "Share your latest posts",
                onChange: (I) => r({ show_latest_posts: I.target.checked })
              }
            ),
            /* @__PURE__ */ a.jsx(
              et,
              {
                checked: e.show_subscription_details,
                direction: "rtl",
                label: "Show subscription details",
                onChange: (I) => r({ show_subscription_details: I.target.checked })
              }
            )
          ] }),
          /* @__PURE__ */ a.jsx(
            du,
            {
              hint: "Any extra information or legal text",
              nodes: "MINIMAL_NODES",
              placeholder: " ",
              title: "Email footer",
              value: e.footer_content || "",
              onChange: (I) => r({ footer_content: I })
            }
          )
        ] }),
        /* @__PURE__ */ a.jsx(xo, {}),
        /* @__PURE__ */ a.jsxs("div", { className: "my-5 flex w-full items-start", children: [
          /* @__PURE__ */ a.jsx("span", { children: /* @__PURE__ */ a.jsx(Mt, { className: "mr-2 mt-[-1px]", colorClass: "text-red", name: "heart" }) }),
          /* @__PURE__ */ a.jsx(Ke, { marginBottom: !1, children: /* @__PURE__ */ a.jsx(
            et,
            {
              checked: e.show_badge,
              direction: "rtl",
              label: /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col gap-0.5", children: [
                /* @__PURE__ */ a.jsx("span", { className: "text-sm md:text-base", children: "Promote independent publishing" }),
                /* @__PURE__ */ a.jsx("span", { className: "text-[11px] leading-tight text-grey-700 md:text-xs md:leading-tight", children: "Show you're a part of the indie publishing movement with a small badge in the footer" })
              ] }),
              labelStyle: "value",
              onChange: (I) => r({ show_badge: I.target.checked })
            }
          ) })
        ] })
      ] })
    },
    {
      id: "design",
      title: "Design",
      contents: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        /* @__PURE__ */ a.jsxs(Ke, { className: "mt-6", gap: "xs", margins: "lg", title: "Global", children: [
          /* @__PURE__ */ a.jsx("div", { className: "mb-1", children: /* @__PURE__ */ a.jsx(
            er,
            {
              direction: "rtl",
              eyedropper: !0,
              swatches: [
                {
                  hex: "#ffffff",
                  value: "light",
                  title: "White"
                }
              ],
              title: "Background color",
              value: e.background_color || "light",
              onChange: (I) => r({ background_color: I })
            }
          ) }),
          /* @__PURE__ */ a.jsxs("div", { className: "flex w-full items-center justify-between gap-2", children: [
            /* @__PURE__ */ a.jsx("div", { className: "shrink-0", children: "Heading font" }),
            /* @__PURE__ */ a.jsx(
              Lt,
              {
                containerClassName: "max-w-[200px]",
                options: te,
                selectedOption: te.find((I) => I.value === e.title_font_category),
                onSelect: _
              }
            )
          ] }),
          /* @__PURE__ */ a.jsxs("div", { className: "flex w-full items-center justify-between gap-2", children: [
            /* @__PURE__ */ a.jsx("div", { className: "shrink-0", children: "Heading weight" }),
            /* @__PURE__ */ a.jsx(
              Lt,
              {
                containerClassName: "max-w-[200px]",
                options: ee,
                selectedOption: F(),
                onSelect: (I) => r({ title_font_weight: I == null ? void 0 : I.value })
              }
            )
          ] }),
          /* @__PURE__ */ a.jsxs("div", { className: "flex w-full items-center justify-between gap-2", children: [
            /* @__PURE__ */ a.jsx("div", { className: "shrink-0", children: "Body font" }),
            /* @__PURE__ */ a.jsx(
              Lt,
              {
                containerClassName: "max-w-[200px]",
                options: te,
                selectedOption: te.find((I) => I.value === e.body_font_category),
                testId: "body-font-select",
                onSelect: (I) => r({ body_font_category: I == null ? void 0 : I.value })
              }
            )
          ] })
        ] }),
        /* @__PURE__ */ a.jsxs(Ke, { className: "mt-6", gap: "xs", margins: "lg", title: "Header", children: [
          /* @__PURE__ */ a.jsx("div", { className: "mb-1", children: /* @__PURE__ */ a.jsx(
            er,
            {
              direction: "rtl",
              eyedropper: !0,
              swatches: [
                {
                  value: "transparent",
                  title: "Transparent",
                  hex: "#00000000"
                }
              ],
              title: "Header background color",
              value: e.header_background_color || "transparent",
              onChange: (I) => r({ header_background_color: I })
            }
          ) }),
          /* @__PURE__ */ a.jsx("div", { className: "mb-1", children: /* @__PURE__ */ a.jsx(
            er,
            {
              direction: "rtl",
              eyedropper: !0,
              swatches: [
                {
                  value: null,
                  title: "Auto",
                  hex: z() ? "#ffffff" : "#000000"
                },
                {
                  value: "accent",
                  title: "Accent",
                  hex: b.accent_color
                }
              ],
              title: "Post title color",
              value: e.post_title_color,
              onChange: (I) => r({ post_title_color: I })
            }
          ) }),
          /* @__PURE__ */ a.jsxs("div", { className: "flex w-full justify-between", children: [
            /* @__PURE__ */ a.jsx("div", { children: "Title alignment" }),
            /* @__PURE__ */ a.jsx(mr, { activeKey: e.title_alignment, buttons: [
              {
                key: "left",
                icon: "align-left",
                iconSize: 14,
                label: "Align left",
                tooltip: "Left",
                hideLabel: !0,
                link: !1,
                size: "sm",
                onClick: () => r({ title_alignment: "left" }),
                disabled: !e.show_post_title_section
              },
              {
                key: "center",
                icon: "align-center",
                iconSize: 14,
                label: "Align center",
                tooltip: "Center",
                hideLabel: !0,
                link: !1,
                size: "sm",
                onClick: () => r({ title_alignment: "center" }),
                disabled: !e.show_post_title_section
              }
            ], clearBg: !1 })
          ] })
        ] }),
        /* @__PURE__ */ a.jsxs(Ke, { className: "mt-6", gap: "xs", margins: "lg", title: "Body", children: [
          /* @__PURE__ */ a.jsx("div", { className: "mb-1", children: /* @__PURE__ */ a.jsx(
            er,
            {
              direction: "rtl",
              eyedropper: !0,
              swatches: [
                {
                  value: null,
                  title: "Auto",
                  hex: z() ? "#ffffff" : "#000000"
                },
                {
                  value: "accent",
                  title: "Accent",
                  hex: b.accent_color
                }
              ],
              title: "Section title color",
              value: e.section_title_color,
              onChange: (I) => r({ section_title_color: I })
            }
          ) }),
          /* @__PURE__ */ a.jsx("div", { className: "mb-1", children: /* @__PURE__ */ a.jsx(
            er,
            {
              direction: "rtl",
              eyedropper: !0,
              swatches: [
                {
                  value: "accent",
                  title: "Accent",
                  hex: b.accent_color
                },
                {
                  value: null,
                  title: "Auto",
                  hex: z() ? "#ffffff" : "#000000"
                }
              ],
              title: "Button color",
              value: e.button_color,
              onChange: (I) => r({ button_color: I })
            }
          ) }),
          /* @__PURE__ */ a.jsxs("div", { className: "flex w-full justify-between", children: [
            /* @__PURE__ */ a.jsx("div", { children: "Button style" }),
            /* @__PURE__ */ a.jsx(mr, { activeKey: e.button_style || "fill", buttons: [
              {
                key: "fill",
                icon: "squircle-fill",
                iconSize: 14,
                label: "Fill",
                tooltip: "Fill",
                hideLabel: !0,
                link: !1,
                size: "sm",
                onClick: () => r({ button_style: "fill" })
              },
              {
                key: "outline",
                icon: "squircle",
                iconSize: 14,
                label: "Outline",
                tooltip: "Outline",
                hideLabel: !0,
                link: !1,
                size: "sm",
                onClick: () => r({ button_style: "outline" })
              }
            ], clearBg: !1 })
          ] }),
          /* @__PURE__ */ a.jsxs("div", { className: "flex w-full justify-between", children: [
            /* @__PURE__ */ a.jsx("div", { children: "Button corners" }),
            /* @__PURE__ */ a.jsx(mr, { activeKey: e.button_corners || "rounded", buttons: [
              {
                key: "square",
                icon: "square",
                iconSize: 14,
                label: "Square",
                tooltip: "Squared",
                hideLabel: !0,
                link: !1,
                size: "sm",
                onClick: () => r({ button_corners: "square" })
              },
              {
                key: "rounded",
                icon: "squircle",
                iconSize: 14,
                label: "Rounded",
                tooltip: "Rounded",
                hideLabel: !0,
                link: !1,
                size: "sm",
                onClick: () => r({ button_corners: "rounded" })
              },
              {
                key: "pill",
                icon: "circle",
                iconSize: 14,
                label: "Pill",
                tooltip: "Pill",
                hideLabel: !0,
                link: !1,
                size: "sm",
                onClick: () => r({ button_corners: "pill" })
              }
            ], clearBg: !1 })
          ] }),
          /* @__PURE__ */ a.jsx("div", { className: "mb-1", children: /* @__PURE__ */ a.jsx(
            er,
            {
              direction: "rtl",
              eyedropper: !0,
              swatches: [
                {
                  value: "accent",
                  title: "Accent",
                  hex: b.accent_color
                },
                {
                  value: null,
                  title: "Auto",
                  hex: z() ? "#ffffff" : "#000000"
                }
              ],
              title: "Link color",
              value: e.link_color,
              onChange: (I) => r({ link_color: I })
            }
          ) }),
          /* @__PURE__ */ a.jsxs("div", { className: "flex w-full justify-between", children: [
            /* @__PURE__ */ a.jsx("div", { children: "Link style" }),
            /* @__PURE__ */ a.jsx(mr, { activeKey: e.link_style || "underline", buttons: [
              {
                key: "underline",
                icon: "text-underline",
                iconSize: 14,
                label: "Underline",
                tooltip: "Underline",
                hideLabel: !0,
                link: !1,
                size: "sm",
                onClick: () => r({ link_style: "underline" })
              },
              {
                key: "regular",
                icon: "text-regular",
                iconSize: 14,
                label: "Regular",
                tooltip: "Regular",
                hideLabel: !0,
                link: !1,
                size: "sm",
                onClick: () => r({ link_style: "regular" })
              },
              {
                key: "bold",
                icon: "text-bold",
                iconSize: 14,
                label: "Bold",
                tooltip: "Bold",
                hideLabel: !0,
                link: !1,
                size: "sm",
                onClick: () => r({ link_style: "bold" })
              }
            ], clearBg: !1 })
          ] }),
          /* @__PURE__ */ a.jsxs("div", { className: "flex w-full justify-between", children: [
            /* @__PURE__ */ a.jsx("div", { children: "Image corners" }),
            /* @__PURE__ */ a.jsx(mr, { activeKey: e.image_corners || "square", buttons: [
              {
                key: "square",
                icon: "square",
                iconSize: 14,
                label: "Square",
                tooltip: "Squared",
                hideLabel: !0,
                link: !1,
                size: "sm",
                onClick: () => r({ image_corners: "square" })
              },
              {
                key: "rounded",
                icon: "squircle",
                iconSize: 14,
                label: "Rounded",
                tooltip: "Rounded",
                hideLabel: !0,
                link: !1,
                size: "sm",
                onClick: () => r({ image_corners: "rounded" })
              }
            ], clearBg: !1 })
          ] }),
          /* @__PURE__ */ a.jsx("div", { className: "mb-1", children: /* @__PURE__ */ a.jsx(
            er,
            {
              direction: "rtl",
              eyedropper: !0,
              swatches: [
                {
                  value: "light",
                  title: "Light",
                  hex: "#e0e7eb"
                },
                {
                  value: "accent",
                  title: "Accent",
                  hex: b.accent_color
                }
              ],
              title: "Divider color",
              value: e.divider_color || "light",
              onChange: (I) => r({ divider_color: I })
            }
          ) })
        ] })
      ] })
    }
  ], xe = (I) => {
    D(I);
  };
  return /* @__PURE__ */ a.jsx("div", { className: "flex flex-col", children: /* @__PURE__ */ a.jsx("div", { className: "px-7 pb-7 pt-0", children: /* @__PURE__ */ a.jsx(Zr, { selectedTab: k, stickyHeader: !0, tabs: fe, onTabChange: xe }) }) });
}, X9 = ({ newsletter: e, onlyOne: n }) => {
  const { config: r } = Ve(), { mutateAsync: o } = Fh(), { updateRoute: l } = We(), c = rt(), { formState: v, saveState: w, updateForm: A, setFormState: h, handleSave: f, validate: b, errors: x, clearError: g, okProps: y } = Hn({
    initialState: e,
    savingDelay: 500,
    onSave: async () => {
      const { meta: { sent_email_verification: [S] = [] } = {} } = await o(v);
      let G;
      S && S === "sender_email" ? G = /* @__PURE__ */ a.jsx("div", { children: "We‘ve sent a confirmation email to the new address." }) : S && S === "sender_reply_to" && (G = /* @__PURE__ */ a.jsx("div", { children: "We‘ve sent a confirmation email to the new address." })), G && ut({
        icon: "email",
        message: G,
        type: "info"
      });
    },
    onSaveError: c,
    onValidate: () => {
      const S = {};
      return v.name || (S.name = "A name is required for your newsletter"), v.sender_email && !jt.isEmail(v.sender_email) ? S.sender_email = "Enter a valid email address" : v.sender_email && ou(r) && v.sender_email.split("@")[1] !== dd(r) && (S.sender_email = `Email address must end with @${dd(r)}`), v.sender_reply_to && !jt.isEmail(v.sender_reply_to) && !["newsletter", "support"].includes(v.sender_reply_to) && (S.sender_reply_to = "Enter a valid email address"), S;
    }
  }), k = (S) => {
    A((G) => ({ ...G, ...S }));
  };
  ye(() => {
    h(() => e);
  }, [h, e]);
  const D = /* @__PURE__ */ a.jsx(B9, { newsletter: v }), C = /* @__PURE__ */ a.jsx(Q9, { clearError: g, errors: x, newsletter: v, onlyOne: n, updateNewsletter: k, validate: b });
  return /* @__PURE__ */ a.jsx(
    ga,
    {
      afterClose: () => l("newsletters"),
      buttonsDisabled: y.disabled,
      cancelLabel: "Close",
      deviceSelector: !1,
      dirty: w === "unsaved",
      okColor: y.color,
      okLabel: y.label || "Save",
      preview: D,
      previewBgColor: "grey",
      previewToolbar: !1,
      sidebar: C,
      sidebarPadding: !1,
      testId: "newsletter-modal",
      title: "Newsletter",
      onOk: async () => {
        await f({ fakeWhenUnchanged: !0 });
      }
    }
  );
}, F9 = ({ params: e }) => {
  const { data: { newsletters: n, isEnd: r } = {}, fetchNextPage: o } = Xh(), l = n == null ? void 0 : n.find(({ id: c }) => c === (e == null ? void 0 : e.id));
  return ye(() => {
    !l && !r && o();
  }, [o, r, l]), l ? /* @__PURE__ */ a.jsx(X9, { newsletter: l, onlyOne: n.length === 1 }) : null;
}, q9 = ve.create(F9), hm = ({ id: e }) => {
  const { updateRoute: n } = We(), { data: { offers: r = [] } = {} } = qh(e || ""), [o, l] = se(), [c, v] = se(""), { siteData: w } = Ve();
  ye(() => {
    if (r.length > 0) {
      const k = r[0], D = `${xr(w)}${k == null ? void 0 : k.code}`;
      v(D), l(k);
    }
  }, [r, w]);
  const [A, h] = se(!1), f = () => {
    let k = "";
    switch (o == null ? void 0 : o.type) {
      case "percent":
        k = (o == null ? void 0 : o.amount) + "% discount";
        break;
      case "fixed":
        k = Th(ev(o == null ? void 0 : o.amount)) + " " + (o == null ? void 0 : o.currency) + " discount";
        break;
      case "trial":
        k = (o == null ? void 0 : o.amount) + " days free trial";
        break;
    }
    return `${encodeURIComponent((o == null ? void 0 : o.name) || "")} — Check out ${encodeURIComponent(k)} on:`;
  }, b = async () => {
    await navigator.clipboard.writeText(c), h(!0), setTimeout(() => h(!1), 2e3);
  }, x = () => {
    window.open(`https://twitter.com/intent/tweet?url=${encodeURI(c)}&text=${f()}`, "_blank");
  }, g = () => {
    window.open(`https://www.facebook.com/sharer/sharer.php?u=${encodeURI(c)}`, "_blank");
  }, y = () => {
    window.open(`http://www.linkedin.com/shareArticle?mini=true&url=${encodeURI(c)}&title=${f()}`, "_blank");
  };
  return /* @__PURE__ */ a.jsx(
    vt,
    {
      afterClose: () => {
        n("offers");
      },
      animate: !1,
      backDropClick: !1,
      footer: !1,
      height: "full",
      size: "lg",
      testId: "offer-success-modal",
      topRightContent: "close",
      width: 1140,
      children: /* @__PURE__ */ a.jsxs("div", { className: "-mt-6 flex h-full flex-col items-center justify-center text-center", children: [
        /* @__PURE__ */ a.jsx("div", { className: "absolute left-6 top-5", children: /* @__PURE__ */ a.jsx(
          mu,
          {
            activeItemClassName: "hidden md:!block md:!visible",
            containerClassName: "whitespace-nowrap",
            itemClassName: "hidden md:!block md:!visible",
            items: [{ label: "Offers", onClick: () => {
              n("offers/edit");
            } }, { label: (o == null ? void 0 : o.name) || "" }],
            separatorClassName: "hidden md:!block md:!visible",
            backIcon: !0,
            onBack: () => {
              n("offers/edit");
            }
          }
        ) }),
        /* @__PURE__ */ a.jsx(Mt, { colorClass: "text-grey-700 -mt-4", name: "tags-check", size: "xl" }),
        /* @__PURE__ */ a.jsx("h1", { className: "mt-6 text-4xl", children: "Your new offer is live!" }),
        /* @__PURE__ */ a.jsx("p", { className: "mt-3 max-w-[510px] text-[1.6rem]", children: "You can share the link anywhere. In your newsletter, social media, a podcast, or in-person. It all just works." }),
        /* @__PURE__ */ a.jsxs("div", { className: "mt-8 flex w-full max-w-md flex-col gap-8", children: [
          /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col-reverse gap-2", children: [
            /* @__PURE__ */ a.jsx(je, { name: "offer-url", type: "url", value: c, disabled: !0 }),
            /* @__PURE__ */ a.jsx(He, { color: "green", label: A ? "Copied!" : "Copy link", fullWidth: !0, onClick: b })
          ] }),
          /* @__PURE__ */ a.jsx("div", { className: 'flex items-center gap-4 text-xs font-medium before:h-px before:grow before:bg-grey-300 before:content-[""] after:h-px after:grow after:bg-grey-300 after:content-[""] dark:before:bg-grey-800 dark:after:bg-grey-800', children: "OR" }),
          /* @__PURE__ */ a.jsxs("div", { className: "flex gap-2", children: [
            /* @__PURE__ */ a.jsx(He, { className: "h-8 border border-grey-300 dark:border-grey-800", icon: "twitter-x", iconColorClass: "w-[14px] h-[14px]", size: "sm", fullWidth: !0, onClick: x }),
            /* @__PURE__ */ a.jsx(He, { className: "h-8 border border-grey-300 dark:border-grey-800", icon: "facebook", size: "sm", fullWidth: !0, onClick: g }),
            /* @__PURE__ */ a.jsx(He, { className: "h-8 border border-grey-300 dark:border-grey-800", icon: "linkedin", size: "sm", fullWidth: !0, onClick: y })
          ] })
        ] })
      ] })
    }
  );
}, xA = ({ href: e, onDestroyed: n, selectedTab: r, portalParent: o }) => {
  r || (r = "signup");
  const l = tt(null), [c, v] = se(!1), [w, A] = se(!0), h = Bt(() => {
    setTimeout(() => {
      l.current && A(!1);
    }, 300);
  }, [l]);
  if (ye(() => {
    const x = (g) => {
      var k;
      if (!e)
        return;
      new URL(g.origin).origin === new URL(e).origin && ((k = g == null ? void 0 : g.data) == null ? void 0 : k.type) === "portal-preview-ready" && h();
    };
    return window.addEventListener("message", x, !0), () => {
      window.removeEventListener("message", x, !0), n == null || n();
    };
  }, [e, n, h, c]), !e)
    return null;
  let f = "mt-[-7%] flex h-screen items-center justify-center", b = "hidden";
  return o === "preview" ? (f = "absolute z-50 mt-[-7%] flex h-screen items-center justify-center", b = "invisible") : o === "offers" && (f = "absolute z-50 flex w-full h-full items-center justify-center", b = "invisible"), /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
    w && /* @__PURE__ */ a.jsx("div", { className: f, children: /* @__PURE__ */ a.jsx("span", { children: /* @__PURE__ */ a.jsx(AA, {}) }) }),
    /* @__PURE__ */ a.jsx(
      "iframe",
      {
        ref: l,
        className: !w && c ? "" : b,
        "data-testid": "portal-preview",
        height: "100%",
        src: e,
        title: "Portal Preview",
        width: "100%",
        onLoad: () => {
          v(!0);
        }
      }
    )
  ] });
}, pm = (e, n) => {
  const {
    disableBackground: r = !1,
    name: o,
    code: l,
    displayTitle: c = "",
    displayDescription: v = "",
    type: w,
    cadence: A,
    amount: h = 0,
    duration: f,
    durationInMonths: b,
    currency: x = "usd",
    status: g,
    tierId: y
  } = e;
  n = n.replace(/\/$/, "");
  const k = "/?v=modal-portal-offer#/portal/preview/offer", D = new URLSearchParams();
  return D.append("disableBackground", "false"), D.append("name", encodeURIComponent(o)), D.append("code", encodeURIComponent(l)), D.append("display_title", encodeURIComponent(c)), D.append("display_description", encodeURIComponent(v)), D.append("type", encodeURIComponent(w)), D.append("cadence", encodeURIComponent(A)), D.append("amount", encodeURIComponent(h)), D.append("duration", encodeURIComponent(f)), D.append("duration_in_months", encodeURIComponent(b)), D.append("currency", encodeURIComponent(x)), D.append("status", encodeURIComponent(g)), D.append("tier_id", encodeURIComponent(y)), r && D.append("disableBackground", "true"), `${n}${k}?${D.toString()}`;
}, G9 = (e) => {
  const n = [];
  return e.forEach((r) => {
    n.push({
      label: `${r.name} - Monthly`,
      value: `${r.id}-month-${r.currency}`
    }), n.push({
      label: `${r.name} - Yearly`,
      value: `${r.id}-year-${r.currency}`
    });
  }), n;
};
function Y9(e) {
  return e.toString().toLowerCase().trim().replace(/\s+/g, "-").replace(/[^\w\-]+/g, "").replace(/\-\-+/g, "-");
}
const mh = ({ type: e, checked: n, onClick: r }) => {
  const o = n ? "bg-black text-white dark:bg-white dark:text-black" : "border border-grey-300 dark:border-grey-800";
  return /* @__PURE__ */ a.jsx("button", { className: "text-left", type: "button", onClick: r, children: /* @__PURE__ */ a.jsxs("div", { className: "flex gap-3", children: [
    /* @__PURE__ */ a.jsx("div", { className: `mt-0.5 flex size-4 items-center justify-center rounded-full ${o}`, children: n ? /* @__PURE__ */ a.jsx(Mt, { className: "w-[7px] stroke-[4]", name: "check", size: "custom" }) : null }),
    /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col", children: [
      /* @__PURE__ */ a.jsx("span", { children: e.title }),
      /* @__PURE__ */ a.jsx("span", { className: "text-sm", children: e.description })
    ] })
  ] }) });
}, gh = (e) => {
  const { fixedAmount: n = 0, percentAmount: r = 0, trialAmount: o = 0, amount: l = 0 } = e;
  switch (e.type) {
    case "fixed":
      return n * 100;
    case "percent":
      return r;
    case "trial":
      return o;
    default:
      return l;
  }
}, U9 = ({
  tierOptions: e,
  handleTierChange: n,
  selectedTier: r,
  // handleTextInput,
  typeOptions: o,
  durationOptions: l,
  handleTypeChange: c,
  handleDurationChange: v,
  overrides: w,
  handleAmountTypeChange: A,
  handleNameInput: h,
  handleTextAreaInput: f,
  handleDisplayTitleInput: b,
  handleDurationInMonthsInput: x,
  handleAmountInput: g,
  handleCodeInput: y,
  clearError: k,
  errors: D,
  testId: C,
  handleTrialAmountInput: S,
  amountOptions: G
}) => {
  var ee, F, _;
  const W = (() => {
    var fe;
    return (fe = r == null ? void 0 : r.label) != null && fe.includes("Yearly") ? l.filter((xe) => xe.value !== "repeating") : l;
  })(), [J, Y] = se(0), B = J > 40 ? "text-red" : "text-green", { siteData: U } = Ve(), [te, R] = se(!1), z = xr(U), $ = `${z}${w.code.value}`, K = async () => {
    await navigator.clipboard.writeText($), R(!0), setTimeout(() => R(!1), 2e3);
  };
  return /* @__PURE__ */ a.jsx("div", { className: "pt-7", "data-testId": C, children: /* @__PURE__ */ a.jsxs(Ke, { children: [
    /* @__PURE__ */ a.jsxs("section", { children: [
      /* @__PURE__ */ a.jsx("h2", { className: "mb-4 text-lg", children: "General" }),
      /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col gap-6", children: [
        /* @__PURE__ */ a.jsx(
          je,
          {
            error: !!D.name,
            hint: D.name || /* @__PURE__ */ a.jsxs("div", { className: "flex justify-between", children: [
              /* @__PURE__ */ a.jsx("span", { children: "Visible to members on Stripe Checkout page" }),
              /* @__PURE__ */ a.jsxs("strong", { children: [
                /* @__PURE__ */ a.jsx("span", { className: `${B}`, children: J }),
                " / 40"
              ] })
            ] }),
            maxLength: 40,
            placeholder: "Black Friday",
            title: "Offer name",
            onChange: (fe) => {
              h(fe), Y(fe.target.value.length);
            },
            onKeyDown: () => k("name")
          }
        ),
        /* @__PURE__ */ a.jsx(
          je,
          {
            error: !!D.displayTitle,
            hint: D.displayTitle,
            placeholder: "Black Friday Special",
            title: "Display title",
            value: w.displayTitle.value,
            onChange: (fe) => {
              b(fe);
            },
            onKeyDown: () => k("displayTitle")
          }
        ),
        /* @__PURE__ */ a.jsx(
          xs,
          {
            placeholder: "Take advantage of this limited-time offer.",
            title: "Display description",
            value: w.displayDescription,
            onChange: (fe) => {
              f(fe);
            }
          }
        )
      ] })
    ] }),
    /* @__PURE__ */ a.jsxs("section", { className: "mt-4", children: [
      /* @__PURE__ */ a.jsx("h2", { className: "mb-4 text-lg", children: "Details" }),
      /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col gap-6", children: [
        /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col gap-4 rounded-md border border-grey-200 p-4 dark:border-grey-800", children: [
          /* @__PURE__ */ a.jsx(mh, { checked: w.type !== "trial", type: o[0], onClick: () => {
            c("percent");
          } }),
          /* @__PURE__ */ a.jsx(mh, { checked: w.type === "trial", type: o[1], onClick: () => {
            c("trial");
          } })
        ] }),
        /* @__PURE__ */ a.jsx(
          Lt,
          {
            options: e,
            selectedOption: r,
            testId: "tier-cadence-select-offers",
            title: "Tier — Cadence",
            onSelect: (fe) => {
              fe && n(fe);
            }
          }
        ),
        w.type !== "trial" && /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
          " ",
          /* @__PURE__ */ a.jsxs("div", { className: "relative", children: [
            /* @__PURE__ */ a.jsx(
              je,
              {
                error: !!D.amount,
                hint: D.amount,
                title: "Amount off",
                type: "number",
                value: w.type === "fixed" ? w.fixedAmount === 0 ? "" : (ee = w.fixedAmount) == null ? void 0 : ee.toString() : w.percentAmount === 0 ? "" : (F = w.percentAmount) == null ? void 0 : F.toString(),
                onChange: (fe) => {
                  g(fe);
                },
                onKeyDown: () => k("amount")
              }
            ),
            /* @__PURE__ */ a.jsx("div", { className: "absolute right-1.5 top-6 z-10", children: /* @__PURE__ */ a.jsx(
              Lt,
              {
                clearBg: !0,
                controlClasses: { menu: "w-20 right-0" },
                options: G,
                selectedOption: w.type === "percent" ? G[0] : G[1],
                testId: "amount-type-select-offers",
                onSelect: (fe) => {
                  A((fe == null ? void 0 : fe.value) || "");
                }
              }
            ) })
          ] }),
          /* @__PURE__ */ a.jsx(
            Lt,
            {
              options: W,
              selectedOption: W.find((fe) => fe.value === w.duration),
              testId: "duration-select-offers",
              title: "Duration",
              onSelect: (fe) => v((fe == null ? void 0 : fe.value) || "")
            }
          ),
          w.duration === "repeating" && /* @__PURE__ */ a.jsx(je, { title: "Duration in months", type: "number", onChange: (fe) => {
            x(fe);
          } })
        ] }),
        w.type === "trial" && /* @__PURE__ */ a.jsx(
          je,
          {
            error: !!D.amount,
            hint: D.amount,
            title: "Trial duration",
            type: "number",
            value: (_ = w.trialAmount) == null ? void 0 : _.toString(),
            onChange: (fe) => {
              S(fe);
            },
            onKeyDown: () => k("amount")
          }
        ),
        /* @__PURE__ */ a.jsx(
          je,
          {
            error: !!D.code,
            hint: D.code || (w.code.value !== "" ? /* @__PURE__ */ a.jsxs("div", { className: "flex items-center justify-between", children: [
              /* @__PURE__ */ a.jsxs("div", { children: [
                z,
                /* @__PURE__ */ a.jsx("span", { className: "font-bold", children: w.code.value })
              ] }),
              /* @__PURE__ */ a.jsx("span", {}),
              /* @__PURE__ */ a.jsx(He, { className: "text-xs", color: "green", label: `${te ? "Copied" : "Copy"}`, size: "sm", link: !0, onClick: K })
            ] }) : null),
            placeholder: "black-friday",
            title: "Offer code",
            value: w.code.value,
            onChange: (fe) => {
              y(fe);
            },
            onKeyDown: () => k("code")
          }
        )
      ] })
    ] })
  ] }) });
}, us = (e) => {
  const [n, r, o] = e.split("-");
  if (!n || !r || !o)
    throw new Error("Invalid input format. Expected format is: id-period-currency");
  return { id: n, period: r, currency: o };
}, J9 = () => {
  var de, be, he, ue, De, ft, Jt, Qt, Ht;
  const { siteData: e } = Ve(), n = [
    { title: "Discount", description: "Offer a special reduced price", value: "percent" },
    { title: "Free trial", description: "Give free access for a limited time", value: "trial" }
  ], r = [
    { value: "once", label: "First-payment" },
    { value: "repeating", label: "Multiple-months" },
    { value: "forever", label: "Forever" }
  ], [o, l] = se(""), { updateRoute: c } = We(), { data: { tiers: v } = {} } = Eo(), w = iu(v || []), A = G9(w), { mutateAsync: h } = tv(), [f, b] = se({
    tier: A[0] || {},
    dataset: {
      id: (de = A[0]) != null && de.value ? us((be = A[0]) == null ? void 0 : be.value).id : "",
      period: (he = A[0]) != null && he.value ? us((ue = A[0]) == null ? void 0 : ue.value).period : "",
      currency: (De = A[0]) != null && De.value ? us((ft = A[0]) == null ? void 0 : ft.value).currency : ""
    }
  }), { data: { offers: x = [] } = {} } = nv(), { formState: g, updateForm: y, handleSave: k, saveState: D, okProps: C, validate: S, errors: G, clearError: Q } = Hn({
    initialState: {
      disableBackground: !1,
      name: "",
      code: {
        isDirty: !1,
        value: ""
      },
      displayTitle: {
        isDirty: !1,
        value: ""
      },
      displayDescription: "",
      type: "percent",
      cadence: ((Jt = f == null ? void 0 : f.dataset) == null ? void 0 : Jt.period) || "",
      amount: 0,
      duration: "once",
      durationInMonths: 0,
      currency: ((Qt = f == null ? void 0 : f.dataset) == null ? void 0 : Qt.currency) || "USD",
      status: "active",
      tierId: ((Ht = f == null ? void 0 : f.dataset) == null ? void 0 : Ht.id) || "",
      trialAmount: 7,
      fixedAmount: 0,
      percentAmount: 0
    },
    onSave: async () => {
      const ne = {
        name: g.name,
        code: g.code.value,
        display_title: g.displayTitle.value,
        display_description: g.displayDescription,
        cadence: g.cadence,
        amount: gh(g) || 0,
        duration: g.type === "trial" ? "trial" : g.duration,
        duration_in_months: Number(g.durationInMonths),
        currency: g.currency,
        status: g.status,
        tier: {
          id: g.tierId
        },
        type: g.type,
        currency_restriction: !1
      }, Me = await h(ne);
      Me && Me.offers && Me.offers.length > 0 && c(`offers/success/${Me.offers[0].id}`);
    },
    onSaveError: () => {
    },
    onValidate: () => {
      const ne = {};
      return !g.name && g.name.length === 0 && (ne.name = "Name is required"), !g.code.value && g.code.value.length === 0 && (ne.code = "Code is required"), !g.displayTitle.value && g.displayTitle.value.length === 0 && (ne.displayTitle = "Display title is required"), g.type === "percent" && g.percentAmount === 0 && (ne.amount = "Enter an amount greater than 0."), g.type === "percent" && (g.percentAmount < 0 || g.percentAmount > 100) && (ne.amount = "Amount must be between 0 and 100%."), (g.type === "fixed" && g.fixedAmount === 0 || g.type === "fixed" && g.fixedAmount < 1) && (ne.amount = "Enter an amount greater than 0."), g.type === "trial" && g.trialAmount === 0 && (ne.amount = "Enter an amount greater than 0."), g.type === "trial" && g.trialAmount < 1 && (ne.amount = "Free trial must be at least 1 day."), ne;
    },
    savingDelay: 500
  }), W = [
    { value: "percent", label: "%" },
    { value: "fixed", label: g.currency }
  ], J = (ne) => {
    b({
      tier: ne,
      dataset: us(ne.value)
    }), y((Me) => ({
      ...Me,
      cadence: us(ne.value).period,
      currency: us(ne.value).currency,
      tierId: us(ne.value).id
    }));
  }, Y = (ne) => {
    y((Me) => ({
      ...Me,
      type: ne
    }));
  }, B = (ne) => {
    y((Me) => ({
      ...Me,
      type: ne === "percent" ? "percent" : "fixed"
    }));
  }, U = (ne) => {
    const Me = ne.target;
    g.type === "fixed" ? y((Ne) => ({
      ...Ne,
      fixedAmount: Number(Me.value)
    })) : g.type === "percent" ? y((Ne) => ({
      ...Ne,
      percentAmount: Number(Me.value)
    })) : y((Ne) => ({
      ...Ne,
      amount: Number(Me.value)
    }));
  }, te = (ne) => {
    const Me = ne.target;
    y((Ne) => ({
      ...Ne,
      durationInMonths: Number(Me.value)
    }));
  }, R = (ne) => {
    const Me = ne.target.value;
    y((Ne) => {
      let Ge = { ...Ne };
      return Ge.name = Me, Ne.code.isDirty || (Q("code"), Ge.code = {
        ...Ne.code,
        value: Y9(Me)
      }), Ne.displayTitle.isDirty || (Q("displayTitle"), Ge.displayTitle = {
        ...Ne.displayTitle,
        value: Me
      }), Ge;
    });
  }, z = (ne) => {
    const Me = ne.target;
    y((Ne) => ({
      ...Ne,
      displayTitle: {
        ...Ne.displayTitle,
        isDirty: !0,
        value: Me.value
      }
    }));
  }, $ = (ne) => {
    const Me = ne.target;
    y((Ne) => ({
      ...Ne,
      displayDescription: Me.value
    }));
  }, K = (ne) => {
    const Me = ne.target;
    y((Ne) => ({
      ...Ne,
      trialAmount: Number(Me.value)
    }));
  }, ee = (ne) => {
    y((Me) => ({
      ...Me,
      duration: ne
    }));
  }, F = (ne) => {
    const Me = ne.target;
    y((Ne) => ({
      ...Ne,
      code: {
        ...Ne.code,
        isDirty: !0,
        value: Me.value
      }
    }));
  }, _ = () => {
    x.length > 0 ? c("offers/edit") : c("offers");
  }, fe = Gn(() => {
    var ne;
    return {
      name: g.name || "",
      code: g.code.value || "",
      displayTitle: g.displayTitle.value || "",
      displayDescription: g.displayDescription || "",
      type: g.type || "percent",
      cadence: g.cadence || "month",
      amount: gh(g) || 0,
      duration: g.type === "trial" ? "trial" : g.duration || "once",
      durationInMonths: g.durationInMonths || 0,
      currency: g.currency || "USD",
      status: g.status || "active",
      tierId: g.tierId || ((ne = w[0]) == null ? void 0 : ne.id)
    };
  }, [g, w]);
  ye(() => {
    const ne = pm(fe, e.url);
    l(ne);
  }, [g, e.url, g.type, fe]);
  const xe = /* @__PURE__ */ a.jsx(
    U9,
    {
      amountOptions: W,
      clearError: Q,
      durationOptions: r,
      errors: G,
      handleAmountInput: U,
      handleAmountTypeChange: B,
      handleCodeInput: F,
      handleDisplayTitleInput: z,
      handleDurationChange: ee,
      handleDurationInMonthsInput: te,
      handleNameInput: R,
      handleTextAreaInput: $,
      handleTierChange: J,
      handleTrialAmountInput: K,
      handleTypeChange: Y,
      overrides: g,
      selectedTier: f.tier,
      testId: "add-offer-sidebar",
      tierOptions: A,
      typeOptions: n,
      validate: S
    }
  ), I = /* @__PURE__ */ a.jsx(
    xA,
    {
      href: o || "",
      portalParent: "offers"
    }
  );
  return /* @__PURE__ */ a.jsx(
    ga,
    {
      afterClose: () => {
        c("offers");
      },
      backDropClick: !1,
      cancelLabel: "Close",
      deviceSelector: !1,
      dirty: D === "unsaved",
      height: "full",
      okColor: C.color,
      okLabel: "Publish",
      preview: I,
      previewToolbar: !1,
      sidebar: xe,
      size: "lg",
      testId: "add-offer-modal",
      title: "Offer",
      width: 1140,
      onCancel: _,
      onOk: async () => {
        if (S(), !Object.values(G).every((Me) => !Me)) {
          wo.remove(), ut({
            title: "Can't save offer",
            type: "info",
            message: "Make sure you filled all required fields"
          });
          return;
        }
        try {
          if (await k({ force: !0 }))
            return;
        } catch (Me) {
          let Ne;
          Me instanceof ps && Me.data && Me.data.errors[0] && (Ne = Me.data.errors[0].context || Me.data.errors[0].message), wo.remove(), Ne && ut({
            title: "Can't save offer",
            type: "error",
            message: Ne || "Please try again later"
          });
        }
      }
    }
  );
};
function xh(e) {
  return new Date(e).toLocaleDateString("default", {
    year: "numeric",
    month: "short",
    day: "2-digit"
  });
}
const Z9 = ({ clearError: e, errors: n, offer: r, updateOffer: o }) => {
  const { siteData: l } = Ve(), [c, v] = se(!1), w = rt(), { mutateAsync: A } = Gh(), [h, f] = se((r == null ? void 0 : r.name.length) || 0), b = h > 40 ? "text-red" : "text-green", { updateRoute: x } = We();
  ye(() => {
    r != null && r.name && f(r == null ? void 0 : r.name.length);
  }, [r == null ? void 0 : r.name]);
  const g = xr(l), y = `${g}${r == null ? void 0 : r.code}`, k = async () => {
    await navigator.clipboard.writeText(y), v(!0), setTimeout(() => v(!1), 2e3);
  }, D = async () => {
    (r == null ? void 0 : r.status) === "active" ? ve.show(Et, {
      title: "Archive offer",
      prompt: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        /* @__PURE__ */ a.jsx("p", { children: "New members will no longer be able to subscribe using this offer." }),
        /* @__PURE__ */ a.jsxs("p", { children: [
          "All members that previously redeemed ",
          /* @__PURE__ */ a.jsx("strong", { children: r == null ? void 0 : r.name }),
          " will remain unchanged."
        ] })
      ] }),
      okLabel: "Archive",
      okColor: "red",
      onOk: async (C) => {
        try {
          await A({ ...r, status: "archived" }), C == null || C.remove(), ut({
            type: "success",
            title: "Offer archived"
          }), x("offers/edit");
        } catch (S) {
          w(S);
        }
      }
    }) : ve.show(Et, {
      title: "Reactivate offer",
      prompt: /* @__PURE__ */ a.jsx(a.Fragment, { children: /* @__PURE__ */ a.jsxs("p", { children: [
        "Reactivating ",
        /* @__PURE__ */ a.jsx("strong", { children: r == null ? void 0 : r.name }),
        " will allow new members to subscribe using this offer. Existing members will remain unchanged."
      ] }) }),
      okLabel: "Reactivate",
      onOk: async (C) => {
        try {
          await A({ ...r, status: "active" }), C == null || C.remove(), ut({
            type: "success",
            title: "Offer reactivated"
          }), x("offers/edit");
        } catch (S) {
          w(S);
        }
      }
    });
  };
  return /* @__PURE__ */ a.jsxs("div", { className: "flex grow flex-col pt-2", children: [
    /* @__PURE__ */ a.jsxs(Ke, { className: " grow", children: [
      /* @__PURE__ */ a.jsx("section", { children: /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col gap-5 rounded-md border border-grey-300 p-4 pb-3.5 dark:border-grey-800", children: [
        /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col gap-1.5", children: [
          /* @__PURE__ */ a.jsx("span", { className: "text-xs font-semibold leading-none text-grey-700", children: "Created on" }),
          /* @__PURE__ */ a.jsx("span", { children: xh(r != null && r.created_at ? r.created_at : "") })
        ] }),
        /* @__PURE__ */ a.jsxs("div", { className: "flex items-end justify-between", children: [
          /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col gap-5", children: [
            /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col gap-1.5", children: [
              /* @__PURE__ */ a.jsx("span", { className: "text-xs font-semibold leading-none text-grey-700", children: "Performance" }),
              /* @__PURE__ */ a.jsxs("span", { children: [
                r == null ? void 0 : r.redemption_count,
                " ",
                (r == null ? void 0 : r.redemption_count) === 1 ? "redemption" : "redemptions"
              ] })
            ] }),
            (r == null ? void 0 : r.redemption_count) > 0 && (r != null && r.last_redeemed) ? /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col gap-1.5", children: [
              /* @__PURE__ */ a.jsx("span", { className: "text-xs font-semibold leading-none text-grey-700", children: "Last redemption" }),
              /* @__PURE__ */ a.jsx("span", { children: xh(r == null ? void 0 : r.last_redeemed) })
            ] }) : null
          ] }),
          (r == null ? void 0 : r.redemption_count) > 0 ? /* @__PURE__ */ a.jsx("a", { className: "font-semibold text-green", href: rv(r == null ? void 0 : r.id), children: "See members →" }) : null
        ] })
      ] }) }),
      /* @__PURE__ */ a.jsxs("section", { className: "mt-4", children: [
        /* @__PURE__ */ a.jsx("h2", { className: "mb-4 text-lg", children: "General" }),
        /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col gap-6", children: [
          /* @__PURE__ */ a.jsx(
            je,
            {
              error: !!n.name,
              hint: n.name || /* @__PURE__ */ a.jsxs("div", { className: "flex justify-between", children: [
                /* @__PURE__ */ a.jsx("span", { children: "Visible to members on Stripe Checkout page" }),
                /* @__PURE__ */ a.jsxs("strong", { children: [
                  /* @__PURE__ */ a.jsx("span", { className: `${b}`, children: h }),
                  " / 40"
                ] })
              ] }),
              maxLength: 40,
              placeholder: "Black Friday",
              title: "Offer name",
              value: r == null ? void 0 : r.name,
              onChange: (C) => {
                f(C.target.value.length), o({ name: C.target.value });
              },
              onKeyDown: () => e("name")
            }
          ),
          /* @__PURE__ */ a.jsx(
            je,
            {
              error: !!n.displayTitle,
              hint: n.displayTitle,
              placeholder: "Black Friday Special",
              title: "Display title",
              value: r == null ? void 0 : r.display_title,
              onChange: (C) => o({ display_title: C.target.value }),
              onKeyDown: () => e("displayTitle")
            }
          ),
          /* @__PURE__ */ a.jsx(
            xs,
            {
              placeholder: "Take advantage of this limited-time offer.",
              title: "Display description",
              value: r == null ? void 0 : r.display_description,
              onChange: (C) => o({ display_description: C.target.value })
            }
          ),
          /* @__PURE__ */ a.jsx(
            je,
            {
              error: !!n.code,
              hint: n.code || ((r == null ? void 0 : r.code) !== "" ? /* @__PURE__ */ a.jsxs("div", { className: "flex items-center justify-between", children: [
                /* @__PURE__ */ a.jsxs("div", { children: [
                  g,
                  /* @__PURE__ */ a.jsx("span", { className: "font-bold", children: r == null ? void 0 : r.code })
                ] }),
                /* @__PURE__ */ a.jsx("span", {}),
                /* @__PURE__ */ a.jsx(He, { className: "text-xs", color: "green", label: `${c ? "Copied" : "Copy"}`, size: "sm", link: !0, onClick: k })
              ] }) : null),
              placeholder: "black-friday",
              title: "Offer code",
              value: r == null ? void 0 : r.code,
              onChange: (C) => o({ code: C.target.value }),
              onKeyDown: () => e("code")
            }
          )
        ] })
      ] })
    ] }),
    /* @__PURE__ */ a.jsx("div", { className: "mb-2", children: (r == null ? void 0 : r.status) === "active" ? /* @__PURE__ */ a.jsx(He, { color: "red", label: "Archive offer", link: !0, onClick: D }) : /* @__PURE__ */ a.jsx(He, { color: "green", label: "Reactivate offer", link: !0, onClick: D }) })
  ] });
}, W9 = ({ id: e }) => {
  const { siteData: n } = Ve(), { updateRoute: r } = We(), o = rt(), { mutateAsync: l } = Gh(), [c, v] = se(""), { data: { offers: w = [] } = {} } = qh(e || ""), { formState: A, saveState: h, updateForm: f, setFormState: b, handleSave: x, validate: g, errors: y, clearError: k, okProps: D } = Hn({
    initialState: w[0],
    savingDelay: 500,
    onSave: async () => {
      await l(A);
    },
    onSaveError: o,
    onValidate: () => {
      const Q = {};
      return A != null && A.name || (Q.name = "Name is required"), A != null && A.display_title || (Q.displayTitle = "Display title is required"), A != null && A.code || (Q.code = "Please enter a code"), Q;
    }
  });
  ye(() => {
    b(() => w[0]);
  }, [b, w]);
  const C = (Q) => {
    f((W) => ({ ...W, ...Q }));
  }, S = /* @__PURE__ */ a.jsx(
    Z9,
    {
      clearError: k,
      errors: y,
      offer: A,
      updateOffer: C,
      validate: g
    }
  );
  ye(() => {
    const Q = {
      name: (A == null ? void 0 : A.name) || "",
      code: (A == null ? void 0 : A.code) || "",
      displayTitle: (A == null ? void 0 : A.display_title) || "",
      displayDescription: (A == null ? void 0 : A.display_description) || "",
      type: (A == null ? void 0 : A.type) || "",
      cadence: (A == null ? void 0 : A.cadence) || "",
      amount: A == null ? void 0 : A.amount,
      duration: (A == null ? void 0 : A.duration) || "",
      durationInMonths: (A == null ? void 0 : A.duration_in_months) || 0,
      currency: (A == null ? void 0 : A.currency) || "",
      status: (A == null ? void 0 : A.status) || "",
      tierId: (A == null ? void 0 : A.tier.id) || ""
    }, W = pm(Q, n.url);
    v(W);
  }, [A, n]);
  const G = /* @__PURE__ */ a.jsx(
    xA,
    {
      href: c || "",
      portalParent: "offers"
    }
  );
  return w ? /* @__PURE__ */ a.jsx(
    ga,
    {
      afterClose: () => {
        r("offers");
      },
      backDropClick: !1,
      cancelLabel: "Close",
      deviceSelector: !1,
      dirty: h === "unsaved",
      height: "full",
      okColor: D.color,
      okLabel: D.label || "Save",
      preview: G,
      previewToolbar: !1,
      sidebar: S,
      size: "lg",
      testId: "offer-update-modal",
      title: "Offer",
      width: 1140,
      onCancel: () => {
        sessionStorage.getItem("editOfferPageSource") === "offers" ? (sessionStorage.removeItem("editOfferPageSource"), r("offers")) : (sessionStorage.removeItem("editOfferPageSource"), r("offers/edit"));
      },
      onOk: async () => {
        try {
          if (await x({ force: !0 }))
            return;
        } catch (Q) {
          let W;
          Q instanceof ps && Q.data && Q.data.errors[0] && (W = Q.data.errors[0].context || Q.data.errors[0].message), wo.remove(), W && ut({
            title: "Can't save offer",
            type: "error",
            message: "Please try again later"
          });
        }
      }
    }
  ) : null;
}, V9 = ({ route: e }) => {
  if (e === "offers/new")
    return /* @__PURE__ */ a.jsx(J9, {});
  if (e.startsWith("offers/edit/") && e.length > 12) {
    const n = e.split("/").pop();
    return /* @__PURE__ */ a.jsx(W9, { id: n || "" });
  } else if (e.startsWith("offers/success/") && e.length > 15) {
    const n = e.split("/").pop();
    return /* @__PURE__ */ a.jsx(hm, { id: n || "" });
  } else if (e === "offers/edit")
    return /* @__PURE__ */ a.jsx(sv, {});
}, K9 = () => {
  const { route: e } = We();
  return /* @__PURE__ */ a.jsx(V9, { route: e });
}, _9 = ve.create(K9), $9 = "data:image/png;base64,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", e4 = bs({
  method: "POST",
  path: () => "/files/upload/",
  body: ({ file: e }) => {
    const n = new FormData();
    return n.append("file", e), n;
  }
}), t4 = ve.create(() => {
  const { updateRoute: e } = We(), [n, r] = se({
    js: !1,
    css: !1
  }), { settings: o, config: l } = Ve(), [c] = ht(o, ["pintura"]), { mutateAsync: v } = vs(), { mutateAsync: w } = e4(), A = rt();
  ye(() => {
    x(c || !1);
  }, [c]);
  const [h, f] = se("Save"), [b, x] = se(!!c), g = async () => {
    const G = [
      { key: "pintura", value: b }
    ];
    try {
      f("Saving..."), await Promise.all([
        v(G),
        new Promise((Q) => {
          setTimeout(Q, 1e3);
        })
      ]), f("Saved");
    } catch (Q) {
      A(Q);
    } finally {
      setTimeout(() => f("Save"), 1e3);
    }
  }, y = tt(null), k = tt(null), D = (G) => {
    var Q, W;
    G === "js" && ((Q = y.current) == null || Q.click()), G === "css" && ((W = k.current) == null || W.click());
  }, C = async (G, Q) => {
    var W, J;
    try {
      r((R) => ({ ...R, [Q]: !0 }));
      const Y = (J = (W = G.target) == null ? void 0 : W.files) == null ? void 0 : J[0];
      if (!Y)
        return;
      const { files: B } = await w({ file: Y }), U = B[0].url, te = [
        { key: `pintura_${Q}_url`, value: U }
      ];
      await v(te), r((R) => ({ ...R, [Q]: !1 })), ut({
        type: "success",
        title: `Pintura ${Q} uploaded`
      });
    } catch (Y) {
      r({ js: !1, css: !1 }), A(Y);
    }
  }, S = b !== c;
  return /* @__PURE__ */ a.jsxs(
    vt,
    {
      afterClose: () => {
        e("integrations");
      },
      cancelLabel: "Close",
      dirty: S,
      okColor: h === "Saved" ? "green" : "black",
      okLabel: h,
      testId: "pintura-modal",
      title: "",
      onOk: g,
      children: [
        /* @__PURE__ */ a.jsx(
          To,
          {
            detail: "Advanced image editing",
            icon: /* @__PURE__ */ a.jsx(av, { className: "size-12" }),
            title: "Pintura"
          }
        ),
        /* @__PURE__ */ a.jsxs("div", { className: "mt-7", children: [
          !l.pintura && /* @__PURE__ */ a.jsxs("div", { className: "mb-7 flex flex-col items-stretch justify-between gap-4 rounded-sm bg-grey-75 p-4 md:flex-row md:p-7 dark:bg-grey-950", children: [
            /* @__PURE__ */ a.jsxs("div", { className: "md:basis-1/2", children: [
              /* @__PURE__ */ a.jsx("p", { className: "mb-4 font-bold", children: "Add advanced image editing to Ghost, with Pintura" }),
              /* @__PURE__ */ a.jsx("p", { className: "mb-4 text-sm", children: "Pintura is a powerful JavaScript image editor that allows you to crop, rotate, annotate and modify images directly inside Ghost." }),
              /* @__PURE__ */ a.jsx("p", { className: "text-sm", children: "Try a demo, purchase a license, and download the required CSS/JS files from pqina.nl/pintura/ to activate this feature." })
            ] }),
            /* @__PURE__ */ a.jsxs("div", { className: "flex grow flex-col items-end justify-between gap-2 md:basis-1/2 md:gap-0", children: [
              /* @__PURE__ */ a.jsx("img", { alt: "Pintura screenshot", src: $9 }),
              /* @__PURE__ */ a.jsx("a", { className: "-mb-1 text-sm font-bold text-green", href: "https://pqina.nl/pintura/ghost/?ref=ghost.org", rel: "noopener noreferrer", target: "_blank", children: "Find out more →" })
            ] })
          ] }),
          /* @__PURE__ */ a.jsxs(Ke, { marginBottom: !1, title: "Pintura configuration", grouped: !0, children: [
            /* @__PURE__ */ a.jsx(
              et,
              {
                checked: b,
                direction: "rtl",
                hint: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
                  "Enable ",
                  /* @__PURE__ */ a.jsx("a", { className: "text-green", href: "https://pqina.nl/pintura/ghost/?ref=ghost.org", rel: "noopener noreferrer", target: "_blank", children: "Pintura" }),
                  " for editing your images in Ghost"
                ] }),
                label: "Enable Pintura",
                onChange: (G) => {
                  x(G.target.checked);
                }
              }
            ),
            b && !l.pintura && /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
              /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col justify-between gap-1 md:flex-row md:items-center", children: [
                /* @__PURE__ */ a.jsxs("div", { children: [
                  /* @__PURE__ */ a.jsx("div", { children: "Upload Pintura script" }),
                  /* @__PURE__ */ a.jsxs("div", { className: "text-xs text-grey-600", children: [
                    "Upload the ",
                    /* @__PURE__ */ a.jsx("code", { children: "pintura-umd.js" }),
                    " file from the Pintura package"
                  ] })
                ] }),
                /* @__PURE__ */ a.jsx("input", { ref: y, accept: ".js", type: "file", hidden: !0, onChange: async (G) => {
                  await C(G, "js");
                } }),
                /* @__PURE__ */ a.jsx(He, { color: "outline", disabled: n.js, label: "Upload", onClick: () => {
                  D("js");
                } })
              ] }),
              /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col justify-between gap-1 md:flex-row md:items-center", children: [
                /* @__PURE__ */ a.jsxs("div", { children: [
                  /* @__PURE__ */ a.jsx("div", { children: "Upload Pintura styles" }),
                  /* @__PURE__ */ a.jsxs("div", { className: "text-xs text-grey-600", children: [
                    "Upload the ",
                    /* @__PURE__ */ a.jsx("code", { children: "pintura.css" }),
                    " file from the Pintura package"
                  ] })
                ] }),
                /* @__PURE__ */ a.jsx("input", { ref: k, accept: ".css", type: "file", hidden: !0, onChange: async (G) => {
                  await C(G, "css");
                } }),
                /* @__PURE__ */ a.jsx(He, { color: "outline", disabled: n.css, label: "Upload", onClick: () => {
                  D("css");
                } })
              ] })
            ] })
          ] })
        ] })
      ]
    }
  );
}), n4 = ({ updateSetting: e, errors: n, setError: r }) => {
  const { siteData: o, settings: l, config: c } = Ve(), [v, w] = ht(l, ["members_support_address", "support_email_address"]), A = (w == null ? void 0 : w.toString()) || Pc((v == null ? void 0 : v.toString()) || "", o, c), h = ov(o, c), [f, b] = se(A), x = (g) => {
    let y = g.target.value;
    y ? jt.isEmail(y) ? r("members_support_address", "") : r("members_support_address", "Enter a valid email address") : r("members_support_address", "Enter an email address");
    let k = h && y === `noreply@${h}` ? "noreply" : y;
    e("members_support_address", k), b(Pc(k, o, c));
  };
  return ye(() => {
    b(A);
  }, [A]), /* @__PURE__ */ a.jsx("div", { className: "mt-7", children: /* @__PURE__ */ a.jsx(Ke, { children: /* @__PURE__ */ a.jsx(
    je,
    {
      error: !!n.members_support_address,
      hint: n.members_support_address,
      title: "Support email address",
      value: f,
      onBlur: x,
      onChange: (g) => b(g.target.value)
    }
  ) }) });
}, r4 = (e) => /* @__PURE__ */ Ze("svg", { width: 21, height: 24, viewBox: "0 0 21 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...e }, /* @__PURE__ */ Ze("title", null, "portal-icon-1"), /* @__PURE__ */ Ze("path", { d: "M10.533 11.267a5.135 5.135 0 1 0-.001-10.27 5.135 5.135 0 0 0 .001 10.27zM1 23a9.531 9.531 0 0 1 16.274-6.741 9.532 9.532 0 0 1 2.793 6.74", stroke: "currentColor", strokeWidth: 1.5, strokeLinecap: "round", strokeLinejoin: "round" })), s4 = (e) => /* @__PURE__ */ Ze("svg", { width: 24, height: 24, viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", ...e }, /* @__PURE__ */ Ze("title", null, "portal-icon-2"), /* @__PURE__ */ Ze("path", { stroke: "currentColor", strokeWidth: 1.5, strokeLinecap: "round", d: "M12.5 2v20M2 12.5h20", fill: "none" })), a4 = (e) => /* @__PURE__ */ Ze("svg", { width: 25, height: 24, viewBox: "0 0 25 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...e }, /* @__PURE__ */ Ze("title", null, "portal-icon-3"), /* @__PURE__ */ Ze("path", { d: "M23.5 6v14.25a2.25 2.25 0 1 1-4.5 0V3c0-.398-.158-.78-.44-1.06a1.494 1.494 0 0 0-1.06-.44h-15c-.398 0-.78.158-1.06.44C1.157 2.22 1 2.601 1 3v17.25a2.25 2.25 0 0 0 2.25 2.25h18M4.75 15h10.5m-10.5 3h6", stroke: "currentColor", strokeWidth: 1.5, strokeLinecap: "round", strokeLinejoin: "round" }), /* @__PURE__ */ Ze("path", { d: "M14.5 5.25h-9a.75.75 0 0 0-.75.75v4.5c0 .414.336.75.75.75h9a.75.75 0 0 0 .75-.75V6a.75.75 0 0 0-.75-.75z", stroke: "currentColor", strokeWidth: 1.5, strokeLinecap: "round", strokeLinejoin: "round" })), o4 = (e) => /* @__PURE__ */ Ze("svg", { width: 24, height: 18, viewBox: "0 0 24 18", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...e }, /* @__PURE__ */ Ze("title", null, "portal-icon-4"), /* @__PURE__ */ Ze("path", { d: "M21.75 1.5H2.25A1.5 1.5 0 0 0 .75 3v12a1.5 1.5 0 0 0 1.5 1.5h19.5a1.5 1.5 0 0 0 1.5-1.5V3a1.5 1.5 0 0 0-1.5-1.5zm-6.063 5.475L19.5 10.5M8.313 6.975 4.5 10.5", stroke: "currentColor", strokeWidth: 1.5, strokeLinecap: "round", strokeLinejoin: "round" }), /* @__PURE__ */ Ze("path", { d: "m22.88 2.014-9.513 6.56a2.41 2.41 0 0 1-2.734 0L1.12 2.014", stroke: "currentColor", strokeWidth: 1.5, strokeLinecap: "round", strokeLinejoin: "round" })), i4 = (e) => /* @__PURE__ */ Ze("svg", { width: 26, height: 26, viewBox: "0 0 26 26", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...e }, /* @__PURE__ */ Ze("title", null, "portal-icon-5"), /* @__PURE__ */ Ze("path", { d: "M17.903 12.016a5.007 5.007 0 0 0-3.031-3.654m-3.835.038a5.002 5.002 0 0 0-2.879 5.85m2.282 3.046A4.975 4.975 0 0 0 13 18a4.99 4.99 0 0 0 4.12-2.167m-1.949 5.387a8.504 8.504 0 0 0 5.756-11.295m-2.316-3.31A8.474 8.474 0 0 0 13 4.5a8.461 8.461 0 0 0-5.608 2.113m-2.28 3.213a8.503 8.503 0 0 0 5.914 11.444", stroke: "currentColor", strokeWidth: 1.5, strokeLinecap: "round" }), /* @__PURE__ */ Ze("path", { d: "M8.924 24.29c1.273.46 2.645.71 4.076.71 5.52 0 10.17-3.727 11.57-8.803M6.712 2.777A11.994 11.994 0 0 0 1 13c0 3.545 1.537 6.731 3.982 8.928m19.867-10.839C23.933 5.369 18.977 1 13 1c-.69 0-1.367.058-2.025.17", stroke: "currentColor", strokeWidth: 1.5, strokeLinecap: "round" })), Cc = [
  {
    Component: r4,
    value: "icon-1"
  },
  {
    Component: s4,
    value: "icon-2"
  },
  {
    Component: a4,
    value: "icon-3"
  },
  {
    Component: o4,
    value: "icon-4"
  },
  {
    Component: i4,
    value: "icon-5"
  }
], A4 = ({ localSettings: e, updateSetting: n }) => {
  var k, D;
  const { mutateAsync: r } = pa(), o = rt(), [l, c, v, w] = ht(e, ["portal_button", "portal_button_style", "portal_button_icon", "portal_button_signup_text"]), A = v || Cc[0].value, h = Cc.map(({ value: C }) => C).includes(A), [f, b] = se(h ? void 0 : A), x = async (C) => {
    try {
      const S = gr(await r({ file: C }));
      n("portal_button_icon", S), b(S);
    } catch (S) {
      const G = S;
      G.response.status === 415 && (G.message = "Unsupported file type"), o(G);
    }
  }, g = () => {
    n("portal_button_icon", null), b(void 0);
  }, y = [
    { value: "icon-and-text", label: "Icon and text" },
    { value: "icon-only", label: "Icon only" },
    { value: "text-only", label: "Text only" }
  ];
  return /* @__PURE__ */ a.jsx("div", { className: "mt-7", children: /* @__PURE__ */ a.jsxs(Ke, { children: [
    /* @__PURE__ */ a.jsx(
      et,
      {
        checked: !!l,
        direction: "rtl",
        label: "Show portal button",
        onChange: (C) => n("portal_button", C.target.checked)
      }
    ),
    /* @__PURE__ */ a.jsx(
      Lt,
      {
        options: y,
        selectedOption: y.find((C) => C.value === c),
        title: "Button style",
        onSelect: (C) => n("portal_button_style", (C == null ? void 0 : C.value) || null)
      }
    ),
    ((k = c == null ? void 0 : c.toString()) == null ? void 0 : k.includes("icon")) && /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col gap-2", children: [
      /* @__PURE__ */ a.jsx(ct, { level: 6, grey: !0, children: "Icon" }),
      /* @__PURE__ */ a.jsxs("div", { className: "flex justify-between", children: [
        Cc.map((C) => /* @__PURE__ */ a.jsx("button", { className: me("border p-3", A === C.value ? "border-green" : "border-transparent"), type: "button", onClick: () => n("portal_button_icon", C.value), children: /* @__PURE__ */ a.jsx(C.Component, { className: `size-5 ${A === C.value ? "text-green" : "text-black opacity-70 transition-all hover:opacity-100 dark:text-white"}` }) })),
        /* @__PURE__ */ a.jsx("div", { className: me("relative w-[46px] border", A === f ? "border-green" : "border-transparent"), children: /* @__PURE__ */ a.jsx(
          wr,
          {
            deleteButtonClassName: "invisible absolute -right-2 -top-2 flex h-8 w-8 cursor-pointer items-center justify-center rounded-full bg-[rgba(0,0,0,0.75)] text-white hover:bg-black group-hover:!visible",
            deleteButtonContent: /* @__PURE__ */ a.jsx(Mt, { colorClass: "text-white", name: "trash", size: "sm" }),
            height: "46px",
            id: "test",
            imageClassName: "cursor-pointer",
            imageURL: f,
            width: "46px",
            deleteButtonUnstyled: !0,
            onDelete: g,
            onImageClick: () => f && n("portal_button_icon", f),
            onUpload: x,
            children: /* @__PURE__ */ a.jsx(Mt, { className: "dark:text-white", name: "upload", size: "md" })
          }
        ) })
      ] })
    ] }),
    ((D = c == null ? void 0 : c.toString()) == null ? void 0 : D.includes("text")) && /* @__PURE__ */ a.jsx(
      je,
      {
        title: "Signup button text",
        value: w,
        onChange: (C) => n("portal_button_signup_text", C.target.value)
      }
    )
  ] }) });
}, qn = ({ name: e, value: n }) => {
  const r = tu();
  return /* @__PURE__ */ a.jsx(
    Wr,
    {
      action: /* @__PURE__ */ a.jsx(He, { color: "black", label: "Copy", link: !0, onClick: (o) => {
        navigator.clipboard.writeText(n);
        const l = o == null ? void 0 : o.target;
        l.innerText = "Copied", setTimeout(() => {
          l.innerText = "Copy";
        }, 1e3);
      } }),
      separator: !0,
      children: /* @__PURE__ */ a.jsxs("div", { className: "flex w-full grow flex-col py-3 lg:flex-row lg:items-center lg:gap-5", children: [
        /* @__PURE__ */ a.jsxs("label", { className: "inline-block whitespace-nowrap lg:w-[180px] lg:min-w-[180px]", htmlFor: r, children: [
          e,
          ":"
        ] }),
        /* @__PURE__ */ a.jsx(je, { className: "border-b-500 grow bg-transparent py-1 text-grey-700 lg:p-1", id: r, value: n, disabled: !0, unstyled: !0 })
      ] })
    }
  );
}, l4 = () => {
  const [e, n] = se(!1), [r, o] = se(""), { siteData: l } = Ve(), { data: { tiers: c } = {} } = Eo(), v = iu(c || []), w = () => {
    n(!e);
  };
  ye(() => {
    v != null && v.length && !r && o(v[0].id);
  }, [v, r]);
  const A = v == null ? void 0 : v.map((f) => ({
    label: f.name,
    value: f.id
  })), h = xr(l);
  return /* @__PURE__ */ a.jsxs(pu, { className: "max-w-[920px] text-base text-black dark:text-white", heading: "Links", children: [
    /* @__PURE__ */ a.jsxs("p", { className: "-mt-6 mb-16", children: [
      "Use these ",
      e ? "data attributes" : "links",
      " in your theme to show pages of Portal."
    ] }),
    /* @__PURE__ */ a.jsxs(br, { actions: /* @__PURE__ */ a.jsx(He, { color: "green", label: e ? "Links" : "Data attributes", link: !0, onClick: w }), title: "Generic", titleSize: "lg", children: [
      /* @__PURE__ */ a.jsx(qn, { name: "Default", value: e ? "data-portal" : `${h}#/portal` }),
      /* @__PURE__ */ a.jsx(qn, { name: "Sign in", value: e ? 'data-portal="signin"' : `${h}#/portal/signin` }),
      /* @__PURE__ */ a.jsx(qn, { name: "Sign up", value: e ? 'data-portal="signup"' : `${h}#/portal/signup` })
    ] }),
    /* @__PURE__ */ a.jsxs(br, { className: "mt-14", title: "Tiers", titleSize: "lg", children: [
      /* @__PURE__ */ a.jsx(
        Wr,
        {
          hideActions: !0,
          separator: !0,
          children: /* @__PURE__ */ a.jsxs("div", { className: "flex w-full items-center gap-2 py-2", children: [
            /* @__PURE__ */ a.jsx("span", { className: "inline-block w-[180px] min-w-[180px] shrink-0", children: "Tier:" }),
            /* @__PURE__ */ a.jsx(
              Lt,
              {
                options: A,
                selectedOption: A.find((f) => f.value === r),
                onSelect: (f) => {
                  f && o(f == null ? void 0 : f.value);
                }
              }
            )
          ] })
        }
      ),
      /* @__PURE__ */ a.jsx(qn, { name: "Signup / Monthly", value: e ? `data-portal="signup/${r}/monthly"` : `${h}#/portal/signup/${r}/monthly` }),
      /* @__PURE__ */ a.jsx(qn, { name: "Signup / Yearly", value: e ? `data-portal="signup/${r}/yearly"` : `${h}#/portal/signup/${r}/yearly` }),
      /* @__PURE__ */ a.jsx(qn, { name: "Signup / Free", value: e ? 'data-portal="signup/free"' : `${h}#/portal/signup/free` })
    ] }),
    /* @__PURE__ */ a.jsxs(br, { className: "mt-14", title: "Account", titleSize: "lg", children: [
      /* @__PURE__ */ a.jsx(qn, { name: "Account", value: e ? 'data-portal="account"' : `${h}#/portal/account` }),
      /* @__PURE__ */ a.jsx(qn, { name: "Account / Plans", value: e ? 'data-portal="account/plans"' : `${h}#/portal/account/plans` }),
      /* @__PURE__ */ a.jsx(qn, { name: "Account / Profile", value: e ? 'data-portal="account/profile"' : `${h}#/portal/account/profile` }),
      /* @__PURE__ */ a.jsx(qn, { name: "Account / Newsletters", value: e ? 'data-portal="account/newsletters"' : `${h}#/portal/account/newsletters` }),
      /* @__PURE__ */ a.jsx(qn, { name: "Account / Newsletter help", value: e ? 'data-portal="account/newsletters/help"' : `${h}#/portal/account/newsletters/help` })
    ] })
  ] });
}, c4 = ({ settings: e, config: n, tiers: r, siteData: o, selectedTab: l }) => {
  if (!(o != null && o.url))
    return null;
  let c = r.filter((g) => g.visibility === "public" && g.type === "paid").map((g) => g.id);
  const v = o.url.replace(/\/$/, ""), w = "/?v=modal-portal-settings#/portal/preview", A = JSON.parse(bn(e, "portal_plans") || ""), h = new URLSearchParams();
  h.append("button", bn(e, "portal_button") ? "true" : "false"), h.append("name", bn(e, "portal_name") ? "true" : "false"), h.append("isFree", A.includes("free") ? "true" : "false"), h.append("isMonthly", ua(e, n) && A.includes("monthly") ? "true" : "false"), h.append("isYearly", ua(e, n) && A.includes("yearly") ? "true" : "false"), h.append("page", l === "account" ? "accountHome" : "signup"), h.append("buttonIcon", encodeURIComponent(bn(e, "portal_button_icon") || "icon-1")), h.append("signupButtonText", encodeURIComponent(bn(e, "portal_button_signup_text") || "")), h.append("membersSignupAccess", bn(e, "members_signup_access") || "all"), h.append("allowSelfSignup", bn(e, "allow_self_signup") || "false"), h.append("signupTermsHtml", bn(e, "portal_signup_terms_html") || ""), h.append("signupCheckboxRequired", bn(e, "portal_signup_checkbox_required") ? "true" : "false"), h.append("portalProducts", c.join(","));
  const f = bn(e, "portal_default_plan");
  f && h.append("portalDefaultPlan", f), A && A.length && h.append("portalPrices", encodeURIComponent(A.join(",")));
  const b = bn(e, "accent_color");
  b != null && h.append("accentColor", encodeURIComponent(b));
  const x = bn(e, "portal_button_style");
  return x && h.append("buttonStyle", encodeURIComponent(x)), h.append("disableBackground", "false"), `${v}${w}?${h.toString()}`;
}, u4 = ({
  selectedTab: e = "signup",
  localSettings: n,
  localTiers: r
}) => {
  const {
    siteData: o,
    config: l
  } = Ve(), c = c4({
    settings: n,
    tiers: r,
    selectedTab: e,
    siteData: o,
    config: l
  });
  let v = /* @__PURE__ */ a.jsx(a.Fragment, {});
  switch (e) {
    case "account":
      v = /* @__PURE__ */ a.jsx(a.Fragment, { children: /* @__PURE__ */ a.jsx(xA, { href: c || "", portalParent: "preview", selectedTab: e }) });
      break;
    case "links":
      v = /* @__PURE__ */ a.jsx(l4, {});
      break;
    default:
      v = /* @__PURE__ */ a.jsx(a.Fragment, { children: /* @__PURE__ */ a.jsx(xA, { href: c || "", portalParent: "preview", selectedTab: e }) });
      break;
  }
  return v;
}, f4 = ({ localSettings: e, updateSetting: n, localTiers: r, updateTier: o, errors: l, setError: c }) => {
  const { config: v } = Ve(), [w, A, h, f, b, x] = ht(
    e,
    ["members_signup_access", "portal_name", "portal_signup_terms_html", "portal_signup_checkbox_required", "portal_plans", "portal_default_plan"]
  ), g = JSON.parse((b == null ? void 0 : b.toString()) || "[]"), y = 115, k = Gn(() => {
    const U = document.createElement("div");
    return U.innerHTML = (h == null ? void 0 : h.toString()) || "", U.innerText.length;
  }, [h]), D = Bt((U, te) => {
    c(U, te);
  }, []);
  ye(() => {
    k > y ? D("portal_signup_terms_html", "Signup notice is too long") : D("portal_signup_terms_html", void 0);
  }, [k, D]);
  const C = (U) => {
    const te = g.indexOf(U);
    te === -1 ? g.push(U) : g.splice(te, 1), n("portal_plans", JSON.stringify(g)), x === "yearly" ? !g.includes("yearly") && g.includes("monthly") && n("portal_default_plan", "monthly") : x === "monthly" && (g.includes("monthly") || n("portal_default_plan", "yearly"));
  }, S = w === "all" || w === "paid", G = w === "all", Q = ua(e, v);
  let W = [];
  r && r.forEach((U) => {
    U.type === "free" && G && W.push({
      checked: g.includes("free"),
      disabled: !S,
      label: U.name,
      value: "free",
      testId: "free-tier-checkbox",
      onChange: (te) => {
        g.includes("free") && !te && g.splice(g.indexOf("free"), 1), !g.includes("free") && te && g.push("free"), n("portal_plans", JSON.stringify(g)), o({ ...U, visibility: te ? "public" : "none" });
      }
    });
  });
  const J = iu(r) || [], Y = [
    { value: "yearly", label: "Yearly" },
    { value: "monthly", label: "Monthly" }
  ];
  Q && J.length > 0 && J.forEach((U) => {
    W.push({
      checked: U.visibility === "public",
      label: U.name,
      value: U.id,
      onChange: (te) => o({ ...U, visibility: te ? "public" : "none" })
    });
  });
  const B = Q && J.length > 0 && J.some((U) => U.visibility === "public");
  return /* @__PURE__ */ a.jsx("div", { className: "mt-7", children: /* @__PURE__ */ a.jsxs(Ke, { children: [
    /* @__PURE__ */ a.jsx(
      et,
      {
        checked: !!A,
        direction: "rtl",
        disabled: !S,
        label: "Display name in signup form",
        onChange: (U) => n("portal_name", U.target.checked)
      }
    ),
    /* @__PURE__ */ a.jsx(
      zc,
      {
        checkboxes: W,
        title: "Available tiers"
      }
    ),
    B && /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
      /* @__PURE__ */ a.jsx(
        zc,
        {
          checkboxes: [
            {
              checked: g.includes("monthly"),
              disabled: !S,
              label: "Monthly",
              value: "monthly",
              onChange: () => {
                C("monthly");
              }
            },
            {
              checked: g.includes("yearly"),
              disabled: !S,
              label: "Yearly",
              value: "yearly",
              onChange: () => {
                C("yearly");
              }
            }
          ],
          title: "Available prices"
        }
      ),
      g.includes("yearly") && g.includes("monthly") && /* @__PURE__ */ a.jsx(
        Lt,
        {
          options: Y,
          selectedOption: Y.find((U) => U.value === x),
          title: "Default price at signup",
          onSelect: (U) => {
            n("portal_default_plan", (U == null ? void 0 : U.value) ?? "yearly");
          }
        }
      )
    ] }),
    /* @__PURE__ */ a.jsx(
      du,
      {
        error: !!l.portal_signup_terms_html,
        hint: l.portal_signup_terms_html || /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
          "Recommended: ",
          /* @__PURE__ */ a.jsx("strong", { children: "115" }),
          " characters. You've used ",
          /* @__PURE__ */ a.jsx("strong", { className: "text-green", children: k })
        ] }),
        nodes: "MINIMAL_NODES",
        placeholder: "By signing up, I agree to receive emails from ...",
        title: "Display notice at signup",
        value: h == null ? void 0 : h.toString(),
        onChange: (U) => n("portal_signup_terms_html", U)
      }
    ),
    (h == null ? void 0 : h.toString()) && /* @__PURE__ */ a.jsx(
      et,
      {
        checked: !!f,
        disabled: !S,
        label: "Require agreement",
        labelStyle: "heading",
        onChange: (U) => n("portal_signup_checkbox_required", U.target.checked)
      }
    )
  ] }) });
}, d4 = "SettingsResponseType", h4 = bs({
  path: () => "/settings/verifications",
  method: "PUT",
  body: ({ token: e }) => ({ token: e }),
  updateQueries: {
    dataType: d4,
    emberUpdateType: "createOrUpdate",
    update: (e) => ({
      ...e,
      settings: e.settings
    })
  }
}), p4 = ({ localSettings: e, updateSetting: n, localTiers: r, updateTier: o, errors: l, setError: c }) => {
  const [v, w] = se("signupOptions"), A = [
    {
      id: "signupOptions",
      title: "Signup options",
      contents: /* @__PURE__ */ a.jsx(
        f4,
        {
          errors: l,
          localSettings: e,
          localTiers: r,
          setError: c,
          updateSetting: n,
          updateTier: o
        }
      )
    },
    {
      id: "lookAndFeel",
      title: "Look & feel",
      contents: /* @__PURE__ */ a.jsx(A4, { localSettings: e, updateSetting: n })
    },
    {
      id: "accountPage",
      title: "Account page",
      contents: /* @__PURE__ */ a.jsx(n4, { errors: l, setError: c, updateSetting: n })
    }
  ], h = (f) => {
    w(f);
  };
  return /* @__PURE__ */ a.jsx("div", { className: "pt-4", children: /* @__PURE__ */ a.jsx(Zr, { selectedTab: v, tabs: A, onTabChange: h }) });
}, m4 = () => {
  const { updateRoute: e } = We(), [n, r] = se("signup"), o = rt(), { settings: l, siteData: c, config: v } = Ve(), { mutateAsync: w } = vs(), { data: { tiers: A } = {} } = Eo(), { mutateAsync: h } = Au(), { mutateAsync: f } = h4(), { getParam: b } = Rh(), x = b("verifyEmail");
  ye(() => {
    x && (async ({ token: $ }) => {
      try {
        let { settings: K } = await f({ token: $ });
        const [ee] = ht(K, ["members_support_address"]);
        ve.show(Et, {
          title: "Support address verified",
          prompt: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
            "Your support email address has been changed to ",
            /* @__PURE__ */ a.jsx("strong", { children: ee }),
            "."
          ] }),
          okLabel: "Close",
          cancelLabel: "",
          onOk: (F) => F == null ? void 0 : F.remove()
        });
      } catch (K) {
        let ee = "There was an error verifying your email address. Please try again.";
        (K == null ? void 0 : K.message) === "Token expired" && (ee = "Verification link has expired."), ve.show(Et, {
          title: "Error verifying support address",
          prompt: ee,
          okLabel: "Close",
          cancelLabel: "",
          onOk: (F) => F == null ? void 0 : F.remove()
        }), o(K, { withToast: !1 });
      }
    })({ token: x });
  }, [o, x, f]);
  const { formState: g, setFormState: y, saveState: k, handleSave: D, updateForm: C, okProps: S } = Hn({
    initialState: {
      settings: l,
      tiers: A || []
    },
    savingDelay: 500,
    onSave: async () => {
      var ee, F, _, fe;
      await Promise.all(g.tiers.filter(({ dirty: xe }) => xe).map((xe) => h(xe))), y((xe) => ({ ...xe, tiers: g.tiers.map((I) => ({ ...I, dirty: !1 })) }));
      const z = g.settings.filter((xe) => xe.dirty);
      if (!z.length)
        return;
      const { meta: $, settings: K } = await w(z);
      if (y((xe) => ({ ...xe, settings: g.settings.map((I) => ({ ...I, dirty: !1 })) })), $ != null && $.sent_email_verification) {
        const xe = (ee = g.settings.find((de) => de.key === "members_support_address")) == null ? void 0 : ee.value, I = ((F = K.find((de) => de.key === "support_email_address")) == null ? void 0 : F.value) || Pc(((fe = (_ = K.find((de) => de.key === "members_support_address")) == null ? void 0 : _.value) == null ? void 0 : fe.toString()) || "noreply", c, v);
        ve.show(Et, {
          title: "Confirm email address",
          prompt: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
            "We've sent a confirmation email to ",
            /* @__PURE__ */ a.jsx("strong", { children: xe }),
            ". Until verified, your support email address will remain ",
            I,
            "."
          ] }),
          okLabel: "Close",
          cancelLabel: "",
          onOk: (de) => de == null ? void 0 : de.remove()
        });
      }
    },
    onSaveError: o
  });
  ye(() => {
    !g.tiers.length && (A != null && A.length) && y((z) => ({ ...z, tiers: A }));
  }, [A, g.tiers, y]);
  const [G, Q] = se({}), W = (z, $) => {
    C((K) => ({
      ...K,
      settings: K.settings.map((ee) => ee.key === z ? { ...ee, value: $, dirty: !0 } : ee)
    }));
  }, J = (z, $) => {
    Q((K) => ({
      ...K,
      [z]: $
    }));
  }, Y = (z) => {
    C(($) => ({
      ...$,
      tiers: $.tiers.map((K) => K.id === z.id ? { ...z, dirty: !0 } : K)
    }));
  }, B = (z) => {
    r(z);
  }, U = /* @__PURE__ */ a.jsx(
    p4,
    {
      errors: G,
      localSettings: g.settings,
      localTiers: g.tiers,
      setError: J,
      updateSetting: W,
      updateTier: Y
    }
  ), te = /* @__PURE__ */ a.jsx(
    u4,
    {
      localSettings: g.settings,
      localTiers: g.tiers,
      selectedTab: n
    }
  );
  let R = [
    { id: "signup", title: "Signup" },
    { id: "account", title: "Account page" },
    { id: "links", title: "Links" }
  ];
  return /* @__PURE__ */ a.jsx(
    ga,
    {
      afterClose: () => {
        e("portal");
      },
      buttonsDisabled: S.disabled,
      cancelLabel: "Close",
      deviceSelector: !1,
      dirty: k === "unsaved",
      okColor: S.color,
      okLabel: S.label || "Save",
      preview: te,
      previewBgColor: n === "links" ? "white" : "greygradient",
      previewToolbarTabs: R,
      selectedURL: n,
      sidebar: U,
      testId: "portal-modal",
      title: "Portal",
      onOk: async () => {
        Object.values(G).filter(Boolean).length || await D({ force: !0 });
      },
      onSelectURL: B
    }
  );
}, g4 = ve.create(m4), x4 = ve.create(() => {
  const { updateRoute: e } = We(), { localSettings: n, updateSetting: r, handleSave: o, validate: l, errors: c, clearError: v, okProps: w } = ws({
    onValidate: () => {
      const g = {};
      return A && !jt.isURL(A, { require_protocol: !0 }) && (g.slackUrl = "The URL must be in a format like https://hooks.slack.com/services/<your personal key>"), g;
    },
    savingDelay: 500
  }), [A, h] = ht(n, ["slack_url", "slack_username"]), { mutateAsync: f } = iv(), b = async () => {
    wo.remove(), await o() && (await f(null), ut({
      title: "Check your Slack channel for the test message",
      type: "info"
    }));
  }, x = n.some((g) => g.dirty);
  return /* @__PURE__ */ a.jsxs(
    vt,
    {
      afterClose: () => {
        e("integrations");
      },
      cancelLabel: "Close",
      dirty: x,
      okColor: w.color,
      okLabel: w.label || "Save",
      testId: "slack-modal",
      title: "",
      onOk: async () => {
        wo.remove(), await o();
      },
      children: [
        /* @__PURE__ */ a.jsx(
          To,
          {
            detail: "A messaging app for teams",
            icon: /* @__PURE__ */ a.jsx(Av, { className: "size-14" }),
            title: "Slack"
          }
        ),
        /* @__PURE__ */ a.jsx("div", { className: "mt-7", children: /* @__PURE__ */ a.jsxs(Ke, { marginBottom: !1, title: "Slack configuration", grouped: !0, children: [
          /* @__PURE__ */ a.jsx(
            je,
            {
              error: !!c.slackUrl,
              hint: c.slackUrl || /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
                "Automatically send newly published posts to a channel in Slack or any Slack-compatible service like Discord or Mattermost. Set up a new incoming webhook ",
                /* @__PURE__ */ a.jsx("a", { href: "https://my.slack.com/apps/new/A0F7XDUAZ-incoming-webhooks", children: "here" }),
                ", and grab the URL."
              ] }),
              placeholder: "https://hooks.slack.com/services/...",
              title: "Webhook URL",
              value: A,
              onBlur: l,
              onChange: (g) => r("slack_url", g.target.value),
              onKeyDown: () => v("slackUrl")
            }
          ),
          /* @__PURE__ */ a.jsxs("div", { className: "flex w-full flex-col gap-2 md:flex-row md:items-center", children: [
            /* @__PURE__ */ a.jsx(
              je,
              {
                containerClassName: "flex-grow",
                hint: "The username to display messages from",
                title: "Username",
                value: h,
                onChange: (g) => r("slack_username", g.target.value)
              }
            ),
            /* @__PURE__ */ a.jsx(He, { color: "outline", label: "Send test notification", onClick: b })
          ] })
        ] }) })
      ]
    }
  );
}), w4 = "data:image/jpeg;base64,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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoWAAAAAaNfKPRNXQCxAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAJIIAIKxAIBAIIAChIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFoIBJIJBIJLVIBJJAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAJIIABUEAgAgCAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAChIBIJBYAEkkAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAgAAqAQACBAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAABUgAkAsAASASAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACKCBAABAIAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIABIJAAJAoTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiggQAACACCSACSASAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACASQASQSASAACQKEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAIAAAIBJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJIBIAABIAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJABIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIoIkgAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgAAAAAEkChMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUCBIIAAAAAAAAAAAAAAAAAAAA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GmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgaaBpoGmgEREWBfhOk73R8T6M1kjicbtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtobtodJayXxP8SMdG/uT/k/SP7kBfEujf3J/wAn6R/cnxPo49yc5D7UZlTr0vid9SzKKxxLMQotaBPYns6rP81pGq5lPatDatDatDatDatDatDatDatDatDatDatDatDatDatDatDatDatDatDatjatDatDatjatDatDatDatDatDatDatDatDatDatDatDatDatDatDatDatDatDatDatDatDatjatDatDatDatDatDatDatDatDatDatDatDatDatDatDatDath9smlkRfxmWkrTmPQbGg2NBsaDY0GxoNjQbGg2NBsaDY0GxoNjQbGg2NBsaDY0GxoNjQbGg2NBsaDY0GxoNjQbGg2NBsaDY26B/Zl4NjdV9askSa61hWaTOKDPAXdrYtmtmEXFV9Szm2LuFLYnRkSI3LpG9yfE+jj3Jz4plmuUmMGIUB9vOhFVHdzE1Xm5V27SARhF3dyVz1wmuJKvqmJZSDta4q/rE7PiSMVBMs6k50QpZxDh39RNU4mNw9xDDvm3jjzLW1O9erK6NfPS4yM9lf1sFx6KqLfxG6SBPtHritYgonuQJ0Sxj7iETiDcU0RuIStLavFh/cmHFpbbUtSCnvIJ4ojxvsEs3XCZaW6qNKkuG0paZkZb5sJbmxnHjZQU+IZLMnbFkmUutR5LMklGz+Rnetv8Ajxfoh+QzHTmdRanJfJmLHcN1rMqXJcZdYaZ3Bss6kw5kYmCfG8jbfcGq1Ti6aGpsZ1C3EMzIz6Vqbes2No89HJ1CnFtJdmxWXiacOyZakPtSH5kaPgTyXW1LyJVZRifYaKZOZhG1qlZMIfeafOShtb+qxIakoNbJz4iV6ZuTYzTxMremxWHNN12bFZyasyY7HJ1aEmSiI+f+1cr6Q7EpZ0liBxjdtzGjcXPlGajJBmaS5yrZcu/Zhml5ZcUrU/S5kcYqS1/QmvHGrZElEVkpMxSZvEUmtLh15DHAN1AK6KsruXSP7k7xfDejj3Jz4gJ2Nb7hEG0N4sr+eNnzuG4U+2joaT5BdHPlwr92My8xAsq22BQ5JMItDvn2rekuX4K4E9iBd0R0xFNt61Z8HGthqdAemVT8/i+aaIkZ1FLWxjzbFF/WymGJcA6ic7sWI1NEfPhN6W/FlLl2UA5CkSY1dAWy4uZM8WH9yYWhK0KQpCJzLZMpq9w0hyPIdzaSsjDCylsrjQ4byNBh1pmYt6MbqYjyaxhJPIdlJzDK61MkvpW86laiL8hO9bf8eJ9EWlaUzBxuLBk18onThpUTRqXPibqRExmQlIOMuMqE8TbTyExXkE2+T0aS7unCfRLfdfktLhynzkmJhPzYsgk17TsY3WF2TMx7dtkpL7MmaomGX4Cv3isSIK2DOKxJYTXqXYocUllbS4zhotAqI6ZPmuuKRldN/K67Gnxm57E14pLRTM7LdmgHGfQpSyVFLLCaVz/2rlxG2t6gsG20xJLD7SntNasTSgsEJLlMkJiRXZKlLWp03TitweIpBIl1NJCqsymD9IflJiuvsyILzr9qy4z0iz1uQWYpdF7Ds3i1EoFy6R/cgL4l0b+5OdtXInsZDkwJUZZk4zEkvqyt0dSUMjddLwMTGJ/xI60tv4rzoGdAzoGdAzoGdAzoGdA1EDOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0DOgZ0CW4hbqST/GiuIyGk86BnQM6RnQM6RnQM6BnSM6BnQM6BnQM6BnSM6BnSM6BnQM6BnSM6QnTRjlzoDkeI64TrmZAzoGdIzpBuIIjMy/czPmtKXEmhwu5Nr90pCkpQSP2Llx3wid+xrxKGDLgOR4trdFcXU1iLU0dUVbGIl8ukj3J8T6N/cncU2RgmyIERF/ONJGNBA0EDQQNBA0EDQQNBA0EDQQNBA0EDQQNBA0EDQQNBA0EDQQNBA0EDQQNBA0EDQQNBA0EDQQNBA0EDQQNBA0EDQQNBA0EDQQNBA0EDQQNBA26BoIGggaCBoIGggbdA0EDQQNBA0EDQQNBA0EDQQNBA0EDQQCYQEoJP7F/GUgleeigaKBooGigaKBooGigaKBooGigaKBooGigaKBooGigaKBooGigaKBooGigaKBooGigaKBooGigE0kv3Ii8QyxBskYS0SQRc+kf3IC+JdG/uT/AJP0j+5Phxd3o49yd0jI/L+chBrVlLaqG1UNqobVQ2qhtVDaKG0UNqobVQ2qhtVDaqG1UNqobVQ2ihtFDaqG1UNqobVQ2ihtFDaqG1UNoobRQ2qhtVDaqG1UNoobRQ2qhtVDaqG1UNoobRQ2qhtVDaqG1UNoobRQ2ihtFDaqG1UNoobRQ2qhtVDaqG1UNqobVQ2qhtVDaqG1UNqobVQ2qhtVDaqG1UNqobVQ2qhtVDaqG1UNqobVQ2ihtFDaqG1UNqobVQ2qhtVDaKG0UNoobRQ2qhtVDaqG1UNqobVXJJGpRJLaqG1UNoobRQ2qhtVDaqG1UNoobRQ2qhtVDaqG1UNqobVQ2qhtVDaqG1UNoobRQ2qhtVDaqG1UNqobVQ2qhtVDaqDjKmyxPl0ke5fhxd3o49ydyzmy5ry4jTC5dI8bbLas6ErIRL9trfNTIFy/1bAI+v0aDSyVxC4hp5a5t+3GfdbQy6h9lDzf8aGeLivg2JDEhiQxIYkMSGJDEhiQxIYkMSGJDEhiQxIYkMSGJDEhiQxLuOH/AOs4Ih/+5L8BK/ZkwR8ukj3L3y+GdG/uTuTYjr00lkqCtE9CmQQgV+zblIDVG4wxDJhuiyoYxfpTdYsWhIpFqkuPsNIJtpCC/jQjxeV8FMiceUlWi0NFoaLQ0mhpNDRaGi0NFoaTQ0WhotDSaGi0NFoaLQ0mhotDRaGi0NJoaTQ0WhgTbyUp5OfXcEP7ovwEz9o6gnl0ke5O+Xwzo39yfgzED66ud25YxltOxztFQTVHecuWCW02xW2zq6uM+uJcRpTjCEQJjc6MUhrw59q5VzHN03aPRWiZku3TJLSljrV07koYi3LL7rKCbv464pygxauOWshCjvWWkPG+ia2uccRHNRXhuHPSk8S/CN/cOC9nPQozRRojljGsUx5DPEsZ2FvC/UMVDEpx9d42xEdfkwZpy0rzHdxSYW8Z8RRSdUQiXBtyZaJUu+iwzlk65xMw3uM0m9YbXkZjPtSo7b7Pfnt20uUsosJx52M2t9z7hrm59dwQ/uk87N+e5dsQIca7cilOZtHOIozDEp2Sxex1PuMvw79iS802uLeImtGtuJePHNrIqGr+Mt5CSueIzRAknBnz2oDbbj0m9ix3ZLRnxDGQw+t+zv34tcb7Um9Qws0Ed7HOU1GYsuI8YxLhSrtER/I8d5GKM68fhzvtlBHLpI9yd8vhnRv7k5mZJSZmVnEDM6O84TaOSbatXJ2xd01JQk1K/iGIH3CudrDcmoYS3JgTkTJL8FmokwHWVQCoZaYsJo5kB6DVQ4bMSOiLGajt+HaQlzNrksaZb09yW1Y0zzyGmmurJBTmHxWUTkN5glopnk0keGTtVZSnJT7kapKE6/Kl8LxnmoRvyea4NsTpw0kWBYfhG/uHRdV6rGKlLTFTMftmbCeiikIoYMIiqZz2+kyYtFLYhTWioKx+tQ+Ti6VZ35TgqgnGwusJ+ilGUlbLlFPf3rr79S86/bLJ/hp7WQ81CYKLDaYLvz2LRuUp2uhMbeMhk3PuGubn13BD+6TzsoFgq3YnwHuHXZUOYcuzpnmKKxWF00yfJcXZxaqyXJhLnQ6CW1LN441NLiuVDjcDhpcOS0QkUFkcCRWM8REwdLKRIZo5E2ga3TNI+iBKbJHDssquVGKfQSZE1U0oVUuJZFJLqGyKC3Wom8NTJT8lZoi7vi5amvDnfbKCOXSR7k+J9G/uTm6RqaWRX82ypX2SYnOW1XBh2ZcMTH59KxJkkGIs2yqp0BmfYym5Jy427l786YNu2K4sWUJM6fFJ+Ahb9q1FWwu8Q+UC7gu3Jzoj6zJlZOMocT/CUIH11fBVr0XTWe+jjfRxvo430cb6ON9HG+jjfRxvo430cb6ON9HG+jjfRxvo430cb6ON9HG+jjfRxvo430cNr1niWnk59dwQvui/ATvtlBHLpI9yfE+jf3J3LOlgWq21zP0hSiDDYgRURowZZaYSaGV1FcuSuSpivNFs/ZPFDjJQhBOQYjyH0OM1sFhgmGXIkZw3jccpatwmic/hqED7hXO0s49YzneqbWNaM52X76M0+60iJJZmR0SGJ86PAY1pNdNasIbcplPELK8xtP2LEWCUx+HcsSZJRVYkRA+JIWBuibYxoUZMh2HcMSpO1PuW9vHqmTU7XWMaxaNcd3iGIlbuRl5t9pLrU+1YguNsnAtI01LpoLiSDhqCfYxoDKXXoNvHmPnGClpQk1KLiOFlJ4T7JiAhBuwbZiY+uN+FMhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIERFzc+u4IX3Rc5MpiI0bsiFYRJyTVFFpxPAr5iIoOzhFWnZBjiOK6+y26D4lj6zzbT1tGjVnWEmBfRpcsoZz7yNCklEKsso1nFKRFtLSNWNIW/Au486SqKHL+Ai2aqy8ad9soI5dJHuQF8S6N/cn4MxA+4Vzv4b63N7FopTazQh7hxFs9TtOxaCUmZWocJ+My64h5fCXt2IK6FeRKxKW4Dse4gRJrrR9c2zMpqUtpEZ1TzJW/UGixCRFfrYj0Ztck76Iu17nEkN8tzPixZaVNzjOlbt10UZ2JSym5lWxIaLfPcTWSIrW4lLsqqXvJRU51y4rcsq2jskTJb8u6qHSs1sIrpJyXSuOoNB60cSt+qOsiqkHxC2dr+ec+u4IX3Rc+LUHMv0RH6vRhXkGNBE+JPq57LkOY/VSOEXtOzdtzahqvhW11+xDdJp2x64Ph553iksHad0uHf3tr11dKWTiS9bRxOpe/rChRlyz4njKurOKxEt6JmP4077ZQRy6SPcgL4l0b+5O44U1UxCg1IbccNnkQO/lNxn5yn7SvjSUxn02rKHrApSbOAqKUombOA/FclNMWcCRGcksw5sSc0bsT+IoQPuFc7eq3pm+xTVJwsH5HU0yMp1Fe5Edr4UKDXGWJGQqYHV9a1DNFLOYaVEiTKc3KhFZDhV9lGU0kzircXKKQVNYoY2bb9Mg4sVmIxVyFTWpU/uXVOc0nX41ZVlENx55NLNYbVFhuR3YR1kCBNq3XJhToUCq0TkuyjpZy2NkudW67TJRYlY+U0ps9cJT7UtiWdNYrj7JcunJZxnIcWrfKcidP8Azzn13BD+6TztaiHbNkiVU8PwKpw3WBO4bfKW05Wr4eiHTdWEujnziQzZw1TV3U83UUc+KTrFa7w7FOnZrWYtNMXPZmWk2nlb9c+shU7kGBJaZsqdyWcWQ1EppJ2DU+ynVu8nQJXjzvtlBHLpI9yAviXRv7k7kpteVT7EO6krv5RsAgdW5oTEFexreU3ZRimMWLT851hitnLJ037OuluzZ77doxJtYchxijYc3kuY7/EMQPrq+PufXcEL7ovwE77ZQRy6SPcgL4l0b+5O6TLSXVOp5Yfy1CB9dfxLMRA3my89ywN3HG6YG6YG6YG6YG6YG6YDbrbmJI5OfXcEP7pP4Cd9soI5dJHuQF8S6N/cncnT4kBBLlwLiusVZIn80xA+4VzT/fcR6C5q809z/fcb9Bc1+g+5/vuJ81c1eg+4r+u4XrV3Eenmv0H3D9ZdzMRKUZqmRUetdzVo9S+IqcFxHUD9SVA/UlQD4jqB+pKgfqSoH6kqAXEdOP1JUD9R1A/UlQC4lpgXEtMP1JUBXEtQD4nrfJH6jQr6fXUo/T1jYqMsN9Yjez/73kwFLkgpkkFPll5dZzy8itJ4m3k2JFcfXWzph2K4MxXmnuF6z5ufXcEL7ovwE77ZQRy6SPcgL4l0b+5OZBmQxa8Wmu04tRAr7KM5VQHzlQWJBl5iCw/dMPzlxZr28dgPnxK4bUI20T55X7zT0S5krOG5JjX859qC6TnEhtRkE63xEt9hnbLvJJWWw/hmIH11c0/33EeguavNPc/33G/QXNfoPuf77ifNXNXoPuK/ruF61dxHlzX6D7h+shLmxoaM8nrp2T+1bsbaZ+8xHDlViedFFUo8k18JHoJpCE4JSX7EFKSgsVbhB+g1PmRYZZI03xpOjRUajx25f3tWT8yjMBDTZEeBJIYBZFl7h+ou4n++4j0EFoS4hSFwq6HAJRRFeae4XrPm59dwQ/uk8799ZXkVg1WiaiBFfdVcTiXAYJfE2nFInWuJSejf+lb2dwxUOuCfxC5EknFCL12a6w3W8JPOP0LDrrVu6fEWuH7qcUme1FYu35s9tiFcR2lsHJf4ZRKTUocl+PO+2UEcukj3IC+JdG/uTuWnCCHp70ptvgonlpwbQlttLaAunfQt8oK6VSX0Ow10LmwYgNNUrbEll1mJSKYXFJ6NTNx2Kxol0SDM3WkVSj2in7SkXZqWh7+EYgfcK5p/vuI9Bc1eae5/vuN+gua/Qfc/33E+auavQfcX/XcL1q52s8oEbOTMG5Nsjc2FuNhbg4FtlPHYW42FuNhbg6yxcPK9FpYEVeqnkbzSFKzblB+k3XT9J7gyMJaWoizpjtJ/fkr+u4XrV3EeR81+nuH6y7iPNXcR6C5q809wvWfNz67gh/dJ52NS/JntToz9Oc1qO1Yu0s0plWTRcOpKMWC6Vx6IhDzlKt+tkRZT9K+t8pLL1MvdNSY9XXFWViYLR8LweqUwi6lnPz7UxCqWYMw32bSAmyYRHc/gTvtlBHLpI9yAviXRv7k/BqED7hXNP99xHoLmrzT3P99xv0FzX6D7n++4nzVzV6D7i/67hetXJ95uOyt52qZdnSetpaPLlgF+gxgMOR+sgt5tB4HqPL9Gia/qttoQaiRyV5GE+Rc1f13C9au4jyPmv09w/WXcT/fcR6C5q809wvWfNz67ghfdF+AnfbKCOXSR7kBfEujf3J+DMQPuFc0/33EeguavNPc/33G/QXNfoPuH6y7ifNXNXoPuL/ruF6lcl/8A47ONrkjy5uqSlBmrct+SSccP04SFA2TUoiWhtDZYI5J9SuavIwnyLmr+u4XrV3EeR81+nuH609xP99xHoLmrzT3C9Z83PruCH90nnZ20OraJyXVX0C0WpuOLHiR1qahiAi8gqplWwK9ntaT04fqGU+07Lgv30RqFGksxr5lfDpXT53s2MbLti+txDK1tTr62gRXZUmfcuRjiMMVNsuXKfhS/GnfbKCOXSR7kBfEujf3J+DUIH3Cuaf77iPQXNXmnuf77jfoLmv0H3D9ZdxPmrmr0H3F/13C9ShbSXX301MKJGahxkR2ASiSjFW4JX7NZX1+e3bSRqPmfrLuJ9auavIwnyLmr+u4XrV3EeR81+nuH6y7if77iPQXNXmnuF6z5ufXcEP7pPPj1LyLxDq4TyLHi2LLgidDWU1iVS3c92fwoT5WzM+kh9aoIxby3HnDpKuFCYgw2YzMR9hno7aJ+1iWsCAxLtSMjLEpx9b37MAk/txwvO/8AvxtEyeNO+2UEcukj3IC+JdG/uTuSp6I69MkXDBHhJ5FZQFv7cg4tDaFOOIWhxCVo/jqED7hXNP8AfcR6C5q809z/AH3G/QXNfoPuf77ifNXNXoPmcglfs0bbq8Dc0BoDQFpI2DOKKurOIyZu6A0DCI7fqVyX6D7h+su4n1q5q8jCfIuavIu4XrV3EeR81+nuH6y7iPNXcR6C5q809wvWfNz67gh/dJ5zIUaczpS4FXBriPaCy4YhzZiJKE1cJNb1cTPDMVLjRvMRZR30qW6zwoywbhsRI+2jIYNqkhIp+qFFwxGM0FJ2id+cwV1czXk/pWlSxZaS11lQxWrddT4077ZQRy6SPcgL4l0b+5OZB+w6nqplkV1byb+ehS4aVoiMoWQeJ1dTKjHd2Utg5sqJaOSpTV+sS5slMEih1r8ywtTNf8ZQgfXVzT/fcR6C5q809z/fcb9Bc1+g+4frLnOuGY7u2YQq3c/delZH57WWfrOvMyPOVU6v6XUK1Jwc6jUDpFjqRY6kWOpFiFUtRpZyV80eXNfoPuH6y7ifWrmryMJ8i5q8i7hetXcR5HzX6e4frLuI81dxHoLmrzT3C9Z83PruCF90X4Cd9soI5dJHuQF8S6N/cncfiE5qYQuHoER3Vb5HAiKiuxDepat95T70qprpj+4kvU1Y+tC3mYkdhZrZ/jGIH3Cuaf77iPSXNXmnuf77iPSXNfoPuLebQv8A8p1sxBazuoTbW37uwqqFBa02UERZiLksiyK7i/67hetXcR5c1+g+4frLuJ9auavIwnyLmr+u4XrV3EeR81+nuH6y7if77iPQXNXmnuF6z5ufXcEP7pP4Cd9soI5dJHuQF8S6N/cn4NQgfXVzfm2Tb7iGesLYdY246wtgU+2HWNuOsbcHPth1jbjrG3HWNuN/bjrG3HWNuOsbcFPtx1jbjrG3Bz7cLsLo/Tvbo/PXsj9ZO3Dp6bEGpZiu7lzExiYLMRmYxUMVBRmaTIYmMVDFQPMMVDFQxUCNRKMxioYqGKgk1EQxUMVBWJpMhioYqGKh++YjGKhioYqBGolGYxUMVAzMEZkWAxUMVAzMxioYqGKgRnmMxioYqGKgkzGKhioKNRkMVDFQxUDM8SMYqGKhioJzFiMVDFQxMJMySRDFQxUDNRmQxUMVDFQLHMfNz67ghfdF+Am/bKCOXSR7kBfEujf3J3LDcy4EsofC13NQ+8xMSolJJRAruQ7qvRynIb3i5KLOA40bqOuqrIlwSLGDFfQxI/jGIH3Cvj7n13BD+6TzkSnmLmMypNi66Sn3F3jKHVYuXsZlGZcWYmUuQlEC8W3GWuVNt9m4rOzYPIlWRH180hh1xzrxpCZW5K4S00+uXCstxIXGd/gzvtlBHLpI9yAviXRv7k7ls/atX5VsWZVRmiaS6yjTZQjlPYdNb7kObDkplyJJvsOz59qSJ9c4t3iI0XLFo+xOjIaIyaQSv4piB9dXN9Jps46xHJonXXGJiiM5Tinlf+s86dsszbRGSuU6vZPiA6p6wfe+EsSZLEKOh1uyluPoImLuW+bZFmJZGSV52GpTB1y0tuPMttqabuYzrNZLW9eJW7aNOv20lppcx+ts5D73DhPJjSEv8nPruCH90nncwVz4eRhdRhAhRGSoFokryP0mtOlPKqYa4MFLLpUk04y4Sp/Dz8p6UZTaV9/dmhqgdQh8hOplTH5TgerZs+K+zPqq12K8t13+DO+2UEcukj3IC+JdG/uTuPR2H8hvNsttmZp5yorExg2JMKDFgtG1E/kKED7hXM0kZkZtxmGlZm1NNrWlajabNwnDykasx6aMcQSEp9PwjRbyEgJYZJ43iJhosMI0duMhSWzZaMlpNpptlBIbTHYQ8p9OROfOMiSWay0mzMzCEJTjl5OfXcEP7pP4Cd9soI5dI/uQF8S6N/cnccdQ0WK232nDMkfzTED66vj7n13BD+6T+AnfbKCOXSR7kBfEujf3JzIW90dawuSijuzu4MhbzKzcZQsEF2b6GJT5T5ZlMfQzAmGb0YnoF6/JKvdeRfvqZjS/45ht02XMxHZpHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okFZEZHgRmozUpK1MuEsjsiHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okdaJHWiR1okFaJD0s305CSXLpI9yAviXRv7k7lnVqdNZpgVjqGts2kiSkkkQOhl7aTCJdE2bri0s0qWnWFkxTpZh1UYIgTTXEgN/xzIhkGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQhkIZCGQgSCBJIuRg0kMhDIQyEMhDIQyEMhDIQyEMhDIQyEMhDIQyEMhDIQyEMhDIQyEMhDIQyEMhDIQyEMhDIQJBBKSIEXLpI9yAviXRv7k/CRkJcdMlaTY0WxpNjSbGk2NJsaTY0mxpNjSbGk2NJsaTY0mxpNjSbGk2NJsaTY0mxpNjSbGk2NJsaTY0mxpNjSbGk2NJsaTY0mxpNjSbGk2NJsaTY0mxpNjSbGk2NJsaTY0mxpNjSbGk2NJsaTY0mxpNjSbGk2NJsaTY0mxpNjSbGk2NJsaTY0mxpNjSbGk2NJsaTY0mxpNjSbGk2NJsaTY0mxpNjSbGk2NJsaTY0mxpNjSbGk2NJsaTY0mxpNjSbGk2NJsaTY0mxpNjSbBNNjSbGi2NFsaTY0mxpNjSbGk2NJsaTY0mxpNjSbGk2NJsaTY0mxpNjSbGk2NJsaTY0mxpNjSbGk2NJsaTY0mxpNjSbGi2JTSCbzkXLpI9yAviXRv7k7ljatQiWK7jZh+XoSeUq6rIb+3k91TiEGklfxYJ4vq/4BN+3UE8ukj3IC+JdG/uTmQVXMyYUgnLXh11E9DbcNBtxGUGWGIonYjVbYomoNiVO2hVTky4fiIlVz0uzOnaf3s9xuBCOO/Le2EKZNYZddp8f4hiB9dXfI+WJfN5v2ygjl0ke5AXxLo39ydxbJ5zW2mARv67/J+tgSn0vyJUKJMy7smmyd1SbjMNZDbdgxHmDYdXBiORSirXCiLjJjL/AIhiB9wrnxk6uSUKkZjcSvxeB+sVxbqzbvEVtlG4pmItYcadR2rtZFznxPfWS66/Ku3S0WtB1nXX11PaYsWUcTzn7eTEifNJ32ygjl0ke5AXxLo39yfg1CB9wrnL4bYsrxyfZyeDsWLWHBtaJdjax5gg8ITGDqicta1qo4Us4suDw86/wa7WTEUc16VUSZ0CguICGK5i54an3DzjL/zSd9soI5dJHuQF8S6N/cncub12LK2cZniR+vx6xLkVnYy1vrrW7+tOLGfct+IIkFp9DMq2rosvaPnawES1xDg2kGwNaYn8UxA+ur/gE77ZQRy6SPcgL4l0b+5O5ZRVplqfUxVTbOe8iIRYFyhnPpkPQ0U9TJgTa9bkqDZFTSadE+plnKs2TZgOkV2TlE1PblLJ3+KYgfXVzNaSPAaiRqJGokaiRqJGokaiRqJGokaiRqJGokaiRqJGokaiRqJGokaiRqJGokaiRqJGokaiRqJ5GZEWJ6iRqJGokaiRqJGokaiRqJGokaiRqJGokaiRqJGokaiRqJGokaiRqJGokaiRqJGokaiQS097USNRI1EjUSNRI1EjUSNRI1EjUSNRI1EjUSNRI1EjUSNRI1EjUSNRI1EjUSNRI1EjUSNVPIzIixPUSNRI1EjUSNRI1EjUSNRI1EjUSNRI1EjVT4KlpT+x6yBrIGsgayBrIGsgayBrIGsgayBrIGsgayOc77ZQRy6SPcgL4l0b+5O6lKUJyp/mqED7hXIxH/dsj/lseSiDh4uNl/Ke+ksIPFJdx88rKzBERFgX8lj0qIOfUbLxmPQfgMfubpmEKStOKfDj+g+U77ZQRy6SPcgL4l0b+5PwZiB9wrkYjfRIcXNvoJmSmxupcSTOjIqbd2ymkhMl9uLHcfern3nLtt52NfOuuQSXUyXZlczJd4rbeOpfeRKtFQpD6Hoa3lxWlyLmQ9Fv2H0rkvyeJmFNQLGwaq0GuqVJO9nlJupTkKqlSWp8Mqus6xYKdLjWNs88bs9yzqFzA4iYiWdElEuXFtbNTin57s2nclifaoRenIF+Zk9ccmP9hz6zQ4telMT6x6LaT3Zl9WnFd4hfatG2BTTp8999bnEUEl55S2FKtF08B/hlxzRmxV3EVuSwk5BKlNUpk0xGXDupNXCbKaiktWY1M+0zf7WBcWL2D0Rnhu1XcVaJTkyQ3EivSXeEbLGcthyJfWa4MGxfqZ0+fJkmu5iyZNytQpn2JNXGei38eKaCl2Lbc1bFLVzoLDy3rSpaYN53hylN/hh895ZQ0PfRcDfoIP2jcaRKaeO9eOSUZAlfRWOMM50Egm7u0lSeG9q3Z3kmAyjSj2s6baFHjXcZh5lDsytgvyaJbb3DB5JliwVhHXKhusNsubEreXUsMHWSqd1mM1PYs7hhqC+iJLqTi2M/ZZCHDVtJflyayTu343GUhZ10996/mzzi8SSTOWhdO/NkxESJk+GbVkwiNaYk/armVb65VbFkOcRxY5Z5MvbyZc+vqrPJKk8O2LRy8XSqTn8KPuvRJLTjH+wv67QtjNNVMUUq2lHwo00JdrYHMlsQK67XOnx2ksX9i+xXaKn5ka2tXm4Fu5PsWmWZn7RHjImDhcOsWse2vHoD7uSzdI35qUuW77ZSGCEf0q75iP8A/VHFcyU0/DYjRG5FFeRYDYroCbxmTPlxJb6LRFa6fEc3YQJI3tk/d1WQr2cbCLM372zbKTJRY2crZ2cSxsZtsxYsxYz/ABO+mU/pCN6Vcp32ygjl0ke5AXxLo39yfgzED7hXIxG+ikWVe1ZMJZelVUaVYsT3KqpjVZvnHdbQ6g23EU8BE5EttdDDWzMaNptLTaG0T4bc+E7Fet69yfMho5PV7D0lT7keojRdoTR0cbQcZKFWNw5DshLjaHm1NuOcMsm4wsnKthct6ScakZYejumDhNHPTNDlYy5McknHo2GXYznJFTFTAdhG9SRnkPIcDH+w59ZoPwGX5keUuPQQYzDDDKOG4qFowgQWoDbqGplOUiUqS05QxdvEajtVa4a4TEO3q27ZhDDx0rbsF6JKrqtEJ518zpoxxpbAgVLcN9clc+G1OirjPNNoZbS23ZQW7KIuK8/WR35MaQKXhvQgwimwYLUFLyWp1QUqUcluHAXCmstsWtM3ZPsPrdp0PxWmXK2uar23Eo6iYTXRoTNbXNV6XMj30XA36CFrVIsXGFHbU71mpaFNNOoedWuV9FYsYLdjFOM89RQXXZzpv8OxnlvGUKrYhvm+3b1LdqTJOrpkORNu85TPMMPLi2EQp0N2IuBSohoNkQKJiG+y8OrWDmSJRwqJmLIafWZCvgMVzGjHk0kSVvtZ6ggvYpUnh9jFxb0ZlMeO2whvh5DMl6S1MoGJb7yziMSW58pa51GiZPTOEinQ8UZQZqYzNU5WokU7bqIxNVsFmujEwyx/sL+u0JLKZEd1hbtNGeqE1ap1DGlvrfD9BEdcYcbiUMSLs9NcFLEmVYM8LVDlVEc13UE40ttTFBHaJlC5VDGknJxeqI7zjy1FAdfv9+6I/pV3zEf/AOqLKqiWZNpl0/DUSrU0+Qf4fZcefW09RRVOsOMIoWmIrDEVuhiM7E2C4diE8RhdJGXGfYEukizFy1OLo0nPenIOjZ3LjzQjelXKd9soI5dJHuQF8S6N/cncwMZT/nKED7hXIxi8ziSdw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+CffP8AYMoNCcDfQoyJSNw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+Nw+DU+8WQ0lgWHccQS0KSNZ9H7HuHxuHxuHxuHxuHxuHxuHxuHxuHxuHxuHxuHxuHxuHxuHxuHxuHxuHxuHxuHxuHxuHxuHxuHwT75/sGUZUYG8hR4KRuHxuHxuHxuHxuHxuHxuHxuHxuHxuHxuHxuHwTz5/sTKMiMD76tVpajb3MgbmQNzIG5kDcyBuZA3MgbmQNzIG5kDcyBuZAJ+SfkyjIgiMTvtlBHLpI9yAviXRv7k5p8yC1tORpT0jcyBSqU5TwlrIQWbKbFlS2kcTE4xENqNxDGfaW+H+JDZ/YFdIblzpokXzsFqVviuVsv6U+JxKh5xCXD4hdKDFlOwnnJEZDr38FQgfcK7mBDAhgQwIYEMCGBDAhgQwIYEMCGBDAhgQwIYEMCGBDAhgQwIYEMCGBDAueBDAhgQwIYEMCGBDAhgQwIYEMCGBDAhgQwIYEMCGBDAhgQwIYEMCGBd/AYEMCGBDAhgQwIYEMCGBDAhgQwIYEMCGBDAhgQwIYEMCGBDAhgQwIYFzwIYEMCGBDAhgQwIYEMCGBDAhgQwLwsCGBDAhgQwIYEMCGBDAhgQwIYEMC5zvtlBHLpI9yAviXRv7k5kHeCWlurWP0O0ITBRIbMZJBFJPQ0/Gbk0KNVp2DNokTGYba59Kt+c9LjP0Tb+6zW9PNfgT3nyp3X389jCo3mE6S11r5VcWExT1yauCUZP8FQhmZPqwzrGdQzrGdYzqGdQzqGdQzqGdYzrGdQzrGdYzqGdQzrGdYzrGdQzrGdYzrGdYzqGdQzrGdYzqGdYzqGdYzrGdYzrGdQzrGdQzrGdYzrGdYzrGdYzrGdYzrGdYzrGdQzrGdYzqGdYzqGdQzrGdYzrGdQzrGdYzrGdYzrGdQzrGdQzrGdYzrGdYzrGdYzrGdQzqGdQzqGdYzqGdYzrGdQzrGdYzqGdYzrGdYzrGdYzrGdYzrGdYzrGdQzrGdYzrGdQzqGdQzqGdYzrGdQzrGdYzrGdYzrGdYzrGdYzrGdQzrGdYzrGdYzqGdYzrGdYzrExSjjqxRy6SPcgL4l0b+5PwZiH9dX/AACZ9uoI5dJHuQF8S6N/cncRqOFmbzuYmRpWSjMgQbksOx9y3HmR5K1oY5KWhGGbklaFKUlIjSGpTDchjOglkj+CoQvrq+E4l4JdyZIREiPSFx3UvsNvI/DFymfbmEcukj3IC+JdG/uTnMVlYUYQaTQRpmLTukoJfrb5TMWXpfDyLewlxHrFqPrWcRqYa2bGa8+TA4rZJ5mBmnyrRcuz0LaTMYmvy3aVhKL67WT63JNzOacgPrXTVMVmrNc+yoZr8axfOfXSWS8dQg/XVzkypj9iuDBKxdhRTXau3cZrAjfuYjOTK9cxGXjbEqU1EQhb0m1ix1vIXJuSVEzxlWkVMZ+Sb19BYddbcbuIimpKnIVgzMcW2X5FX9eCXq8FPmrucSryUE4UKs9LCV3E+kvAP+vB/wBH4JeavBT6S5TPt1BHLpI9yAviXRv7k5rSSkmQJiUwRojsRlt4maUEnE+RsMqfQ+a40dZvZ49fCjMLjsJix0qaWUiOxLZUxJerID7rbzz1bAfkpkvFFjlKOWUiBDluNuyXKyvdJlLhwIZkwRt1le0+b7fjqEL66ucuJKZnuy4saidZaJaXo0+LPkyYT9JJajRmI86rsHXM7U+IU2C9FWiqm7Np5TlZNlG9JelVdibE2Ey/VSXIdkyVrUPT3pxpp4DjEl2Q9+RPzLwS9Xgp81dzin96R5A4Y/8AgopdxPpLwD/rwf8AR+CXmrwU+kuUz7dQRy6SPcgL4l0b+5PwZiF9dXNa0oQa1MuoeaQ62chhJmRpWlScyW32XTMmwtaUJNSyMlFiTb7Lpmltx1tpOdxtaHE50Bp9l0zJtxxDSTW4hSXEktHfUZJIzNKiUnMlt9pwzJsKWlCTUvOgkZwhRLSSkpUlWOHhuLS02pxba0uIStClJQkzXiWGIbeadx0wTzWppgzJJGZtuNupNTZqSRkRmokkZq3LAUpKEmau+r+vBL1eCnzV3OJP3hx2xwx/8Vk7ifSXgH/Xg/34JeavBT6S5TPt1BHLpI9yAviXRv7k/BqEP66ufFiFm/HW/wAJtw/2dgRCgOrnPv2O3k8JGdSTlXJm1qaYXRndb0Q4W/4YiRQtNYu3gM096cVq/Yes+FSZXOnvQuK23V0r2mTlZJn1qaZ9hu34neYl1bSaviR+uY7pmSSMzVbtlcJhi9glPireW+txHBULLcnU1zEaXUl+6RcGdzvAthx6gqTKK5Iix3Isao2SIpR4Xh8SoWayW9w6iMTZuwrvG0jTXhcljSMmbDkF+3h9W2JvJgSDY0abqAnkEhu0qYcqZWbV67NyvlQtC4rn3HmW32lNO2lXAXKjQI/E8IlwJMl1PpLvq/ruTpSo78ZCe4XqPwS81dy//dytQOHP2Zmo7ifSXdnzmK6KcmSRkZcj/ruW1kzVx0vvPz3U8XR4hc/9eCXmruMTW35kmKnuJ9Jcpn26gjl0ke5AXxLo39yfgzEP66ud0mzQZPQ6CBKXLZsXyl3UJbzLq6Cb1AhkrJNjdtsxAicci0lVyXeGn2Kx5iLEhWsKhabjT02N2cZhcpibAvnrNmrjTXLiTbP28WfbU8dZ2SbG9JiKJ7E2DcnaQ6iLLftH7ab3XG0OtqbWfDcPrhKykxiTWPRo8WPPj8NsMMqgvT8kVs3JCpa2Dd4cfYrXWI1FFfgVTaH0VsmTCnPv08R8p6JC/DuSnIQ6tiphSHHDlvy6J5qrdjxpFdLKHDND5S7OTFxYlrlqmNtLblLQtKXG5cBiKiC2iTOto8xdiw67PrnEIcdOS42qpjvE6/NlXzDsmpkMsJ9Jd8/6C3EN4Z+U1BvvScEOoU2SyiTY01BriqUlCTUtKiURKSTiTdUgucybGgs6sqPaw5SySxLmtNoUhuC6tbRtugvNXK0totWhs376e6xEQiCuyOQ9VvvUUppEuyZc68iFYqhqefaZbNxwlEtOYk+Rcpb5RmTWGXUvNk4i6uWqxbLQuFdbKiVq6B85NPFWpbraFJQuNdokWzkLlJeJhlSwmW1s905avMX64rEeI+qRG64XazkwIanzrJ6JsBMk40+JLMtv/o+T8liM2bj8m8gMQSmE/bQWGSec6/qf/AOWsXNpsJnGuSlSSBeauVxY9XRScRWWTVgyTqaiQcayKyei2sZ+TtFyX0R2jcU04l5snEBPpLlM+3UEcukj3IC+JdG/uTuW3F9kixfbiI4zuErJa4zxSI7b5ED4iNDT0lZvNEThm5NiNLbbcRLLO+T7UuM8yb7LcyK7HOS2U6IcY5RNOtvtE6yiXGckKjITLiqeWwRcSVWx3oRMQb7pGxLjSEKWwxMiSf3YjS40slKjeIYh/XV4CGGm3XHUfiG2kNZib8abERMZ0lr4Zrnf3fLh+KRYF1BGBcN1xeX6Xqf6f4frXnUukvhyC6WDyOGq5BZSLhesJeci4dho9HUEYHw/FPzZ4dgNOJcJ+grXjJRlw3T5MoLh2HmNZdQRh+nIRnmPqCMEUENCzcDHDlfHPM2xQ1zMvdIlUFXLdW881RVrbGgC4Xqk/uguHYiCIklw9FIzMlcOQ1/sv9PRAXD0VJftEo4UVbrhRuHoEZ3Vb/T0JJmbZ8L1ajM1/p6DoNsF1BGBcNwS8j4bgn+y0UMBEhb5LoK02FsE1w3WtrQo18OVri1mD4br8+ZvqCMFcOxFpMlo4arkLQoI4erilHJNHDVY2vMnqaAFcO1KwfDNQaDIJ4XrUfu31BGHUEYR6SIxIJ8O8OwHHVrJ+mhvxWIx/p6r0iaM+HogLhuAOoIwZbJlpDSRM+3UEcukf3IC+JdG/uTuE9EbkydeQ9XbU2mSBBcQ9pNaKduWCvWF2cdxpZrYlQHn35JOW1dJW9abbYpfiz316Lr8Jxx/hzX2SzerWHWLRhmNRwHkO1zEnauFw6/GFvEdmO2RovK15cqzKI+hiZdOEjh0nt49j4ihD+ur/gEz7dQRy6SPcgL4l0b+5O45BjOrNayronjvstSWVsPwauFAUtcbxVCJjrKwwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcGDgwcEsl6CsUcukj3IC+JdG/uT8GYhfXV/wCZ9uoI5dJHuQF8S6N/cn4NQh/XV8J/vwS8Eu84+SJLTHh/wB89wneHG8cjxLlM+3UEcukj3IC+JdG/uT8GoQ/rq5y7aRDvlodRbLYXO1mrppZkhxu8jOkvJPnJh6SCZtCWuO04/dtMk4RTLWY3sdJ+7Q0t5YlXqIy5OJ3TbW5KWu+QwzJOS7buNGy0cd3XYQ6LuTOevNnHrp8pm+QwX40/MvBL1eCnzV4KfSXemGfXMM+R/14P+j5mZlfl3i81eCn0lymfbqCOXSR7kBfEujf3J+DUIf11c9gS7CU+6jho0Q3WDKnd6tlMBik0J0N8rKE9IcYkRnq+xdRHeV1TL20pJtUkliFHQ0/Ty1lKiNyahb0WzZKzpusXpJr6jechy2l3EF+cSEorIyocBmMq6o5cqy3kaLSTVXW/kfjVf14P+j8EvNXgp9JCxlbOKbxXk1cCpky2lTsNjzm/fZ+R/1zlyDYcjpIzIiMz4dsl2tbuXK63XJ60zRnNaM07y/2JzxxoT7xUkxVhVRpa1ftaZ+8XmrkqzWXESKwhAnuSbexhqsZW0YJwO2akcRMVhck+kuUz7dQRy6SPcgL4l0b+5PwahD+urnMsIcHLuodlBmrUiLKlR4bWpJacQ62lxv+E44hptS3IlhEmKNMcLtICHtFciUxFRnfQ4hbZOJZdQ82TjfiS50WGaSkxZ8SYaijLtYCH9BX8FX9eCXq8EvNXgp9JCxQTpMsnfrN/hhLYjOG9VQHARkZEZCZ+5zl8j/rnb/WimL5/b00x0uFmSiomwyqTNC3lis/aC0nl/oxxKvJQzRw0WgzLhBz91uud4vNXJs8/FJTB5kKBZ/qezWLgjcSTZZid4mROLkn0lymfbqCOXSR7kBfEujf3J+DMQvrq53aXlX0I0VU5G+chP2eN0zPnqpf/h4X8FSyQlSldd1Y4hfbcVAQCcQVlEKa79JQZfbbpXYoKM8hqufYQRtw0Vr0KTGkNmUbxLApB3TKmoMzUeeivMvpao3IhV5EiCwgv4FxJOHWSZBcPSXJlPGee4rnPwKk1xmHSfZQ8misnZlpZsuGZJLE6qQ5IiZ3Zed6ShhuE4b0Rp1RernxLZOwFwCa58U2TteiGbJWbv6sOEC81CNdumu8NyhnLeoWpUnhe2lzciJUa7ku09u8KuXIkwGJ625KztHY52bzjMJxbMiRhXrkIopzzl1YQ3OKFOGqBHZQhwpTEJVc/tqGS4KuS7Lp65JzlzHl2Bom57SykMsuXkqMitNMY3GHibeqpC5ETO7xLYvwWD29vbvmxVOJ4hPVbhRRCcJmzuDOAbhw6hxdBNdcurOGspays3GVcKWL1hFfXI4sdWbEeKh2S5Bv3ibn7iS9bLanT3WKKY4zQyVyIyVLtHpByrCc1dnIlTJu2pZq5zCnVl5qHEK16USM2wgmYcBRbqU2aLQoGMbbTF8NLVMqDkyoiDbo66SqZJWzLitpjSVuWElk0ekuUz7dQRy6SPcgL4l0b+5PwahC+urnaM2ZSmpVfErpsqxXPs5fCsYoDrUSkgFW17bB/wADAjIyPaRhawFyUMrjbWfPlsOTVtSH92y+yxbxoWxREjOV1WiMw7VKOqcjproz6JMmVI8SaieiUiREYgSZT78qcy3cR4ZQU1sQoMFmKX8DiNKnYbLAoT03bGKLZJSreBEFFJ0uHW1u0jRw5VStdirCC7hGSTUx9oo//lNkuCvPKh1oF6j53LB2FlLZKrkbqujP87lg7G0djiuW4uLFuHX3SYYeeU9GcbYqkB9049deREG/sHrQ0LiriTayGKLF6kmRTirJRRpgl4LkxWhmIoDLCqcjYeqJarAtfiKCgWaFscVMOESDJmVDFERlaTY50x7t2zM+Dm14S3nXUvYz4pWD+tCiym4xE1MkNFxC7i+hIbhLfduGA2/vrGrMrVw40yyULZhcSuioboTW1MgSV3DimqqRORTs7C4ciDiUzXKZJFmee4gjhxG4hS33Ipm63URT4fMmF6B1rO8o5Jnw64t2qlTn+FlKTGYaWXmoXazctWkDiAjjwJZN2bK4vCrDSbFhZ0VMhDr2xZvmUymjZ4UJIllrLluFF/8A0b4R6S5TPt1BHLpI9yAviXRv7k/BqEL66vgEiO1JQSHnKCpdWa3GKKrYUamV8OU6zM1O0da8gkO/pumH6bph+m6YfpumH6bph+m6YfpumDNHWsYkz+m6YfpumH6bpgzR1jGbROkrTZNkfpumBxI56eMmnrpT5SHn6SskZNY6ivUolG/Q1ch03Xv03TD9N0w/TVMH6yFJjojvQ6mvgrUuK7EjPHmcapa1qTukSaWslvG8+mqgobQ2iNDjxkG2zsopqUoFw3TD9N0wYoqqOvUZYgRY5L0mKKrYMzZeoqt8yN5yMw4WC36aukkSXS4cpw9R1j5kbzFDVx3SdZcp65xo2VxokeKylhhmogMSlSm36KrkvKeeYjMR2kNNIqYCCwS7QVLzq3XP03TBijrIy87MmviSywkJrYafLaRzS2g5NRAlPpffdqYLxLJz9N0w/TVMGWkMNIabEz7dQRy6SPcgL4l0b+5PwZiF9dX/AACZ9uoI5dJHuQF8S6N/cn4NQiEZvKwyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyrGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyrGVQyqGVQyrGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyrGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVQyqGVYyqGVQyqGVQyqGVQyqEsjJhRmjl0ke5AXxLo39yfg1CH9dX/AJn26gjl0ke5AXxLo39yfg1CF9dXwA/B/sy/hEeJeAfdcnLReswO5/f8IjxLlM+3UEcukj3IC+JdG/uT8GYhfXVzuDeRPxlV07FcOKRXLr2k3HOzlkbDBSrpyKhhDx8RkcZhaJV06wUVBuuTZN9AQtq4NcCDKFA4tyuM1xbuS6xEmOru1tWKIzzFubyIiSYvZj7cN0l8Qm2wSXW79TzTWjNtp+2NLT9w+3YHCT+LPzLwf9eCnzV4KfSXgH/Xdku/8A56iI7n+z702UmI0TiylIOacXkXmrlMfKLGcfMj7yfSXKZ9uoI5dJHuQF8S6N/cn4NQh/XVzlQZSpJvxCpNBETZoozZZZ0F1DuVhxLtQ4tDCwutknFbbSVItmEzEiwahqE7GW0zQqbNhAr4hQoxslUUshMKC3MZoNJbZFWwl9czJ62KhDDFe0S6RJmtxCKtX/ALVT0mnJ8peFhTuzyNt78WfmXeq7BizjG+xyL1eCnzV3GXkP58ncT6S7r9tHYresFeZcj/ru2T6I/FhS1yZLcaI5KXEkIlRWn2x/ruT7FiAhanWHEvMoeRYNk6qO0qE06xJYU+C81crlJuV7jQiKzxWld5PpLlM+3UEcukj3IC+JdG/uT8GoQ/rq52FnErUJVJr7WFY5yjTb+tgvnHejPsymEPMfwpctiG0b0g50YoO9Dd7XuOJQgSbmDFeNlxyfFRGTJEWSzKZ1WY0lqU1qs+HOnxYDWpKflsRo5yHoVrEmuqaZlW0OI8bLkd9qSyl5nxz8y7kiQhjLmXIQcJUlPCRbNxEbmiYwuc5ELuVttHsDWTSZLStbBl1DzKHUBPmrkTqDdU0U2WxBjrkSGLdmvNwnYcxiY1qMB1xDLanHAn0l3LeShiKSFX6DcpNg3Uv7qsiv8j/rktSW0GtaVEtJKTLsIsP683JJsn3RcuGjhyRGPhlwlUEQxClszoyJMf8A3zmy2ILBvyOJSN6G86Kizbj1lUw6c9t+9TBKVgUmIrkXmrldSWokdt5+qUSq9nB59DOTOHXEMtqdcIyMuSfSXKZ9uoI5dJHuQF8S6N/cn4NQh/XVzu1m1fQXolW6tziV9+fw25aOQn3YPDL7D9cej/AWsm21LV+oa4To8aVFXOMmnn+EWWmXp1hAJDsvyL9qNc9cRxyJFbKdBYehmlbSX4bldOjvnoM+HxBDZ6tnSxOLVmU7C7rBE2seS+uJUtvPikiORIWV3xz/AKEuW1EJs3uTUhp+xkGHLeG7w7PRHI0MzqV1Eh5EeO4+4uewhEVRwnTPjJ94Q5bM1k3mAZkRCfcsFSPTI1a2dStCCTLjlLTXogYtm9GGojU0wuU01LbiqCpbUS0W+9xOnfrarSqTadmx3xwzMYgSHK592+q2XSaXZzI0km4CIbmrDacDTiFGaEzJbMJg3nlrS0hS1qcQlSEnxo8tciOy1Peb62iErhydGZqiYc63gb7ZBMtlctyKlxxDTZrXJlMzIUltmvURQGzVxC71kTcmIw6WxNZcSnjMZhiBJKBwvOI+ED0YDkBX+zDz7TCSU7KnxYccpD/FktmdSMbacts6WmB1z7z1mIb5xpUO5el39WvRNMW7rpb6WGC81BbiGyxXxagn2YUM+GH0NQtg5INM+bIjNnfVrZttvWWCo5NCNNZYWzAdCfSXKZ9uoI5dJHuQF8S6N/cn4NQh/XVzsauSuxRZV8GrlnZlZWRVNnAdeKqpq4quHoF/CktG9HdaJNWZ0zcBS62wmZGp+SRuzWCrZ8Nbqa6vg7CEbLbdYXVz8Z2BBfalHJleHaRlTa5+MifXqkxmkoYgzHprUqwfr7NVmuYiGUomcJfjyH2mEEt69Wi5lFGjQruBIiNPrct65ttSzNEthpOHEMbSnNtM3CiipNR3k6LNYar2CakSiXFJchxqmi2jVEtimffrnuta4XdrH6tdaiaKWZmxbvP/AGkZieg4rrXDyJI60r92w+jrGFvd4J8gnrF65a61rhZrTa7eKzXSjmxp1o7RRnUPvML4oaU5EQbcCMVpVTHxHmLXYNXDkCygNxzbOHYw0PpkKvVsXL7FayzbRZtXFZk7+M4RLUyTVpZzHEVyysLSsURSWKu1mpkxmj/TZuFAkk3PYu3bm1gHFNIpjTXSWGJM+yY6ulRIzDbpSTiIisqapVh15NjxKh1uy+tPgFXzmGb2TJc60rswKyguT85svtSrZiMhmOa+JUwhrIXCrYYMnGiFejSmPMFYHhFNQvVkiM3MQm0rhYzoMo0ME7MZsrSq0pjqK22cdXVPbScxZyIzBWsWyfOFbxpDFeci3c38t+dFRb1y0EomlJW2laBM+3UEcukj3IC+JdG/uT8GYg/XV8AeYafRkeKvhJ9PVkAdWQAphpamzVkQHYzD37OlXQUn+zMWOwaza2MMHXwlerqyACrYJH+yYrCHNRLzDTzS2nMiDTgOrIA6sgAq+ERYF1ZACIMRtKkoar4bRZUZEF5ZEhhhphpDTSYkdLZtF1ZAHVkAFXwU+XVsAFV14YiR45GTDUSMyo1NPRI7+GsuHGc9aa2ClsmwVbADkGI6Zm4VbBI/2S02ksCUy0tBoU1GYZTlaOJGU9rKXAhuYZ+rIA6sgAq+En0txmGjM20w4qXTdI20GZY5EhTaFpNKthDHVkAdWQAzDisKzMvRY75YPrix3GiaW2022gkIVXQlGalNRmGUGhrqyAEJShJIQJn26gjl0ke5AXxLo39yfg1CD9dX/AJn26gjl0ke5AXxLo39yfgzEQsXlEMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMgyDIMglowYUYRy6SPcgL4l0b+5PwahD+ur/gEz7dQRy6SPcgL4l0b+5PwahD+ur+OuVHbUaVtuIcTmb/AA5+D/Z+CX99y4kriVUqQ3WvnJroz6uZHiXgH4OP7+CX9+Ck8S5TPt1BHLpI9yAviXRv7k/BqEP66uc56VGv5Mxgrc4yZzzEuznv1b+lPdlRq115uVeOEt04l1Klog2EGY9ZvNs3CykW1iW+Wy5by4K3jm1VtKkTSYelMvPcVRCONbWbldGkqftp8VMhhx6xt2usEibLebrFyorVu8cGS8HrJ2dEdZcd4hk7l42jtZRWxxnBXsk+cp1XBJmT8lH4hX9eCXq8FPmrucU/vRSEDhlRnRRO4n0l4B/14P8AvwS81eCn0lymfbqCOXSR7kBfEujf3J+DMQ/rq5oiNomuyyboYLTDzDJ1LLkJ6K80g0NpQbNJCZrnYJHSR1tSEPTKSPLcfWo6mMaJaDdrYzzudyFWlEczg4re+TMHVEbq1uCSKWOSFk47XMOnNNTsVDsTamdEwtDmqikjYOms6hncLdQ7UMuv6jgLhkm3nHI9NTNVWoafw6v67ilpSaSPuF6vBT5q7nEf7sRGhwweFatruJ9Jd3/+T5H/AF3TkMlITHPn/rwS81eCn0lymfbqCOXSR7kBfEujf3J+DUIf11c7W1jViCN2nuI9o3ghfETJPvNN9ZsorTnvxeIo7z7TLgd4iYJx0mCs4Z1vWJRuI4zz7LblnbMVxtNqq7ZixN1CLGxi1zGrJjW8SRV9ZBriWMtbZu+BZ2kWtazvt2cU61E9dVasWiHVsWE6PXxjfkRb1h+SiO69dxmJC2TlzGozrDR+JZ2bNe1/51tkzPaM0WdmxWMkt+XYNRYaZKo9mb7xNBakoSaldfMEgnjnWLMPIlUGyaluLZNFxEcnlDaUokpNSuv4+GsJthGhMk47CkomRWpDfeV/XLEhiQsjUb6VJIyMsSIyMsSx5F5jEua1pQRqWTzRqJBPvJYaU4uM+mQ0SyxIJwxUMSEiVHipSp+1sWayLruzrFmdJrTTw4tBrsUIKdFOYcMGZJIzPEgkyykMSDrrbLanHEqSoiUmbYRoJNm/xFLckwWosGulonQWJSQixivTnIKMSDrqGW1OOIdQtsnE8U2a22IxQrR80cVR5ZS5TMNhb78SS1LYQ+wS0n5YlmBGQxIg/KYjsm88p1tBYr3DP/hi9IaYLFwpjRytuQIyxVynTY8GMqRIjS2JbeoxT27j93KQ5HlMSUkbLjqGm1OOEZGWJYkE+kuUz7dQRy6SPcgL4l0b+5PwahC+urnfQXnpSJkPh2YlclhiVXwLltEk2LGwXZ0cNcnjTDqYlDHBOKqs7Q4spVI+qKfCcJtjjQklQrEXFfGT+sf7caoyPx2VqJ9dbAcseBURmb+dNlUL7LsHPsmM/dec0mVuA7t3r9DomoafrnZx0EZl+grye4a+4thxFEkSWI70W+ly5jcNQsavJulrZluollKXBlNTYrUpnw72ItZrlRqiWjPkkSZcaZAnznZSFz66FsnHZ9dKj7haULQpK7xEzauoOWTqJsSyiaz7/EMF1chpti6q2mprG6hvxy3M1NWcFdU0hVFGec4e/wDhIXfmxjlMk0TvDjT+GuVIY6lUCoGizYFw5GL0lw3CbVniuUBPIyOooG0IJKS4cZJ43CKjMvLqVQ6kUF8NRXcpP/pivQZHHPhmAZ5zKhwWpZdSqBUWJ4n1KoL4cjurzPtcOsIWhYY4bhMvodEjh2A/JXINPDVaTeRZ8Nx1IwUijNCCIipVA6L/APcdDnwzN0OmgkoRw7DNa3JMbh5iO/rkmgeZXkir4ajuLJxz9NxkIaSjqRQOgSD4caW0bK5XDURiHMWxSQGLdqasz4eZWpBvnw5GLUShrhmKwZHG6lUDozMsDc4aYeIifRwrXEYLhWCZln/S1QC4XrUmam/0xCyZCLh5CfQVKodSqDVEyT6Hnz4cYQpRxp1A26xCZjFwzALBZLoCXhmRQIQgkl1KoR0abKEcpn26gjl0ke5AXxLo39yfg1CF9dXO2qG55pfRTUxQMr7x0L7C3tgVFDKnOrDNC+t9hc+MUxy7mKdRQyYpLagN0UNFOqrDVA+t1jf2lQcx9qWxV1OyeekvworseJoPRaVlmk6pc6gfe0mpvfOCg7NM8SWdeM6yK2JsYDEQodZtN9kfqtzXNxHmKd5UtmTPnQimrYJyfXLkPtyWIERuDEaiteHa1ZTMXWq2sTELO9LqosiI6yT9Wy9CbjJaq3VyWn5sZl6SU5Ew6eUtnarl12qbK40KuUzIXKkvQydnxpQTHWa39U6eSbO0UbSSYNpNfGKHCZil3j8y8H/Xgl5q8FPkXgH/AF3FERpNJ8GxFw6lSHOf+vBT5q8FPpLlM+3UEcukj3IC+JdG/uT8GoQ/rq/4BM+3UEcukj3IC+JdG/uT8GoQvrq/4BM+3UEcukj3IC+JdG/uT8GYhpJTyiPTQNNA00DTQNJA00DTQNNA0kDTQNNA00DTQNNA00DTQNNA00DTQNNA00DTQNNA00DTQNNA00DTQNNA00DTQNNA00DTQNNA00DSQNNA00DTQNNA00DTQNNA00DTQNNA0kDTQNNA00DTQNNA00DTQNNA0kDTQNNA00DSQNNA00DTQNNA00DTQNNA00DTQNNA0kDTQNNA00DTQNNA0kDTQNNA0kDTQNNA00DTQNNA00DTQNNA00DTQNNA00DTQNNA0kDTQNNA00DTQNNA00DTQNNA00DTQNNA00DTQNNA00DTQNNA00DTQNNA00DSQNNA00DTQNNA0kDSQNNA00DSQJaEkwoyRy6SPcgL4l0b+5PwZiF9dX/AJn26gjl0ke5AXxLo39yfgzEP66uZqJPn/Ket65hZtOxZkaYk1RvwBmf7eCRnmMvBI/Mu5cvLj1Ex5Fa6p+uiuq5keJF4B+D++bwSP9z8FJ4pLlM+3UEcukf3IC+JdG/uT8GoQ/rq58TqTLktVxt3qyaYmvOT7c3toIsmxl2TTS2LSUc+IZNT7I4UCxNq0tH3jfZu35LJQ24sufaFKkx40m0msFJbORZWin5e1mS7I+tnmU2T6ytlBdpZSF6UeZMkNcPPTTVNnQHoy362wtHTYeXQqmP1zEqXFesJmeYh2ylJqJkknZs5m0PdRnpkNieaLGfYVxTI4eXaIlzIqV20+WtpDESVZTJ7LThCrQS5Mky4L++f/Aq/rwf9H4Jeau5xSZlQTRw4vPRQT7ifSXgH/Xg/6PwS81eCn0lymfbqCOXSR7kBfEujf3J+DMQ/rq5txmm33n0LqYLiMi5lXDnLJx9qHHYe1W2aWvZebdbTQPHNQtZ1EBUo5JvR2n1NG5MqYMx03H3YUZ56O85IqIEp833lQYyikpN+mgSV53ZFPAk5M8+GUmrfhMwqmHDcJ5timgRnNRqOy3GYbYaXTwHJW5U7SVzzy3XDqIKpRyTXVQlqk5kU8BDLrIVFYU868p6mgPIaStmHGYd1WgvhyGb63kVlTFrM5sfgD8y8H/R+CnzV3OJ/3qjQOGP/AIRhPcT6S8A/68H/AGfgl5q8FPpLlM+3MI5dJHuQF8S6N/cn4NQh/XVzt7ZFflZRS3SLDBh527fckvNV3X0Qqg7Jbd4+2+w3Pm3D7NicGLXSpUlKzlWdgzWRFSHmbqQiQy1PmXD7NiuDFrpMqShZyvC/bEWtmiuQ0QhXC3JpQpirqUuXIYiQnn32CXImTp7EhTbDPEOLU1b9fYKkvvRn66aU4nXG/DtrMoJG23VWSZxG2u3tUVqCMTLJuLFaeNizd3Tcea5OsUrVhVzTnw0yTOzlLffbiuzjjV5ypjdpIS42Uvwj8y8EvV4KfNXc4j/dmGgcM/tAeR3E+kvAP+u6chkpKYx8/wDR+CnzV3KaYb3EdwyfcT6S5TPt1BHLpI9yAviXRv7k/BqEP66ud7EakykLYoJ0kn2IEvhmFMmVqyKgmLn1jm/QauIZ7TxOVzkm9mON0cmWixnVkni83iOrNqdv6R+I+FV7kq8muNUcmUU+dWyvBdUpLS1IObZfqJDprkNtQkzJ1ay9Yzyt5MSreeenLa4dmPyoz6JV1OKurnHxDpUJpDgyHYjm7chIrLZRnDbLw7yM28pbjNVNcQZsS3bCI/XT5DrhFPhwZMGyXOfkV+vduqWhuvZZbQy0hpuLXOOnJUiZKlyK2PnmJl1OlKLwj8y7losylRjT3P8AR97yBGRliQLzVykyWYpIU8pRILMq/WRPVmbhtaVlPJCZrC5zkIuSfSXKU+mLHcfWlRLSSiEuS1DYN9/kxZk9dyq/ucT2jtdBZdivvmfGDElPP/Z+CXmrnGlNyTcJFEsmrdEtUGTuoyHu4n0lymfbqCOXSR7kBfEujf3J+DMQ/rq52lTGs0FrU9NGq0EaJPD7D0h19l2jiLqurEM8OIZyZJ9KxMklLRCqI0KM8y0upiu1ia56LQR2ZDch6fSsy5O6TWVkasaWlnwjhsHNKadtUM2yGkPxKYo0hDwk0TDslx9kqeKmtOvalVzMqRGedEOE3FN1SIlLGiyEOo8OzrWbBv8AetrWYCP/AAmRkS4rsdyTXsSoyGHItW2zJKQ4iE0mcuaDjluikB6naW+48yVZEKAcAmaZpDzbr3hTZkeEyT0mbxOwSkorm+JaZaCWP1HTB27r3zlGs+KWUtmTkG+ixMWJkviWAhnCFG4nhLZLcFxTUm+ZG3xNTLIfqOmB8SUxFiJ963YkzFrmuIX2Da6zmXM11vO1Ev6mMo2B+pKUHxPTodyD9R0wuZcS8fRGYlWyL2GzEJmW/aS6+I+c2bV289xpgpMozuIpcWsmgN8S060EZtcT05rNAd4mp2/KVf1D5soELiGpaYSyudcP2T2SomWUe928A6ziWC1DaZsZHE6M+MSJLjsOw7dw+I6YP8TVi2lIak8Rxl1htRomXdFXSIi1MUi35M/iFiSztquDxHHjQ9CfGv4u6KTK/UVMHuJqhssUOcRolE2xXldz2kKr2D4thE2WB3FwWRZlxE+2tTUl3iF5LprS3xVWGeV4uIqYfqOmFncpnNJg00a6YgFkmOJKLVUjrjE2UiyXcNyeJKzSwYZ4nrTT/wCf6jpgw4h5lDrYmfbqCOXSR7kBfEujf3J+DUIX11fAMC8jyJGRIyJ5YEMCPzyJBEReWVIypGRIyJGBDAuWRIyJGVIyJGVIJCRgXJKSSWBYEMiRkSMqRkSMiQREXkREXkaUn55SBNoIsCyJGUhkQCbQSzWWBAiLyLAsRgQyJGRIyJBJSR4lgXIuWVIyJGRIIiLyMiPzwIERDKkERDIkEXKZ9uoI5dJHuQF8S6N/cn4MxDMifMv+ATDImDII5dJHuQF8S6N/cn4MwtIM3Ri6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXRi6MXR/6oxdGLoxdGLoxdGLoxdGLoxdGLoxdGLoxdGLoxdGLoxdGLoxdGLoxdGLoxdGLoxdGLoxdGLoI3QklH+6k8ukj3J8T6N/cn4XKMoykMoyjKMoyjKMoykMoykMoyjKQykMoyjKMpDKMpDKQyjKMoyjKQykMpDKQyjKMpDKMpDKMoykMpDKMoyjKQykMoykMoyjKMoyjKQykMpDKMoyjKMpDKQyjKQykMpDKMpDKQykMoykMoyjKQyjKQyjKMpDKMoykMoykMoyjKQykMoyjKMpDKMpDKQyjKMoyjKQykMpDKQyjKMpDKMpDKMoykMoyjKMoykMpDKQykMpDKQykMpDKMoygiBcukj3J8T6N/cn4XAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYDAYc+kj3J3y+GdG/uT/AJP0ke5O+Xwzo39yf8n6SPcvfL4OXd6OPcn/ACfpH9yci+GF3ejf3J/yfpH9yfE+jj3J/wAn6R/cgLmXw+psHaqxZmsVXENZasktjcxxuY43UcbqON1HG6jjdRxuo43UcbqON1HG5jjcxxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuo43UcbqON1HG6jjdRxuY43McbqON1HG6jjdRxuo43UcbqON1HG6jjcxxuY4teIayqZNb9tYO2ti/NfL4mZEYypGVIypGUhlSMiRkSMiRlSMiRkSMhDIQyEMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDKQykMpDIQyEMhDIkZEjKkEhIyJGRIJKQSSGVIJKRlSCIi7hfDC8HDngMBh/wATwGAw54cyLkXxjDwcP+F4eDh8gwGHPAYDAYDAYDAYDAYDAYDA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Rlr9oy1+0Za/aMtftGWv2jLX7Rlr9oy1+0Za/aMtftGWv2jLX7Rlr9oy1+0Za/aMtftGWv2jLX7Rlr9oy1+0Za/aMtftGWv2jLX7Rlr9oy1+0Za/aMtftGWv2jLX7Rlr9oy1+0Za/aMtftGWv2jLX7Rlr9oy1+0Za/aMtftGWv2jLX7Rlr9oyx+0Za/aMtftGWv2jLX7Rlr9oy1+0Za/aMtftGWv2jLX7Rlr9oy1+0Za/aMtftGWv2jLX7Rlr9oy1+0Za/aMtftGWv2jLX7Rlr9oy1+0Za/aMtftGWv2jLX7Rlj9owk/Hx+z1/ZP2d/+J/Z6/sn7O/8AxP7PX9k/Z7P+J/Z6/sn7O/8AxP7PX9k/Z3/4n9nr+yfs9n/E/s9f2T9nf/if2ev7J7Xqbd1gdhExSK/rqsYK6TEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxNPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izE094sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMRT3izEU94sxFPeLMUjv6qq2DO82Pa27qgbAPsqo5CKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKIoiiKOQ//s3v/8QAJBEAAgICAQQDAQEBAAAAAAAAARECAwATEBIgUGAEMEBwFLD/2gAIAQIBAQIA/wCfEP5IB6qbN23bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du3bt27du4WepKw/yasr1AG7wySSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSXhafU7uQFgxIBH9Q9cGHwtPqdvI5HI4P6h64MPhavU7fCj+BU+p2/yer1O3EkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkqvU7PBNtvhttttttttttttttttttvhttvhttvG2+xvubbbbbbbbbb7G22222222228bxtvK/U7OV4NJJJJJJJJLsS7EkuxJJLhJJJJL0R4ua8HqVnLbB/c222222222222222222222222222236E+sS5rwepWckjgcpcJJJcAL7TyeEkvJj9AC5SSS71wl9EQYcDBkaCRxM9McgeK/U7OSOB94w/ceT5kfoBJ/bEmXNcV8n4ow50KIgOK/U7OxID1kedhYZcA2xoBPFXqdnYv4wgOV2Vep2eFSSS4SSSSSSS4SSS4S4SSS7kkkuEkkkkkkkkkkkkkkkk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", b4 = "data:image/png;base64,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", v4 = "data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20400%20400'%20style='enable-background:new%200%200%20400%20400'%20xml:space='preserve'%3e%3cpath%20style='fill-rule:evenodd;clip-rule:evenodd;fill:%23635bff'%20d='M0%200h400v400H0z'/%3e%3cpath%20d='M184.4%20155.5c0-9.4%207.7-13.1%2020.5-13.1%2018.4%200%2041.6%205.6%2060%2015.5v-56.8C244.8%2093.1%20225%2090%20205%2090c-49.1%200-81.7%2025.6-81.7%2068.4%200%2066.7%2091.9%2056.1%2091.9%2084.9%200%2011.1-9.7%2014.7-23.2%2014.7-20.1%200-45.7-8.2-66-19.3v57.5c22.5%209.7%2045.2%2013.8%2066%2013.8%2050.3%200%2084.9-24.9%2084.9-68.2-.4-72-92.5-59.2-92.5-86.3z'%20style='fill-rule:evenodd;clip-rule:evenodd;fill:%23fff'/%3e%3c/svg%3e", y4 = (e) => /* @__PURE__ */ Ze("svg", { width: 154, height: 14, viewBox: "0 0 154 14", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...e }, /* @__PURE__ */ Ze("path", { d: "M69.79 4.12L67.1 11H65.66L62.96 4.12H64.67L66.38 8.75L68.09 4.12H69.79ZM70.57 11V4.12H74.91V5.48H72.24V6.85H74.52V8.16H72.24V9.64H74.99V11H70.57ZM77.91 5.44V7.26H78.67C79.24 7.26 79.65 6.87 79.65 6.35C79.65 5.81 79.24 5.44 78.67 5.44H77.91ZM76.28 11V4.12H78.89C80.31 4.12 81.32 5.04 81.32 6.35C81.32 7.24 80.85 7.96 80.06 8.34L81.59 11H79.81L78.47 8.57H77.91V11H76.28ZM82.68 11V4.12H84.35V11H82.68ZM85.99 11V4.12H90.33V5.48H87.66V7.11H89.94V8.47H87.66V11H85.99ZM91.46 11V4.12H93.13V11H91.46ZM94.77 11V4.12H99.11V5.48H96.44V6.85H98.72V8.16H96.44V9.64H99.19V11H94.77ZM100.48 11V4.12H103.21C105.2 4.12 106.61 5.55 106.61 7.56C106.61 9.57 105.2 11 103.21 11H100.48ZM102.15 5.48V9.64H103.13C104.18 9.64 104.91 8.79 104.91 7.56C104.91 6.33 104.18 5.48 103.13 5.48H102.15ZM110.32 11V4.12H112.97C114.41 4.12 115.43 5.06 115.43 6.39C115.43 7.72 114.41 8.64 112.97 8.64H111.95V11H110.32ZM111.95 5.44V7.33H112.75C113.34 7.33 113.77 6.94 113.77 6.39C113.77 5.82 113.34 5.44 112.75 5.44H111.95ZM115.07 11L117.77 4.12H119.21L121.9 11H120.28L119.75 9.58H117.22L116.7 11H115.07ZM118.49 6.13L117.68 8.34H119.29L118.49 6.13ZM124.31 5.44V7.26H125.07C125.64 7.26 126.05 6.87 126.05 6.35C126.05 5.81 125.64 5.44 125.07 5.44H124.31ZM122.68 11V4.12H125.29C126.71 4.12 127.72 5.04 127.72 6.35C127.72 7.24 127.25 7.96 126.46 8.34L127.99 11H126.21L124.87 8.57H124.31V11H122.68ZM130.32 11V5.48H128.33V4.12H133.96V5.48H131.98V11H130.32ZM135.02 11V4.12H136.46L139.56 8.36V4.12H141.11V11H139.67L136.58 6.76V11H135.02ZM142.75 11V4.12H147.09V5.48H144.42V6.85H146.7V8.16H144.42V9.64H147.17V11H142.75ZM150.09 5.44V7.26H150.85C151.42 7.26 151.83 6.87 151.83 6.35C151.83 5.81 151.42 5.44 150.85 5.44H150.09ZM148.46 11V4.12H151.07C152.49 4.12 153.5 5.04 153.5 6.35C153.5 7.24 153.03 7.96 152.24 8.34L153.77 11H151.99L150.65 8.57H150.09V11H148.46ZM41 3.068L55 0V10.935L41 14V3.068ZM46.323 9.537C46.4682 9.67288 46.6599 9.74814 46.8588 9.7474C47.0577 9.74665 47.2488 9.66996 47.393 9.533L51.207 5.869C51.2774 5.80109 51.3334 5.7197 51.3716 5.62966C51.4099 5.53963 51.4296 5.44282 51.4296 5.345C51.4296 5.24718 51.4099 5.15037 51.3716 5.06034C51.3334 4.9703 51.2774 4.88891 51.207 4.821C51.0622 4.68156 50.869 4.60365 50.668 4.60365C50.467 4.60365 50.2738 4.68156 50.129 4.821L46.859 7.95L45.873 7.05C45.7282 6.91056 45.535 6.83265 45.334 6.83265C45.133 6.83265 44.9398 6.91056 44.795 7.05C44.7243 7.11776 44.6681 7.19911 44.6297 7.28916C44.5913 7.37921 44.5715 7.4761 44.5715 7.574C44.5715 7.6719 44.5913 7.76879 44.6297 7.85884C44.6681 7.94889 44.7243 8.03024 44.795 8.098L46.323 9.537ZM32.97 8.07H28.542C28.642 9.163 29.419 9.485 30.301 9.485C31.2 9.485 31.907 9.291 32.524 8.969V10.849C31.909 11.2 31.097 11.454 30.016 11.454C27.812 11.454 26.268 10.031 26.268 7.217C26.268 4.841 27.578 2.954 29.73 2.954C31.88 2.954 33 4.84 33 7.23C33 7.455 32.98 7.944 32.97 8.07ZM29.716 4.856C29.15 4.856 28.521 5.296 28.521 6.348H30.861C30.861 5.298 30.271 4.856 29.716 4.856ZM22.679 11.454C21.888 11.454 21.404 11.109 21.079 10.864L21.074 13.504L18.812 14L18.811 3.11H20.803L20.921 3.686C21.1536 3.45305 21.43 3.26844 21.7343 3.14281C22.0386 3.01718 22.3648 2.95301 22.694 2.954C24.282 2.954 25.779 4.43 25.779 7.146C25.779 10.111 24.299 11.454 22.679 11.454ZM22.153 5.02C21.633 5.02 21.308 5.216 21.073 5.483L21.086 8.95C21.305 9.195 21.622 9.393 22.153 9.393C22.989 9.393 23.55 8.453 23.55 7.197C23.55 5.977 22.98 5.02 22.153 5.02ZM15.615 3.11H17.886V11.287H15.616V3.109L15.615 3.11ZM15.615 0.498L17.885 0V1.9L15.615 2.398V0.498ZM13.269 5.743V11.287H11.007V3.109H12.963L13.106 3.799C13.635 2.795 14.693 2.999 14.994 3.109V5.254C14.706 5.158 13.804 5.019 13.269 5.743ZM8.49398 8.418C8.49398 9.793 9.92098 9.365 10.211 9.245V11.145C9.90998 11.315 9.36298 11.454 8.62298 11.454C7.27998 11.454 6.27298 10.434 6.27298 9.053L6.28298 1.567L8.49198 1.083L8.49398 3.109H10.212V5.099H8.49398V8.418ZM5.74798 8.816C5.74798 10.496 4.45198 11.454 2.56998 11.454C1.78998 11.454 0.936976 11.298 0.0959759 10.924V8.697C0.855976 9.123 1.82298 9.442 2.57298 9.442C3.07698 9.442 3.44098 9.302 3.44098 8.872C3.44098 7.757 0.000976562 8.177 0.000976562 5.594C0.000976562 3.942 1.22498 2.954 3.05998 2.954C3.80998 2.954 4.55898 3.073 5.30798 3.381V5.578C4.61998 5.195 3.74598 4.978 3.05798 4.978C2.58398 4.978 2.28898 5.118 2.28898 5.483C2.28898 6.533 5.74798 6.034 5.74798 8.816Z", fill: "#625BF6" })), $c = 1e3, k4 = 15 * $c, M4 = ({ onNext: e }) => /* @__PURE__ */ a.jsxs("div", { children: [
  /* @__PURE__ */ a.jsxs("div", { className: "flex items-center justify-between", children: [
    /* @__PURE__ */ a.jsx(ct, { level: 3, children: "Getting paid" }),
    /* @__PURE__ */ a.jsx(y4, {})
  ] }),
  /* @__PURE__ */ a.jsxs("div", { className: "mb-7 mt-6", children: [
    "Stripe is our exclusive direct payments partner. Ghost collects ",
    /* @__PURE__ */ a.jsx("strong", { children: "no fees" }),
    " on any payments! If you don’t have a Stripe account yet, you can ",
    /* @__PURE__ */ a.jsx("a", { className: "underline", href: "https://stripe.com", rel: "noopener noreferrer", target: "_blank", children: "sign up here" }),
    "."
  ] }),
  /* @__PURE__ */ a.jsx(Yh, { label: /* @__PURE__ */ a.jsx(a.Fragment, { children: "I have a Stripe account, let's go →" }), onClick: e })
] }), j4 = () => {
  const [e, n] = se(!1), [r, o] = se(""), [l, c] = se(!1), [v, w] = se(""), { refetch: A } = Eo({
    searchParams: { filter: "type:paid+active:true" },
    enabled: !1
  }), { mutateAsync: h } = Au(), { mutateAsync: f } = vs(), b = rt(), x = (C) => {
    o(C.target.value), n(!!C.target.value);
  }, g = async () => {
    var G, Q;
    const { data: C } = await A(), S = C == null ? void 0 : C.pages[0].tiers[0];
    if (S) {
      S.monthly_price = 500, S.yearly_price = 5e3, S.currency = "USD";
      let W = 0;
      for (; W < k4; ) {
        await new Promise((J) => {
          setTimeout(J, $c);
        });
        try {
          await h(S);
          break;
        } catch (J) {
          if (J instanceof ps && ((Q = (G = J.data) == null ? void 0 : G.errors) == null ? void 0 : Q[0].code) === "STRIPE_NOT_CONFIGURED") {
            W += $c;
            continue;
          } else {
            b(J);
            return;
          }
        }
      }
    }
  }, y = async () => {
    var C;
    if (w(""), r)
      try {
        await f([
          { key: "stripe_connect_integration_token", value: r }
        ]), await g(), await f([
          { key: "portal_plans", value: JSON.stringify(["free", "monthly", "yearly"]) }
        ]);
      } catch (S) {
        if (S instanceof ps && ((C = S.data) != null && C.errors)) {
          w("Invalid secure key");
          return;
        } else {
          b(S);
          return;
        }
      }
    else
      w("Please enter a secure key");
  }, { apiRoot: k } = ca(), D = `${k}/members/stripe_connect?mode=${l ? "test" : "live"}`;
  return /* @__PURE__ */ a.jsxs("div", { children: [
    /* @__PURE__ */ a.jsxs("div", { className: "mb-6 flex items-center justify-between", children: [
      /* @__PURE__ */ a.jsx(ct, { level: 3, children: "Connect with Stripe" }),
      /* @__PURE__ */ a.jsx(
        et,
        {
          direction: "rtl",
          label: "Test mode",
          labelClasses: `text-sm translate-y-[1px] ${l ? "text-[#EC6803]" : "text-grey-800"}`,
          toggleBg: "stripetest",
          onChange: (C) => c(C.target.checked)
        }
      )
    ] }),
    /* @__PURE__ */ a.jsxs(ct, { level: 6, grey: !0, children: [
      "Step 1 — ",
      /* @__PURE__ */ a.jsx("span", { className: "text-black dark:text-white", children: "Generate secure key" })
    ] }),
    /* @__PURE__ */ a.jsxs("div", { className: "mb-4 mt-2", children: [
      "Click on the ",
      /* @__PURE__ */ a.jsx("strong", { children: "“Connect with Stripe”" }),
      " button to generate a secure key that connects your Ghost site with Stripe."
    ] }),
    /* @__PURE__ */ a.jsx(Yh, { href: D, tag: "a", target: "_blank" }),
    /* @__PURE__ */ a.jsxs(ct, { className: "mb-2 mt-8", level: 6, grey: !0, children: [
      "Step 2 — ",
      /* @__PURE__ */ a.jsx("span", { className: "text-black dark:text-white", children: "Paste secure key" })
    ] }),
    /* @__PURE__ */ a.jsx(xs, { error: !!v, hint: v || void 0, placeholder: "Paste your secure key here", onChange: x }),
    e && /* @__PURE__ */ a.jsx(He, { className: "mt-5", color: "green", label: "Save Stripe settings", onClick: y })
  ] });
}, E4 = ({ onClose: e }) => {
  const { settings: n } = Ve(), [r, o] = ht(n, ["stripe_connect_display_name", "stripe_connect_livemode"]), { refetch: l, isFetching: c } = Dh({
    searchParams: { filter: "status:paid", limit: "0" },
    enabled: !1
  }), { mutateAsync: v } = lv(), w = rt(), A = async () => {
    var b;
    const { data: h } = await l(), f = !!((b = h == null ? void 0 : h.meta) != null && b.pagination.total);
    ve.show(Et, {
      title: "Disconnect Stripe",
      prompt: f ? "Cannot disconnect while there are members with active Stripe subscriptions." : /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        "You‘re about to disconnect your Stripe account ",
        r,
        " from this site. This will automatically turn off paid memberships on this site."
      ] }),
      okLabel: f ? "" : "Disconnect",
      onOk: async (x) => {
        try {
          await v(null), x == null || x.remove(), e == null || e();
        } catch (g) {
          w(g);
        }
      }
    });
  };
  return /* @__PURE__ */ a.jsxs("section", { children: [
    /* @__PURE__ */ a.jsxs("div", { className: "flex items-center justify-between", children: [
      /* @__PURE__ */ a.jsx(He, { color: "red", disabled: c, icon: "link-broken", iconColorClass: "text-red", label: "Disconnect", link: !0, onClick: A }),
      /* @__PURE__ */ a.jsx(He, { icon: "close", iconColorClass: "dark:text-white", label: "Close", size: "sm", hideLabel: !0, link: !0, onClick: e })
    ] }),
    /* @__PURE__ */ a.jsxs("div", { className: "my-20 flex flex-col items-center", children: [
      /* @__PURE__ */ a.jsxs("div", { className: "relative h-20 w-[200px]", children: [
        /* @__PURE__ */ a.jsx("img", { alt: "Ghost Logo", className: "absolute left-10 size-16", src: b4 }),
        /* @__PURE__ */ a.jsx("img", { alt: "Stripe Logo", className: "absolute right-10 size-16 rounded-2xl shadow-[-1.5px_0_0_1.5px_#fff] dark:shadow-[-1.5px_0_0_1.5px_black]", src: v4 })
      ] }),
      /* @__PURE__ */ a.jsxs(ct, { className: "text-center", level: 3, children: [
        "You are connected with Stripe!",
        o ? null : " (Test mode)"
      ] }),
      /* @__PURE__ */ a.jsxs("div", { className: "mt-1", children: [
        "Connected to ",
        /* @__PURE__ */ a.jsx("strong", { children: r || "Test mode" })
      ] })
    ] }),
    /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col items-center", children: [
      /* @__PURE__ */ a.jsx(ct, { level: 6, children: "Read next" }),
      /* @__PURE__ */ a.jsxs("a", { className: "w-100 mt-5 flex flex-col items-stretch justify-between rounded-sm border border-grey-200 transition-all hover:border-grey-400 md:flex-row dark:border-grey-900", href: "https://ghost.org/resources/managing-your-stripe-account/?ref=admin", rel: "noopener noreferrer", target: "_blank", children: [
        /* @__PURE__ */ a.jsxs("div", { className: "order-2 p-4 md:order-1", children: [
          /* @__PURE__ */ a.jsx("div", { className: "font-bold", children: "How to setup and manage your Stripe account" }),
          /* @__PURE__ */ a.jsx("div", { className: "mt-1 text-sm text-grey-800 dark:text-grey-500", children: "Learn how to configure your Stripe account to work with Ghost, from custom branding to payment receipt emails." }),
          /* @__PURE__ */ a.jsxs("div", { className: "mt-3 flex items-center gap-1 text-sm text-grey-800 dark:text-grey-500", children: [
            /* @__PURE__ */ a.jsx("img", { alt: "Ghost Logo", className: "size-4", src: cv }),
            /* @__PURE__ */ a.jsx("strong", { children: "Ghost Resources" }),
            /* @__PURE__ */ a.jsx("span", { children: "·" }),
            /* @__PURE__ */ a.jsx("span", { children: "by Kym Ellis" })
          ] })
        ] }),
        /* @__PURE__ */ a.jsx("div", { className: "order-1 hidden w-[200px] shrink-0 items-center justify-center overflow-hidden md:!visible md:order-2 md:!flex", children: /* @__PURE__ */ a.jsx("img", { alt: "Bookmark Thumb", className: "min-h-full min-w-full shrink-0", src: w4 }) })
      ] })
    ] })
  ] });
}, D4 = ({ onClose: e }) => {
  const { localSettings: n, updateSetting: r, handleSave: o, saveState: l } = ws(), [c, v] = ht(n, ["stripe_publishable_key", "stripe_secret_key"]), w = async () => {
    try {
      uv.remove(), await o(), e();
    } catch (A) {
      if (A instanceof ps) {
        ut({
          title: "Failed to save settings",
          type: "error",
          message: "Check you copied both keys correctly"
        });
        return;
      }
      throw A;
    }
  };
  return /* @__PURE__ */ a.jsxs("div", { children: [
    /* @__PURE__ */ a.jsx(ct, { level: 3, children: "Connect Stripe" }),
    /* @__PURE__ */ a.jsxs(Ke, { marginBottom: !1, marginTop: !0, children: [
      /* @__PURE__ */ a.jsx(je, { title: "Publishable key", value: c == null ? void 0 : c.toString(), onChange: (A) => r("stripe_publishable_key", A.target.value) }),
      /* @__PURE__ */ a.jsx(je, { title: "Secure key", value: v == null ? void 0 : v.toString(), onChange: (A) => r("stripe_secret_key", A.target.value) }),
      /* @__PURE__ */ a.jsx(He, { className: "mt-5", color: "green", disabled: l === "saving", label: "Save Stripe settings", onClick: w })
    ] })
  ] });
}, T4 = () => {
  const { config: e, settings: n } = Ve(), r = bn(n, "stripe_connect_account_id"), { updateRoute: o } = We(), [l, c] = se("start"), v = fn(), w = da(), A = ua(n, e), h = w == null ? void 0 : w.isDisabled("limitStripeConnect");
  ye(() => {
    (async () => {
      if (h && !A)
        try {
          await (w == null ? void 0 : w.errorIfWouldGoOverLimit("limitStripeConnect"));
        } catch (y) {
          y instanceof ha && (v.remove(), ve.show(rr, {
            prompt: y.message || "Your current plan doesn't support Stripe Connect.",
            onOk: () => o({ route: "/pro", isExternal: !0 })
          }));
        }
    })();
  }, [w, v, o, A, h]);
  const f = () => {
    c("connect");
  }, b = () => {
    v.remove(), o("tiers");
  };
  let x;
  return e != null && e.stripeDirect || // Still show Stripe Direct to allow disabling the keys if the config was turned off but stripe direct is still set up
  ua(n || [], e || {}) && !r ? x = /* @__PURE__ */ a.jsx(D4, { onClose: b }) : r ? x = /* @__PURE__ */ a.jsx(E4, { onClose: b }) : l === "start" ? x = /* @__PURE__ */ a.jsx(M4, { onNext: f }) : x = /* @__PURE__ */ a.jsx(j4, {}), /* @__PURE__ */ a.jsx(
    vt,
    {
      afterClose: () => {
        o("tiers");
      },
      cancelLabel: "",
      footer: /* @__PURE__ */ a.jsx("div", { className: "mt-8" }),
      testId: "stripe-modal",
      title: "",
      width: r ? 740 : 520,
      hideXOnMobile: !0,
      children: x
    }
  );
}, N4 = ve.create(T4), C4 = ({ tier: e }) => {
  var te;
  const n = (e == null ? void 0 : e.type) === "free", { updateRoute: r } = We(), { mutateAsync: o } = Au(), { mutateAsync: l } = fv(), { mutateAsync: c } = vs(), [v, w] = _e.useState(!!(e != null && e.trial_days)), A = rt(), { localSettings: h, siteData: f } = ws(), [b] = ht(h, ["portal_plans"]), x = JSON.parse((b == null ? void 0 : b.toString()) || "[]"), g = {
    name: () => y.name ? void 0 : "Enter a name for the tier",
    monthly_price: () => y.type !== "free" ? hd(y.monthly_price || 0, y.currency, { allowZero: !1 }) : void 0,
    yearly_price: () => y.type !== "free" ? hd(y.yearly_price || 0, y.currency, { allowZero: !1 }) : void 0
  }, { formState: y, saveState: k, updateForm: D, handleSave: C, errors: S, clearError: G, okProps: Q } = Hn({
    initialState: {
      ...e || {},
      trial_days: ((te = e == null ? void 0 : e.trial_days) == null ? void 0 : te.toString()) || "",
      currency: (e == null ? void 0 : e.currency) || dv[0].isoCode,
      visibility: (e == null ? void 0 : e.visibility) || "none",
      welcome_page_url: (e == null ? void 0 : e.welcome_page_url) || null
    },
    savingDelay: 500,
    savedDelay: 500,
    onValidate: () => {
      const R = {};
      return Object.entries(g).forEach(([z, $]) => {
        R[z] = $ == null ? void 0 : $();
      }), R;
    },
    onSave: async () => {
      var ee;
      const { trial_days: R, currency: z, ...$ } = y, K = $;
      if (K.benefits = (ee = K.benefits) == null ? void 0 : ee.filter((F) => F), n || (K.currency = z, K.trial_days = parseInt(R)), e != null && e.id ? await o({ ...e, ...K }) : await l(K), n) {
        const F = y.visibility === "public";
        let _ = !1;
        x.includes("free") && !F && (x.splice(x.indexOf("free"), 1), _ = !0), !x.includes("free") && F && (x.push("free"), _ = !0), _ && await c([
          {
            key: "portal_plans",
            value: JSON.stringify(x)
          }
        ]);
      }
    },
    onSaveError: A
  }), W = zp({
    items: y.benefits || [],
    setItems: (R) => D((z) => ({ ...z, benefits: R })),
    blank: "",
    canAddNewItem: (R) => !!R
  }), J = (R) => {
    R.target.checked ? (w(!0), D((z) => ({ ...z, trial_days: e != null && e.trial_days ? e == null ? void 0 : e.trial_days.toString() : "7" }))) : (w(!1), D((z) => ({ ...z, trial_days: "0" })));
  }, Y = tt(!1);
  ye(() => {
    var R, z;
    Y.current && ((R = g.monthly_price) == null || R.call(g), (z = g.yearly_price) == null || z.call(g)), Y.current = !0;
  }, [y.currency]);
  const B = () => {
    if (e) {
      const R = e.active ? "Archive tier" : "Reactivate tier", z = e.active ? /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        /* @__PURE__ */ a.jsxs("div", { className: "mb-6", children: [
          "Members will no longer be able to subscribe to ",
          /* @__PURE__ */ a.jsx("strong", { children: e.name }),
          " and it will be removed from the list of available tiers in portal."
        ] }),
        /* @__PURE__ */ a.jsx("div", { children: "Existing members on this tier will remain unchanged. Offers using this tier will be disabled." })
      ] }) : /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        /* @__PURE__ */ a.jsxs("div", { className: "mb-6", children: [
          "Reactivating ",
          /* @__PURE__ */ a.jsx("strong", { children: e.name }),
          " will re-enable it as an option in portal and allow new members to subscribe to this tier."
        ] }),
        /* @__PURE__ */ a.jsx("div", { children: "Existing members will remain unchanged." })
      ] }), $ = e.active ? "Archive" : "Reactivate";
      ve.show(Et, {
        title: R,
        prompt: z,
        okLabel: $,
        cancelLabel: "Cancel",
        okColor: e.active ? "red" : "black",
        onOk: (K) => {
          o({ ...e, active: !e.active }), K == null || K.remove(), ut({
            type: "success",
            title: `Tier ${e.active ? "archived" : "reactivated"}`
          });
        }
      });
    }
  };
  let U = {};
  return e && (e.active && e.type !== "free" ? U = {
    label: "Archive tier",
    color: "red",
    link: !0,
    onClick: B
  } : e.active || (U = {
    label: "Reactivate tier",
    color: "green",
    link: !0,
    onClick: B
  })), /* @__PURE__ */ a.jsx(
    vt,
    {
      afterClose: () => {
        r("tiers");
      },
      buttonsDisabled: Q.disabled,
      cancelLabel: "Close",
      dirty: k === "unsaved",
      leftButtonProps: U,
      okColor: Q.color,
      okLabel: Q.label || "Save",
      size: "lg",
      testId: "tier-detail-modal",
      title: e ? e.active ? "Edit tier" : "Edit archived tier" : "New tier",
      stickyFooter: !0,
      onOk: async () => {
        await C({ fakeWhenUnchanged: !0 });
      },
      children: /* @__PURE__ */ a.jsxs("div", { className: "-mb-8 mt-8 flex items-start gap-8", children: [
        /* @__PURE__ */ a.jsxs("div", { className: "flex grow flex-col gap-8", children: [
          /* @__PURE__ */ a.jsxs(Ke, { marginBottom: !1, title: "Basic", grouped: !0, children: [
            /* @__PURE__ */ a.jsx(
              je,
              {
                autoComplete: "off",
                error: !!S.name,
                hint: S.name,
                maxLength: 191,
                placeholder: n ? "Free" : "Bronze",
                title: "Name",
                value: y.name || "",
                autoFocus: !0,
                onChange: (R) => D((z) => ({ ...z, name: R.target.value })),
                onKeyDown: () => G("name")
              }
            ),
            /* @__PURE__ */ a.jsx(
              je,
              {
                autoComplete: "off",
                autoFocus: n,
                maxLength: 191,
                placeholder: n ? "Free preview" : "Full access to premium content",
                title: "Description",
                value: y.description || "",
                onChange: (R) => D((z) => ({ ...z, description: R.target.value }))
              }
            ),
            !n && /* @__PURE__ */ a.jsx(a.Fragment, { children: /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col gap-10 md:flex-row", children: [
              /* @__PURE__ */ a.jsxs("div", { className: "basis-1/2", children: [
                /* @__PURE__ */ a.jsxs("div", { className: "mb-1 flex h-6 items-center justify-between", children: [
                  /* @__PURE__ */ a.jsx(ct, { level: 6, children: "Prices" }),
                  /* @__PURE__ */ a.jsx("div", { className: "-mr-2 w-[50px]", children: /* @__PURE__ */ a.jsx(
                    Lt,
                    {
                      border: !1,
                      containerClassName: "font-medium",
                      controlClasses: { menu: "w-18" },
                      options: pd(),
                      selectedOption: pd().flatMap((R) => R.options).find((R) => R.value === y.currency),
                      size: "xs",
                      clearBg: !0,
                      isSearchable: !0,
                      onSelect: (R) => D((z) => ({ ...z, currency: R == null ? void 0 : R.value }))
                    }
                  ) })
                ] }),
                /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col gap-2", children: [
                  /* @__PURE__ */ a.jsx(
                    md,
                    {
                      error: !!S.monthly_price,
                      hint: S.monthly_price,
                      placeholder: "5",
                      rightPlaceholder: `${y.currency}/month`,
                      title: "Monthly price",
                      valueInCents: y.monthly_price || "",
                      hideTitle: !0,
                      onBlur: (R) => R.target.value === "" ? D((z) => ({ ...z, monthly_price: 0 })) : null,
                      onChange: (R) => D((z) => ({ ...z, monthly_price: R })),
                      onKeyDown: () => G("monthly_price")
                    }
                  ),
                  /* @__PURE__ */ a.jsx(
                    md,
                    {
                      error: !!S.yearly_price,
                      hint: S.yearly_price,
                      placeholder: "50",
                      rightPlaceholder: `${y.currency}/year`,
                      title: "Yearly price",
                      valueInCents: y.yearly_price || "",
                      hideTitle: !0,
                      onBlur: (R) => R.target.value === "" ? D((z) => ({ ...z, yearly_price: 0 })) : null,
                      onChange: (R) => D((z) => ({ ...z, yearly_price: R })),
                      onKeyDown: () => G("yearly_price")
                    }
                  )
                ] })
              ] }),
              /* @__PURE__ */ a.jsxs("div", { className: "basis-1/2", children: [
                /* @__PURE__ */ a.jsx("div", { className: "mb-1 flex h-6 flex-col justify-center", children: /* @__PURE__ */ a.jsx(et, { checked: v, label: "Add a free trial", labelStyle: "heading", onChange: J }) }),
                /* @__PURE__ */ a.jsx(
                  je,
                  {
                    disabled: !v,
                    hint: /* @__PURE__ */ a.jsxs("div", { className: "mt-1", children: [
                      "Members will be subscribed at full price once the trial ends. ",
                      /* @__PURE__ */ a.jsx("a", { className: "text-green", href: "https://ghost.org/help/free-trials/", rel: "noreferrer", target: "_blank", children: "Learn more" })
                    ] }),
                    placeholder: "0",
                    rightPlaceholder: "days",
                    title: "Trial days",
                    value: y.trial_days,
                    hideTitle: !0,
                    onChange: (R) => D((z) => ({ ...z, trial_days: R.target.value.replace(/[^\d]/, "") }))
                  }
                )
              ] })
            ] }) }),
            /* @__PURE__ */ a.jsx(
              Lh,
              {
                baseUrl: f == null ? void 0 : f.url,
                hint: `Redirect to this URL after signup ${n ? "" : " for premium membership"}`,
                maxLength: 2e3,
                placeholder: f == null ? void 0 : f.url,
                title: "Welcome page",
                value: y.welcome_page_url || null,
                nullable: !0,
                transformPathWithoutSlash: !0,
                onChange: (R) => D((z) => ({ ...z, welcome_page_url: R || null }))
              }
            )
          ] }),
          /* @__PURE__ */ a.jsxs(Ke, { gap: "none", title: "Benefits", grouped: !0, children: [
            /* @__PURE__ */ a.jsx("div", { className: "-mt-3", children: /* @__PURE__ */ a.jsx(
              Qh,
              {
                items: W.items,
                itemSeparator: !1,
                renderItem: ({ id: R, item: z }) => /* @__PURE__ */ a.jsxs("div", { className: "relative flex w-full items-center gap-5", children: [
                  /* @__PURE__ */ a.jsx("div", { className: "absolute left-[-32px] top-[7px] flex size-6 items-center justify-center bg-white group-hover:hidden dark:bg-black", children: /* @__PURE__ */ a.jsx(Mt, { name: "check", size: "sm" }) }),
                  /* @__PURE__ */ a.jsx(
                    je,
                    {
                      maxLength: 191,
                      value: z,
                      onChange: ($) => W.updateItem(R, $.target.value)
                    }
                  ),
                  /* @__PURE__ */ a.jsx(He, { className: "absolute right-1 top-1 z-10 opacity-0 group-hover:opacity-100", color: "grey", icon: "trash", size: "sm", onClick: () => W.removeItem(R) })
                ] }),
                onMove: W.moveItem
              }
            ) }),
            /* @__PURE__ */ a.jsxs("div", { className: "relative mt-1 flex items-center gap-3", children: [
              /* @__PURE__ */ a.jsx(Mt, { className: "dark:text-white", name: "check", size: "sm" }),
              /* @__PURE__ */ a.jsx(
                je,
                {
                  className: "grow",
                  containerClassName: "w-100",
                  maxLength: 191,
                  placeholder: "Expert analysis",
                  title: "New benefit",
                  value: W.newItem,
                  hideTitle: !0,
                  onChange: (R) => W.setNewItem(R.target.value),
                  onKeyDown: (R) => {
                    R.key === "Enter" && W.addItem();
                  }
                }
              ),
              /* @__PURE__ */ a.jsx(
                He,
                {
                  className: "absolute right-[5px] top-[5px] z-10",
                  color: "green",
                  icon: "add",
                  iconColorClass: "text-white",
                  label: "Add",
                  size: "sm",
                  hideLabel: !0,
                  onClick: () => W.addItem()
                }
              )
            ] })
          ] })
        ] }),
        /* @__PURE__ */ a.jsx("div", { className: "sticky top-[96px] hidden shrink-0 basis-[380px] min-[920px]:!visible min-[920px]:!block", children: /* @__PURE__ */ a.jsx(hv, { isFreeTier: n, tier: y }) })
      ] })
    }
  );
}, I4 = ({ params: e }) => {
  const { data: { tiers: n, isEnd: r } = {}, fetchNextPage: o } = Eo();
  let l;
  return ye(() => {
    e != null && e.id && !l && !r && o();
  }, [o, r, e == null ? void 0 : e.id, l]), e != null && e.id && (l = n == null ? void 0 : n.find(({ id: c }) => c === (e == null ? void 0 : e.id)), !l) ? null : /* @__PURE__ */ a.jsx(C4, { tier: l });
}, P4 = ve.create(I4), O4 = ve.create(() => {
  const { updateRoute: e } = We(), { settings: n } = Ve(), [r] = ht(n, ["unsplash"]), { mutateAsync: o } = vs(), l = rt(), [c, v] = se("Save"), [w, A] = se(!!r);
  ye(() => {
    A(r || !1);
  }, [r]);
  const h = async () => {
    const b = [
      { key: "unsplash", value: w }
    ];
    try {
      v("Saving..."), await Promise.all([
        o(b),
        new Promise((x) => {
          setTimeout(x, 1e3);
        })
      ]), v("Saved");
    } catch (x) {
      l(x);
    } finally {
      setTimeout(() => v("Save"), 1e3);
    }
  }, f = w !== r;
  return /* @__PURE__ */ a.jsxs(
    vt,
    {
      afterClose: () => {
        e("integrations");
      },
      cancelLabel: "Close",
      dirty: f,
      okColor: c === "Saved" ? "green" : "black",
      okLabel: c,
      testId: "unsplash-modal",
      title: "",
      onOk: h,
      children: [
        /* @__PURE__ */ a.jsx(
          To,
          {
            detail: "Beautiful, free photos",
            icon: /* @__PURE__ */ a.jsx(pv, { className: "size-12" }),
            title: "Unsplash"
          }
        ),
        /* @__PURE__ */ a.jsx("div", { className: "mt-7", children: /* @__PURE__ */ a.jsx(Ke, { marginBottom: !1, grouped: !0, children: /* @__PURE__ */ a.jsx(
          et,
          {
            checked: w,
            direction: "rtl",
            hint: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
              "Enable ",
              /* @__PURE__ */ a.jsx("a", { className: "text-green", href: "https://unsplash.com", rel: "noopener noreferrer", target: "_blank", children: "Unsplash" }),
              " image integration for your posts"
            ] }),
            label: "Enable Unsplash",
            onChange: (b) => {
              A(b.target.checked);
            }
          }
        ) }) })
      ]
    }
  );
}), z4 = ({ user: e, setUserData: n }) => {
  const { config: r, settings: o } = Ve(), l = mv("webmentions"), c = ua(o || [], r || {});
  return /* @__PURE__ */ a.jsxs(cu, { children: [
    /* @__PURE__ */ a.jsx(
      et,
      {
        checked: e.comment_notifications,
        direction: "rtl",
        hint: "Every time a member comments on one of your posts",
        label: "Comments",
        onChange: (v) => {
          n == null || n({ ...e, comment_notifications: v.target.checked });
        }
      }
    ),
    uA(e) && /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
      l && /* @__PURE__ */ a.jsx(
        et,
        {
          checked: e.mention_notifications,
          direction: "rtl",
          hint: "Every time another site links to your work",
          label: "Mentions",
          onChange: (v) => {
            n == null || n({ ...e, mention_notifications: v.target.checked });
          }
        }
      ),
      /* @__PURE__ */ a.jsx(
        et,
        {
          checked: e.recommendation_notifications,
          direction: "rtl",
          hint: "Every time another publisher recommends you to their audience",
          label: "Recommendations",
          onChange: (v) => {
            n == null || n({ ...e, recommendation_notifications: v.target.checked });
          }
        }
      ),
      /* @__PURE__ */ a.jsx(
        et,
        {
          checked: e.free_member_signup_notification,
          direction: "rtl",
          hint: "Every time a new free member signs up",
          label: "New signups",
          onChange: (v) => {
            n == null || n({ ...e, free_member_signup_notification: v.target.checked });
          }
        }
      ),
      /* @__PURE__ */ a.jsx(
        et,
        {
          checked: e.paid_subscription_started_notification,
          direction: "rtl",
          hint: "Every time a member starts a new paid subscription",
          label: "New paid members",
          onChange: (v) => {
            n == null || n({ ...e, paid_subscription_started_notification: v.target.checked });
          }
        }
      ),
      /* @__PURE__ */ a.jsx(
        et,
        {
          checked: e.paid_subscription_canceled_notification,
          direction: "rtl",
          hint: "Every time a member cancels their paid subscription",
          label: "Paid member cancellations",
          onChange: (v) => {
            n == null || n({ ...e, paid_subscription_canceled_notification: v.target.checked });
          }
        }
      ),
      /* @__PURE__ */ a.jsx(
        et,
        {
          checked: e.milestone_notifications,
          direction: "rtl",
          hint: "Occasional summaries of your audience & revenue growth",
          label: "Milestones",
          onChange: (v) => {
            n == null || n({ ...e, milestone_notifications: v.target.checked });
          }
        }
      ),
      c && /* @__PURE__ */ a.jsx(
        et,
        {
          checked: e.donation_notifications,
          direction: "rtl",
          hint: "Every time you receive a one-time payment",
          label: "Tips & donations",
          onChange: (v) => {
            n == null || n({ ...e, donation_notifications: v.target.checked });
          }
        }
      )
    ] })
  ] });
}, H4 = ({ user: e, setUserData: n }) => /* @__PURE__ */ a.jsx(lu, { border: !1, children: /* @__PURE__ */ a.jsx(z4, { setUserData: n, user: e }) }), S4 = [
  "1234567890",
  "qwertyuiop",
  "qwertzuiop",
  "asdfghjkl;",
  "abcdefghij",
  "0987654321",
  "1q2w3e4r5t",
  "12345asdfg"
], R4 = ["ghost", "password", "passw0rd"], B4 = (e) => {
  let n = {}, r, o = !0;
  r = e.length / 2;
  for (let l = 0; l < e.length; l += 1)
    n[e[l]] ? n[e[l]] += 1 : n[e[l]] = 1;
  for (let l in n)
    if (n[l] >= r)
      return o = !1, o;
  return o;
}, L4 = ({ user: e }) => {
  const { currentUser: n, config: r, siteData: o } = Ve(), [l, c] = se(!1), [v, w] = se(""), [A, h] = se(""), [f, b] = se(""), [x, g] = se(""), [y, k] = se({}), D = tt(null), C = tt(null), S = tt(null), { mutateAsync: G } = gv(), Q = rt(), W = e.id === n.id, J = ({ password: R, confirmPassword: z }) => {
    if (W && !v)
      return { oldPassword: "Your current password is required to set a new one" };
    if (R !== z)
      return {
        newPassword: "Your new passwords do not match",
        confirmNewPassword: "Your new passwords do not match"
      };
    let $ = r.blogUrl || window.location.host, K = o.title, ee;
    if ($ = $.replace(/^http(s?):\/\//, ""), ee = $.match(/\/$/) ? $ : `${$}/`, K = K && K.trim().toLowerCase(), R.length < 10)
      return { newPassword: "Password must be at least 10 characters long." };
    R = R.toString();
    for (const F of S4)
      if (F === R)
        return { newPassword: "Sorry, you cannot use an insecure password." };
    if (R.toLowerCase() === e.email.toLowerCase())
      return { newPassword: "Sorry, you cannot use an insecure password." };
    for (const F of R4)
      if (R.toLowerCase().indexOf(F) >= 0)
        return { newPassword: "Sorry, you cannot use an insecure password." };
    return R.toLowerCase() === K ? { newPassword: "Sorry, you cannot use an insecure password." } : R.toLowerCase() === $ || R.toLowerCase() === ee ? { newPassword: "Sorry, you cannot use an insecure password." } : B4(R) ? {} : { newPassword: "Sorry, you cannot use an insecure password." };
  };
  ye(() => {
    x === "saved" && setTimeout(() => {
      g(""), c(!1);
    }, 2500);
  }, [x]), ye(() => {
    l && setTimeout(() => {
      var R, z;
      W ? (R = S.current) == null || R.focus() : (z = D.current) == null || z.focus();
    }, 100);
  }, [l, W]);
  const Y = () => {
    c(!0);
  };
  let B = "Save password";
  x === "saving" ? B = "Saving..." : x === "saved" && (B = "Saved");
  const U = /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
    W && /* @__PURE__ */ a.jsx(
      je,
      {
        "data-testid": "old-password",
        error: !!y.oldPassword,
        hint: y.oldPassword,
        inputRef: S,
        title: "Old password",
        type: "password",
        value: v,
        onChange: (R) => {
          w(R.target.value);
        }
      }
    ),
    /* @__PURE__ */ a.jsx(
      je,
      {
        "data-testid": "new-password",
        error: !!y.newPassword,
        hint: y.newPassword,
        inputRef: D,
        title: "New password",
        type: "password",
        value: A,
        onChange: (R) => {
          h(R.target.value);
        }
      }
    ),
    /* @__PURE__ */ a.jsx(
      je,
      {
        "data-testid": "confirm-password",
        error: !!y.confirmNewPassword,
        hint: y.confirmNewPassword,
        inputRef: C,
        title: "Confirm new password",
        type: "password",
        value: f,
        onChange: (R) => {
          b(R.target.value);
        }
      }
    ),
    /* @__PURE__ */ a.jsxs("div", { className: "mt-1 flex items-center justify-end gap-3", children: [
      /* @__PURE__ */ a.jsx(
        He,
        {
          color: "outline",
          label: "Cancel",
          onClick: () => {
            c(!1), w(""), h(""), b(""), k({});
          }
        }
      ),
      /* @__PURE__ */ a.jsx(
        He,
        {
          color: "green",
          "data-testid": "save-password-button",
          label: B,
          onClick: async () => {
            g("saving");
            const R = J({ password: A, confirmPassword: f });
            if (k(R), Object.keys(R).length > 0) {
              g("");
              return;
            }
            try {
              await G({
                newPassword: A,
                confirmNewPassword: f,
                oldPassword: v,
                userId: e == null ? void 0 : e.id
              }), g("saved");
            } catch (z) {
              g(""), ut({
                type: "error",
                title: z instanceof xv ? z.message : "Couldn't update password. Please try again."
              }), Q(z, { withToast: !1 });
            }
          }
        }
      )
    ] })
  ] }), te = /* @__PURE__ */ a.jsxs("div", { className: "relative flex flex-col", children: [
    /* @__PURE__ */ a.jsx(je, { containerClassName: "grow", disabled: !0, title: "Password", type: "password", value: "••••••••••••" }),
    /* @__PURE__ */ a.jsx(He, { className: "absolute right-0 top-0", color: "green", "data-testid": "change-password-button", label: "Change", link: !0, onClick: Y })
  ] });
  return /* @__PURE__ */ a.jsx(a.Fragment, { children: l ? U : te });
}, Q4 = ({ user: e, setUserData: n }) => {
  const { data: { roles: r } = {} } = Ic(), { config: o } = Ve(), l = o.labs.superEditors;
  let c = [
    {
      hint: "Can write and edit their own posts, but cannot publish them.",
      label: "Contributor",
      value: "contributor"
    },
    {
      hint: "Can create, edit and publish their own posts, but can’t modify others.",
      label: "Author",
      value: "author"
    },
    {
      hint: "Can edit and publish any posts, and manage Authors and Contributors.",
      label: "Editor",
      value: "editor"
    },
    {
      hint: "Trusted user who has full access to all content, settings, and user management.",
      label: "Administrator",
      value: "administrator"
    }
  ];
  if (l && (c = c.map((v) => v.value === "editor" ? {
    ...v,
    label: "Editor (beta mode)",
    value: "super editor",
    hint: "Can invite and manage other Authors and Contributors, as well as edit and publish any posts on the site. Can manage members and moderate comments."
  } : v)), Oc(e)) {
    const v = {
      label: "Owner",
      value: "owner"
    };
    return /* @__PURE__ */ a.jsx("div", { children: /* @__PURE__ */ a.jsx(
      Lt,
      {
        disabled: !0,
        hint: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
          "This user is the owner of the site. ",
          /* @__PURE__ */ a.jsx("a", { className: "font-medium text-grey-800 transition-colors hover:text-grey-900 dark:text-grey-500 dark:hover:text-grey-400", href: "https://ghost.org/help/transfer-publication-ownership/", rel: "noopener noreferrer", target: "_blank", children: "Transfer ownership" }),
          " first to change their role."
        ] }),
        options: [v],
        selectedOption: v,
        title: "Role",
        onSelect: () => {
        }
      }
    ) });
  }
  return /* @__PURE__ */ a.jsx(
    Lt,
    {
      options: c,
      selectedOption: c.find((v) => v.value === e.roles[0].name.toLowerCase()),
      testId: "role-select",
      title: "Role",
      onSelect: (v) => {
        if (v) {
          const w = r == null ? void 0 : r.find((A) => A.name.toLowerCase() === v.value.toLowerCase());
          w && (n == null || n({ ...e, roles: [w] }));
        }
      }
    }
  );
}, X4 = "StaffTokenResponseType", F4 = wv({
  dataType: X4,
  path: "/users/me/token/"
}), q4 = bs({
  path: () => "/users/me/token/",
  method: "PUT"
}), G4 = () => {
  const { refetch: e } = F4({
    enabled: !1
  }), n = rt(), [r, o] = se(""), { mutateAsync: l } = q4();
  ye(() => {
    (async () => {
      var A;
      const w = await e();
      (A = w == null ? void 0 : w.data) != null && A.apiKey && o(`${w.data.apiKey.id}:${w.data.apiKey.secret}`);
    })();
  }, [e]);
  const c = () => {
    ve.show(Et, {
      title: "Regenerate your Staff Access Token",
      prompt: "You can regenerate your Staff Access Token any time, but any scripts or applications using it will need to be updated.",
      okLabel: "Regenerate your Staff Access Token",
      okColor: "red",
      onOk: async (v) => {
        try {
          const w = await l([]);
          o(`${w.apiKey.id}:${w.apiKey.secret}`), v == null || v.remove();
        } catch (w) {
          n(w);
        }
      }
    });
  };
  return /* @__PURE__ */ a.jsxs("div", { children: [
    /* @__PURE__ */ a.jsx(ct, { className: "mb-2", level: 6, grey: !0, children: "Staff access token" }),
    /* @__PURE__ */ a.jsx(xu, { hasLabel: !1, keys: [
      {
        text: r || "",
        onRegenerate: c
      }
    ] })
  ] });
}, Y4 = ({ errors: e, clearError: n, user: r, setUserData: o }) => {
  var c;
  const { currentUser: l } = Ve();
  return /* @__PURE__ */ a.jsxs(cu, { children: [
    /* @__PURE__ */ a.jsx(
      je,
      {
        error: !!(e != null && e.email),
        hint: (e == null ? void 0 : e.email) || "Used for notifications",
        maxLength: 191,
        title: "Email",
        value: r.email,
        onChange: (v) => {
          o({ ...r, email: v.target.value });
        },
        onKeyDown: () => n("email")
      }
    ),
    /* @__PURE__ */ a.jsx(L4, { user: r }),
    uA(l) && /* @__PURE__ */ a.jsx(Q4, { setUserData: o, user: r }),
    /* @__PURE__ */ a.jsx(
      je,
      {
        error: !!(e != null && e.name),
        hint: (e == null ? void 0 : e.name) || "Use your real name so people can recognize you",
        maxLength: 191,
        title: "Full name",
        value: r.name,
        onChange: (v) => {
          o({ ...r, name: v.target.value });
        },
        onKeyDown: () => n("name")
      }
    ),
    /* @__PURE__ */ a.jsx(
      je,
      {
        hint: `https://example.com/author/${r.slug}`,
        maxLength: 191,
        title: "Slug",
        value: r.slug,
        onChange: (v) => {
          o({ ...r, slug: v.target.value });
        }
      }
    ),
    /* @__PURE__ */ a.jsx(
      je,
      {
        error: !!(e != null && e.location),
        hint: (e == null ? void 0 : e.location) || "Where in the world do you live?",
        maxLength: 65535,
        title: "Location",
        value: r.location || "",
        onChange: (v) => {
          o({ ...r, location: v.target.value });
        },
        onKeyDown: () => n("location")
      }
    ),
    /* @__PURE__ */ a.jsx(
      xs,
      {
        error: !!(e != null && e.bio),
        hint: (e == null ? void 0 : e.bio) || /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
          "Recommended: 250 characters. You‘ve used ",
          /* @__PURE__ */ a.jsx("span", { className: "font-bold", children: ((c = r.bio) == null ? void 0 : c.length) || 0 })
        ] }),
        maxLength: 65535,
        title: "Bio",
        value: r.bio || "",
        onChange: (v) => {
          o({ ...r, bio: v.target.value });
        },
        onKeyDown: () => n("bio")
      }
    ),
    r.id === l.id && /* @__PURE__ */ a.jsx(G4, {})
  ] });
}, U4 = (e) => /* @__PURE__ */ a.jsx(lu, { border: !1, children: /* @__PURE__ */ a.jsx(Y4, { ...e }) }), J4 = ({ errors: e, clearError: n, validateField: r, user: o, setUserData: l }) => {
  const [c, v] = se(o.facebook ? bv(o.facebook) : ""), [w, A] = se(o.twitter ? vv(o.twitter) : ""), [h, f] = se(o.threads ? f8(o.threads) : ""), [b, x] = se(o.bluesky ? h8(o.bluesky) : ""), [g, y] = se(o.linkedin ? w8(o.linkedin) : ""), [k, D] = se(o.instagram ? v8(o.instagram) : ""), [C, S] = se(o.youtube ? k8(o.youtube) : ""), [G, Q] = se(o.tiktok ? j8(o.tiktok) : ""), [W, J] = se(o.mastodon ? D8(o.mastodon) : "");
  return /* @__PURE__ */ a.jsxs(cu, { children: [
    /* @__PURE__ */ a.jsx(
      je,
      {
        "data-testid": "website-input",
        error: !!(e != null && e.website),
        hint: e == null ? void 0 : e.website,
        maxLength: 2e3,
        placeholder: "https://example.com",
        title: "Website",
        value: o.website || "",
        onChange: (Y) => {
          l({ ...o, website: Y.target.value });
        },
        onKeyDown: () => n("url")
      }
    ),
    /* @__PURE__ */ a.jsx(
      je,
      {
        "data-testid": "x-input",
        error: !!(e != null && e.twitter),
        hint: e == null ? void 0 : e.twitter,
        maxLength: 2e3,
        placeholder: "https://x.com/username",
        title: "X",
        value: w,
        onBlur: (Y) => {
          if (r("twitter", Y.target.value)) {
            const B = Uh(Y.target.value);
            A(B), l({ ...o, twitter: yv(B) });
          }
        },
        onChange: (Y) => {
          A(Y.target.value);
        },
        onKeyDown: () => n("twitter")
      }
    ),
    /* @__PURE__ */ a.jsx(
      je,
      {
        "data-testid": "facebook-input",
        error: !!(e != null && e.facebook),
        hint: e == null ? void 0 : e.facebook,
        maxLength: 2e3,
        placeholder: "https://www.facebook.com/username",
        title: "Facebook",
        value: c,
        onBlur: (Y) => {
          if (r("facebook", Y.target.value)) {
            const B = Jh(Y.target.value);
            v(B), l({ ...o, facebook: kv(B) });
          }
        },
        onChange: (Y) => {
          v(Y.target.value);
        },
        onKeyDown: () => n("facebook")
      }
    ),
    /* @__PURE__ */ a.jsx(
      je,
      {
        "data-testid": "linkedin-input",
        error: !!(e != null && e.linkedin),
        hint: e == null ? void 0 : e.linkedin,
        maxLength: 2e3,
        placeholder: "https://www.linkedin.com/in/username",
        title: "LinkedIn",
        value: g,
        onBlur: (Y) => {
          if (r("linkedin", Y.target.value)) {
            const B = Fp(Y.target.value);
            y(B), l({ ...o, linkedin: b8(B) });
          }
        },
        onChange: (Y) => {
          y(Y.target.value);
        },
        onKeyDown: () => n("linkedin")
      }
    ),
    /* @__PURE__ */ a.jsx(
      je,
      {
        "data-testid": "bluesky-input",
        error: !!(e != null && e.bluesky),
        hint: e == null ? void 0 : e.bluesky,
        maxLength: 2e3,
        placeholder: "https://bsky.app/profile/username",
        title: "Bluesky",
        value: b,
        onBlur: (Y) => {
          if (r("bluesky", Y.target.value)) {
            const B = Rp(Y.target.value);
            x(B), l({ ...o, bluesky: p8(B) });
          }
        },
        onChange: (Y) => {
          x(Y.target.value);
        },
        onKeyDown: () => n("bluesky")
      }
    ),
    /* @__PURE__ */ a.jsx(
      je,
      {
        "data-testid": "threads-input",
        error: !!(e != null && e.threads),
        hint: e == null ? void 0 : e.threads,
        maxLength: 2e3,
        placeholder: "https://threads.net/@username",
        title: "Threads",
        value: h,
        onBlur: (Y) => {
          if (r("threads", Y.target.value)) {
            const B = Hp(Y.target.value);
            f(B), l({ ...o, threads: d8(B) });
          }
        },
        onChange: (Y) => {
          f(Y.target.value);
        },
        onKeyDown: () => n("threads")
      }
    ),
    /* @__PURE__ */ a.jsx(
      je,
      {
        "data-testid": "mastodon-input",
        error: !!(e != null && e.mastodon),
        hint: e == null ? void 0 : e.mastodon,
        maxLength: 2e3,
        placeholder: "https://mastodon.social/@username",
        title: "Mastodon",
        value: W,
        onBlur: (Y) => {
          if (r("mastodon", Y.target.value)) {
            const B = Up(Y.target.value);
            J(B), l({ ...o, mastodon: T8(B) });
          }
        },
        onChange: (Y) => {
          J(Y.target.value);
        },
        onKeyDown: () => n("mastodon")
      }
    ),
    /* @__PURE__ */ a.jsx(
      je,
      {
        "data-testid": "tiktok-input",
        error: !!(e != null && e.tiktok),
        hint: e == null ? void 0 : e.tiktok,
        maxLength: 2e3,
        placeholder: "https://www.tiktok.com/@username",
        title: "TikTok",
        value: G,
        onBlur: (Y) => {
          if (r("tiktok", Y.target.value)) {
            const B = Yp(Y.target.value);
            Q(B), l({ ...o, tiktok: E8(B) });
          }
        },
        onChange: (Y) => {
          Q(Y.target.value);
        },
        onKeyDown: () => n("tiktok")
      }
    ),
    /* @__PURE__ */ a.jsx(
      je,
      {
        "data-testid": "youtube-input",
        error: !!(e != null && e.youtube),
        hint: e == null ? void 0 : e.youtube,
        maxLength: 2e3,
        placeholder: "https://www.youtube.com/@channel",
        title: "YouTube",
        value: C,
        onBlur: (Y) => {
          if (r("youtube", Y.target.value)) {
            const B = Gp(Y.target.value);
            S(B), l({ ...o, youtube: M8(B) });
          }
        },
        onChange: (Y) => {
          S(Y.target.value);
        },
        onKeyDown: () => n("youtube")
      }
    ),
    /* @__PURE__ */ a.jsx(
      je,
      {
        "data-testid": "instagram-input",
        error: !!(e != null && e.instagram),
        hint: e == null ? void 0 : e.instagram,
        maxLength: 2e3,
        placeholder: "https://www.instagram.com/username",
        title: "Instagram",
        value: k,
        onBlur: (Y) => {
          if (r("instagram", Y.target.value)) {
            const B = qp(Y.target.value);
            D(B), l({ ...o, instagram: y8(B) });
          }
        },
        onChange: (Y) => {
          D(Y.target.value);
        },
        onKeyDown: () => n("instagram")
      }
    )
  ] });
}, Z4 = (e) => /* @__PURE__ */ a.jsx(lu, { border: !1, children: /* @__PURE__ */ a.jsx(J4, { ...e }) }), oA = {
  name: ({ name: e }) => {
    let n = "";
    return e || (n = "Name is required"), e && e.length > 191 && (n = "Name is too long"), n;
  },
  email: ({ email: e }) => jt.isEmail(e || "") ? "" : "Enter a valid email address",
  url: ({ url: e }) => !e || jt.isURL(e, { require_tld: !1 }) ? "" : "Enter a valid URL",
  bio: ({ bio: e }) => !e || e.length <= 250 ? "" : "Bio is too long",
  location: ({ location: e }) => !e || e.length <= 150 ? "" : "Location is too long",
  website: ({ website: e }) => !e || jt.isURL(e) && e.length <= 2e3 ? "" : "Enter a valid URL",
  facebook: ({ facebook: e }) => {
    try {
      return Jh(e || ""), "";
    } catch (n) {
      return n instanceof Error ? n.message : "";
    }
  },
  twitter: ({ twitter: e }) => {
    try {
      return Uh(e || ""), "";
    } catch (n) {
      return n instanceof Error ? n.message : "";
    }
  },
  threads: ({ threads: e }) => {
    try {
      return Hp(e || ""), "";
    } catch (n) {
      return n instanceof Error ? n.message : "";
    }
  },
  bluesky: ({ bluesky: e }) => {
    try {
      return Rp(e || ""), "";
    } catch (n) {
      return n instanceof Error ? n.message : "";
    }
  },
  linkedin: ({ linkedin: e }) => {
    try {
      return Fp(e || ""), "";
    } catch (n) {
      return n instanceof Error ? n.message : "";
    }
  },
  instagram: ({ instagram: e }) => {
    try {
      return qp(e || ""), "";
    } catch (n) {
      return n instanceof Error ? n.message : "";
    }
  },
  youtube: ({ youtube: e }) => {
    try {
      return Gp(e || ""), "";
    } catch (n) {
      return n instanceof Error ? n.message : "";
    }
  },
  tiktok: ({ tiktok: e }) => {
    try {
      return Yp(e || ""), "";
    } catch (n) {
      return n instanceof Error ? n.message : "";
    }
  },
  mastodon: ({ mastodon: e }) => {
    try {
      return Up(e || ""), "";
    } catch (n) {
      return n instanceof Error ? n.message : "";
    }
  }
}, W4 = ({ user: e }) => {
  const { updateRoute: n } = We(), { ownerUser: r } = jv(), { currentUser: o } = Ve(), l = rt(), { formState: c, setFormState: v, saveState: w, handleSave: A, updateForm: h, errors: f, setErrors: b, clearError: x, okProps: g } = Hn({
    initialState: e,
    savingDelay: 500,
    savedDelay: 500,
    onValidate: (I) => Object.entries(oA).reduce((de, [be, he]) => {
      const ue = he(I);
      return ue && (de[be] = ue), de;
    }, {}),
    onSave: async (I) => {
      await (S == null ? void 0 : S(I));
    },
    onSaveError: l
  }), y = (I) => h(() => I), k = (I, de) => {
    var he;
    const be = (he = oA[I]) == null ? void 0 : he.call(oA, { [I]: de });
    return be ? (b({ ...f, [I]: be }), !1) : (x(I), !0);
  }, D = fn(), { mutateAsync: C } = pa(), { mutateAsync: S } = Ev(), { mutateAsync: G } = Dv(), { mutateAsync: Q } = Tv(), W = da(), J = zh(), Y = Bt(() => {
    Xr(o) ? n("staff") : n({ isExternal: !0, route: "dashboard" });
  }, [o, n]), B = async (I) => {
    if (I.status === "inactive" && I.roles[0].name !== "Contributor")
      try {
        await (W == null ? void 0 : W.errorIfWouldGoOverLimit("staff"));
      } catch (be) {
        if (be instanceof ha) {
          ve.show(rr, {
            formSheet: !0,
            prompt: be.message || "Your current plan doesn't support more users.",
            onOk: () => n({ route: "/pro", isExternal: !0 })
          });
          return;
        } else
          throw be;
      }
    let de = "This user will no longer be able to log in but their posts will be kept.";
    I.status === "inactive" && (de = "This user will be able to log in again and will have the same permissions they had previously."), ve.show(Et, {
      title: "Are you sure you want to suspend this user?",
      prompt: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        /* @__PURE__ */ a.jsx("strong", { children: "WARNING:" }),
        " ",
        de
      ] }),
      okLabel: I.status === "inactive" ? "Un-suspend" : "Suspend",
      okRunningLabel: I.status === "inactive" ? "Un-suspending..." : "Suspending...",
      okColor: "red",
      onOk: async (be) => {
        const he = {
          ...I,
          status: I.status === "inactive" ? "active" : "inactive"
        };
        try {
          await S(he), v(() => he), be == null || be.remove(), ut({
            title: I.status === "inactive" ? "User un-suspended" : "User suspended",
            type: "success"
          });
        } catch (ue) {
          l(ue);
        }
      }
    });
  }, U = (I, { owner: de }) => {
    ve.show(Et, {
      title: "Are you sure you want to delete this user?",
      prompt: /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
        /* @__PURE__ */ a.jsxs("p", { className: "mb-3", children: [
          /* @__PURE__ */ a.jsx("span", { className: "font-bold", children: I.name || I.email }),
          " will be permanently deleted and all their posts will be automatically assigned to the ",
          /* @__PURE__ */ a.jsx("span", { className: "font-bold", children: de.name }),
          "."
        ] }),
        /* @__PURE__ */ a.jsxs("p", { children: [
          "To make these easy to find in the future, each post will be given an internal tag of ",
          /* @__PURE__ */ a.jsxs("span", { className: "font-bold", children: [
            "#",
            e.slug
          ] })
        ] })
      ] }),
      okLabel: "Delete user",
      okColor: "red",
      onOk: async (be) => {
        try {
          await G(I == null ? void 0 : I.id), be == null || be.remove(), D == null || D.remove(), Y(), ut({
            title: "User deleted",
            type: "success"
          });
        } catch (he) {
          l(he);
        }
      }
    });
  }, te = () => {
    ve.show(Et, {
      title: "Transfer Ownership",
      prompt: "Are you sure you want to transfer the ownership of this blog? You will not be able to undo this action.",
      okLabel: "Yep — I'm sure",
      okColor: "red",
      onOk: async (I) => {
        try {
          await Q(e.id), I == null || I.remove(), ut({
            title: "Ownership transferred",
            type: "success"
          });
        } catch (de) {
          l(de);
        }
      }
    });
  }, R = async (I, de) => {
    try {
      const be = gr(await C({ file: de }));
      switch (I) {
        case "cover_image":
          h((he) => ({ ...he, cover_image: be }));
          break;
        case "profile_image":
          h((he) => ({ ...he, profile_image: be }));
          break;
      }
    } catch (be) {
      const he = be;
      he.response.status === 415 && (he.message = "Unsupported file type"), l(he);
    }
  }, z = (I) => {
    switch (I) {
      case "cover_image":
        h((de) => ({ ...de, cover_image: "" }));
        break;
      case "profile_image":
        h((de) => ({ ...de, profile_image: "" }));
        break;
    }
  }, $ = uA(o) || gd(o) && xd(e);
  let K = [];
  if (Oc(o) && Nv(c) && c.status !== "inactive" && K.push({
    id: "make-owner",
    label: "Make owner",
    onClick: te
  }), c.id !== o.id && (uA(o) && !Oc(e) || gd(o) && xd(e))) {
    let I = c.status === "inactive" ? "Un-suspend user" : "Suspend user";
    K.push({
      id: "delete-user",
      label: "Delete user",
      onClick: () => {
        U(e, { owner: r });
      }
    }, {
      id: "suspend-user",
      label: I,
      onClick: () => {
        B(c);
      }
    });
  }
  K.push({
    id: "view-user-activity",
    label: "View user activity",
    onClick: () => {
      D.remove(), n(`history/view/${c.id}`);
    }
  });
  const ee = "rounded text-sm flex flex-nowrap items-center justify-center px-3 h-8 transition-all cursor-pointer font-medium border border-grey-300 bg-transparent text-black dark:border-grey-800 dark:text-white", F = "flex flex-nowrap items-center justify-center px-3 h-8 opacity-80 hover:opacity-100 bg-[rgba(0,0,0,0.75)] rounded text-sm text-white transition-all cursor-pointer font-medium nowrap", _ = c.status === "inactive" ? " (Suspended)" : "", [fe, xe] = se("profile");
  return /* @__PURE__ */ a.jsx(
    vt,
    {
      afterClose: Y,
      animate: Xr(o),
      backDrop: Xr(o),
      buttonsDisabled: g.disabled,
      cancelLabel: "Close",
      dirty: w === "unsaved",
      okColor: g.color,
      okLabel: g.label || "Save",
      size: Xr(o) ? "md" : "bleed",
      stickyFooter: !0,
      testId: "user-detail-modal",
      width: Xr(o) ? 600 : "full",
      onOk: async () => {
        await A({ fakeWhenUnchanged: !0 });
      },
      children: /* @__PURE__ */ a.jsxs("div", { children: [
        /* @__PURE__ */ a.jsx("div", { className: `relative ${Xr(o) ? "-mx-8 -mt-8 rounded-t" : "-mx-10 -mt-10"}`, children: /* @__PURE__ */ a.jsx(
          "div",
          {
            className: `flex flex-wrap items-end justify-between gap-8 p-8 ${c.cover_image ? "bg-cover bg-center" : ""} ${!Xr(o) && "min-h-[30vmin]"}`,
            style: {
              backgroundImage: c.cover_image ? `url(${c.cover_image})` : "none"
            },
            children: /* @__PURE__ */ a.jsxs("div", { className: "flex w-full flex-col gap-2", children: [
              /* @__PURE__ */ a.jsxs("div", { className: "flex flex-nowrap items-start justify-between gap-3", children: [
                /* @__PURE__ */ a.jsx("div", { children: /* @__PURE__ */ a.jsx(
                  wr,
                  {
                    deleteButtonClassName: "md:invisible absolute pr-3 -right-2 -top-2 flex h-8 w-10 cursor-pointer items-center justify-end rounded-full bg-[rgba(0,0,0,0.75)] text-white group-hover:!visible",
                    deleteButtonContent: /* @__PURE__ */ a.jsx(Mt, { colorClass: "text-white", name: "trash", size: "sm" }),
                    editButtonClassName: "md:invisible absolute right-[22px] -top-2 flex h-8 w-8 cursor-pointer items-center justify-center text-white group-hover:!visible z-20",
                    fileUploadClassName: "rounded-full bg-black flex items-center justify-center opacity-80 transition hover:opacity-100 -ml-2 cursor-pointer h-[80px] w-[80px]",
                    fileUploadProps: { dragIndicatorClassName: "rounded-full" },
                    id: "avatar",
                    imageClassName: "w-full h-full object-cover rounded-full shrink-0",
                    imageContainerClassName: "relative group bg-cover bg-center -ml-1 h-16 w-16 md:h-18 md:w-18 shrink-0",
                    imageURL: c.profile_image ?? void 0,
                    pintura: {
                      isEnabled: J.isEnabled,
                      openEditor: async () => J.openEditor({
                        image: c.profile_image || "",
                        handleSave: async (I) => {
                          R("profile_image", I);
                        }
                      })
                    },
                    unstyled: !0,
                    width: "80px",
                    onDelete: () => {
                      z("profile_image");
                    },
                    onUpload: (I) => {
                      R("profile_image", I);
                    },
                    children: /* @__PURE__ */ a.jsx(Mt, { colorClass: "black", name: "user-add", size: "lg" })
                  }
                ) }),
                /* @__PURE__ */ a.jsxs("div", { className: "flex flex-nowrap items-start gap-3", children: [
                  /* @__PURE__ */ a.jsx(
                    wr,
                    {
                      buttonContainerClassName: "flex items-end gap-4 justify-end flex-nowrap",
                      deleteButtonClassName: F,
                      deleteButtonContent: "Delete cover image",
                      editButtonClassName: F,
                      fileUploadClassName: ee,
                      id: "cover-image",
                      imageClassName: "hidden",
                      imageURL: c.cover_image || "",
                      pintura: {
                        isEnabled: J.isEnabled,
                        openEditor: async () => J.openEditor({
                          image: c.cover_image || "",
                          handleSave: async (I) => {
                            R("cover_image", I);
                          }
                        })
                      },
                      unstyled: !0,
                      onDelete: () => {
                        z("cover_image");
                      },
                      onUpload: (I) => {
                        R("cover_image", I);
                      },
                      children: "Upload cover image"
                    }
                  ),
                  $ && /* @__PURE__ */ a.jsx("div", { className: "z-10", children: /* @__PURE__ */ a.jsx(
                    bp,
                    {
                      items: K,
                      position: "end",
                      trigger: /* @__PURE__ */ a.jsxs(
                        "button",
                        {
                          className: me(
                            "flex h-8 cursor-pointer items-center justify-center rounded px-3",
                            c.cover_image ? "bg-[rgba(0,0,0,0.75)] opacity-80 hover:opacity-100" : "border border-grey-300 bg-transparent text-black dark:border-grey-800 dark:text-white"
                          ),
                          type: "button",
                          children: [
                            /* @__PURE__ */ a.jsx("span", { className: "sr-only", children: "Actions" }),
                            /* @__PURE__ */ a.jsx(
                              Mt,
                              {
                                colorClass: c.cover_image ? "text-white" : void 0,
                                name: "ellipsis",
                                size: "md"
                              }
                            )
                          ]
                        }
                      )
                    }
                  ) })
                ] })
              ] }),
              /* @__PURE__ */ a.jsxs("div", { children: [
                /* @__PURE__ */ a.jsxs(ct, { level: 3, styles: me("break-words md:break-normal", c.cover_image ? "text-white" : "text-black dark:text-white"), children: [
                  e.name,
                  _
                ] }),
                /* @__PURE__ */ a.jsx("span", { className: me("text-md font-medium capitalize", c.cover_image ? "text-white" : "text-black dark:text-white"), children: e.roles[0].name.toLowerCase() })
              ] })
            ] })
          }
        ) }),
        /* @__PURE__ */ a.jsx("div", { className: `${!Xr(o) && "mx-auto max-w-[536px]"} mt-6 flex flex-col`, children: /* @__PURE__ */ a.jsx(
          Zr,
          {
            selectedTab: fe,
            tabs: [
              {
                id: "profile",
                title: "Profile",
                contents: /* @__PURE__ */ a.jsx(U4, { clearError: x, errors: f, setUserData: y, user: c, validateField: k })
              },
              {
                id: "social-links",
                title: "Social Links",
                contents: /* @__PURE__ */ a.jsx(Z4, { clearError: x, errors: f, setUserData: y, user: c, validateField: k })
              },
              {
                id: "email-notifications",
                title: "Email Notifications",
                contents: /* @__PURE__ */ a.jsx(H4, { setUserData: y, user: c })
              }
            ],
            onTabChange: xe
          }
        ) })
      ] })
    }
  );
}, V4 = ({ params: e }) => {
  var c;
  const { currentUser: n } = Ve(), r = n.slug === (e == null ? void 0 : e.slug), { data: o } = Mv(
    (e == null ? void 0 : e.slug) || "",
    { enabled: !r && !!(e != null && e.slug) }
  ), l = r ? n : (c = o == null ? void 0 : o.users) == null ? void 0 : c[0];
  return l ? /* @__PURE__ */ a.jsx(W4, { user: l }) : null;
}, K4 = ve.create(V4), _4 = (e) => /* @__PURE__ */ Ze("svg", { width: 42, height: 37, viewBox: "0 0 80 37", xmlns: "http://www.w3.org/2000/svg", className: "css-1oudp6l-ZapierLogo--red500", ...e }, /* @__PURE__ */ Ze("title", null, "zapier-logo"), /* @__PURE__ */ Ze("path", { fill: "#ff4a00", fillRule: "evenodd", clipRule: "evenodd", d: "M53.934 4.185h-2.94l2.079-2.073A5.053 5.053 0 0 0 51.886.928l-2.078 2.073V.07a5.129 5.129 0 0 0-.836-.07h-.006c-.285 0-.564.024-.836.07V3L46.052.929c-.23.163-.444.344-.642.543h-.002c-.198.198-.38.412-.543.641l2.078 2.073h-2.938s-.07.55-.07.835v.003c0 .284.024.564.07.836h2.938l-2.078 2.07a5.05 5.05 0 0 0 1.187 1.183l2.078-2.072v2.93c.272.046.55.07.835.07h.007c.285 0 .565-.024.836-.07v-2.93l2.078 2.072a5.098 5.098 0 0 0 1.186-1.184L50.995 5.86h2.94c.045-.272.07-.55.07-.834v-.007a5.08 5.08 0 0 0-.07-.833ZM58.85 25.53c-.84-.786-1.279-2.026-1.32-3.72h10.585c.02-.222.04-.488.06-.802.02-.312.031-.61.031-.892a9.263 9.263 0 0 0-.425-2.859c-.283-.877-.698-1.633-1.243-2.268a5.736 5.736 0 0 0-2.032-1.497c-.809-.364-1.75-.545-2.82-.545-1.254 0-2.341.217-3.261.65a6.532 6.532 0 0 0-2.29 1.755c-.606.736-1.056 1.603-1.349 2.6-.293 1-.44 2.073-.44 3.222 0 1.17.152 2.244.455 3.222a6.59 6.59 0 0 0 1.44 2.541c.657.716 1.492 1.27 2.503 1.664 1.01.393 2.223.59 3.64.59.97 0 1.854-.071 2.653-.212a10.191 10.191 0 0 0 2.198-.635 7.18 7.18 0 0 0-.181-1.286 4.54 4.54 0 0 0-.395-1.104 11.178 11.178 0 0 1-4.094.757c-1.638 0-2.876-.394-3.715-1.18ZM30.51 13.31a6.378 6.378 0 0 1 1.273-.121 7.115 7.115 0 0 1 1.274.12c.02.042.045.167.075.38.03.21.06.438.091.68.03.242.06.474.091.696.03.222.045.363.045.423.203-.323.445-.635.728-.938a4.85 4.85 0 0 1 1.016-.816 5.298 5.298 0 0 1 1.335-.575 6.016 6.016 0 0 1 1.653-.212c.91 0 1.753.152 2.532.454a5.068 5.068 0 0 1 2.001 1.406c.556.636.99 1.442 1.305 2.42.313.979.47 2.133.47 3.464 0 2.662-.723 4.744-2.169 6.246-1.446 1.503-3.492 2.254-6.141 2.254-.445 0-.9-.03-1.365-.09a8.095 8.095 0 0 1-1.213-.243v7.109a10.389 10.389 0 0 1-1.517.12c-.222 0-.47-.01-.742-.03-.273-.02-.52-.05-.743-.09V13.31Zm-6.218 5.294c0-1.19-.304-2.017-.91-2.481-.607-.463-1.486-.695-2.639-.695-.708 0-1.37.055-1.986.166-.617.111-1.219.257-1.804.438-.385-.665-.576-1.461-.576-2.39a14.015 14.015 0 0 1 2.274-.514 16.555 16.555 0 0 1 2.396-.181c2.021 0 3.558.46 4.61 1.376 1.05.918 1.576 2.385 1.576 4.401v9.71a47.6 47.6 0 0 1-2.577.5 18.55 18.55 0 0 1-3.094.256c-.99 0-1.885-.09-2.684-.272-.799-.181-1.476-.473-2.032-.877a4.061 4.061 0 0 1-1.289-1.543c-.303-.625-.454-1.38-.454-2.269 0-.866.176-1.628.53-2.283a4.77 4.77 0 0 1 1.44-1.634 6.427 6.427 0 0 1 2.093-.967 9.538 9.538 0 0 1 2.487-.318c.647 0 1.178.015 1.592.045.415.031.763.066 1.047.106v-.574Zm-23.625 9.8L8.855 15.7H1.637a7.356 7.356 0 0 1-.09-1.21c0-.424.03-.818.09-1.18h11.677l.15.393-8.248 12.735h7.734c.06.404.09.817.09 1.24 0 .404-.03.787-.09 1.15H.819l-.152-.424Zm22.472-6.987c.466.04.85.08 1.153.12v4.931a8.642 8.642 0 0 1-1.32.227 14.05 14.05 0 0 1-1.44.076c-.364 0-.748-.02-1.152-.06a2.9 2.9 0 0 1-1.107-.333 2.293 2.293 0 0 1-.834-.787c-.223-.342-.334-.817-.334-1.422 0-.947.328-1.653.986-2.117.656-.464 1.612-.696 2.866-.696.323 0 .717.02 1.182.061Zm11.555 5.172a5.87 5.87 0 0 1-1.183-.302v-6.292c0-.767.111-1.426.334-1.981.223-.555.515-1.014.88-1.377a3.58 3.58 0 0 1 1.243-.816c.464-.182.95-.273 1.455-.273 1.355 0 2.33.475 2.927 1.422.596.948.895 2.229.895 3.842 0 1.008-.127 1.88-.38 2.616-.253.736-.596 1.346-1.03 1.83a3.965 3.965 0 0 1-1.562 1.074 5.558 5.558 0 0 1-2.002.348c-.647 0-1.173-.03-1.577-.09Zm13.435-10.92h-1.972a3.793 3.793 0 0 1-.09-.56 6.432 6.432 0 0 1 0-1.24c.02-.211.05-.398.09-.56h4.914v15.52c-.223.039-.47.069-.743.09-.273.019-.521.03-.743.03-.203 0-.44-.011-.713-.03a7.367 7.367 0 0 1-.743-.09v-13.16Zm17.105 3.903a5.71 5.71 0 0 0-.227-1.62 4.113 4.113 0 0 0-.668-1.345 3.246 3.246 0 0 0-1.122-.922c-.455-.232-.996-.349-1.623-.349-1.233 0-2.178.374-2.836 1.12-.656.746-1.056 1.785-1.197 3.116h7.673Zm6.916-6.353a8.11 8.11 0 0 0-.637.09v15.519a10.308 10.308 0 0 0 1.517.12c.221 0 .47-.01.742-.03.273-.02.52-.05.743-.09v-7.714c0-1.048.117-1.905.35-2.57.231-.666.545-1.19.939-1.574a3.26 3.26 0 0 1 1.335-.801 5.33 5.33 0 0 1 1.562-.227h.409c.172 0 .338.02.5.06.04-.242.076-.494.107-.756a6.694 6.694 0 0 0 .014-1.392 4.99 4.99 0 0 0-.09-.575 4.641 4.641 0 0 0-.44-.045 8.203 8.203 0 0 0-.5-.015c-1.092 0-1.987.253-2.684.756a6.273 6.273 0 0 0-1.683 1.785c0-.343-.031-.76-.091-1.255a17.208 17.208 0 0 0-.182-1.195 5.019 5.019 0 0 0-.607-.09 7.54 7.54 0 0 0-.667-.031c-.223 0-.435.01-.637.03ZM50.034 6.084c.125-.33.194-.687.194-1.06v-.005c0-.373-.07-.73-.194-1.06a3.013 3.013 0 0 0-1.063-.193h-.004a3.03 3.03 0 0 0-1.064.193 3.03 3.03 0 0 0-.193 1.06v.005c0 .373.07.73.194 1.06.33.124.689.193 1.063.193h.005c.373 0 .732-.069 1.062-.193Z" })), $4 = ve.create(() => {
  var y, k, D, C;
  const e = ve.useModal(), { updateRoute: n } = We(), { zapierTemplates: r } = Cv(), { data: { integrations: o } = { integrations: [] } } = Ih(), { config: l } = Ve(), { adminRoot: c } = ca(), { mutateAsync: v } = Kp(), w = rt(), [A, h] = se(!1), f = (D = (k = (y = l.hostSettings) == null ? void 0 : y.limits) == null ? void 0 : k.customIntegrations) == null ? void 0 : D.disabled, b = o.find(({ slug: S }) => S === "zapier"), x = (C = b == null ? void 0 : b.api_keys) == null ? void 0 : C.find((S) => S.type === "admin");
  ye(() => {
    f && n("integrations");
  }, [f, n]);
  const g = () => {
    !b || !x || (h(!1), ve.show(Et, {
      title: "Regenerate Admin API Key",
      prompt: 'You will need to locate the Ghost App within your Zapier account and click on "Reconnect" to enter the new Admin API Key.',
      okLabel: "Regenerate Admin API Key",
      onOk: async (S) => {
        try {
          await v({ integrationId: b.id, apiKeyId: x.id }), h(!0), S == null || S.remove();
        } catch (G) {
          w(G);
        }
      }
    }));
  };
  return /* @__PURE__ */ a.jsxs(
    vt,
    {
      afterClose: () => {
        n("integrations");
      },
      cancelLabel: "",
      footer: /* @__PURE__ */ a.jsxs("div", { className: "mx-8 flex w-full items-center justify-between", children: [
        /* @__PURE__ */ a.jsxs(
          "a",
          {
            className: "mt-1 self-baseline text-sm font-bold",
            href: "https://zapier.com/apps/ghost/integrations?utm_medium=partner_api&utm_source=widget&utm_campaign=Widget",
            rel: "noopener noreferrer",
            target: "_blank",
            children: [
              "View more Ghost integrations powered by ",
              /* @__PURE__ */ a.jsx("span", { children: /* @__PURE__ */ a.jsx(_4, { className: "relative top-[-2px] inline-block h-6" }) })
            ]
          }
        ),
        /* @__PURE__ */ a.jsx(He, { color: "black", label: "Close", onClick: () => {
          e.remove();
        } })
      ] }),
      okColor: "black",
      okLabel: "Close",
      testId: "zapier-modal",
      title: "",
      stickyFooter: !0,
      onOk: () => {
        n("integrations"), e.remove();
      },
      children: [
        /* @__PURE__ */ a.jsx(
          To,
          {
            detail: "Automation for your favorite apps",
            extra: /* @__PURE__ */ a.jsx("div", { className: "-mb-4 mt-1", children: /* @__PURE__ */ a.jsx(xu, { keys: [
              {
                label: "Admin API key",
                text: x == null ? void 0 : x.secret,
                hint: A ? /* @__PURE__ */ a.jsx("div", { className: "text-green", children: "Admin API Key was successfully regenerated" }) : void 0,
                onRegenerate: g
              },
              { label: "API URL", text: window.location.origin + ca().subdir }
            ] }) }),
            icon: /* @__PURE__ */ a.jsx(Iv, { className: "size-14" }),
            title: "Zapier"
          }
        ),
        /* @__PURE__ */ a.jsx(br, { children: r.map((S) => /* @__PURE__ */ a.jsx(
          Wr,
          {
            action: /* @__PURE__ */ a.jsx(He, { className: "whitespace-nowrap text-sm font-semibold text-[#FF4A00]", href: S.url, label: "Use this Zap", tag: "a", target: "_blank", link: !0, unstyled: !0 }),
            bgOnHover: !1,
            className: "flex items-center gap-3 py-2 pl-3",
            title: /* @__PURE__ */ a.jsxs("div", { className: "flex flex-col gap-4 md:flex-row md:items-center", children: [
              /* @__PURE__ */ a.jsxs("div", { className: "flex shrink-0 flex-nowrap items-center gap-2", children: [
                /* @__PURE__ */ a.jsx("img", { className: "size-8 object-contain dark:invert", role: "presentation", src: lA(S.ghostImage, c) }),
                /* @__PURE__ */ a.jsx(Mt, { name: "arrow-right", size: "xs" }),
                /* @__PURE__ */ a.jsx("img", { className: "size-8 object-contain", role: "presentation", src: lA(S.appImage, c) })
              ] }),
              /* @__PURE__ */ a.jsx("span", { className: "text-sm", children: S.title })
            ] }),
            hideActions: !0
          }
        )) })
      ]
    }
  );
}), rk = {
  AddIntegrationModal: W8,
  AddNewsletterModal: K8,
  AddRecommendationModal: Vp,
  CustomIntegrationModal: g6,
  DesignAndThemeModal: n9,
  EditRecommendationModal: Pv,
  FirstpromoterModal: x9,
  HistoryModal: C9,
  InviteUserModal: I9,
  NavigationModal: P9,
  NewsletterDetailModal: q9,
  PinturaModal: t4,
  PortalModal: g4,
  SlackModal: x4,
  StripeConnectModal: N4,
  TierDetailModal: P4,
  UnsplashModal: O4,
  UserDetailModal: K4,
  ZapierModal: $4,
  AnnouncementBarModal: i6,
  EmbedSignupFormModal: g9,
  OffersContainerModal: _9,
  // OffersModal,
  // AddOfferModal,
  // EditOfferModal,
  AboutModal: J8,
  OfferSuccess: hm
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
};
export {
  rk as default
};
//# sourceMappingURL=modals-B5dtfzsB.mjs.map