92a3337aeb
CI Pipeline / test (20) (pull_request) Successful in 2m41s
CI Pipeline / test (18) (pull_request) Successful in 3m21s
CI Pipeline / e2e (chromium) (pull_request) Failing after 1m25s
CI Pipeline / e2e (firefox) (pull_request) Failing after 1m24s
CI Pipeline / e2e (webkit) (pull_request) Failing after 1m24s
CI Pipeline / visual-regression (pull_request) Failing after 1m53s
CI Pipeline / performance (pull_request) Failing after 1m31s
CI Pipeline / lint (pull_request) Failing after 1m5s
CI Pipeline / storybook (pull_request) Successful in 1m36s
CI Pipeline / build (pull_request) Failing after 1m19s
19999 lines
551 KiB
JavaScript
19999 lines
551 KiB
JavaScript
var mf = Object.create;
|
|
var Go = Object.defineProperty;
|
|
var hf = Object.getOwnPropertyDescriptor;
|
|
var gf = Object.getOwnPropertyNames;
|
|
var yf = Object.getPrototypeOf,
|
|
bf = Object.prototype.hasOwnProperty;
|
|
var a = (e, t) => Go(e, "name", { value: t, configurable: !0 }),
|
|
mo = /* @__PURE__ */ ((e) =>
|
|
typeof require < "u"
|
|
? require
|
|
: typeof Proxy < "u"
|
|
? new Proxy(e, {
|
|
get: (t, o) => (typeof require < "u" ? require : t)[o],
|
|
})
|
|
: e)(function (e) {
|
|
if (typeof require < "u") return require.apply(this, arguments);
|
|
throw Error('Dynamic require of "' + e + '" is not supported');
|
|
});
|
|
var we = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports),
|
|
vf = (e, t) => {
|
|
for (var o in t) Go(e, o, { get: t[o], enumerable: !0 });
|
|
},
|
|
xf = (e, t, o, i) => {
|
|
if ((t && typeof t == "object") || typeof t == "function")
|
|
for (let r of gf(t))
|
|
!bf.call(e, r) &&
|
|
r !== o &&
|
|
Go(e, r, {
|
|
get: () => t[r],
|
|
enumerable: !(i = hf(t, r)) || i.enumerable,
|
|
});
|
|
return e;
|
|
};
|
|
var Ve = (e, t, o) => (
|
|
(o = e != null ? mf(yf(e)) : {}),
|
|
xf(
|
|
// If the importer is in node compatibility mode or this is not an ESM
|
|
// file that has been converted to a CommonJS file using a Babel-
|
|
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
t || !e || !e.__esModule
|
|
? Go(o, "default", { value: e, enumerable: !0 })
|
|
: o,
|
|
e,
|
|
)
|
|
);
|
|
|
|
// ../node_modules/prop-types/lib/ReactPropTypesSecret.js
|
|
var Qa = we((T_, Ya) => {
|
|
"use strict";
|
|
var py = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
|
|
Ya.exports = py;
|
|
});
|
|
|
|
// ../node_modules/prop-types/factoryWithThrowingShims.js
|
|
var el = we((C_, Ja) => {
|
|
"use strict";
|
|
var dy = Qa();
|
|
function Xa() {}
|
|
a(Xa, "emptyFunction");
|
|
function Za() {}
|
|
a(Za, "emptyFunctionWithReset");
|
|
Za.resetWarningCache = Xa;
|
|
Ja.exports = function () {
|
|
function e(i, r, n, l, u, c) {
|
|
if (c !== dy) {
|
|
var d = new Error(
|
|
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. \
|
|
Read more at http://fb.me/use-check-prop-types",
|
|
);
|
|
throw ((d.name = "Invariant Violation"), d);
|
|
}
|
|
}
|
|
(a(e, "shim"), (e.isRequired = e));
|
|
function t() {
|
|
return e;
|
|
}
|
|
a(t, "getShim");
|
|
var o = {
|
|
array: e,
|
|
bigint: e,
|
|
bool: e,
|
|
func: e,
|
|
number: e,
|
|
object: e,
|
|
string: e,
|
|
symbol: e,
|
|
any: e,
|
|
arrayOf: t,
|
|
element: e,
|
|
elementType: e,
|
|
instanceOf: t,
|
|
node: e,
|
|
objectOf: t,
|
|
oneOf: t,
|
|
oneOfType: t,
|
|
shape: t,
|
|
exact: t,
|
|
checkPropTypes: Za,
|
|
resetWarningCache: Xa,
|
|
};
|
|
return ((o.PropTypes = o), o);
|
|
};
|
|
});
|
|
|
|
// ../node_modules/prop-types/index.js
|
|
var si = we((P_, tl) => {
|
|
tl.exports = el()();
|
|
var k_, O_;
|
|
});
|
|
|
|
// ../node_modules/react-fast-compare/index.js
|
|
var rl = we((A_, ol) => {
|
|
var fy = typeof Element < "u",
|
|
my = typeof Map == "function",
|
|
hy = typeof Set == "function",
|
|
gy = typeof ArrayBuffer == "function" && !!ArrayBuffer.isView;
|
|
function fr(e, t) {
|
|
if (e === t) return !0;
|
|
if (e && t && typeof e == "object" && typeof t == "object") {
|
|
if (e.constructor !== t.constructor) return !1;
|
|
var o, i, r;
|
|
if (Array.isArray(e)) {
|
|
if (((o = e.length), o != t.length)) return !1;
|
|
for (i = o; i-- !== 0; ) if (!fr(e[i], t[i])) return !1;
|
|
return !0;
|
|
}
|
|
var n;
|
|
if (my && e instanceof Map && t instanceof Map) {
|
|
if (e.size !== t.size) return !1;
|
|
for (n = e.entries(); !(i = n.next()).done; )
|
|
if (!t.has(i.value[0])) return !1;
|
|
for (n = e.entries(); !(i = n.next()).done; )
|
|
if (!fr(i.value[1], t.get(i.value[0]))) return !1;
|
|
return !0;
|
|
}
|
|
if (hy && e instanceof Set && t instanceof Set) {
|
|
if (e.size !== t.size) return !1;
|
|
for (n = e.entries(); !(i = n.next()).done; )
|
|
if (!t.has(i.value[0])) return !1;
|
|
return !0;
|
|
}
|
|
if (gy && ArrayBuffer.isView(e) && ArrayBuffer.isView(t)) {
|
|
if (((o = e.length), o != t.length)) return !1;
|
|
for (i = o; i-- !== 0; ) if (e[i] !== t[i]) return !1;
|
|
return !0;
|
|
}
|
|
if (e.constructor === RegExp)
|
|
return e.source === t.source && e.flags === t.flags;
|
|
if (
|
|
e.valueOf !== Object.prototype.valueOf &&
|
|
typeof e.valueOf == "function" &&
|
|
typeof t.valueOf == "function"
|
|
)
|
|
return e.valueOf() === t.valueOf();
|
|
if (
|
|
e.toString !== Object.prototype.toString &&
|
|
typeof e.toString == "function" &&
|
|
typeof t.toString == "function"
|
|
)
|
|
return e.toString() === t.toString();
|
|
if (((r = Object.keys(e)), (o = r.length), o !== Object.keys(t).length))
|
|
return !1;
|
|
for (i = o; i-- !== 0; )
|
|
if (!Object.prototype.hasOwnProperty.call(t, r[i])) return !1;
|
|
if (fy && e instanceof Element) return !1;
|
|
for (i = o; i-- !== 0; )
|
|
if (
|
|
!(
|
|
(r[i] === "_owner" || r[i] === "__v" || r[i] === "__o") &&
|
|
e.$$typeof
|
|
) &&
|
|
!fr(e[r[i]], t[r[i]])
|
|
)
|
|
return !1;
|
|
return !0;
|
|
}
|
|
return e !== e && t !== t;
|
|
}
|
|
a(fr, "equal");
|
|
ol.exports = /* @__PURE__ */ a(function (t, o) {
|
|
try {
|
|
return fr(t, o);
|
|
} catch (i) {
|
|
if ((i.message || "").match(/stack|recursion/i))
|
|
return (
|
|
console.warn("react-fast-compare cannot handle circular refs"),
|
|
!1
|
|
);
|
|
throw i;
|
|
}
|
|
}, "isEqual");
|
|
});
|
|
|
|
// ../node_modules/invariant/browser.js
|
|
var il = we((M_, nl) => {
|
|
"use strict";
|
|
var yy = /* @__PURE__ */ a(function (e, t, o, i, r, n, l, u) {
|
|
if (!e) {
|
|
var c;
|
|
if (t === void 0)
|
|
c = new Error(
|
|
"Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.",
|
|
);
|
|
else {
|
|
var d = [o, i, r, n, l, u],
|
|
p = 0;
|
|
((c = new Error(
|
|
t.replace(/%s/g, function () {
|
|
return d[p++];
|
|
}),
|
|
)),
|
|
(c.name = "Invariant Violation"));
|
|
}
|
|
throw ((c.framesToPop = 1), c);
|
|
}
|
|
}, "invariant");
|
|
nl.exports = yy;
|
|
});
|
|
|
|
// ../node_modules/shallowequal/index.js
|
|
var al = we((N_, sl) => {
|
|
sl.exports = /* @__PURE__ */ a(function (t, o, i, r) {
|
|
var n = i ? i.call(r, t, o) : void 0;
|
|
if (n !== void 0) return !!n;
|
|
if (t === o) return !0;
|
|
if (typeof t != "object" || !t || typeof o != "object" || !o) return !1;
|
|
var l = Object.keys(t),
|
|
u = Object.keys(o);
|
|
if (l.length !== u.length) return !1;
|
|
for (
|
|
var c = Object.prototype.hasOwnProperty.bind(o), d = 0;
|
|
d < l.length;
|
|
d++
|
|
) {
|
|
var p = l[d];
|
|
if (!c(p)) return !1;
|
|
var f = t[p],
|
|
h = o[p];
|
|
if (
|
|
((n = i ? i.call(r, f, h, p) : void 0),
|
|
n === !1 || (n === void 0 && f !== h))
|
|
)
|
|
return !1;
|
|
}
|
|
return !0;
|
|
}, "shallowEqual");
|
|
});
|
|
|
|
// ../node_modules/memoizerific/memoizerific.js
|
|
var Di = we((Jl, Ai) => {
|
|
(function (e) {
|
|
if (typeof Jl == "object" && typeof Ai < "u") Ai.exports = e();
|
|
else if (typeof define == "function" && define.amd) define([], e);
|
|
else {
|
|
var t;
|
|
(typeof window < "u"
|
|
? (t = window)
|
|
: typeof global < "u"
|
|
? (t = global)
|
|
: typeof self < "u"
|
|
? (t = self)
|
|
: (t = this),
|
|
(t.memoizerific = e()));
|
|
}
|
|
})(function () {
|
|
var e, t, o;
|
|
return /* @__PURE__ */ a(function i(r, n, l) {
|
|
function u(p, f) {
|
|
if (!n[p]) {
|
|
if (!r[p]) {
|
|
var h = typeof mo == "function" && mo;
|
|
if (!f && h) return h(p, !0);
|
|
if (c) return c(p, !0);
|
|
var y = new Error("Cannot find module '" + p + "'");
|
|
throw ((y.code = "MODULE_NOT_FOUND"), y);
|
|
}
|
|
var m = (n[p] = { exports: {} });
|
|
r[p][0].call(
|
|
m.exports,
|
|
function (b) {
|
|
var x = r[p][1][b];
|
|
return u(x || b);
|
|
},
|
|
m,
|
|
m.exports,
|
|
i,
|
|
r,
|
|
n,
|
|
l,
|
|
);
|
|
}
|
|
return n[p].exports;
|
|
}
|
|
a(u, "s");
|
|
for (var c = typeof mo == "function" && mo, d = 0; d < l.length; d++)
|
|
u(l[d]);
|
|
return u;
|
|
}, "e")(
|
|
{
|
|
1: [
|
|
function (i, r, n) {
|
|
r.exports = function (l) {
|
|
if (typeof Map != "function" || l) {
|
|
var u = i("./similar");
|
|
return new u();
|
|
} else return /* @__PURE__ */ new Map();
|
|
};
|
|
},
|
|
{ "./similar": 2 },
|
|
],
|
|
2: [
|
|
function (i, r, n) {
|
|
function l() {
|
|
return (
|
|
(this.list = []),
|
|
(this.lastItem = void 0),
|
|
(this.size = 0),
|
|
this
|
|
);
|
|
}
|
|
(a(l, "Similar"),
|
|
(l.prototype.get = function (u) {
|
|
var c;
|
|
if (this.lastItem && this.isEqual(this.lastItem.key, u))
|
|
return this.lastItem.val;
|
|
if (((c = this.indexOf(u)), c >= 0))
|
|
return ((this.lastItem = this.list[c]), this.list[c].val);
|
|
}),
|
|
(l.prototype.set = function (u, c) {
|
|
var d;
|
|
return this.lastItem && this.isEqual(this.lastItem.key, u)
|
|
? ((this.lastItem.val = c), this)
|
|
: ((d = this.indexOf(u)),
|
|
d >= 0
|
|
? ((this.lastItem = this.list[d]),
|
|
(this.list[d].val = c),
|
|
this)
|
|
: ((this.lastItem = { key: u, val: c }),
|
|
this.list.push(this.lastItem),
|
|
this.size++,
|
|
this));
|
|
}),
|
|
(l.prototype.delete = function (u) {
|
|
var c;
|
|
if (
|
|
(this.lastItem &&
|
|
this.isEqual(this.lastItem.key, u) &&
|
|
(this.lastItem = void 0),
|
|
(c = this.indexOf(u)),
|
|
c >= 0)
|
|
)
|
|
return (this.size--, this.list.splice(c, 1)[0]);
|
|
}),
|
|
(l.prototype.has = function (u) {
|
|
var c;
|
|
return this.lastItem && this.isEqual(this.lastItem.key, u)
|
|
? !0
|
|
: ((c = this.indexOf(u)),
|
|
c >= 0 ? ((this.lastItem = this.list[c]), !0) : !1);
|
|
}),
|
|
(l.prototype.forEach = function (u, c) {
|
|
var d;
|
|
for (d = 0; d < this.size; d++)
|
|
u.call(c || this, this.list[d].val, this.list[d].key, this);
|
|
}),
|
|
(l.prototype.indexOf = function (u) {
|
|
var c;
|
|
for (c = 0; c < this.size; c++)
|
|
if (this.isEqual(this.list[c].key, u)) return c;
|
|
return -1;
|
|
}),
|
|
(l.prototype.isEqual = function (u, c) {
|
|
return u === c || (u !== u && c !== c);
|
|
}),
|
|
(r.exports = l));
|
|
},
|
|
{},
|
|
],
|
|
3: [
|
|
function (i, r, n) {
|
|
var l = i("map-or-similar");
|
|
r.exports = function (p) {
|
|
var f = new l(!1),
|
|
h = [];
|
|
return function (y) {
|
|
var m = /* @__PURE__ */ a(function () {
|
|
var b = f,
|
|
x,
|
|
E,
|
|
g = arguments.length - 1,
|
|
v = Array(g + 1),
|
|
S = !0,
|
|
w;
|
|
if ((m.numArgs || m.numArgs === 0) && m.numArgs !== g + 1)
|
|
throw new Error(
|
|
"Memoizerific functions should always be called with the same number of arguments",
|
|
);
|
|
for (w = 0; w < g; w++) {
|
|
if (
|
|
((v[w] = {
|
|
cacheItem: b,
|
|
arg: arguments[w],
|
|
}),
|
|
b.has(arguments[w]))
|
|
) {
|
|
b = b.get(arguments[w]);
|
|
continue;
|
|
}
|
|
((S = !1),
|
|
(x = new l(!1)),
|
|
b.set(arguments[w], x),
|
|
(b = x));
|
|
}
|
|
return (
|
|
S &&
|
|
(b.has(arguments[g])
|
|
? (E = b.get(arguments[g]))
|
|
: (S = !1)),
|
|
S ||
|
|
((E = y.apply(null, arguments)), b.set(arguments[g], E)),
|
|
p > 0 &&
|
|
((v[g] = {
|
|
cacheItem: b,
|
|
arg: arguments[g],
|
|
}),
|
|
S ? u(h, v) : h.push(v),
|
|
h.length > p && c(h.shift())),
|
|
(m.wasMemoized = S),
|
|
(m.numArgs = g + 1),
|
|
E
|
|
);
|
|
}, "memoizerific");
|
|
return (
|
|
(m.limit = p),
|
|
(m.wasMemoized = !1),
|
|
(m.cache = f),
|
|
(m.lru = h),
|
|
m
|
|
);
|
|
};
|
|
};
|
|
function u(p, f) {
|
|
var h = p.length,
|
|
y = f.length,
|
|
m,
|
|
b,
|
|
x;
|
|
for (b = 0; b < h; b++) {
|
|
for (m = !0, x = 0; x < y; x++)
|
|
if (!d(p[b][x].arg, f[x].arg)) {
|
|
m = !1;
|
|
break;
|
|
}
|
|
if (m) break;
|
|
}
|
|
p.push(p.splice(b, 1)[0]);
|
|
}
|
|
a(u, "moveToMostRecentLru");
|
|
function c(p) {
|
|
var f = p.length,
|
|
h = p[f - 1],
|
|
y,
|
|
m;
|
|
for (
|
|
h.cacheItem.delete(h.arg), m = f - 2;
|
|
m >= 0 &&
|
|
((h = p[m]), (y = h.cacheItem.get(h.arg)), !y || !y.size);
|
|
m--
|
|
)
|
|
h.cacheItem.delete(h.arg);
|
|
}
|
|
a(c, "removeCachedResult");
|
|
function d(p, f) {
|
|
return p === f || (p !== p && f !== f);
|
|
}
|
|
a(d, "isEqual");
|
|
},
|
|
{ "map-or-similar": 1 },
|
|
],
|
|
},
|
|
{},
|
|
[3],
|
|
)(3);
|
|
});
|
|
});
|
|
|
|
// ../node_modules/picoquery/lib/string-util.js
|
|
var Li = we((Mi) => {
|
|
"use strict";
|
|
Object.defineProperty(Mi, "__esModule", { value: !0 });
|
|
Mi.encodeString = ov;
|
|
var it = Array.from(
|
|
{ length: 256 },
|
|
(e, t) => "%" + ((t < 16 ? "0" : "") + t.toString(16)).toUpperCase(),
|
|
),
|
|
tv = new Int8Array([
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1,
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
|
|
0, 1, 0,
|
|
]);
|
|
function ov(e) {
|
|
let t = e.length;
|
|
if (t === 0) return "";
|
|
let o = "",
|
|
i = 0,
|
|
r = 0;
|
|
e: for (; r < t; r++) {
|
|
let n = e.charCodeAt(r);
|
|
for (; n < 128; ) {
|
|
if (
|
|
(tv[n] !== 1 &&
|
|
(i < r && (o += e.slice(i, r)), (i = r + 1), (o += it[n])),
|
|
++r === t)
|
|
)
|
|
break e;
|
|
n = e.charCodeAt(r);
|
|
}
|
|
if ((i < r && (o += e.slice(i, r)), n < 2048)) {
|
|
((i = r + 1), (o += it[192 | (n >> 6)] + it[128 | (n & 63)]));
|
|
continue;
|
|
}
|
|
if (n < 55296 || n >= 57344) {
|
|
((i = r + 1),
|
|
(o +=
|
|
it[224 | (n >> 12)] +
|
|
it[128 | ((n >> 6) & 63)] +
|
|
it[128 | (n & 63)]));
|
|
continue;
|
|
}
|
|
if ((++r, r >= t)) throw new Error("URI malformed");
|
|
let l = e.charCodeAt(r) & 1023;
|
|
((i = r + 1),
|
|
(n = 65536 + (((n & 1023) << 10) | l)),
|
|
(o +=
|
|
it[240 | (n >> 18)] +
|
|
it[128 | ((n >> 12) & 63)] +
|
|
it[128 | ((n >> 6) & 63)] +
|
|
it[128 | (n & 63)]));
|
|
}
|
|
return i === 0 ? e : i < t ? o + e.slice(i) : o;
|
|
}
|
|
a(ov, "encodeString");
|
|
});
|
|
|
|
// ../node_modules/picoquery/lib/shared.js
|
|
var _r = we((st) => {
|
|
"use strict";
|
|
Object.defineProperty(st, "__esModule", { value: !0 });
|
|
st.defaultOptions =
|
|
st.defaultShouldSerializeObject =
|
|
st.defaultValueSerializer =
|
|
void 0;
|
|
var Ni = Li(),
|
|
rv = /* @__PURE__ */ a((e) => {
|
|
switch (typeof e) {
|
|
case "string":
|
|
return (0, Ni.encodeString)(e);
|
|
case "bigint":
|
|
case "boolean":
|
|
return "" + e;
|
|
case "number":
|
|
if (Number.isFinite(e))
|
|
return e < 1e21 ? "" + e : (0, Ni.encodeString)("" + e);
|
|
break;
|
|
}
|
|
return e instanceof Date ? (0, Ni.encodeString)(e.toISOString()) : "";
|
|
}, "defaultValueSerializer");
|
|
st.defaultValueSerializer = rv;
|
|
var nv = /* @__PURE__ */ a(
|
|
(e) => e instanceof Date,
|
|
"defaultShouldSerializeObject",
|
|
);
|
|
st.defaultShouldSerializeObject = nv;
|
|
var tu = /* @__PURE__ */ a((e) => e, "identityFunc");
|
|
st.defaultOptions = {
|
|
nesting: !0,
|
|
nestingSyntax: "dot",
|
|
arrayRepeat: !1,
|
|
arrayRepeatSyntax: "repeat",
|
|
delimiter: 38,
|
|
valueDeserializer: tu,
|
|
valueSerializer: st.defaultValueSerializer,
|
|
keyDeserializer: tu,
|
|
shouldSerializeObject: st.defaultShouldSerializeObject,
|
|
};
|
|
});
|
|
|
|
// ../node_modules/picoquery/lib/object-util.js
|
|
var Fi = we((kr) => {
|
|
"use strict";
|
|
Object.defineProperty(kr, "__esModule", { value: !0 });
|
|
kr.getDeepObject = av;
|
|
kr.stringifyObject = ou;
|
|
var Rt = _r(),
|
|
iv = Li();
|
|
function sv(e) {
|
|
return e === "__proto__" || e === "constructor" || e === "prototype";
|
|
}
|
|
a(sv, "isPrototypeKey");
|
|
function av(e, t, o, i, r) {
|
|
if (sv(t)) return e;
|
|
let n = e[t];
|
|
return typeof n == "object" && n !== null
|
|
? n
|
|
: !i &&
|
|
(r ||
|
|
typeof o == "number" ||
|
|
(typeof o == "string" && o * 0 === 0 && o.indexOf(".") === -1))
|
|
? (e[t] = [])
|
|
: (e[t] = {});
|
|
}
|
|
a(av, "getDeepObject");
|
|
var lv = 20,
|
|
uv = "[]",
|
|
cv = "[",
|
|
pv = "]",
|
|
dv = ".";
|
|
function ou(e, t, o = 0, i, r) {
|
|
let {
|
|
nestingSyntax: n = Rt.defaultOptions.nestingSyntax,
|
|
arrayRepeat: l = Rt.defaultOptions.arrayRepeat,
|
|
arrayRepeatSyntax: u = Rt.defaultOptions.arrayRepeatSyntax,
|
|
nesting: c = Rt.defaultOptions.nesting,
|
|
delimiter: d = Rt.defaultOptions.delimiter,
|
|
valueSerializer: p = Rt.defaultOptions.valueSerializer,
|
|
shouldSerializeObject: f = Rt.defaultOptions.shouldSerializeObject,
|
|
} = t,
|
|
h = typeof d == "number" ? String.fromCharCode(d) : d,
|
|
y = r === !0 && l,
|
|
m = n === "dot" || (n === "js" && !r);
|
|
if (o > lv) return "";
|
|
let b = "",
|
|
x = !0,
|
|
E = !1;
|
|
for (let g in e) {
|
|
let v = e[g],
|
|
S;
|
|
(i
|
|
? ((S = i),
|
|
y
|
|
? u === "bracket" && (S += uv)
|
|
: m
|
|
? ((S += dv), (S += g))
|
|
: ((S += cv), (S += g), (S += pv)))
|
|
: (S = g),
|
|
x || (b += h),
|
|
typeof v == "object" && v !== null && !f(v)
|
|
? ((E = v.pop !== void 0),
|
|
(c || (l && E)) && (b += ou(v, t, o + 1, S, E)))
|
|
: ((b += (0, iv.encodeString)(S)), (b += "="), (b += p(v, g))),
|
|
x && (x = !1));
|
|
}
|
|
return b;
|
|
}
|
|
a(ou, "stringifyObject");
|
|
});
|
|
|
|
// ../node_modules/fast-decode-uri-component/index.js
|
|
var su = we((_A, iu) => {
|
|
"use strict";
|
|
var ru = 12,
|
|
fv = 0,
|
|
Ri = [
|
|
// The first part of the table maps bytes to character to a transition.
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2,
|
|
2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
|
|
3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 5, 5, 5, 5, 5, 5,
|
|
5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6,
|
|
7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 7, 7, 10, 9, 9, 9, 11, 4, 4, 4, 4,
|
|
4, 4, 4, 4, 4, 4, 4,
|
|
// The second part of the table maps a state to a new state when adding a
|
|
// transition.
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 0, 0, 0, 24, 36, 48, 60, 72,
|
|
84, 96, 0, 12, 12, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 24, 24, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 24, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
// The third part maps the current transition to a mask that needs to apply
|
|
// to the byte.
|
|
127,
|
|
63, 63, 63, 0, 31, 15, 15, 15, 7, 7, 7,
|
|
];
|
|
function mv(e) {
|
|
var t = e.indexOf("%");
|
|
if (t === -1) return e;
|
|
for (
|
|
var o = e.length, i = "", r = 0, n = 0, l = t, u = ru;
|
|
t > -1 && t < o;
|
|
) {
|
|
var c = nu(e[t + 1], 4),
|
|
d = nu(e[t + 2], 0),
|
|
p = c | d,
|
|
f = Ri[p];
|
|
if (((u = Ri[256 + u + f]), (n = (n << 6) | (p & Ri[364 + f])), u === ru))
|
|
((i += e.slice(r, l)),
|
|
(i +=
|
|
n <= 65535
|
|
? String.fromCharCode(n)
|
|
: String.fromCharCode(55232 + (n >> 10), 56320 + (n & 1023))),
|
|
(n = 0),
|
|
(r = t + 3),
|
|
(t = l = e.indexOf("%", r)));
|
|
else {
|
|
if (u === fv) return null;
|
|
if (((t += 3), t < o && e.charCodeAt(t) === 37)) continue;
|
|
return null;
|
|
}
|
|
}
|
|
return i + e.slice(r);
|
|
}
|
|
a(mv, "decodeURIComponent");
|
|
var hv = {
|
|
0: 0,
|
|
1: 1,
|
|
2: 2,
|
|
3: 3,
|
|
4: 4,
|
|
5: 5,
|
|
6: 6,
|
|
7: 7,
|
|
8: 8,
|
|
9: 9,
|
|
a: 10,
|
|
A: 10,
|
|
b: 11,
|
|
B: 11,
|
|
c: 12,
|
|
C: 12,
|
|
d: 13,
|
|
D: 13,
|
|
e: 14,
|
|
E: 14,
|
|
f: 15,
|
|
F: 15,
|
|
};
|
|
function nu(e, t) {
|
|
var o = hv[e];
|
|
return o === void 0 ? 255 : o << t;
|
|
}
|
|
a(nu, "hexCodeToInt");
|
|
iu.exports = mv;
|
|
});
|
|
|
|
// ../node_modules/picoquery/lib/parse.js
|
|
var cu = we((mt) => {
|
|
"use strict";
|
|
var gv =
|
|
(mt && mt.__importDefault) ||
|
|
function (e) {
|
|
return e && e.__esModule ? e : { default: e };
|
|
};
|
|
Object.defineProperty(mt, "__esModule", { value: !0 });
|
|
mt.numberValueDeserializer = mt.numberKeyDeserializer = void 0;
|
|
mt.parse = vv;
|
|
var Or = Fi(),
|
|
Bt = _r(),
|
|
au = gv(su()),
|
|
yv = /* @__PURE__ */ a((e) => {
|
|
let t = Number(e);
|
|
return Number.isNaN(t) ? e : t;
|
|
}, "numberKeyDeserializer");
|
|
mt.numberKeyDeserializer = yv;
|
|
var bv = /* @__PURE__ */ a((e) => {
|
|
let t = Number(e);
|
|
return Number.isNaN(t) ? e : t;
|
|
}, "numberValueDeserializer");
|
|
mt.numberValueDeserializer = bv;
|
|
var lu = /\+/g,
|
|
uu = /* @__PURE__ */ a(function () {}, "Empty");
|
|
uu.prototype = /* @__PURE__ */ Object.create(null);
|
|
function Pr(e, t, o, i, r) {
|
|
let n = e.substring(t, o);
|
|
return (
|
|
i && (n = n.replace(lu, " ")),
|
|
r && (n = (0, au.default)(n) || n),
|
|
n
|
|
);
|
|
}
|
|
a(Pr, "computeKeySlice");
|
|
function vv(e, t) {
|
|
let {
|
|
valueDeserializer: o = Bt.defaultOptions.valueDeserializer,
|
|
keyDeserializer: i = Bt.defaultOptions.keyDeserializer,
|
|
arrayRepeatSyntax: r = Bt.defaultOptions.arrayRepeatSyntax,
|
|
nesting: n = Bt.defaultOptions.nesting,
|
|
arrayRepeat: l = Bt.defaultOptions.arrayRepeat,
|
|
nestingSyntax: u = Bt.defaultOptions.nestingSyntax,
|
|
delimiter: c = Bt.defaultOptions.delimiter,
|
|
} = t ?? {},
|
|
d = typeof c == "string" ? c.charCodeAt(0) : c,
|
|
p = u === "js",
|
|
f = new uu();
|
|
if (typeof e != "string") return f;
|
|
let h = e.length,
|
|
y = "",
|
|
m = -1,
|
|
b = -1,
|
|
x = -1,
|
|
E = f,
|
|
g,
|
|
v = "",
|
|
S = "",
|
|
w = !1,
|
|
k = !1,
|
|
_ = !1,
|
|
C = !1,
|
|
T = !1,
|
|
O = !1,
|
|
P = !1,
|
|
D = 0,
|
|
M = -1,
|
|
F = -1,
|
|
Z = -1;
|
|
for (let V = 0; V < h + 1; V++) {
|
|
if (((D = V !== h ? e.charCodeAt(V) : d), D === d)) {
|
|
if (
|
|
((P = b > m),
|
|
P || (b = V),
|
|
x !== b - 1 &&
|
|
((S = Pr(e, x + 1, M > -1 ? M : b, _, w)),
|
|
(v = i(S)),
|
|
g !== void 0 &&
|
|
(E = (0, Or.getDeepObject)(E, g, v, p && T, p && O))),
|
|
P || v !== "")
|
|
) {
|
|
P &&
|
|
((y = e.slice(b + 1, V)),
|
|
C && (y = y.replace(lu, " ")),
|
|
k && (y = (0, au.default)(y) || y));
|
|
let Q = o(y, v);
|
|
if (l) {
|
|
let z = E[v];
|
|
z === void 0
|
|
? M > -1
|
|
? (E[v] = [Q])
|
|
: (E[v] = Q)
|
|
: z.pop
|
|
? z.push(Q)
|
|
: (E[v] = [z, Q]);
|
|
} else E[v] = Q;
|
|
}
|
|
((y = ""),
|
|
(m = V),
|
|
(b = V),
|
|
(w = !1),
|
|
(k = !1),
|
|
(_ = !1),
|
|
(C = !1),
|
|
(T = !1),
|
|
(O = !1),
|
|
(M = -1),
|
|
(x = V),
|
|
(E = f),
|
|
(g = void 0),
|
|
(v = ""));
|
|
} else
|
|
D === 93
|
|
? (l && r === "bracket" && Z === 91 && (M = F),
|
|
n &&
|
|
(u === "index" || p) &&
|
|
b <= m &&
|
|
(x !== F &&
|
|
((S = Pr(e, x + 1, V, _, w)),
|
|
(v = i(S)),
|
|
g !== void 0 && (E = (0, Or.getDeepObject)(E, g, v, void 0, p)),
|
|
(g = v),
|
|
(_ = !1),
|
|
(w = !1)),
|
|
(x = V),
|
|
(O = !0),
|
|
(T = !1)))
|
|
: D === 46
|
|
? n &&
|
|
(u === "dot" || p) &&
|
|
b <= m &&
|
|
(x !== F &&
|
|
((S = Pr(e, x + 1, V, _, w)),
|
|
(v = i(S)),
|
|
g !== void 0 && (E = (0, Or.getDeepObject)(E, g, v, p)),
|
|
(g = v),
|
|
(_ = !1),
|
|
(w = !1)),
|
|
(T = !0),
|
|
(O = !1),
|
|
(x = V))
|
|
: D === 91
|
|
? n &&
|
|
(u === "index" || p) &&
|
|
b <= m &&
|
|
(x !== F &&
|
|
((S = Pr(e, x + 1, V, _, w)),
|
|
(v = i(S)),
|
|
p && g !== void 0 && (E = (0, Or.getDeepObject)(E, g, v, p)),
|
|
(g = v),
|
|
(_ = !1),
|
|
(w = !1),
|
|
(T = !1),
|
|
(O = !0)),
|
|
(x = V))
|
|
: D === 61
|
|
? b <= m
|
|
? (b = V)
|
|
: (k = !0)
|
|
: D === 43
|
|
? b > m
|
|
? (C = !0)
|
|
: (_ = !0)
|
|
: D === 37 && (b > m ? (k = !0) : (w = !0));
|
|
((F = V), (Z = D));
|
|
}
|
|
return f;
|
|
}
|
|
a(vv, "parse");
|
|
});
|
|
|
|
// ../node_modules/picoquery/lib/stringify.js
|
|
var pu = we((Bi) => {
|
|
"use strict";
|
|
Object.defineProperty(Bi, "__esModule", { value: !0 });
|
|
Bi.stringify = Iv;
|
|
var xv = Fi();
|
|
function Iv(e, t) {
|
|
if (e === null || typeof e != "object") return "";
|
|
let o = t ?? {};
|
|
return (0, xv.stringifyObject)(e, o);
|
|
}
|
|
a(Iv, "stringify");
|
|
});
|
|
|
|
// ../node_modules/picoquery/lib/main.js
|
|
var du = we((Xe) => {
|
|
"use strict";
|
|
var Sv =
|
|
(Xe && Xe.__createBinding) ||
|
|
(Object.create
|
|
? function (e, t, o, i) {
|
|
i === void 0 && (i = o);
|
|
var r = Object.getOwnPropertyDescriptor(t, o);
|
|
((!r ||
|
|
("get" in r ? !t.__esModule : r.writable || r.configurable)) &&
|
|
(r = {
|
|
enumerable: !0,
|
|
get: /* @__PURE__ */ a(function () {
|
|
return t[o];
|
|
}, "get"),
|
|
}),
|
|
Object.defineProperty(e, i, r));
|
|
}
|
|
: function (e, t, o, i) {
|
|
(i === void 0 && (i = o), (e[i] = t[o]));
|
|
}),
|
|
wv =
|
|
(Xe && Xe.__exportStar) ||
|
|
function (e, t) {
|
|
for (var o in e)
|
|
o !== "default" &&
|
|
!Object.prototype.hasOwnProperty.call(t, o) &&
|
|
Sv(t, e, o);
|
|
};
|
|
Object.defineProperty(Xe, "__esModule", { value: !0 });
|
|
Xe.stringify = Xe.parse = void 0;
|
|
var Ev = cu();
|
|
Object.defineProperty(Xe, "parse", {
|
|
enumerable: !0,
|
|
get: /* @__PURE__ */ a(function () {
|
|
return Ev.parse;
|
|
}, "get"),
|
|
});
|
|
var Tv = pu();
|
|
Object.defineProperty(Xe, "stringify", {
|
|
enumerable: !0,
|
|
get: /* @__PURE__ */ a(function () {
|
|
return Tv.stringify;
|
|
}, "get"),
|
|
});
|
|
wv(_r(), Xe);
|
|
});
|
|
|
|
// ../node_modules/toggle-selection/index.js
|
|
var bu = we((XA, yu) => {
|
|
yu.exports = function () {
|
|
var e = document.getSelection();
|
|
if (!e.rangeCount) return function () {};
|
|
for (var t = document.activeElement, o = [], i = 0; i < e.rangeCount; i++)
|
|
o.push(e.getRangeAt(i));
|
|
switch (t.tagName.toUpperCase()) {
|
|
// .toUpperCase handles XHTML
|
|
case "INPUT":
|
|
case "TEXTAREA":
|
|
t.blur();
|
|
break;
|
|
default:
|
|
t = null;
|
|
break;
|
|
}
|
|
return (
|
|
e.removeAllRanges(),
|
|
function () {
|
|
(e.type === "Caret" && e.removeAllRanges(),
|
|
e.rangeCount ||
|
|
o.forEach(function (r) {
|
|
e.addRange(r);
|
|
}),
|
|
t && t.focus());
|
|
}
|
|
);
|
|
};
|
|
});
|
|
|
|
// ../node_modules/copy-to-clipboard/index.js
|
|
var Iu = we((ZA, xu) => {
|
|
"use strict";
|
|
var Av = bu(),
|
|
vu = {
|
|
"text/plain": "Text",
|
|
"text/html": "Url",
|
|
default: "Text",
|
|
},
|
|
Dv = "Copy to clipboard: #{key}, Enter";
|
|
function Mv(e) {
|
|
var t = (/mac os x/i.test(navigator.userAgent) ? "\u2318" : "Ctrl") + "+C";
|
|
return e.replace(/#{\s*key\s*}/g, t);
|
|
}
|
|
a(Mv, "format");
|
|
function Lv(e, t) {
|
|
var o,
|
|
i,
|
|
r,
|
|
n,
|
|
l,
|
|
u,
|
|
c = !1;
|
|
(t || (t = {}), (o = t.debug || !1));
|
|
try {
|
|
((r = Av()),
|
|
(n = document.createRange()),
|
|
(l = document.getSelection()),
|
|
(u = document.createElement("span")),
|
|
(u.textContent = e),
|
|
(u.ariaHidden = "true"),
|
|
(u.style.all = "unset"),
|
|
(u.style.position = "fixed"),
|
|
(u.style.top = 0),
|
|
(u.style.clip = "rect(0, 0, 0, 0)"),
|
|
(u.style.whiteSpace =
|
|
"p\
|
|
re"),
|
|
(u.style.webkitUserSelect = "text"),
|
|
(u.style.MozUserSelect = "text"),
|
|
(u.style.msUserSelect = "text"),
|
|
(u.style.userSelect = "text"),
|
|
u.addEventListener("copy", function (p) {
|
|
if ((p.stopPropagation(), t.format))
|
|
if ((p.preventDefault(), typeof p.clipboardData > "u")) {
|
|
(o && console.warn("unable to use e.clipboardData"),
|
|
o && console.warn("trying IE specific stuff"),
|
|
window.clipboardData.clearData());
|
|
var f = vu[t.format] || vu.default;
|
|
window.clipboardData.setData(f, e);
|
|
} else
|
|
(p.clipboardData.clearData(),
|
|
p.clipboardData.setData(t.format, e));
|
|
t.onCopy && (p.preventDefault(), t.onCopy(p.clipboardData));
|
|
}),
|
|
document.body.appendChild(u),
|
|
n.selectNodeContents(u),
|
|
l.addRange(n));
|
|
var d = document.execCommand("copy");
|
|
if (!d) throw new Error("copy command was unsuccessful");
|
|
c = !0;
|
|
} catch (p) {
|
|
(o && console.error("unable to copy using execCommand: ", p),
|
|
o && console.warn("trying IE specific stuff"));
|
|
try {
|
|
(window.clipboardData.setData(t.format || "text", e),
|
|
t.onCopy && t.onCopy(window.clipboardData),
|
|
(c = !0));
|
|
} catch (f) {
|
|
(o && console.error("unable to copy using clipboardData: ", f),
|
|
o && console.error("falling back to prompt"),
|
|
(i = Mv("message" in t ? t.message : Dv)),
|
|
window.prompt(i, e));
|
|
}
|
|
} finally {
|
|
(l &&
|
|
(typeof l.removeRange == "function"
|
|
? l.removeRange(n)
|
|
: l.removeAllRanges()),
|
|
u && document.body.removeChild(u),
|
|
r());
|
|
}
|
|
return c;
|
|
}
|
|
a(Lv, "copy");
|
|
xu.exports = Lv;
|
|
});
|
|
|
|
// ../node_modules/downshift/node_modules/react-is/cjs/react-is.production.min.js
|
|
var Ep = we((pe) => {
|
|
"use strict";
|
|
var Zi = Symbol.for("react.element"),
|
|
Ji = Symbol.for("react.portal"),
|
|
Kr = Symbol.for("react.fragment"),
|
|
$r = Symbol.for(
|
|
"react.strict_mo\
|
|
de",
|
|
),
|
|
Ur = Symbol.for("react.profiler"),
|
|
Gr = Symbol.for("react.provider"),
|
|
qr = Symbol.for("react.context"),
|
|
Dx = Symbol.for(
|
|
"react.server_\
|
|
context",
|
|
),
|
|
Yr = Symbol.for("react.forward_ref"),
|
|
Qr = Symbol.for("react.suspense"),
|
|
Xr = Symbol.for("react.suspense_list"),
|
|
Zr = Symbol.for("react.memo"),
|
|
Jr = Symbol.for("react.lazy"),
|
|
Mx = Symbol.for("react.offscreen"),
|
|
wp;
|
|
wp = Symbol.for("react.module.reference");
|
|
function Ue(e) {
|
|
if (typeof e == "object" && e !== null) {
|
|
var t = e.$$typeof;
|
|
switch (t) {
|
|
case Zi:
|
|
switch (((e = e.type), e)) {
|
|
case Kr:
|
|
case Ur:
|
|
case $r:
|
|
case Qr:
|
|
case Xr:
|
|
return e;
|
|
default:
|
|
switch (((e = e && e.$$typeof), e)) {
|
|
case Dx:
|
|
case qr:
|
|
case Yr:
|
|
case Jr:
|
|
case Zr:
|
|
case Gr:
|
|
return e;
|
|
default:
|
|
return t;
|
|
}
|
|
}
|
|
case Ji:
|
|
return t;
|
|
}
|
|
}
|
|
}
|
|
a(Ue, "v");
|
|
pe.ContextConsumer = qr;
|
|
pe.ContextProvider = Gr;
|
|
pe.Element = Zi;
|
|
pe.ForwardRef = Yr;
|
|
pe.Fragment = Kr;
|
|
pe.Lazy = Jr;
|
|
pe.Memo = Zr;
|
|
pe.Portal = Ji;
|
|
pe.Profiler = Ur;
|
|
pe.StrictMode = $r;
|
|
pe.Suspense = Qr;
|
|
pe.SuspenseList = Xr;
|
|
pe.isAsyncMode = function () {
|
|
return !1;
|
|
};
|
|
pe.isConcurrentMode = function () {
|
|
return !1;
|
|
};
|
|
pe.isContextConsumer = function (e) {
|
|
return Ue(e) === qr;
|
|
};
|
|
pe.isContextProvider = function (e) {
|
|
return Ue(e) === Gr;
|
|
};
|
|
pe.isElement = function (e) {
|
|
return typeof e == "object" && e !== null && e.$$typeof === Zi;
|
|
};
|
|
pe.isForwardRef = function (e) {
|
|
return Ue(e) === Yr;
|
|
};
|
|
pe.isFragment = function (e) {
|
|
return Ue(e) === Kr;
|
|
};
|
|
pe.isLazy = function (e) {
|
|
return Ue(e) === Jr;
|
|
};
|
|
pe.isMemo = function (e) {
|
|
return Ue(e) === Zr;
|
|
};
|
|
pe.isPortal = function (e) {
|
|
return Ue(e) === Ji;
|
|
};
|
|
pe.isProfiler = function (e) {
|
|
return Ue(e) === Ur;
|
|
};
|
|
pe.isStrictMode = function (e) {
|
|
return Ue(e) === $r;
|
|
};
|
|
pe.isSuspense = function (e) {
|
|
return Ue(e) === Qr;
|
|
};
|
|
pe.isSuspenseList = function (e) {
|
|
return Ue(e) === Xr;
|
|
};
|
|
pe.isValidElementType = function (e) {
|
|
return (
|
|
typeof e == "string" ||
|
|
typeof e == "function" ||
|
|
e === Kr ||
|
|
e === Ur ||
|
|
e === $r ||
|
|
e === Qr ||
|
|
e === Xr ||
|
|
e === Mx ||
|
|
(typeof e == "object" &&
|
|
e !== null &&
|
|
(e.$$typeof === Jr ||
|
|
e.$$typeof === Zr ||
|
|
e.$$typeof === Gr ||
|
|
e.$$typeof === qr ||
|
|
e.$$typeof === Yr ||
|
|
e.$$typeof === wp ||
|
|
e.getModuleId !== void 0))
|
|
);
|
|
};
|
|
pe.typeOf = Ue;
|
|
});
|
|
|
|
// ../node_modules/downshift/node_modules/react-is/index.js
|
|
var Cp = we((AR, Tp) => {
|
|
"use strict";
|
|
Tp.exports = Ep();
|
|
});
|
|
|
|
// ../node_modules/fuse.js/dist/fuse.js
|
|
var Ld = we((jo, js) => {
|
|
(function (e, t) {
|
|
typeof jo == "object" && typeof js == "object"
|
|
? (js.exports = t())
|
|
: typeof define == "function" && define.amd
|
|
? define("Fuse", [], t)
|
|
: typeof jo == "object"
|
|
? (jo.Fuse = t())
|
|
: (e.Fuse = t());
|
|
})(jo, function () {
|
|
return (function (e) {
|
|
var t = {};
|
|
function o(i) {
|
|
if (t[i]) return t[i].exports;
|
|
var r = (t[i] = { i, l: !1, exports: {} });
|
|
return (e[i].call(r.exports, r, r.exports, o), (r.l = !0), r.exports);
|
|
}
|
|
return (
|
|
a(o, "r"),
|
|
(o.m = e),
|
|
(o.c = t),
|
|
(o.d = function (i, r, n) {
|
|
o.o(i, r) || Object.defineProperty(i, r, { enumerable: !0, get: n });
|
|
}),
|
|
(o.r = function (i) {
|
|
(typeof Symbol < "u" &&
|
|
Symbol.toStringTag &&
|
|
Object.defineProperty(i, Symbol.toStringTag, { value: "Module" }),
|
|
Object.defineProperty(i, "__esModule", { value: !0 }));
|
|
}),
|
|
(o.t = function (i, r) {
|
|
if (
|
|
(1 & r && (i = o(i)),
|
|
8 & r || (4 & r && typeof i == "object" && i && i.__esModule))
|
|
)
|
|
return i;
|
|
var n = /* @__PURE__ */ Object.create(null);
|
|
if (
|
|
(o.r(n),
|
|
Object.defineProperty(n, "default", { enumerable: !0, value: i }),
|
|
2 & r && typeof i != "string")
|
|
)
|
|
for (var l in i)
|
|
o.d(
|
|
n,
|
|
l,
|
|
function (u) {
|
|
return i[u];
|
|
}.bind(null, l),
|
|
);
|
|
return n;
|
|
}),
|
|
(o.n = function (i) {
|
|
var r =
|
|
i && i.__esModule
|
|
? function () {
|
|
return i.default;
|
|
}
|
|
: function () {
|
|
return i;
|
|
};
|
|
return (o.d(r, "a", r), r);
|
|
}),
|
|
(o.o = function (i, r) {
|
|
return Object.prototype.hasOwnProperty.call(i, r);
|
|
}),
|
|
(o.p = ""),
|
|
o((o.s = 0))
|
|
);
|
|
})([
|
|
function (e, t, o) {
|
|
function i(p) {
|
|
return (i =
|
|
typeof Symbol == "function" && typeof Symbol.iterator == "symbol"
|
|
? function (f) {
|
|
return typeof f;
|
|
}
|
|
: function (f) {
|
|
return f &&
|
|
typeof Symbol == "function" &&
|
|
f.constructor === Symbol &&
|
|
f !== Symbol.prototype
|
|
? "symbol"
|
|
: typeof f;
|
|
})(p);
|
|
}
|
|
a(i, "n");
|
|
function r(p, f) {
|
|
for (var h = 0; h < f.length; h++) {
|
|
var y = f[h];
|
|
((y.enumerable = y.enumerable || !1),
|
|
(y.configurable = !0),
|
|
"value" in y && (y.writable = !0),
|
|
Object.defineProperty(p, y.key, y));
|
|
}
|
|
}
|
|
a(r, "o");
|
|
var n = o(1),
|
|
l = o(7),
|
|
u = l.get,
|
|
c = (l.deepValue, l.isArray),
|
|
d = (function () {
|
|
function p(m, b) {
|
|
var x = b.location,
|
|
E = x === void 0 ? 0 : x,
|
|
g = b.distance,
|
|
v = g === void 0 ? 100 : g,
|
|
S = b.threshold,
|
|
w = S === void 0 ? 0.6 : S,
|
|
k = b.maxPatternLength,
|
|
_ = k === void 0 ? 32 : k,
|
|
C = b.caseSensitive,
|
|
T = C !== void 0 && C,
|
|
O = b.tokenSeparator,
|
|
P = O === void 0 ? / +/g : O,
|
|
D = b.findAllMatches,
|
|
M = D !== void 0 && D,
|
|
F = b.minMatchCharLength,
|
|
Z = F === void 0 ? 1 : F,
|
|
V = b.id,
|
|
Q = V === void 0 ? null : V,
|
|
z = b.keys,
|
|
q = z === void 0 ? [] : z,
|
|
W = b.shouldSort,
|
|
re = W === void 0 || W,
|
|
R = b.getFn,
|
|
B = R === void 0 ? u : R,
|
|
L = b.sortFn,
|
|
$ =
|
|
L === void 0
|
|
? function (fe, Se) {
|
|
return fe.score - Se.score;
|
|
}
|
|
: L,
|
|
J = b.tokenize,
|
|
ie = J !== void 0 && J,
|
|
te = b.matchAllTokens,
|
|
de = te !== void 0 && te,
|
|
ae = b.includeMatches,
|
|
ce = ae !== void 0 && ae,
|
|
ue = b.includeScore,
|
|
Ie = ue !== void 0 && ue,
|
|
ye = b.verbose,
|
|
Oe = ye !== void 0 && ye;
|
|
((function (fe, Se) {
|
|
if (!(fe instanceof Se))
|
|
throw new TypeError("Cannot call a class as a function");
|
|
})(this, p),
|
|
(this.options = {
|
|
location: E,
|
|
distance: v,
|
|
threshold: w,
|
|
maxPatternLength: _,
|
|
isCaseSensitive: T,
|
|
tokenSeparator: P,
|
|
findAllMatches: M,
|
|
minMatchCharLength: Z,
|
|
id: Q,
|
|
keys: q,
|
|
includeMatches: ce,
|
|
includeScore: Ie,
|
|
shouldSort: re,
|
|
getFn: B,
|
|
sortFn: $,
|
|
verbose: Oe,
|
|
tokenize: ie,
|
|
matchAllTokens: de,
|
|
}),
|
|
this.setCollection(m),
|
|
this._processKeys(q));
|
|
}
|
|
a(p, "e");
|
|
var f, h, y;
|
|
return (
|
|
(f = p),
|
|
(h = [
|
|
{
|
|
key: "setCollection",
|
|
value: /* @__PURE__ */ a(function (m) {
|
|
return ((this.list = m), m);
|
|
}, "value"),
|
|
},
|
|
{
|
|
key: "_processKeys",
|
|
value: /* @__PURE__ */ a(function (m) {
|
|
if (
|
|
((this._keyWeights = {}),
|
|
(this._keyNames = []),
|
|
m.length && typeof m[0] == "string")
|
|
)
|
|
for (var b = 0, x = m.length; b < x; b += 1) {
|
|
var E = m[b];
|
|
((this._keyWeights[E] = 1), this._keyNames.push(E));
|
|
}
|
|
else {
|
|
for (
|
|
var g = null, v = null, S = 0, w = 0, k = m.length;
|
|
w < k;
|
|
w += 1
|
|
) {
|
|
var _ = m[w];
|
|
if (!_.hasOwnProperty("name"))
|
|
throw new Error(
|
|
'Missing "name" property in key object',
|
|
);
|
|
var C = _.name;
|
|
if (
|
|
(this._keyNames.push(C), !_.hasOwnProperty("weight"))
|
|
)
|
|
throw new Error(
|
|
'Missing "weight" property in key object',
|
|
);
|
|
var T = _.weight;
|
|
if (T < 0 || T > 1)
|
|
throw new Error(
|
|
'"weight" property in key must bein the range of [0, 1)',
|
|
);
|
|
((v = v == null ? T : Math.max(v, T)),
|
|
(g = g == null ? T : Math.min(g, T)),
|
|
(this._keyWeights[C] = T),
|
|
(S += T));
|
|
}
|
|
if (S > 1)
|
|
throw new Error("Total of weights cannot exceed 1");
|
|
}
|
|
}, "value"),
|
|
},
|
|
{
|
|
key: "search",
|
|
value: /* @__PURE__ */ a(function (m) {
|
|
var b =
|
|
arguments.length > 1 && arguments[1] !== void 0
|
|
? arguments[1]
|
|
: { limit: !1 };
|
|
this._log(
|
|
`---------
|
|
Search pattern: "`.concat(m, '"'),
|
|
);
|
|
var x = this._prepareSearchers(m),
|
|
E = x.tokenSearchers,
|
|
g = x.fullSearcher,
|
|
v = this._search(E, g);
|
|
return (
|
|
this._computeScore(v),
|
|
this.options.shouldSort && this._sort(v),
|
|
b.limit &&
|
|
typeof b.limit == "number" &&
|
|
(v = v.slice(0, b.limit)),
|
|
this._format(v)
|
|
);
|
|
}, "value"),
|
|
},
|
|
{
|
|
key: "_prepareSearchers",
|
|
value: /* @__PURE__ */ a(function () {
|
|
var m =
|
|
arguments.length > 0 && arguments[0] !== void 0
|
|
? arguments[0]
|
|
: "",
|
|
b = [];
|
|
if (this.options.tokenize)
|
|
for (
|
|
var x = m.split(this.options.tokenSeparator),
|
|
E = 0,
|
|
g = x.length;
|
|
E < g;
|
|
E += 1
|
|
)
|
|
b.push(new n(x[E], this.options));
|
|
return {
|
|
tokenSearchers: b,
|
|
fullSearcher: new n(m, this.options),
|
|
};
|
|
}, "value"),
|
|
},
|
|
{
|
|
key: "_search",
|
|
value: /* @__PURE__ */ a(function () {
|
|
var m =
|
|
arguments.length > 0 && arguments[0] !== void 0
|
|
? arguments[0]
|
|
: [],
|
|
b = arguments.length > 1 ? arguments[1] : void 0,
|
|
x = this.list,
|
|
E = {},
|
|
g = [];
|
|
if (typeof x[0] == "string") {
|
|
for (var v = 0, S = x.length; v < S; v += 1)
|
|
this._analyze(
|
|
{ key: "", value: x[v], record: v, index: v },
|
|
{
|
|
resultMap: E,
|
|
results: g,
|
|
tokenSearchers: m,
|
|
fullSearcher: b,
|
|
},
|
|
);
|
|
return g;
|
|
}
|
|
for (var w = 0, k = x.length; w < k; w += 1)
|
|
for (
|
|
var _ = x[w], C = 0, T = this._keyNames.length;
|
|
C < T;
|
|
C += 1
|
|
) {
|
|
var O = this._keyNames[C];
|
|
this._analyze(
|
|
{
|
|
key: O,
|
|
value: this.options.getFn(_, O),
|
|
record: _,
|
|
index: w,
|
|
},
|
|
{
|
|
resultMap: E,
|
|
results: g,
|
|
tokenSearchers: m,
|
|
fullSearcher: b,
|
|
},
|
|
);
|
|
}
|
|
return g;
|
|
}, "value"),
|
|
},
|
|
{
|
|
key: "_analyze",
|
|
value: /* @__PURE__ */ a(function (m, b) {
|
|
var x = this,
|
|
E = m.key,
|
|
g = m.arrayIndex,
|
|
v = g === void 0 ? -1 : g,
|
|
S = m.value,
|
|
w = m.record,
|
|
k = m.index,
|
|
_ = b.tokenSearchers,
|
|
C = _ === void 0 ? [] : _,
|
|
T = b.fullSearcher,
|
|
O = b.resultMap,
|
|
P = O === void 0 ? {} : O,
|
|
D = b.results,
|
|
M = D === void 0 ? [] : D;
|
|
/* @__PURE__ */ a(function F(Z, V, Q, z) {
|
|
if (V != null) {
|
|
if (typeof V == "string") {
|
|
var q = !1,
|
|
W = -1,
|
|
re = 0;
|
|
x._log(
|
|
`
|
|
Key: `.concat(E === "" ? "--" : E),
|
|
);
|
|
var R = T.search(V);
|
|
if (
|
|
(x._log(
|
|
'Full text: "'
|
|
.concat(V, '", score: ')
|
|
.concat(R.score),
|
|
),
|
|
x.options.tokenize)
|
|
) {
|
|
for (
|
|
var B = V.split(x.options.tokenSeparator),
|
|
L = B.length,
|
|
$ = [],
|
|
J = 0,
|
|
ie = C.length;
|
|
J < ie;
|
|
J += 1
|
|
) {
|
|
var te = C[J];
|
|
x._log(
|
|
`
|
|
Pattern: "`.concat(te.pattern, '"'),
|
|
);
|
|
for (var de = !1, ae = 0; ae < L; ae += 1) {
|
|
var ce = B[ae],
|
|
ue = te.search(ce),
|
|
Ie = {};
|
|
(ue.isMatch
|
|
? ((Ie[ce] = ue.score),
|
|
(q = !0),
|
|
(de = !0),
|
|
$.push(ue.score))
|
|
: ((Ie[ce] = 1),
|
|
x.options.matchAllTokens || $.push(1)),
|
|
x._log(
|
|
'Token: "'
|
|
.concat(ce, '", score: ')
|
|
.concat(Ie[ce]),
|
|
));
|
|
}
|
|
de && (re += 1);
|
|
}
|
|
W = $[0];
|
|
for (var ye = $.length, Oe = 1; Oe < ye; Oe += 1)
|
|
W += $[Oe];
|
|
((W /= ye), x._log("Token score average:", W));
|
|
}
|
|
var fe = R.score;
|
|
(W > -1 && (fe = (fe + W) / 2),
|
|
x._log("Score average:", fe));
|
|
var Se =
|
|
!x.options.tokenize ||
|
|
!x.options.matchAllTokens ||
|
|
re >= C.length;
|
|
if (
|
|
(x._log(
|
|
`
|
|
Check Matches: `.concat(Se),
|
|
),
|
|
(q || R.isMatch) && Se)
|
|
) {
|
|
var _e = {
|
|
key: E,
|
|
arrayIndex: Z,
|
|
value: V,
|
|
score: fe,
|
|
};
|
|
x.options.includeMatches &&
|
|
(_e.matchedIndices = R.matchedIndices);
|
|
var Ae = P[z];
|
|
Ae
|
|
? Ae.output.push(_e)
|
|
: ((P[z] = { item: Q, output: [_e] }),
|
|
M.push(P[z]));
|
|
}
|
|
} else if (c(V))
|
|
for (var et = 0, N = V.length; et < N; et += 1)
|
|
F(et, V[et], Q, z);
|
|
}
|
|
}, "e")(v, S, w, k);
|
|
}, "value"),
|
|
},
|
|
{
|
|
key: "_computeScore",
|
|
value: /* @__PURE__ */ a(function (m) {
|
|
this._log(`
|
|
|
|
Computing score:
|
|
`);
|
|
for (
|
|
var b = this._keyWeights,
|
|
x = !!Object.keys(b).length,
|
|
E = 0,
|
|
g = m.length;
|
|
E < g;
|
|
E += 1
|
|
) {
|
|
for (
|
|
var v = m[E], S = v.output, w = S.length, k = 1, _ = 0;
|
|
_ < w;
|
|
_ += 1
|
|
) {
|
|
var C = S[_],
|
|
T = C.key,
|
|
O = x ? b[T] : 1,
|
|
P =
|
|
C.score === 0 && b && b[T] > 0
|
|
? Number.EPSILON
|
|
: C.score;
|
|
k *= Math.pow(P, O);
|
|
}
|
|
((v.score = k), this._log(v));
|
|
}
|
|
}, "value"),
|
|
},
|
|
{
|
|
key: "_sort",
|
|
value: /* @__PURE__ */ a(function (m) {
|
|
(this._log(`
|
|
|
|
Sorting....`),
|
|
m.sort(this.options.sortFn));
|
|
}, "value"),
|
|
},
|
|
{
|
|
key: "_format",
|
|
value: /* @__PURE__ */ a(function (m) {
|
|
var b = [];
|
|
if (this.options.verbose) {
|
|
var x = [];
|
|
(this._log(
|
|
`
|
|
|
|
Output:
|
|
|
|
`,
|
|
JSON.stringify(
|
|
m,
|
|
function (C, T) {
|
|
if (i(T) === "object" && T !== null) {
|
|
if (x.indexOf(T) !== -1) return;
|
|
x.push(T);
|
|
}
|
|
return T;
|
|
},
|
|
2,
|
|
),
|
|
),
|
|
(x = null));
|
|
}
|
|
var E = [];
|
|
(this.options.includeMatches &&
|
|
E.push(function (C, T) {
|
|
var O = C.output;
|
|
T.matches = [];
|
|
for (var P = 0, D = O.length; P < D; P += 1) {
|
|
var M = O[P];
|
|
if (M.matchedIndices.length !== 0) {
|
|
var F = {
|
|
indices: M.matchedIndices,
|
|
value: M.value,
|
|
};
|
|
(M.key && (F.key = M.key),
|
|
M.hasOwnProperty("arrayIndex") &&
|
|
M.arrayIndex > -1 &&
|
|
(F.arrayIndex = M.arrayIndex),
|
|
T.matches.push(F));
|
|
}
|
|
}
|
|
}),
|
|
this.options.includeScore &&
|
|
E.push(function (C, T) {
|
|
T.score = C.score;
|
|
}));
|
|
for (var g = 0, v = m.length; g < v; g += 1) {
|
|
var S = m[g];
|
|
if (
|
|
(this.options.id &&
|
|
(S.item = this.options.getFn(
|
|
S.item,
|
|
this.options.id,
|
|
)[0]),
|
|
E.length)
|
|
) {
|
|
for (
|
|
var w = { item: S.item }, k = 0, _ = E.length;
|
|
k < _;
|
|
k += 1
|
|
)
|
|
E[k](S, w);
|
|
b.push(w);
|
|
} else b.push(S.item);
|
|
}
|
|
return b;
|
|
}, "value"),
|
|
},
|
|
{
|
|
key: "_log",
|
|
value: /* @__PURE__ */ a(function () {
|
|
var m;
|
|
this.options.verbose &&
|
|
(m = console).log.apply(m, arguments);
|
|
}, "value"),
|
|
},
|
|
]) && r(f.prototype, h),
|
|
y && r(f, y),
|
|
p
|
|
);
|
|
})();
|
|
e.exports = d;
|
|
},
|
|
function (e, t, o) {
|
|
function i(c, d) {
|
|
for (var p = 0; p < d.length; p++) {
|
|
var f = d[p];
|
|
((f.enumerable = f.enumerable || !1),
|
|
(f.configurable = !0),
|
|
"value" in f && (f.writable = !0),
|
|
Object.defineProperty(c, f.key, f));
|
|
}
|
|
}
|
|
a(i, "n");
|
|
var r = o(2),
|
|
n = o(3),
|
|
l = o(6),
|
|
u = (function () {
|
|
function c(h, y) {
|
|
var m = y.location,
|
|
b = m === void 0 ? 0 : m,
|
|
x = y.distance,
|
|
E = x === void 0 ? 100 : x,
|
|
g = y.threshold,
|
|
v = g === void 0 ? 0.6 : g,
|
|
S = y.maxPatternLength,
|
|
w = S === void 0 ? 32 : S,
|
|
k = y.isCaseSensitive,
|
|
_ = k !== void 0 && k,
|
|
C = y.tokenSeparator,
|
|
T = C === void 0 ? / +/g : C,
|
|
O = y.findAllMatches,
|
|
P = O !== void 0 && O,
|
|
D = y.minMatchCharLength,
|
|
M = D === void 0 ? 1 : D,
|
|
F = y.includeMatches,
|
|
Z = F !== void 0 && F;
|
|
((function (V, Q) {
|
|
if (!(V instanceof Q))
|
|
throw new TypeError("Cannot call a class as a function");
|
|
})(this, c),
|
|
(this.options = {
|
|
location: b,
|
|
distance: E,
|
|
threshold: v,
|
|
maxPatternLength: w,
|
|
isCaseSensitive: _,
|
|
tokenSeparator: T,
|
|
findAllMatches: P,
|
|
includeMatches: Z,
|
|
minMatchCharLength: M,
|
|
}),
|
|
(this.pattern = _ ? h : h.toLowerCase()),
|
|
this.pattern.length <= w &&
|
|
(this.patternAlphabet = l(this.pattern)));
|
|
}
|
|
a(c, "e");
|
|
var d, p, f;
|
|
return (
|
|
(d = c),
|
|
(p = [
|
|
{
|
|
key: "search",
|
|
value: /* @__PURE__ */ a(function (h) {
|
|
var y = this.options,
|
|
m = y.isCaseSensitive,
|
|
b = y.includeMatches;
|
|
if ((m || (h = h.toLowerCase()), this.pattern === h)) {
|
|
var x = { isMatch: !0, score: 0 };
|
|
return (b && (x.matchedIndices = [[0, h.length - 1]]), x);
|
|
}
|
|
var E = this.options,
|
|
g = E.maxPatternLength,
|
|
v = E.tokenSeparator;
|
|
if (this.pattern.length > g) return r(h, this.pattern, v);
|
|
var S = this.options,
|
|
w = S.location,
|
|
k = S.distance,
|
|
_ = S.threshold,
|
|
C = S.findAllMatches,
|
|
T = S.minMatchCharLength;
|
|
return n(h, this.pattern, this.patternAlphabet, {
|
|
location: w,
|
|
distance: k,
|
|
threshold: _,
|
|
findAllMatches: C,
|
|
minMatchCharLength: T,
|
|
includeMatches: b,
|
|
});
|
|
}, "value"),
|
|
},
|
|
]) && i(d.prototype, p),
|
|
f && i(d, f),
|
|
c
|
|
);
|
|
})();
|
|
e.exports = u;
|
|
},
|
|
function (e, t) {
|
|
var o = /[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g;
|
|
e.exports = function (i, r) {
|
|
var n =
|
|
arguments.length > 2 && arguments[2] !== void 0
|
|
? arguments[2]
|
|
: / +/g,
|
|
l = new RegExp(r.replace(o, "\\$&").replace(n, "|")),
|
|
u = i.match(l),
|
|
c = !!u,
|
|
d = [];
|
|
if (c)
|
|
for (var p = 0, f = u.length; p < f; p += 1) {
|
|
var h = u[p];
|
|
d.push([i.indexOf(h), h.length - 1]);
|
|
}
|
|
return { score: c ? 0.5 : 1, isMatch: c, matchedIndices: d };
|
|
};
|
|
},
|
|
function (e, t, o) {
|
|
var i = o(4),
|
|
r = o(5);
|
|
e.exports = function (n, l, u, c) {
|
|
for (
|
|
var d = c.location,
|
|
p = d === void 0 ? 0 : d,
|
|
f = c.distance,
|
|
h = f === void 0 ? 100 : f,
|
|
y = c.threshold,
|
|
m = y === void 0 ? 0.6 : y,
|
|
b = c.findAllMatches,
|
|
x = b !== void 0 && b,
|
|
E = c.minMatchCharLength,
|
|
g = E === void 0 ? 1 : E,
|
|
v = c.includeMatches,
|
|
S = v !== void 0 && v,
|
|
w = p,
|
|
k = n.length,
|
|
_ = m,
|
|
C = n.indexOf(l, w),
|
|
T = l.length,
|
|
O = [],
|
|
P = 0;
|
|
P < k;
|
|
P += 1
|
|
)
|
|
O[P] = 0;
|
|
if (C !== -1) {
|
|
var D = i(l, {
|
|
errors: 0,
|
|
currentLocation: C,
|
|
expectedLocation: w,
|
|
distance: h,
|
|
});
|
|
if (((_ = Math.min(D, _)), (C = n.lastIndexOf(l, w + T)) !== -1)) {
|
|
var M = i(l, {
|
|
errors: 0,
|
|
currentLocation: C,
|
|
expectedLocation: w,
|
|
distance: h,
|
|
});
|
|
_ = Math.min(M, _);
|
|
}
|
|
}
|
|
C = -1;
|
|
for (
|
|
var F = [],
|
|
Z = 1,
|
|
V = T + k,
|
|
Q = 1 << (T <= 31 ? T - 1 : 30),
|
|
z = 0;
|
|
z < T;
|
|
z += 1
|
|
) {
|
|
for (var q = 0, W = V; q < W; )
|
|
(i(l, {
|
|
errors: z,
|
|
currentLocation: w + W,
|
|
expectedLocation: w,
|
|
distance: h,
|
|
}) <= _
|
|
? (q = W)
|
|
: (V = W),
|
|
(W = Math.floor((V - q) / 2 + q)));
|
|
V = W;
|
|
var re = Math.max(1, w - W + 1),
|
|
R = x ? k : Math.min(w + W, k) + T,
|
|
B = Array(R + 2);
|
|
B[R + 1] = (1 << z) - 1;
|
|
for (var L = R; L >= re; L -= 1) {
|
|
var $ = L - 1,
|
|
J = u[n.charAt($)];
|
|
if (
|
|
(J && (O[$] = 1),
|
|
(B[L] = ((B[L + 1] << 1) | 1) & J),
|
|
z !== 0 && (B[L] |= ((F[L + 1] | F[L]) << 1) | 1 | F[L + 1]),
|
|
B[L] & Q &&
|
|
(Z = i(l, {
|
|
errors: z,
|
|
currentLocation: $,
|
|
expectedLocation: w,
|
|
distance: h,
|
|
})) <= _)
|
|
) {
|
|
if (((_ = Z), (C = $) <= w)) break;
|
|
re = Math.max(1, 2 * w - C);
|
|
}
|
|
}
|
|
if (
|
|
i(l, {
|
|
errors: z + 1,
|
|
currentLocation: w,
|
|
expectedLocation: w,
|
|
distance: h,
|
|
}) > _
|
|
)
|
|
break;
|
|
F = B;
|
|
}
|
|
var ie = { isMatch: C >= 0, score: Z === 0 ? 1e-3 : Z };
|
|
return (S && (ie.matchedIndices = r(O, g)), ie);
|
|
};
|
|
},
|
|
function (e, t) {
|
|
e.exports = function (o, i) {
|
|
var r = i.errors,
|
|
n = r === void 0 ? 0 : r,
|
|
l = i.currentLocation,
|
|
u = l === void 0 ? 0 : l,
|
|
c = i.expectedLocation,
|
|
d = c === void 0 ? 0 : c,
|
|
p = i.distance,
|
|
f = p === void 0 ? 100 : p,
|
|
h = n / o.length,
|
|
y = Math.abs(d - u);
|
|
return f ? h + y / f : y ? 1 : h;
|
|
};
|
|
},
|
|
function (e, t) {
|
|
e.exports = function () {
|
|
for (
|
|
var o =
|
|
arguments.length > 0 && arguments[0] !== void 0
|
|
? arguments[0]
|
|
: [],
|
|
i =
|
|
arguments.length > 1 && arguments[1] !== void 0
|
|
? arguments[1]
|
|
: 1,
|
|
r = [],
|
|
n = -1,
|
|
l = -1,
|
|
u = 0,
|
|
c = o.length;
|
|
u < c;
|
|
u += 1
|
|
) {
|
|
var d = o[u];
|
|
d && n === -1
|
|
? (n = u)
|
|
: d ||
|
|
n === -1 ||
|
|
((l = u - 1) - n + 1 >= i && r.push([n, l]), (n = -1));
|
|
}
|
|
return (o[u - 1] && u - n >= i && r.push([n, u - 1]), r);
|
|
};
|
|
},
|
|
function (e, t) {
|
|
e.exports = function (o) {
|
|
for (var i = {}, r = o.length, n = 0; n < r; n += 1)
|
|
i[o.charAt(n)] = 0;
|
|
for (var l = 0; l < r; l += 1) i[o.charAt(l)] |= 1 << (r - l - 1);
|
|
return i;
|
|
};
|
|
},
|
|
function (e, t) {
|
|
var o = /* @__PURE__ */ a(function (l) {
|
|
return Array.isArray
|
|
? Array.isArray(l)
|
|
: Object.prototype.toString.call(l) === "[object Array]";
|
|
}, "r"),
|
|
i = /* @__PURE__ */ a(function (l) {
|
|
return l == null
|
|
? ""
|
|
: (function (u) {
|
|
if (typeof u == "string") return u;
|
|
var c = u + "";
|
|
return c == "0" && 1 / u == -1 / 0 ? "-0" : c;
|
|
})(l);
|
|
}, "n"),
|
|
r = /* @__PURE__ */ a(function (l) {
|
|
return typeof l == "string";
|
|
}, "o"),
|
|
n = /* @__PURE__ */ a(function (l) {
|
|
return typeof l == "number";
|
|
}, "i");
|
|
e.exports = {
|
|
get: /* @__PURE__ */ a(function (l, u) {
|
|
var c = [];
|
|
return /* @__PURE__ */ (
|
|
a(function d(p, f) {
|
|
if (f) {
|
|
var h = f.indexOf("."),
|
|
y = f,
|
|
m = null;
|
|
h !== -1 && ((y = f.slice(0, h)), (m = f.slice(h + 1)));
|
|
var b = p[y];
|
|
if (b != null)
|
|
if (m || (!r(b) && !n(b)))
|
|
if (o(b))
|
|
for (var x = 0, E = b.length; x < E; x += 1) d(b[x], m);
|
|
else m && d(b, m);
|
|
else c.push(i(b));
|
|
} else c.push(p);
|
|
}, "e")(l, u),
|
|
c
|
|
);
|
|
}, "get"),
|
|
isArray: o,
|
|
isString: r,
|
|
isNum: n,
|
|
toString: i,
|
|
};
|
|
},
|
|
]);
|
|
});
|
|
});
|
|
|
|
// ../node_modules/store2/dist/store2.js
|
|
var Ud = we((bn, vn) => {
|
|
(function (e, t) {
|
|
var o = {
|
|
version: "2.14.4",
|
|
areas: {},
|
|
apis: {},
|
|
nsdelim: ".",
|
|
// utilities
|
|
inherit: /* @__PURE__ */ a(function (r, n) {
|
|
for (var l in r)
|
|
n.hasOwnProperty(l) ||
|
|
Object.defineProperty(
|
|
n,
|
|
l,
|
|
Object.getOwnPropertyDescriptor(r, l),
|
|
);
|
|
return n;
|
|
}, "inherit"),
|
|
stringify: /* @__PURE__ */ a(function (r, n) {
|
|
return r === void 0 || typeof r == "function"
|
|
? r + ""
|
|
: JSON.stringify(r, n || o.replace);
|
|
}, "stringify"),
|
|
parse: /* @__PURE__ */ a(function (r, n) {
|
|
try {
|
|
return JSON.parse(r, n || o.revive);
|
|
} catch {
|
|
return r;
|
|
}
|
|
}, "parse"),
|
|
// extension hooks
|
|
fn: /* @__PURE__ */ a(function (r, n) {
|
|
o.storeAPI[r] = n;
|
|
for (var l in o.apis) o.apis[l][r] = n;
|
|
}, "fn"),
|
|
get: /* @__PURE__ */ a(function (r, n) {
|
|
return r.getItem(n);
|
|
}, "get"),
|
|
set: /* @__PURE__ */ a(function (r, n, l) {
|
|
r.setItem(n, l);
|
|
}, "set"),
|
|
remove: /* @__PURE__ */ a(function (r, n) {
|
|
r.removeItem(n);
|
|
}, "remove"),
|
|
key: /* @__PURE__ */ a(function (r, n) {
|
|
return r.key(n);
|
|
}, "key"),
|
|
length: /* @__PURE__ */ a(function (r) {
|
|
return r.length;
|
|
}, "length"),
|
|
clear: /* @__PURE__ */ a(function (r) {
|
|
r.clear();
|
|
}, "clear"),
|
|
// core functions
|
|
Store: /* @__PURE__ */ a(function (r, n, l) {
|
|
var u = o.inherit(o.storeAPI, function (d, p, f) {
|
|
return arguments.length === 0
|
|
? u.getAll()
|
|
: typeof p == "function"
|
|
? u.transact(d, p, f)
|
|
: p !== void 0
|
|
? u.set(d, p, f)
|
|
: typeof d == "string" || typeof d == "number"
|
|
? u.get(d)
|
|
: typeof d == "function"
|
|
? u.each(d)
|
|
: d
|
|
? u.setAll(d, p)
|
|
: u.clear();
|
|
});
|
|
u._id = r;
|
|
try {
|
|
var c = "__store2_test";
|
|
(n.setItem(c, "ok"), (u._area = n), n.removeItem(c));
|
|
} catch {
|
|
u._area = o.storage("fake");
|
|
}
|
|
return (
|
|
(u._ns = l || ""),
|
|
o.areas[r] || (o.areas[r] = u._area),
|
|
o.apis[u._ns + u._id] || (o.apis[u._ns + u._id] = u),
|
|
u
|
|
);
|
|
}, "Store"),
|
|
storeAPI: {
|
|
// admin functions
|
|
area: /* @__PURE__ */ a(function (r, n) {
|
|
var l = this[r];
|
|
return (
|
|
(!l || !l.area) &&
|
|
((l = o.Store(r, n, this._ns)), this[r] || (this[r] = l)),
|
|
l
|
|
);
|
|
}, "area"),
|
|
namespace: /* @__PURE__ */ a(function (r, n, l) {
|
|
if (((l = l || this._delim || o.nsdelim), !r))
|
|
return this._ns
|
|
? this._ns.substring(0, this._ns.length - l.length)
|
|
: "";
|
|
var u = r,
|
|
c = this[u];
|
|
if (
|
|
(!c || !c.namespace) &&
|
|
((c = o.Store(this._id, this._area, this._ns + u + l)),
|
|
(c._delim = l),
|
|
this[u] || (this[u] = c),
|
|
!n)
|
|
)
|
|
for (var d in o.areas) c.area(d, o.areas[d]);
|
|
return c;
|
|
}, "namespace"),
|
|
isFake: /* @__PURE__ */ a(function (r) {
|
|
return (
|
|
r
|
|
? ((this._real = this._area), (this._area = o.storage("fake")))
|
|
: r === !1 && (this._area = this._real || this._area),
|
|
this._area.name === "fake"
|
|
);
|
|
}, "isFake"),
|
|
toString: /* @__PURE__ */ a(function () {
|
|
return (
|
|
"store" +
|
|
(this._ns ? "." + this.namespace() : "") +
|
|
"[" +
|
|
this._id +
|
|
"]"
|
|
);
|
|
}, "toString"),
|
|
// storage functions
|
|
has: /* @__PURE__ */ a(function (r) {
|
|
return this._area.has
|
|
? this._area.has(this._in(r))
|
|
: this._in(r) in this._area;
|
|
}, "has"),
|
|
size: /* @__PURE__ */ a(function () {
|
|
return this.keys().length;
|
|
}, "size"),
|
|
each: /* @__PURE__ */ a(function (r, n) {
|
|
for (var l = 0, u = o.length(this._area); l < u; l++) {
|
|
var c = this._out(o.key(this._area, l));
|
|
if (c !== void 0 && r.call(this, c, this.get(c), n) === !1) break;
|
|
u > o.length(this._area) && (u--, l--);
|
|
}
|
|
return n || this;
|
|
}, "each"),
|
|
keys: /* @__PURE__ */ a(function (r) {
|
|
return this.each(function (n, l, u) {
|
|
u.push(n);
|
|
}, r || []);
|
|
}, "keys"),
|
|
get: /* @__PURE__ */ a(function (r, n) {
|
|
var l = o.get(this._area, this._in(r)),
|
|
u;
|
|
return (
|
|
typeof n == "function" && ((u = n), (n = null)),
|
|
l !== null ? o.parse(l, u) : (n ?? l)
|
|
);
|
|
}, "get"),
|
|
getAll: /* @__PURE__ */ a(function (r) {
|
|
return this.each(function (n, l, u) {
|
|
u[n] = l;
|
|
}, r || {});
|
|
}, "getAll"),
|
|
transact: /* @__PURE__ */ a(function (r, n, l) {
|
|
var u = this.get(r, l),
|
|
c = n(u);
|
|
return (this.set(r, c === void 0 ? u : c), this);
|
|
}, "transact"),
|
|
set: /* @__PURE__ */ a(function (r, n, l) {
|
|
var u = this.get(r),
|
|
c;
|
|
return u != null && l === !1
|
|
? n
|
|
: (typeof l == "function" && ((c = l), (l = void 0)),
|
|
o.set(this._area, this._in(r), o.stringify(n, c), l) || u);
|
|
}, "set"),
|
|
setAll: /* @__PURE__ */ a(function (r, n) {
|
|
var l, u;
|
|
for (var c in r) ((u = r[c]), this.set(c, u, n) !== u && (l = !0));
|
|
return l;
|
|
}, "setAll"),
|
|
add: /* @__PURE__ */ a(function (r, n, l) {
|
|
var u = this.get(r);
|
|
if (u instanceof Array) n = u.concat(n);
|
|
else if (u !== null) {
|
|
var c = typeof u;
|
|
if (c === typeof n && c === "object") {
|
|
for (var d in n) u[d] = n[d];
|
|
n = u;
|
|
} else n = u + n;
|
|
}
|
|
return (o.set(this._area, this._in(r), o.stringify(n, l)), n);
|
|
}, "add"),
|
|
remove: /* @__PURE__ */ a(function (r, n) {
|
|
var l = this.get(r, n);
|
|
return (o.remove(this._area, this._in(r)), l);
|
|
}, "remove"),
|
|
clear: /* @__PURE__ */ a(function () {
|
|
return (
|
|
this._ns
|
|
? this.each(function (r) {
|
|
o.remove(this._area, this._in(r));
|
|
}, 1)
|
|
: o.clear(this._area),
|
|
this
|
|
);
|
|
}, "clear"),
|
|
clearAll: /* @__PURE__ */ a(function () {
|
|
var r = this._area;
|
|
for (var n in o.areas)
|
|
o.areas.hasOwnProperty(n) &&
|
|
((this._area = o.areas[n]), this.clear());
|
|
return ((this._area = r), this);
|
|
}, "clearAll"),
|
|
// internal use functions
|
|
_in: /* @__PURE__ */ a(function (r) {
|
|
return (
|
|
typeof r != "string" && (r = o.stringify(r)),
|
|
this._ns ? this._ns + r : r
|
|
);
|
|
}, "_in"),
|
|
_out: /* @__PURE__ */ a(function (r) {
|
|
return this._ns
|
|
? r && r.indexOf(this._ns) === 0
|
|
? r.substring(this._ns.length)
|
|
: void 0
|
|
: // so each() knows to skip it
|
|
r;
|
|
}, "_out"),
|
|
},
|
|
// end _.storeAPI
|
|
storage: /* @__PURE__ */ a(function (r) {
|
|
return o.inherit(o.storageAPI, { items: {}, name: r });
|
|
}, "storage"),
|
|
storageAPI: {
|
|
length: 0,
|
|
has: /* @__PURE__ */ a(function (r) {
|
|
return this.items.hasOwnProperty(r);
|
|
}, "has"),
|
|
key: /* @__PURE__ */ a(function (r) {
|
|
var n = 0;
|
|
for (var l in this.items) if (this.has(l) && r === n++) return l;
|
|
}, "key"),
|
|
setItem: /* @__PURE__ */ a(function (r, n) {
|
|
(this.has(r) || this.length++, (this.items[r] = n));
|
|
}, "setItem"),
|
|
removeItem: /* @__PURE__ */ a(function (r) {
|
|
this.has(r) && (delete this.items[r], this.length--);
|
|
}, "removeItem"),
|
|
getItem: /* @__PURE__ */ a(function (r) {
|
|
return this.has(r) ? this.items[r] : null;
|
|
}, "getItem"),
|
|
clear: /* @__PURE__ */ a(function () {
|
|
for (var r in this.items) this.removeItem(r);
|
|
}, "clear"),
|
|
},
|
|
// end _.storageAPI
|
|
},
|
|
i =
|
|
// safely set this up (throws error in IE10/32bit mode for local files)
|
|
o.Store(
|
|
"local",
|
|
(function () {
|
|
try {
|
|
return localStorage;
|
|
} catch {}
|
|
})(),
|
|
);
|
|
((i.local = i),
|
|
(i._ = o),
|
|
i.area(
|
|
"session",
|
|
(function () {
|
|
try {
|
|
return sessionStorage;
|
|
} catch {}
|
|
})(),
|
|
),
|
|
i.area("page", o.storage("page")),
|
|
typeof t == "function" && t.amd !== void 0
|
|
? t("store2", [], function () {
|
|
return i;
|
|
})
|
|
: typeof vn < "u" && vn.exports
|
|
? (vn.exports = i)
|
|
: (e.store && (o.conflict = e.store), (e.store = i)));
|
|
})(bn, bn && bn.define);
|
|
});
|
|
|
|
// global-externals:react
|
|
var s = __REACT__,
|
|
{
|
|
Children: gw,
|
|
Component: Le,
|
|
Fragment: Ee,
|
|
Profiler: yw,
|
|
PureComponent: bw,
|
|
StrictMode: vw,
|
|
Suspense: xw,
|
|
__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED: Iw,
|
|
act: Sw,
|
|
cloneElement: ta,
|
|
createContext: Qt,
|
|
createElement: ww,
|
|
createFactory: Ew,
|
|
createRef: Tw,
|
|
forwardRef: oa,
|
|
isValidElement: Cw,
|
|
lazy: _w,
|
|
memo: _t,
|
|
startTransition: kw,
|
|
unstable_act: Ow,
|
|
useCallback: A,
|
|
useContext: qo,
|
|
useDebugValue: Pw,
|
|
useDeferredValue: ra,
|
|
useEffect: H,
|
|
useId: na,
|
|
useImperativeHandle: Aw,
|
|
useInsertionEffect: Dw,
|
|
useLayoutEffect: Xt,
|
|
useMemo: G,
|
|
useReducer: Zt,
|
|
useRef: U,
|
|
useState: K,
|
|
useSyncExternalStore: Mw,
|
|
useTransition: ia,
|
|
version: Lw,
|
|
} = __REACT__;
|
|
|
|
// global-externals:storybook/internal/channels
|
|
var Nw = __STORYBOOK_CHANNELS__,
|
|
{
|
|
Channel: Fw,
|
|
HEARTBEAT_INTERVAL: Rw,
|
|
HEARTBEAT_MAX_LATENCY: Bw,
|
|
PostMessageTransport: Hw,
|
|
WebsocketTransport: zw,
|
|
createBrowserChannel: sa,
|
|
} = __STORYBOOK_CHANNELS__;
|
|
|
|
// global-externals:storybook/internal/core-events
|
|
var Vw = __STORYBOOK_CORE_EVENTS__,
|
|
{
|
|
ARGTYPES_INFO_REQUEST: aa,
|
|
ARGTYPES_INFO_RESPONSE: la,
|
|
CHANNEL_CREATED: ua,
|
|
CHANNEL_WS_DISCONNECT: ca,
|
|
CONFIG_ERROR: jw,
|
|
CREATE_NEW_STORYFILE_REQUEST: pa,
|
|
CREATE_NEW_STORYFILE_RESPONSE: da,
|
|
CURRENT_STORY_WAS_SET: Kw,
|
|
DOCS_PREPARED: $w,
|
|
DOCS_RENDERED: Uw,
|
|
FILE_COMPONENT_SEARCH_REQUEST: fa,
|
|
FILE_COMPONENT_SEARCH_RESPONSE: Yo,
|
|
FORCE_REMOUNT: Sn,
|
|
FORCE_RE_RENDER: Gw,
|
|
GLOBALS_UPDATED: qw,
|
|
NAVIGATE_URL: Yw,
|
|
PLAY_FUNCTION_THREW_EXCEPTION: Qw,
|
|
PRELOAD_ENTRIES: kt,
|
|
PREVIEW_BUILDER_PROGRESS: ma,
|
|
PREVIEW_KEYDOWN: Xw,
|
|
REGISTER_SUBSCRIPTION: Zw,
|
|
REQUEST_WHATS_NEW_DATA: Jw,
|
|
RESET_STORY_ARGS: eE,
|
|
RESULT_WHATS_NEW_DATA: tE,
|
|
SAVE_STORY_REQUEST: ha,
|
|
SAVE_STORY_RESPONSE: ga,
|
|
SELECT_STORY: oE,
|
|
SET_CONFIG: rE,
|
|
SET_CURRENT_STORY: ya,
|
|
SET_FILTER: nE,
|
|
SET_GLOBALS: iE,
|
|
SET_INDEX: sE,
|
|
SET_STORIES: aE,
|
|
SET_WHATS_NEW_CACHE: lE,
|
|
SHARED_STATE_CHANGED: uE,
|
|
SHARED_STATE_SET: cE,
|
|
STORIES_COLLAPSE_ALL: ho,
|
|
STORIES_EXPAND_ALL: wn,
|
|
STORY_ARGS_UPDATED: pE,
|
|
STORY_CHANGED: dE,
|
|
STORY_ERRORED: fE,
|
|
STORY_FINISHED: mE,
|
|
STORY_HOT_UPDATED: hE,
|
|
STORY_INDEX_INVALIDATED: gE,
|
|
STORY_MISSING: yE,
|
|
STORY_PREPARED: bE,
|
|
STORY_RENDERED: vE,
|
|
STORY_RENDER_PHASE_CHANGED: xE,
|
|
STORY_SPECIFIED: IE,
|
|
STORY_THREW_EXCEPTION: SE,
|
|
STORY_UNCHANGED: wE,
|
|
TELEMETRY_ERROR: EE,
|
|
TOGGLE_WHATS_NEW_NOTIFICATIONS: TE,
|
|
UNHANDLED_ERRORS_WHILE_PLAYING: CE,
|
|
UPDATE_GLOBALS: _E,
|
|
UPDATE_QUERY_PARAMS: kE,
|
|
UPDATE_STORY_ARGS: OE,
|
|
} = __STORYBOOK_CORE_EVENTS__;
|
|
|
|
// ../node_modules/@storybook/global/dist/index.mjs
|
|
var se = (() => {
|
|
let e;
|
|
return (
|
|
typeof window < "u"
|
|
? (e = window)
|
|
: typeof globalThis < "u"
|
|
? (e = globalThis)
|
|
: typeof global < "u"
|
|
? (e = global)
|
|
: typeof self < "u"
|
|
? (e = self)
|
|
: (e = {}),
|
|
e
|
|
);
|
|
})();
|
|
|
|
// global-externals:@storybook/icons
|
|
var oi = {};
|
|
vf(oi, {
|
|
AccessibilityAltIcon: () => wf,
|
|
AccessibilityIcon: () => Ef,
|
|
AccessibilityIgnoredIcon: () => Tf,
|
|
AddIcon: () => Cf,
|
|
AdminIcon: () => _f,
|
|
AlertAltIcon: () => kf,
|
|
AlertIcon: () => go,
|
|
AlignLeftIcon: () => Of,
|
|
AlignRightIcon: () => Pf,
|
|
AppleIcon: () => Af,
|
|
ArrowBottomLeftIcon: () => Df,
|
|
ArrowBottomRightIcon: () => Mf,
|
|
ArrowDownIcon: () => Lf,
|
|
ArrowLeftIcon: () => En,
|
|
ArrowRightIcon: () => Nf,
|
|
ArrowSolidDownIcon: () => Ff,
|
|
ArrowSolidLeftIcon: () => Rf,
|
|
ArrowSolidRightIcon: () => Bf,
|
|
ArrowSolidUpIcon: () => Hf,
|
|
ArrowTopLeftIcon: () => zf,
|
|
ArrowTopRightIcon: () => Wf,
|
|
ArrowUpIcon: () => Vf,
|
|
AzureDevOpsIcon: () => jf,
|
|
BackIcon: () => Kf,
|
|
BasketIcon: () => $f,
|
|
BatchAcceptIcon: () => Uf,
|
|
BatchDenyIcon: () => Gf,
|
|
BeakerIcon: () => qf,
|
|
BellIcon: () => Yf,
|
|
BitbucketIcon: () => Qf,
|
|
BoldIcon: () => Xf,
|
|
BookIcon: () => Zf,
|
|
BookmarkHollowIcon: () => Jf,
|
|
BookmarkIcon: () => em,
|
|
BottomBarIcon: () => yo,
|
|
BottomBarToggleIcon: () => Tn,
|
|
BoxIcon: () => tm,
|
|
BranchIcon: () => om,
|
|
BrowserIcon: () => rm,
|
|
ButtonIcon: () => nm,
|
|
CPUIcon: () => im,
|
|
CalendarIcon: () => sm,
|
|
CameraIcon: () => am,
|
|
CameraStabilizeIcon: () => lm,
|
|
CategoryIcon: () => um,
|
|
CertificateIcon: () => cm,
|
|
ChangedIcon: () => pm,
|
|
ChatIcon: () => dm,
|
|
CheckIcon: () => Be,
|
|
ChevronDownIcon: () => Ot,
|
|
ChevronLeftIcon: () => fm,
|
|
ChevronRightIcon: () => Cn,
|
|
ChevronSmallDownIcon: () => mm,
|
|
ChevronSmallLeftIcon: () => hm,
|
|
ChevronSmallRightIcon: () => gm,
|
|
ChevronSmallUpIcon: () => _n,
|
|
ChevronUpIcon: () => ym,
|
|
ChromaticIcon: () => bm,
|
|
ChromeIcon: () => vm,
|
|
CircleHollowIcon: () => xm,
|
|
CircleIcon: () => kn,
|
|
ClearIcon: () => Im,
|
|
CloseAltIcon: () => bo,
|
|
CloseIcon: () => je,
|
|
CloudHollowIcon: () => Sm,
|
|
CloudIcon: () => wm,
|
|
CogIcon: () => Qo,
|
|
CollapseIcon: () => On,
|
|
CommandIcon: () => Pn,
|
|
CommentAddIcon: () => Em,
|
|
CommentIcon: () => Tm,
|
|
CommentsIcon: () => Cm,
|
|
CommitIcon: () => _m,
|
|
CompassIcon: () => km,
|
|
ComponentDrivenIcon: () => Om,
|
|
ComponentIcon: () => Xo,
|
|
ContrastIcon: () => Pm,
|
|
ContrastIgnoredIcon: () => Am,
|
|
ControlsIcon: () => Dm,
|
|
CopyIcon: () => Mm,
|
|
CreditIcon: () => Lm,
|
|
CrossIcon: () => Nm,
|
|
DashboardIcon: () => Fm,
|
|
DatabaseIcon: () => Rm,
|
|
DeleteIcon: () => Bm,
|
|
DiamondIcon: () => Hm,
|
|
DirectionIcon: () => zm,
|
|
DiscordIcon: () => Wm,
|
|
DocChartIcon: () => Vm,
|
|
DocListIcon: () => jm,
|
|
DocumentIcon: () => Pt,
|
|
DownloadIcon: () => Km,
|
|
DragIcon: () => $m,
|
|
EditIcon: () => Um,
|
|
EllipsisIcon: () => An,
|
|
EmailIcon: () => Gm,
|
|
ExpandAltIcon: () => Dn,
|
|
ExpandIcon: () => Mn,
|
|
EyeCloseIcon: () => Ln,
|
|
EyeIcon: () => Nn,
|
|
FaceHappyIcon: () => qm,
|
|
FaceNeutralIcon: () => Ym,
|
|
FaceSadIcon: () => Qm,
|
|
FacebookIcon: () => Xm,
|
|
FailedIcon: () => Fn,
|
|
FastForwardIcon: () => Zm,
|
|
FigmaIcon: () => Jm,
|
|
FilterIcon: () => Rn,
|
|
FlagIcon: () => eh,
|
|
FolderIcon: () => th,
|
|
FormIcon: () => oh,
|
|
GDriveIcon: () => rh,
|
|
GithubIcon: () => vo,
|
|
GitlabIcon: () => nh,
|
|
GlobeIcon: () => Zo,
|
|
GoogleIcon: () => ih,
|
|
GraphBarIcon: () => sh,
|
|
GraphLineIcon: () => ah,
|
|
GraphqlIcon: () => lh,
|
|
GridAltIcon: () => uh,
|
|
GridIcon: () => ch,
|
|
GrowIcon: () => ph,
|
|
HeartHollowIcon: () => dh,
|
|
HeartIcon: () => Bn,
|
|
HomeIcon: () => fh,
|
|
HourglassIcon: () => mh,
|
|
InfoIcon: () => Hn,
|
|
ItalicIcon: () => hh,
|
|
JumpToIcon: () => gh,
|
|
KeyIcon: () => yh,
|
|
LightningIcon: () => zn,
|
|
LightningOffIcon: () => bh,
|
|
LinkBrokenIcon: () => vh,
|
|
LinkIcon: () => Wn,
|
|
LinkedinIcon: () => xh,
|
|
LinuxIcon: () => Ih,
|
|
ListOrderedIcon: () => Sh,
|
|
ListUnorderedIcon: () => wh,
|
|
LocationIcon: () => Eh,
|
|
LockIcon: () => xo,
|
|
MarkdownIcon: () => Th,
|
|
MarkupIcon: () => Vn,
|
|
MediumIcon: () => Ch,
|
|
MemoryIcon: () => _h,
|
|
MenuIcon: () => Io,
|
|
MergeIcon: () => kh,
|
|
MirrorIcon: () => Oh,
|
|
MobileIcon: () => Ph,
|
|
MoonIcon: () => Ah,
|
|
NutIcon: () => Dh,
|
|
OutboxIcon: () => Mh,
|
|
OutlineIcon: () => Lh,
|
|
PaintBrushIcon: () => Nh,
|
|
PaperClipIcon: () => Fh,
|
|
ParagraphIcon: () => Rh,
|
|
PassedIcon: () => Bh,
|
|
PhoneIcon: () => Hh,
|
|
PhotoDragIcon: () => zh,
|
|
PhotoIcon: () => Wh,
|
|
PhotoStabilizeIcon: () => Vh,
|
|
PinAltIcon: () => jh,
|
|
PinIcon: () => Kh,
|
|
PlayAllHollowIcon: () => jn,
|
|
PlayBackIcon: () => $h,
|
|
PlayHollowIcon: () => Uh,
|
|
PlayIcon: () => Gh,
|
|
PlayNextIcon: () => qh,
|
|
PlusIcon: () => Kn,
|
|
PointerDefaultIcon: () => Yh,
|
|
PointerHandIcon: () => Qh,
|
|
PowerIcon: () => Xh,
|
|
PrintIcon: () => Zh,
|
|
ProceedIcon: () => Jh,
|
|
ProfileIcon: () => eg,
|
|
PullRequestIcon: () => tg,
|
|
QuestionIcon: () => og,
|
|
RSSIcon: () => rg,
|
|
RedirectIcon: () => ng,
|
|
ReduxIcon: () => ig,
|
|
RefreshIcon: () => sg,
|
|
ReplyIcon: () => ag,
|
|
RepoIcon: () => lg,
|
|
RequestChangeIcon: () => ug,
|
|
RewindIcon: () => cg,
|
|
RulerIcon: () => pg,
|
|
SaveIcon: () => dg,
|
|
SearchIcon: () => So,
|
|
ShareAltIcon: () => tt,
|
|
ShareIcon: () => fg,
|
|
ShieldIcon: () => mg,
|
|
SideBySideIcon: () => hg,
|
|
SidebarAltIcon: () => wo,
|
|
SidebarAltToggleIcon: () => gg,
|
|
SidebarIcon: () => yg,
|
|
SidebarToggleIcon: () => bg,
|
|
SpeakerIcon: () => vg,
|
|
StackedIcon: () => xg,
|
|
StarHollowIcon: () => Ig,
|
|
StarIcon: () => Sg,
|
|
StatusFailIcon: () => $n,
|
|
StatusIcon: () => wg,
|
|
StatusPassIcon: () => Un,
|
|
StatusWarnIcon: () => Gn,
|
|
StickerIcon: () => Eg,
|
|
StopAltHollowIcon: () => Tg,
|
|
StopAltIcon: () => Cg,
|
|
StopIcon: () => _g,
|
|
StorybookIcon: () => qn,
|
|
StructureIcon: () => kg,
|
|
SubtractIcon: () => Og,
|
|
SunIcon: () => Pg,
|
|
SupportIcon: () => Ag,
|
|
SweepIcon: () => Yn,
|
|
SwitchAltIcon: () => Dg,
|
|
SyncIcon: () => ct,
|
|
TabletIcon: () => Mg,
|
|
ThumbsUpIcon: () => Lg,
|
|
TimeIcon: () => Qn,
|
|
TimerIcon: () => Ng,
|
|
TransferIcon: () => Fg,
|
|
TrashIcon: () => Xn,
|
|
TwitterIcon: () => Rg,
|
|
TypeIcon: () => Bg,
|
|
UbuntuIcon: () => Hg,
|
|
UndoIcon: () => zg,
|
|
UnfoldIcon: () => Wg,
|
|
UnlockIcon: () => Vg,
|
|
UnpinIcon: () => jg,
|
|
UploadIcon: () => Kg,
|
|
UserAddIcon: () => $g,
|
|
UserAltIcon: () => Ug,
|
|
UserIcon: () => Gg,
|
|
UsersIcon: () => qg,
|
|
VSCodeIcon: () => Yg,
|
|
VerifiedIcon: () => Qg,
|
|
VideoIcon: () => Xg,
|
|
WandIcon: () => Zn,
|
|
WatchIcon: () => Zg,
|
|
WindowsIcon: () => Jg,
|
|
WrenchIcon: () => ey,
|
|
XIcon: () => ty,
|
|
YoutubeIcon: () => oy,
|
|
ZoomIcon: () => Jn,
|
|
ZoomOutIcon: () => ei,
|
|
ZoomResetIcon: () => ti,
|
|
default: () => Sf,
|
|
iconList: () => ry,
|
|
});
|
|
var Sf = __STORYBOOK_ICONS__,
|
|
{
|
|
AccessibilityAltIcon: wf,
|
|
AccessibilityIcon: Ef,
|
|
AccessibilityIgnoredIcon: Tf,
|
|
AddIcon: Cf,
|
|
AdminIcon: _f,
|
|
AlertAltIcon: kf,
|
|
AlertIcon: go,
|
|
AlignLeftIcon: Of,
|
|
AlignRightIcon: Pf,
|
|
AppleIcon: Af,
|
|
ArrowBottomLeftIcon: Df,
|
|
ArrowBottomRightIcon: Mf,
|
|
ArrowDownIcon: Lf,
|
|
ArrowLeftIcon: En,
|
|
ArrowRightIcon: Nf,
|
|
ArrowSolidDownIcon: Ff,
|
|
ArrowSolidLeftIcon: Rf,
|
|
ArrowSolidRightIcon: Bf,
|
|
ArrowSolidUpIcon: Hf,
|
|
ArrowTopLeftIcon: zf,
|
|
ArrowTopRightIcon: Wf,
|
|
ArrowUpIcon: Vf,
|
|
AzureDevOpsIcon: jf,
|
|
BackIcon: Kf,
|
|
BasketIcon: $f,
|
|
BatchAcceptIcon: Uf,
|
|
BatchDenyIcon: Gf,
|
|
BeakerIcon: qf,
|
|
BellIcon: Yf,
|
|
BitbucketIcon: Qf,
|
|
BoldIcon: Xf,
|
|
BookIcon: Zf,
|
|
BookmarkHollowIcon: Jf,
|
|
BookmarkIcon: em,
|
|
BottomBarIcon: yo,
|
|
BottomBarToggleIcon: Tn,
|
|
BoxIcon: tm,
|
|
BranchIcon: om,
|
|
BrowserIcon: rm,
|
|
ButtonIcon: nm,
|
|
CPUIcon: im,
|
|
CalendarIcon: sm,
|
|
CameraIcon: am,
|
|
CameraStabilizeIcon: lm,
|
|
CategoryIcon: um,
|
|
CertificateIcon: cm,
|
|
ChangedIcon: pm,
|
|
ChatIcon: dm,
|
|
CheckIcon: Be,
|
|
ChevronDownIcon: Ot,
|
|
ChevronLeftIcon: fm,
|
|
ChevronRightIcon: Cn,
|
|
ChevronSmallDownIcon: mm,
|
|
ChevronSmallLeftIcon: hm,
|
|
ChevronSmallRightIcon: gm,
|
|
ChevronSmallUpIcon: _n,
|
|
ChevronUpIcon: ym,
|
|
ChromaticIcon: bm,
|
|
ChromeIcon: vm,
|
|
CircleHollowIcon: xm,
|
|
CircleIcon: kn,
|
|
ClearIcon: Im,
|
|
CloseAltIcon: bo,
|
|
CloseIcon: je,
|
|
CloudHollowIcon: Sm,
|
|
CloudIcon: wm,
|
|
CogIcon: Qo,
|
|
CollapseIcon: On,
|
|
CommandIcon: Pn,
|
|
CommentAddIcon: Em,
|
|
CommentIcon: Tm,
|
|
CommentsIcon: Cm,
|
|
CommitIcon: _m,
|
|
CompassIcon: km,
|
|
ComponentDrivenIcon: Om,
|
|
ComponentIcon: Xo,
|
|
ContrastIcon: Pm,
|
|
ContrastIgnoredIcon: Am,
|
|
ControlsIcon: Dm,
|
|
CopyIcon: Mm,
|
|
CreditIcon: Lm,
|
|
CrossIcon: Nm,
|
|
DashboardIcon: Fm,
|
|
DatabaseIcon: Rm,
|
|
DeleteIcon: Bm,
|
|
DiamondIcon: Hm,
|
|
DirectionIcon: zm,
|
|
DiscordIcon: Wm,
|
|
DocChartIcon: Vm,
|
|
DocListIcon: jm,
|
|
DocumentIcon: Pt,
|
|
DownloadIcon: Km,
|
|
DragIcon: $m,
|
|
EditIcon: Um,
|
|
EllipsisIcon: An,
|
|
EmailIcon: Gm,
|
|
ExpandAltIcon: Dn,
|
|
ExpandIcon: Mn,
|
|
EyeCloseIcon: Ln,
|
|
EyeIcon: Nn,
|
|
FaceHappyIcon: qm,
|
|
FaceNeutralIcon: Ym,
|
|
FaceSadIcon: Qm,
|
|
FacebookIcon: Xm,
|
|
FailedIcon: Fn,
|
|
FastForwardIcon: Zm,
|
|
FigmaIcon: Jm,
|
|
FilterIcon: Rn,
|
|
FlagIcon: eh,
|
|
FolderIcon: th,
|
|
FormIcon: oh,
|
|
GDriveIcon: rh,
|
|
GithubIcon: vo,
|
|
GitlabIcon: nh,
|
|
GlobeIcon: Zo,
|
|
GoogleIcon: ih,
|
|
GraphBarIcon: sh,
|
|
GraphLineIcon: ah,
|
|
GraphqlIcon: lh,
|
|
GridAltIcon: uh,
|
|
GridIcon: ch,
|
|
GrowIcon: ph,
|
|
HeartHollowIcon: dh,
|
|
HeartIcon: Bn,
|
|
HomeIcon: fh,
|
|
HourglassIcon: mh,
|
|
InfoIcon: Hn,
|
|
ItalicIcon: hh,
|
|
JumpToIcon: gh,
|
|
KeyIcon: yh,
|
|
LightningIcon: zn,
|
|
LightningOffIcon: bh,
|
|
LinkBrokenIcon: vh,
|
|
LinkIcon: Wn,
|
|
LinkedinIcon: xh,
|
|
LinuxIcon: Ih,
|
|
ListOrderedIcon: Sh,
|
|
ListUnorderedIcon: wh,
|
|
LocationIcon: Eh,
|
|
LockIcon: xo,
|
|
MarkdownIcon: Th,
|
|
MarkupIcon: Vn,
|
|
MediumIcon: Ch,
|
|
MemoryIcon: _h,
|
|
MenuIcon: Io,
|
|
MergeIcon: kh,
|
|
MirrorIcon: Oh,
|
|
MobileIcon: Ph,
|
|
MoonIcon: Ah,
|
|
NutIcon: Dh,
|
|
OutboxIcon: Mh,
|
|
OutlineIcon: Lh,
|
|
PaintBrushIcon: Nh,
|
|
PaperClipIcon: Fh,
|
|
ParagraphIcon: Rh,
|
|
PassedIcon: Bh,
|
|
PhoneIcon: Hh,
|
|
PhotoDragIcon: zh,
|
|
PhotoIcon: Wh,
|
|
PhotoStabilizeIcon: Vh,
|
|
PinAltIcon: jh,
|
|
PinIcon: Kh,
|
|
PlayAllHollowIcon: jn,
|
|
PlayBackIcon: $h,
|
|
PlayHollowIcon: Uh,
|
|
PlayIcon: Gh,
|
|
PlayNextIcon: qh,
|
|
PlusIcon: Kn,
|
|
PointerDefaultIcon: Yh,
|
|
PointerHandIcon: Qh,
|
|
PowerIcon: Xh,
|
|
PrintIcon: Zh,
|
|
ProceedIcon: Jh,
|
|
ProfileIcon: eg,
|
|
PullRequestIcon: tg,
|
|
QuestionIcon: og,
|
|
RSSIcon: rg,
|
|
RedirectIcon: ng,
|
|
ReduxIcon: ig,
|
|
RefreshIcon: sg,
|
|
ReplyIcon: ag,
|
|
RepoIcon: lg,
|
|
RequestChangeIcon: ug,
|
|
RewindIcon: cg,
|
|
RulerIcon: pg,
|
|
SaveIcon: dg,
|
|
SearchIcon: So,
|
|
ShareAltIcon: tt,
|
|
ShareIcon: fg,
|
|
ShieldIcon: mg,
|
|
SideBySideIcon: hg,
|
|
SidebarAltIcon: wo,
|
|
SidebarAltToggleIcon: gg,
|
|
SidebarIcon: yg,
|
|
SidebarToggleIcon: bg,
|
|
SpeakerIcon: vg,
|
|
StackedIcon: xg,
|
|
StarHollowIcon: Ig,
|
|
StarIcon: Sg,
|
|
StatusFailIcon: $n,
|
|
StatusIcon: wg,
|
|
StatusPassIcon: Un,
|
|
StatusWarnIcon: Gn,
|
|
StickerIcon: Eg,
|
|
StopAltHollowIcon: Tg,
|
|
StopAltIcon: Cg,
|
|
StopIcon: _g,
|
|
StorybookIcon: qn,
|
|
StructureIcon: kg,
|
|
SubtractIcon: Og,
|
|
SunIcon: Pg,
|
|
SupportIcon: Ag,
|
|
SweepIcon: Yn,
|
|
SwitchAltIcon: Dg,
|
|
SyncIcon: ct,
|
|
TabletIcon: Mg,
|
|
ThumbsUpIcon: Lg,
|
|
TimeIcon: Qn,
|
|
TimerIcon: Ng,
|
|
TransferIcon: Fg,
|
|
TrashIcon: Xn,
|
|
TwitterIcon: Rg,
|
|
TypeIcon: Bg,
|
|
UbuntuIcon: Hg,
|
|
UndoIcon: zg,
|
|
UnfoldIcon: Wg,
|
|
UnlockIcon: Vg,
|
|
UnpinIcon: jg,
|
|
UploadIcon: Kg,
|
|
UserAddIcon: $g,
|
|
UserAltIcon: Ug,
|
|
UserIcon: Gg,
|
|
UsersIcon: qg,
|
|
VSCodeIcon: Yg,
|
|
VerifiedIcon: Qg,
|
|
VideoIcon: Xg,
|
|
WandIcon: Zn,
|
|
WatchIcon: Zg,
|
|
WindowsIcon: Jg,
|
|
WrenchIcon: ey,
|
|
XIcon: ty,
|
|
YoutubeIcon: oy,
|
|
ZoomIcon: Jn,
|
|
ZoomOutIcon: ei,
|
|
ZoomResetIcon: ti,
|
|
iconList: ry,
|
|
} = __STORYBOOK_ICONS__;
|
|
|
|
// global-externals:storybook/manager-api
|
|
var DE = __STORYBOOK_API__,
|
|
{
|
|
ActiveTabs: ME,
|
|
Consumer: me,
|
|
ManagerContext: LE,
|
|
Provider: ba,
|
|
RequestResponseError: NE,
|
|
addons: He,
|
|
combineParameters: FE,
|
|
controlOrMetaKey: RE,
|
|
controlOrMetaSymbol: BE,
|
|
eventMatchesShortcut: HE,
|
|
eventToShortcut: va,
|
|
experimental_MockUniversalStore: zE,
|
|
experimental_UniversalStore: WE,
|
|
experimental_getStatusStore: ny,
|
|
experimental_getTestProviderStore: iy,
|
|
experimental_requestResponse: Jo,
|
|
experimental_useStatusStore: Eo,
|
|
experimental_useTestProviderStore: ri,
|
|
experimental_useUniversalStore: VE,
|
|
internal_fullStatusStore: At,
|
|
internal_fullTestProviderStore: Jt,
|
|
internal_universalStatusStore: jE,
|
|
internal_universalTestProviderStore: KE,
|
|
isMacLike: $E,
|
|
isShortcutTaken: UE,
|
|
keyToSymbol: GE,
|
|
merge: er,
|
|
mockChannel: qE,
|
|
optionOrAltSymbol: YE,
|
|
shortcutMatchesShortcut: xa,
|
|
shortcutToHumanString: Ye,
|
|
types: be,
|
|
useAddonState: QE,
|
|
useArgTypes: XE,
|
|
useArgs: ZE,
|
|
useChannel: Ia,
|
|
useGlobalTypes: Sa,
|
|
useGlobals: tr,
|
|
useParameter: JE,
|
|
useSharedState: eT,
|
|
useStoryPrepared: tT,
|
|
useStorybookApi: oe,
|
|
useStorybookState: Ne,
|
|
} = __STORYBOOK_API__;
|
|
|
|
// global-externals:storybook/theming
|
|
var rT = __STORYBOOK_THEMING__,
|
|
{
|
|
CacheProvider: nT,
|
|
ClassNames: iT,
|
|
Global: eo,
|
|
ThemeProvider: ni,
|
|
background: sT,
|
|
color: wa,
|
|
convert: aT,
|
|
create: lT,
|
|
createCache: uT,
|
|
createGlobal: Ea,
|
|
createReset: cT,
|
|
css: pT,
|
|
darken: dT,
|
|
ensure: Ta,
|
|
ignoreSsrWarning: fT,
|
|
isPropValid: mT,
|
|
jsx: hT,
|
|
keyframes: Dt,
|
|
lighten: gT,
|
|
styled: I,
|
|
themes: yT,
|
|
typography: bT,
|
|
useTheme: De,
|
|
withTheme: Ca,
|
|
} = __STORYBOOK_THEMING__;
|
|
|
|
// global-externals:storybook/internal/components
|
|
var xT = __STORYBOOK_COMPONENTS__,
|
|
{
|
|
A: IT,
|
|
ActionBar: ST,
|
|
AddonPanel: wT,
|
|
Badge: or,
|
|
Bar: ET,
|
|
Blockquote: TT,
|
|
Button: he,
|
|
ClipboardCode: CT,
|
|
Code: _T,
|
|
DL: kT,
|
|
Div: OT,
|
|
DocumentWrapper: PT,
|
|
EmptyTabContent: _a,
|
|
ErrorFormatter: ka,
|
|
FlexBar: AT,
|
|
Form: rr,
|
|
H1: DT,
|
|
H2: MT,
|
|
H3: LT,
|
|
H4: NT,
|
|
H5: FT,
|
|
H6: RT,
|
|
HR: BT,
|
|
IconButton: ee,
|
|
Img: HT,
|
|
LI: zT,
|
|
Link: Pe,
|
|
ListItem: sy,
|
|
Loader: nr,
|
|
Modal: Mt,
|
|
OL: WT,
|
|
P: VT,
|
|
Placeholder: jT,
|
|
Pre: KT,
|
|
ProgressSpinner: $T,
|
|
ResetWrapper: UT,
|
|
ScrollArea: ir,
|
|
Separator: yt,
|
|
Spaced: pt,
|
|
Span: GT,
|
|
StorybookIcon: qT,
|
|
StorybookLogo: sr,
|
|
SyntaxHighlighter: YT,
|
|
TT: QT,
|
|
TabBar: ar,
|
|
TabButton: lr,
|
|
TabWrapper: XT,
|
|
Table: ZT,
|
|
Tabs: Oa,
|
|
TabsState: JT,
|
|
TooltipLinkList: ot,
|
|
TooltipMessage: eC,
|
|
TooltipNote: rt,
|
|
UL: tC,
|
|
WithTooltip: ve,
|
|
WithTooltipPure: oC,
|
|
Zoom: Pa,
|
|
codeCommon: rC,
|
|
components: nC,
|
|
createCopyToClipboardFunction: iC,
|
|
getStoryHref: to,
|
|
interleaveSeparators: sC,
|
|
nameSpaceClassNames: aC,
|
|
resetComponents: lC,
|
|
withReset: uC,
|
|
} = __STORYBOOK_COMPONENTS__;
|
|
|
|
// src/toolbar/utils/normalize-toolbar-arg-type.ts
|
|
var ay = {
|
|
type: "item",
|
|
value: "",
|
|
},
|
|
Aa = /* @__PURE__ */ a(
|
|
(e, t) => ({
|
|
...t,
|
|
name: t.name || e,
|
|
description: t.description || e,
|
|
toolbar: {
|
|
...t.toolbar,
|
|
items: t.toolbar.items.map((o) => {
|
|
let i = typeof o == "string" ? { value: o, title: o } : o;
|
|
return (
|
|
i.type === "reset" &&
|
|
t.toolbar.icon &&
|
|
((i.icon = t.toolbar.icon), (i.hideIcon = !0)),
|
|
{ ...ay, ...i }
|
|
);
|
|
}),
|
|
},
|
|
}),
|
|
"normalizeArgType",
|
|
);
|
|
|
|
// src/toolbar/utils/create-cycle-value-array.ts
|
|
var ly = ["reset"],
|
|
Da = /* @__PURE__ */ a(
|
|
(e) => e.filter((o) => !ly.includes(o.type)).map((o) => o.value),
|
|
"createCycleValueArray",
|
|
);
|
|
|
|
// src/toolbar/constants.ts
|
|
var bt = "toolbar";
|
|
|
|
// src/toolbar/utils/register-shortcuts.ts
|
|
var Ma = /* @__PURE__ */ a(async (e, t, o) => {
|
|
(o &&
|
|
o.next &&
|
|
(await e.setAddonShortcut(bt, {
|
|
label: o.next.label,
|
|
defaultShortcut: o.next.keys,
|
|
actionName: `${t}:next`,
|
|
action: o.next.action,
|
|
})),
|
|
o &&
|
|
o.previous &&
|
|
(await e.setAddonShortcut(bt, {
|
|
label: o.previous.label,
|
|
defaultShortcut: o.previous.keys,
|
|
actionName: `${t}:previous`,
|
|
action: o.previous.action,
|
|
})),
|
|
o &&
|
|
o.reset &&
|
|
(await e.setAddonShortcut(bt, {
|
|
label: o.reset.label,
|
|
defaultShortcut: o.reset.keys,
|
|
actionName: `${t}:reset`,
|
|
action: o.reset.action,
|
|
})));
|
|
}, "registerShortcuts");
|
|
|
|
// src/toolbar/hoc/withKeyboardCycle.tsx
|
|
var La = /* @__PURE__ */ a(
|
|
(e) =>
|
|
/* @__PURE__ */ a((o) => {
|
|
let {
|
|
id: i,
|
|
toolbar: { items: r, shortcuts: n },
|
|
} = o,
|
|
l = oe(),
|
|
[u, c] = tr(),
|
|
d = U([]),
|
|
p = u[i],
|
|
f = A(() => {
|
|
c({ [i]: "" });
|
|
}, [c]),
|
|
h = A(() => {
|
|
let m = d.current,
|
|
b = m.indexOf(p),
|
|
E = b === m.length - 1 ? 0 : b + 1,
|
|
g = d.current[E];
|
|
c({ [i]: g });
|
|
}, [d, p, c]),
|
|
y = A(() => {
|
|
let m = d.current,
|
|
b = m.indexOf(p),
|
|
x = b > -1 ? b : 0,
|
|
g = x === 0 ? m.length - 1 : x - 1,
|
|
v = d.current[g];
|
|
c({ [i]: v });
|
|
}, [d, p, c]);
|
|
return (
|
|
H(() => {
|
|
n &&
|
|
Ma(l, i, {
|
|
next: { ...n.next, action: h },
|
|
previous: { ...n.previous, action: y },
|
|
reset: { ...n.reset, action: f },
|
|
});
|
|
}, [l, i, n, h, y, f]),
|
|
H(() => {
|
|
d.current = Da(r);
|
|
}, []),
|
|
/* @__PURE__ */ s.createElement(e, { cycleValues: d.current, ...o })
|
|
);
|
|
}, "WithKeyboardCycle"),
|
|
"withKeyboardCycle",
|
|
);
|
|
|
|
// src/toolbar/utils/get-selected.ts
|
|
var Na = /* @__PURE__ */ a(
|
|
({ currentValue: e, items: t }) =>
|
|
e != null && t.find((i) => i.value === e && i.type !== "reset"),
|
|
"getSelectedI\
|
|
tem",
|
|
),
|
|
Fa = /* @__PURE__ */ a(({ currentValue: e, items: t }) => {
|
|
let o = Na({ currentValue: e, items: t });
|
|
if (o) return o.icon;
|
|
}, "getSelectedIcon"),
|
|
Ra = /* @__PURE__ */ a(({ currentValue: e, items: t }) => {
|
|
let o = Na({ currentValue: e, items: t });
|
|
if (o) return o.title;
|
|
}, "getSelectedTitle");
|
|
|
|
// global-externals:storybook/internal/client-logger
|
|
var _C = __STORYBOOK_CLIENT_LOGGER__,
|
|
{
|
|
deprecate: Ba,
|
|
logger: ur,
|
|
once: Ha,
|
|
pretty: kC,
|
|
} = __STORYBOOK_CLIENT_LOGGER__;
|
|
|
|
// src/components/components/icon/icon.tsx
|
|
var uy = oi,
|
|
cy = I.svg`
|
|
display: inline-block;
|
|
shape-rendering: inherit;
|
|
vertical-align: middle;
|
|
fill: currentColor;
|
|
path {
|
|
fill: currentColor;
|
|
}
|
|
`,
|
|
cr = /* @__PURE__ */ a(
|
|
({ icon: e, useSymbol: t, __suppressDeprecationWarning: o = !1, ...i }) => {
|
|
o ||
|
|
Ba(
|
|
`Use of the deprecated Icons ${`(${e})` || ""} component detected. Please use the @storybook/icons component directly. For more informat\
|
|
ions, see the migration notes at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#icons-is-deprecated`,
|
|
);
|
|
let r = ii[e] || null;
|
|
if (!r)
|
|
return (
|
|
ur.warn(
|
|
`Use of an unknown prop ${`(${e})` || ""} in the Icons component. The Icons component is deprecated. Please use the @storybook/icons c\
|
|
omponent directly. For more informations, see the migration notes at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#icons-i\
|
|
s-deprecated`,
|
|
),
|
|
null
|
|
);
|
|
let n = uy[r];
|
|
return /* @__PURE__ */ s.createElement(n, { ...i });
|
|
},
|
|
"Icons",
|
|
),
|
|
MC = _t(
|
|
/* @__PURE__ */ a(function ({ icons: t = Object.keys(ii) }) {
|
|
return /* @__PURE__ */ s.createElement(
|
|
cy,
|
|
{
|
|
viewBox: "0 0 14 14",
|
|
style: { position: "absolute", width: 0, height: 0 },
|
|
"data-chromatic": "ignore",
|
|
},
|
|
t.map((o) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
"symbol",
|
|
{ id: `icon--${o}`, key: o },
|
|
ii[o],
|
|
),
|
|
),
|
|
);
|
|
}, "Symbols"),
|
|
),
|
|
ii = {
|
|
user: "UserIcon",
|
|
useralt: "UserAltIcon",
|
|
useradd: "UserAddIcon",
|
|
users: "UsersIcon",
|
|
profile: "ProfileIcon",
|
|
facehappy: "FaceHappyIcon",
|
|
faceneutral: "FaceNeutralIcon",
|
|
facesad: "FaceSadIcon",
|
|
accessibility: "AccessibilityIcon",
|
|
accessibilityalt: "AccessibilityAltIcon",
|
|
arrowup: "ChevronUpIcon",
|
|
arrowdown: "ChevronDownIcon",
|
|
arrowleft: "ChevronLeftIcon",
|
|
arrowright: "ChevronRightIcon",
|
|
arrowupalt: "ArrowUpIcon",
|
|
arrowdownalt: "ArrowDownIcon",
|
|
arrowleftalt: "ArrowLeftIcon",
|
|
arrowrightalt: "ArrowRightIcon",
|
|
expandalt: "ExpandAltIcon",
|
|
collapse: "CollapseIcon",
|
|
expand: "ExpandIcon",
|
|
unfold: "UnfoldIcon",
|
|
transfer: "TransferIcon",
|
|
redirect: "RedirectIcon",
|
|
undo: "UndoIcon",
|
|
reply: "ReplyIcon",
|
|
sync: "SyncIcon",
|
|
upload: "UploadIcon",
|
|
download: "DownloadIcon",
|
|
back: "BackIcon",
|
|
proceed: "ProceedIcon",
|
|
refresh: "RefreshIcon",
|
|
globe: "GlobeIcon",
|
|
compass: "CompassIcon",
|
|
location: "LocationIcon",
|
|
pin: "PinIcon",
|
|
time: "TimeIcon",
|
|
dashboard: "DashboardIcon",
|
|
timer: "TimerIcon",
|
|
home: "HomeIcon",
|
|
admin: "AdminIcon",
|
|
info: "InfoIcon",
|
|
question: "QuestionIcon",
|
|
support: "SupportIcon",
|
|
alert: "AlertIcon",
|
|
email: "EmailIcon",
|
|
phone: "PhoneIcon",
|
|
link: "LinkIcon",
|
|
unlink: "LinkBrokenIcon",
|
|
bell: "BellIcon",
|
|
rss: "RSSIcon",
|
|
sharealt: "ShareAltIcon",
|
|
share: "ShareIcon",
|
|
circle: "CircleIcon",
|
|
circlehollow: "CircleHollowIcon",
|
|
bookmarkhollow: "BookmarkHollowIcon",
|
|
bookmark: "BookmarkIcon",
|
|
hearthollow: "HeartHollowIcon",
|
|
heart: "HeartIcon",
|
|
starhollow: "StarHollowIcon",
|
|
star: "StarIcon",
|
|
certificate: "CertificateIcon",
|
|
verified: "VerifiedIcon",
|
|
thumbsup: "ThumbsUpIcon",
|
|
shield: "ShieldIcon",
|
|
basket: "BasketIcon",
|
|
beaker: "BeakerIcon",
|
|
hourglass: "HourglassIcon",
|
|
flag: "FlagIcon",
|
|
cloudhollow: "CloudHollowIcon",
|
|
edit: "EditIcon",
|
|
cog: "CogIcon",
|
|
nut: "NutIcon",
|
|
wrench: "WrenchIcon",
|
|
ellipsis: "EllipsisIcon",
|
|
check: "CheckIcon",
|
|
form: "FormIcon",
|
|
batchdeny: "BatchDenyIcon",
|
|
batchaccept: "BatchAcceptIcon",
|
|
controls: "ControlsIcon",
|
|
plus: "PlusIcon",
|
|
closeAlt: "CloseAltIcon",
|
|
cross: "CrossIcon",
|
|
trash: "TrashIcon",
|
|
pinalt: "PinAltIcon",
|
|
unpin: "UnpinIcon",
|
|
add: "AddIcon",
|
|
subtract: "SubtractIcon",
|
|
close: "CloseIcon",
|
|
delete: "DeleteIcon",
|
|
passed: "PassedIcon",
|
|
changed: "ChangedIcon",
|
|
failed: "FailedIcon",
|
|
clear: "ClearIcon",
|
|
comment: "CommentIcon",
|
|
commentadd: "CommentAddIcon",
|
|
requestchange: "RequestChangeIcon",
|
|
comments: "CommentsIcon",
|
|
lock: "LockIcon",
|
|
unlock: "UnlockIcon",
|
|
key: "KeyIcon",
|
|
outbox: "OutboxIcon",
|
|
credit: "CreditIcon",
|
|
button: "ButtonIcon",
|
|
type: "TypeIcon",
|
|
pointerdefault: "PointerDefaultIcon",
|
|
pointerhand: "PointerHandIcon",
|
|
browser: "BrowserIcon",
|
|
tablet: "TabletIcon",
|
|
mobile: "MobileIcon",
|
|
watch: "WatchIcon",
|
|
sidebar: "SidebarIcon",
|
|
sidebaralt: "SidebarAltIcon",
|
|
sidebaralttoggle: "SidebarAltToggleIcon",
|
|
sidebartoggle: "SidebarToggleIcon",
|
|
bottombar: "BottomBarIcon",
|
|
bottombartoggle: "BottomBarToggleIcon",
|
|
cpu: "CPUIcon",
|
|
database: "DatabaseIcon",
|
|
memory: "MemoryIcon",
|
|
structure: "StructureIcon",
|
|
box: "BoxIcon",
|
|
power: "PowerIcon",
|
|
photo: "PhotoIcon",
|
|
component: "ComponentIcon",
|
|
grid: "GridIcon",
|
|
outline: "OutlineIcon",
|
|
photodrag: "PhotoDragIcon",
|
|
search: "SearchIcon",
|
|
zoom: "ZoomIcon",
|
|
zoomout: "ZoomOutIcon",
|
|
zoomreset: "ZoomResetIcon",
|
|
eye: "EyeIcon",
|
|
eyeclose: "EyeCloseIcon",
|
|
lightning: "LightningIcon",
|
|
lightningoff: "LightningOffIcon",
|
|
contrast: "ContrastIcon",
|
|
switchalt: "SwitchAltIcon",
|
|
mirror: "MirrorIcon",
|
|
grow: "GrowIcon",
|
|
paintbrush: "PaintBrushIcon",
|
|
ruler: "RulerIcon",
|
|
stop: "StopIcon",
|
|
camera: "CameraIcon",
|
|
video: "VideoIcon",
|
|
speaker: "SpeakerIcon",
|
|
play: "PlayIcon",
|
|
playback: "PlayBackIcon",
|
|
playnext: "PlayNextIcon",
|
|
rewind: "RewindIcon",
|
|
fastforward: "FastForwardIcon",
|
|
stopalt: "StopAltIcon",
|
|
sidebyside: "SideBySideIcon",
|
|
stacked: "StackedIcon",
|
|
sun: "SunIcon",
|
|
moon: "MoonIcon",
|
|
book: "BookIcon",
|
|
document: "DocumentIcon",
|
|
copy: "CopyIcon",
|
|
category: "CategoryIcon",
|
|
folder: "FolderIcon",
|
|
print: "PrintIcon",
|
|
graphline: "GraphLineIcon",
|
|
calendar: "CalendarIcon",
|
|
graphbar: "GraphBarIcon",
|
|
menu: "MenuIcon",
|
|
menualt: "MenuIcon",
|
|
filter: "FilterIcon",
|
|
docchart: "DocChartIcon",
|
|
doclist: "DocListIcon",
|
|
markup: "MarkupIcon",
|
|
bold: "BoldIcon",
|
|
paperclip: "PaperClipIcon",
|
|
listordered: "ListOrderedIcon",
|
|
listunordered: "ListUnorderedIcon",
|
|
paragraph: "ParagraphIcon",
|
|
markdown: "MarkdownIcon",
|
|
repository: "RepoIcon",
|
|
commit: "CommitIcon",
|
|
branch: "BranchIcon",
|
|
pullrequest: "PullRequestIcon",
|
|
merge: "MergeIcon",
|
|
apple: "AppleIcon",
|
|
linux: "LinuxIcon",
|
|
ubuntu: "UbuntuIcon",
|
|
windows: "WindowsIcon",
|
|
storybook: "StorybookIcon",
|
|
azuredevops: "AzureDevOpsIcon",
|
|
bitbucket: "BitbucketIcon",
|
|
chrome: "ChromeIcon",
|
|
chromatic: "ChromaticIcon",
|
|
componentdriven: "ComponentDrivenIcon",
|
|
discord: "DiscordIcon",
|
|
facebook: "FacebookIcon",
|
|
figma: "FigmaIcon",
|
|
gdrive: "GDriveIcon",
|
|
github: "GithubIcon",
|
|
gitlab: "GitlabIcon",
|
|
google: "GoogleIcon",
|
|
graphql: "GraphqlIcon",
|
|
medium: "MediumIcon",
|
|
redux: "ReduxIcon",
|
|
twitter: "TwitterIcon",
|
|
youtube: "YoutubeIcon",
|
|
vscode: "VSCodeIcon",
|
|
};
|
|
|
|
// src/toolbar/components/ToolbarMenuButton.tsx
|
|
var za = /* @__PURE__ */ a(
|
|
({ active: e, disabled: t, title: o, icon: i, description: r, onClick: n }) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{
|
|
active: e,
|
|
title: r,
|
|
disabled: t,
|
|
onClick: t ? () => {} : n,
|
|
},
|
|
i &&
|
|
/* @__PURE__ */ s.createElement(cr, {
|
|
icon: i,
|
|
__suppressDeprecationWarning: !0,
|
|
}),
|
|
o ? `\xA0${o}` : null,
|
|
),
|
|
"ToolbarMenuButton",
|
|
);
|
|
|
|
// src/toolbar/components/ToolbarMenuListItem.tsx
|
|
var Wa = /* @__PURE__ */ a(
|
|
({
|
|
right: e,
|
|
title: t,
|
|
value: o,
|
|
icon: i,
|
|
hideIcon: r,
|
|
onClick: n,
|
|
disabled: l,
|
|
currentValue: u,
|
|
}) => {
|
|
let c =
|
|
i &&
|
|
/* @__PURE__ */ s.createElement(cr, {
|
|
style: { opacity: 1 },
|
|
icon: i,
|
|
__suppressDeprecationWarning: !0,
|
|
}),
|
|
d = {
|
|
id: o ?? "_reset",
|
|
active: u === o,
|
|
right: e,
|
|
title: t,
|
|
disabled: l,
|
|
onClick: n,
|
|
};
|
|
return (i && !r && (d.icon = c), d);
|
|
},
|
|
"ToolbarMenuListItem",
|
|
);
|
|
|
|
// src/toolbar/components/ToolbarMenuList.tsx
|
|
var Va = La(
|
|
({
|
|
id: e,
|
|
name: t,
|
|
description: o,
|
|
toolbar: {
|
|
icon: i,
|
|
items: r,
|
|
title: n,
|
|
preventDynamicIcon: l,
|
|
dynamicTitle: u,
|
|
},
|
|
}) => {
|
|
let [c, d, p] = tr(),
|
|
[f, h] = K(!1),
|
|
y = c[e],
|
|
m = !!y,
|
|
b = e in p,
|
|
x = i,
|
|
E = n;
|
|
(l || (x = Fa({ currentValue: y, items: r }) || x),
|
|
u && (E = Ra({ currentValue: y, items: r }) || E),
|
|
!E &&
|
|
!x &&
|
|
console.warn(`Toolbar \
|
|
'${t}' has no title or icon`));
|
|
let g = A(
|
|
(v) => {
|
|
d({ [e]: v });
|
|
},
|
|
[e, d],
|
|
);
|
|
return /* @__PURE__ */ s.createElement(
|
|
ve,
|
|
{
|
|
placement: "top",
|
|
tooltip: ({ onHide: v }) => {
|
|
let S = r
|
|
.filter(({ type: w }) => {
|
|
let k = !0;
|
|
return (w === "reset" && !y && (k = !1), k);
|
|
})
|
|
.map((w) =>
|
|
Wa({
|
|
...w,
|
|
currentValue: y,
|
|
disabled: b,
|
|
onClick: /* @__PURE__ */ a(() => {
|
|
(g(w.value), v());
|
|
}, "onClick"),
|
|
}),
|
|
);
|
|
return /* @__PURE__ */ s.createElement(ot, { links: S });
|
|
},
|
|
closeOnOutsideClick: !0,
|
|
onVisibleChange: h,
|
|
},
|
|
/* @__PURE__ */ s.createElement(za, {
|
|
active: f || m,
|
|
disabled: b,
|
|
description: o || "",
|
|
icon: x,
|
|
title: E || "",
|
|
}),
|
|
);
|
|
},
|
|
);
|
|
|
|
// src/toolbar/components/ToolbarManager.tsx
|
|
var ja = /* @__PURE__ */ a(() => {
|
|
let e = Sa(),
|
|
t = Object.keys(e).filter((o) => !!e[o].toolbar);
|
|
return t.length
|
|
? /* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(yt, null),
|
|
t.map((o) => {
|
|
let i = Aa(o, e[o]);
|
|
return /* @__PURE__ */ s.createElement(Va, { key: o, id: o, ...i });
|
|
}),
|
|
)
|
|
: null;
|
|
}, "ToolbarManager");
|
|
|
|
// global-externals:react-dom/client
|
|
var a_ = __REACT_DOM_CLIENT__,
|
|
{ createRoot: Ka, hydrateRoot: l_ } = __REACT_DOM_CLIENT__;
|
|
|
|
// global-externals:storybook/internal/manager-errors
|
|
var c_ = __STORYBOOK_CORE_EVENTS_MANAGER_ERRORS__,
|
|
{
|
|
Category: p_,
|
|
ProviderDoesNotExtendBaseProviderError: $a,
|
|
StatusTypeIdMismatchError: d_,
|
|
UncaughtManagerError: f_,
|
|
} = __STORYBOOK_CORE_EVENTS_MANAGER_ERRORS__;
|
|
|
|
// global-externals:storybook/internal/router
|
|
var h_ = __STORYBOOK_ROUTER__,
|
|
{
|
|
BaseLocationProvider: g_,
|
|
DEEPLY_EQUAL: y_,
|
|
Link: pr,
|
|
Location: dr,
|
|
LocationProvider: Ua,
|
|
Match: Ga,
|
|
Route: To,
|
|
buildArgsParam: b_,
|
|
deepDiff: v_,
|
|
getMatch: x_,
|
|
parsePath: I_,
|
|
queryFromLocation: S_,
|
|
stringifyQuery: w_,
|
|
useNavigate: qa,
|
|
} = __STORYBOOK_ROUTER__;
|
|
|
|
// ../node_modules/react-helmet-async/lib/index.module.js
|
|
var ne = Ve(si()),
|
|
ml = Ve(rl()),
|
|
pi = Ve(il()),
|
|
hl = Ve(al());
|
|
function xe() {
|
|
return (
|
|
(xe =
|
|
Object.assign ||
|
|
function (e) {
|
|
for (var t = 1; t < arguments.length; t++) {
|
|
var o = arguments[t];
|
|
for (var i in o)
|
|
Object.prototype.hasOwnProperty.call(o, i) && (e[i] = o[i]);
|
|
}
|
|
return e;
|
|
}),
|
|
xe.apply(this, arguments)
|
|
);
|
|
}
|
|
a(xe, "a");
|
|
function hi(e, t) {
|
|
((e.prototype = Object.create(t.prototype)),
|
|
(e.prototype.constructor = e),
|
|
di(e, t));
|
|
}
|
|
a(hi, "s");
|
|
function di(e, t) {
|
|
return (
|
|
(di =
|
|
Object.setPrototypeOf ||
|
|
function (o, i) {
|
|
return ((o.__proto__ = i), o);
|
|
}),
|
|
di(e, t)
|
|
);
|
|
}
|
|
a(di, "c");
|
|
function ll(e, t) {
|
|
if (e == null) return {};
|
|
var o,
|
|
i,
|
|
r = {},
|
|
n = Object.keys(e);
|
|
for (i = 0; i < n.length; i++) t.indexOf((o = n[i])) >= 0 || (r[o] = e[o]);
|
|
return r;
|
|
}
|
|
a(ll, "u");
|
|
var X = {
|
|
BASE: "base",
|
|
BODY: "body",
|
|
HEAD: "head",
|
|
HTML: "html",
|
|
LINK: "link",
|
|
META: "meta",
|
|
NOSCRIPT: "noscript",
|
|
SCRIPT: "script",
|
|
STYLE:
|
|
"\
|
|
style",
|
|
TITLE: "title",
|
|
FRAGMENT: "Symbol(react.fragment)",
|
|
},
|
|
by = { rel: ["amphtml", "canonical", "alternate"] },
|
|
vy = {
|
|
type: [
|
|
"applicatio\
|
|
n/ld+json",
|
|
],
|
|
},
|
|
xy = {
|
|
charset: "",
|
|
name: ["robots", "description"],
|
|
property: [
|
|
"og:type",
|
|
"og:title",
|
|
"og:url",
|
|
"og:image",
|
|
"og:image:alt",
|
|
"\
|
|
og:description",
|
|
"twitter:url",
|
|
"twitter:title",
|
|
"twitter:description",
|
|
"twitter:image",
|
|
"twitter:image:alt",
|
|
"twitter:card",
|
|
"twitter:site",
|
|
],
|
|
},
|
|
ul = Object.keys(X).map(function (e) {
|
|
return X[e];
|
|
}),
|
|
gr = {
|
|
accesskey: "accessKey",
|
|
charset: "charSet",
|
|
class: "className",
|
|
contenteditable: "contentEditable",
|
|
contextmenu: "contextMenu",
|
|
"\
|
|
http-equiv": "httpEquiv",
|
|
itemprop: "itemProp",
|
|
tabindex: "tabIndex",
|
|
},
|
|
Iy = Object.keys(gr).reduce(function (e, t) {
|
|
return ((e[gr[t]] = t), e);
|
|
}, {}),
|
|
ro = /* @__PURE__ */ a(function (e, t) {
|
|
for (var o = e.length - 1; o >= 0; o -= 1) {
|
|
var i = e[o];
|
|
if (Object.prototype.hasOwnProperty.call(i, t)) return i[t];
|
|
}
|
|
return null;
|
|
}, "T"),
|
|
Sy = /* @__PURE__ */ a(function (e) {
|
|
var t = ro(e, X.TITLE),
|
|
o = ro(e, "titleTemplate");
|
|
if ((Array.isArray(t) && (t = t.join("")), o && t))
|
|
return o.replace(/%s/g, function () {
|
|
return t;
|
|
});
|
|
var i = ro(e, "defaultTitle");
|
|
return t || i || void 0;
|
|
}, "g"),
|
|
wy = /* @__PURE__ */ a(function (e) {
|
|
return ro(e, "onChangeClientState") || function () {};
|
|
}, "b"),
|
|
ai = /* @__PURE__ */ a(function (e, t) {
|
|
return t
|
|
.filter(function (o) {
|
|
return o[e] !== void 0;
|
|
})
|
|
.map(function (o) {
|
|
return o[e];
|
|
})
|
|
.reduce(function (o, i) {
|
|
return xe({}, o, i);
|
|
}, {});
|
|
}, "v"),
|
|
Ey = /* @__PURE__ */ a(function (e, t) {
|
|
return t
|
|
.filter(function (o) {
|
|
return o[X.BASE] !== void 0;
|
|
})
|
|
.map(function (o) {
|
|
return o[X.BASE];
|
|
})
|
|
.reverse()
|
|
.reduce(function (o, i) {
|
|
if (!o.length)
|
|
for (var r = Object.keys(i), n = 0; n < r.length; n += 1) {
|
|
var l = r[n].toLowerCase();
|
|
if (e.indexOf(l) !== -1 && i[l]) return o.concat(i);
|
|
}
|
|
return o;
|
|
}, []);
|
|
}, "A"),
|
|
Co = /* @__PURE__ */ a(function (e, t, o) {
|
|
var i = {};
|
|
return o
|
|
.filter(function (r) {
|
|
return (
|
|
!!Array.isArray(r[e]) ||
|
|
(r[e] !== void 0 &&
|
|
console &&
|
|
typeof console.warn == "function" &&
|
|
console.warn(
|
|
"Helmet: " +
|
|
e +
|
|
' shou\
|
|
ld be of type "Array". Instead found type "' +
|
|
typeof r[e] +
|
|
'"',
|
|
),
|
|
!1)
|
|
);
|
|
})
|
|
.map(function (r) {
|
|
return r[e];
|
|
})
|
|
.reverse()
|
|
.reduce(function (r, n) {
|
|
var l = {};
|
|
n.filter(function (f) {
|
|
for (var h, y = Object.keys(f), m = 0; m < y.length; m += 1) {
|
|
var b = y[m],
|
|
x = b.toLowerCase();
|
|
(t.indexOf(x) === -1 ||
|
|
(h === "rel" && f[h].toLowerCase() === "canonical") ||
|
|
(x === "rel" && f[x].toLowerCase() === "stylesheet") ||
|
|
(h = x),
|
|
t.indexOf(b) === -1 ||
|
|
(b !== "innerHTML" && b !== "cssText" && b !== "itemprop") ||
|
|
(h = b));
|
|
}
|
|
if (!h || !f[h]) return !1;
|
|
var E = f[h].toLowerCase();
|
|
return (
|
|
i[h] || (i[h] = {}),
|
|
l[h] || (l[h] = {}),
|
|
!i[h][E] && ((l[h][E] = !0), !0)
|
|
);
|
|
})
|
|
.reverse()
|
|
.forEach(function (f) {
|
|
return r.push(f);
|
|
});
|
|
for (var u = Object.keys(l), c = 0; c < u.length; c += 1) {
|
|
var d = u[c],
|
|
p = xe({}, i[d], l[d]);
|
|
i[d] = p;
|
|
}
|
|
return r;
|
|
}, [])
|
|
.reverse();
|
|
}, "C"),
|
|
Ty = /* @__PURE__ */ a(function (e, t) {
|
|
if (Array.isArray(e) && e.length) {
|
|
for (var o = 0; o < e.length; o += 1) if (e[o][t]) return !0;
|
|
}
|
|
return !1;
|
|
}, "O"),
|
|
gl = /* @__PURE__ */ a(function (e) {
|
|
return Array.isArray(e) ? e.join("") : e;
|
|
}, "S"),
|
|
li = /* @__PURE__ */ a(function (e, t) {
|
|
return Array.isArray(e)
|
|
? e.reduce(
|
|
function (o, i) {
|
|
return (
|
|
(function (r, n) {
|
|
for (var l = Object.keys(r), u = 0; u < l.length; u += 1)
|
|
if (n[l[u]] && n[l[u]].includes(r[l[u]])) return !0;
|
|
return !1;
|
|
})(i, t)
|
|
? o.priority.push(i)
|
|
: o.default.push(i),
|
|
o
|
|
);
|
|
},
|
|
{ priority: [], default: [] },
|
|
)
|
|
: { default: e };
|
|
}, "E"),
|
|
cl = /* @__PURE__ */ a(function (e, t) {
|
|
var o;
|
|
return xe({}, e, (((o = {})[t] = void 0), o));
|
|
}, "I"),
|
|
Cy = [X.NOSCRIPT, X.SCRIPT, X.STYLE],
|
|
ui = /* @__PURE__ */ a(function (e, t) {
|
|
return (
|
|
t === void 0 && (t = !0),
|
|
t === !1
|
|
? String(e)
|
|
: String(e)
|
|
.replace(/&/g, "&")
|
|
.replace(/</g, "<")
|
|
.replace(/>/g, ">")
|
|
.replace(/"/g, """)
|
|
.replace(/'/g, "'")
|
|
);
|
|
}, "w"),
|
|
pl = /* @__PURE__ */ a(function (e) {
|
|
return Object.keys(e).reduce(function (t, o) {
|
|
var i = e[o] !== void 0 ? o + '="' + e[o] + '"' : "" + o;
|
|
return t ? t + " " + i : i;
|
|
}, "");
|
|
}, "x"),
|
|
dl = /* @__PURE__ */ a(function (e, t) {
|
|
return (
|
|
t === void 0 && (t = {}),
|
|
Object.keys(e).reduce(function (o, i) {
|
|
return ((o[gr[i] || i] = e[i]), o);
|
|
}, t)
|
|
);
|
|
}, "L"),
|
|
hr = /* @__PURE__ */ a(function (e, t) {
|
|
return t.map(function (o, i) {
|
|
var r,
|
|
n = (((r = { key: i })["data-rh"] = !0), r);
|
|
return (
|
|
Object.keys(o).forEach(function (l) {
|
|
var u = gr[l] || l;
|
|
u === "innerHTML" || u === "cssText"
|
|
? (n.dangerouslySetInnerHTML = { __html: o.innerHTML || o.cssText })
|
|
: (n[u] = o[l]);
|
|
}),
|
|
s.createElement(e, n)
|
|
);
|
|
});
|
|
}, "j"),
|
|
Ke = /* @__PURE__ */ a(function (e, t, o) {
|
|
switch (e) {
|
|
case X.TITLE:
|
|
return {
|
|
toComponent: /* @__PURE__ */ a(function () {
|
|
return (
|
|
(r = t.titleAttributes),
|
|
((n = { key: (i = t.title) })["data-rh"] = !0),
|
|
(l = dl(r, n)),
|
|
[s.createElement(X.TITLE, l, i)]
|
|
);
|
|
var i, r, n, l;
|
|
}, "toComponent"),
|
|
toString: /* @__PURE__ */ a(function () {
|
|
return (function (i, r, n, l) {
|
|
var u = pl(n),
|
|
c = gl(r);
|
|
return u
|
|
? "<" +
|
|
i +
|
|
' data-rh="true" ' +
|
|
u +
|
|
">" +
|
|
ui(c, l) +
|
|
"</" +
|
|
i +
|
|
">"
|
|
: "<" + i + ' data-rh="true">' + ui(c, l) + "</" + i + ">";
|
|
})(e, t.title, t.titleAttributes, o);
|
|
}, "toString"),
|
|
};
|
|
case "bodyAttributes":
|
|
case "htmlAttributes":
|
|
return {
|
|
toComponent: /* @__PURE__ */ a(function () {
|
|
return dl(t);
|
|
}, "toComponent"),
|
|
toString: /* @__PURE__ */ a(function () {
|
|
return pl(t);
|
|
}, "toString"),
|
|
};
|
|
default:
|
|
return {
|
|
toComponent: /* @__PURE__ */ a(function () {
|
|
return hr(e, t);
|
|
}, "toComponent"),
|
|
toString: /* @__PURE__ */ a(function () {
|
|
return (function (i, r, n) {
|
|
return r.reduce(function (l, u) {
|
|
var c = Object.keys(u)
|
|
.filter(function (f) {
|
|
return !(f === "innerHTML" || f === "cssText");
|
|
})
|
|
.reduce(function (f, h) {
|
|
var y =
|
|
u[h] === void 0 ? h : h + '="' + ui(u[h], n) + '"';
|
|
return f ? f + " " + y : y;
|
|
}, ""),
|
|
d = u.innerHTML || u.cssText || "",
|
|
p = Cy.indexOf(i) === -1;
|
|
return (
|
|
l +
|
|
"<" +
|
|
i +
|
|
' data-rh="true" ' +
|
|
c +
|
|
(p ? "/>" : ">" + d + "</" + i + ">")
|
|
);
|
|
}, "");
|
|
})(e, t, o);
|
|
}, "toString"),
|
|
};
|
|
}
|
|
}, "M"),
|
|
fi = /* @__PURE__ */ a(function (e) {
|
|
var t = e.baseTag,
|
|
o = e.bodyAttributes,
|
|
i = e.encode,
|
|
r = e.htmlAttributes,
|
|
n = e.noscriptTags,
|
|
l = e.styleTags,
|
|
u = e.title,
|
|
c = u === void 0 ? "" : u,
|
|
d = e.titleAttributes,
|
|
p = e.linkTags,
|
|
f = e.metaTags,
|
|
h = e.scriptTags,
|
|
y = {
|
|
toComponent: /* @__PURE__ */ a(function () {}, "toComponent"),
|
|
toString: /* @__PURE__ */ a(function () {
|
|
return "";
|
|
}, "toString"),
|
|
};
|
|
if (e.prioritizeSeoTags) {
|
|
var m = (function (b) {
|
|
var x = b.linkTags,
|
|
E = b.scriptTags,
|
|
g = b.encode,
|
|
v = li(b.metaTags, xy),
|
|
S = li(x, by),
|
|
w = li(E, vy);
|
|
return {
|
|
priorityMethods: {
|
|
toComponent: /* @__PURE__ */ a(function () {
|
|
return [].concat(
|
|
hr(X.META, v.priority),
|
|
hr(X.LINK, S.priority),
|
|
hr(X.SCRIPT, w.priority),
|
|
);
|
|
}, "toComponent"),
|
|
toString: /* @__PURE__ */ a(function () {
|
|
return (
|
|
Ke(X.META, v.priority, g) +
|
|
" " +
|
|
Ke(X.LINK, S.priority, g) +
|
|
" " +
|
|
Ke(X.SCRIPT, w.priority, g)
|
|
);
|
|
}, "toString"),
|
|
},
|
|
metaTags: v.default,
|
|
linkTags: S.default,
|
|
scriptTags: w.default,
|
|
};
|
|
})(e);
|
|
((y = m.priorityMethods),
|
|
(p = m.linkTags),
|
|
(f = m.metaTags),
|
|
(h = m.scriptTags));
|
|
}
|
|
return {
|
|
priority: y,
|
|
base: Ke(X.BASE, t, i),
|
|
bodyAttributes: Ke("bodyAttributes", o, i),
|
|
htmlAttributes: Ke("htmlAttributes", r, i),
|
|
link: Ke(X.LINK, p, i),
|
|
meta: Ke(X.META, f, i),
|
|
noscript: Ke(X.NOSCRIPT, n, i),
|
|
script: Ke(X.SCRIPT, h, i),
|
|
style: Ke(X.STYLE, l, i),
|
|
title: Ke(X.TITLE, { title: c, titleAttributes: d }, i),
|
|
};
|
|
}, "k"),
|
|
mr = [],
|
|
mi = /* @__PURE__ */ a(function (e, t) {
|
|
var o = this;
|
|
(t === void 0 && (t = typeof document < "u"),
|
|
(this.instances = []),
|
|
(this.value = {
|
|
setHelmet: /* @__PURE__ */ a(function (i) {
|
|
o.context.helmet = i;
|
|
}, "setHelmet"),
|
|
helmetInstances: {
|
|
get: /* @__PURE__ */ a(function () {
|
|
return o.canUseDOM ? mr : o.instances;
|
|
}, "get"),
|
|
add: /* @__PURE__ */ a(function (i) {
|
|
(o.canUseDOM ? mr : o.instances).push(i);
|
|
}, "add"),
|
|
remove: /* @__PURE__ */ a(function (i) {
|
|
var r = (o.canUseDOM ? mr : o.instances).indexOf(i);
|
|
(o.canUseDOM ? mr : o.instances).splice(r, 1);
|
|
}, "remove"),
|
|
},
|
|
}),
|
|
(this.context = e),
|
|
(this.canUseDOM = t),
|
|
t ||
|
|
(e.helmet = fi({
|
|
baseTag: [],
|
|
bodyAttributes: {},
|
|
encodeSpecialCharacters: !0,
|
|
htmlAttributes: {},
|
|
linkTags: [],
|
|
metaTags: [],
|
|
noscriptTags: [],
|
|
scriptTags: [],
|
|
styleTags: [],
|
|
title: "",
|
|
titleAttributes: {},
|
|
})));
|
|
}, "N"),
|
|
yl = s.createContext({}),
|
|
_y = ne.default.shape({
|
|
setHelmet: ne.default.func,
|
|
helmetInstances: ne.default.shape({
|
|
get: ne.default.func,
|
|
add: ne.default.func,
|
|
remove: ne.default.func,
|
|
}),
|
|
}),
|
|
ky = typeof document < "u",
|
|
vt = /* @__PURE__ */ (function (e) {
|
|
function t(o) {
|
|
var i;
|
|
return (
|
|
((i = e.call(this, o) || this).helmetData = new mi(
|
|
i.props.context,
|
|
t.canUseDOM,
|
|
)),
|
|
i
|
|
);
|
|
}
|
|
return (
|
|
a(t, "r"),
|
|
hi(t, e),
|
|
(t.prototype.render = function () {
|
|
return s.createElement(
|
|
yl.Provider,
|
|
{ value: this.helmetData.value },
|
|
this.props.children,
|
|
);
|
|
}),
|
|
t
|
|
);
|
|
})(Le);
|
|
((vt.canUseDOM = ky),
|
|
(vt.propTypes = {
|
|
context: ne.default.shape({ helmet: ne.default.shape() }),
|
|
children: ne.default.node.isRequired,
|
|
}),
|
|
(vt.defaultProps = { context: {} }),
|
|
(vt.displayName = "HelmetProvider"));
|
|
var oo = /* @__PURE__ */ a(function (e, t) {
|
|
var o,
|
|
i = document.head || document.querySelector(X.HEAD),
|
|
r = i.querySelectorAll(e + "[data-rh]"),
|
|
n = [].slice.call(r),
|
|
l = [];
|
|
return (
|
|
t &&
|
|
t.length &&
|
|
t.forEach(function (u) {
|
|
var c = document.createElement(e);
|
|
for (var d in u)
|
|
Object.prototype.hasOwnProperty.call(u, d) &&
|
|
(d === "innerHTML"
|
|
? (c.innerHTML = u.innerHTML)
|
|
: d === "cssText"
|
|
? c.styleSheet
|
|
? (c.styleSheet.cssText = u.cssText)
|
|
: c.appendChild(document.createTextNode(u.cssText))
|
|
: c.setAttribute(d, u[d] === void 0 ? "" : u[d]));
|
|
(c.setAttribute("data-rh", "true"),
|
|
n.some(function (p, f) {
|
|
return ((o = f), c.isEqualNode(p));
|
|
})
|
|
? n.splice(o, 1)
|
|
: l.push(c));
|
|
}),
|
|
n.forEach(function (u) {
|
|
return u.parentNode.removeChild(u);
|
|
}),
|
|
l.forEach(function (u) {
|
|
return i.appendChild(u);
|
|
}),
|
|
{ oldTags: n, newTags: l }
|
|
);
|
|
}, "Y"),
|
|
ci = /* @__PURE__ */ a(function (e, t) {
|
|
var o = document.getElementsByTagName(e)[0];
|
|
if (o) {
|
|
for (
|
|
var i = o.getAttribute("data-rh"),
|
|
r = i ? i.split(",") : [],
|
|
n = [].concat(r),
|
|
l = Object.keys(t),
|
|
u = 0;
|
|
u < l.length;
|
|
u += 1
|
|
) {
|
|
var c = l[u],
|
|
d = t[c] || "";
|
|
(o.getAttribute(c) !== d && o.setAttribute(c, d),
|
|
r.indexOf(c) === -1 && r.push(c));
|
|
var p = n.indexOf(c);
|
|
p !== -1 && n.splice(p, 1);
|
|
}
|
|
for (var f = n.length - 1; f >= 0; f -= 1) o.removeAttribute(n[f]);
|
|
r.length === n.length
|
|
? o.removeAttribute("data-rh")
|
|
: o.getAttribute("data-rh") !== l.join(",") &&
|
|
o.setAttribute("data-rh", l.join(","));
|
|
}
|
|
}, "B"),
|
|
fl = /* @__PURE__ */ a(function (e, t) {
|
|
var o = e.baseTag,
|
|
i = e.htmlAttributes,
|
|
r = e.linkTags,
|
|
n = e.metaTags,
|
|
l = e.noscriptTags,
|
|
u = e.onChangeClientState,
|
|
c = e.scriptTags,
|
|
d = e.styleTags,
|
|
p = e.title,
|
|
f = e.titleAttributes;
|
|
(ci(X.BODY, e.bodyAttributes),
|
|
ci(X.HTML, i),
|
|
(function (b, x) {
|
|
(b !== void 0 && document.title !== b && (document.title = gl(b)),
|
|
ci(X.TITLE, x));
|
|
})(p, f));
|
|
var h = {
|
|
baseTag: oo(X.BASE, o),
|
|
linkTags: oo(X.LINK, r),
|
|
metaTags: oo(X.META, n),
|
|
noscriptTags: oo(X.NOSCRIPT, l),
|
|
scriptTags: oo(X.SCRIPT, c),
|
|
styleTags: oo(X.STYLE, d),
|
|
},
|
|
y = {},
|
|
m = {};
|
|
(Object.keys(h).forEach(function (b) {
|
|
var x = h[b],
|
|
E = x.newTags,
|
|
g = x.oldTags;
|
|
(E.length && (y[b] = E), g.length && (m[b] = h[b].oldTags));
|
|
}),
|
|
t && t(),
|
|
u(e, y, m));
|
|
}, "K"),
|
|
_o = null,
|
|
yr = /* @__PURE__ */ (function (e) {
|
|
function t() {
|
|
for (var i, r = arguments.length, n = new Array(r), l = 0; l < r; l++)
|
|
n[l] = arguments[l];
|
|
return (
|
|
((i = e.call.apply(e, [this].concat(n)) || this).rendered = !1),
|
|
i
|
|
);
|
|
}
|
|
(a(t, "e"), hi(t, e));
|
|
var o = t.prototype;
|
|
return (
|
|
(o.shouldComponentUpdate = function (i) {
|
|
return !(0, hl.default)(i, this.props);
|
|
}),
|
|
(o.componentDidUpdate = function () {
|
|
this.emitChange();
|
|
}),
|
|
(o.componentWillUnmount = function () {
|
|
(this.props.context.helmetInstances.remove(this), this.emitChange());
|
|
}),
|
|
(o.emitChange = function () {
|
|
var i,
|
|
r,
|
|
n = this.props.context,
|
|
l = n.setHelmet,
|
|
u = null,
|
|
c =
|
|
((i = n.helmetInstances.get().map(function (d) {
|
|
var p = xe({}, d.props);
|
|
return (delete p.context, p);
|
|
})),
|
|
{
|
|
baseTag: Ey(["href"], i),
|
|
bodyAttributes: ai("bodyAttributes", i),
|
|
defer: ro(i, "defer"),
|
|
encode: ro(i, "encodeSpecialCharacters"),
|
|
htmlAttributes: ai("htmlAttributes", i),
|
|
linkTags: Co(X.LINK, ["rel", "href"], i),
|
|
metaTags: Co(
|
|
X.META,
|
|
["name", "charset", "http-equiv", "property", "itemprop"],
|
|
i,
|
|
),
|
|
noscriptTags: Co(X.NOSCRIPT, ["innerHTML"], i),
|
|
onChangeClientState: wy(i),
|
|
scriptTags: Co(X.SCRIPT, ["src", "innerHTML"], i),
|
|
styleTags: Co(X.STYLE, ["cssText"], i),
|
|
title: Sy(i),
|
|
titleAttributes: ai("titleAttributes", i),
|
|
prioritizeSeoTags: Ty(i, "prioritizeSeoTags"),
|
|
});
|
|
(vt.canUseDOM
|
|
? ((r = c),
|
|
_o && cancelAnimationFrame(_o),
|
|
r.defer
|
|
? (_o = requestAnimationFrame(function () {
|
|
fl(r, function () {
|
|
_o = null;
|
|
});
|
|
}))
|
|
: (fl(r), (_o = null)))
|
|
: fi && (u = fi(c)),
|
|
l(u));
|
|
}),
|
|
(o.init = function () {
|
|
this.rendered ||
|
|
((this.rendered = !0),
|
|
this.props.context.helmetInstances.add(this),
|
|
this.emitChange());
|
|
}),
|
|
(o.render = function () {
|
|
return (this.init(), null);
|
|
}),
|
|
t
|
|
);
|
|
})(Le);
|
|
((yr.propTypes = { context: _y.isRequired }),
|
|
(yr.displayName = "HelmetDispatcher"));
|
|
var Oy = ["children"],
|
|
Py = ["children"],
|
|
ko = /* @__PURE__ */ (function (e) {
|
|
function t() {
|
|
return e.apply(this, arguments) || this;
|
|
}
|
|
(a(t, "r"), hi(t, e));
|
|
var o = t.prototype;
|
|
return (
|
|
(o.shouldComponentUpdate = function (i) {
|
|
return !(0, ml.default)(
|
|
cl(this.props, "helmetData"),
|
|
cl(i, "helmetData"),
|
|
);
|
|
}),
|
|
(o.mapNestedChildrenToProps = function (i, r) {
|
|
if (!r) return null;
|
|
switch (i.type) {
|
|
case X.SCRIPT:
|
|
case X.NOSCRIPT:
|
|
return { innerHTML: r };
|
|
case X.STYLE:
|
|
return { cssText: r };
|
|
default:
|
|
throw new Error(
|
|
"<" +
|
|
i.type +
|
|
" /> elements are self-closing and can not contain children. Refer to our API for more information.",
|
|
);
|
|
}
|
|
}),
|
|
(o.flattenArrayTypeChildren = function (i) {
|
|
var r,
|
|
n = i.child,
|
|
l = i.arrayTypeChildren;
|
|
return xe(
|
|
{},
|
|
l,
|
|
(((r = {})[n.type] = [].concat(l[n.type] || [], [
|
|
xe(
|
|
{},
|
|
i.newChildProps,
|
|
this.mapNestedChildrenToProps(n, i.nestedChildren),
|
|
),
|
|
])),
|
|
r),
|
|
);
|
|
}),
|
|
(o.mapObjectTypeChildren = function (i) {
|
|
var r,
|
|
n,
|
|
l = i.child,
|
|
u = i.newProps,
|
|
c = i.newChildProps,
|
|
d = i.nestedChildren;
|
|
switch (l.type) {
|
|
case X.TITLE:
|
|
return xe(
|
|
{},
|
|
u,
|
|
(((r = {})[l.type] = d), (r.titleAttributes = xe({}, c)), r),
|
|
);
|
|
case X.BODY:
|
|
return xe({}, u, { bodyAttributes: xe({}, c) });
|
|
case X.HTML:
|
|
return xe({}, u, { htmlAttributes: xe({}, c) });
|
|
default:
|
|
return xe({}, u, (((n = {})[l.type] = xe({}, c)), n));
|
|
}
|
|
}),
|
|
(o.mapArrayTypeChildrenToProps = function (i, r) {
|
|
var n = xe({}, r);
|
|
return (
|
|
Object.keys(i).forEach(function (l) {
|
|
var u;
|
|
n = xe({}, n, (((u = {})[l] = i[l]), u));
|
|
}),
|
|
n
|
|
);
|
|
}),
|
|
(o.warnOnInvalidChildren = function (i, r) {
|
|
return (
|
|
(0, pi.default)(
|
|
ul.some(function (n) {
|
|
return i.type === n;
|
|
}),
|
|
typeof i.type == "function"
|
|
? "You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to o\
|
|
ur API for more information."
|
|
: "Only elements types " +
|
|
ul.join(", ") +
|
|
" are allowed. Helmet does not support rendering <" +
|
|
i.type +
|
|
"> e\
|
|
lements. Refer to our API for more information.",
|
|
),
|
|
(0, pi.default)(
|
|
!r ||
|
|
typeof r == "string" ||
|
|
(Array.isArray(r) &&
|
|
!r.some(function (n) {
|
|
return typeof n != "string";
|
|
})),
|
|
"Helmet expects a string as a child of <" +
|
|
i.type +
|
|
">. Did you forget to wrap your children in braces? ( <" +
|
|
i.type +
|
|
">{``}</" +
|
|
i.type +
|
|
"> ) Refer to our API for more information.",
|
|
),
|
|
!0
|
|
);
|
|
}),
|
|
(o.mapChildrenToProps = function (i, r) {
|
|
var n = this,
|
|
l = {};
|
|
return (
|
|
s.Children.forEach(i, function (u) {
|
|
if (u && u.props) {
|
|
var c = u.props,
|
|
d = c.children,
|
|
p = ll(c, Oy),
|
|
f = Object.keys(p).reduce(function (y, m) {
|
|
return ((y[Iy[m] || m] = p[m]), y);
|
|
}, {}),
|
|
h = u.type;
|
|
switch (
|
|
(typeof h == "symbol"
|
|
? (h = h.toString())
|
|
: n.warnOnInvalidChildren(u, d),
|
|
h)
|
|
) {
|
|
case X.FRAGMENT:
|
|
r = n.mapChildrenToProps(d, r);
|
|
break;
|
|
case X.LINK:
|
|
case X.META:
|
|
case X.NOSCRIPT:
|
|
case X.SCRIPT:
|
|
case X.STYLE:
|
|
l = n.flattenArrayTypeChildren({
|
|
child: u,
|
|
arrayTypeChildren: l,
|
|
newChildProps: f,
|
|
nestedChildren: d,
|
|
});
|
|
break;
|
|
default:
|
|
r = n.mapObjectTypeChildren({
|
|
child: u,
|
|
newProps: r,
|
|
newChildProps: f,
|
|
nestedChildren: d,
|
|
});
|
|
}
|
|
}
|
|
}),
|
|
this.mapArrayTypeChildrenToProps(l, r)
|
|
);
|
|
}),
|
|
(o.render = function () {
|
|
var i = this.props,
|
|
r = i.children,
|
|
n = ll(i, Py),
|
|
l = xe({}, n),
|
|
u = n.helmetData;
|
|
return (
|
|
r && (l = this.mapChildrenToProps(r, l)),
|
|
!u || u instanceof mi || (u = new mi(u.context, u.instances)),
|
|
u
|
|
? /* @__PURE__ */ s.createElement(
|
|
yr,
|
|
xe({}, l, { context: u.value, helmetData: void 0 }),
|
|
)
|
|
: /* @__PURE__ */ s.createElement(yl.Consumer, null, function (c) {
|
|
return s.createElement(yr, xe({}, l, { context: c }));
|
|
})
|
|
);
|
|
}),
|
|
t
|
|
);
|
|
})(Le);
|
|
((ko.propTypes = {
|
|
base: ne.default.object,
|
|
bodyAttributes: ne.default.object,
|
|
children: ne.default.oneOfType([
|
|
ne.default.arrayOf(ne.default.node),
|
|
ne.default.node,
|
|
]),
|
|
defaultTitle: ne.default.string,
|
|
defer: ne.default.bool,
|
|
encodeSpecialCharacters: ne.default.bool,
|
|
htmlAttributes: ne.default.object,
|
|
link: ne.default.arrayOf(ne.default.object),
|
|
meta: ne.default.arrayOf(ne.default.object),
|
|
noscript: ne.default.arrayOf(ne.default.object),
|
|
onChangeClientState: ne.default.func,
|
|
script: ne.default.arrayOf(ne.default.object),
|
|
style: ne.default.arrayOf(ne.default.object),
|
|
title: ne.default.string,
|
|
titleAttributes: ne.default.object,
|
|
titleTemplate: ne.default.string,
|
|
prioritizeSeoTags: ne.default.bool,
|
|
helmetData: ne.default.object,
|
|
}),
|
|
(ko.defaultProps = {
|
|
defer: !0,
|
|
encodeSpecialCharacters: !0,
|
|
prioritizeSeoTags: !1,
|
|
}),
|
|
(ko.displayName = "Helmet"));
|
|
|
|
// src/manager/constants.ts
|
|
var Qe = "@media (min-width: 600px)";
|
|
|
|
// src/manager/hooks/useMedia.tsx
|
|
function bl(e) {
|
|
let t = /* @__PURE__ */ a(
|
|
(n) => (typeof window < "u" ? window.matchMedia(n).matches : !1),
|
|
"getMatches",
|
|
),
|
|
[o, i] = K(t(e));
|
|
function r() {
|
|
i(t(e));
|
|
}
|
|
return (
|
|
a(r, "handleChange"),
|
|
H(() => {
|
|
let n = window.matchMedia(e);
|
|
return (
|
|
r(),
|
|
n.addEventListener("change", r),
|
|
() => {
|
|
n.removeEventListener("change", r);
|
|
}
|
|
);
|
|
}, [e]),
|
|
o
|
|
);
|
|
}
|
|
a(bl, "useMediaQuery");
|
|
|
|
// src/manager/components/layout/LayoutProvider.tsx
|
|
var vl = Qt({
|
|
isMobileMenuOpen: !1,
|
|
setMobileMenuOpen: /* @__PURE__ */ a(() => {}, "setMobileMenuOpen"),
|
|
isMobileAboutOpen: !1,
|
|
setMobileAboutOpen: /* @__PURE__ */ a(() => {}, "setMobileAboutOpen"),
|
|
isMobilePanelOpen: !1,
|
|
setMobilePanelOpen: /* @__PURE__ */ a(() => {}, "setMobilePanelOpen"),
|
|
isDesktop: !1,
|
|
isMobile: !1,
|
|
}),
|
|
xl = /* @__PURE__ */ a(({ children: e }) => {
|
|
let [t, o] = K(!1),
|
|
[i, r] = K(!1),
|
|
[n, l] = K(!1),
|
|
u = bl(`(min-width: ${600}px)`),
|
|
c = !u,
|
|
d = G(
|
|
() => ({
|
|
isMobileMenuOpen: t,
|
|
setMobileMenuOpen: o,
|
|
isMobileAboutOpen: i,
|
|
setMobileAboutOpen: r,
|
|
isMobilePanelOpen: n,
|
|
setMobilePanelOpen: l,
|
|
isDesktop: u,
|
|
isMobile: c,
|
|
}),
|
|
[t, o, i, r, n, l, u, c],
|
|
);
|
|
return /* @__PURE__ */ s.createElement(vl.Provider, { value: d }, e);
|
|
}, "LayoutProvider"),
|
|
ge = /* @__PURE__ */ a(() => qo(vl), "useLayout");
|
|
|
|
// ../node_modules/@babel/runtime/helpers/esm/extends.js
|
|
function j() {
|
|
return (
|
|
(j = Object.assign
|
|
? Object.assign.bind()
|
|
: function (e) {
|
|
for (var t = 1; t < arguments.length; t++) {
|
|
var o = arguments[t];
|
|
for (var i in o) ({}).hasOwnProperty.call(o, i) && (e[i] = o[i]);
|
|
}
|
|
return e;
|
|
}),
|
|
j.apply(null, arguments)
|
|
);
|
|
}
|
|
a(j, "_extends");
|
|
|
|
// ../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js
|
|
function Il(e) {
|
|
if (e === void 0)
|
|
throw new ReferenceError(
|
|
"this hasn't been initialised - super() hasn't been called",
|
|
);
|
|
return e;
|
|
}
|
|
a(Il, "_assertThisInitialized");
|
|
|
|
// ../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js
|
|
function xt(e, t) {
|
|
return (
|
|
(xt = Object.setPrototypeOf
|
|
? Object.setPrototypeOf.bind()
|
|
: function (o, i) {
|
|
return ((o.__proto__ = i), o);
|
|
}),
|
|
xt(e, t)
|
|
);
|
|
}
|
|
a(xt, "_setPrototypeOf");
|
|
|
|
// ../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js
|
|
function no(e, t) {
|
|
((e.prototype = Object.create(t.prototype)),
|
|
(e.prototype.constructor = e),
|
|
xt(e, t));
|
|
}
|
|
a(no, "_inheritsLoose");
|
|
|
|
// ../node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
|
|
function br(e) {
|
|
return (
|
|
(br = Object.setPrototypeOf
|
|
? Object.getPrototypeOf.bind()
|
|
: function (t) {
|
|
return t.__proto__ || Object.getPrototypeOf(t);
|
|
}),
|
|
br(e)
|
|
);
|
|
}
|
|
a(br, "_getPrototypeOf");
|
|
|
|
// ../node_modules/@babel/runtime/helpers/esm/isNativeFunction.js
|
|
function Sl(e) {
|
|
try {
|
|
return Function.toString.call(e).indexOf("[native code]") !== -1;
|
|
} catch {
|
|
return typeof e == "function";
|
|
}
|
|
}
|
|
a(Sl, "_isNativeFunction");
|
|
|
|
// ../node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js
|
|
function gi() {
|
|
try {
|
|
var e = !Boolean.prototype.valueOf.call(
|
|
Reflect.construct(Boolean, [], function () {}),
|
|
);
|
|
} catch {}
|
|
return (gi = /* @__PURE__ */ a(function () {
|
|
return !!e;
|
|
}, "_isNativeReflectConstruct"))();
|
|
}
|
|
a(gi, "_isNativeReflectConstruct");
|
|
|
|
// ../node_modules/@babel/runtime/helpers/esm/construct.js
|
|
function wl(e, t, o) {
|
|
if (gi()) return Reflect.construct.apply(null, arguments);
|
|
var i = [null];
|
|
i.push.apply(i, t);
|
|
var r = new (e.bind.apply(e, i))();
|
|
return (o && xt(r, o.prototype), r);
|
|
}
|
|
a(wl, "_construct");
|
|
|
|
// ../node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js
|
|
function vr(e) {
|
|
var t = typeof Map == "function" ? /* @__PURE__ */ new Map() : void 0;
|
|
return (
|
|
(vr = /* @__PURE__ */ a(function (i) {
|
|
if (i === null || !Sl(i)) return i;
|
|
if (typeof i != "function")
|
|
throw new TypeError(
|
|
"Super expression must either be null or a function",
|
|
);
|
|
if (t !== void 0) {
|
|
if (t.has(i)) return t.get(i);
|
|
t.set(i, r);
|
|
}
|
|
function r() {
|
|
return wl(i, arguments, br(this).constructor);
|
|
}
|
|
return (
|
|
a(r, "Wrapper"),
|
|
(r.prototype = Object.create(i.prototype, {
|
|
constructor: {
|
|
value: r,
|
|
enumerable: !1,
|
|
writable: !0,
|
|
configurable: !0,
|
|
},
|
|
})),
|
|
xt(r, i)
|
|
);
|
|
}, "_wrapNativeSuper")),
|
|
vr(e)
|
|
);
|
|
}
|
|
a(vr, "_wrapNativeSuper");
|
|
|
|
// ../node_modules/polished/dist/polished.esm.js
|
|
var Fe = /* @__PURE__ */ (function (e) {
|
|
no(t, e);
|
|
function t(o) {
|
|
var i;
|
|
if (1)
|
|
i =
|
|
e.call(
|
|
this,
|
|
"An error occurred. See https://github.com/styled-components/polished/blob/main/src/internalHelpers/errors.md#" +
|
|
o +
|
|
" for more information.",
|
|
) || this;
|
|
else for (var r, n, l; l < r; l++);
|
|
return Il(i);
|
|
}
|
|
return (a(t, "PolishedError"), t);
|
|
})(/* @__PURE__ */ vr(Error));
|
|
function El(e, t) {
|
|
return e.substr(-t.length) === t;
|
|
}
|
|
a(El, "endsWith");
|
|
var Ay = /^([+-]?(?:\d+|\d*\.\d+))([a-z]*|%)$/;
|
|
function Tl(e) {
|
|
if (typeof e != "string") return e;
|
|
var t = e.match(Ay);
|
|
return t ? parseFloat(e) : e;
|
|
}
|
|
a(Tl, "stripUnit");
|
|
var Dy = /* @__PURE__ */ a(function (t) {
|
|
return function (o, i) {
|
|
i === void 0 && (i = "16px");
|
|
var r = o,
|
|
n = i;
|
|
if (typeof o == "string") {
|
|
if (!El(o, "px")) throw new Fe(69, t, o);
|
|
r = Tl(o);
|
|
}
|
|
if (typeof i == "string") {
|
|
if (!El(i, "px")) throw new Fe(70, t, i);
|
|
n = Tl(i);
|
|
}
|
|
if (typeof r == "string") throw new Fe(71, o, t);
|
|
if (typeof n == "string") throw new Fe(72, i, t);
|
|
return "" + r / n + t;
|
|
};
|
|
}, "pxtoFactory"),
|
|
_l = Dy,
|
|
k1 = _l("em");
|
|
var O1 = _l("rem");
|
|
function yi(e) {
|
|
return Math.round(e * 255);
|
|
}
|
|
a(yi, "colorToInt");
|
|
function My(e, t, o) {
|
|
return yi(e) + "," + yi(t) + "," + yi(o);
|
|
}
|
|
a(My, "convertToInt");
|
|
function Oo(e, t, o, i) {
|
|
if ((i === void 0 && (i = My), t === 0)) return i(o, o, o);
|
|
var r = (((e % 360) + 360) % 360) / 60,
|
|
n = (1 - Math.abs(2 * o - 1)) * t,
|
|
l = n * (1 - Math.abs((r % 2) - 1)),
|
|
u = 0,
|
|
c = 0,
|
|
d = 0;
|
|
r >= 0 && r < 1
|
|
? ((u = n), (c = l))
|
|
: r >= 1 && r < 2
|
|
? ((u = l), (c = n))
|
|
: r >= 2 && r < 3
|
|
? ((c = n), (d = l))
|
|
: r >= 3 && r < 4
|
|
? ((c = l), (d = n))
|
|
: r >= 4 && r < 5
|
|
? ((u = l), (d = n))
|
|
: r >= 5 && r < 6 && ((u = n), (d = l));
|
|
var p = o - n / 2,
|
|
f = u + p,
|
|
h = c + p,
|
|
y = d + p;
|
|
return i(f, h, y);
|
|
}
|
|
a(Oo, "hslToRgb");
|
|
var Cl = {
|
|
aliceblue: "f0f8ff",
|
|
antiquewhite: "faebd7",
|
|
aqua: "00ffff",
|
|
aquamarine: "7fffd4",
|
|
azure: "f0ffff",
|
|
beige: "f5f5dc",
|
|
bisque: "ffe4c4",
|
|
black: "000",
|
|
blanchedalmond: "ffebcd",
|
|
blue: "0000ff",
|
|
blueviolet: "8a2be2",
|
|
brown: "a52a2a",
|
|
burlywood: "deb887",
|
|
cadetblue: "5f9ea0",
|
|
chartreuse: "7fff00",
|
|
chocolate: "d2691e",
|
|
coral: "ff7f50",
|
|
cornflowerblue: "6495ed",
|
|
cornsilk: "fff8dc",
|
|
crimson: "dc143c",
|
|
cyan: "00ffff",
|
|
darkblue: "00008b",
|
|
darkcyan: "008b8b",
|
|
darkgoldenrod: "b8860b",
|
|
darkgray: "a9a9a9",
|
|
darkgreen: "006400",
|
|
darkgrey: "a9a9a9",
|
|
darkkhaki: "bdb76b",
|
|
darkmagenta: "8b008b",
|
|
darkolivegreen: "556b2f",
|
|
darkorange: "ff8c00",
|
|
darkorchid: "9932cc",
|
|
darkred: "8b0000",
|
|
darksalmon: "e9967a",
|
|
darkseagreen: "8fbc8f",
|
|
darkslateblue: "483d8b",
|
|
darkslategray: "2f4f4f",
|
|
darkslategrey: "2f4f4f",
|
|
darkturquoise: "00ced1",
|
|
darkviolet: "9400d3",
|
|
deeppink: "ff1493",
|
|
deepskyblue: "00bfff",
|
|
dimgray: "696969",
|
|
dimgrey: "696969",
|
|
dodgerblue: "1e90ff",
|
|
firebrick: "b22222",
|
|
floralwhite: "fffaf0",
|
|
forestgreen: "228b22",
|
|
fuchsia: "ff00ff",
|
|
gainsboro: "dcdcdc",
|
|
ghostwhite: "f8f8ff",
|
|
gold: "ffd700",
|
|
goldenrod: "daa520",
|
|
gray: "808080",
|
|
green: "008000",
|
|
greenyellow: "adff2f",
|
|
grey: "808080",
|
|
honeydew: "f0fff0",
|
|
hotpink: "ff69b4",
|
|
indianred: "cd5c5c",
|
|
indigo: "4b0082",
|
|
ivory: "fffff0",
|
|
khaki: "f0e68c",
|
|
lavender: "e6e6fa",
|
|
lavenderblush: "fff0f5",
|
|
lawngreen: "7cfc00",
|
|
lemonchiffon: "fffacd",
|
|
lightblue: "add8e6",
|
|
lightcoral: "f08080",
|
|
lightcyan: "e0ffff",
|
|
lightgoldenrodyellow: "fafad2",
|
|
lightgray: "d3d3d3",
|
|
lightgreen: "90ee90",
|
|
lightgrey: "d3d3d3",
|
|
lightpink: "ffb6c1",
|
|
lightsalmon: "ffa07a",
|
|
lightseagreen: "20b2aa",
|
|
lightskyblue: "87cefa",
|
|
lightslategray: "789",
|
|
lightslategrey: "789",
|
|
lightsteelblue: "b0c4de",
|
|
lightyellow: "ffffe0",
|
|
lime: "0f0",
|
|
limegreen: "32cd32",
|
|
linen: "faf0e6",
|
|
magenta: "f0f",
|
|
maroon: "800000",
|
|
mediumaquamarine: "66cdaa",
|
|
mediumblue: "0000cd",
|
|
mediumorchid: "ba55d3",
|
|
mediumpurple: "9370db",
|
|
mediumseagreen: "3cb371",
|
|
mediumslateblue: "7b68ee",
|
|
mediumspringgreen: "00fa9a",
|
|
mediumturquoise: "48d1cc",
|
|
mediumvioletred: "c71585",
|
|
midnightblue: "191970",
|
|
mintcream: "f5fffa",
|
|
mistyrose: "ffe4e1",
|
|
moccasin: "ffe4b5",
|
|
navajowhite: "ffdead",
|
|
navy: "000080",
|
|
oldlace: "fdf5e6",
|
|
olive: "808000",
|
|
olivedrab: "6b8e23",
|
|
orange: "ffa500",
|
|
orangered: "ff4500",
|
|
orchid: "da70d6",
|
|
palegoldenrod: "eee8aa",
|
|
palegreen: "98fb98",
|
|
paleturquoise: "afeeee",
|
|
palevioletred: "db7093",
|
|
papayawhip: "ffefd5",
|
|
peachpuff: "ffdab9",
|
|
peru: "cd853f",
|
|
pink: "ffc0cb",
|
|
plum: "dda0dd",
|
|
powderblue: "b0e0e6",
|
|
purple: "800080",
|
|
rebeccapurple: "639",
|
|
red: "f00",
|
|
rosybrown: "bc8f8f",
|
|
royalblue: "4169e1",
|
|
saddlebrown: "8b4513",
|
|
salmon: "fa8072",
|
|
sandybrown: "f4a460",
|
|
seagreen: "2e8b57",
|
|
seashell: "fff5ee",
|
|
sienna: "a0522d",
|
|
silver: "c0c0c0",
|
|
skyblue: "87ceeb",
|
|
slateblue: "6a5acd",
|
|
slategray: "708090",
|
|
slategrey: "708090",
|
|
snow: "fffafa",
|
|
springgreen: "00ff7f",
|
|
steelblue: "4682b4",
|
|
tan: "d2b48c",
|
|
teal: "008080",
|
|
thistle: "d8bfd8",
|
|
tomato: "ff6347",
|
|
turquoise: "40e0d0",
|
|
violet: "ee82ee",
|
|
wheat: "f5deb3",
|
|
white: "fff",
|
|
whitesmoke: "f5f5f5",
|
|
yellow: "ff0",
|
|
yellowgreen: "9acd32",
|
|
};
|
|
function Ly(e) {
|
|
if (typeof e != "string") return e;
|
|
var t = e.toLowerCase();
|
|
return Cl[t] ? "#" + Cl[t] : e;
|
|
}
|
|
a(Ly, "nameToHex");
|
|
var Ny = /^#[a-fA-F0-9]{6}$/,
|
|
Fy = /^#[a-fA-F0-9]{8}$/,
|
|
Ry = /^#[a-fA-F0-9]{3}$/,
|
|
By = /^#[a-fA-F0-9]{4}$/,
|
|
bi = /^rgb\(\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*\)$/i,
|
|
Hy =
|
|
/^rgb(?:a)?\(\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,|\/)\s*([-+]?\d*[.]?\d+[%]?)\s*\)$/i,
|
|
zy =
|
|
/^hsl\(\s*(\d{0,3}[.]?[0-9]+(?:deg)?)\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*\)$/i,
|
|
Wy =
|
|
/^hsl(?:a)?\(\s*(\d{0,3}[.]?[0-9]+(?:deg)?)\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,|\/)\s*([-+]?\d*[.]?\d+[%]?)\s*\)$/i;
|
|
function io(e) {
|
|
if (typeof e != "string") throw new Fe(3);
|
|
var t = Ly(e);
|
|
if (t.match(Ny))
|
|
return {
|
|
red: parseInt("" + t[1] + t[2], 16),
|
|
green: parseInt("" + t[3] + t[4], 16),
|
|
blue: parseInt("" + t[5] + t[6], 16),
|
|
};
|
|
if (t.match(Fy)) {
|
|
var o = parseFloat((parseInt("" + t[7] + t[8], 16) / 255).toFixed(2));
|
|
return {
|
|
red: parseInt("" + t[1] + t[2], 16),
|
|
green: parseInt("" + t[3] + t[4], 16),
|
|
blue: parseInt("" + t[5] + t[6], 16),
|
|
alpha: o,
|
|
};
|
|
}
|
|
if (t.match(Ry))
|
|
return {
|
|
red: parseInt("" + t[1] + t[1], 16),
|
|
green: parseInt("" + t[2] + t[2], 16),
|
|
blue: parseInt("" + t[3] + t[3], 16),
|
|
};
|
|
if (t.match(By)) {
|
|
var i = parseFloat((parseInt("" + t[4] + t[4], 16) / 255).toFixed(2));
|
|
return {
|
|
red: parseInt("" + t[1] + t[1], 16),
|
|
green: parseInt("" + t[2] + t[2], 16),
|
|
blue: parseInt("" + t[3] + t[3], 16),
|
|
alpha: i,
|
|
};
|
|
}
|
|
var r = bi.exec(t);
|
|
if (r)
|
|
return {
|
|
red: parseInt("" + r[1], 10),
|
|
green: parseInt("" + r[2], 10),
|
|
blue: parseInt("" + r[3], 10),
|
|
};
|
|
var n = Hy.exec(t.substring(0, 50));
|
|
if (n)
|
|
return {
|
|
red: parseInt("" + n[1], 10),
|
|
green: parseInt("" + n[2], 10),
|
|
blue: parseInt("" + n[3], 10),
|
|
alpha:
|
|
parseFloat("" + n[4]) > 1
|
|
? parseFloat("" + n[4]) / 100
|
|
: parseFloat("" + n[4]),
|
|
};
|
|
var l = zy.exec(t);
|
|
if (l) {
|
|
var u = parseInt("" + l[1], 10),
|
|
c = parseInt("" + l[2], 10) / 100,
|
|
d = parseInt("" + l[3], 10) / 100,
|
|
p = "rgb(" + Oo(u, c, d) + ")",
|
|
f = bi.exec(p);
|
|
if (!f) throw new Fe(4, t, p);
|
|
return {
|
|
red: parseInt("" + f[1], 10),
|
|
green: parseInt("" + f[2], 10),
|
|
blue: parseInt("" + f[3], 10),
|
|
};
|
|
}
|
|
var h = Wy.exec(t.substring(0, 50));
|
|
if (h) {
|
|
var y = parseInt("" + h[1], 10),
|
|
m = parseInt("" + h[2], 10) / 100,
|
|
b = parseInt("" + h[3], 10) / 100,
|
|
x = "rgb(" + Oo(y, m, b) + ")",
|
|
E = bi.exec(x);
|
|
if (!E) throw new Fe(4, t, x);
|
|
return {
|
|
red: parseInt("" + E[1], 10),
|
|
green: parseInt("" + E[2], 10),
|
|
blue: parseInt("" + E[3], 10),
|
|
alpha:
|
|
parseFloat("" + h[4]) > 1
|
|
? parseFloat("" + h[4]) / 100
|
|
: parseFloat("" + h[4]),
|
|
};
|
|
}
|
|
throw new Fe(5);
|
|
}
|
|
a(io, "parseToRgb");
|
|
function Vy(e) {
|
|
var t = e.red / 255,
|
|
o = e.green / 255,
|
|
i = e.blue / 255,
|
|
r = Math.max(t, o, i),
|
|
n = Math.min(t, o, i),
|
|
l = (r + n) / 2;
|
|
if (r === n)
|
|
return e.alpha !== void 0
|
|
? {
|
|
hue: 0,
|
|
saturation: 0,
|
|
lightness: l,
|
|
alpha: e.alpha,
|
|
}
|
|
: {
|
|
hue: 0,
|
|
saturation: 0,
|
|
lightness: l,
|
|
};
|
|
var u,
|
|
c = r - n,
|
|
d = l > 0.5 ? c / (2 - r - n) : c / (r + n);
|
|
switch (r) {
|
|
case t:
|
|
u = (o - i) / c + (o < i ? 6 : 0);
|
|
break;
|
|
case o:
|
|
u = (i - t) / c + 2;
|
|
break;
|
|
default:
|
|
u = (t - o) / c + 4;
|
|
break;
|
|
}
|
|
return (
|
|
(u *= 60),
|
|
e.alpha !== void 0
|
|
? {
|
|
hue: u,
|
|
saturation: d,
|
|
lightness: l,
|
|
alpha: e.alpha,
|
|
}
|
|
: {
|
|
hue: u,
|
|
saturation: d,
|
|
lightness: l,
|
|
}
|
|
);
|
|
}
|
|
a(Vy, "rgbToHsl");
|
|
function It(e) {
|
|
return Vy(io(e));
|
|
}
|
|
a(It, "parseToHsl");
|
|
var jy = /* @__PURE__ */ a(function (t) {
|
|
return t.length === 7 && t[1] === t[2] && t[3] === t[4] && t[5] === t[6]
|
|
? "#" + t[1] + t[3] + t[5]
|
|
: t;
|
|
}, "reduceHexValue"),
|
|
xi = jy;
|
|
function Lt(e) {
|
|
var t = e.toString(16);
|
|
return t.length === 1 ? "0" + t : t;
|
|
}
|
|
a(Lt, "numberToHex");
|
|
function vi(e) {
|
|
return Lt(Math.round(e * 255));
|
|
}
|
|
a(vi, "colorToHex");
|
|
function Ky(e, t, o) {
|
|
return xi("#" + vi(e) + vi(t) + vi(o));
|
|
}
|
|
a(Ky, "convertToHex");
|
|
function xr(e, t, o) {
|
|
return Oo(e, t, o, Ky);
|
|
}
|
|
a(xr, "hslToHex");
|
|
function $y(e, t, o) {
|
|
if (typeof e == "number" && typeof t == "number" && typeof o == "number")
|
|
return xr(e, t, o);
|
|
if (typeof e == "object" && t === void 0 && o === void 0)
|
|
return xr(e.hue, e.saturation, e.lightness);
|
|
throw new Fe(1);
|
|
}
|
|
a($y, "hsl");
|
|
function Uy(e, t, o, i) {
|
|
if (
|
|
typeof e == "number" &&
|
|
typeof t == "number" &&
|
|
typeof o == "number" &&
|
|
typeof i == "number"
|
|
)
|
|
return i >= 1 ? xr(e, t, o) : "rgba(" + Oo(e, t, o) + "," + i + ")";
|
|
if (typeof e == "object" && t === void 0 && o === void 0 && i === void 0)
|
|
return e.alpha >= 1
|
|
? xr(e.hue, e.saturation, e.lightness)
|
|
: "rgba(" + Oo(e.hue, e.saturation, e.lightness) + "," + e.alpha + ")";
|
|
throw new Fe(2);
|
|
}
|
|
a(Uy, "hsla");
|
|
function Ii(e, t, o) {
|
|
if (typeof e == "number" && typeof t == "number" && typeof o == "number")
|
|
return xi("#" + Lt(e) + Lt(t) + Lt(o));
|
|
if (typeof e == "object" && t === void 0 && o === void 0)
|
|
return xi("#" + Lt(e.red) + Lt(e.green) + Lt(e.blue));
|
|
throw new Fe(6);
|
|
}
|
|
a(Ii, "rgb");
|
|
function so(e, t, o, i) {
|
|
if (typeof e == "string" && typeof t == "number") {
|
|
var r = io(e);
|
|
return "rgba(" + r.red + "," + r.green + "," + r.blue + "," + t + ")";
|
|
} else {
|
|
if (
|
|
typeof e == "number" &&
|
|
typeof t == "number" &&
|
|
typeof o == "number" &&
|
|
typeof i == "number"
|
|
)
|
|
return i >= 1
|
|
? Ii(e, t, o)
|
|
: "rgba(" + e + "," + t + "," + o + "," + i + ")";
|
|
if (typeof e == "object" && t === void 0 && o === void 0 && i === void 0)
|
|
return e.alpha >= 1
|
|
? Ii(e.red, e.green, e.blue)
|
|
: "rgba(" + e.red + "," + e.green + "," + e.blue + "," + e.alpha + ")";
|
|
}
|
|
throw new Fe(7);
|
|
}
|
|
a(so, "rgba");
|
|
var Gy = /* @__PURE__ */ a(function (t) {
|
|
return (
|
|
typeof t.red == "number" &&
|
|
typeof t.green == "number" &&
|
|
typeof t.blue == "number" &&
|
|
(typeof t.alpha != "number" || typeof t.alpha > "u")
|
|
);
|
|
}, "isRgb"),
|
|
qy = /* @__PURE__ */ a(function (t) {
|
|
return (
|
|
typeof t.red == "number" &&
|
|
typeof t.green == "number" &&
|
|
typeof t.blue == "number" &&
|
|
typeof t.alpha == "number"
|
|
);
|
|
}, "isRgba"),
|
|
Yy = /* @__PURE__ */ a(function (t) {
|
|
return (
|
|
typeof t.hue == "number" &&
|
|
typeof t.saturation == "number" &&
|
|
typeof t.lightness == "number" &&
|
|
(typeof t.alpha != "number" || typeof t.alpha > "u")
|
|
);
|
|
}, "isHsl"),
|
|
Qy = /* @__PURE__ */ a(function (t) {
|
|
return (
|
|
typeof t.hue == "number" &&
|
|
typeof t.saturation == "number" &&
|
|
typeof t.lightness == "number" &&
|
|
typeof t.alpha == "number"
|
|
);
|
|
}, "isHsla");
|
|
function St(e) {
|
|
if (typeof e != "object") throw new Fe(8);
|
|
if (qy(e)) return so(e);
|
|
if (Gy(e)) return Ii(e);
|
|
if (Qy(e)) return Uy(e);
|
|
if (Yy(e)) return $y(e);
|
|
throw new Fe(8);
|
|
}
|
|
a(St, "toColorString");
|
|
function kl(e, t, o) {
|
|
return /* @__PURE__ */ a(function () {
|
|
var r = o.concat(Array.prototype.slice.call(arguments));
|
|
return r.length >= t ? e.apply(this, r) : kl(e, t, r);
|
|
}, "fn");
|
|
}
|
|
a(kl, "curried");
|
|
function ze(e) {
|
|
return kl(e, e.length, []);
|
|
}
|
|
a(ze, "curry");
|
|
function Xy(e, t) {
|
|
if (t === "transparent") return t;
|
|
var o = It(t);
|
|
return St(
|
|
j({}, o, {
|
|
hue: o.hue + parseFloat(e),
|
|
}),
|
|
);
|
|
}
|
|
a(Xy, "adjustHue");
|
|
var P1 = ze(Xy);
|
|
function ao(e, t, o) {
|
|
return Math.max(e, Math.min(t, o));
|
|
}
|
|
a(ao, "guard");
|
|
function Zy(e, t) {
|
|
if (t === "transparent") return t;
|
|
var o = It(t);
|
|
return St(
|
|
j({}, o, {
|
|
lightness: ao(0, 1, o.lightness - parseFloat(e)),
|
|
}),
|
|
);
|
|
}
|
|
a(Zy, "darken");
|
|
var Jy = ze(Zy),
|
|
Ir = Jy;
|
|
function eb(e, t) {
|
|
if (t === "transparent") return t;
|
|
var o = It(t);
|
|
return St(
|
|
j({}, o, {
|
|
saturation: ao(0, 1, o.saturation - parseFloat(e)),
|
|
}),
|
|
);
|
|
}
|
|
a(eb, "desaturate");
|
|
var A1 = ze(eb);
|
|
function tb(e, t) {
|
|
if (t === "transparent") return t;
|
|
var o = It(t);
|
|
return St(
|
|
j({}, o, {
|
|
lightness: ao(0, 1, o.lightness + parseFloat(e)),
|
|
}),
|
|
);
|
|
}
|
|
a(tb, "lighten");
|
|
var ob = ze(tb),
|
|
Po = ob;
|
|
function rb(e, t, o) {
|
|
if (t === "transparent") return o;
|
|
if (o === "transparent") return t;
|
|
if (e === 0) return o;
|
|
var i = io(t),
|
|
r = j({}, i, {
|
|
alpha: typeof i.alpha == "number" ? i.alpha : 1,
|
|
}),
|
|
n = io(o),
|
|
l = j({}, n, {
|
|
alpha: typeof n.alpha == "number" ? n.alpha : 1,
|
|
}),
|
|
u = r.alpha - l.alpha,
|
|
c = parseFloat(e) * 2 - 1,
|
|
d = c * u === -1 ? c : c + u,
|
|
p = 1 + c * u,
|
|
f = (d / p + 1) / 2,
|
|
h = 1 - f,
|
|
y = {
|
|
red: Math.floor(r.red * f + l.red * h),
|
|
green: Math.floor(r.green * f + l.green * h),
|
|
blue: Math.floor(r.blue * f + l.blue * h),
|
|
alpha: r.alpha * parseFloat(e) + l.alpha * (1 - parseFloat(e)),
|
|
};
|
|
return so(y);
|
|
}
|
|
a(rb, "mix");
|
|
var nb = ze(rb),
|
|
Ol = nb;
|
|
function ib(e, t) {
|
|
if (t === "transparent") return t;
|
|
var o = io(t),
|
|
i = typeof o.alpha == "number" ? o.alpha : 1,
|
|
r = j({}, o, {
|
|
alpha: ao(0, 1, (i * 100 + parseFloat(e) * 100) / 100),
|
|
});
|
|
return so(r);
|
|
}
|
|
a(ib, "opacify");
|
|
var D1 = ze(ib);
|
|
function sb(e, t) {
|
|
if (t === "transparent") return t;
|
|
var o = It(t);
|
|
return St(
|
|
j({}, o, {
|
|
saturation: ao(0, 1, o.saturation + parseFloat(e)),
|
|
}),
|
|
);
|
|
}
|
|
a(sb, "saturate");
|
|
var M1 = ze(sb);
|
|
function ab(e, t) {
|
|
return t === "transparent"
|
|
? t
|
|
: St(
|
|
j({}, It(t), {
|
|
hue: parseFloat(e),
|
|
}),
|
|
);
|
|
}
|
|
a(ab, "setHue");
|
|
var L1 = ze(ab);
|
|
function lb(e, t) {
|
|
return t === "transparent"
|
|
? t
|
|
: St(
|
|
j({}, It(t), {
|
|
lightness: parseFloat(e),
|
|
}),
|
|
);
|
|
}
|
|
a(lb, "setLightness");
|
|
var N1 = ze(lb);
|
|
function ub(e, t) {
|
|
return t === "transparent"
|
|
? t
|
|
: St(
|
|
j({}, It(t), {
|
|
saturation: parseFloat(e),
|
|
}),
|
|
);
|
|
}
|
|
a(ub, "setSaturation");
|
|
var F1 = ze(ub);
|
|
function cb(e, t) {
|
|
return t === "transparent" ? t : Ol(parseFloat(e), "rgb(0, 0, 0)", t);
|
|
}
|
|
a(cb, "shade");
|
|
var R1 = ze(cb);
|
|
function pb(e, t) {
|
|
return t === "transparent" ? t : Ol(parseFloat(e), "rgb(255, 255, 255)", t);
|
|
}
|
|
a(pb, "tint");
|
|
var B1 = ze(pb);
|
|
function db(e, t) {
|
|
if (t === "transparent") return t;
|
|
var o = io(t),
|
|
i = typeof o.alpha == "number" ? o.alpha : 1,
|
|
r = j({}, o, {
|
|
alpha: ao(0, 1, +(i * 100 - parseFloat(e) * 100).toFixed(2) / 100),
|
|
});
|
|
return so(r);
|
|
}
|
|
a(db, "transparentize");
|
|
var fb = ze(db),
|
|
Te = fb;
|
|
|
|
// src/manager/components/notifications/NotificationItem.tsx
|
|
var mb = Dt({
|
|
"0%": {
|
|
opacity: 0,
|
|
transform: "translateY(30px)",
|
|
},
|
|
"100%": {
|
|
opacity: 1,
|
|
transform: "translateY(0)",
|
|
},
|
|
}),
|
|
hb = Dt({
|
|
"0%": {
|
|
width: "0%",
|
|
},
|
|
"100%": {
|
|
width: "100%",
|
|
},
|
|
}),
|
|
Pl = I.div(
|
|
({ theme: e }) => ({
|
|
position: "relative",
|
|
display: "flex",
|
|
border: `1px solid ${e.appBorderColor}`,
|
|
padding: "12px 6px 12px 12px",
|
|
borderRadius: e.appBorderRadius + 1,
|
|
alignItems: "center",
|
|
animation: `${mb} 500ms`,
|
|
background:
|
|
e.base === "light"
|
|
? "hsla(203, 50%, 20%, .97)"
|
|
: "hsla(203, 30%, 95%, .97)",
|
|
boxShadow:
|
|
"0 2px 5px 0 rgba(0, 0, 0, 0.05), 0 5px 15px 0 rgba(0, 0, 0, 0.1)",
|
|
color: e.color.inverseText,
|
|
textDecoration: "none",
|
|
overflow: "hidden",
|
|
[Qe]: {
|
|
boxShadow: `0 1px 2px 0 rgba(0, 0, 0, 0.05), 0px -5px 20px 10px ${e.background.app}`,
|
|
},
|
|
}),
|
|
({ duration: e, theme: t }) =>
|
|
e && {
|
|
"&::after": {
|
|
content: '""',
|
|
display: "block",
|
|
position: "absolute",
|
|
bottom: 0,
|
|
left: 0,
|
|
height: 3,
|
|
background: t.color.secondary,
|
|
animation: `${hb} ${e}ms linear forwards reverse`,
|
|
},
|
|
},
|
|
),
|
|
Al = I(Pl)({
|
|
cursor: "pointer",
|
|
border: "none",
|
|
outline: "none",
|
|
textAlign: "left",
|
|
transition: "all 150ms ease-out",
|
|
transform: "translate3d(0, 0, 0)",
|
|
"&:hover": {
|
|
transform: "translate3d(0, -3px, 0)",
|
|
boxShadow:
|
|
"0 1px 3px 0 rgba(30,167,253,0.5), 0 2px 5px 0 rgba(0,0,0,0.05), 0 5px 15px 0 rgba(0,0,0,0.1)",
|
|
},
|
|
"&:active": {
|
|
transform: "translate3d(0, 0, 0)",
|
|
boxShadow:
|
|
"0 1px 3px 0 rgba(30,167,253,0.5), 0 2px 5px 0 rgba(0,0,0,0.05), 0 5px 15px 0 rgba(0,0,0,0.1)",
|
|
},
|
|
"&:focus": {
|
|
boxShadow:
|
|
"rgba(2,156,253,1) 0 0 0 1px inset, 0 1px 3px 0 rgba(30,167,253,0.5), 0 2px 5px 0 rgba(0,0,0,0.05), 0 5px 15px 0 rgba(0,0,0,0\
|
|
.1)",
|
|
},
|
|
}),
|
|
gb = Al.withComponent("div"),
|
|
yb = Al.withComponent(pr),
|
|
bb = I.div({
|
|
display: "flex",
|
|
marginRight: 10,
|
|
alignItems: "center",
|
|
svg: {
|
|
width: 16,
|
|
height: 16,
|
|
},
|
|
}),
|
|
vb = I.div(({ theme: e }) => ({
|
|
width: "100%",
|
|
display: "flex",
|
|
flexDirection: "column",
|
|
color: e.base === "dark" ? e.color.mediumdark : e.color.mediumlight,
|
|
})),
|
|
xb = I.div(({ theme: e, hasIcon: t }) => ({
|
|
height: "100%",
|
|
alignItems: "center",
|
|
whiteSpace: "balance",
|
|
overflow: "hidden",
|
|
textOverflow: "ellipsis",
|
|
fontSize: e.typography.size.s1,
|
|
lineHeight: "16px",
|
|
fontWeight: e.typography.weight.bold,
|
|
})),
|
|
Ib = I.div(({ theme: e }) => ({
|
|
color: Te(0.25, e.color.inverseText),
|
|
fontSize: e.typography.size.s1 - 1,
|
|
lineHeight: "14px",
|
|
marginTop: 2,
|
|
whiteSpace: "balance",
|
|
})),
|
|
Si = /* @__PURE__ */ a(
|
|
({ icon: e, content: { headline: t, subHeadline: o } }) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
!e || /* @__PURE__ */ s.createElement(bb, null, e),
|
|
/* @__PURE__ */ s.createElement(
|
|
vb,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(xb, { title: t, hasIcon: !!e }, t),
|
|
o && /* @__PURE__ */ s.createElement(Ib, null, o),
|
|
),
|
|
),
|
|
"ItemCont\
|
|
ent",
|
|
),
|
|
Sb = I(ee)(({ theme: e }) => ({
|
|
width: 28,
|
|
alignSelf: "center",
|
|
marginTop: 0,
|
|
color: e.base === "light" ? "rgba(255,255,255,0.7)" : " #999999",
|
|
})),
|
|
wi = /* @__PURE__ */ a(
|
|
({ onDismiss: e }) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
Sb,
|
|
{
|
|
title: "Dismiss notification",
|
|
onClick: (t) => {
|
|
(t.preventDefault(), t.stopPropagation(), e());
|
|
},
|
|
},
|
|
/* @__PURE__ */ s.createElement(bo, { size: 12 }),
|
|
),
|
|
"DismissNotificationItem",
|
|
),
|
|
q1 = I.div({
|
|
height: 48,
|
|
}),
|
|
wb = /* @__PURE__ */ a(
|
|
({
|
|
notification: {
|
|
content: e,
|
|
duration: t,
|
|
link: o,
|
|
onClear: i,
|
|
onClick: r,
|
|
id: n,
|
|
icon: l,
|
|
},
|
|
onDismissNotification: u,
|
|
zIndex: c,
|
|
}) => {
|
|
let d = A(() => {
|
|
(u(n), i && i({ dismissed: !1, timeout: !0 }));
|
|
}, [n, u, i]),
|
|
p = U(null);
|
|
H(() => {
|
|
if (t)
|
|
return (
|
|
(p.current = setTimeout(d, t)),
|
|
() => clearTimeout(p.current)
|
|
);
|
|
}, [t, d]);
|
|
let f = A(() => {
|
|
(clearTimeout(p.current), u(n), i && i({ dismissed: !0, timeout: !1 }));
|
|
}, [n, u, i]);
|
|
return o
|
|
? /* @__PURE__ */ s.createElement(
|
|
yb,
|
|
{ to: o, duration: t, style: { zIndex: c } },
|
|
/* @__PURE__ */ s.createElement(Si, { icon: l, content: e }),
|
|
/* @__PURE__ */ s.createElement(wi, { onDismiss: f }),
|
|
)
|
|
: r
|
|
? /* @__PURE__ */ s.createElement(
|
|
gb,
|
|
{
|
|
duration: t,
|
|
onClick: () => r({ onDismiss: f }),
|
|
style: { zIndex: c },
|
|
},
|
|
/* @__PURE__ */ s.createElement(Si, { icon: l, content: e }),
|
|
/* @__PURE__ */ s.createElement(wi, { onDismiss: f }),
|
|
)
|
|
: /* @__PURE__ */ s.createElement(
|
|
Pl,
|
|
{ duration: t, style: { zIndex: c } },
|
|
/* @__PURE__ */ s.createElement(Si, { icon: l, content: e }),
|
|
/* @__PURE__ */ s.createElement(wi, { onDismiss: f }),
|
|
);
|
|
},
|
|
"NotificationItem",
|
|
),
|
|
Dl = wb;
|
|
|
|
// src/manager/components/notifications/NotificationList.tsx
|
|
var Sr = /* @__PURE__ */ a(({ notifications: e, clearNotification: t }) => {
|
|
let { isMobile: o } = ge();
|
|
return /* @__PURE__ */ s.createElement(
|
|
Eb,
|
|
{ isMobile: o },
|
|
e &&
|
|
e.map((i, r) =>
|
|
/* @__PURE__ */ s.createElement(Dl, {
|
|
key: i.id,
|
|
onDismissNotification: (n) => t(n),
|
|
notification: i,
|
|
zIndex: e.length - r,
|
|
}),
|
|
),
|
|
);
|
|
}, "NotificationList"),
|
|
Eb = I.div(
|
|
{
|
|
zIndex: 200,
|
|
"> * + *": {
|
|
marginTop: 12,
|
|
},
|
|
"&:empty": {
|
|
display: "none",
|
|
},
|
|
},
|
|
({ isMobile: e }) =>
|
|
e && {
|
|
position: "fixed",
|
|
bottom: 40,
|
|
margin: 20,
|
|
},
|
|
);
|
|
|
|
// src/manager/container/Notifications.tsx
|
|
var Tb = /* @__PURE__ */ a(
|
|
({ state: e, api: t }) => ({
|
|
notifications: e.notifications,
|
|
clearNotification: t.clearNotification,
|
|
}),
|
|
"mapper",
|
|
),
|
|
Ml = /* @__PURE__ */ a(
|
|
(e) =>
|
|
/* @__PURE__ */ s.createElement(me, { filter: Tb }, (t) =>
|
|
/* @__PURE__ */ s.createElement(Sr, {
|
|
...e,
|
|
...t,
|
|
}),
|
|
),
|
|
"Notifications",
|
|
);
|
|
|
|
// ../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
|
|
function ke(e, t) {
|
|
if (e == null) return {};
|
|
var o = {};
|
|
for (var i in e)
|
|
if ({}.hasOwnProperty.call(e, i)) {
|
|
if (t.indexOf(i) !== -1) continue;
|
|
o[i] = e[i];
|
|
}
|
|
return o;
|
|
}
|
|
a(ke, "_objectWithoutPropertiesLoose");
|
|
|
|
// global-externals:react-dom
|
|
var Ao = __REACT_DOM__,
|
|
{
|
|
__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED: ck,
|
|
createPortal: pk,
|
|
createRoot: dk,
|
|
findDOMNode: fk,
|
|
flushSync: Do,
|
|
hydrate: mk,
|
|
hydrateRoot: hk,
|
|
render: gk,
|
|
unmountComponentAtNode: yk,
|
|
unstable_batchedUpdates: bk,
|
|
unstable_renderSubtreeIntoContainer: vk,
|
|
version: xk,
|
|
} = __REACT_DOM__;
|
|
|
|
// ../node_modules/react-transition-group/esm/config.js
|
|
var Ei = {
|
|
disabled: !1,
|
|
};
|
|
|
|
// ../node_modules/react-transition-group/esm/TransitionGroupContext.js
|
|
var Ti = s.createContext(null);
|
|
|
|
// ../node_modules/react-transition-group/esm/utils/reflow.js
|
|
var Ll = /* @__PURE__ */ a(function (t) {
|
|
return t.scrollTop;
|
|
}, "forceReflow");
|
|
|
|
// ../node_modules/react-transition-group/esm/Transition.js
|
|
var Mo = "unmounted",
|
|
Nt = "exited",
|
|
Ft = "entering",
|
|
uo = "entered",
|
|
Ci = "exiting",
|
|
dt = /* @__PURE__ */ (function (e) {
|
|
no(t, e);
|
|
function t(i, r) {
|
|
var n;
|
|
n = e.call(this, i, r) || this;
|
|
var l = r,
|
|
u = l && !l.isMounting ? i.enter : i.appear,
|
|
c;
|
|
return (
|
|
(n.appearStatus = null),
|
|
i.in
|
|
? u
|
|
? ((c = Nt), (n.appearStatus = Ft))
|
|
: (c = uo)
|
|
: i.unmountOnExit || i.mountOnEnter
|
|
? (c = Mo)
|
|
: (c = Nt),
|
|
(n.state = {
|
|
status: c,
|
|
}),
|
|
(n.nextCallback = null),
|
|
n
|
|
);
|
|
}
|
|
(a(t, "Transition"),
|
|
(t.getDerivedStateFromProps = /* @__PURE__ */ a(function (r, n) {
|
|
var l = r.in;
|
|
return l && n.status === Mo
|
|
? {
|
|
status: Nt,
|
|
}
|
|
: null;
|
|
}, "getDerivedStateFromProps")));
|
|
var o = t.prototype;
|
|
return (
|
|
(o.componentDidMount = /* @__PURE__ */ a(function () {
|
|
this.updateStatus(!0, this.appearStatus);
|
|
}, "componentDidMount")),
|
|
(o.componentDidUpdate = /* @__PURE__ */ a(function (r) {
|
|
var n = null;
|
|
if (r !== this.props) {
|
|
var l = this.state.status;
|
|
this.props.in
|
|
? l !== Ft && l !== uo && (n = Ft)
|
|
: (l === Ft || l === uo) && (n = Ci);
|
|
}
|
|
this.updateStatus(!1, n);
|
|
}, "componentDidUpdate")),
|
|
(o.componentWillUnmount = /* @__PURE__ */ a(function () {
|
|
this.cancelNextCallback();
|
|
}, "componentWillUnmount")),
|
|
(o.getTimeouts = /* @__PURE__ */ a(function () {
|
|
var r = this.props.timeout,
|
|
n,
|
|
l,
|
|
u;
|
|
return (
|
|
(n = l = u = r),
|
|
r != null &&
|
|
typeof r != "number" &&
|
|
((n = r.exit),
|
|
(l = r.enter),
|
|
(u = r.appear !== void 0 ? r.appear : l)),
|
|
{
|
|
exit: n,
|
|
enter: l,
|
|
appear: u,
|
|
}
|
|
);
|
|
}, "getTimeouts")),
|
|
(o.updateStatus = /* @__PURE__ */ a(function (r, n) {
|
|
if ((r === void 0 && (r = !1), n !== null))
|
|
if ((this.cancelNextCallback(), n === Ft)) {
|
|
if (this.props.unmountOnExit || this.props.mountOnEnter) {
|
|
var l = this.props.nodeRef
|
|
? this.props.nodeRef.current
|
|
: Ao.findDOMNode(this);
|
|
l && Ll(l);
|
|
}
|
|
this.performEnter(r);
|
|
} else this.performExit();
|
|
else
|
|
this.props.unmountOnExit &&
|
|
this.state.status === Nt &&
|
|
this.setState({
|
|
status: Mo,
|
|
});
|
|
}, "updateStatus")),
|
|
(o.performEnter = /* @__PURE__ */ a(function (r) {
|
|
var n = this,
|
|
l = this.props.enter,
|
|
u = this.context ? this.context.isMounting : r,
|
|
c = this.props.nodeRef ? [u] : [Ao.findDOMNode(this), u],
|
|
d = c[0],
|
|
p = c[1],
|
|
f = this.getTimeouts(),
|
|
h = u ? f.appear : f.enter;
|
|
if ((!r && !l) || Ei.disabled) {
|
|
this.safeSetState(
|
|
{
|
|
status: uo,
|
|
},
|
|
function () {
|
|
n.props.onEntered(d);
|
|
},
|
|
);
|
|
return;
|
|
}
|
|
(this.props.onEnter(d, p),
|
|
this.safeSetState(
|
|
{
|
|
status: Ft,
|
|
},
|
|
function () {
|
|
(n.props.onEntering(d, p),
|
|
n.onTransitionEnd(h, function () {
|
|
n.safeSetState(
|
|
{
|
|
status: uo,
|
|
},
|
|
function () {
|
|
n.props.onEntered(d, p);
|
|
},
|
|
);
|
|
}));
|
|
},
|
|
));
|
|
}, "performEnter")),
|
|
(o.performExit = /* @__PURE__ */ a(function () {
|
|
var r = this,
|
|
n = this.props.exit,
|
|
l = this.getTimeouts(),
|
|
u = this.props.nodeRef ? void 0 : Ao.findDOMNode(this);
|
|
if (!n || Ei.disabled) {
|
|
this.safeSetState(
|
|
{
|
|
status: Nt,
|
|
},
|
|
function () {
|
|
r.props.onExited(u);
|
|
},
|
|
);
|
|
return;
|
|
}
|
|
(this.props.onExit(u),
|
|
this.safeSetState(
|
|
{
|
|
status: Ci,
|
|
},
|
|
function () {
|
|
(r.props.onExiting(u),
|
|
r.onTransitionEnd(l.exit, function () {
|
|
r.safeSetState(
|
|
{
|
|
status: Nt,
|
|
},
|
|
function () {
|
|
r.props.onExited(u);
|
|
},
|
|
);
|
|
}));
|
|
},
|
|
));
|
|
}, "performExit")),
|
|
(o.cancelNextCallback = /* @__PURE__ */ a(function () {
|
|
this.nextCallback !== null &&
|
|
(this.nextCallback.cancel(), (this.nextCallback = null));
|
|
}, "cancelNextCallback")),
|
|
(o.safeSetState = /* @__PURE__ */ a(function (r, n) {
|
|
((n = this.setNextCallback(n)), this.setState(r, n));
|
|
}, "safeSetState")),
|
|
(o.setNextCallback = /* @__PURE__ */ a(function (r) {
|
|
var n = this,
|
|
l = !0;
|
|
return (
|
|
(this.nextCallback = function (u) {
|
|
l && ((l = !1), (n.nextCallback = null), r(u));
|
|
}),
|
|
(this.nextCallback.cancel = function () {
|
|
l = !1;
|
|
}),
|
|
this.nextCallback
|
|
);
|
|
}, "setNextCallback")),
|
|
(o.onTransitionEnd = /* @__PURE__ */ a(function (r, n) {
|
|
this.setNextCallback(n);
|
|
var l = this.props.nodeRef
|
|
? this.props.nodeRef.current
|
|
: Ao.findDOMNode(this),
|
|
u = r == null && !this.props.addEndListener;
|
|
if (!l || u) {
|
|
setTimeout(this.nextCallback, 0);
|
|
return;
|
|
}
|
|
if (this.props.addEndListener) {
|
|
var c = this.props.nodeRef
|
|
? [this.nextCallback]
|
|
: [l, this.nextCallback],
|
|
d = c[0],
|
|
p = c[1];
|
|
this.props.addEndListener(d, p);
|
|
}
|
|
r != null && setTimeout(this.nextCallback, r);
|
|
}, "onTransitionEnd")),
|
|
(o.render = /* @__PURE__ */ a(function () {
|
|
var r = this.state.status;
|
|
if (r === Mo) return null;
|
|
var n = this.props,
|
|
l = n.children,
|
|
u = n.in,
|
|
c = n.mountOnEnter,
|
|
d = n.unmountOnExit,
|
|
p = n.appear,
|
|
f = n.enter,
|
|
h = n.exit,
|
|
y = n.timeout,
|
|
m = n.addEndListener,
|
|
b = n.onEnter,
|
|
x = n.onEntering,
|
|
E = n.onEntered,
|
|
g = n.onExit,
|
|
v = n.onExiting,
|
|
S = n.onExited,
|
|
w = n.nodeRef,
|
|
k = ke(n, [
|
|
"children",
|
|
"in",
|
|
"mountOnEnter",
|
|
"unmountOnExit",
|
|
"appear",
|
|
"enter",
|
|
"exit",
|
|
"timeout",
|
|
"addEndListener",
|
|
"onEnter",
|
|
"onEntering",
|
|
"\
|
|
onEntered",
|
|
"onExit",
|
|
"onExiting",
|
|
"onExited",
|
|
"nodeRef",
|
|
]);
|
|
return (
|
|
// allows for nested Transitions
|
|
/* @__PURE__ */ s.createElement(
|
|
Ti.Provider,
|
|
{
|
|
value: null,
|
|
},
|
|
typeof l == "function"
|
|
? l(r, k)
|
|
: s.cloneElement(s.Children.only(l), k),
|
|
)
|
|
);
|
|
}, "render")),
|
|
t
|
|
);
|
|
})(s.Component);
|
|
dt.contextType = Ti;
|
|
dt.propTypes = {};
|
|
function lo() {}
|
|
a(lo, "noop");
|
|
dt.defaultProps = {
|
|
in: !1,
|
|
mountOnEnter: !1,
|
|
unmountOnExit: !1,
|
|
appear: !1,
|
|
enter: !0,
|
|
exit: !0,
|
|
onEnter: lo,
|
|
onEntering: lo,
|
|
onEntered: lo,
|
|
onExit: lo,
|
|
onExiting: lo,
|
|
onExited: lo,
|
|
};
|
|
dt.UNMOUNTED = Mo;
|
|
dt.EXITED = Nt;
|
|
dt.ENTERING = Ft;
|
|
dt.ENTERED = uo;
|
|
dt.EXITING = Ci;
|
|
var ft = dt;
|
|
|
|
// src/manager/hooks/useModalDialog.ts
|
|
function wr({ isOpen: e, onClose: t }) {
|
|
let o = U(null);
|
|
return (
|
|
H(() => {
|
|
let i = o.current;
|
|
i && e && (i.hasAttribute("open") || i.showModal());
|
|
}, [e]),
|
|
H(() => {
|
|
let i = o.current;
|
|
if (i) {
|
|
let r = /* @__PURE__ */ a((l) => {
|
|
e && (l.preventDefault(), t());
|
|
}, "handleDialogCloseEvent"),
|
|
n = /* @__PURE__ */ a((l) => {
|
|
l.key === "Escape" && e && (l.preventDefault(), t());
|
|
}, "handleEscapeKey");
|
|
return (
|
|
i.addEventListener("close", r),
|
|
i.addEventListener("keydown", n),
|
|
() => {
|
|
(i.removeEventListener("close", r),
|
|
i.removeEventListener("keydown", n));
|
|
}
|
|
);
|
|
}
|
|
}, [e, t]),
|
|
o
|
|
);
|
|
}
|
|
a(wr, "useModalDialog");
|
|
|
|
// src/manager/components/mobile/navigation/MobileAddonsDrawer.tsx
|
|
var Cb = I.dialog(({ theme: e, state: t }) => ({
|
|
position: "fixed",
|
|
bottom: 0,
|
|
left: 0,
|
|
right: 0,
|
|
top: "auto",
|
|
boxSizing: "border-box",
|
|
width: "100%",
|
|
maxWidth: "100vw",
|
|
background: e.background.content,
|
|
height: "42vh",
|
|
zIndex: 11,
|
|
overflow: "hidden",
|
|
border: "none",
|
|
padding: 0,
|
|
margin: 0,
|
|
transform: `translateY(${t === "entering" || t === "entered" ? "0" : "100%"})`,
|
|
transition: `all ${300}ms ease-in-out`,
|
|
"&[open]": {
|
|
position: "fixed",
|
|
bottom: 0,
|
|
left: 0,
|
|
right: 0,
|
|
top: "auto",
|
|
width: "100%",
|
|
maxWidth: "100vw",
|
|
margin: 0,
|
|
},
|
|
})),
|
|
_b = I.div(({ state: e }) => ({
|
|
width: "100%",
|
|
height: "100%",
|
|
transition: `all ${300}ms ease-in-out`,
|
|
opacity: e === "entered" || e === "entering" ? 1 : 0,
|
|
})),
|
|
Nl = /* @__PURE__ */ a(({ children: e, id: t, isOpen: o, onClose: i }) => {
|
|
let r = wr({ isOpen: o, onClose: i }),
|
|
n = A(() => {
|
|
r.current && r.current.hasAttribute("open") && r.current.close();
|
|
}, []);
|
|
return /* @__PURE__ */ s.createElement(
|
|
ft,
|
|
{
|
|
nodeRef: r,
|
|
in: o,
|
|
timeout: 300,
|
|
mountOnEnter: !0,
|
|
unmountOnExit: !0,
|
|
onExited: () => {
|
|
n();
|
|
},
|
|
},
|
|
(l) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
Cb,
|
|
{ ref: r, state: l, id: t, "aria-label": "Addon panel" },
|
|
/* @__PURE__ */ s.createElement(_b, { state: l }, e),
|
|
),
|
|
);
|
|
}, "MobileAddonsDrawer");
|
|
|
|
// src/manager/components/upgrade/UpgradeBlock.tsx
|
|
var Er = /* @__PURE__ */ a(({ onNavigateToWhatsNew: e }) => {
|
|
let t = oe(),
|
|
[o, i] = K("npm");
|
|
return /* @__PURE__ */ s.createElement(
|
|
kb,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
"strong",
|
|
null,
|
|
"You are on Storybook ",
|
|
t.getCurrentVersion().version,
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
"p",
|
|
null,
|
|
"Run the following script to check for updates and upgrade to the latest version.",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
Ob,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
_i,
|
|
{ active: o === "npm", onClick: () => i("npm") },
|
|
"npm",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
_i,
|
|
{ active: o === "yarn", onClick: () => i("yarn") },
|
|
"yarn",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
_i,
|
|
{ active: o === "pnpm", onClick: () => i("pnpm") },
|
|
"pnpm",
|
|
),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
Pb,
|
|
null,
|
|
o === "npm"
|
|
? "npx storybook@latest upgrade"
|
|
: `${o} dlx storybook@latest u\
|
|
pgrade`,
|
|
),
|
|
e &&
|
|
/* @__PURE__ */ s.createElement(
|
|
Pe,
|
|
{ onClick: e },
|
|
"See what's new in Storybook",
|
|
),
|
|
);
|
|
}, "UpgradeBlock"),
|
|
kb = I.div(({ theme: e }) => ({
|
|
border: "1px solid",
|
|
borderRadius: 5,
|
|
padding: 20,
|
|
marginTop: 0,
|
|
borderColor: e.appBorderColor,
|
|
fontSize: e.typography.size.s2,
|
|
width: "100%",
|
|
[Qe]: {
|
|
maxWidth: 400,
|
|
},
|
|
})),
|
|
Ob = I.div({
|
|
display: "flex",
|
|
gap: 2,
|
|
}),
|
|
Pb = I.pre(({ theme: e }) => ({
|
|
background: e.base === "light" ? "rgba(0, 0, 0, 0.05)" : e.appBorderColor,
|
|
fontSize: e.typography.size.s2 - 1,
|
|
margin: "4px 0 16px",
|
|
})),
|
|
_i = I.button(({ theme: e, active: t }) => ({
|
|
all: "unset",
|
|
alignItems: "center",
|
|
gap: 10,
|
|
color: e.color.defaultText,
|
|
fontSize: e.typography.size.s2 - 1,
|
|
borderBottom: "2px solid transparent",
|
|
borderBottomColor: t ? e.color.secondary : "none",
|
|
padding: "0 10px 5px",
|
|
marginBottom: "5px",
|
|
cursor: "pointer",
|
|
}));
|
|
|
|
// src/manager/components/mobile/about/MobileAbout.tsx
|
|
var Bl = /* @__PURE__ */ a(() => {
|
|
let { isMobileAboutOpen: e, setMobileAboutOpen: t } = ge(),
|
|
o = U(null);
|
|
return /* @__PURE__ */ s.createElement(
|
|
ft,
|
|
{
|
|
nodeRef: o,
|
|
in: e,
|
|
timeout: 300,
|
|
appear: !0,
|
|
mountOnEnter: !0,
|
|
unmountOnExit: !0,
|
|
},
|
|
(i) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
Ab,
|
|
{ ref: o, state: i, transitionDuration: 300 },
|
|
/* @__PURE__ */ s.createElement(
|
|
Lb,
|
|
{ onClick: () => t(!1), title: "Close about section" },
|
|
/* @__PURE__ */ s.createElement(En, null),
|
|
"Back",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
Db,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
Fl,
|
|
{
|
|
href: "https://github.com/storybookjs/storybook",
|
|
target: "_blank",
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
Rl,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(vo, null),
|
|
/* @__PURE__ */ s.createElement("span", null, "Github"),
|
|
),
|
|
/* @__PURE__ */ s.createElement(tt, { width: 12 }),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
Fl,
|
|
{
|
|
href: "https://storybook.js.org/docs/react/get-started/install/",
|
|
target: "_blank",
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
Rl,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(qn, null),
|
|
/* @__PURE__ */ s.createElement(
|
|
"span",
|
|
null,
|
|
"Do\
|
|
cumentation",
|
|
),
|
|
),
|
|
/* @__PURE__ */ s.createElement(tt, { width: 12 }),
|
|
),
|
|
),
|
|
/* @__PURE__ */ s.createElement(Er, null),
|
|
/* @__PURE__ */ s.createElement(
|
|
Mb,
|
|
null,
|
|
"Open source software maintained by",
|
|
" ",
|
|
/* @__PURE__ */ s.createElement(
|
|
Pe,
|
|
{ href: "https://chromatic.com", target: "_blank" },
|
|
"Chromatic",
|
|
),
|
|
" ",
|
|
"and the",
|
|
" ",
|
|
/* @__PURE__ */ s.createElement(
|
|
Pe,
|
|
{
|
|
href: "https://github.com/storybookjs/storybook/graphs/contributors",
|
|
},
|
|
"Storybook Community",
|
|
),
|
|
),
|
|
),
|
|
);
|
|
}, "MobileAbout"),
|
|
Ab = I.div(({ theme: e, state: t, transitionDuration: o }) => ({
|
|
position: "absolute",
|
|
width: "100%",
|
|
height: "100%",
|
|
top: 0,
|
|
left: 0,
|
|
zIndex: 11,
|
|
transition: `all ${o}ms ease-in-out`,
|
|
overflow: "scroll",
|
|
padding: "25px 10px 10px",
|
|
color: e.color.defaultText,
|
|
background: e.background.content,
|
|
opacity: `${(() => {
|
|
switch (t) {
|
|
case "entering":
|
|
case "entered":
|
|
return 1;
|
|
case "exiting":
|
|
case "exited":
|
|
return 0;
|
|
default:
|
|
return 0;
|
|
}
|
|
})()}`,
|
|
transform: `${(() => {
|
|
switch (t) {
|
|
case "entering":
|
|
case "entered":
|
|
return "translateX(0)";
|
|
case "exiting":
|
|
case "exited":
|
|
return "translateX(20px)";
|
|
default:
|
|
return "translateX(0)";
|
|
}
|
|
})()}`,
|
|
})),
|
|
Db = I.div({
|
|
marginTop: 20,
|
|
marginBottom: 20,
|
|
}),
|
|
Fl = I.a(({ theme: e }) => ({
|
|
all: "unset",
|
|
display: "flex",
|
|
alignItems: "center",
|
|
justifyContent: "space-between",
|
|
fontSize: e.typography.size.s2 - 1,
|
|
height: 52,
|
|
borderBottom: `1px solid ${e.appBorderColor}`,
|
|
cursor: "pointer",
|
|
padding: "0 10px",
|
|
"&:last-child": {
|
|
borderBottom: "none",
|
|
},
|
|
})),
|
|
Rl = I.div(({ theme: e }) => ({
|
|
display: "flex",
|
|
alignItems: "center",
|
|
fontSize: e.typography.size.s2 - 1,
|
|
height: 40,
|
|
gap: 5,
|
|
})),
|
|
Mb = I.div(({ theme: e }) => ({
|
|
fontSize: e.typography.size.s2 - 1,
|
|
marginTop: 30,
|
|
})),
|
|
Lb = I.button(({ theme: e }) => ({
|
|
all: "unset",
|
|
display: "flex",
|
|
alignItems: "center",
|
|
gap: 10,
|
|
color: "currentColor",
|
|
fontSize: e.typography.size.s2 - 1,
|
|
padding: "0 10px",
|
|
}));
|
|
|
|
// src/manager/components/mobile/navigation/MobileMenuDrawer.tsx
|
|
var Hl = /* @__PURE__ */ a(({ children: e, id: t }) => {
|
|
let o = U(null),
|
|
i = U(null),
|
|
{
|
|
isMobileMenuOpen: r,
|
|
setMobileMenuOpen: n,
|
|
isMobileAboutOpen: l,
|
|
setMobileAboutOpen: u,
|
|
} = ge(),
|
|
c = A(() => {
|
|
n(!1);
|
|
}, [n]),
|
|
d = wr({
|
|
isOpen: r,
|
|
onClose: c,
|
|
}),
|
|
p = A(() => {
|
|
d.current && d.current.hasAttribute("open") && d.current.close();
|
|
}, []);
|
|
return /* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
ft,
|
|
{
|
|
nodeRef: d,
|
|
in: r,
|
|
timeout: 300,
|
|
mountOnEnter: !0,
|
|
unmountOnExit: !0,
|
|
onExited: () => {
|
|
(u(!1), p());
|
|
},
|
|
},
|
|
(f) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
Nb,
|
|
{ ref: d, state: f, id: t, "aria-label": "Navigation menu" },
|
|
/* @__PURE__ */ s.createElement(
|
|
ft,
|
|
{
|
|
nodeRef: o,
|
|
in: !l,
|
|
timeout: 300,
|
|
},
|
|
(h) =>
|
|
/* @__PURE__ */ s.createElement(Fb, { ref: o, state: h }, e),
|
|
),
|
|
/* @__PURE__ */ s.createElement(Bl, null),
|
|
),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
ft,
|
|
{
|
|
nodeRef: i,
|
|
in: r,
|
|
timeout: 300,
|
|
mountOnEnter: !0,
|
|
unmountOnExit: !0,
|
|
},
|
|
(f) =>
|
|
/* @__PURE__ */ s.createElement(Rb, {
|
|
ref: i,
|
|
state: f,
|
|
onClick: c,
|
|
"aria-label": "Close navigation menu",
|
|
}),
|
|
),
|
|
);
|
|
}, "MobileMenuDrawer"),
|
|
Nb = I.dialog(({ theme: e, state: t }) => ({
|
|
position: "fixed",
|
|
bottom: 0,
|
|
left: 0,
|
|
right: 0,
|
|
top: "auto",
|
|
boxSizing: "border-box",
|
|
width: "100%",
|
|
maxWidth: "100vw",
|
|
background: e.background.content,
|
|
height: "80%",
|
|
zIndex: 11,
|
|
borderRadius: "10px 10px 0 0",
|
|
transition: `all ${300}ms ease-in-out`,
|
|
overflow: "hidden",
|
|
transform: `${
|
|
t === "entering" || t === "entered"
|
|
? "translateY(0)"
|
|
: t === "exiting" || t === "exited"
|
|
? "translateY(100%)"
|
|
: "translateY\
|
|
(0)"
|
|
}`,
|
|
border: "none",
|
|
padding: 0,
|
|
margin: 0,
|
|
"&[open]": {
|
|
position: "fixed",
|
|
bottom: 0,
|
|
left: 0,
|
|
right: 0,
|
|
top: "auto",
|
|
width: "100%",
|
|
maxWidth: "100vw",
|
|
margin: 0,
|
|
},
|
|
})),
|
|
Fb = I.div(({ theme: e, state: t }) => ({
|
|
position: "absolute",
|
|
width: "100%",
|
|
height: "100%",
|
|
top: 0,
|
|
left: 0,
|
|
zIndex: 1,
|
|
transition: `all ${300}ms ease-in-out`,
|
|
overflow: "hidden",
|
|
opacity: `${t === "entered" || t === "entering" ? 1 : t === "exiting" || t === "exited" ? 0 : 1}`,
|
|
transform: `${(() => {
|
|
switch (t) {
|
|
case "entering":
|
|
case "entered":
|
|
return "translateX(0)";
|
|
case "exiting":
|
|
case "exited":
|
|
return "translateX(-20px)";
|
|
default:
|
|
return "translateX(0)";
|
|
}
|
|
})()}`,
|
|
})),
|
|
Rb = I.div(({ state: e }) => ({
|
|
position: "fixed",
|
|
boxSizing: "border-box",
|
|
background: "rgba(0, 0, 0, 0.5)",
|
|
top: 0,
|
|
bottom: 0,
|
|
right: 0,
|
|
left: 0,
|
|
zIndex: 10,
|
|
transition: `all ${300}ms ease-in-out`,
|
|
cursor: "pointer",
|
|
opacity: `${(() => {
|
|
switch (e) {
|
|
case "entering":
|
|
case "entered":
|
|
return 1;
|
|
case "exiting":
|
|
case "exited":
|
|
return 0;
|
|
default:
|
|
return 0;
|
|
}
|
|
})()}`,
|
|
"&:hover": {
|
|
background: "rgba(0, 0, 0, 0.6)",
|
|
},
|
|
}));
|
|
|
|
// src/manager/components/mobile/navigation/MobileNavigation.tsx
|
|
function Bb(e, t) {
|
|
let o = { ...(e || {}) };
|
|
return (
|
|
Object.values(t).forEach((i) => {
|
|
i.index && Object.assign(o, i.index);
|
|
}),
|
|
o
|
|
);
|
|
}
|
|
a(Bb, "combineIndexes");
|
|
var Hb = /* @__PURE__ */ a(() => {
|
|
let { index: e, refs: t } = Ne(),
|
|
o = oe(),
|
|
i = o.getCurrentStoryData();
|
|
if (!i) return "";
|
|
let r = Bb(e, t || {}),
|
|
n = i.renderLabel?.(i, o) || i.name,
|
|
l = r[i.id];
|
|
for (; l && "parent" in l && l.parent && r[l.parent] && n.length < 24; )
|
|
((l = r[l.parent]), (n = `${l.renderLabel?.(l, o) || l.name}/${n}`));
|
|
return n;
|
|
}, "useFullStoryName"),
|
|
zl = /* @__PURE__ */ a(({ menu: e, panel: t, showPanel: o, ...i }) => {
|
|
let {
|
|
isMobileMenuOpen: r,
|
|
isMobilePanelOpen: n,
|
|
setMobileMenuOpen: l,
|
|
setMobilePanelOpen: u,
|
|
} = ge(),
|
|
c = Hb(),
|
|
d = /* @__PURE__ */ a(() => {
|
|
u(!1);
|
|
}, "handleAddonPanelClose");
|
|
return /* @__PURE__ */ s.createElement(
|
|
zb,
|
|
{ ...i },
|
|
/* @__PURE__ */ s.createElement(Hl, { id: "storybook-mobile-menu" }, e),
|
|
/* @__PURE__ */ s.createElement(
|
|
Nl,
|
|
{
|
|
id: "storybook-mobile-addon-panel",
|
|
isOpen: n,
|
|
onClose: d,
|
|
},
|
|
t,
|
|
),
|
|
!n &&
|
|
/* @__PURE__ */ s.createElement(
|
|
Wb,
|
|
{
|
|
className: "sb-bar",
|
|
role: "toolbar",
|
|
"aria-label": "Mobile navigation controls",
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
Vb,
|
|
{
|
|
onClick: () => l(!r),
|
|
"aria-label": "Open navigation menu",
|
|
"aria-expanded": r,
|
|
"aria-controls": "storybook-mobile-menu",
|
|
},
|
|
/* @__PURE__ */ s.createElement(Io, null),
|
|
/* @__PURE__ */ s.createElement(jb, null, c),
|
|
),
|
|
o &&
|
|
/* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{
|
|
onClick: () => u(!0),
|
|
"aria-label": "Open addon panel",
|
|
"aria-expanded": n,
|
|
"aria-controls": "storybook-mobile-addon-panel",
|
|
},
|
|
/* @__PURE__ */ s.createElement(Tn, null),
|
|
),
|
|
),
|
|
);
|
|
}, "MobileNavigation"),
|
|
zb = I.div(({ theme: e }) => ({
|
|
bottom: 0,
|
|
left: 0,
|
|
width: "100%",
|
|
zIndex: 10,
|
|
background: e.barBg,
|
|
borderTop: `1px solid ${e.appBorderColor}`,
|
|
})),
|
|
Wb = I.div({
|
|
display: "flex",
|
|
alignItems: "center",
|
|
justifyContent: "space-between",
|
|
width: "100%",
|
|
height: 40,
|
|
padding: "0 6px",
|
|
}),
|
|
Vb = I.button(({ theme: e }) => ({
|
|
all: "unset",
|
|
display: "flex",
|
|
alignItems: "center",
|
|
gap: 10,
|
|
color: e.barTextColor,
|
|
fontSize: `${e.typography.size.s2 - 1}px`,
|
|
padding: "0 7px",
|
|
fontWeight: e.typography.weight.bold,
|
|
WebkitLineClamp: 1,
|
|
"> svg": {
|
|
width: 14,
|
|
height: 14,
|
|
flexShrink: 0,
|
|
},
|
|
"&:focus-visible": {
|
|
outline: `2px solid ${e.color.secondary}`,
|
|
outlineOffset: 2,
|
|
},
|
|
})),
|
|
jb = I.p({
|
|
display: "-webkit-box",
|
|
WebkitLineClamp: 1,
|
|
WebkitBoxOrient: "vertical",
|
|
overflow: "hidden",
|
|
});
|
|
|
|
// src/manager/components/layout/useDragging.ts
|
|
var Wl = 30,
|
|
Tr = 240,
|
|
Cr = 270,
|
|
Vl = 0.9;
|
|
function jl(e, t, o) {
|
|
return Math.min(Math.max(e, t), o);
|
|
}
|
|
a(jl, "clamp");
|
|
function Kl(e, t, o) {
|
|
return t + (o - t) * e;
|
|
}
|
|
a(Kl, "interpolate");
|
|
function $l({ setState: e, isPanelShown: t, isDesktop: o }) {
|
|
let i = U(null),
|
|
r = U(null);
|
|
return (
|
|
H(() => {
|
|
let n = i.current,
|
|
l = r.current,
|
|
u = document.querySelector("#storybook-preview-wrapper"),
|
|
c = null,
|
|
d = /* @__PURE__ */ a((h) => {
|
|
(h.preventDefault(),
|
|
e((y) => ({
|
|
...y,
|
|
isDragging: !0,
|
|
})),
|
|
h.currentTarget === n ? (c = n) : h.currentTarget === l && (c = l),
|
|
window.addEventListener("mousemove", f),
|
|
window.addEventListener("mouseup", p),
|
|
u && (u.style.pointerEvents = "none"));
|
|
}, "onDragStart"),
|
|
p = /* @__PURE__ */ a((h) => {
|
|
(e((y) =>
|
|
c === l && y.navSize < Tr && y.navSize > 0
|
|
? {
|
|
...y,
|
|
isDragging: !1,
|
|
navSize: Tr,
|
|
}
|
|
: c === n &&
|
|
y.panelPosition === "right" &&
|
|
y.rightPanelWidth < Cr &&
|
|
y.rightPanelWidth > 0
|
|
? {
|
|
...y,
|
|
isDragging: !1,
|
|
rightPanelWidth: Cr,
|
|
}
|
|
: {
|
|
...y,
|
|
isDragging: !1,
|
|
},
|
|
),
|
|
window.removeEventListener("mousemove", f),
|
|
window.removeEventListener("mouseup", p),
|
|
u?.removeAttribute("style"),
|
|
(c = null));
|
|
}, "onDragEnd"),
|
|
f = /* @__PURE__ */ a((h) => {
|
|
if (h.buttons === 0) {
|
|
p(h);
|
|
return;
|
|
}
|
|
e((y) => {
|
|
if (c === l) {
|
|
let m = h.clientX;
|
|
return m === y.navSize
|
|
? y
|
|
: m <= Wl
|
|
? {
|
|
...y,
|
|
navSize: 0,
|
|
}
|
|
: m <= Tr
|
|
? {
|
|
...y,
|
|
navSize: Kl(Vl, m, Tr),
|
|
}
|
|
: {
|
|
...y,
|
|
// @ts-expect-error (non strict)
|
|
navSize: jl(m, 0, h.view.innerWidth),
|
|
};
|
|
}
|
|
if (c === n) {
|
|
let m =
|
|
y.panelPosition === "bottom"
|
|
? "bottomPanelHeight"
|
|
: "rightPanelWidth",
|
|
b =
|
|
y.panelPosition === "bottom"
|
|
? // @ts-expect-error (non strict)
|
|
h.view.innerHeight - h.clientY
|
|
: // @ts-expect-error (non strict)
|
|
h.view.innerWidth - h.clientX;
|
|
if (b === y[m]) return y;
|
|
if (b <= Wl)
|
|
return {
|
|
...y,
|
|
[m]: 0,
|
|
};
|
|
if (y.panelPosition === "right" && b <= Cr)
|
|
return {
|
|
...y,
|
|
[m]: Kl(Vl, b, Cr),
|
|
};
|
|
let x =
|
|
// @ts-expect-error (non strict)
|
|
y.panelPosition === "bottom"
|
|
? h.view.innerHeight
|
|
: h.view.innerWidth;
|
|
return {
|
|
...y,
|
|
[m]: jl(b, 0, x),
|
|
};
|
|
}
|
|
return y;
|
|
});
|
|
}, "onDrag");
|
|
return (
|
|
n?.addEventListener("mousedown", d),
|
|
l?.addEventListener("mousedown", d),
|
|
() => {
|
|
(n?.removeEventListener("mousedown", d),
|
|
l?.removeEventListener("mousedown", d),
|
|
u?.removeAttribute("style"));
|
|
}
|
|
);
|
|
}, [
|
|
// we need to rerun this effect when the panel is shown/hidden or when changing between mobile/desktop to re-attach the event listeners
|
|
t,
|
|
o,
|
|
e,
|
|
]),
|
|
{ panelResizerRef: i, sidebarResizerRef: r }
|
|
);
|
|
}
|
|
a($l, "useDragging");
|
|
|
|
// src/manager/components/layout/Layout.tsx
|
|
var Kb = 100,
|
|
Ul = /* @__PURE__ */ a(
|
|
(e, t) =>
|
|
e.navSize === t.navSize &&
|
|
e.bottomPanelHeight === t.bottomPanelHeight &&
|
|
e.rightPanelWidth === t.rightPanelWidth &&
|
|
e.panelPosition === t.panelPosition,
|
|
"layoutStateIsEqual",
|
|
),
|
|
$b = /* @__PURE__ */ a(
|
|
({
|
|
api: e,
|
|
managerLayoutState: t,
|
|
setManagerLayoutState: o,
|
|
isDesktop: i,
|
|
hasTab: r,
|
|
}) => {
|
|
let n = s.useRef(t),
|
|
[l, u] = K({
|
|
...t,
|
|
isDragging: !1,
|
|
});
|
|
(H(() => {
|
|
l.isDragging || // don't interrupt user's drag
|
|
Ul(t, n.current) ||
|
|
((n.current = t), u((x) => ({ ...x, ...t })));
|
|
}, [l.isDragging, t, u]),
|
|
Xt(() => {
|
|
if (
|
|
l.isDragging || // wait with syncing managerLayoutState until user is done dragging
|
|
Ul(t, l)
|
|
)
|
|
return;
|
|
let x = {
|
|
navSize: l.navSize,
|
|
bottomPanelHeight: l.bottomPanelHeight,
|
|
rightPanelWidth: l.rightPanelWidth,
|
|
};
|
|
((n.current = {
|
|
...n.current,
|
|
...x,
|
|
}),
|
|
o(x));
|
|
}, [l, o]));
|
|
let c = t.viewMode !== "story" && t.viewMode !== "docs",
|
|
d = t.viewMode === "story" && !r,
|
|
{ panelResizerRef: p, sidebarResizerRef: f } = $l({
|
|
setState: u,
|
|
isPanelShown: d,
|
|
isDesktop: i,
|
|
}),
|
|
{
|
|
navSize: h,
|
|
rightPanelWidth: y,
|
|
bottomPanelHeight: m,
|
|
} = l.isDragging ? l : t;
|
|
return {
|
|
navSize: e.getNavSizeWithCustomisations?.(h) ?? h,
|
|
rightPanelWidth: y,
|
|
bottomPanelHeight: m,
|
|
panelPosition: t.panelPosition,
|
|
panelResizerRef: p,
|
|
sidebarResizerRef: f,
|
|
showPages: c,
|
|
showPanel: d,
|
|
isDragging: l.isDragging,
|
|
};
|
|
},
|
|
"useLayoutSyncingState",
|
|
),
|
|
Gl = /* @__PURE__ */ a(
|
|
({ children: e }) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
Ga,
|
|
{ path: /(^\/story|docs|onboarding\/|^\/$)/, startsWith: !1 },
|
|
({ match: t }) =>
|
|
/* @__PURE__ */ s.createElement(Yb, { shown: !!t }, e),
|
|
),
|
|
"MainContentMatcher",
|
|
),
|
|
Ub = I(zl)({
|
|
order: 1,
|
|
}),
|
|
Yl = /* @__PURE__ */ a(
|
|
({ managerLayoutState: e, setManagerLayoutState: t, hasTab: o, ...i }) => {
|
|
let { isDesktop: r, isMobile: n } = ge(),
|
|
l = oe(),
|
|
{
|
|
navSize: u,
|
|
rightPanelWidth: c,
|
|
bottomPanelHeight: d,
|
|
panelPosition: p,
|
|
panelResizerRef: f,
|
|
sidebarResizerRef: h,
|
|
showPages: y,
|
|
showPanel: m,
|
|
isDragging: b,
|
|
} = $b({
|
|
api: l,
|
|
managerLayoutState: e,
|
|
setManagerLayoutState: t,
|
|
isDesktop: r,
|
|
hasTab: o,
|
|
});
|
|
return /* @__PURE__ */ s.createElement(
|
|
Gb,
|
|
{
|
|
navSize: u,
|
|
rightPanelWidth: c,
|
|
bottomPanelHeight: d,
|
|
panelPosition: e.panelPosition,
|
|
isDragging: b,
|
|
viewMode: e.viewMode,
|
|
showPanel: m,
|
|
},
|
|
y && /* @__PURE__ */ s.createElement(Qb, null, i.slotPages),
|
|
r &&
|
|
/* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
qb,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(ql, { ref: h }),
|
|
i.slotSidebar,
|
|
),
|
|
/* @__PURE__ */ s.createElement(Gl, null, i.slotMain),
|
|
m &&
|
|
/* @__PURE__ */ s.createElement(
|
|
Xb,
|
|
{ position: p },
|
|
/* @__PURE__ */ s.createElement(ql, {
|
|
orientation: p === "bottom" ? "horizontal" : "vertical",
|
|
position: p === "bottom" ? "left" : "right",
|
|
ref: f,
|
|
}),
|
|
i.slotPanel,
|
|
),
|
|
),
|
|
n &&
|
|
/* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(Ub, {
|
|
menu: i.slotSidebar,
|
|
panel: i.slotPanel,
|
|
showPanel: m,
|
|
}),
|
|
/* @__PURE__ */ s.createElement(Gl, null, i.slotMain),
|
|
/* @__PURE__ */ s.createElement(Ml, null),
|
|
),
|
|
);
|
|
},
|
|
"Layout",
|
|
),
|
|
Gb = I.div(
|
|
({
|
|
navSize: e,
|
|
rightPanelWidth: t,
|
|
bottomPanelHeight: o,
|
|
viewMode: i,
|
|
panelPosition: r,
|
|
showPanel: n,
|
|
}) => ({
|
|
width: "100%",
|
|
height: ["100vh", "100dvh"],
|
|
// This array is a special Emotion syntax to set a fallback if 100dvh is not supported
|
|
overflow: "hidden",
|
|
display: "flex",
|
|
flexDirection: "column",
|
|
colorScheme: "light dark",
|
|
[Qe]: {
|
|
display: "grid",
|
|
gap: 0,
|
|
gridTemplateColumns: `minmax(0, ${e}px) minmax(${Kb}px, 1fr) minmax(0, ${t}px)`,
|
|
gridTemplateRows: `1fr minmax(0, ${o}px)`,
|
|
gridTemplateAreas:
|
|
i === "docs" || !n
|
|
? `"sidebar content content"
|
|
"sidebar content content"`
|
|
: r === "right"
|
|
? `"sidebar content panel"
|
|
"sidebar content panel"`
|
|
: `"sidebar content content"
|
|
"sidebar panel panel"`,
|
|
},
|
|
}),
|
|
),
|
|
qb = I.div(({ theme: e }) => ({
|
|
backgroundColor: e.background.app,
|
|
gridArea: "sidebar",
|
|
position: "relative",
|
|
borderRight: `1px solid ${e.color.border}`,
|
|
})),
|
|
Yb = I.div(({ theme: e, shown: t }) => ({
|
|
flex: 1,
|
|
position: "relative",
|
|
backgroundColor: e.background.content,
|
|
display: t ? "grid" : "none",
|
|
// This is needed to make the content container fill the available space
|
|
overflow: "auto",
|
|
[Qe]: {
|
|
flex: "auto",
|
|
gridArea: "content",
|
|
},
|
|
})),
|
|
Qb = I.div(({ theme: e }) => ({
|
|
gridRowStart: "sidebar-start",
|
|
gridRowEnd: "-1",
|
|
gridColumnStart: "sidebar-end",
|
|
gridColumnEnd: "-1",
|
|
backgroundColor: e.background.content,
|
|
zIndex: 1,
|
|
})),
|
|
Xb = I.div(({ theme: e, position: t }) => ({
|
|
gridArea: "panel",
|
|
position: "relative",
|
|
backgroundColor: e.background.content,
|
|
borderTop: t === "bottom" ? `1px solid ${e.color.border}` : void 0,
|
|
borderLeft: t === "right" ? `1px solid ${e.color.border}` : void 0,
|
|
})),
|
|
ql = I.div(
|
|
({ theme: e }) => ({
|
|
position: "absolute",
|
|
opacity: 0,
|
|
transition: "opacity 0.2s ease-in-out",
|
|
zIndex: 100,
|
|
"&:after": {
|
|
content: '""',
|
|
display: "block",
|
|
backgroundColor: e.color.secondary,
|
|
},
|
|
"&:hover": {
|
|
opacity: 1,
|
|
},
|
|
}),
|
|
({ orientation: e = "vertical", position: t = "left" }) =>
|
|
e === "vertical"
|
|
? {
|
|
width: t === "left" ? 10 : 13,
|
|
height: "100%",
|
|
top: 0,
|
|
right: t === "left" ? "-7px" : void 0,
|
|
left: t === "right" ? "-7px" : void 0,
|
|
"&:after": {
|
|
width: 1,
|
|
height: "100%",
|
|
marginLeft: t === "left" ? 3 : 6,
|
|
},
|
|
"&:hover": {
|
|
cursor: "col-resize",
|
|
},
|
|
}
|
|
: {
|
|
width: "100%",
|
|
height: "13px",
|
|
top: "-7px",
|
|
left: 0,
|
|
"&:after": {
|
|
width: "100%",
|
|
height: 1,
|
|
marginTop: 6,
|
|
},
|
|
"&:hover": {
|
|
cursor: "row-resize",
|
|
},
|
|
},
|
|
);
|
|
|
|
// global-externals:storybook/internal/types
|
|
var VO = __STORYBOOK_TYPES__,
|
|
{ Addon_TypesEnum: Ce } = __STORYBOOK_TYPES__;
|
|
|
|
// src/core-events/index.ts
|
|
var Ql = /* @__PURE__ */ ((N) => (
|
|
(N.CHANNEL_WS_DISCONNECT = "channelWSDisconnect"),
|
|
(N.CHANNEL_CREATED = "channelCreated"),
|
|
(N.CONFIG_ERROR =
|
|
"c\
|
|
onfigError"),
|
|
(N.STORY_INDEX_INVALIDATED = "storyIndexInvalidated"),
|
|
(N.STORY_SPECIFIED = "storySpecified"),
|
|
(N.SET_CONFIG = "setConfig"),
|
|
(N.SET_STORIES = "setStories"),
|
|
(N.SET_INDEX = "setIndex"),
|
|
(N.SET_CURRENT_STORY = "setCurrentStory"),
|
|
(N.CURRENT_STORY_WAS_SET = "currentStoryWasSet"),
|
|
(N.FORCE_RE_RENDER = "forceReRender"),
|
|
(N.FORCE_REMOUNT = "forceRemount"),
|
|
(N.PRELOAD_ENTRIES = "preloadStories"),
|
|
(N.STORY_PREPARED = "storyPrepared"),
|
|
(N.DOCS_PREPARED = "docsPrepared"),
|
|
(N.STORY_CHANGED = "storyChanged"),
|
|
(N.STORY_UNCHANGED = "storyUnchanged"),
|
|
(N.STORY_RENDERED = "storyRendered"),
|
|
(N.STORY_FINISHED = "storyFinished"),
|
|
(N.STORY_MISSING = "storyMissing"),
|
|
(N.STORY_ERRORED = "storyErrored"),
|
|
(N.STORY_THREW_EXCEPTION = "storyThrewException"),
|
|
(N.STORY_RENDER_PHASE_CHANGED = "storyRenderPhaseChanged"),
|
|
(N.STORY_HOT_UPDATED = "storyHotUpdated"),
|
|
(N.PLAY_FUNCTION_THREW_EXCEPTION = "playFunctionThrewException"),
|
|
(N.UNHANDLED_ERRORS_WHILE_PLAYING = "unhandledErrorsWhilePlaying"),
|
|
(N.UPDATE_STORY_ARGS = "updateStoryArgs"),
|
|
(N.STORY_ARGS_UPDATED = "storyArgsUpdated"),
|
|
(N.RESET_STORY_ARGS =
|
|
"res\
|
|
etStoryArgs"),
|
|
(N.SET_FILTER = "setFilter"),
|
|
(N.SET_GLOBALS = "setGlobals"),
|
|
(N.UPDATE_GLOBALS = "updateGlobals"),
|
|
(N.GLOBALS_UPDATED =
|
|
"globalsUpda\
|
|
ted"),
|
|
(N.REGISTER_SUBSCRIPTION = "registerSubscription"),
|
|
(N.PREVIEW_KEYDOWN = "previewKeydown"),
|
|
(N.PREVIEW_BUILDER_PROGRESS =
|
|
"preview_builder_\
|
|
progress"),
|
|
(N.SELECT_STORY = "selectStory"),
|
|
(N.STORIES_COLLAPSE_ALL = "storiesCollapseAll"),
|
|
(N.STORIES_EXPAND_ALL = "storiesExpandAll"),
|
|
(N.DOCS_RENDERED = "docsRendered"),
|
|
(N.SHARED_STATE_CHANGED = "sharedStateChanged"),
|
|
(N.SHARED_STATE_SET = "sharedStateSet"),
|
|
(N.NAVIGATE_URL = "navigateUrl"),
|
|
(N.UPDATE_QUERY_PARAMS = "updateQueryParams"),
|
|
(N.REQUEST_WHATS_NEW_DATA = "requestWhatsNewData"),
|
|
(N.RESULT_WHATS_NEW_DATA = "resultWhatsNewData"),
|
|
(N.SET_WHATS_NEW_CACHE = "setWhatsNewCache"),
|
|
(N.TOGGLE_WHATS_NEW_NOTIFICATIONS = "toggleWhatsNewNotifications"),
|
|
(N.TELEMETRY_ERROR = "telemetryError"),
|
|
(N.FILE_COMPONENT_SEARCH_REQUEST = "fileComponentSearchRequest"),
|
|
(N.FILE_COMPONENT_SEARCH_RESPONSE = "fileComponentSearchResponse"),
|
|
(N.SAVE_STORY_REQUEST = "saveStoryRequest"),
|
|
(N.SAVE_STORY_RESPONSE = "saveStoryResponse"),
|
|
(N.ARGTYPES_INFO_REQUEST = "argtypesInfoRequest"),
|
|
(N.ARGTYPES_INFO_RESPONSE = "argtypesInfoResponse"),
|
|
(N.CREATE_NEW_STORYFILE_REQUEST = "createNewStoryfileRequest"),
|
|
(N.CREATE_NEW_STORYFILE_RESPONSE = "createNewStoryfileResponse"),
|
|
N
|
|
))(Ql || {});
|
|
var {
|
|
CHANNEL_WS_DISCONNECT: KO,
|
|
CHANNEL_CREATED: $O,
|
|
CONFIG_ERROR: UO,
|
|
CREATE_NEW_STORYFILE_REQUEST: GO,
|
|
CREATE_NEW_STORYFILE_RESPONSE: qO,
|
|
CURRENT_STORY_WAS_SET: YO,
|
|
DOCS_PREPARED: QO,
|
|
DOCS_RENDERED: XO,
|
|
FILE_COMPONENT_SEARCH_REQUEST: ZO,
|
|
FILE_COMPONENT_SEARCH_RESPONSE: JO,
|
|
FORCE_RE_RENDER: eP,
|
|
FORCE_REMOUNT: tP,
|
|
GLOBALS_UPDATED: oP,
|
|
NAVIGATE_URL: rP,
|
|
PLAY_FUNCTION_THREW_EXCEPTION: nP,
|
|
UNHANDLED_ERRORS_WHILE_PLAYING: iP,
|
|
PRELOAD_ENTRIES: sP,
|
|
PREVIEW_BUILDER_PROGRESS: aP,
|
|
PREVIEW_KEYDOWN: lP,
|
|
REGISTER_SUBSCRIPTION: uP,
|
|
RESET_STORY_ARGS: cP,
|
|
SELECT_STORY: pP,
|
|
SET_CONFIG: dP,
|
|
SET_CURRENT_STORY: fP,
|
|
SET_FILTER: mP,
|
|
SET_GLOBALS: hP,
|
|
SET_INDEX: gP,
|
|
SET_STORIES: yP,
|
|
SHARED_STATE_CHANGED: bP,
|
|
SHARED_STATE_SET: vP,
|
|
STORIES_COLLAPSE_ALL: xP,
|
|
STORIES_EXPAND_ALL: IP,
|
|
STORY_ARGS_UPDATED: SP,
|
|
STORY_CHANGED: wP,
|
|
STORY_ERRORED: EP,
|
|
STORY_INDEX_INVALIDATED: TP,
|
|
STORY_MISSING: CP,
|
|
STORY_PREPARED: Xl,
|
|
STORY_RENDER_PHASE_CHANGED: _P,
|
|
STORY_RENDERED: kP,
|
|
STORY_FINISHED: OP,
|
|
STORY_SPECIFIED: PP,
|
|
STORY_THREW_EXCEPTION: AP,
|
|
STORY_UNCHANGED: DP,
|
|
STORY_HOT_UPDATED: MP,
|
|
UPDATE_GLOBALS: LP,
|
|
UPDATE_QUERY_PARAMS: NP,
|
|
UPDATE_STORY_ARGS: FP,
|
|
REQUEST_WHATS_NEW_DATA: RP,
|
|
RESULT_WHATS_NEW_DATA: BP,
|
|
SET_WHATS_NEW_CACHE: HP,
|
|
TOGGLE_WHATS_NEW_NOTIFICATIONS: zP,
|
|
TELEMETRY_ERROR: WP,
|
|
SAVE_STORY_REQUEST: VP,
|
|
SAVE_STORY_RESPONSE: jP,
|
|
ARGTYPES_INFO_REQUEST: KP,
|
|
ARGTYPES_INFO_RESPONSE: $P,
|
|
} = Ql;
|
|
|
|
// src/manager/components/panel/Panel.tsx
|
|
var Pi = class Pi extends Le {
|
|
constructor(t) {
|
|
(super(t), (this.state = { hasError: !1 }));
|
|
}
|
|
componentDidCatch(t, o) {
|
|
(this.setState({ hasError: !0 }), console.error(t, o));
|
|
}
|
|
// @ts-expect-error (we know this is broken)
|
|
render() {
|
|
let { hasError: t } = this.state,
|
|
{ children: o } = this.props;
|
|
return t
|
|
? /* @__PURE__ */ s.createElement("h1", null, "Something went wrong.")
|
|
: o;
|
|
}
|
|
};
|
|
a(Pi, "SafeTab");
|
|
var ki = Pi,
|
|
Oi = s.memo(
|
|
({
|
|
panels: e,
|
|
shortcuts: t,
|
|
actions: o,
|
|
selectedPanel: i = null,
|
|
panelPosition: r = "right",
|
|
absolute: n = !0,
|
|
}) => {
|
|
let { isDesktop: l, setMobilePanelOpen: u } = ge();
|
|
return /* @__PURE__ */ s.createElement(
|
|
Oa,
|
|
{
|
|
absolute: n,
|
|
...(i && e[i] ? { selected: i } : {}),
|
|
menuName: "Addons",
|
|
actions: o,
|
|
showToolsWhenEmpty: !0,
|
|
emptyState: /* @__PURE__ */ s.createElement(_a, {
|
|
title: "Storybook add-ons",
|
|
description: /* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
"Integrate your tools with Storybook to connect workflows and unl\
|
|
ock advanced features.",
|
|
),
|
|
footer: /* @__PURE__ */ s.createElement(
|
|
Pe,
|
|
{
|
|
href: "https://storybook.js.org/integrations",
|
|
target: "_blank",
|
|
withArrow: !0,
|
|
},
|
|
/* @__PURE__ */ s.createElement(Pt, null),
|
|
" Explore integrations catalog",
|
|
),
|
|
}),
|
|
tools: /* @__PURE__ */ s.createElement(
|
|
Zb,
|
|
null,
|
|
l
|
|
? /* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{
|
|
key: "position",
|
|
onClick: o.togglePosition,
|
|
title: `Change addon orientation [${Ye(
|
|
t.panelPosition,
|
|
)}]`,
|
|
},
|
|
r === "bottom"
|
|
? /* @__PURE__ */ s.createElement(wo, null)
|
|
: /* @__PURE__ */ s.createElement(yo, null),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{
|
|
key: "visibility",
|
|
onClick: o.toggleVisibility,
|
|
title: `Hide addons [${Ye(t.togglePanel)}]`,
|
|
},
|
|
/* @__PURE__ */ s.createElement(je, null),
|
|
),
|
|
)
|
|
: /* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{ onClick: () => u(!1), "aria-label": "Close addon panel" },
|
|
/* @__PURE__ */ s.createElement(je, null),
|
|
),
|
|
),
|
|
id: "storybook-panel-root",
|
|
},
|
|
Object.entries(e).map(([c, d]) =>
|
|
// @ts-expect-error (we know this is broken)
|
|
/* @__PURE__ */ s.createElement(
|
|
ki,
|
|
{
|
|
key: c,
|
|
id: c,
|
|
title:
|
|
typeof d.title == "function"
|
|
? /* @__PURE__ */ s.createElement(d.title, null)
|
|
: d.title,
|
|
},
|
|
d.render,
|
|
),
|
|
),
|
|
);
|
|
},
|
|
);
|
|
Oi.displayName = "AddonPanel";
|
|
var Zb = I.div({
|
|
display: "flex",
|
|
alignItems: "center",
|
|
gap: 6,
|
|
});
|
|
|
|
// src/manager/container/Panel.tsx
|
|
var Jb = /* @__PURE__ */ a((e) => {
|
|
let t = oe(),
|
|
o = Ne(),
|
|
[i, r] = K(t.getCurrentStoryData());
|
|
Ia(
|
|
{
|
|
[Xl]: () => {
|
|
r(t.getCurrentStoryData());
|
|
},
|
|
},
|
|
[],
|
|
);
|
|
let { parameters: n, type: l } = i ?? {},
|
|
u = G(
|
|
() => ({
|
|
onSelect: /* @__PURE__ */ a((d) => t.setSelectedPanel(d), "onSelect"),
|
|
toggleVisibility: /* @__PURE__ */ a(
|
|
() => t.togglePanel(),
|
|
"toggleVisibility",
|
|
),
|
|
togglePosition: /* @__PURE__ */ a(
|
|
() => t.togglePanelPosition(),
|
|
"togglePosition",
|
|
),
|
|
}),
|
|
[t],
|
|
),
|
|
c = G(() => {
|
|
let d = t.getElements(Ce.PANEL);
|
|
if (!d || l !== "story") return d;
|
|
let p = {};
|
|
return (
|
|
Object.entries(d).forEach(([f, h]) => {
|
|
let { paramKey: y } = h;
|
|
(y && n && n[y] && n[y].disable) ||
|
|
h.disabled === !0 ||
|
|
(typeof h.disabled == "function" && h.disabled(n)) ||
|
|
(p[f] = h);
|
|
}),
|
|
p
|
|
);
|
|
}, [t, l, n]);
|
|
return /* @__PURE__ */ s.createElement(Oi, {
|
|
panels: c,
|
|
selectedPanel: t.getSelectedPanel(),
|
|
panelPosition: o.layout.panelPosition,
|
|
actions: u,
|
|
shortcuts: t.getShortcutKeys(),
|
|
...e,
|
|
});
|
|
}, "Panel"),
|
|
Zl = Jb;
|
|
|
|
// src/manager/container/Preview.tsx
|
|
var No = Ve(Di(), 1);
|
|
|
|
// src/manager/components/preview/Iframe.tsx
|
|
var ev = I.iframe(({ theme: e }) => ({
|
|
backgroundColor: e.background.preview,
|
|
display: "block",
|
|
boxSizing: "content-box",
|
|
height: "100%",
|
|
width: "100%",
|
|
border: "0 none",
|
|
transition: "background-position 0s, visibility 0s",
|
|
backgroundPosition: "-1px -1px, -1px -1px, -1px -1px, -1px -1px",
|
|
margin: "auto",
|
|
boxShadow: "0 0 100px 100vw rgba(0,0,0,0.5)",
|
|
}));
|
|
function eu(e) {
|
|
let {
|
|
active: t,
|
|
id: o,
|
|
title: i,
|
|
src: r,
|
|
allowFullScreen: n,
|
|
scale: l,
|
|
...u
|
|
} = e,
|
|
c = s.useRef(null);
|
|
return /* @__PURE__ */ s.createElement(
|
|
Pa.IFrame,
|
|
{ scale: l, active: t, iFrameRef: c },
|
|
/* @__PURE__ */ s.createElement(ev, {
|
|
"data-is-storybook": t ? "true" : "false",
|
|
onLoad: (d) => d.currentTarget.setAttribute("data-is-loaded", "true"),
|
|
id: o,
|
|
title: i,
|
|
src: r,
|
|
allow: "clipboard-write;",
|
|
allowFullScreen: n,
|
|
ref: c,
|
|
...u,
|
|
}),
|
|
);
|
|
}
|
|
a(eu, "IFrame");
|
|
|
|
// src/manager/components/preview/utils/stringifyQueryParams.tsx
|
|
var fu = Ve(du(), 1);
|
|
var mu = /* @__PURE__ */ a((e) => {
|
|
let t = (0, fu.stringify)(e);
|
|
return t === "" ? "" : `&${t}`;
|
|
}, "stringifyQueryParams");
|
|
|
|
// src/manager/components/preview/FramesRenderer.tsx
|
|
var Cv = /* @__PURE__ */ a(
|
|
(e, t) => (e && t[e] ? `storybook-ref-${e}` : "storybook-preview-iframe"),
|
|
"getActive",
|
|
),
|
|
_v = I(he)(({ theme: e }) => ({
|
|
display: "none",
|
|
"@media (min-width: 600px)": {
|
|
position: "absolute",
|
|
display: "block",
|
|
top: 10,
|
|
right: 15,
|
|
padding: "10px 15px",
|
|
fontSize: e.typography.size.s1,
|
|
transform: "translateY(-100px)",
|
|
"&:focus": {
|
|
transform: "translateY(0)",
|
|
zIndex: 1,
|
|
},
|
|
},
|
|
})),
|
|
kv = /* @__PURE__ */ a(
|
|
({ api: e, state: t }) => ({
|
|
isFullscreen: e.getIsFullscreen(),
|
|
isNavShown: e.getIsNavShown(),
|
|
selectedStoryId: t.storyId,
|
|
}),
|
|
"whenSidebarIsVisible",
|
|
),
|
|
Ov = {
|
|
'#root [data-is-storybook="false"]': {
|
|
display: "none",
|
|
},
|
|
'#root [data-is-storybook="true"]': {
|
|
display: "block",
|
|
},
|
|
},
|
|
hu = /* @__PURE__ */ a(
|
|
({
|
|
refs: e,
|
|
scale: t,
|
|
viewMode: o = "story",
|
|
refId: i,
|
|
queryParams: r = {},
|
|
baseUrl: n,
|
|
storyId: l = "*",
|
|
}) => {
|
|
let u = e[i]?.version,
|
|
c = mu({
|
|
...r,
|
|
...(u && { version: u }),
|
|
}),
|
|
d = Cv(i, e),
|
|
{ current: p } = U({}),
|
|
f = Object.values(e).filter(
|
|
(h) => h.type === "auto-inject" || h.id === i,
|
|
{},
|
|
);
|
|
return (
|
|
p["storybook-preview-iframe"] ||
|
|
(p["storybook-preview-iframe"] = to(n, l, {
|
|
...r,
|
|
...(u && { version: u }),
|
|
viewMode: o,
|
|
})),
|
|
f.forEach((h) => {
|
|
let y = `storybook-ref-${h.id}`,
|
|
m = p[y]?.split("/iframe.html")[0];
|
|
if (!m || h.url !== m) {
|
|
let b = `${h.url}/iframe.html?id=${l}&viewMode=${o}&refId=${h.id}${c}`;
|
|
p[y] = b;
|
|
}
|
|
}),
|
|
/* @__PURE__ */ s.createElement(
|
|
Ee,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(eo, { styles: Ov }),
|
|
/* @__PURE__ */ s.createElement(
|
|
me,
|
|
{ filter: kv },
|
|
({ isFullscreen: h, isNavShown: y, selectedStoryId: m }) =>
|
|
h || !y || !m
|
|
? null
|
|
: /* @__PURE__ */ s.createElement(
|
|
_v,
|
|
{ asChild: !0 },
|
|
/* @__PURE__ */ s.createElement(
|
|
"a",
|
|
{ href: `#${m}`, tabIndex: 0, title: "Skip to sidebar" },
|
|
"Skip to sidebar",
|
|
),
|
|
),
|
|
),
|
|
Object.entries(p).map(([h, y]) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
Ee,
|
|
{ key: h },
|
|
/* @__PURE__ */ s.createElement(eu, {
|
|
active: h === d,
|
|
key: h,
|
|
id: h,
|
|
title: h,
|
|
src: y,
|
|
allowFullScreen: !0,
|
|
scale: t,
|
|
}),
|
|
),
|
|
),
|
|
)
|
|
);
|
|
},
|
|
"FramesRenderer",
|
|
);
|
|
|
|
// src/manager/components/preview/tools/addons.tsx
|
|
var Pv = /* @__PURE__ */ a(
|
|
({ api: e, state: t }) => ({
|
|
isVisible: e.getIsPanelShown(),
|
|
singleStory: t.singleStory,
|
|
panelPosition: t.layout.panelPosition,
|
|
toggle: /* @__PURE__ */ a(() => e.togglePanel(), "toggle"),
|
|
}),
|
|
"menuMapper",
|
|
),
|
|
gu = {
|
|
title: "addons",
|
|
id: "addons",
|
|
type: be.TOOL,
|
|
match: /* @__PURE__ */ a(
|
|
({ viewMode: e, tabId: t }) => e === "story" && !t,
|
|
"match",
|
|
),
|
|
render: /* @__PURE__ */ a(
|
|
() =>
|
|
/* @__PURE__ */ s.createElement(
|
|
me,
|
|
{ filter: Pv },
|
|
({ isVisible: e, toggle: t, singleStory: o, panelPosition: i }) =>
|
|
!o &&
|
|
!e &&
|
|
/* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{
|
|
"aria-label": "Show addons",
|
|
key: "addons",
|
|
onClick: t,
|
|
title: "Show addons",
|
|
},
|
|
i === "bottom"
|
|
? /* @__PURE__ */ s.createElement(yo, null)
|
|
: /* @__PURE__ */ s.createElement(wo, null),
|
|
),
|
|
),
|
|
),
|
|
"render",
|
|
),
|
|
};
|
|
|
|
// src/manager/components/preview/tools/copy.tsx
|
|
var Su = Ve(Iu(), 1);
|
|
var { PREVIEW_URL: Nv, document: Fv } = se,
|
|
Rv = /* @__PURE__ */ a(({ state: e }) => {
|
|
let { storyId: t, refId: o, refs: i } = e,
|
|
{ location: r } = Fv,
|
|
n = i[o],
|
|
l = `${r.origin}${r.pathname}`;
|
|
return (
|
|
l.endsWith("/") || (l += "/"),
|
|
{
|
|
refId: o,
|
|
baseUrl: n ? `${n.url}/iframe.html` : Nv || `${l}iframe.html`,
|
|
storyId: t,
|
|
queryParams: e.customQueryParams,
|
|
}
|
|
);
|
|
}, "copyMapper"),
|
|
wu = {
|
|
title: "copy",
|
|
id: "copy",
|
|
type: be.TOOL,
|
|
match: /* @__PURE__ */ a(
|
|
({ viewMode: e, tabId: t }) => e === "story" && !t,
|
|
"match",
|
|
),
|
|
render: /* @__PURE__ */ a(
|
|
() =>
|
|
/* @__PURE__ */ s.createElement(
|
|
me,
|
|
{ filter: Rv },
|
|
({ baseUrl: e, storyId: t, queryParams: o }) =>
|
|
t
|
|
? /* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{
|
|
key: "copy",
|
|
onClick: () => (0, Su.default)(to(e, t, o)),
|
|
title: "Copy canvas link",
|
|
},
|
|
/* @__PURE__ */ s.createElement(Wn, null),
|
|
)
|
|
: null,
|
|
),
|
|
"render",
|
|
),
|
|
};
|
|
|
|
// src/manager/components/preview/tools/eject.tsx
|
|
var { PREVIEW_URL: Bv } = se,
|
|
Hv = /* @__PURE__ */ a(({ state: e }) => {
|
|
let { storyId: t, refId: o, refs: i } = e,
|
|
r = i[o];
|
|
return {
|
|
refId: o,
|
|
baseUrl: r ? `${r.url}/iframe.html` : Bv || "iframe.html",
|
|
storyId: t,
|
|
queryParams: e.customQueryParams,
|
|
};
|
|
}, "ejectMapper"),
|
|
Eu = {
|
|
title: "eject",
|
|
id: "eject",
|
|
type: be.TOOL,
|
|
match: /* @__PURE__ */ a(
|
|
({ viewMode: e, tabId: t }) => e === "story" && !t,
|
|
"match",
|
|
),
|
|
render: /* @__PURE__ */ a(
|
|
() =>
|
|
/* @__PURE__ */ s.createElement(
|
|
me,
|
|
{ filter: Hv },
|
|
({ baseUrl: e, storyId: t, queryParams: o }) =>
|
|
t
|
|
? /* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{ key: "opener", asChild: !0 },
|
|
/* @__PURE__ */ s.createElement(
|
|
"a",
|
|
{
|
|
href: to(e, t, o),
|
|
target: "_blank",
|
|
rel: "noopener noreferrer",
|
|
title: "Open canvas in new tab",
|
|
},
|
|
/* @__PURE__ */ s.createElement(tt, null),
|
|
),
|
|
)
|
|
: null,
|
|
),
|
|
"render",
|
|
),
|
|
};
|
|
|
|
// src/manager/components/preview/tools/remount.tsx
|
|
var zv = I(ee)(({ theme: e, animating: t, disabled: o }) => ({
|
|
opacity: o ? 0.5 : 1,
|
|
svg: {
|
|
animation: t ? `${e.animation.rotate360} 1000ms ease-out` : void 0,
|
|
},
|
|
})),
|
|
Wv = /* @__PURE__ */ a(({ api: e, state: t }) => {
|
|
let { storyId: o } = t;
|
|
return {
|
|
storyId: o,
|
|
remount: /* @__PURE__ */ a(
|
|
() => e.emit(Sn, { storyId: t.storyId }),
|
|
"remount",
|
|
),
|
|
api: e,
|
|
};
|
|
}, "menuMapper"),
|
|
Tu = {
|
|
title: "remount",
|
|
id: "remount",
|
|
type: be.TOOL,
|
|
match: /* @__PURE__ */ a(
|
|
({ viewMode: e, tabId: t }) => e === "story" && !t,
|
|
"match",
|
|
),
|
|
render: /* @__PURE__ */ a(
|
|
() =>
|
|
/* @__PURE__ */ s.createElement(
|
|
me,
|
|
{ filter: Wv },
|
|
({ remount: e, storyId: t, api: o }) => {
|
|
let [i, r] = K(!1),
|
|
n = /* @__PURE__ */ a(() => {
|
|
t && e();
|
|
}, "remountComponent");
|
|
return (
|
|
o.on(Sn, () => {
|
|
r(!0);
|
|
}),
|
|
/* @__PURE__ */ s.createElement(
|
|
zv,
|
|
{
|
|
key: "remount",
|
|
title: "Remount component",
|
|
onClick: n,
|
|
onAnimationEnd: () => r(!1),
|
|
animating: i,
|
|
disabled: !t,
|
|
},
|
|
/* @__PURE__ */ s.createElement(ct, null),
|
|
)
|
|
);
|
|
},
|
|
),
|
|
"render",
|
|
),
|
|
};
|
|
|
|
// src/manager/components/preview/tools/zoom.tsx
|
|
var Lo = 1,
|
|
Cu = Qt({ value: Lo, set: /* @__PURE__ */ a((e) => {}, "set") }),
|
|
zi = class zi extends Le {
|
|
constructor() {
|
|
super(...arguments);
|
|
this.state = {
|
|
value: Lo,
|
|
};
|
|
this.set = /* @__PURE__ */ a((o) => this.setState({ value: o }), "set");
|
|
}
|
|
render() {
|
|
let { children: o, shouldScale: i } = this.props,
|
|
{ set: r } = this,
|
|
{ value: n } = this.state;
|
|
return /* @__PURE__ */ s.createElement(
|
|
Cu.Provider,
|
|
{ value: { value: i ? n : Lo, set: r } },
|
|
o,
|
|
);
|
|
}
|
|
};
|
|
a(zi, "ZoomProvider");
|
|
var Ar = zi,
|
|
{ Consumer: Hi } = Cu,
|
|
Vv = _t(
|
|
/* @__PURE__ */ a(function ({ zoomIn: t, zoomOut: o, reset: i }) {
|
|
return /* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{ key: "zoomin", onClick: t, title: "Zoom in" },
|
|
/* @__PURE__ */ s.createElement(Jn, null),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{ key: "zoomout", onClick: o, title: "Zoom out" },
|
|
/* @__PURE__ */ s.createElement(ei, null),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{ key: "zoomreset", onClick: i, title: "Reset zoom" },
|
|
/* @__PURE__ */ s.createElement(ti, null),
|
|
),
|
|
);
|
|
}, "Zoom"),
|
|
);
|
|
var jv = _t(
|
|
/* @__PURE__ */ a(function ({ set: t, value: o }) {
|
|
let i = A(
|
|
(l) => {
|
|
(l.preventDefault(), t(0.8 * o));
|
|
},
|
|
[t, o],
|
|
),
|
|
r = A(
|
|
(l) => {
|
|
(l.preventDefault(), t(1.25 * o));
|
|
},
|
|
[t, o],
|
|
),
|
|
n = A(
|
|
(l) => {
|
|
(l.preventDefault(), t(Lo));
|
|
},
|
|
[t, Lo],
|
|
);
|
|
return /* @__PURE__ */ s.createElement(Vv, {
|
|
key: "zoom",
|
|
zoomIn: i,
|
|
zoomOut: r,
|
|
reset: n,
|
|
});
|
|
}, "ZoomWrapper"),
|
|
);
|
|
function Kv() {
|
|
return /* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(Hi, null, ({ set: e, value: t }) =>
|
|
/* @__PURE__ */ s.createElement(jv, { set: e, value: t }),
|
|
),
|
|
/* @__PURE__ */ s.createElement(yt, null),
|
|
);
|
|
}
|
|
a(Kv, "ZoomToolRenderer");
|
|
var _u = {
|
|
title: "zoom",
|
|
id: "zoom",
|
|
type: be.TOOL,
|
|
match: /* @__PURE__ */ a(
|
|
({ viewMode: e, tabId: t }) => e === "story" && !t,
|
|
"match",
|
|
),
|
|
render: Kv,
|
|
};
|
|
|
|
// src/manager/components/preview/Toolbar.tsx
|
|
var $v = /* @__PURE__ */ a(
|
|
({ api: e, state: t }) => ({
|
|
toggle: e.toggleFullscreen,
|
|
isFullscreen: e.getIsFullscreen(),
|
|
shortcut: Ye(e.getShortcutKeys().fullScreen),
|
|
hasPanel: Object.keys(e.getElements(Ce.PANEL)).length > 0,
|
|
singleStory: t.singleStory,
|
|
}),
|
|
"fullScreenMapper",
|
|
),
|
|
Ou = {
|
|
title: "fullscreen",
|
|
id: "fullscreen",
|
|
type: be.TOOL,
|
|
// @ts-expect-error (non strict)
|
|
match: /* @__PURE__ */ a(
|
|
(e) => ["story", "docs"].includes(e.viewMode),
|
|
"match",
|
|
),
|
|
render: /* @__PURE__ */ a(() => {
|
|
let { isMobile: e } = ge();
|
|
return e
|
|
? null
|
|
: /* @__PURE__ */ s.createElement(
|
|
me,
|
|
{ filter: $v },
|
|
({
|
|
toggle: t,
|
|
isFullscreen: o,
|
|
shortcut: i,
|
|
hasPanel: r,
|
|
singleStory: n,
|
|
}) =>
|
|
(!n || (n && r)) &&
|
|
/* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{
|
|
key: "full",
|
|
onClick: t,
|
|
title: `${o ? "Exit full screen" : "Go full screen"} [${i}]`,
|
|
"aria-label": o ? "Exit full screen" : "Go full screen",
|
|
},
|
|
o
|
|
? /* @__PURE__ */ s.createElement(je, null)
|
|
: /* @__PURE__ */ s.createElement(Mn, null),
|
|
),
|
|
);
|
|
}, "render"),
|
|
};
|
|
var Pu = s.memo(
|
|
/* @__PURE__ */ a(function ({
|
|
isShown: t,
|
|
tools: o,
|
|
toolsExtra: i,
|
|
tabs: r,
|
|
tabId: n,
|
|
api: l,
|
|
}) {
|
|
let u = na();
|
|
return r || o || i
|
|
? /* @__PURE__ */ s.createElement(
|
|
Gv,
|
|
{
|
|
className: "sb-bar",
|
|
key: "toolbar",
|
|
shown: t,
|
|
"data-test-id": "sb-preview-toolbar",
|
|
"aria-labelledby": u,
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
"span",
|
|
{ className: "sb-sr-only", id: u },
|
|
"Toolbar",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
qv,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
Au,
|
|
null,
|
|
r.length > 1
|
|
? /* @__PURE__ */ s.createElement(
|
|
Ee,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
ar,
|
|
{ key: "tabs" },
|
|
r.map((c, d) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
lr,
|
|
{
|
|
disabled: !!c.disabled,
|
|
active: c.id === n || (c.id === "canvas" && !n),
|
|
onClick: () => {
|
|
l.applyQueryParams({
|
|
tab: c.id === "canvas" ? void 0 : c.id,
|
|
});
|
|
},
|
|
key: c.id || `tab-${d}`,
|
|
},
|
|
c.title,
|
|
),
|
|
),
|
|
),
|
|
/* @__PURE__ */ s.createElement(yt, null),
|
|
)
|
|
: null,
|
|
/* @__PURE__ */ s.createElement(ku, { key: "left", list: o }),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
Yv,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(ku, { key: "right", list: i }),
|
|
),
|
|
),
|
|
)
|
|
: null;
|
|
}, "ToolbarComp"),
|
|
),
|
|
ku = s.memo(
|
|
/* @__PURE__ */ a(function ({ list: t }) {
|
|
return /* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
t.filter(Boolean).map(({ render: o, id: i, ...r }, n) =>
|
|
// @ts-expect-error (Converted from ts-ignore)
|
|
/* @__PURE__ */ s.createElement(o, { key: i || r.key || `f-${n}` }),
|
|
),
|
|
);
|
|
}, "Tools"),
|
|
);
|
|
function Uv(e, t) {
|
|
let o = t?.type === "story" && t?.prepared ? t?.parameters : {},
|
|
i = "toolbar" in o ? o.toolbar : void 0,
|
|
{ toolbar: r } = He.getConfig(),
|
|
n = er(r || {}, i || {});
|
|
return n ? !!n[e?.id]?.hidden : !1;
|
|
}
|
|
a(Uv, "toolbarItemHasBeenExcluded");
|
|
function Wi(e, t, o, i, r, n) {
|
|
let l = /* @__PURE__ */ a(
|
|
(u) =>
|
|
u &&
|
|
(!u.match ||
|
|
u.match({
|
|
storyId: t?.id,
|
|
refId: t?.refId,
|
|
viewMode: o,
|
|
location: i,
|
|
path: r,
|
|
tabId: n,
|
|
})) &&
|
|
!Uv(u, t),
|
|
"filter",
|
|
);
|
|
return e.filter(l);
|
|
}
|
|
a(Wi, "filterToolsSide");
|
|
var Gv = I.section(({ theme: e, shown: t }) => ({
|
|
position: "relative",
|
|
color: e.barTextColor,
|
|
width: "100%",
|
|
flexShrink: 0,
|
|
overflowX: "auto",
|
|
overflowY: "hidden",
|
|
marginTop: t ? 0 : -40,
|
|
boxShadow: `${e.appBorderColor} 0 -1px 0 0 inset`,
|
|
background: e.barBg,
|
|
scrollbarColor: `${e.barTextColor} ${e.barBg}`,
|
|
scrollbarWidth: "thin",
|
|
zIndex: 4,
|
|
})),
|
|
qv = I.div({
|
|
width: "calc(100% - 20px)",
|
|
display: "flex",
|
|
justifyContent: "space-between",
|
|
flexWrap: "nowrap",
|
|
flexShrink: 0,
|
|
height: 40,
|
|
marginLeft: 10,
|
|
marginRight: 10,
|
|
}),
|
|
Au = I.div({
|
|
display: "flex",
|
|
whiteSpace: "nowrap",
|
|
flexBasis: "auto",
|
|
gap: 6,
|
|
alignItems: "center",
|
|
}),
|
|
Yv = I(Au)({
|
|
marginLeft: 30,
|
|
});
|
|
|
|
// src/manager/components/preview/utils/components.ts
|
|
var Du = I.main({
|
|
display: "flex",
|
|
flexDirection: "column",
|
|
width: "100%",
|
|
height: "100%",
|
|
overflow: "hidden",
|
|
}),
|
|
Mu = I.div({
|
|
overflow: "auto",
|
|
width: "100%",
|
|
zIndex: 3,
|
|
background: "transparent",
|
|
flex: 1,
|
|
}),
|
|
Lu = I.div(
|
|
{
|
|
alignContent: "center",
|
|
alignItems: "center",
|
|
justifyContent: "center",
|
|
justifyItems: "center",
|
|
overflow: "auto",
|
|
gridTemplateColumns: "100%",
|
|
gridTemplateRows: "100%",
|
|
position: "relative",
|
|
width: "100%",
|
|
height: "100%",
|
|
},
|
|
({ show: e }) => ({ display: e ? "grid" : "none" }),
|
|
),
|
|
HD = I(pr)({
|
|
color: "inherit",
|
|
textDecoration: "inherit",
|
|
display: "inline-block",
|
|
}),
|
|
zD = I.span({
|
|
// Hides full screen icon at mobile breakpoint defined in app.js
|
|
"@media (max-width: 599px)": {
|
|
display: "none",
|
|
},
|
|
}),
|
|
Dr = I.div(({ theme: e }) => ({
|
|
alignContent: "center",
|
|
alignItems: "center",
|
|
justifyContent: "center",
|
|
justifyItems: "center",
|
|
overflow: "auto",
|
|
display: "grid",
|
|
gridTemplateColumns: "100%",
|
|
gridTemplateRows: "100%",
|
|
position: "relative",
|
|
width: "100%",
|
|
height: "100%",
|
|
})),
|
|
Nu = I.div(({ theme: e }) => ({
|
|
position: "absolute",
|
|
top: 0,
|
|
left: 0,
|
|
bottom: 0,
|
|
right: 0,
|
|
background: e.background.preview,
|
|
zIndex: 1,
|
|
}));
|
|
|
|
// src/manager/components/preview/Wrappers.tsx
|
|
var Fu = /* @__PURE__ */ a(
|
|
({ wrappers: e, id: t, storyId: o, children: i }) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
Ee,
|
|
null,
|
|
e.reduceRight(
|
|
(r, n, l) =>
|
|
/* @__PURE__ */ s.createElement(n.render, {
|
|
index: l,
|
|
children: r,
|
|
id: t,
|
|
storyId: o,
|
|
}),
|
|
i,
|
|
),
|
|
),
|
|
"ApplyWrappers",
|
|
),
|
|
Ru = [
|
|
{
|
|
id: "iframe-wrapper",
|
|
type: Ce.PREVIEW,
|
|
render: /* @__PURE__ */ a(
|
|
(e) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
Dr,
|
|
{ id: "storybook-preview-wrapper" },
|
|
e.children,
|
|
),
|
|
"render",
|
|
),
|
|
},
|
|
];
|
|
|
|
// src/manager/components/preview/Preview.tsx
|
|
var Xv = /* @__PURE__ */ a(
|
|
({ state: e, api: t }) => ({
|
|
storyId: e.storyId,
|
|
refId: e.refId,
|
|
viewMode: e.viewMode,
|
|
customCanvas: t.renderPreview,
|
|
queryParams: e.customQueryParams,
|
|
getElements: t.getElements,
|
|
entry: t.getData(e.storyId, e.refId),
|
|
previewInitialized: e.previewInitialized,
|
|
refs: e.refs,
|
|
}),
|
|
"canvasMapper",
|
|
),
|
|
Bu = /* @__PURE__ */ a(
|
|
() => ({
|
|
id: "canvas",
|
|
type: be.TAB,
|
|
title: "Canvas",
|
|
route: /* @__PURE__ */ a(
|
|
({ storyId: e, refId: t }) => (t ? `/story/${t}_${e}` : `/story/${e}`),
|
|
"route",
|
|
),
|
|
match: /* @__PURE__ */ a(
|
|
({ viewMode: e }) => !!(e && e.match(/^(story|docs)$/)),
|
|
"match",
|
|
),
|
|
render: /* @__PURE__ */ a(() => null, "render"),
|
|
}),
|
|
"createCanvasTab",
|
|
),
|
|
Hu = s.memo(
|
|
/* @__PURE__ */ a(function (t) {
|
|
let {
|
|
api: o,
|
|
id: i,
|
|
options: r,
|
|
viewMode: n,
|
|
storyId: l,
|
|
entry: u = void 0,
|
|
description: c,
|
|
baseUrl: d,
|
|
withLoader: p = !0,
|
|
tools: f,
|
|
toolsExtra: h,
|
|
tabs: y,
|
|
wrappers: m,
|
|
tabId: b,
|
|
} = t,
|
|
x = y.find((w) => w.id === b)?.render,
|
|
E = n === "story",
|
|
{ showToolbar: g } = r,
|
|
v = o.getShowToolbarWithCustomisations(g),
|
|
S = U(l);
|
|
return (
|
|
H(() => {
|
|
if (u && n) {
|
|
if (l === S.current) return;
|
|
if (((S.current = l), n.match(/docs|story/))) {
|
|
let { refId: w, id: k } = u;
|
|
o.emit(ya, {
|
|
storyId: k,
|
|
viewMode: n,
|
|
options: { target: w },
|
|
});
|
|
}
|
|
}
|
|
}, [u, n, l, o]),
|
|
/* @__PURE__ */ s.createElement(
|
|
Ee,
|
|
null,
|
|
i === "main" &&
|
|
/* @__PURE__ */ s.createElement(
|
|
ko,
|
|
{ key: "description" },
|
|
/* @__PURE__ */ s.createElement("title", null, c),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
Ar,
|
|
{ shouldScale: E },
|
|
/* @__PURE__ */ s.createElement(
|
|
Du,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(Pu, {
|
|
key: "tools",
|
|
isShown: v,
|
|
tabId: b,
|
|
tabs: y,
|
|
tools: f,
|
|
toolsExtra: h,
|
|
api: o,
|
|
}),
|
|
/* @__PURE__ */ s.createElement(
|
|
Mu,
|
|
{ key: "frame" },
|
|
x &&
|
|
/* @__PURE__ */ s.createElement(Dr, null, x({ active: !0 })),
|
|
/* @__PURE__ */ s.createElement(
|
|
Lu,
|
|
{ show: !b },
|
|
/* @__PURE__ */ s.createElement(Zv, {
|
|
withLoader: p,
|
|
baseUrl: d,
|
|
wrappers: m,
|
|
}),
|
|
),
|
|
),
|
|
),
|
|
),
|
|
)
|
|
);
|
|
}, "Preview"),
|
|
);
|
|
var Zv = /* @__PURE__ */ a(
|
|
({ baseUrl: e, withLoader: t, wrappers: o }) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
me,
|
|
{ filter: Xv },
|
|
({
|
|
entry: i,
|
|
refs: r,
|
|
customCanvas: n,
|
|
storyId: l,
|
|
refId: u,
|
|
viewMode: c,
|
|
queryParams: d,
|
|
previewInitialized: p,
|
|
}) => {
|
|
let f = "canvas",
|
|
[h, y] = K(void 0);
|
|
H(() => {
|
|
if (se.CONFIG_TYPE === "DEVELOPMENT")
|
|
try {
|
|
He.getChannel().on(ma, (v) => {
|
|
y(v);
|
|
});
|
|
} catch {}
|
|
}, []);
|
|
let m = !!r[u] && !r[u].previewInitialized,
|
|
b = !(h?.value === 1 || h === void 0),
|
|
x = !u && (!p || b),
|
|
E = (i && m) || x;
|
|
return /* @__PURE__ */ s.createElement(Hi, null, ({ value: g }) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
t &&
|
|
E &&
|
|
/* @__PURE__ */ s.createElement(
|
|
Nu,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(nr, {
|
|
id: "preview-loader",
|
|
role: "progressbar",
|
|
progress: h,
|
|
}),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
Fu,
|
|
{ id: f, storyId: l, viewMode: c, wrappers: o },
|
|
n
|
|
? n(l, c, f, e, g, d)
|
|
: /* @__PURE__ */ s.createElement(hu, {
|
|
baseUrl: e,
|
|
refs: r,
|
|
scale: g,
|
|
entry: i,
|
|
viewMode: c,
|
|
refId: u,
|
|
queryParams: d,
|
|
storyId: l,
|
|
}),
|
|
),
|
|
),
|
|
);
|
|
},
|
|
),
|
|
"Canvas",
|
|
);
|
|
function zu(e, t) {
|
|
let { previewTabs: o } = He.getConfig(),
|
|
i = t ? t.previewTabs : void 0;
|
|
if (o || i) {
|
|
let r = er(o || {}, i || {}),
|
|
n = Object.keys(r).map((l, u) => ({
|
|
index: u,
|
|
...(typeof r[l] == "string" ? { title: r[l] } : r[l]),
|
|
id: l,
|
|
}));
|
|
return e
|
|
.filter((l) => {
|
|
let u = n.find((c) => c.id === l.id);
|
|
return u === void 0 || u.id === "canvas" || !u.hidden;
|
|
})
|
|
.map((l, u) => ({ ...l, index: u }))
|
|
.sort((l, u) => {
|
|
let c = n.find((h) => h.id === l.id),
|
|
d = c ? c.index : n.length + l.index,
|
|
p = n.find((h) => h.id === u.id),
|
|
f = p ? p.index : n.length + u.index;
|
|
return d - f;
|
|
})
|
|
.map((l) => {
|
|
let u = n.find((c) => c.id === l.id);
|
|
return u
|
|
? {
|
|
...l,
|
|
title: u.title || l.title,
|
|
disabled: u.disabled,
|
|
hidden: u.hidden,
|
|
}
|
|
: l;
|
|
});
|
|
}
|
|
return e;
|
|
}
|
|
a(zu, "filterTabs");
|
|
|
|
// src/manager/components/preview/tools/menu.tsx
|
|
var Jv = /* @__PURE__ */ a(
|
|
({ api: e, state: t }) => ({
|
|
isVisible: e.getIsNavShown(),
|
|
singleStory: t.singleStory,
|
|
toggle: /* @__PURE__ */ a(() => e.toggleNav(), "toggle"),
|
|
}),
|
|
"menuMapper",
|
|
),
|
|
Wu = {
|
|
title: "menu",
|
|
id: "menu",
|
|
type: be.TOOL,
|
|
// @ts-expect-error (non strict)
|
|
match: /* @__PURE__ */ a(
|
|
({ viewMode: e }) => ["story", "docs"].includes(e),
|
|
"match",
|
|
),
|
|
render: /* @__PURE__ */ a(
|
|
() =>
|
|
/* @__PURE__ */ s.createElement(
|
|
me,
|
|
{ filter: Jv },
|
|
({ isVisible: e, toggle: t, singleStory: o }) =>
|
|
!o &&
|
|
!e &&
|
|
/* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{
|
|
"aria-label": "Show sidebar",
|
|
key: "menu",
|
|
onClick: t,
|
|
title: "Show sidebar",
|
|
},
|
|
/* @__PURE__ */ s.createElement(Io, null),
|
|
),
|
|
/* @__PURE__ */ s.createElement(yt, null),
|
|
),
|
|
),
|
|
"render",
|
|
),
|
|
};
|
|
|
|
// src/manager/container/Preview.tsx
|
|
var e0 = [Bu()],
|
|
t0 = [Wu, Tu, _u],
|
|
o0 = [gu, Ou, Eu, wu],
|
|
r0 = [],
|
|
n0 = (0, No.default)(1)((e, t, o, i) =>
|
|
i ? zu([...e0, ...Object.values(t)], o) : r0,
|
|
),
|
|
i0 = (0, No.default)(1)((e, t, o) => Wi([...t0, ...Object.values(t)], ...o)),
|
|
s0 = (0, No.default)(1)((e, t, o) => Wi([...o0, ...Object.values(t)], ...o)),
|
|
a0 = (0, No.default)(1)((e, t) => [...Ru, ...Object.values(t)]),
|
|
{ PREVIEW_URL: l0 } = se,
|
|
u0 = /* @__PURE__ */ a(
|
|
(e) => e.split("/").join(" / ").replace(/\s\s/, " "),
|
|
"splitTitleAddExtraSpace",
|
|
),
|
|
c0 = /* @__PURE__ */ a((e) => {
|
|
if (e?.type === "story" || e?.type === "docs") {
|
|
let { title: t, name: o } = e;
|
|
return t && o ? u0(`${t} - ${o} \u22C5 Storybook`) : "Storybook";
|
|
}
|
|
return e?.name ? `${e.name} \u22C5 Storybook` : "Storybook";
|
|
}, "getDescription"),
|
|
p0 = /* @__PURE__ */ a(
|
|
({
|
|
api: e,
|
|
state: t,
|
|
// @ts-expect-error (non strict)
|
|
}) => {
|
|
let {
|
|
layout: o,
|
|
location: i,
|
|
customQueryParams: r,
|
|
storyId: n,
|
|
refs: l,
|
|
viewMode: u,
|
|
path: c,
|
|
refId: d,
|
|
} = t,
|
|
p = e.getData(n, d),
|
|
f = Object.values(e.getElements(Ce.TAB)),
|
|
h = Object.values(e.getElements(Ce.PREVIEW)),
|
|
y = Object.values(e.getElements(Ce.TOOL)),
|
|
m = Object.values(e.getElements(Ce.TOOLEXTRA)),
|
|
b = e.getQueryParam("tab"),
|
|
x = i0(y.length, e.getElements(Ce.TOOL), [
|
|
p,
|
|
u,
|
|
i,
|
|
c,
|
|
// @ts-expect-error (non strict)
|
|
b,
|
|
]),
|
|
E = s0(
|
|
m.length,
|
|
e.getElements(Ce.TOOLEXTRA),
|
|
// @ts-expect-error (non strict)
|
|
[p, u, i, c, b],
|
|
);
|
|
return {
|
|
api: e,
|
|
entry: p,
|
|
options: o,
|
|
description: c0(p),
|
|
viewMode: u,
|
|
refs: l,
|
|
storyId: n,
|
|
baseUrl: l0 || "iframe.html",
|
|
queryParams: r,
|
|
tools: x,
|
|
toolsExtra: E,
|
|
tabs: n0(
|
|
f.length,
|
|
e.getElements(Ce.TAB),
|
|
p ? p.parameters : void 0,
|
|
o.showTabs,
|
|
),
|
|
wrappers: a0(h.length, e.getElements(Ce.PREVIEW)),
|
|
tabId: b,
|
|
};
|
|
},
|
|
"mapper",
|
|
),
|
|
d0 = s.memo(
|
|
/* @__PURE__ */ a(function (t) {
|
|
return /* @__PURE__ */ s.createElement(me, { filter: p0 }, (o) =>
|
|
/* @__PURE__ */ s.createElement(Hu, { ...t, ...o }),
|
|
);
|
|
}, "PreviewConnected"),
|
|
),
|
|
Vu = d0;
|
|
|
|
// src/manager/hooks/useDebounce.ts
|
|
function ju(e, t) {
|
|
let [o, i] = K(e);
|
|
return (
|
|
H(() => {
|
|
let r = setTimeout(() => {
|
|
i(e);
|
|
}, t);
|
|
return () => {
|
|
clearTimeout(r);
|
|
};
|
|
}, [e, t]),
|
|
o
|
|
);
|
|
}
|
|
a(ju, "useDebounce");
|
|
|
|
// src/manager/hooks/useMeasure.tsx
|
|
function Ku() {
|
|
let [e, t] = s.useState({
|
|
width: null,
|
|
height: null,
|
|
}),
|
|
o = s.useRef(null);
|
|
return [
|
|
s.useCallback((r) => {
|
|
if (
|
|
(o.current && (o.current.disconnect(), (o.current = null)),
|
|
r?.nodeType === Node.ELEMENT_NODE)
|
|
) {
|
|
let n = new ResizeObserver(([l]) => {
|
|
if (l && l.borderBoxSize) {
|
|
let { inlineSize: u, blockSize: c } = l.borderBoxSize[0];
|
|
t({ width: u, height: c });
|
|
}
|
|
});
|
|
(n.observe(r), (o.current = n));
|
|
}
|
|
}, []),
|
|
e,
|
|
];
|
|
}
|
|
a(Ku, "useMeasure");
|
|
|
|
// ../node_modules/@tanstack/virtual-core/dist/esm/utils.js
|
|
function Ht(e, t, o) {
|
|
let i = o.initialDeps ?? [],
|
|
r;
|
|
function n() {
|
|
var l, u, c, d;
|
|
let p;
|
|
o.key && (l = o.debug) != null && l.call(o) && (p = Date.now());
|
|
let f = e();
|
|
if (!(f.length !== i.length || f.some((m, b) => i[b] !== m))) return r;
|
|
i = f;
|
|
let y;
|
|
if (
|
|
(o.key && (u = o.debug) != null && u.call(o) && (y = Date.now()),
|
|
(r = t(...f)),
|
|
o.key && (c = o.debug) != null && c.call(o))
|
|
) {
|
|
let m = Math.round((Date.now() - p) * 100) / 100,
|
|
b = Math.round((Date.now() - y) * 100) / 100,
|
|
x = b / 16,
|
|
E = /* @__PURE__ */ a((g, v) => {
|
|
for (g = String(g); g.length < v; ) g = " " + g;
|
|
return g;
|
|
}, "pad");
|
|
console.info(
|
|
`%c\u23F1 ${E(b, 5)} /${E(m, 5)} ms`,
|
|
`
|
|
font-size: .6rem;
|
|
font-weight: bold;
|
|
color: hsl(${Math.max(
|
|
0,
|
|
Math.min(120 - 120 * x, 120),
|
|
)}deg 100% 31%);`,
|
|
o?.key,
|
|
);
|
|
}
|
|
return ((d = o?.onChange) == null || d.call(o, r), r);
|
|
}
|
|
return (
|
|
a(n, "memoizedFunction"),
|
|
(n.updateDeps = (l) => {
|
|
i = l;
|
|
}),
|
|
n
|
|
);
|
|
}
|
|
a(Ht, "memo");
|
|
function Mr(e, t) {
|
|
if (e === void 0) throw new Error(`Unexpected undefined${t ? `: ${t}` : ""}`);
|
|
return e;
|
|
}
|
|
a(Mr, "notUndefined");
|
|
var $u = /* @__PURE__ */ a((e, t) => Math.abs(e - t) < 1, "approxEqual"),
|
|
Uu = /* @__PURE__ */ a((e, t, o) => {
|
|
let i;
|
|
return function (...r) {
|
|
(e.clearTimeout(i), (i = e.setTimeout(() => t.apply(this, r), o)));
|
|
};
|
|
}, "debounce");
|
|
|
|
// ../node_modules/@tanstack/virtual-core/dist/esm/index.js
|
|
var f0 = /* @__PURE__ */ a((e) => e, "defaultKeyExtractor"),
|
|
m0 = /* @__PURE__ */ a((e) => {
|
|
let t = Math.max(e.startIndex - e.overscan, 0),
|
|
o = Math.min(e.endIndex + e.overscan, e.count - 1),
|
|
i = [];
|
|
for (let r = t; r <= o; r++) i.push(r);
|
|
return i;
|
|
}, "defaultRangeExtractor"),
|
|
Yu = /* @__PURE__ */ a((e, t) => {
|
|
let o = e.scrollElement;
|
|
if (!o) return;
|
|
let i = e.targetWindow;
|
|
if (!i) return;
|
|
let r = /* @__PURE__ */ a((l) => {
|
|
let { width: u, height: c } = l;
|
|
t({ width: Math.round(u), height: Math.round(c) });
|
|
}, "handler");
|
|
if ((r(o.getBoundingClientRect()), !i.ResizeObserver)) return () => {};
|
|
let n = new i.ResizeObserver((l) => {
|
|
let u = /* @__PURE__ */ a(() => {
|
|
let c = l[0];
|
|
if (c?.borderBoxSize) {
|
|
let d = c.borderBoxSize[0];
|
|
if (d) {
|
|
r({ width: d.inlineSize, height: d.blockSize });
|
|
return;
|
|
}
|
|
}
|
|
r(o.getBoundingClientRect());
|
|
}, "run");
|
|
e.options.useAnimationFrameWithResizeObserver
|
|
? requestAnimationFrame(u)
|
|
: u();
|
|
});
|
|
return (
|
|
n.observe(o, { box: "border-box" }),
|
|
() => {
|
|
n.unobserve(o);
|
|
}
|
|
);
|
|
}, "observeElementRect"),
|
|
Gu = {
|
|
passive: !0,
|
|
};
|
|
var qu = typeof window > "u" ? !0 : "onscrollend" in window,
|
|
Qu = /* @__PURE__ */ a((e, t) => {
|
|
let o = e.scrollElement;
|
|
if (!o) return;
|
|
let i = e.targetWindow;
|
|
if (!i) return;
|
|
let r = 0,
|
|
n =
|
|
e.options.useScrollendEvent && qu
|
|
? () => {}
|
|
: Uu(
|
|
i,
|
|
() => {
|
|
t(r, !1);
|
|
},
|
|
e.options.isScrollingResetDelay,
|
|
),
|
|
l = /* @__PURE__ */ a(
|
|
(p) => () => {
|
|
let { horizontal: f, isRtl: h } = e.options;
|
|
((r = f ? o.scrollLeft * ((h && -1) || 1) : o.scrollTop),
|
|
n(),
|
|
t(r, p));
|
|
},
|
|
"createHandler",
|
|
),
|
|
u = l(!0),
|
|
c = l(!1);
|
|
(c(), o.addEventListener("scroll", u, Gu));
|
|
let d = e.options.useScrollendEvent && qu;
|
|
return (
|
|
d && o.addEventListener("scrollend", c, Gu),
|
|
() => {
|
|
(o.removeEventListener("scroll", u),
|
|
d && o.removeEventListener("scrollend", c));
|
|
}
|
|
);
|
|
}, "observeElementOffset");
|
|
var h0 = /* @__PURE__ */ a((e, t, o) => {
|
|
if (t?.borderBoxSize) {
|
|
let i = t.borderBoxSize[0];
|
|
if (i)
|
|
return Math.round(i[o.options.horizontal ? "inlineSize" : "blockSize"]);
|
|
}
|
|
return Math.round(
|
|
e.getBoundingClientRect()[o.options.horizontal ? "width" : "height"],
|
|
);
|
|
}, "measureElement");
|
|
var Xu = /* @__PURE__ */ a((e, { adjustments: t = 0, behavior: o }, i) => {
|
|
var r, n;
|
|
let l = e + t;
|
|
(n = (r = i.scrollElement) == null ? void 0 : r.scrollTo) == null ||
|
|
n.call(r, {
|
|
[i.options.horizontal ? "left" : "top"]: l,
|
|
behavior: o,
|
|
});
|
|
}, "elementScroll"),
|
|
Vi = class Vi {
|
|
constructor(t) {
|
|
((this.unsubs = []),
|
|
(this.scrollElement = null),
|
|
(this.targetWindow = null),
|
|
(this.isScrolling = !1),
|
|
(this.scrollToIndexTimeoutId = null),
|
|
(this.measurementsCache = []),
|
|
(this.itemSizeCache = /* @__PURE__ */ new Map()),
|
|
(this.pendingMeasuredCacheIndexes = []),
|
|
(this.scrollRect = null),
|
|
(this.scrollOffset = null),
|
|
(this.scrollDirection = null),
|
|
(this.scrollAdjustments = 0),
|
|
(this.elementsCache = /* @__PURE__ */ new Map()),
|
|
(this.observer = /* @__PURE__ */ (() => {
|
|
let o = null,
|
|
i = /* @__PURE__ */ a(
|
|
() =>
|
|
o ||
|
|
(!this.targetWindow || !this.targetWindow.ResizeObserver
|
|
? null
|
|
: (o = new this.targetWindow.ResizeObserver((r) => {
|
|
r.forEach((n) => {
|
|
let l = /* @__PURE__ */ a(() => {
|
|
this._measureElement(n.target, n);
|
|
}, "run");
|
|
this.options.useAnimationFrameWithResizeObserver
|
|
? requestAnimationFrame(l)
|
|
: l();
|
|
});
|
|
}))),
|
|
"get",
|
|
);
|
|
return {
|
|
disconnect: /* @__PURE__ */ a(() => {
|
|
var r;
|
|
((r = i()) == null || r.disconnect(), (o = null));
|
|
}, "disconnect"),
|
|
observe: /* @__PURE__ */ a((r) => {
|
|
var n;
|
|
return (n = i()) == null
|
|
? void 0
|
|
: n.observe(r, { box: "border-box" });
|
|
}, "observe"),
|
|
unobserve: /* @__PURE__ */ a((r) => {
|
|
var n;
|
|
return (n = i()) == null ? void 0 : n.unobserve(r);
|
|
}, "unobserve"),
|
|
};
|
|
})()),
|
|
(this.range = null),
|
|
(this.setOptions = (o) => {
|
|
(Object.entries(o).forEach(([i, r]) => {
|
|
typeof r > "u" && delete o[i];
|
|
}),
|
|
(this.options = {
|
|
debug: !1,
|
|
initialOffset: 0,
|
|
overscan: 1,
|
|
paddingStart: 0,
|
|
paddingEnd: 0,
|
|
scrollPaddingStart: 0,
|
|
scrollPaddingEnd: 0,
|
|
horizontal: !1,
|
|
getItemKey: f0,
|
|
rangeExtractor: m0,
|
|
onChange: /* @__PURE__ */ a(() => {}, "onChange"),
|
|
measureElement: h0,
|
|
initialRect: { width: 0, height: 0 },
|
|
scrollMargin: 0,
|
|
gap: 0,
|
|
indexAttribute: "data-index",
|
|
initialMeasurementsCache: [],
|
|
lanes: 1,
|
|
isScrollingResetDelay: 150,
|
|
enabled: !0,
|
|
isRtl: !1,
|
|
useScrollendEvent: !1,
|
|
useAnimationFrameWithResizeObserver: !1,
|
|
...o,
|
|
}));
|
|
}),
|
|
(this.notify = (o) => {
|
|
var i, r;
|
|
(r = (i = this.options).onChange) == null || r.call(i, this, o);
|
|
}),
|
|
(this.maybeNotify = Ht(
|
|
() => (
|
|
this.calculateRange(),
|
|
[
|
|
this.isScrolling,
|
|
this.range ? this.range.startIndex : null,
|
|
this.range ? this.range.endIndex : null,
|
|
]
|
|
),
|
|
(o) => {
|
|
this.notify(o);
|
|
},
|
|
{
|
|
key: !1,
|
|
debug: /* @__PURE__ */ a(() => this.options.debug, "debug"),
|
|
initialDeps: [
|
|
this.isScrolling,
|
|
this.range ? this.range.startIndex : null,
|
|
this.range ? this.range.endIndex : null,
|
|
],
|
|
},
|
|
)),
|
|
(this.cleanup = () => {
|
|
(this.unsubs.filter(Boolean).forEach((o) => o()),
|
|
(this.unsubs = []),
|
|
this.observer.disconnect(),
|
|
(this.scrollElement = null),
|
|
(this.targetWindow = null));
|
|
}),
|
|
(this._didMount = () => () => {
|
|
this.cleanup();
|
|
}),
|
|
(this._willUpdate = () => {
|
|
var o;
|
|
let i = this.options.enabled ? this.options.getScrollElement() : null;
|
|
if (this.scrollElement !== i) {
|
|
if ((this.cleanup(), !i)) {
|
|
this.maybeNotify();
|
|
return;
|
|
}
|
|
((this.scrollElement = i),
|
|
this.scrollElement && "ownerDocument" in this.scrollElement
|
|
? (this.targetWindow =
|
|
this.scrollElement.ownerDocument.defaultView)
|
|
: (this.targetWindow =
|
|
((o = this.scrollElement) == null ? void 0 : o.window) ??
|
|
null),
|
|
this.elementsCache.forEach((r) => {
|
|
this.observer.observe(r);
|
|
}),
|
|
this._scrollToOffset(this.getScrollOffset(), {
|
|
adjustments: void 0,
|
|
behavior: void 0,
|
|
}),
|
|
this.unsubs.push(
|
|
this.options.observeElementRect(this, (r) => {
|
|
((this.scrollRect = r), this.maybeNotify());
|
|
}),
|
|
),
|
|
this.unsubs.push(
|
|
this.options.observeElementOffset(this, (r, n) => {
|
|
((this.scrollAdjustments = 0),
|
|
(this.scrollDirection = n
|
|
? this.getScrollOffset() < r
|
|
? "forward"
|
|
: "backward"
|
|
: null),
|
|
(this.scrollOffset = r),
|
|
(this.isScrolling = n),
|
|
this.maybeNotify());
|
|
}),
|
|
));
|
|
}
|
|
}),
|
|
(this.getSize = () =>
|
|
this.options.enabled
|
|
? ((this.scrollRect = this.scrollRect ?? this.options.initialRect),
|
|
this.scrollRect[this.options.horizontal ? "width" : "height"])
|
|
: ((this.scrollRect = null), 0)),
|
|
(this.getScrollOffset = () =>
|
|
this.options.enabled
|
|
? ((this.scrollOffset =
|
|
this.scrollOffset ??
|
|
(typeof this.options.initialOffset == "function"
|
|
? this.options.initialOffset()
|
|
: this.options.initialOffset)),
|
|
this.scrollOffset)
|
|
: ((this.scrollOffset = null), 0)),
|
|
(this.getFurthestMeasurement = (o, i) => {
|
|
let r = /* @__PURE__ */ new Map(),
|
|
n = /* @__PURE__ */ new Map();
|
|
for (let l = i - 1; l >= 0; l--) {
|
|
let u = o[l];
|
|
if (r.has(u.lane)) continue;
|
|
let c = n.get(u.lane);
|
|
if (
|
|
(c == null || u.end > c.end
|
|
? n.set(u.lane, u)
|
|
: u.end < c.end && r.set(u.lane, !0),
|
|
r.size === this.options.lanes)
|
|
)
|
|
break;
|
|
}
|
|
return n.size === this.options.lanes
|
|
? Array.from(n.values()).sort((l, u) =>
|
|
l.end === u.end ? l.index - u.index : l.end - u.end,
|
|
)[0]
|
|
: void 0;
|
|
}),
|
|
(this.getMeasurementOptions = Ht(
|
|
() => [
|
|
this.options.count,
|
|
this.options.paddingStart,
|
|
this.options.scrollMargin,
|
|
this.options.getItemKey,
|
|
this.options.enabled,
|
|
],
|
|
(o, i, r, n, l) => (
|
|
(this.pendingMeasuredCacheIndexes = []),
|
|
{
|
|
count: o,
|
|
paddingStart: i,
|
|
scrollMargin: r,
|
|
getItemKey: n,
|
|
enabled: l,
|
|
}
|
|
),
|
|
{
|
|
key: !1,
|
|
},
|
|
)),
|
|
(this.getMeasurements = Ht(
|
|
() => [this.getMeasurementOptions(), this.itemSizeCache],
|
|
(
|
|
{
|
|
count: o,
|
|
paddingStart: i,
|
|
scrollMargin: r,
|
|
getItemKey: n,
|
|
enabled: l,
|
|
},
|
|
u,
|
|
) => {
|
|
if (!l)
|
|
return (
|
|
(this.measurementsCache = []),
|
|
this.itemSizeCache.clear(),
|
|
[]
|
|
);
|
|
this.measurementsCache.length === 0 &&
|
|
((this.measurementsCache = this.options.initialMeasurementsCache),
|
|
this.measurementsCache.forEach((p) => {
|
|
this.itemSizeCache.set(p.key, p.size);
|
|
}));
|
|
let c =
|
|
this.pendingMeasuredCacheIndexes.length > 0
|
|
? Math.min(...this.pendingMeasuredCacheIndexes)
|
|
: 0;
|
|
this.pendingMeasuredCacheIndexes = [];
|
|
let d = this.measurementsCache.slice(0, c);
|
|
for (let p = c; p < o; p++) {
|
|
let f = n(p),
|
|
h =
|
|
this.options.lanes === 1
|
|
? d[p - 1]
|
|
: this.getFurthestMeasurement(d, p),
|
|
y = h ? h.end + this.options.gap : i + r,
|
|
m = u.get(f),
|
|
b = typeof m == "number" ? m : this.options.estimateSize(p),
|
|
x = y + b,
|
|
E = h ? h.lane : p % this.options.lanes;
|
|
d[p] = {
|
|
index: p,
|
|
start: y,
|
|
size: b,
|
|
end: x,
|
|
key: f,
|
|
lane: E,
|
|
};
|
|
}
|
|
return ((this.measurementsCache = d), d);
|
|
},
|
|
{
|
|
key: !1,
|
|
debug: /* @__PURE__ */ a(() => this.options.debug, "debug"),
|
|
},
|
|
)),
|
|
(this.calculateRange = Ht(
|
|
() => [
|
|
this.getMeasurements(),
|
|
this.getSize(),
|
|
this.getScrollOffset(),
|
|
this.options.lanes,
|
|
],
|
|
(o, i, r, n) =>
|
|
(this.range =
|
|
o.length > 0 && i > 0
|
|
? g0({
|
|
measurements: o,
|
|
outerSize: i,
|
|
scrollOffset: r,
|
|
lanes: n,
|
|
})
|
|
: null),
|
|
{
|
|
key: !1,
|
|
debug: /* @__PURE__ */ a(() => this.options.debug, "debug"),
|
|
},
|
|
)),
|
|
(this.getVirtualIndexes = Ht(
|
|
() => {
|
|
let o = null,
|
|
i = null,
|
|
r = this.calculateRange();
|
|
return (
|
|
r && ((o = r.startIndex), (i = r.endIndex)),
|
|
this.maybeNotify.updateDeps([this.isScrolling, o, i]),
|
|
[
|
|
this.options.rangeExtractor,
|
|
this.options.overscan,
|
|
this.options.count,
|
|
o,
|
|
i,
|
|
]
|
|
);
|
|
},
|
|
(o, i, r, n, l) =>
|
|
n === null || l === null
|
|
? []
|
|
: o({
|
|
startIndex: n,
|
|
endIndex: l,
|
|
overscan: i,
|
|
count: r,
|
|
}),
|
|
{
|
|
key: !1,
|
|
debug: /* @__PURE__ */ a(() => this.options.debug, "debug"),
|
|
},
|
|
)),
|
|
(this.indexFromElement = (o) => {
|
|
let i = this.options.indexAttribute,
|
|
r = o.getAttribute(i);
|
|
return r
|
|
? parseInt(r, 10)
|
|
: (console.warn(
|
|
`Missing attribute name '${i}={index}' on measured element.`,
|
|
),
|
|
-1);
|
|
}),
|
|
(this._measureElement = (o, i) => {
|
|
let r = this.indexFromElement(o),
|
|
n = this.measurementsCache[r];
|
|
if (!n) return;
|
|
let l = n.key,
|
|
u = this.elementsCache.get(l);
|
|
(u !== o &&
|
|
(u && this.observer.unobserve(u),
|
|
this.observer.observe(o),
|
|
this.elementsCache.set(l, o)),
|
|
o.isConnected &&
|
|
this.resizeItem(r, this.options.measureElement(o, i, this)));
|
|
}),
|
|
(this.resizeItem = (o, i) => {
|
|
let r = this.measurementsCache[o];
|
|
if (!r) return;
|
|
let n = this.itemSizeCache.get(r.key) ?? r.size,
|
|
l = i - n;
|
|
l !== 0 &&
|
|
((this.shouldAdjustScrollPositionOnItemSizeChange !== void 0
|
|
? this.shouldAdjustScrollPositionOnItemSizeChange(r, l, this)
|
|
: r.start < this.getScrollOffset() + this.scrollAdjustments) &&
|
|
this._scrollToOffset(this.getScrollOffset(), {
|
|
adjustments: (this.scrollAdjustments += l),
|
|
behavior: void 0,
|
|
}),
|
|
this.pendingMeasuredCacheIndexes.push(r.index),
|
|
(this.itemSizeCache = new Map(this.itemSizeCache.set(r.key, i))),
|
|
this.notify(!1));
|
|
}),
|
|
(this.measureElement = (o) => {
|
|
if (!o) {
|
|
this.elementsCache.forEach((i, r) => {
|
|
i.isConnected ||
|
|
(this.observer.unobserve(i), this.elementsCache.delete(r));
|
|
});
|
|
return;
|
|
}
|
|
this._measureElement(o, void 0);
|
|
}),
|
|
(this.getVirtualItems = Ht(
|
|
() => [this.getVirtualIndexes(), this.getMeasurements()],
|
|
(o, i) => {
|
|
let r = [];
|
|
for (let n = 0, l = o.length; n < l; n++) {
|
|
let u = o[n],
|
|
c = i[u];
|
|
r.push(c);
|
|
}
|
|
return r;
|
|
},
|
|
{
|
|
key: !1,
|
|
debug: /* @__PURE__ */ a(() => this.options.debug, "debug"),
|
|
},
|
|
)),
|
|
(this.getVirtualItemForOffset = (o) => {
|
|
let i = this.getMeasurements();
|
|
if (i.length !== 0)
|
|
return Mr(i[Zu(0, i.length - 1, (r) => Mr(i[r]).start, o)]);
|
|
}),
|
|
(this.getOffsetForAlignment = (o, i, r = 0) => {
|
|
let n = this.getSize(),
|
|
l = this.getScrollOffset();
|
|
(i === "auto" && (i = o >= l + n ? "end" : "start"),
|
|
i === "center" ? (o += (r - n) / 2) : i === "end" && (o -= n));
|
|
let u = this.options.horizontal ? "scrollWidth" : "scrollHeight",
|
|
d =
|
|
(this.scrollElement
|
|
? "document" in this.scrollElement
|
|
? this.scrollElement.document.documentElement[u]
|
|
: this.scrollElement[u]
|
|
: 0) - n;
|
|
return Math.max(Math.min(d, o), 0);
|
|
}),
|
|
(this.getOffsetForIndex = (o, i = "auto") => {
|
|
o = Math.max(0, Math.min(o, this.options.count - 1));
|
|
let r = this.measurementsCache[o];
|
|
if (!r) return;
|
|
let n = this.getSize(),
|
|
l = this.getScrollOffset();
|
|
if (i === "auto")
|
|
if (r.end >= l + n - this.options.scrollPaddingEnd) i = "end";
|
|
else if (r.start <= l + this.options.scrollPaddingStart)
|
|
i = "start";
|
|
else return [l, i];
|
|
let u =
|
|
i === "end"
|
|
? r.end + this.options.scrollPaddingEnd
|
|
: r.start - this.options.scrollPaddingStart;
|
|
return [this.getOffsetForAlignment(u, i, r.size), i];
|
|
}),
|
|
(this.isDynamicMode = () => this.elementsCache.size > 0),
|
|
(this.cancelScrollToIndex = () => {
|
|
this.scrollToIndexTimeoutId !== null &&
|
|
this.targetWindow &&
|
|
(this.targetWindow.clearTimeout(this.scrollToIndexTimeoutId),
|
|
(this.scrollToIndexTimeoutId = null));
|
|
}),
|
|
(this.scrollToOffset = (
|
|
o,
|
|
{ align: i = "start", behavior: r } = {},
|
|
) => {
|
|
(this.cancelScrollToIndex(),
|
|
r === "smooth" &&
|
|
this.isDynamicMode() &&
|
|
console.warn(
|
|
"The `smooth` scroll behavior is not fully supported with dynamic size.",
|
|
),
|
|
this._scrollToOffset(this.getOffsetForAlignment(o, i), {
|
|
adjustments: void 0,
|
|
behavior: r,
|
|
}));
|
|
}),
|
|
(this.scrollToIndex = (o, { align: i = "auto", behavior: r } = {}) => {
|
|
((o = Math.max(0, Math.min(o, this.options.count - 1))),
|
|
this.cancelScrollToIndex(),
|
|
r === "smooth" &&
|
|
this.isDynamicMode() &&
|
|
console.warn(
|
|
"The `smooth` scroll behavior is not fully supported with dynamic size.",
|
|
));
|
|
let n = this.getOffsetForIndex(o, i);
|
|
if (!n) return;
|
|
let [l, u] = n;
|
|
(this._scrollToOffset(l, { adjustments: void 0, behavior: r }),
|
|
r !== "smooth" &&
|
|
this.isDynamicMode() &&
|
|
this.targetWindow &&
|
|
(this.scrollToIndexTimeoutId = this.targetWindow.setTimeout(
|
|
() => {
|
|
if (
|
|
((this.scrollToIndexTimeoutId = null),
|
|
this.elementsCache.has(this.options.getItemKey(o)))
|
|
) {
|
|
let [d] = Mr(this.getOffsetForIndex(o, u));
|
|
$u(d, this.getScrollOffset()) ||
|
|
this.scrollToIndex(o, { align: u, behavior: r });
|
|
} else this.scrollToIndex(o, { align: u, behavior: r });
|
|
},
|
|
)));
|
|
}),
|
|
(this.scrollBy = (o, { behavior: i } = {}) => {
|
|
(this.cancelScrollToIndex(),
|
|
i === "smooth" &&
|
|
this.isDynamicMode() &&
|
|
console.warn(
|
|
"The `smooth` scroll behavior is not fully supported with dynamic size.",
|
|
),
|
|
this._scrollToOffset(this.getScrollOffset() + o, {
|
|
adjustments: void 0,
|
|
behavior: i,
|
|
}));
|
|
}),
|
|
(this.getTotalSize = () => {
|
|
var o;
|
|
let i = this.getMeasurements(),
|
|
r;
|
|
if (i.length === 0) r = this.options.paddingStart;
|
|
else if (this.options.lanes === 1)
|
|
r = ((o = i[i.length - 1]) == null ? void 0 : o.end) ?? 0;
|
|
else {
|
|
let n = Array(this.options.lanes).fill(null),
|
|
l = i.length - 1;
|
|
for (; l >= 0 && n.some((u) => u === null); ) {
|
|
let u = i[l];
|
|
(n[u.lane] === null && (n[u.lane] = u.end), l--);
|
|
}
|
|
r = Math.max(...n.filter((u) => u !== null));
|
|
}
|
|
return Math.max(
|
|
r - this.options.scrollMargin + this.options.paddingEnd,
|
|
0,
|
|
);
|
|
}),
|
|
(this._scrollToOffset = (o, { adjustments: i, behavior: r }) => {
|
|
this.options.scrollToFn(o, { behavior: r, adjustments: i }, this);
|
|
}),
|
|
(this.measure = () => {
|
|
((this.itemSizeCache = /* @__PURE__ */ new Map()), this.notify(!1));
|
|
}),
|
|
this.setOptions(t));
|
|
}
|
|
};
|
|
a(Vi, "Virtualizer");
|
|
var Lr = Vi,
|
|
Zu = /* @__PURE__ */ a((e, t, o, i) => {
|
|
for (; e <= t; ) {
|
|
let r = ((e + t) / 2) | 0,
|
|
n = o(r);
|
|
if (n < i) e = r + 1;
|
|
else if (n > i) t = r - 1;
|
|
else return r;
|
|
}
|
|
return e > 0 ? e - 1 : 0;
|
|
}, "findNearestBinarySearch");
|
|
function g0({ measurements: e, outerSize: t, scrollOffset: o, lanes: i }) {
|
|
let r = e.length - 1,
|
|
n = /* @__PURE__ */ a((c) => e[c].start, "getOffset");
|
|
if (e.length <= i)
|
|
return {
|
|
startIndex: 0,
|
|
endIndex: r,
|
|
};
|
|
let l = Zu(0, r, n, o),
|
|
u = l;
|
|
if (i === 1) for (; u < r && e[u].end < o + t; ) u++;
|
|
else if (i > 1) {
|
|
let c = Array(i).fill(0);
|
|
for (; u < r && c.some((p) => p < o + t); ) {
|
|
let p = e[u];
|
|
((c[p.lane] = p.end), u++);
|
|
}
|
|
let d = Array(i).fill(o + t);
|
|
for (; l >= 0 && d.some((p) => p >= o); ) {
|
|
let p = e[l];
|
|
((d[p.lane] = p.start), l--);
|
|
}
|
|
((l = Math.max(0, l - (l % i))), (u = Math.min(r, u + (i - 1 - (u % i)))));
|
|
}
|
|
return { startIndex: l, endIndex: u };
|
|
}
|
|
a(g0, "calculateRange");
|
|
|
|
// ../node_modules/@tanstack/react-virtual/dist/esm/index.js
|
|
var Ju = typeof document < "u" ? Xt : H;
|
|
function y0(e) {
|
|
let t = Zt(() => ({}), {})[1],
|
|
o = {
|
|
...e,
|
|
onChange: /* @__PURE__ */ a((r, n) => {
|
|
var l;
|
|
(n ? Do(t) : t(), (l = e.onChange) == null || l.call(e, r, n));
|
|
}, "onChange"),
|
|
},
|
|
[i] = K(() => new Lr(o));
|
|
return (
|
|
i.setOptions(o),
|
|
Ju(() => i._didMount(), []),
|
|
Ju(() => i._willUpdate()),
|
|
i
|
|
);
|
|
}
|
|
a(y0, "useVirtualizerBase");
|
|
function ec(e) {
|
|
return y0({
|
|
observeElementRect: Yu,
|
|
observeElementOffset: Qu,
|
|
scrollToFn: Xu,
|
|
...e,
|
|
});
|
|
}
|
|
a(ec, "useVirtualizer");
|
|
|
|
// src/manager/components/sidebar/FIleSearchList.utils.tsx
|
|
var tc = /* @__PURE__ */ a(
|
|
({ parentRef: e, rowVirtualizer: t, selectedItem: o }) => {
|
|
H(() => {
|
|
let i = /* @__PURE__ */ a((r) => {
|
|
if (!e.current) return;
|
|
let n = t.options.count,
|
|
l = document.activeElement,
|
|
u = parseInt(l.getAttribute("data-index") || "-1", 10),
|
|
c = l.tagName === "INPUT",
|
|
d = /* @__PURE__ */ a(
|
|
() => document.querySelector('[data-index="0"]'),
|
|
"getFirstElement",
|
|
),
|
|
p = /* @__PURE__ */ a(
|
|
() => document.querySelector(`[data-index="${n - 1}"]`),
|
|
"getLastElement",
|
|
);
|
|
if (r.code === "ArrowDown" && l) {
|
|
if ((r.stopPropagation(), c)) {
|
|
d()?.focus();
|
|
return;
|
|
}
|
|
if (u === n - 1) {
|
|
(Do(() => {
|
|
t.scrollToIndex(0, { align: "start" });
|
|
}),
|
|
setTimeout(() => {
|
|
d()?.focus();
|
|
}, 100));
|
|
return;
|
|
}
|
|
if (o === u) {
|
|
document
|
|
.querySelector(`[data-index-position="${o}_first"]`)
|
|
?.focus();
|
|
return;
|
|
}
|
|
if (
|
|
o !== null &&
|
|
l.getAttribute("data-index-position")?.includes("last")
|
|
) {
|
|
document.querySelector(`[data-index="${o + 1}"]`)?.focus();
|
|
return;
|
|
}
|
|
l.nextElementSibling?.focus();
|
|
}
|
|
if (r.code === "ArrowUp" && l) {
|
|
if (c) {
|
|
(Do(() => {
|
|
t.scrollToIndex(n - 1, { align: "start" });
|
|
}),
|
|
setTimeout(() => {
|
|
p()?.focus();
|
|
}, 100));
|
|
return;
|
|
}
|
|
if (
|
|
o !== null &&
|
|
l.getAttribute("data-index-position")?.includes("first")
|
|
) {
|
|
document.querySelector(`[data-index="${o}"]`)?.focus();
|
|
return;
|
|
}
|
|
l.previousElementSibling?.focus();
|
|
}
|
|
}, "handleArrowKeys");
|
|
return (
|
|
document.addEventListener("keydown", i, { capture: !0 }),
|
|
() => {
|
|
document.removeEventListener("keydown", i, { capture: !0 });
|
|
}
|
|
);
|
|
}, [t, o, e]);
|
|
},
|
|
"useArrowKeyNavigation",
|
|
);
|
|
|
|
// src/manager/components/sidebar/FileList.tsx
|
|
var oc = I("div")(({ theme: e }) => ({
|
|
marginTop: "-16px",
|
|
// after element which fades out the list
|
|
"&::after": {
|
|
content: '""',
|
|
position: "fixed",
|
|
pointerEvents: "none",
|
|
bottom: 0,
|
|
left: 0,
|
|
right: 0,
|
|
height: "80px",
|
|
background: `linear-gradient(${so(e.barBg, 0)} 10%, ${e.barBg} 80%)`,
|
|
},
|
|
})),
|
|
Nr = I("div")(({ theme: e }) => ({
|
|
height: "280px",
|
|
overflow: "auto",
|
|
msOverflowStyle: "none",
|
|
scrollbarWidth: "none",
|
|
position: "relative",
|
|
"::-webkit-scrollbar": {
|
|
display: "none",
|
|
},
|
|
})),
|
|
rc = I("li")(({ theme: e }) => ({
|
|
":focus-visible": {
|
|
outline: "none",
|
|
".file-list-item": {
|
|
borderRadius: "4px",
|
|
background:
|
|
e.base === "dark" ? "rgba(255,255,255,.1)" : e.color.mediumlight,
|
|
"> svg": {
|
|
display: "flex",
|
|
},
|
|
},
|
|
},
|
|
})),
|
|
Fr = I("div")(({ theme: e }) => ({
|
|
display: "flex",
|
|
flexDirection: "column",
|
|
position: "relative",
|
|
})),
|
|
nc = I.div(({ theme: e, selected: t, disabled: o, error: i }) => ({
|
|
display: "flex",
|
|
alignItems: "flex-start",
|
|
gap: "8px",
|
|
alignSelf: "stretch",
|
|
padding: "8px 16px",
|
|
cursor: "pointer",
|
|
borderRadius: "4px",
|
|
...(t && {
|
|
borderRadius: "4px",
|
|
background:
|
|
e.base === "dark" ? "rgba(255,255,255,.1)" : e.color.mediumlight,
|
|
"> svg": {
|
|
display: "flex",
|
|
},
|
|
}),
|
|
...(o && {
|
|
cursor: "not-allowed",
|
|
div: {
|
|
color: `${e.color.mediumdark} !important`,
|
|
},
|
|
}),
|
|
...(i && {
|
|
background: e.base === "light" ? "#00000011" : "#00000033",
|
|
}),
|
|
"&:hover": {
|
|
background: i
|
|
? "#00000022"
|
|
: e.base === "dark"
|
|
? "rgba(255,255,255,.1)"
|
|
: e.color.mediumlight,
|
|
"> svg": {
|
|
display: "flex",
|
|
},
|
|
},
|
|
})),
|
|
ic = I("ul")({
|
|
margin: 0,
|
|
padding: "0 0 0 0",
|
|
width: "100%",
|
|
position: "relative",
|
|
}),
|
|
sc = I("div")({
|
|
display: "flex",
|
|
flexDirection: "column",
|
|
alignItems: "flex-start",
|
|
width: "calc(100% - 50px)",
|
|
}),
|
|
ac = I("div")(({ theme: e, error: t }) => ({
|
|
color: t ? e.color.negativeText : e.color.secondary,
|
|
})),
|
|
lc = I("div")(({ theme: e, error: t }) => ({
|
|
color: t
|
|
? e.color.negativeText
|
|
: e.base === "dark"
|
|
? e.color.lighter
|
|
: e.color.darkest,
|
|
fontSize: "14px",
|
|
whiteSpace: "nowrap",
|
|
textOverflow: "ellipsis",
|
|
overflow: "hidden",
|
|
maxWidth: "100%",
|
|
})),
|
|
uc = I("div")(({ theme: e }) => ({
|
|
color: e.color.mediumdark,
|
|
fontSize: "14px",
|
|
whiteSpace: "nowrap",
|
|
textOverflow: "ellipsis",
|
|
overflow: "hidden",
|
|
maxWidth: "100%",
|
|
})),
|
|
cc = I("ul")(({ theme: e }) => ({
|
|
margin: 0,
|
|
padding: 0,
|
|
})),
|
|
pc = I("li")(({ theme: e, error: t }) => ({
|
|
padding: "8px 16px 8px 16px",
|
|
marginLeft: "30px",
|
|
display: "flex",
|
|
gap: "8px",
|
|
alignItems: "center",
|
|
justifyContent: "space-between",
|
|
fontSize: "14px",
|
|
cursor: "pointer",
|
|
borderRadius: "4px",
|
|
":focus-visible": {
|
|
outline: "none",
|
|
},
|
|
...(t && {
|
|
background: "#F9ECEC",
|
|
color: e.color.negativeText,
|
|
}),
|
|
"&:hover,:focus-visible": {
|
|
background: t
|
|
? "#F9ECEC"
|
|
: e.base === "dark"
|
|
? "rgba(255, 255, 255, 0.1)"
|
|
: e.color.mediumlight,
|
|
"> svg": {
|
|
display: "flex",
|
|
},
|
|
},
|
|
"> div > svg": {
|
|
color: t ? e.color.negativeText : e.color.secondary,
|
|
},
|
|
})),
|
|
dc = I("div")(({ theme: e }) => ({
|
|
display: "flex",
|
|
alignItems: "center",
|
|
gap: "8px",
|
|
width: "calc(100% - 20px)",
|
|
})),
|
|
fc = I("span")(({ theme: e }) => ({
|
|
whiteSpace: "nowrap",
|
|
textOverflow: "ellipsis",
|
|
overflow: "hidden",
|
|
maxWidth: "calc(100% - 160px)",
|
|
display: "inline-block",
|
|
})),
|
|
mc = I("span")(({ theme: e }) => ({
|
|
display: "inline-block",
|
|
padding: `1px ${e.appBorderRadius}px`,
|
|
borderRadius: "2px",
|
|
fontSize: "10px",
|
|
color: e.base === "dark" ? e.color.lightest : "#727272",
|
|
backgroundColor: e.base === "dark" ? "rgba(255, 255, 255, 0.1)" : "#F2F4F5",
|
|
})),
|
|
hc = I("div")(({ theme: e }) => ({
|
|
textAlign: "center",
|
|
maxWidth: "334px",
|
|
margin: "16px auto 50px auto",
|
|
fontSize: "14px",
|
|
color: e.base === "dark" ? e.color.lightest : "#000",
|
|
})),
|
|
gc = I("p")(({ theme: e }) => ({
|
|
margin: 0,
|
|
color: e.base === "dark" ? e.color.defaultText : e.color.mediumdark,
|
|
}));
|
|
|
|
// src/manager/components/sidebar/FileSearchListSkeleton.tsx
|
|
var b0 = I("div")(({ theme: e }) => ({
|
|
display: "flex",
|
|
alignItems: "flex-start",
|
|
gap: "8px",
|
|
alignSelf: "stretch",
|
|
padding: "8px 16px",
|
|
})),
|
|
v0 = I("div")({
|
|
display: "flex",
|
|
flexDirection: "column",
|
|
alignItems: "flex-start",
|
|
width: "100%",
|
|
borderRadius: "3px",
|
|
}),
|
|
x0 = I.div(({ theme: e }) => ({
|
|
width: "14px",
|
|
height: "14px",
|
|
borderRadius: "3px",
|
|
marginTop: "1px",
|
|
background: e.base === "dark" ? "rgba(255,255,255,.1)" : "rgba(0,0,0,.1)",
|
|
animation: `${e.animation.glow} 1.5s ease-in-out infinite`,
|
|
})),
|
|
yc = I.div(({ theme: e }) => ({
|
|
height: "16px",
|
|
borderRadius: "3px",
|
|
background: e.base === "dark" ? "rgba(255,255,255,.1)" : "rgba(0,0,0,.1)",
|
|
animation: `${e.animation.glow} 1.5s ease-in-out infinite`,
|
|
width: "100%",
|
|
maxWidth: "100%",
|
|
"+ div": {
|
|
marginTop: "6px",
|
|
},
|
|
})),
|
|
bc = /* @__PURE__ */ a(
|
|
() =>
|
|
/* @__PURE__ */ s.createElement(
|
|
Nr,
|
|
null,
|
|
[1, 2, 3].map((e) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
Fr,
|
|
{ key: e },
|
|
/* @__PURE__ */ s.createElement(
|
|
b0,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(x0, null),
|
|
/* @__PURE__ */ s.createElement(
|
|
v0,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(yc, {
|
|
style: { width: "90px" },
|
|
}),
|
|
/* @__PURE__ */ s.createElement(yc, {
|
|
style: { width: "300px" },
|
|
}),
|
|
),
|
|
),
|
|
),
|
|
),
|
|
),
|
|
"FileSearchListLoa\
|
|
dingSkeleton",
|
|
);
|
|
|
|
// src/manager/components/sidebar/FileSearchList.tsx
|
|
var vc = I(Cn)(({ theme: e }) => ({
|
|
display: "none",
|
|
alignSelf: "center",
|
|
color: e.color.mediumdark,
|
|
})),
|
|
I0 = I(Ot)(({ theme: e }) => ({
|
|
display: "none",
|
|
alignSelf: "center",
|
|
color: e.color.mediumdark,
|
|
})),
|
|
xc = _t(
|
|
/* @__PURE__ */ a(function ({
|
|
isLoading: t,
|
|
searchResults: o,
|
|
onNewStory: i,
|
|
errorItemId: r,
|
|
}) {
|
|
let [n, l] = K(null),
|
|
u = s.useRef(),
|
|
c = G(
|
|
() =>
|
|
[...(o ?? [])].sort((m, b) => {
|
|
let x =
|
|
m.exportedComponents === null ||
|
|
m.exportedComponents?.length === 0,
|
|
E = m.storyFileExists,
|
|
g =
|
|
b.exportedComponents === null ||
|
|
b.exportedComponents?.length === 0,
|
|
v = b.storyFileExists;
|
|
return E && !v
|
|
? -1
|
|
: (v && !E) || (x && !g)
|
|
? 1
|
|
: !x && g
|
|
? -1
|
|
: 0;
|
|
}),
|
|
[o],
|
|
),
|
|
d = o?.length || 0,
|
|
p = ec({
|
|
count: d,
|
|
// @ts-expect-error (non strict)
|
|
getScrollElement: /* @__PURE__ */ a(
|
|
() => u.current,
|
|
"getScrollElement",
|
|
),
|
|
paddingStart: 16,
|
|
paddingEnd: 40,
|
|
estimateSize: /* @__PURE__ */ a(() => 54, "estimateSize"),
|
|
overscan: 2,
|
|
});
|
|
tc({ rowVirtualizer: p, parentRef: u, selectedItem: n });
|
|
let f = A(
|
|
({ virtualItem: m, searchResult: b, itemId: x }) => {
|
|
b?.exportedComponents?.length > 1
|
|
? l((E) => (E === m.index ? null : m.index))
|
|
: b?.exportedComponents?.length === 1 &&
|
|
i({
|
|
componentExportName: b.exportedComponents[0].name,
|
|
componentFilePath: b.filepath,
|
|
componentIsDefaultExport: b.exportedComponents[0].default,
|
|
selectedItemId: x,
|
|
componentExportCount: 1,
|
|
});
|
|
},
|
|
[i],
|
|
),
|
|
h = A(
|
|
({ searchResult: m, component: b, id: x }) => {
|
|
i({
|
|
componentExportName: b.name,
|
|
componentFilePath: m.filepath,
|
|
componentIsDefaultExport: b.default,
|
|
selectedItemId: x,
|
|
// @ts-expect-error (non strict)
|
|
componentExportCount: m.exportedComponents.length,
|
|
});
|
|
},
|
|
[i],
|
|
),
|
|
y = A(
|
|
({ virtualItem: m, selected: b, searchResult: x }) => {
|
|
let E = r === x.filepath,
|
|
g = b === m.index;
|
|
return /* @__PURE__ */ s.createElement(
|
|
Fr,
|
|
{
|
|
"aria-expanded": g,
|
|
"aria-controls": `file-list-export-${m.index}`,
|
|
id: `file-list-item-wrapper-${m.index}`,
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
nc,
|
|
{
|
|
className: "file-list-item",
|
|
selected: g,
|
|
error: E,
|
|
disabled:
|
|
x.exportedComponents === null ||
|
|
x.exportedComponents?.length === 0,
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
ac,
|
|
{ error: E },
|
|
/* @__PURE__ */ s.createElement(Xo, null),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
sc,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
lc,
|
|
{ error: E },
|
|
x.filepath.split("/").at(-1),
|
|
),
|
|
/* @__PURE__ */ s.createElement(uc, null, x.filepath),
|
|
),
|
|
g
|
|
? /* @__PURE__ */ s.createElement(I0, null)
|
|
: /* @__PURE__ */ s.createElement(vc, null),
|
|
),
|
|
x?.exportedComponents?.length > 1 &&
|
|
g &&
|
|
/* @__PURE__ */ s.createElement(
|
|
cc,
|
|
{
|
|
role: "region",
|
|
id: `file-list-export-${m.index}`,
|
|
"aria-labelledby": `file-list-item-wrapper-${m.index}`,
|
|
onClick: (v) => {
|
|
v.stopPropagation();
|
|
},
|
|
onKeyUp: (v) => {
|
|
v.key === "Enter" && v.stopPropagation();
|
|
},
|
|
},
|
|
x.exportedComponents?.map((v, S) => {
|
|
let w = r === `${x.filepath}_${S}`,
|
|
k =
|
|
S === 0
|
|
? "first"
|
|
: // @ts-expect-error (non strict)
|
|
S === x.exportedComponents.length - 1
|
|
? "last"
|
|
: "middle";
|
|
return /* @__PURE__ */ s.createElement(
|
|
pc,
|
|
{
|
|
tabIndex: 0,
|
|
"data-index-position": `${m.index}_${k}`,
|
|
key: v.name,
|
|
error: w,
|
|
onClick: () => {
|
|
h({
|
|
searchResult: x,
|
|
component: v,
|
|
id: `${x.filepath}_${S}`,
|
|
});
|
|
},
|
|
onKeyUp: (_) => {
|
|
_.key === "Enter" &&
|
|
h({
|
|
searchResult: x,
|
|
component: v,
|
|
id: `${x.filepath}_${S}`,
|
|
});
|
|
},
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
dc,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(Xo, null),
|
|
v.default
|
|
? /* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
fc,
|
|
null,
|
|
x.filepath.split("/").at(-1)?.split(".")?.at(0),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
mc,
|
|
null,
|
|
"Default export",
|
|
),
|
|
)
|
|
: v.name,
|
|
),
|
|
/* @__PURE__ */ s.createElement(vc, null),
|
|
);
|
|
}),
|
|
),
|
|
);
|
|
},
|
|
[h, r],
|
|
);
|
|
return t && (o === null || o?.length === 0)
|
|
? /* @__PURE__ */ s.createElement(bc, null)
|
|
: o?.length === 0
|
|
? /* @__PURE__ */ s.createElement(
|
|
hc,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
"p",
|
|
null,
|
|
"We could not find any file with that name",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
gc,
|
|
null,
|
|
"You may want to try using different keywords, check for typos, and adjust your filters",
|
|
),
|
|
)
|
|
: c?.length > 0
|
|
? /* @__PURE__ */ s.createElement(
|
|
oc,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
Nr,
|
|
{ ref: u },
|
|
/* @__PURE__ */ s.createElement(
|
|
ic,
|
|
{
|
|
style: {
|
|
height: `${p.getTotalSize()}px`,
|
|
},
|
|
},
|
|
p.getVirtualItems().map((m) => {
|
|
let b = c[m.index],
|
|
x =
|
|
b.exportedComponents === null ||
|
|
b.exportedComponents?.length === 0,
|
|
E = {};
|
|
return /* @__PURE__ */ s.createElement(
|
|
rc,
|
|
{
|
|
key: m.key,
|
|
"data-index": m.index,
|
|
ref: p.measureElement,
|
|
onClick: () => {
|
|
f({
|
|
virtualItem: m,
|
|
itemId: b.filepath,
|
|
searchResult: b,
|
|
});
|
|
},
|
|
onKeyUp: (g) => {
|
|
g.key === "Enter" &&
|
|
f({
|
|
virtualItem: m,
|
|
itemId: b.filepath,
|
|
searchResult: b,
|
|
});
|
|
},
|
|
style: {
|
|
position: "absolute",
|
|
top: 0,
|
|
left: 0,
|
|
width: "100%",
|
|
transform: `translateY(${m.start}px)`,
|
|
},
|
|
tabIndex: 0,
|
|
},
|
|
x
|
|
? /* @__PURE__ */ s.createElement(
|
|
ve,
|
|
{
|
|
...E,
|
|
style: { width: "100%" },
|
|
hasChrome: !1,
|
|
closeOnOutsideClick: !0,
|
|
tooltip: /* @__PURE__ */ s.createElement(rt, {
|
|
note: x
|
|
? "We can't evaluate exports for this file. You can't create a story for it automatically"
|
|
: null,
|
|
}),
|
|
},
|
|
/* @__PURE__ */ s.createElement(y, {
|
|
searchResult: b,
|
|
selected: n,
|
|
virtualItem: m,
|
|
}),
|
|
)
|
|
: /* @__PURE__ */ s.createElement(y, {
|
|
...E,
|
|
key: m.index,
|
|
searchResult: b,
|
|
selected: n,
|
|
virtualItem: m,
|
|
}),
|
|
);
|
|
}),
|
|
),
|
|
),
|
|
)
|
|
: null;
|
|
}, "FileSearchList"),
|
|
);
|
|
|
|
// src/manager/components/sidebar/FileSearchModal.tsx
|
|
var S0 = 418,
|
|
w0 = I(Mt)(() => ({
|
|
boxShadow: "none",
|
|
background: "transparent",
|
|
overflow: "visible",
|
|
})),
|
|
E0 = I.div(({ theme: e, height: t }) => ({
|
|
backgroundColor: e.background.bar,
|
|
borderRadius: 6,
|
|
boxShadow:
|
|
"rgba(255, 255, 255, 0.05) 0 0 0 1px inset, rgba(14, 18, 22, 0.35) 0px 10px 18px -10px",
|
|
padding: "16px",
|
|
transition: "height 0.3s",
|
|
height: t ? `${t + 32}px` : "auto",
|
|
overflow: "hidden",
|
|
})),
|
|
T0 = I(Mt.Content)(({ theme: e }) => ({
|
|
margin: 0,
|
|
color: e.base === "dark" ? e.color.lighter : e.color.mediumdark,
|
|
})),
|
|
C0 = I(rr.Input)(({ theme: e }) => ({
|
|
paddingLeft: 40,
|
|
paddingRight: 28,
|
|
fontSize: 14,
|
|
height: 40,
|
|
...(e.base === "light" && {
|
|
color: e.color.darkest,
|
|
}),
|
|
"::placeholder": {
|
|
color: e.color.mediumdark,
|
|
},
|
|
"&:invalid:not(:placeholder-shown)": {
|
|
boxShadow: `${e.color.negative} 0 0 0 1px inset`,
|
|
},
|
|
"&::-webkit-search-decoration, &::-webkit-search-cancel-button, &::-webkit-search-results-button, &::-webkit-search-results-decoration":
|
|
{
|
|
display: "none",
|
|
},
|
|
})),
|
|
_0 = I.div({
|
|
display: "flex",
|
|
flexDirection: "column",
|
|
flexGrow: 1,
|
|
position: "relative",
|
|
}),
|
|
k0 = I.div(({ theme: e }) => ({
|
|
position: "absolute",
|
|
top: 0,
|
|
left: 16,
|
|
zIndex: 1,
|
|
pointerEvents: "none",
|
|
color: e.darkest,
|
|
display: "flex",
|
|
alignItems: "center",
|
|
height: "100%",
|
|
})),
|
|
O0 = I.div(({ theme: e }) => ({
|
|
position: "absolute",
|
|
top: 0,
|
|
right: 16,
|
|
zIndex: 1,
|
|
color: e.darkest,
|
|
display: "flex",
|
|
alignItems: "center",
|
|
height: "100%",
|
|
"@keyframes spin": {
|
|
from: { transform: "rotate(0deg)" },
|
|
to: { transform: "rotate(360deg)" },
|
|
},
|
|
animation: "spin 1s linear infinite",
|
|
})),
|
|
P0 = I(Mt.Error)({
|
|
position: "absolute",
|
|
padding: "8px 40px 8px 16px",
|
|
bottom: 0,
|
|
maxHeight: "initial",
|
|
width: "100%",
|
|
div: {
|
|
wordBreak: "break-word",
|
|
},
|
|
"> div": {
|
|
padding: 0,
|
|
},
|
|
}),
|
|
A0 = I(bo)({
|
|
position: "absolute",
|
|
top: 4,
|
|
right: -24,
|
|
cursor: "pointer",
|
|
}),
|
|
Ic = /* @__PURE__ */ a(
|
|
({
|
|
open: e,
|
|
onOpenChange: t,
|
|
fileSearchQuery: o,
|
|
setFileSearchQuery: i,
|
|
isLoading: r,
|
|
error: n,
|
|
searchResults: l,
|
|
onCreateNewStory: u,
|
|
setError: c,
|
|
container: d,
|
|
}) => {
|
|
let [p, f] = Ku(),
|
|
[h, y] = K(f.height),
|
|
[, m] = ia(),
|
|
[b, x] = K(o);
|
|
return (
|
|
H(() => {
|
|
h < f.height && y(f.height);
|
|
}, [f.height, h]),
|
|
/* @__PURE__ */ s.createElement(
|
|
w0,
|
|
{
|
|
height: S0,
|
|
width: 440,
|
|
open: e,
|
|
onOpenChange: t,
|
|
onEscapeKeyDown: () => {
|
|
t(!1);
|
|
},
|
|
onInteractOutside: () => {
|
|
t(!1);
|
|
},
|
|
container: d,
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
E0,
|
|
{ height: o === "" ? f.height : h },
|
|
/* @__PURE__ */ s.createElement(
|
|
T0,
|
|
{ ref: p },
|
|
/* @__PURE__ */ s.createElement(
|
|
Mt.Header,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
Mt.Title,
|
|
null,
|
|
"Add a new story",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
Mt.Description,
|
|
null,
|
|
"We will create a new story for your component",
|
|
),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
_0,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
k0,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(So, null),
|
|
),
|
|
/* @__PURE__ */ s.createElement(C0, {
|
|
placeholder: "./components/**/*.tsx",
|
|
type: "search",
|
|
required: !0,
|
|
autoFocus: !0,
|
|
value: b,
|
|
onChange: (E) => {
|
|
let g = E.target.value;
|
|
(x(g),
|
|
m(() => {
|
|
i(g);
|
|
}));
|
|
},
|
|
}),
|
|
r &&
|
|
/* @__PURE__ */ s.createElement(
|
|
O0,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(ct, null),
|
|
),
|
|
),
|
|
/* @__PURE__ */ s.createElement(xc, {
|
|
errorItemId: n?.selectedItemId,
|
|
isLoading: r,
|
|
searchResults: l,
|
|
onNewStory: u,
|
|
}),
|
|
),
|
|
),
|
|
n &&
|
|
o !== "" &&
|
|
/* @__PURE__ */ s.createElement(
|
|
P0,
|
|
null,
|
|
/* @__PURE__ */ s.createElement("div", null, n.error),
|
|
/* @__PURE__ */ s.createElement(A0, {
|
|
onClick: () => {
|
|
c(null);
|
|
},
|
|
}),
|
|
),
|
|
)
|
|
);
|
|
},
|
|
"FileSearchModal",
|
|
);
|
|
|
|
// src/manager/components/sidebar/FileSearchModal.utils.tsx
|
|
function Sc(e) {
|
|
return Object.keys(e).reduce((o, i) => {
|
|
let r = e[i];
|
|
if (typeof r.control == "object" && "type" in r.control)
|
|
switch (r.control.type) {
|
|
case "object":
|
|
o[i] = {};
|
|
break;
|
|
case "inline-radio":
|
|
case "radio":
|
|
case "inline-check":
|
|
case "check":
|
|
case "select":
|
|
case "multi-select":
|
|
o[i] = r.control.options?.[0];
|
|
break;
|
|
case "color":
|
|
o[i] = "#000000";
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
return (Rr(r.type, o, i), o);
|
|
}, {});
|
|
}
|
|
a(Sc, "extractSeededRequiredArgs");
|
|
function Rr(e, t, o) {
|
|
if (!(typeof e == "string" || !e.required))
|
|
switch (e.name) {
|
|
case "boolean":
|
|
t[o] = !0;
|
|
break;
|
|
case "number":
|
|
t[o] = 0;
|
|
break;
|
|
case "string":
|
|
t[o] = o;
|
|
break;
|
|
case "array":
|
|
t[o] = [];
|
|
break;
|
|
case "object":
|
|
((t[o] = {}),
|
|
Object.entries(e.value ?? {}).forEach(([i, r]) => {
|
|
Rr(r, t[o], i);
|
|
}));
|
|
break;
|
|
case "function":
|
|
t[o] = () => {};
|
|
break;
|
|
case "intersection":
|
|
e.value?.every((i) => i.name === "object") &&
|
|
((t[o] = {}),
|
|
e.value?.forEach((i) => {
|
|
i.name === "object" &&
|
|
Object.entries(i.value ?? {}).forEach(([r, n]) => {
|
|
Rr(n, t[o], r);
|
|
});
|
|
}));
|
|
break;
|
|
case "union":
|
|
e.value?.[0] !== void 0 && Rr(e.value[0], t, o);
|
|
break;
|
|
case "enum":
|
|
e.value?.[0] !== void 0 && (t[o] = e.value?.[0]);
|
|
break;
|
|
case "other":
|
|
typeof e.value == "string" && e.value === "tuple" && (t[o] = []);
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
a(Rr, "setArgType");
|
|
async function Br(e, t, o = 1) {
|
|
if (o > 10)
|
|
throw new Error("We could not select the new story. Please try again.");
|
|
try {
|
|
await e(t);
|
|
} catch {
|
|
return (await new Promise((r) => setTimeout(r, 500)), Br(e, t, o + 1));
|
|
}
|
|
}
|
|
a(Br, "trySelectNewStory");
|
|
|
|
// src/manager/components/sidebar/CreateNewStoryFileModal.tsx
|
|
var D0 = /* @__PURE__ */ a(
|
|
(e) =>
|
|
JSON.stringify(e, (t, o) =>
|
|
typeof o == "function" ? "__sb_empty_function_arg__" : o,
|
|
),
|
|
"stringifyArgs",
|
|
),
|
|
wc = /* @__PURE__ */ a(({ open: e, onOpenChange: t }) => {
|
|
let [o, i] = K(!1),
|
|
[r, n] = K(""),
|
|
l = ju(r, 600),
|
|
u = ra(l),
|
|
c = U(null),
|
|
[d, p] = K(null),
|
|
f = oe(),
|
|
[h, y] = K(null),
|
|
m = A(
|
|
(g) => {
|
|
(f.addNotification({
|
|
id: "create-new-story-file-success",
|
|
content: {
|
|
headline: "Story file created",
|
|
subHeadline: `${g} was created`,
|
|
},
|
|
duration: 8e3,
|
|
icon: /* @__PURE__ */ s.createElement(Be, null),
|
|
}),
|
|
t(!1));
|
|
},
|
|
[f, t],
|
|
),
|
|
b = A(() => {
|
|
(f.addNotification({
|
|
id: "create-new-story-file-error",
|
|
content: {
|
|
headline: "Story already exists",
|
|
subHeadline: "Successfully navigated to existing story",
|
|
},
|
|
duration: 8e3,
|
|
icon: /* @__PURE__ */ s.createElement(Be, null),
|
|
}),
|
|
t(!1));
|
|
}, [f, t]),
|
|
x = A(() => {
|
|
i(!0);
|
|
let g = He.getChannel(),
|
|
v = /* @__PURE__ */ a((S) => {
|
|
S.id === u &&
|
|
(S.success ? y(S.payload.files) : p({ error: S.error }),
|
|
g.off(Yo, v),
|
|
i(!1),
|
|
(c.current = null));
|
|
}, "set");
|
|
return (
|
|
g.on(Yo, v),
|
|
u !== "" && c.current !== u
|
|
? ((c.current = u),
|
|
g.emit(fa, {
|
|
id: u,
|
|
payload: {},
|
|
}))
|
|
: (y(null), i(!1)),
|
|
() => {
|
|
g.off(Yo, v);
|
|
}
|
|
);
|
|
}, [u]),
|
|
E = A(
|
|
async ({
|
|
componentExportName: g,
|
|
componentFilePath: v,
|
|
componentIsDefaultExport: S,
|
|
componentExportCount: w,
|
|
selectedItemId: k,
|
|
}) => {
|
|
try {
|
|
let _ = He.getChannel(),
|
|
C = await Jo(_, pa, da, {
|
|
componentExportName: g,
|
|
componentFilePath: v,
|
|
componentIsDefaultExport: S,
|
|
componentExportCount: w,
|
|
});
|
|
p(null);
|
|
let T = C.storyId;
|
|
await Br(f.selectStory, T);
|
|
try {
|
|
let P = (
|
|
await Jo(_, aa, la, {
|
|
storyId: T,
|
|
})
|
|
).argTypes,
|
|
D = Sc(P);
|
|
await Jo(_, ha, ga, {
|
|
args: D0(D),
|
|
importPath: C.storyFilePath,
|
|
csfId: T,
|
|
});
|
|
} catch {}
|
|
(m(g), x());
|
|
} catch (_) {
|
|
switch (_?.payload?.type) {
|
|
case "STORY_FILE_EXISTS":
|
|
let C = _;
|
|
(await Br(f.selectStory, C.payload.kind), b());
|
|
break;
|
|
default:
|
|
p({ selectedItemId: k, error: _?.message });
|
|
break;
|
|
}
|
|
}
|
|
},
|
|
[f?.selectStory, m, x, b],
|
|
);
|
|
return (
|
|
H(() => {
|
|
p(null);
|
|
}, [u]),
|
|
H(() => x(), [x]),
|
|
/* @__PURE__ */ s.createElement(Ic, {
|
|
error: d,
|
|
fileSearchQuery: r,
|
|
fileSearchQueryDeferred: u,
|
|
onCreateNewStory: E,
|
|
isLoading: o,
|
|
onOpenChange: t,
|
|
open: e,
|
|
searchResults: h,
|
|
setError: p,
|
|
setFileSearchQuery: n,
|
|
})
|
|
);
|
|
}, "CreateNewStoryFileModal");
|
|
|
|
// src/manager/components/sidebar/HighlightStyles.tsx
|
|
var Ec = /* @__PURE__ */ a(
|
|
({ refId: e, itemId: t }) =>
|
|
/* @__PURE__ */ s.createElement(eo, {
|
|
styles: ({ color: o }) => {
|
|
let i = Te(0.85, o.secondary);
|
|
return {
|
|
[`[data-ref-id="${e}"][data-item-id="${t}"]:not([data-selected="true"])`]:
|
|
{
|
|
'&[data-nodetype="component"], &[data-nodetype="group"]': {
|
|
background: i,
|
|
"&:hover, &:focus": { background: i },
|
|
},
|
|
'&[data-nodetype="story"], &[data-nodetype="document"]': {
|
|
color: o.defaultText,
|
|
background: i,
|
|
"&:hover, &:focus": { background: i },
|
|
},
|
|
},
|
|
};
|
|
},
|
|
}),
|
|
"HighlightStyles",
|
|
);
|
|
|
|
// src/manager/utils/tree.ts
|
|
var co = Ve(Di(), 1);
|
|
var { document: ji, window: M0 } = se,
|
|
Hr = /* @__PURE__ */ a(
|
|
(e, t) => (!t || t === lt ? e : `${t}_${e}`),
|
|
"createId",
|
|
),
|
|
_c = /* @__PURE__ */ a(
|
|
(e, t) => `${ji.location.pathname}?path=/${e.type}/${Hr(e.id, t)}`,
|
|
"getLink",
|
|
);
|
|
var Tc = (0, co.default)(1e3)((e, t) => t[e]),
|
|
L0 = (0, co.default)(1e3)((e, t) => {
|
|
let o = Tc(e, t);
|
|
return o && o.type !== "root" ? Tc(o.parent, t) : void 0;
|
|
}),
|
|
kc = (0, co.default)(1e3)((e, t) => {
|
|
let o = L0(e, t);
|
|
return o ? [o, ...kc(o.id, t)] : [];
|
|
}),
|
|
Fo = (0, co.default)(1e3)((e, t) => kc(t, e).map((o) => o.id)),
|
|
at = (0, co.default)(1e3)((e, t, o) => {
|
|
let i = e[t];
|
|
return !i || i.type === "story" || i.type === "docs" || !i.children
|
|
? []
|
|
: i.children.reduce((r, n) => {
|
|
let l = e[n];
|
|
return (
|
|
!l ||
|
|
(o && (l.type === "story" || l.type === "docs")) ||
|
|
r.push(n, ...at(e, n, o)),
|
|
r
|
|
);
|
|
}, []);
|
|
});
|
|
function Oc(e, t) {
|
|
let o = e.type !== "root" && e.parent ? t.index[e.parent] : null;
|
|
return o ? [...Oc(o, t), o.name] : t.id === lt ? [] : [t.title || t.id];
|
|
}
|
|
a(Oc, "getPath");
|
|
var Ki = /* @__PURE__ */ a(
|
|
(e, t) => ({ ...e, refId: t.id, path: Oc(e, t) }),
|
|
"searchItem",
|
|
);
|
|
function Pc(e, t, o) {
|
|
let i = t + (o % e.length);
|
|
return (i < 0 && (i = e.length + i), i >= e.length && (i -= e.length), i);
|
|
}
|
|
a(Pc, "cycle");
|
|
var zt = /* @__PURE__ */ a((e, t = !1) => {
|
|
if (!e) return;
|
|
let { top: o, bottom: i } = e.getBoundingClientRect();
|
|
if (!o || !i) return;
|
|
let r =
|
|
ji?.querySelector("#sidebar-bottom-wrapper")?.getBoundingClientRect()
|
|
.top ||
|
|
M0.innerHeight ||
|
|
ji.documentElement.clientHeight;
|
|
i > r && e.scrollIntoView({ block: t ? "center" : "nearest" });
|
|
}, "scrollIntoView"),
|
|
Ac = /* @__PURE__ */ a((e, t, o, i) => {
|
|
switch (!0) {
|
|
case t:
|
|
return "auth";
|
|
case o:
|
|
return "error";
|
|
case e:
|
|
return "loading";
|
|
case i:
|
|
return "empty";
|
|
default:
|
|
return "ready";
|
|
}
|
|
}, "getStateType"),
|
|
Wt = /* @__PURE__ */ a(
|
|
(e, t) => (!e || !t ? !1 : e === t ? !0 : Wt(e.parentElement || void 0, t)),
|
|
"isAncestor",
|
|
),
|
|
Cc = /* @__PURE__ */ a(
|
|
(e) => e.replaceAll(/(\s|-|_)/gi, ""),
|
|
"removeNoiseFromName",
|
|
),
|
|
Dc = /* @__PURE__ */ a((e, t) => Cc(e) === Cc(t), "isStoryHoistable");
|
|
|
|
// src/manager/components/sidebar/Loader.tsx
|
|
var Mc = [0, 0, 1, 1, 2, 3, 3, 3, 1, 1, 1, 2, 2, 2, 3],
|
|
N0 = I.div(
|
|
{
|
|
cursor: "progress",
|
|
fontSize: 13,
|
|
height: "16px",
|
|
marginTop: 4,
|
|
marginBottom: 4,
|
|
alignItems: "center",
|
|
overflow: "hidden",
|
|
},
|
|
({ depth: e = 0 }) => ({
|
|
marginLeft: e * 15,
|
|
maxWidth: 85 - e * 5,
|
|
}),
|
|
({ theme: e }) => e.animation.inlineGlow,
|
|
({ theme: e }) => ({
|
|
background: e.appBorderColor,
|
|
}),
|
|
),
|
|
Ro = I.div({
|
|
display: "flex",
|
|
flexDirection: "column",
|
|
paddingLeft: 20,
|
|
paddingRight: 20,
|
|
}),
|
|
Lc = /* @__PURE__ */ a(({ size: e }) => {
|
|
let t = Math.ceil(e / Mc.length),
|
|
o = Array.from(Array(t)).fill(Mc).flat().slice(0, e);
|
|
return /* @__PURE__ */ s.createElement(
|
|
Ee,
|
|
null,
|
|
o.map((i, r) =>
|
|
/* @__PURE__ */ s.createElement(N0, { depth: i, key: r }),
|
|
),
|
|
);
|
|
}, "Loader");
|
|
|
|
// src/manager/components/sidebar/RefBlocks.tsx
|
|
var { window: Nc } = se,
|
|
F0 = I.div(({ theme: e }) => ({
|
|
fontSize: e.typography.size.s2,
|
|
lineHeight: "20px",
|
|
margin: 0,
|
|
})),
|
|
$i = I.div(({ theme: e }) => ({
|
|
fontSize: e.typography.size.s2,
|
|
lineHeight: "20px",
|
|
margin: 0,
|
|
code: {
|
|
fontSize: e.typography.size.s1,
|
|
},
|
|
ul: {
|
|
paddingLeft: 20,
|
|
marginTop: 8,
|
|
marginBottom: 8,
|
|
},
|
|
})),
|
|
R0 = I.pre(
|
|
{
|
|
width: 420,
|
|
boxSizing: "border-box",
|
|
borderRadius: 8,
|
|
overflow: "auto",
|
|
whiteSpace: "pre",
|
|
},
|
|
({ theme: e }) => ({
|
|
color: e.color.dark,
|
|
}),
|
|
),
|
|
Fc = /* @__PURE__ */ a(({ loginUrl: e, id: t }) => {
|
|
let [o, i] = K(!1),
|
|
r = A(() => {
|
|
Nc.document.location.reload();
|
|
}, []),
|
|
n = A((l) => {
|
|
l.preventDefault();
|
|
let u = Nc.open(e, `storybook_auth_${t}`, "resizable,scrollbars"),
|
|
c = setInterval(() => {
|
|
u
|
|
? u.closed && (clearInterval(c), i(!0))
|
|
: (ur.error("unable to access loginUrl window"),
|
|
clearInterval(c));
|
|
}, 1e3);
|
|
}, []);
|
|
return /* @__PURE__ */ s.createElement(
|
|
Ro,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
pt,
|
|
null,
|
|
o
|
|
? /* @__PURE__ */ s.createElement(
|
|
Ee,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
$i,
|
|
null,
|
|
"Authentication on ",
|
|
/* @__PURE__ */ s.createElement("strong", null, e),
|
|
" concluded. Refresh the page to fetch t\
|
|
his Storybook.",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
he,
|
|
{ size: "small", variant: "outline", onClick: r },
|
|
/* @__PURE__ */ s.createElement(ct, null),
|
|
"Refresh now",
|
|
),
|
|
),
|
|
)
|
|
: /* @__PURE__ */ s.createElement(
|
|
Ee,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
$i,
|
|
null,
|
|
"Sign in to browse this Storybook.",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
he,
|
|
{
|
|
size: "smal\
|
|
l",
|
|
variant: "outline",
|
|
onClick: n,
|
|
},
|
|
/* @__PURE__ */ s.createElement(xo, null),
|
|
"Sign in",
|
|
),
|
|
),
|
|
),
|
|
),
|
|
);
|
|
}, "AuthBlock"),
|
|
Rc = /* @__PURE__ */ a(
|
|
({ error: e }) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
Ro,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
pt,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
F0,
|
|
null,
|
|
"Oh no! Something went wrong loading this Storybook.",
|
|
/* @__PURE__ */ s.createElement("br", null),
|
|
/* @__PURE__ */ s.createElement(
|
|
ve,
|
|
{
|
|
tooltip: /* @__PURE__ */ s.createElement(
|
|
R0,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(ka, { error: e }),
|
|
),
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
Pe,
|
|
{ isButton: !0 },
|
|
"View error ",
|
|
/* @__PURE__ */ s.createElement(Ot, null),
|
|
),
|
|
),
|
|
" ",
|
|
/* @__PURE__ */ s.createElement(
|
|
Pe,
|
|
{
|
|
withArrow: !0,
|
|
href: "https://storybook.js.org/docs",
|
|
cancel: !1,
|
|
target: "_blank",
|
|
},
|
|
"View do\
|
|
cs",
|
|
),
|
|
),
|
|
),
|
|
),
|
|
"ErrorBlock",
|
|
),
|
|
B0 = I(pt)({
|
|
display: "flex",
|
|
}),
|
|
H0 = I(pt)({
|
|
flex: 1,
|
|
}),
|
|
Bc = /* @__PURE__ */ a(
|
|
({ isMain: e }) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
Ro,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
B0,
|
|
{ col: 1 },
|
|
/* @__PURE__ */ s.createElement(
|
|
H0,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
$i,
|
|
null,
|
|
e
|
|
? /* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
"Oh no! Your Storybo\
|
|
ok is empty. Possible reasons why:",
|
|
/* @__PURE__ */ s.createElement(
|
|
"ul",
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
"li",
|
|
null,
|
|
"The glob speci\
|
|
fied in ",
|
|
/* @__PURE__ */ s.createElement(
|
|
"code",
|
|
null,
|
|
"main.js",
|
|
),
|
|
" isn't correct.",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
"li",
|
|
null,
|
|
"No sto\
|
|
ries are defined in your story files.",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
"li",
|
|
null,
|
|
"You're using filter-functions, and all stories are fil\
|
|
tered away.",
|
|
),
|
|
),
|
|
" ",
|
|
)
|
|
: /* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
"This composed storybook is empty, maybe you're using filter-functi\
|
|
ons, and all stories are filtered away.",
|
|
),
|
|
),
|
|
),
|
|
),
|
|
),
|
|
"EmptyBlock",
|
|
),
|
|
Hc = /* @__PURE__ */ a(
|
|
({ isMain: e }) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
Ro,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(Lc, { size: e ? 17 : 5 }),
|
|
),
|
|
"LoaderBlock",
|
|
);
|
|
|
|
// src/manager/components/sidebar/RefIndicator.tsx
|
|
var { document: z0, window: W0 } = se,
|
|
V0 = I.aside(({ theme: e }) => ({
|
|
height: 16,
|
|
display: "flex",
|
|
alignItems: "center",
|
|
"& > * + *": {
|
|
marginLeft: e.layoutMargin,
|
|
},
|
|
})),
|
|
j0 = I.button(({ theme: e }) => ({
|
|
height: 20,
|
|
width: 20,
|
|
padding: 0,
|
|
margin: 0,
|
|
display: "flex",
|
|
alignItems: "center",
|
|
justifyContent: "center",
|
|
background: "transparent",
|
|
outline: "none",
|
|
border: "1px solid transparent",
|
|
borderRadius: "100%",
|
|
cursor: "pointer",
|
|
color:
|
|
e.base === "light"
|
|
? Te(0.3, e.color.defaultText)
|
|
: Te(0.6, e.color.defaultText),
|
|
"&:hover": {
|
|
color: e.barSelectedColor,
|
|
},
|
|
"&:focus": {
|
|
color: e.barSelectedColor,
|
|
borderColor: e.color.secondary,
|
|
},
|
|
svg: {
|
|
height: 10,
|
|
width: 10,
|
|
transition: "all 150ms ease-out",
|
|
color: "inherit",
|
|
},
|
|
})),
|
|
Vt = I.span(({ theme: e }) => ({
|
|
fontWeight: e.typography.weight.bold,
|
|
})),
|
|
jt = I.a(({ theme: e }) => ({
|
|
textDecoration: "none",
|
|
lineHeight: "16px",
|
|
padding: 15,
|
|
display: "flex",
|
|
flexDirection: "row",
|
|
alignItems: "flex-start",
|
|
color: e.color.defaultText,
|
|
"&:not(:last-child)": {
|
|
borderBottom: `1px solid ${e.appBorderColor}`,
|
|
},
|
|
"&:hover": {
|
|
background: e.background.hoverable,
|
|
color: e.color.darker,
|
|
},
|
|
"&:link": {
|
|
color: e.color.darker,
|
|
},
|
|
"&:active": {
|
|
color: e.color.darker,
|
|
},
|
|
"&:focus": {
|
|
color: e.color.darker,
|
|
},
|
|
"& > *": {
|
|
flex: 1,
|
|
},
|
|
"& > svg": {
|
|
marginTop: 3,
|
|
width: 16,
|
|
height: 16,
|
|
marginRight: 10,
|
|
flex: "unset",
|
|
},
|
|
})),
|
|
K0 = I.div({
|
|
width: 280,
|
|
boxSizing: "border-box",
|
|
borderRadius: 8,
|
|
overflow: "hidden",
|
|
}),
|
|
$0 = I.div(({ theme: e }) => ({
|
|
display: "flex",
|
|
alignItems: "center",
|
|
fontSize: e.typography.size.s1,
|
|
fontWeight: e.typography.weight.regular,
|
|
color:
|
|
e.base === "light"
|
|
? Te(0.3, e.color.defaultText)
|
|
: Te(0.6, e.color.defaultText),
|
|
"& > * + *": {
|
|
marginLeft: 4,
|
|
},
|
|
svg: {
|
|
height: 10,
|
|
width: 10,
|
|
},
|
|
})),
|
|
U0 = /* @__PURE__ */ a(({ url: e, versions: t }) => {
|
|
let o = G(() => {
|
|
let i = Object.entries(t).find(([r, n]) => n === e);
|
|
return i && i[0] ? i[0] : "current";
|
|
}, [e, t]);
|
|
return /* @__PURE__ */ s.createElement(
|
|
$0,
|
|
null,
|
|
/* @__PURE__ */ s.createElement("span", null, o),
|
|
/* @__PURE__ */ s.createElement(Ot, null),
|
|
);
|
|
}, "CurrentVersion"),
|
|
zc = s.memo(
|
|
oa(({ state: e, ...t }, o) => {
|
|
let i = oe(),
|
|
r = G(() => Object.values(t.index || {}), [t.index]),
|
|
n = G(() => r.filter((u) => u.type === "component").length, [r]),
|
|
l = G(
|
|
() => r.filter((u) => u.type === "docs" || u.type === "story").length,
|
|
[r],
|
|
);
|
|
return /* @__PURE__ */ s.createElement(
|
|
V0,
|
|
{ ref: o },
|
|
/* @__PURE__ */ s.createElement(
|
|
ve,
|
|
{
|
|
placement: "bottom-start",
|
|
trigger: "click",
|
|
closeOnOutsideClick: !0,
|
|
tooltip: /* @__PURE__ */ s.createElement(
|
|
K0,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
pt,
|
|
{ row: 0 },
|
|
e === "loading" &&
|
|
/* @__PURE__ */ s.createElement(Z0, { url: t.url }),
|
|
(e === "error" || e === "empty") &&
|
|
/* @__PURE__ */ s.createElement(X0, { url: t.url }),
|
|
e ===
|
|
"\
|
|
ready" &&
|
|
/* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(G0, {
|
|
url: t.url,
|
|
componentCount: n,
|
|
leafCount: l,
|
|
}),
|
|
t.sourceUrl &&
|
|
/* @__PURE__ */ s.createElement(q0, { url: t.sourceUrl }),
|
|
),
|
|
e === "auth" && /* @__PURE__ */ s.createElement(Y0, { ...t }),
|
|
t.type === "auto-inject" &&
|
|
e !== "error" &&
|
|
/* @__PURE__ */ s.createElement(J0, null),
|
|
e !== "loading" && /* @__PURE__ */ s.createElement(Q0, null),
|
|
),
|
|
),
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
j0,
|
|
{
|
|
"data-action": "toggle-indicator",
|
|
"aria-label": "toggle indicator",
|
|
},
|
|
/* @__PURE__ */ s.createElement(Zo, null),
|
|
),
|
|
),
|
|
t.versions && Object.keys(t.versions).length
|
|
? /* @__PURE__ */ s.createElement(
|
|
ve,
|
|
{
|
|
placement: "bottom-start",
|
|
trigger: "click",
|
|
closeOnOutsideClick: !0,
|
|
tooltip: (u) =>
|
|
/* @__PURE__ */ s.createElement(ot, {
|
|
links: Object.entries(t.versions).map(([c, d]) => ({
|
|
icon:
|
|
d === t.url
|
|
? /* @__PURE__ */ s.createElement(Be, null)
|
|
: void 0,
|
|
id: c,
|
|
title: c,
|
|
href: d,
|
|
onClick: /* @__PURE__ */ a((p, f) => {
|
|
(p.preventDefault(),
|
|
i.changeRefVersion(t.id, f.href),
|
|
u.onHide());
|
|
}, "onClick"),
|
|
})),
|
|
}),
|
|
},
|
|
/* @__PURE__ */ s.createElement(U0, {
|
|
url: t.url,
|
|
versions: t.versions,
|
|
}),
|
|
)
|
|
: null,
|
|
);
|
|
}),
|
|
),
|
|
G0 = /* @__PURE__ */ a(({ url: e, componentCount: t, leafCount: o }) => {
|
|
let i = De();
|
|
return /* @__PURE__ */ s.createElement(
|
|
jt,
|
|
{ href: e.replace(/\/?$/, "/index.html"), target: "_blank" },
|
|
/* @__PURE__ */ s.createElement(Zo, { color: i.color.secondary }),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
Vt,
|
|
null,
|
|
"View external Story\
|
|
book",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
null,
|
|
"Explore ",
|
|
t,
|
|
" components and ",
|
|
o,
|
|
" stories in a new browser tab.",
|
|
),
|
|
),
|
|
);
|
|
}, "ReadyMessage"),
|
|
q0 = /* @__PURE__ */ a(({ url: e }) => {
|
|
let t = De();
|
|
return /* @__PURE__ */ s.createElement(
|
|
jt,
|
|
{ href: e, target: "_blank" },
|
|
/* @__PURE__ */ s.createElement(Vn, { color: t.color.secondary }),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
null,
|
|
/* @__PURE__ */ s.createElement(Vt, null, "View source code"),
|
|
),
|
|
);
|
|
}, "SourceCodeMessage"),
|
|
Y0 = /* @__PURE__ */ a(({ loginUrl: e, id: t }) => {
|
|
let o = De(),
|
|
i = A((r) => {
|
|
r.preventDefault();
|
|
let n = W0.open(e, `storybook_auth_${t}`, "resizable,scrollbars"),
|
|
l = setInterval(() => {
|
|
n
|
|
? n.closed && (clearInterval(l), z0.location.reload())
|
|
: clearInterval(l);
|
|
}, 1e3);
|
|
}, []);
|
|
return /* @__PURE__ */ s.createElement(
|
|
jt,
|
|
{ onClick: i },
|
|
/* @__PURE__ */ s.createElement(xo, { color: o.color.gold }),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
null,
|
|
/* @__PURE__ */ s.createElement(Vt, null, "Log in required"),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
null,
|
|
"You\
|
|
need to authenticate to view this Storybook's components.",
|
|
),
|
|
),
|
|
);
|
|
}, "LoginRequiredMessage"),
|
|
Q0 = /* @__PURE__ */ a(() => {
|
|
let e = De();
|
|
return /* @__PURE__ */ s.createElement(
|
|
jt,
|
|
{
|
|
href: "https://storybook.js.org/docs/sharing/storybook-composition",
|
|
target: "_blank",
|
|
},
|
|
/* @__PURE__ */ s.createElement(Pt, { color: e.color.green }),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
Vt,
|
|
null,
|
|
"Read \
|
|
Composition docs",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
null,
|
|
"Learn how to combine multiple Storybooks into one.",
|
|
),
|
|
),
|
|
);
|
|
}, "ReadDocsMessage"),
|
|
X0 = /* @__PURE__ */ a(({ url: e }) => {
|
|
let t = De();
|
|
return /* @__PURE__ */ s.createElement(
|
|
jt,
|
|
{ href: e.replace(/\/?$/, "/index.html"), target: "_blank" },
|
|
/* @__PURE__ */ s.createElement(go, { color: t.color.negative }),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
null,
|
|
/* @__PURE__ */ s.createElement(Vt, null, "Something went wrong"),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
null,
|
|
"This external Storybook didn't load. Debug it in a new tab now.",
|
|
),
|
|
),
|
|
);
|
|
}, "ErrorOccurredMessage"),
|
|
Z0 = /* @__PURE__ */ a(({ url: e }) => {
|
|
let t = De();
|
|
return /* @__PURE__ */ s.createElement(
|
|
jt,
|
|
{ href: e.replace(/\/?$/, "/index.html"), target: "_blank" },
|
|
/* @__PURE__ */ s.createElement(Qn, { color: t.color.secondary }),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
null,
|
|
/* @__PURE__ */ s.createElement(Vt, null, "Please wait"),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
null,
|
|
"This Storybook is loading.",
|
|
),
|
|
),
|
|
);
|
|
}, "LoadingMessage"),
|
|
J0 = /* @__PURE__ */ a(() => {
|
|
let e = De();
|
|
return /* @__PURE__ */ s.createElement(
|
|
jt,
|
|
{
|
|
href: "https://storybook.js.org/docs/sharing/storybook-composition",
|
|
target: "_blank",
|
|
},
|
|
/* @__PURE__ */ s.createElement(zn, { color: e.color.gold }),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
Vt,
|
|
null,
|
|
"Reduce\
|
|
lag",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
null,
|
|
"Learn how to speed up Composition performance.",
|
|
),
|
|
),
|
|
);
|
|
}, "PerformanceDegradedMessage");
|
|
|
|
// src/manager/components/sidebar/IconSymbols.tsx
|
|
var ex = I.svg`
|
|
position: absolute;
|
|
width: 0;
|
|
height: 0;
|
|
display: inline-block;
|
|
shape-rendering: inherit;
|
|
vertical-align: middle;
|
|
`,
|
|
Wc = "icon--group",
|
|
Vc = "icon--component",
|
|
jc = "icon--document",
|
|
Kc = "icon--story",
|
|
$c = "icon--success",
|
|
Uc = "icon--error",
|
|
Gc =
|
|
"ic\
|
|
on--warning",
|
|
qc = "icon--dot",
|
|
Yc = /* @__PURE__ */ a(
|
|
() =>
|
|
/* @__PURE__ */ s.createElement(
|
|
ex,
|
|
{ "data-chromatic": "ignore" },
|
|
/* @__PURE__ */ s.createElement(
|
|
"symbol",
|
|
{ id: Wc },
|
|
/* @__PURE__ */ s.createElement("path", {
|
|
fillRule: "evenodd",
|
|
clipRule: "evenodd",
|
|
d: "M6.586 3.504l-1.5-1.5H1v9h12v-7.5H6.586zm.414-1L5.793 1.297a1 1 0 00-.707-.293H.5a.5.5 0 00-.5.5v10a.5.5 0 00.5.5h13a.5.5 0 00.5-.5v\
|
|
-8.5a.5.5 0 00-.5-.5H7z",
|
|
fill: "currentColor",
|
|
}),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
"symbol",
|
|
{ id: Vc },
|
|
/* @__PURE__ */ s.createElement("path", {
|
|
fillRule: "evenodd",
|
|
clipRule: "evenodd",
|
|
d: "M3.5 1.004a2.5 2.5 0 00-2.5 2.5v7a2.5 2.5 0 002.5 2.5h7a2.5 2.5 0 002.5-2.5v-7a2.5 2.5 0 00-2.5-2.5h-7zm8.5 5.5H7.5v-4.5h3a1.5 1.5 0\
|
|
011.5 1.5v3zm0 1v3a1.5 1.5 0 01-1.5 1.5h-3v-4.5H12zm-5.5 4.5v-4.5H2v3a1.5 1.5 0 001.5 1.5h3zM2 6.504h4.5v-4.5h-3a1.5 1.5 0 00-1.5 1.5v3z",
|
|
fill: "currentColor",
|
|
}),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
"symbol",
|
|
{ id: jc },
|
|
/* @__PURE__ */ s.createElement("path", {
|
|
d: "M4 5.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zM4.5 7.5a.5.5 0 000 1h5a.5.5 0 000-1h-5zM4 10.5a.5.5 0 01.5-.5h5a.5.5 0 010 \
|
|
1h-5a.5.5 0 01-.5-.5z",
|
|
fill: "currentColor",
|
|
}),
|
|
/* @__PURE__ */ s.createElement("path", {
|
|
fillRule: "evenodd",
|
|
clipRule: "evenodd",
|
|
d: "M1.5 0a.5.5 0 00-.5.5v13a.5.5 0 00.5.5h11a.5.5 0 00.5-.5V3.207a.5.5 0 00-.146-.353L10.146.146A.5.5 0 009.793 0H1.5zM2 1h7.5v2a.5.5 0\
|
|
00.5.5h2V13H2V1z",
|
|
fill: "currentColor",
|
|
}),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
"symbol",
|
|
{ id: Kc },
|
|
/* @__PURE__ */ s.createElement("path", {
|
|
fillRule: "evenodd",
|
|
clipRule: "evenodd",
|
|
d: "M3.5 0h7a.5.5 0 01.5.5v13a.5.5 0 01-.454.498.462.462 0 01-.371-.118L7 11.159l-3.175 2.72a.46.46 0 01-.379.118A.5.5 0 013 13.5V.5a.5.\
|
|
5 0 01.5-.5zM4 12.413l2.664-2.284a.454.454 0 01.377-.128.498.498 0 01.284.12L10 12.412V1H4v11.413z",
|
|
fill: "currentColor",
|
|
}),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
"symbol",
|
|
{ id: $c },
|
|
/* @__PURE__ */ s.createElement("path", {
|
|
fillRule: "evenodd",
|
|
clipRule: "evenodd",
|
|
d: "M10.854 4.146a.5.5 0 010 .708l-5 5a.5.5 0 01-.708 0l-2-2a.5.5 0 11.708-.708L5.5 8.793l4.646-4.647a.5.5 0 01.708 0z",
|
|
fill: "currentColor",
|
|
}),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
"symbol",
|
|
{ id: Uc },
|
|
/* @__PURE__ */ s.createElement("path", {
|
|
fillRule: "evenodd",
|
|
clipRule: "evenodd",
|
|
d: "M7 4a3 3 0 100 6 3 3 0 000-6zM3 7a4 4 0 118 0 4 4 0 01-8 0z",
|
|
fill: "currentColor",
|
|
}),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
"symbol",
|
|
{ id: Gc },
|
|
/* @__PURE__ */ s.createElement("path", {
|
|
fillRule: "evenodd",
|
|
clipRule: "evenodd",
|
|
d: "M7.206 3.044a.498.498 0 01.23.212l3.492 5.985a.494.494 0 01.006.507.497.497 0 01-.443.252H3.51a.499.499 0 01-.437-.76l3.492-5.984a.4\
|
|
97.497 0 01.642-.212zM7 4.492L4.37 9h5.26L7 4.492z",
|
|
fill: "currentColor",
|
|
}),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
"symbol",
|
|
{ id: qc },
|
|
/* @__PURE__ */ s.createElement("circle", {
|
|
cx: "3",
|
|
cy: "3",
|
|
r: "3",
|
|
fill: "curre\
|
|
ntColor",
|
|
}),
|
|
),
|
|
),
|
|
"IconSymbols",
|
|
),
|
|
Me = /* @__PURE__ */ a(
|
|
({ type: e }) =>
|
|
e === "group"
|
|
? /* @__PURE__ */ s.createElement("use", {
|
|
xlinkHref: `\
|
|
#${Wc}`,
|
|
})
|
|
: e === "component"
|
|
? /* @__PURE__ */ s.createElement("use", { xlinkHref: `#${Vc}` })
|
|
: e === "document"
|
|
? /* @__PURE__ */ s.createElement("use", { xlinkHref: `#${jc}` })
|
|
: e === "story"
|
|
? /* @__PURE__ */ s.createElement("use", { xlinkHref: `#${Kc}` })
|
|
: e === "success"
|
|
? /* @__PURE__ */ s.createElement("use", {
|
|
xlinkHref: `#${$c}`,
|
|
})
|
|
: e === "error"
|
|
? /* @__PURE__ */ s.createElement("use", {
|
|
xlinkHref: `#${Uc}`,
|
|
})
|
|
: e ===
|
|
"war\
|
|
ning"
|
|
? /* @__PURE__ */ s.createElement("use", {
|
|
xlinkHref: `#${Gc}`,
|
|
})
|
|
: e === "dot"
|
|
? /* @__PURE__ */ s.createElement("use", {
|
|
xlinkHref: `\
|
|
#${qc}`,
|
|
})
|
|
: null,
|
|
"UseSymbol",
|
|
);
|
|
|
|
// src/manager/utils/status.tsx
|
|
var tx = I(kn)({
|
|
// specificity hack
|
|
"&&&": {
|
|
width: 6,
|
|
height: 6,
|
|
},
|
|
}),
|
|
ox = I(tx)(({ theme: { animation: e, color: t, base: o } }) => ({
|
|
// specificity hack
|
|
animation: `${e.glow} 1.5s ease-in-out infinite`,
|
|
color: o === "light" ? t.mediumdark : t.darker,
|
|
})),
|
|
rx = [
|
|
"status-value:unknown",
|
|
"status-value:pending",
|
|
"status-value:success",
|
|
"status-value:warning",
|
|
"status-value:error",
|
|
],
|
|
Bo = {
|
|
"status-value:unknown": [null, null],
|
|
"status-value:pending": [
|
|
/* @__PURE__ */ s.createElement(ox, { key: "icon" }),
|
|
"currentColor",
|
|
],
|
|
"status-value:success": [
|
|
/* @__PURE__ */ s.createElement(
|
|
"svg",
|
|
{ key: "icon", viewBox: "0 0 14 14", width: "14", height: "14" },
|
|
/* @__PURE__ */ s.createElement(Me, { type: "success" }),
|
|
),
|
|
"currentColor",
|
|
],
|
|
"status-value:warning": [
|
|
/* @__PURE__ */ s.createElement(
|
|
"svg",
|
|
{ key: "icon", viewBox: "0 0 14 14", width: "14", height: "14" },
|
|
/* @__PURE__ */ s.createElement(Me, { type: "warning" }),
|
|
),
|
|
"#A15C20",
|
|
],
|
|
"status-value:error": [
|
|
/* @__PURE__ */ s.createElement(
|
|
"svg",
|
|
{ key: "icon", viewBox: "0 0 14 14", width: "14", height: "14" },
|
|
/* @__PURE__ */ s.createElement(Me, { type: "error" }),
|
|
),
|
|
"#D43900",
|
|
],
|
|
},
|
|
Ho = /* @__PURE__ */ a(
|
|
(e) => rx.reduce((t, o) => (e.includes(o) ? o : t), "status-value:unknown"),
|
|
"getMostCriticalStatusValue",
|
|
);
|
|
function zr(e, t) {
|
|
return Object.values(e).reduce((o, i) => {
|
|
if (i.type === "group" || i.type === "component") {
|
|
let r = at(e, i.id, !1)
|
|
.map((l) => e[l])
|
|
.filter((l) => l.type === "story"),
|
|
n = Ho(
|
|
// @ts-expect-error (non strict)
|
|
r.flatMap((l) => Object.values(t[l.id] || {})).map((l) => l.value),
|
|
);
|
|
n && (o[i.id] = n);
|
|
}
|
|
return o;
|
|
}, {});
|
|
}
|
|
a(zr, "getGroupStatus");
|
|
|
|
// src/manager/components/sidebar/StatusButton.tsx
|
|
var Qc = /* @__PURE__ */ a(({ theme: e, status: t }) => {
|
|
let o =
|
|
e.base === "light"
|
|
? Te(0.3, e.color.defaultText)
|
|
: Te(0.6, e.color.defaultText);
|
|
return {
|
|
color: {
|
|
"status-value:pending": o,
|
|
"status-value:success": e.color.positive,
|
|
"status-value:error": e.color.negative,
|
|
"status-value:warning": e.color.warning,
|
|
"status-value:unknown": o,
|
|
}[t],
|
|
};
|
|
}, "withStatusColor"),
|
|
Xc = I.div(Qc, {
|
|
margin: 3,
|
|
}),
|
|
zo = I(ee)(
|
|
Qc,
|
|
({ theme: e, height: t, width: o }) => ({
|
|
transition: "none",
|
|
display: "inline-flex",
|
|
alignItems: "center",
|
|
justifyContent: "center",
|
|
width: o || 28,
|
|
height: t || 28,
|
|
"&:hover": {
|
|
color: e.color.secondary,
|
|
background:
|
|
e.base === "dark"
|
|
? Ir(0.3, e.color.secondary)
|
|
: Po(0.4, e.color.secondary),
|
|
},
|
|
'[data-selected="true"] &': {
|
|
background: e.color.secondary,
|
|
boxShadow: `0 0 5px 5px ${e.color.secondary}`,
|
|
"&:hover": {
|
|
background: Po(0.1, e.color.secondary),
|
|
},
|
|
},
|
|
"&:focus": {
|
|
color: e.color.secondary,
|
|
borderColor: e.color.secondary,
|
|
"&:not(:focus-visible)": {
|
|
borderColor: "transparent",
|
|
},
|
|
},
|
|
}),
|
|
({ theme: e, selectedItem: t }) =>
|
|
t && {
|
|
"&:hover": {
|
|
boxShadow: `inset 0 0 0 2px ${e.color.secondary}`,
|
|
background: "rgba(255, 255, 255, 0.2)",
|
|
},
|
|
},
|
|
);
|
|
|
|
// src/manager/components/sidebar/ContextMenu.tsx
|
|
var nx = {
|
|
onMouseEnter: /* @__PURE__ */ a(() => {}, "onMouseEnter"),
|
|
node: null,
|
|
},
|
|
ix = I(ve)({
|
|
position: "absolute",
|
|
right: 0,
|
|
zIndex: 1,
|
|
}),
|
|
sx = I(zo)({
|
|
background: "var(--tree-node-background-hover)",
|
|
boxShadow: "0 0 5px 5px var(--tree-node-background-hover)",
|
|
}),
|
|
Zc = /* @__PURE__ */ a((e, t, o) => {
|
|
let [i, r] = K(0),
|
|
[n, l] = K(!1),
|
|
u = G(
|
|
() => ({
|
|
onMouseEnter: /* @__PURE__ */ a(() => {
|
|
r((p) => p + 1);
|
|
}, "onMouseEnter"),
|
|
onOpen: /* @__PURE__ */ a((p) => {
|
|
(p.stopPropagation(), l(!0));
|
|
}, "onOpen"),
|
|
onClose: /* @__PURE__ */ a(() => {
|
|
l(!1);
|
|
}, "onClose"),
|
|
}),
|
|
[],
|
|
),
|
|
d =
|
|
G(() => {
|
|
let p = o.getElements(Ce.experimental_TEST_PROVIDER);
|
|
return i ? Jc(p, e) : [];
|
|
}, [o, e, i]).length > 0 || t.length > 0;
|
|
return G(
|
|
() =>
|
|
globalThis.CONFIG_TYPE !== "DEVELOPMENT"
|
|
? nx
|
|
: {
|
|
onMouseEnter: u.onMouseEnter,
|
|
node: d
|
|
? /* @__PURE__ */ s.createElement(
|
|
ix,
|
|
{
|
|
"data-displayed": n ? "on" : "off",
|
|
closeOnOutsideClick: !0,
|
|
placement: "bottom-end",
|
|
"data-testid": "context-menu",
|
|
onVisibleChange: (p) => {
|
|
p ? l(!0) : u.onClose();
|
|
},
|
|
tooltip: /* @__PURE__ */ s.createElement(ax, {
|
|
context: e,
|
|
links: t,
|
|
}),
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
sx,
|
|
{ type: "button", status: "status-value:pending" },
|
|
/* @__PURE__ */ s.createElement(An, null),
|
|
),
|
|
)
|
|
: null,
|
|
},
|
|
[e, u, n, d, t],
|
|
);
|
|
}, "useContextMenu"),
|
|
ax = /* @__PURE__ */ a(({ context: e, links: t, ...o }) => {
|
|
let i = oe().getElements(Ce.experimental_TEST_PROVIDER),
|
|
r = Jc(i, e),
|
|
l = (Array.isArray(t[0]) ? t : [t]).concat([r]);
|
|
return /* @__PURE__ */ s.createElement(ot, { ...o, links: l });
|
|
}, "LiveContextMenu");
|
|
function Jc(e, t) {
|
|
return Object.entries(e)
|
|
.map(([o, i]) => {
|
|
if (!i) return null;
|
|
let r = i.sidebarContextMenu?.({ context: t });
|
|
return r
|
|
? {
|
|
id: o,
|
|
content: r,
|
|
}
|
|
: null;
|
|
})
|
|
.filter(Boolean);
|
|
}
|
|
a(Jc, "generateTestProviderLinks");
|
|
|
|
// src/manager/components/sidebar/StatusContext.tsx
|
|
var Ui = Qt({}),
|
|
ep = /* @__PURE__ */ a((e) => {
|
|
let { data: t, allStatuses: o, groupStatus: i } = qo(Ui),
|
|
r = {
|
|
counts: {
|
|
"status-value:pending": 0,
|
|
"status-value:success": 0,
|
|
"status-value:error": 0,
|
|
"status-value:warning": 0,
|
|
"status-value:unknown": 0,
|
|
},
|
|
statusesByValue: {
|
|
"status-value:pending": {},
|
|
"status-value:success": {},
|
|
"status-value:error": {},
|
|
"status-value:warning": {},
|
|
"status-value:unknown": {},
|
|
},
|
|
};
|
|
if (
|
|
t &&
|
|
o &&
|
|
i &&
|
|
[
|
|
"status-value:pending",
|
|
"status-value:warning",
|
|
"status-value:error",
|
|
].includes(i[e.id])
|
|
)
|
|
for (let n of at(t, e.id, !1))
|
|
for (let l of Object.values(o[n] ?? {}))
|
|
(r.counts[l.value]++,
|
|
(r.statusesByValue[l.value][n] ??= []),
|
|
r.statusesByValue[l.value][n].push(l));
|
|
return r;
|
|
}, "useStatusSummary");
|
|
|
|
// src/manager/components/sidebar/components/CollapseIcon.tsx
|
|
var lx = I.div(({ theme: e, isExpanded: t }) => ({
|
|
width: 8,
|
|
height: 8,
|
|
display: "flex",
|
|
justifyContent: "center",
|
|
alignItems: "center",
|
|
color: Te(0.4, e.textMutedColor),
|
|
transform: t ? "rotateZ(90deg)" : "none",
|
|
transition: "transform .1s ease-out",
|
|
})),
|
|
Kt = /* @__PURE__ */ a(
|
|
({ isExpanded: e }) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
lx,
|
|
{ isExpanded: e },
|
|
/* @__PURE__ */ s.createElement(
|
|
"s\
|
|
vg",
|
|
{
|
|
xmlns: "http://www.w3.org/2000/svg",
|
|
width: "8",
|
|
height: "8",
|
|
fill: "none",
|
|
},
|
|
/* @__PURE__ */ s.createElement("path", {
|
|
fill: "#73828C",
|
|
fillRule: "evenodd",
|
|
d: "M1.896 7.146a.5.5 0 1 0 .708.708l3.5-3.5a.5.5 0 0 0 0-.708l-3.5-3.5a.5.5 0 1 0-.708.708L5.043 4 1.896 7.146Z",
|
|
clipRule: "evenodd",
|
|
}),
|
|
),
|
|
),
|
|
"CollapseIcon",
|
|
);
|
|
|
|
// src/manager/components/sidebar/TreeNode.tsx
|
|
var wt = I.svg(({ theme: e, type: t }) => ({
|
|
width: 14,
|
|
height: 14,
|
|
flex: "0 0 auto",
|
|
color:
|
|
t === "group"
|
|
? e.base === "dark"
|
|
? e.color.primary
|
|
: e.color.ultraviolet
|
|
: t === "component"
|
|
? e.color.secondary
|
|
: t ===
|
|
"docume\
|
|
nt"
|
|
? e.base === "dark"
|
|
? e.color.gold
|
|
: "#ff8300"
|
|
: t === "story"
|
|
? e.color.seafoam
|
|
: "currentColor",
|
|
})),
|
|
tp = I.button(({ theme: e, depth: t = 0, isExpandable: o = !1 }) => ({
|
|
width: "100%",
|
|
border: "none",
|
|
cursor: "pointer",
|
|
display: "flex",
|
|
alignItems: "start",
|
|
textAlign: "left",
|
|
paddingLeft: `${(o ? 8 : 22) + t * 18}px`,
|
|
color: "inherit",
|
|
fontSize: `${e.typography.size.s2}px`,
|
|
background: "transparent",
|
|
minHeight: 28,
|
|
borderRadius: 4,
|
|
gap: 6,
|
|
paddingTop: 5,
|
|
paddingBottom: 4,
|
|
})),
|
|
op = I.a(({ theme: e, depth: t = 0 }) => ({
|
|
width: "100%",
|
|
cursor: "pointer",
|
|
color: "inherit",
|
|
display: "flex",
|
|
gap: 6,
|
|
flex: 1,
|
|
alignItems: "start",
|
|
paddingLeft: `${22 + t * 18}px`,
|
|
paddingTop: 5,
|
|
paddingBottom: 4,
|
|
fontSize: `${e.typography.size.s2}px`,
|
|
textDecoration: "none",
|
|
overflowWrap: "break-word",
|
|
wordWrap: "break-word",
|
|
wordBreak: "break-word",
|
|
})),
|
|
rp = I.div(({ theme: e }) => ({
|
|
display: "flex",
|
|
alignItems: "center",
|
|
justifyContent: "space-between",
|
|
marginTop: 16,
|
|
marginBottom: 4,
|
|
fontSize: `${e.typography.size.s1 - 1}px`,
|
|
fontWeight: e.typography.weight.bold,
|
|
lineHeight: "16px",
|
|
minHeight: 28,
|
|
letterSpacing: "0.16em",
|
|
textTransform: "uppercase",
|
|
color: e.textMutedColor,
|
|
})),
|
|
Wr = I.div({
|
|
display: "flex",
|
|
alignItems: "center",
|
|
gap: 6,
|
|
marginTop: 2,
|
|
}),
|
|
np = s.memo(
|
|
/* @__PURE__ */ a(function ({
|
|
children: t,
|
|
isExpanded: o = !1,
|
|
isExpandable: i = !1,
|
|
...r
|
|
}) {
|
|
return /* @__PURE__ */ s.createElement(
|
|
tp,
|
|
{ isExpandable: i, tabIndex: -1, ...r },
|
|
/* @__PURE__ */ s.createElement(
|
|
Wr,
|
|
null,
|
|
i && /* @__PURE__ */ s.createElement(Kt, { isExpanded: o }),
|
|
/* @__PURE__ */ s.createElement(
|
|
wt,
|
|
{ viewBox: "0 0 14 14", width: "14", height: "14", type: "group" },
|
|
/* @__PURE__ */ s.createElement(Me, { type: "group" }),
|
|
),
|
|
),
|
|
t,
|
|
);
|
|
}, "GroupNode"),
|
|
),
|
|
ip = s.memo(
|
|
/* @__PURE__ */ a(function ({
|
|
theme: t,
|
|
children: o,
|
|
isExpanded: i,
|
|
isExpandable: r,
|
|
isSelected: n,
|
|
...l
|
|
}) {
|
|
return /* @__PURE__ */ s.createElement(
|
|
tp,
|
|
{ isExpandable: r, tabIndex: -1, ...l },
|
|
/* @__PURE__ */ s.createElement(
|
|
Wr,
|
|
null,
|
|
r && /* @__PURE__ */ s.createElement(Kt, { isExpanded: i }),
|
|
/* @__PURE__ */ s.createElement(
|
|
wt,
|
|
{
|
|
viewBox: "0 0 14 14",
|
|
width: "12",
|
|
height: "12",
|
|
type: "comp\
|
|
onent",
|
|
},
|
|
/* @__PURE__ */ s.createElement(Me, { type: "component" }),
|
|
),
|
|
),
|
|
o,
|
|
);
|
|
}, "ComponentNode"),
|
|
),
|
|
sp = s.memo(
|
|
/* @__PURE__ */ a(function ({ theme: t, children: o, docsMode: i, ...r }) {
|
|
return /* @__PURE__ */ s.createElement(
|
|
op,
|
|
{ tabIndex: -1, ...r },
|
|
/* @__PURE__ */ s.createElement(
|
|
Wr,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
wt,
|
|
{
|
|
viewBox: "0 0 14 14",
|
|
width: "12",
|
|
height: "12",
|
|
type: "document",
|
|
},
|
|
/* @__PURE__ */ s.createElement(Me, { type: "document" }),
|
|
),
|
|
),
|
|
o,
|
|
);
|
|
}, "DocumentNode"),
|
|
),
|
|
ap = s.memo(
|
|
/* @__PURE__ */ a(function ({ theme: t, children: o, ...i }) {
|
|
return /* @__PURE__ */ s.createElement(
|
|
op,
|
|
{ tabIndex: -1, ...i },
|
|
/* @__PURE__ */ s.createElement(
|
|
Wr,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
wt,
|
|
{ viewBox: "0 0 14 14", width: "12", height: "12", type: "story" },
|
|
/* @__PURE__ */ s.createElement(Me, { type: "story" }),
|
|
),
|
|
),
|
|
o,
|
|
);
|
|
}, "StoryNode"),
|
|
);
|
|
|
|
// ../node_modules/es-toolkit/dist/function/debounce.mjs
|
|
function Vr(e, t, { signal: o, edges: i } = {}) {
|
|
let r,
|
|
n = null,
|
|
l = i != null && i.includes("leading"),
|
|
u = i == null || i.includes("trailing"),
|
|
c = /* @__PURE__ */ a(() => {
|
|
n !== null && (e.apply(r, n), (r = void 0), (n = null));
|
|
}, "invoke"),
|
|
d = /* @__PURE__ */ a(() => {
|
|
(u && c(), y());
|
|
}, "onTimerEnd"),
|
|
p = null,
|
|
f = /* @__PURE__ */ a(() => {
|
|
(p != null && clearTimeout(p),
|
|
(p = setTimeout(() => {
|
|
((p = null), d());
|
|
}, t)));
|
|
}, "schedule"),
|
|
h = /* @__PURE__ */ a(() => {
|
|
p !== null && (clearTimeout(p), (p = null));
|
|
}, "cancelTimer"),
|
|
y = /* @__PURE__ */ a(() => {
|
|
(h(), (r = void 0), (n = null));
|
|
}, "cancel"),
|
|
m = /* @__PURE__ */ a(() => {
|
|
(h(), c());
|
|
}, "flush"),
|
|
b = /* @__PURE__ */ a(function (...x) {
|
|
if (o?.aborted) return;
|
|
((r = this), (n = x));
|
|
let E = p == null;
|
|
(f(), l && E && c());
|
|
}, "debounced");
|
|
return (
|
|
(b.schedule = f),
|
|
(b.cancel = y),
|
|
(b.flush = m),
|
|
o?.addEventListener("abort", y, { once: !0 }),
|
|
b
|
|
);
|
|
}
|
|
a(Vr, "debounce");
|
|
|
|
// ../node_modules/es-toolkit/dist/function/throttle.mjs
|
|
function Gi(e, t, { signal: o, edges: i = ["leading", "trailing"] } = {}) {
|
|
let r = null,
|
|
n = Vr(e, t, { signal: o, edges: i }),
|
|
l = /* @__PURE__ */ a(function (...u) {
|
|
(r == null
|
|
? (r = Date.now())
|
|
: Date.now() - r >= t && ((r = Date.now()), n.cancel()),
|
|
n(...u));
|
|
}, "throttled");
|
|
return ((l.cancel = n.cancel), (l.flush = n.flush), l);
|
|
}
|
|
a(Gi, "throttle");
|
|
|
|
// ../node_modules/es-toolkit/dist/compat/function/debounce.mjs
|
|
function qi(e, t = 0, o = {}) {
|
|
typeof o != "object" && (o = {});
|
|
let { signal: i, leading: r = !1, trailing: n = !0, maxWait: l } = o,
|
|
u = Array(2);
|
|
(r && (u[0] = "leading"), n && (u[1] = "trailing"));
|
|
let c,
|
|
d = null,
|
|
p = Vr(
|
|
function (...y) {
|
|
((c = e.apply(this, y)), (d = null));
|
|
},
|
|
t,
|
|
{ signal: i, edges: u },
|
|
),
|
|
f = /* @__PURE__ */ a(function (...y) {
|
|
if (l != null) {
|
|
if (d === null) d = Date.now();
|
|
else if (Date.now() - d >= l)
|
|
return (
|
|
(c = e.apply(this, y)),
|
|
(d = Date.now()),
|
|
p.cancel(),
|
|
p.schedule(),
|
|
c
|
|
);
|
|
}
|
|
return (p.apply(this, y), c);
|
|
}, "debounced"),
|
|
h = /* @__PURE__ */ a(() => (p.flush(), c), "flush");
|
|
return ((f.cancel = p.cancel), (f.flush = h), f);
|
|
}
|
|
a(qi, "debounce");
|
|
|
|
// src/manager/keybinding.ts
|
|
var ux = {
|
|
// event.code => event.key
|
|
Space: " ",
|
|
Slash: "/",
|
|
ArrowLeft: "ArrowLeft",
|
|
ArrowUp: "ArrowUp",
|
|
ArrowRight: "ArrowRight",
|
|
ArrowDown: "ArrowDown",
|
|
Escape: "Escape",
|
|
Enter: "Enter",
|
|
},
|
|
cx = { alt: !1, ctrl: !1, meta: !1, shift: !1 },
|
|
Et = /* @__PURE__ */ a((e, t) => {
|
|
let { alt: o, ctrl: i, meta: r, shift: n } = e === !1 ? cx : e;
|
|
return !(
|
|
(typeof o == "boolean" && o !== t.altKey) ||
|
|
(typeof i == "boolean" && i !== t.ctrlKey) ||
|
|
(typeof r == "boolean" && r !== t.metaKey) ||
|
|
(typeof n == "boolean" && n !== t.shiftKey)
|
|
);
|
|
}, "matchesModifiers"),
|
|
$e = /* @__PURE__ */ a(
|
|
(e, t) => (t.code ? t.code === e : t.key === ux[e]),
|
|
"matchesKeyCode",
|
|
);
|
|
|
|
// src/manager/components/sidebar/useExpanded.ts
|
|
var { document: Yi } = se,
|
|
px = /* @__PURE__ */ a(
|
|
({
|
|
refId: e,
|
|
data: t,
|
|
initialExpanded: o,
|
|
highlightedRef: i,
|
|
rootIds: r,
|
|
}) => {
|
|
let n = i.current?.refId === e ? Fo(t, i.current?.itemId) : [];
|
|
return [...r, ...n].reduce(
|
|
// @ts-expect-error (non strict)
|
|
(l, u) => Object.assign(l, { [u]: u in o ? o[u] : !0 }),
|
|
{},
|
|
);
|
|
},
|
|
"initializeExpanded",
|
|
),
|
|
dx = /* @__PURE__ */ a(() => {}, "noop"),
|
|
lp = /* @__PURE__ */ a(
|
|
({
|
|
containerRef: e,
|
|
isBrowsing: t,
|
|
refId: o,
|
|
data: i,
|
|
initialExpanded: r,
|
|
rootIds: n,
|
|
highlightedRef: l,
|
|
setHighlightedItemId: u,
|
|
selectedStoryId: c,
|
|
onSelectStoryId: d,
|
|
}) => {
|
|
let p = oe(),
|
|
[f, h] = Zt(
|
|
(g, { ids: v, value: S }) =>
|
|
v.reduce((w, k) => Object.assign(w, { [k]: S }), { ...g }),
|
|
// @ts-expect-error (non strict)
|
|
{
|
|
refId: o,
|
|
data: i,
|
|
highlightedRef: l,
|
|
rootIds: n,
|
|
initialExpanded: r,
|
|
},
|
|
px,
|
|
),
|
|
y = A((g) => e.current?.querySelector(`[data-item-id="${g}"]`), [e]),
|
|
m = A(
|
|
(g) => {
|
|
(u(g.getAttribute("data-item-id")), zt(g));
|
|
},
|
|
[u],
|
|
),
|
|
b = A(
|
|
({ ids: g, value: v }) => {
|
|
if ((h({ ids: g, value: v }), g.length === 1)) {
|
|
let S = e.current?.querySelector(
|
|
`[data-item-id="${g[0]}"][data-ref-id="${o}"]`,
|
|
);
|
|
S && m(S);
|
|
}
|
|
},
|
|
[e, m, o],
|
|
);
|
|
H(() => {
|
|
h({ ids: Fo(i, c), value: !0 });
|
|
}, [i, c]);
|
|
let x = A(() => {
|
|
let g = Object.keys(i).filter((v) => !n.includes(v));
|
|
h({ ids: g, value: !1 });
|
|
}, [i, n]),
|
|
E = A(() => {
|
|
h({ ids: Object.keys(i), value: !0 });
|
|
}, [i]);
|
|
return (
|
|
H(
|
|
() =>
|
|
p
|
|
? (p.on(ho, x),
|
|
p.on(wn, E),
|
|
() => {
|
|
(p.off(ho, x), p.off(wn, E));
|
|
})
|
|
: dx,
|
|
[p, x, E],
|
|
),
|
|
H(() => {
|
|
let g = Yi.getElementById("storybook-explorer-menu"),
|
|
v = Gi((S) => {
|
|
let w = l.current?.refId === o && l.current?.itemId;
|
|
if (!t || !e.current || !w || S.repeat || !Et(!1, S)) return;
|
|
let k = $e("Enter", S),
|
|
_ = $e("Space", S),
|
|
C = $e("ArrowLeft", S),
|
|
T = $e("ArrowRight", S);
|
|
if (!(k || _ || C || T)) return;
|
|
let O = y(w);
|
|
if (!O || O.getAttribute("data-ref-id") !== o) return;
|
|
let P = S.target;
|
|
if (!Wt(g, P) && !Wt(P, g)) return;
|
|
if (P.hasAttribute("data-action")) {
|
|
if (k || _) return;
|
|
P.blur();
|
|
}
|
|
let D = O.getAttribute("data-nodetype");
|
|
(k || _) &&
|
|
["component", "story", "document"].includes(D) &&
|
|
d(w);
|
|
let M = O.getAttribute("aria-expanded");
|
|
if (C) {
|
|
if (M === "true") {
|
|
h({ ids: [w], value: !1 });
|
|
return;
|
|
}
|
|
let F = O.getAttribute("data-parent-id"),
|
|
Z = F && y(F);
|
|
if (Z && Z.getAttribute("data-highlightable") === "true") {
|
|
m(Z);
|
|
return;
|
|
}
|
|
h({ ids: at(i, w, !0), value: !1 });
|
|
return;
|
|
}
|
|
T &&
|
|
(M === "false"
|
|
? b({ ids: [w], value: !0 })
|
|
: M === "true" && b({ ids: at(i, w, !0), value: !0 }));
|
|
}, 60);
|
|
return (
|
|
Yi.addEventListener("keydown", v),
|
|
() => Yi.removeEventListener("keydown", v)
|
|
);
|
|
}, [e, t, o, i, l, u, d]),
|
|
[f, b]
|
|
);
|
|
},
|
|
"useExpanded",
|
|
);
|
|
|
|
// src/manager/components/sidebar/Tree.tsx
|
|
var fx = I.div((e) => ({
|
|
marginTop: e.hasOrphans ? 20 : 0,
|
|
marginBottom: 20,
|
|
})),
|
|
mx = I.button(({ theme: e }) => ({
|
|
all: "unset",
|
|
display: "flex",
|
|
padding: "0px 8px",
|
|
borderRadius: 4,
|
|
transition: "color 150ms, box-shadow 150ms",
|
|
gap: 6,
|
|
alignItems: "center",
|
|
cursor: "pointer",
|
|
height: 28,
|
|
"&:hover, &:focus": {
|
|
outline: "none",
|
|
background: "var(--tree-node-background-hover)",
|
|
},
|
|
})),
|
|
up = I.div(({ theme: e }) => ({
|
|
position: "relative",
|
|
display: "flex",
|
|
justifyContent: "space-between",
|
|
alignItems: "flex-start",
|
|
color: e.color.defaultText,
|
|
background: "transparent",
|
|
minHeight: 28,
|
|
borderRadius: 4,
|
|
overflow: "hidden",
|
|
"--tree-node-background-hover": e.background.content,
|
|
[Qe]: {
|
|
"--tree-node-background-hover": e.background.app,
|
|
},
|
|
"&:hover, &:focus": {
|
|
"--tree-node-background-hover":
|
|
e.base === "dark"
|
|
? Ir(0.35, e.color.secondary)
|
|
: Po(0.45, e.color.secondary),
|
|
background: "var(--tree-node-background-hover)",
|
|
outline: "none",
|
|
},
|
|
'& [data-displayed="off"]': {
|
|
visibility: "hidden",
|
|
},
|
|
'&:hover [data-displayed="off"]': {
|
|
visibility: "visible",
|
|
},
|
|
'& [data-displayed="on"] + *': {
|
|
visibility: "hidden",
|
|
},
|
|
'&:hover [data-displayed="off"] + *': {
|
|
visibility: "hidden",
|
|
},
|
|
'&[data-selected="true"]': {
|
|
color: e.color.lightest,
|
|
background: e.color.secondary,
|
|
fontWeight: e.typography.weight.bold,
|
|
"&&:hover, &&:focus": {
|
|
"--tree-node-background-hover": e.color.secondary,
|
|
background: "var(--tree-node-background-hover)",
|
|
},
|
|
svg: { color: e.color.lightest },
|
|
},
|
|
a: { color: "currentColor" },
|
|
})),
|
|
hx = I(he)(({ theme: e }) => ({
|
|
display: "none",
|
|
"@media (min-width: 600px)": {
|
|
display: "block",
|
|
fontSize: "10px",
|
|
overflow: "hidden",
|
|
width: 1,
|
|
height: "20px",
|
|
boxSizing: "border-box",
|
|
opacity: 0,
|
|
padding: 0,
|
|
"&:focus": {
|
|
opacity: 1,
|
|
padding: "5px 10px",
|
|
background: "white",
|
|
color: e.color.secondary,
|
|
width: "auto",
|
|
},
|
|
},
|
|
})),
|
|
gx = /* @__PURE__ */ a((e) => {
|
|
let t = De();
|
|
return /* @__PURE__ */ s.createElement(Un, {
|
|
...e,
|
|
color: t.color.positive,
|
|
});
|
|
}, "SuccessStatusIcon"),
|
|
yx = /* @__PURE__ */ a((e) => {
|
|
let t = De();
|
|
return /* @__PURE__ */ s.createElement($n, {
|
|
...e,
|
|
color: t.color.negative,
|
|
});
|
|
}, "ErrorStatusIcon"),
|
|
bx = /* @__PURE__ */ a((e) => {
|
|
let t = De();
|
|
return /* @__PURE__ */ s.createElement(Gn, {
|
|
...e,
|
|
color: t.color.warning,
|
|
});
|
|
}, "WarnStatusIcon"),
|
|
vx = /* @__PURE__ */ a((e) => {
|
|
let t = De();
|
|
return /* @__PURE__ */ s.createElement(ct, {
|
|
...e,
|
|
size: 12,
|
|
color: t.color.defaultText,
|
|
});
|
|
}, "PendingStatusIcon"),
|
|
Qi = {
|
|
"status-value:success": /* @__PURE__ */ s.createElement(gx, null),
|
|
"status-value:error": /* @__PURE__ */ s.createElement(yx, null),
|
|
"status-value:warning": /* @__PURE__ */ s.createElement(bx, null),
|
|
"status-value:pending": /* @__PURE__ */ s.createElement(vx, null),
|
|
"status-value:unknown": null,
|
|
};
|
|
var cp = [
|
|
"status-value:success",
|
|
"status-value:error",
|
|
"status-value:warning",
|
|
"status-value:pending",
|
|
"status-value:unknown",
|
|
],
|
|
pp = s.memo(
|
|
/* @__PURE__ */ a(function ({
|
|
item: t,
|
|
statuses: o,
|
|
groupStatus: i,
|
|
refId: r,
|
|
docsMode: n,
|
|
isOrphan: l,
|
|
isDisplayed: u,
|
|
isSelected: c,
|
|
isFullyExpanded: d,
|
|
setFullyExpanded: p,
|
|
isExpanded: f,
|
|
setExpanded: h,
|
|
onSelectStoryId: y,
|
|
api: m,
|
|
}) {
|
|
let { isDesktop: b, isMobile: x, setMobileMenuOpen: E } = ge(),
|
|
{ counts: g, statusesByValue: v } = ep(t);
|
|
if (!u) return null;
|
|
let S = G(() => {
|
|
if (t.type === "story" || t.type === "docs")
|
|
return Object.entries(o)
|
|
.filter(([, _]) => _.sidebarContextMenu !== !1)
|
|
.sort((_, C) => cp.indexOf(_[1].value) - cp.indexOf(C[1].value))
|
|
.map(([_, C]) => ({
|
|
id: _,
|
|
title: C.title,
|
|
description: C.description,
|
|
"aria-label": `Test status for ${C.title}: ${C.value}`,
|
|
icon: Qi[C.value],
|
|
onClick: /* @__PURE__ */ a(() => {
|
|
(y(t.id), At.selectStatuses([C]));
|
|
}, "onClick"),
|
|
}));
|
|
if (t.type === "component" || t.type === "group") {
|
|
let _ = [],
|
|
C = g["status-value:error"],
|
|
T = g["status-value:warning"];
|
|
return (
|
|
C &&
|
|
_.push({
|
|
id: "errors",
|
|
icon: Qi["status-value:error"],
|
|
title: `${C} ${C === 1 ? "story" : "stories"} with errors`,
|
|
onClick: /* @__PURE__ */ a(() => {
|
|
let [O] = Object.entries(v["status-value:error"])[0];
|
|
y(O);
|
|
let P = Object.values(v["status-value:error"]).flat();
|
|
At.selectStatuses(P);
|
|
}, "onClick"),
|
|
}),
|
|
T &&
|
|
_.push({
|
|
id: "warnings",
|
|
icon: Qi["status-value:warning"],
|
|
title: `${T} ${T === 1 ? "story" : "stories"} with warnings`,
|
|
onClick: /* @__PURE__ */ a(() => {
|
|
let [O] = Object.entries(v["status-value:warning"])[0];
|
|
y(O);
|
|
let P = Object.values(v["status-value:warning"]).flat();
|
|
At.selectStatuses(P);
|
|
}, "onClick"),
|
|
}),
|
|
_
|
|
);
|
|
}
|
|
return [];
|
|
}, [g, t.id, t.type, y, o, v]),
|
|
w = Hr(t.id, r),
|
|
k =
|
|
r === "storybook_internal"
|
|
? Zc(t, S, m)
|
|
: {
|
|
node: null,
|
|
onMouseEnter: /* @__PURE__ */ a(() => {}, "onMouseEnter"),
|
|
};
|
|
if (t.type === "story" || t.type === "docs") {
|
|
let _ = t.type === "docs" ? sp : ap,
|
|
C = Ho(Object.values(o || {}).map((P) => P.value)),
|
|
[T, O] = Bo[C];
|
|
return /* @__PURE__ */ s.createElement(
|
|
up,
|
|
{
|
|
key: w,
|
|
className: "sidebar-item",
|
|
"data-selected": c,
|
|
"data-ref-id": r,
|
|
"data-item-id": t.id,
|
|
"data-parent-id": t.parent,
|
|
"data-nodetype": t.type === "docs" ? "document" : "story",
|
|
"data-highlightable": u,
|
|
onMouseEnter: k.onMouseEnter,
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
_,
|
|
{
|
|
style: c ? {} : { color: O },
|
|
href: _c(t, r),
|
|
id: w,
|
|
depth: l ? t.depth : t.depth - 1,
|
|
onClick: (P) => {
|
|
(P.preventDefault(), y(t.id), x && E(!1));
|
|
},
|
|
...(t.type === "docs" && { docsMode: n }),
|
|
},
|
|
t.renderLabel?.(t, m) || t.name,
|
|
),
|
|
c &&
|
|
/* @__PURE__ */ s.createElement(
|
|
hx,
|
|
{ asChild: !0 },
|
|
/* @__PURE__ */ s.createElement(
|
|
"a",
|
|
{ href: "#storybook-preview-wrapper" },
|
|
"Skip to canvas",
|
|
),
|
|
),
|
|
k.node,
|
|
T
|
|
? /* @__PURE__ */ s.createElement(
|
|
zo,
|
|
{
|
|
"aria-label": `Test status: ${C.replace("status-value:", "")}`,
|
|
role: "status",
|
|
type: "button",
|
|
status: C,
|
|
selectedItem: c,
|
|
},
|
|
T,
|
|
)
|
|
: null,
|
|
);
|
|
}
|
|
if (t.type === "root")
|
|
return /* @__PURE__ */ s.createElement(
|
|
rp,
|
|
{
|
|
key: w,
|
|
id: w,
|
|
className: "sidebar-subheading",
|
|
"data-ref-id": r,
|
|
"data-item-id": t.id,
|
|
"data-nodetype": "root",
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
mx,
|
|
{
|
|
type: "button",
|
|
"data-action": "collapse-root",
|
|
onClick: (_) => {
|
|
(_.preventDefault(), h({ ids: [t.id], value: !f }));
|
|
},
|
|
"aria-expanded": f,
|
|
},
|
|
/* @__PURE__ */ s.createElement(Kt, { isExpanded: f }),
|
|
t.renderLabel?.(t, m) || t.name,
|
|
),
|
|
f &&
|
|
/* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{
|
|
className: "sidebar-subheading-action",
|
|
"aria-label": d ? "Expand" : "Collapse",
|
|
"data-action": "expand-all",
|
|
"data-expanded": d,
|
|
onClick: (_) => {
|
|
(_.preventDefault(), p());
|
|
},
|
|
},
|
|
d
|
|
? /* @__PURE__ */ s.createElement(On, null)
|
|
: /* @__PURE__ */ s.createElement(Dn, null),
|
|
),
|
|
);
|
|
if (t.type === "component" || t.type === "group") {
|
|
let _ = i?.[t.id],
|
|
C = _ ? Bo[_][1] : null,
|
|
T = t.type === "component" ? ip : np;
|
|
return /* @__PURE__ */ s.createElement(
|
|
up,
|
|
{
|
|
key: w,
|
|
className: "sidebar-item",
|
|
"data-ref-id": r,
|
|
"data-item-id": t.id,
|
|
"data-parent-id": t.parent,
|
|
"data-nodetype": t.type,
|
|
"data-highlightable": u,
|
|
onMouseEnter: k.onMouseEnter,
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
T,
|
|
{
|
|
id: w,
|
|
style: C ? { color: C } : {},
|
|
"aria-controls": t.children && t.children.join(" "),
|
|
"aria-expanded": f,
|
|
depth: l ? t.depth : t.depth - 1,
|
|
isComponent: t.type === "component",
|
|
isExpandable: t.children && t.children.length > 0,
|
|
isExpanded: f,
|
|
onClick: (O) => {
|
|
(O.preventDefault(),
|
|
h({ ids: [t.id], value: !f }),
|
|
t.type === "component" && !f && b && y(t.id));
|
|
},
|
|
onMouseEnter: () => {
|
|
t.type === "component" &&
|
|
m.emit(kt, {
|
|
ids: [t.children[0]],
|
|
options: { target: r },
|
|
});
|
|
},
|
|
},
|
|
t.renderLabel?.(t, m) || t.name,
|
|
),
|
|
k.node,
|
|
["status-value:error", "status-value:warning"].includes(_) &&
|
|
/* @__PURE__ */ s.createElement(
|
|
zo,
|
|
{ type: "button", status: _ },
|
|
/* @__PURE__ */ s.createElement(
|
|
"svg",
|
|
{
|
|
key: "icon",
|
|
viewBox: "0 0 6 6",
|
|
width: "6",
|
|
height: "6",
|
|
type: "dot",
|
|
},
|
|
/* @__PURE__ */ s.createElement(Me, {
|
|
type: "\
|
|
dot",
|
|
}),
|
|
),
|
|
),
|
|
);
|
|
}
|
|
return null;
|
|
}, "Node"),
|
|
),
|
|
xx = s.memo(
|
|
/* @__PURE__ */ a(function ({
|
|
setExpanded: t,
|
|
isFullyExpanded: o,
|
|
expandableDescendants: i,
|
|
...r
|
|
}) {
|
|
let n = A(() => t({ ids: i, value: !o }), [t, o, i]);
|
|
return /* @__PURE__ */ s.createElement(pp, {
|
|
...r,
|
|
setExpanded: t,
|
|
isFullyExpanded: o,
|
|
setFullyExpanded: n,
|
|
});
|
|
}, "Root"),
|
|
),
|
|
dp = s.memo(
|
|
/* @__PURE__ */ a(function ({
|
|
isBrowsing: t,
|
|
isMain: o,
|
|
refId: i,
|
|
data: r,
|
|
allStatuses: n,
|
|
docsMode: l,
|
|
highlightedRef: u,
|
|
setHighlightedItemId: c,
|
|
selectedStoryId: d,
|
|
onSelectStoryId: p,
|
|
}) {
|
|
let f = U(null),
|
|
h = oe(),
|
|
[y, m, b] = G(
|
|
() =>
|
|
Object.keys(r).reduce(
|
|
(T, O) => {
|
|
let P = r[O];
|
|
return (
|
|
P.type === "root" ? T[0].push(O) : P.parent || T[1].push(O),
|
|
P.type === "root" && P.startCollapsed && (T[2][O] = !1),
|
|
T
|
|
);
|
|
},
|
|
[[], [], {}],
|
|
),
|
|
[r],
|
|
),
|
|
{ expandableDescendants: x } = G(
|
|
() =>
|
|
[...m, ...y].reduce(
|
|
(T, O) => (
|
|
(T.expandableDescendants[O] = at(r, O, !1).filter(
|
|
(P) => !["story", "docs"].includes(r[P].type),
|
|
)),
|
|
T
|
|
),
|
|
{ orphansFirst: [], expandableDescendants: {} },
|
|
),
|
|
[r, y, m],
|
|
),
|
|
E = G(
|
|
() =>
|
|
Object.keys(r).filter((T) => {
|
|
let O = r[T];
|
|
if (O.type !== "component") return !1;
|
|
let { children: P = [], name: D } = O;
|
|
if (P.length !== 1) return !1;
|
|
let M = r[P[0]];
|
|
return M.type === "docs"
|
|
? !0
|
|
: M.type === "story"
|
|
? Dc(M.name, D)
|
|
: !1;
|
|
}),
|
|
[r],
|
|
),
|
|
g = G(() => Object.keys(r).filter((T) => !E.includes(T)), [E]),
|
|
v = G(
|
|
() =>
|
|
E.reduce(
|
|
(T, O) => {
|
|
let { children: P, parent: D, name: M } = r[O],
|
|
[F] = P;
|
|
if (D) {
|
|
let Z = [...r[D].children];
|
|
((Z[Z.indexOf(O)] = F), (T[D] = { ...r[D], children: Z }));
|
|
}
|
|
return (
|
|
(T[F] = {
|
|
...r[F],
|
|
name: M,
|
|
parent: D,
|
|
depth: r[F].depth - 1,
|
|
}),
|
|
T
|
|
);
|
|
},
|
|
{ ...r },
|
|
),
|
|
[r],
|
|
),
|
|
S = G(
|
|
() => g.reduce((T, O) => Object.assign(T, { [O]: Fo(v, O) }), {}),
|
|
[g, v],
|
|
),
|
|
[w, k] = lp({
|
|
// @ts-expect-error (non strict)
|
|
containerRef: f,
|
|
isBrowsing: t,
|
|
refId: i,
|
|
data: v,
|
|
initialExpanded: b,
|
|
rootIds: y,
|
|
highlightedRef: u,
|
|
setHighlightedItemId: c,
|
|
selectedStoryId: d,
|
|
onSelectStoryId: p,
|
|
}),
|
|
_ = G(() => zr(v, n ?? {}), [v, n]),
|
|
C = G(
|
|
() =>
|
|
g.map((T) => {
|
|
let O = v[T],
|
|
P = Hr(T, i);
|
|
if (O.type === "root") {
|
|
let M = x[O.id],
|
|
F = M.every((Z) => w[Z]);
|
|
return (
|
|
// @ts-expect-error (TODO)
|
|
/* @__PURE__ */ s.createElement(xx, {
|
|
api: h,
|
|
key: P,
|
|
item: O,
|
|
refId: i,
|
|
collapsedData: v,
|
|
isOrphan: !1,
|
|
isDisplayed: !0,
|
|
isSelected: d === T,
|
|
isExpanded: !!w[T],
|
|
setExpanded: k,
|
|
isFullyExpanded: F,
|
|
expandableDescendants: M,
|
|
onSelectStoryId: p,
|
|
})
|
|
);
|
|
}
|
|
let D = !O.parent || S[T].every((M) => w[M]);
|
|
return D === !1
|
|
? null
|
|
: /* @__PURE__ */ s.createElement(pp, {
|
|
api: h,
|
|
collapsedData: v,
|
|
key: P,
|
|
item: O,
|
|
statuses: n?.[T] ?? {},
|
|
groupStatus: _,
|
|
refId: i,
|
|
docsMode: l,
|
|
isOrphan: m.some((M) => T === M || T.startsWith(`${M}-`)),
|
|
isDisplayed: D,
|
|
isSelected: d === T,
|
|
isExpanded: !!w[T],
|
|
setExpanded: k,
|
|
onSelectStoryId: p,
|
|
});
|
|
}),
|
|
[S, h, v, g, l, x, w, _, p, m, i, d, k, n],
|
|
);
|
|
return /* @__PURE__ */ s.createElement(
|
|
Ui.Provider,
|
|
{ value: { data: r, allStatuses: n, groupStatus: _ } },
|
|
/* @__PURE__ */ s.createElement(
|
|
fx,
|
|
{ ref: f, hasOrphans: o && m.length > 0 },
|
|
/* @__PURE__ */ s.createElement(Yc, null),
|
|
C,
|
|
),
|
|
);
|
|
}, "Tree"),
|
|
);
|
|
|
|
// src/manager/components/sidebar/Refs.tsx
|
|
var Ix = I.div(({ isMain: e }) => ({
|
|
position: "relative",
|
|
marginTop: e ? void 0 : 0,
|
|
})),
|
|
Sx = I.div(({ theme: e }) => ({
|
|
fontWeight: e.typography.weight.bold,
|
|
fontSize: e.typography.size.s2,
|
|
// Similar to ListItem.tsx
|
|
textDecoration: "none",
|
|
lineHeight: "16px",
|
|
display: "flex",
|
|
alignItems: "center",
|
|
justifyContent: "space-between",
|
|
background: "transparent",
|
|
width: "100%",
|
|
marginTop: 20,
|
|
paddingTop: 16,
|
|
paddingBottom: 12,
|
|
borderTop: `1px solid ${e.appBorderColor}`,
|
|
color:
|
|
e.base === "light" ? e.color.defaultText : Te(0.2, e.color.defaultText),
|
|
})),
|
|
wx = I.div({
|
|
textOverflow: "ellipsis",
|
|
whiteSpace: "nowrap",
|
|
flex: 1,
|
|
overflow: "hidden",
|
|
marginLeft: 2,
|
|
}),
|
|
Ex = I.button(({ theme: e }) => ({
|
|
all: "unset",
|
|
display: "flex",
|
|
padding: "0px 8px",
|
|
gap: 6,
|
|
alignItems: "center",
|
|
cursor: "pointer",
|
|
overflow: "hidden",
|
|
"&:focus": {
|
|
borderColor: e.color.secondary,
|
|
"span:first-of-type": {
|
|
borderLeftColor: e.color.secondary,
|
|
},
|
|
},
|
|
})),
|
|
fp = s.memo(
|
|
/* @__PURE__ */ a(function (t) {
|
|
let { docsOptions: o } = Ne(),
|
|
i = oe(),
|
|
{
|
|
filteredIndex: r,
|
|
id: n,
|
|
title: l = n,
|
|
isLoading: u,
|
|
isBrowsing: c,
|
|
selectedStoryId: d,
|
|
highlightedRef: p,
|
|
setHighlighted: f,
|
|
loginUrl: h,
|
|
type: y,
|
|
expanded: m = !0,
|
|
indexError: b,
|
|
previewInitialized: x,
|
|
allStatuses: E,
|
|
} = t,
|
|
g = G(() => (r ? Object.keys(r).length : 0), [r]),
|
|
v = U(null),
|
|
S = n === lt,
|
|
k =
|
|
u ||
|
|
(y === "auto-inject" && !x) ||
|
|
y ===
|
|
"server-ch\
|
|
ecked" ||
|
|
y === "unknown",
|
|
O = Ac(k, !!h && g === 0, !!b, !k && g === 0),
|
|
[P, D] = K(m);
|
|
H(() => {
|
|
r && d && r[d] && D(!0);
|
|
}, [D, r, d]);
|
|
let M = A(() => D((V) => !V), [D]),
|
|
F = A((V) => f({ itemId: V, refId: n }), [f]),
|
|
Z = A(
|
|
// @ts-expect-error (non strict)
|
|
(V) => i && i.selectStory(V, void 0, { ref: !S && n }),
|
|
[i, S, n],
|
|
);
|
|
return /* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
S ||
|
|
/* @__PURE__ */ s.createElement(
|
|
Sx,
|
|
{
|
|
"aria-label": `${P ? "Hide" : "Show"} ${l} stories`,
|
|
"aria-expanded": P,
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
Ex,
|
|
{ "data-action": "collapse-ref", onClick: M },
|
|
/* @__PURE__ */ s.createElement(Kt, { isExpanded: P }),
|
|
/* @__PURE__ */ s.createElement(wx, { title: l }, l),
|
|
),
|
|
/* @__PURE__ */ s.createElement(zc, { ...t, state: O, ref: v }),
|
|
),
|
|
P &&
|
|
/* @__PURE__ */ s.createElement(
|
|
Ix,
|
|
{ "data-title": l, isMain: S },
|
|
O === "auth" &&
|
|
/* @__PURE__ */ s.createElement(Fc, { id: n, loginUrl: h }),
|
|
O === "error" && /* @__PURE__ */ s.createElement(Rc, { error: b }),
|
|
O === "loading" &&
|
|
/* @__PURE__ */ s.createElement(Hc, { isMain: S }),
|
|
O === "empty" && /* @__PURE__ */ s.createElement(Bc, { isMain: S }),
|
|
O === "ready" &&
|
|
/* @__PURE__ */ s.createElement(dp, {
|
|
allStatuses: E,
|
|
isBrowsing: c,
|
|
isMain: S,
|
|
refId: n,
|
|
data: r,
|
|
docsMode: o.docsMode,
|
|
selectedStoryId: d,
|
|
onSelectStoryId: Z,
|
|
highlightedRef: p,
|
|
setHighlightedItemId: F,
|
|
}),
|
|
),
|
|
);
|
|
}, "Ref"),
|
|
);
|
|
|
|
// src/manager/components/sidebar/useHighlighted.ts
|
|
var { document: jr, window: mp } = se,
|
|
hp = /* @__PURE__ */ a(
|
|
(e) => (e ? { itemId: e.storyId, refId: e.refId } : null),
|
|
"fromSelection",
|
|
),
|
|
gp = /* @__PURE__ */ a((e, t = {}, o = 1) => {
|
|
let {
|
|
containerRef: i,
|
|
center: r = !1,
|
|
attempts: n = 3,
|
|
delay: l = 500,
|
|
} = t,
|
|
u = (i ? i.current : jr)?.querySelector(e);
|
|
u ? zt(u, r) : o <= n && setTimeout(gp, l, e, t, o + 1);
|
|
}, "scrollToSelector"),
|
|
yp = /* @__PURE__ */ a(
|
|
({ containerRef: e, isLoading: t, isBrowsing: o, selected: i }) => {
|
|
let r = hp(i),
|
|
n = U(r),
|
|
[l, u] = K(r),
|
|
c = oe(),
|
|
d = A(
|
|
(f) => {
|
|
((n.current = f), u(f));
|
|
},
|
|
[n],
|
|
),
|
|
p = A(
|
|
(f, h = !1) => {
|
|
let y = f.getAttribute("data-item-id"),
|
|
m = f.getAttribute("data-ref-id");
|
|
!y || !m || (d({ itemId: y, refId: m }), zt(f, h));
|
|
},
|
|
[d],
|
|
);
|
|
return (
|
|
H(() => {
|
|
let f = hp(i);
|
|
(d(f),
|
|
f &&
|
|
gp(`[data-item-id="${f.itemId}"][data-ref-id="${f.refId}"]`, {
|
|
containerRef: e,
|
|
center: !0,
|
|
}));
|
|
}, [e, i, d]),
|
|
H(() => {
|
|
let f = jr.getElementById("storybook-explorer-menu"),
|
|
h,
|
|
y = /* @__PURE__ */ a((m) => {
|
|
if (t || !o || !e.current || !Et(!1, m)) return;
|
|
let b = $e("ArrowUp", m),
|
|
x = $e("ArrowDown", m);
|
|
if (!(b || x)) return;
|
|
let E = mp.requestAnimationFrame(() => {
|
|
(mp.cancelAnimationFrame(h), (h = E));
|
|
let g = m.target;
|
|
if (!Wt(f, g) && !Wt(g, f)) return;
|
|
g.hasAttribute("data-action") && g.blur();
|
|
let v = Array.from(
|
|
e.current?.querySelectorAll("[data-highlightable=true]") ||
|
|
[],
|
|
),
|
|
S = v.findIndex(
|
|
(_) =>
|
|
_.getAttribute("data-item-id") === n.current?.itemId &&
|
|
_.getAttribute("data-ref-id") === n.current?.refId,
|
|
),
|
|
w = Pc(v, S, b ? -1 : 1),
|
|
k = b ? w === v.length - 1 : w === 0;
|
|
if (
|
|
(p(v[w], k),
|
|
v[w].getAttribute("data-nodetype") === "component")
|
|
) {
|
|
let { itemId: _, refId: C } = n.current,
|
|
T = c.resolveStory(
|
|
_,
|
|
C === "storybook_internal" ? void 0 : C,
|
|
);
|
|
T.type === "component" &&
|
|
c.emit(kt, {
|
|
// @ts-expect-error (non strict)
|
|
ids: [T.children[0]],
|
|
options: { target: C },
|
|
});
|
|
}
|
|
});
|
|
}, "navigateTree");
|
|
return (
|
|
jr.addEventListener("keydown", y),
|
|
() => jr.removeEventListener("keydown", y)
|
|
);
|
|
}, [t, o, n, p]),
|
|
[l, d, n]
|
|
);
|
|
},
|
|
"useHighlighted",
|
|
);
|
|
|
|
// src/manager/components/sidebar/Explorer.tsx
|
|
var bp = s.memo(
|
|
/* @__PURE__ */ a(function ({
|
|
isLoading: t,
|
|
isBrowsing: o,
|
|
dataset: i,
|
|
selected: r,
|
|
}) {
|
|
let n = U(null),
|
|
[l, u, c] = yp({
|
|
containerRef: n,
|
|
isLoading: t,
|
|
isBrowsing: o,
|
|
selected: r,
|
|
});
|
|
return /* @__PURE__ */ s.createElement(
|
|
"div",
|
|
{
|
|
ref: n,
|
|
id: "storybook-explorer-tree",
|
|
"data-highlighted-ref-id": l?.refId,
|
|
"data-highlighted-item-id": l?.itemId,
|
|
},
|
|
l && /* @__PURE__ */ s.createElement(Ec, { ...l }),
|
|
i.entries.map(([d, p]) =>
|
|
/* @__PURE__ */ s.createElement(fp, {
|
|
...p,
|
|
key: d,
|
|
isLoading: t,
|
|
isBrowsing: o,
|
|
selectedStoryId: r?.refId === p.id ? r.storyId : null,
|
|
highlightedRef: c,
|
|
setHighlighted: u,
|
|
}),
|
|
),
|
|
);
|
|
}, "Explorer"),
|
|
);
|
|
|
|
// src/manager/components/sidebar/Brand.tsx
|
|
var Tx = I(sr)(({ theme: e }) => ({
|
|
width: "auto",
|
|
height: "22px !important",
|
|
display: "block",
|
|
color: e.base === "light" ? e.color.defaultText : e.color.lightest,
|
|
})),
|
|
Cx = I.img({
|
|
display: "block",
|
|
maxWidth: "150px !important",
|
|
maxHeight: "100px",
|
|
}),
|
|
vp = I.a(({ theme: e }) => ({
|
|
display: "inline-block",
|
|
height: "100%",
|
|
margin: "-3px -4px",
|
|
padding: "2px 3px",
|
|
border: "1px solid transparent",
|
|
borderRadius: 3,
|
|
color: "inherit",
|
|
textDecoration: "none",
|
|
"&:focus": {
|
|
outline: 0,
|
|
borderColor: e.color.secondary,
|
|
},
|
|
})),
|
|
xp = Ca(({ theme: e }) => {
|
|
let {
|
|
title: t = "Storybook",
|
|
url: o = "./",
|
|
image: i,
|
|
target: r,
|
|
} = e.brand,
|
|
n = r || (o === "./" ? "" : "_blank");
|
|
if (i === null)
|
|
return t === null
|
|
? null
|
|
: o
|
|
? /* @__PURE__ */ s.createElement(vp, {
|
|
href: o,
|
|
target: n,
|
|
dangerouslySetInnerHTML: { __html: t },
|
|
})
|
|
: /* @__PURE__ */ s.createElement("div", {
|
|
dangerouslySetInnerHTML: { __html: t },
|
|
});
|
|
let l = i
|
|
? /* @__PURE__ */ s.createElement(Cx, { src: i, alt: t })
|
|
: /* @__PURE__ */ s.createElement(Tx, { alt: t });
|
|
return o
|
|
? /* @__PURE__ */ s.createElement(vp, { title: t, href: o, target: n }, l)
|
|
: /* @__PURE__ */ s.createElement("div", null, l);
|
|
});
|
|
|
|
// src/manager/components/sidebar/Menu.tsx
|
|
var Xi = I(ee)(({ highlighted: e, theme: t, isMobile: o }) => ({
|
|
position: "relative",
|
|
overflow: "visible",
|
|
marginTop: 0,
|
|
zIndex: 1,
|
|
...(o && {
|
|
width: 36,
|
|
height: 36,
|
|
}),
|
|
...(e && {
|
|
"&:before, &:after": {
|
|
content: '""',
|
|
position: "absolute",
|
|
top: 6,
|
|
right: 6,
|
|
width: 5,
|
|
height: 5,
|
|
zIndex: 2,
|
|
borderRadius: "50%",
|
|
background: t.background.app,
|
|
border: `1px solid ${t.background.app}`,
|
|
boxShadow: `0 0 0 2px ${t.background.app}`,
|
|
},
|
|
"&:after": {
|
|
background: t.color.positive,
|
|
border: "1px solid rgba(0, 0, 0, 0.1)",
|
|
boxShadow: `0 0 0 2px ${t.background.app}`,
|
|
},
|
|
"&:hover:after, &:focus-visible:after": {
|
|
boxShadow: `0 0 0 2px ${Te(0.88, t.color.secondary)}`,
|
|
},
|
|
}),
|
|
})),
|
|
_x = I.div({
|
|
display: "flex",
|
|
gap: 6,
|
|
}),
|
|
kx = /* @__PURE__ */ a(
|
|
({ menu: e, onClick: t }) =>
|
|
/* @__PURE__ */ s.createElement(ot, { links: e, onClick: t }),
|
|
"SidebarMenuList",
|
|
),
|
|
Ip = /* @__PURE__ */ a(({ menu: e, isHighlighted: t, onClick: o }) => {
|
|
let [i, r] = K(!1),
|
|
{ isMobile: n, setMobileMenuOpen: l } = ge();
|
|
return n
|
|
? /* @__PURE__ */ s.createElement(
|
|
_x,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
Xi,
|
|
{
|
|
title: "About Storybook",
|
|
"aria-label": "About Storybook",
|
|
highlighted: !!t,
|
|
active: !1,
|
|
onClick: o,
|
|
isMobile: !0,
|
|
},
|
|
/* @__PURE__ */ s.createElement(Qo, null),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
Xi,
|
|
{
|
|
title: "Close menu",
|
|
"aria-label": "Close menu",
|
|
highlighted: !1,
|
|
active: !1,
|
|
onClick: () => l(!1),
|
|
isMobile: !0,
|
|
},
|
|
/* @__PURE__ */ s.createElement(je, null),
|
|
),
|
|
)
|
|
: /* @__PURE__ */ s.createElement(
|
|
ve,
|
|
{
|
|
placement: "top",
|
|
closeOnOutsideClick: !0,
|
|
tooltip: ({ onHide: u }) =>
|
|
/* @__PURE__ */ s.createElement(kx, { onClick: u, menu: e }),
|
|
onVisibleChange: r,
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
Xi,
|
|
{
|
|
title: "Shortcuts",
|
|
"aria-label": "Shortcuts",
|
|
highlighted: !!t,
|
|
active: i,
|
|
size: "medium",
|
|
isMobile: !1,
|
|
},
|
|
/* @__PURE__ */ s.createElement(Qo, null),
|
|
),
|
|
);
|
|
}, "SidebarMenu");
|
|
|
|
// src/manager/components/sidebar/Heading.tsx
|
|
var Ox = I.div(({ theme: e }) => ({
|
|
fontSize: e.typography.size.s2,
|
|
fontWeight: e.typography.weight.bold,
|
|
color: e.color.defaultText,
|
|
marginRight: 20,
|
|
display: "flex",
|
|
width: "100%",
|
|
alignItems: "center",
|
|
minHeight: 22,
|
|
"& > * > *": {
|
|
maxWidth: "100%",
|
|
},
|
|
"& > *": {
|
|
maxWidth: "100%",
|
|
height: "auto",
|
|
display: "block",
|
|
flex: "1 1 auto",
|
|
},
|
|
})),
|
|
Px = I.div({
|
|
display: "flex",
|
|
alignItems: "center",
|
|
justifyContent: "space-between",
|
|
position: "relative",
|
|
minHeight: 42,
|
|
paddingLeft: 8,
|
|
}),
|
|
Ax = I(he)(({ theme: e }) => ({
|
|
display: "none",
|
|
"@media (min-width: 600px)": {
|
|
display: "block",
|
|
position: "absolute",
|
|
fontSize: e.typography.size.s1,
|
|
zIndex: 3,
|
|
border: 0,
|
|
width: 1,
|
|
height: 1,
|
|
padding: 0,
|
|
margin: -1,
|
|
overflow: "hidden",
|
|
clip: "rect(0, 0, 0, 0)",
|
|
whiteSpace: "nowrap",
|
|
wordWrap: "normal",
|
|
opacity: 0,
|
|
transition: "opacity 150ms ease-out",
|
|
"&:focus": {
|
|
width: "100%",
|
|
height: "inherit",
|
|
padding: "10px 15px",
|
|
margin: 0,
|
|
clip: "unset",
|
|
overflow: "unset",
|
|
opacity: 1,
|
|
},
|
|
},
|
|
})),
|
|
Sp = /* @__PURE__ */ a(
|
|
({
|
|
menuHighlighted: e = !1,
|
|
menu: t,
|
|
skipLinkHref: o,
|
|
isLoading: i,
|
|
onMenuClick: r,
|
|
...n
|
|
}) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
Px,
|
|
{ ...n },
|
|
o &&
|
|
/* @__PURE__ */ s.createElement(
|
|
Ax,
|
|
{ asChild: !0 },
|
|
/* @__PURE__ */ s.createElement(
|
|
"a",
|
|
{ href: o, tabIndex: 0 },
|
|
"Skip to canvas",
|
|
),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
Ox,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(xp, null),
|
|
),
|
|
/* @__PURE__ */ s.createElement(Ip, {
|
|
menu: t,
|
|
isHighlighted: e,
|
|
onClick: r,
|
|
}),
|
|
),
|
|
"Heading",
|
|
);
|
|
|
|
// ../node_modules/downshift/dist/downshift.esm.js
|
|
var Y = Ve(si());
|
|
var Nx = Ve(Cp());
|
|
|
|
// ../node_modules/compute-scroll-into-view/dist/index.js
|
|
var _p = /* @__PURE__ */ a(
|
|
(e) => typeof e == "object" && e != null && e.nodeType === 1,
|
|
"t",
|
|
),
|
|
kp = /* @__PURE__ */ a(
|
|
(e, t) => (!t || e !== "hidden") && e !== "visible" && e !== "clip",
|
|
"e",
|
|
),
|
|
en = /* @__PURE__ */ a((e, t) => {
|
|
if (e.clientHeight < e.scrollHeight || e.clientWidth < e.scrollWidth) {
|
|
let o = getComputedStyle(e, null);
|
|
return (
|
|
kp(o.overflowY, t) ||
|
|
kp(o.overflowX, t) ||
|
|
((i) => {
|
|
let r = ((n) => {
|
|
if (!n.ownerDocument || !n.ownerDocument.defaultView) return null;
|
|
try {
|
|
return n.ownerDocument.defaultView.frameElement;
|
|
} catch {
|
|
return null;
|
|
}
|
|
})(i);
|
|
return (
|
|
!!r &&
|
|
(r.clientHeight < i.scrollHeight || r.clientWidth < i.scrollWidth)
|
|
);
|
|
})(e)
|
|
);
|
|
}
|
|
return !1;
|
|
}, "n"),
|
|
tn = /* @__PURE__ */ a(
|
|
(e, t, o, i, r, n, l, u) =>
|
|
(n < e && l > t) || (n > e && l < t)
|
|
? 0
|
|
: (n <= e && u <= o) || (l >= t && u >= o)
|
|
? n - e - i
|
|
: (l > t && u < o) || (n < e && u > o)
|
|
? l - t + r
|
|
: 0,
|
|
"o",
|
|
),
|
|
Lx = /* @__PURE__ */ a((e) => {
|
|
let t = e.parentElement;
|
|
return t ?? (e.getRootNode().host || null);
|
|
}, "l"),
|
|
Op = /* @__PURE__ */ a((e, t) => {
|
|
var o, i, r, n;
|
|
if (typeof document > "u") return [];
|
|
let {
|
|
scrollMode: l,
|
|
block: u,
|
|
inline: c,
|
|
boundary: d,
|
|
skipOverflowHiddenElements: p,
|
|
} = t,
|
|
f = typeof d == "function" ? d : (V) => V !== d;
|
|
if (!_p(e)) throw new TypeError("Invalid target");
|
|
let h = document.scrollingElement || document.documentElement,
|
|
y = [],
|
|
m = e;
|
|
for (; _p(m) && f(m); ) {
|
|
if (((m = Lx(m)), m === h)) {
|
|
y.push(m);
|
|
break;
|
|
}
|
|
(m != null &&
|
|
m === document.body &&
|
|
en(m) &&
|
|
!en(document.documentElement)) ||
|
|
(m != null && en(m, p) && y.push(m));
|
|
}
|
|
let b =
|
|
(i = (o = window.visualViewport) == null ? void 0 : o.width) != null
|
|
? i
|
|
: innerWidth,
|
|
x =
|
|
(n = (r = window.visualViewport) == null ? void 0 : r.height) != null
|
|
? n
|
|
: innerHeight,
|
|
{ scrollX: E, scrollY: g } = window,
|
|
{
|
|
height: v,
|
|
width: S,
|
|
top: w,
|
|
right: k,
|
|
bottom: _,
|
|
left: C,
|
|
} = e.getBoundingClientRect(),
|
|
{
|
|
top: T,
|
|
right: O,
|
|
bottom: P,
|
|
left: D,
|
|
} = ((V) => {
|
|
let Q = window.getComputedStyle(V);
|
|
return {
|
|
top: parseFloat(Q.scrollMarginTop) || 0,
|
|
right: parseFloat(Q.scrollMarginRight) || 0,
|
|
bottom: parseFloat(Q.scrollMarginBottom) || 0,
|
|
left: parseFloat(Q.scrollMarginLeft) || 0,
|
|
};
|
|
})(e),
|
|
M =
|
|
u === "start" || u === "nearest"
|
|
? w - T
|
|
: u === "end"
|
|
? _ + P
|
|
: w + v / 2 - T + P,
|
|
F = c === "center" ? C + S / 2 - D + O : c === "end" ? k + O : C - D,
|
|
Z = [];
|
|
for (let V = 0; V < y.length; V++) {
|
|
let Q = y[V],
|
|
{
|
|
height: z,
|
|
width: q,
|
|
top: W,
|
|
right: re,
|
|
bottom: R,
|
|
left: B,
|
|
} = Q.getBoundingClientRect();
|
|
if (
|
|
l === "if-needed" &&
|
|
w >= 0 &&
|
|
C >= 0 &&
|
|
_ <= x &&
|
|
k <= b &&
|
|
((Q === h && !en(Q)) || (w >= W && _ <= R && C >= B && k <= re))
|
|
)
|
|
return Z;
|
|
let L = getComputedStyle(Q),
|
|
$ = parseInt(L.borderLeftWidth, 10),
|
|
J = parseInt(L.borderTopWidth, 10),
|
|
ie = parseInt(L.borderRightWidth, 10),
|
|
te = parseInt(L.borderBottomWidth, 10),
|
|
de = 0,
|
|
ae = 0,
|
|
ce = "offsetWidth" in Q ? Q.offsetWidth - Q.clientWidth - $ - ie : 0,
|
|
ue =
|
|
"offs\
|
|
etHeight" in Q
|
|
? Q.offsetHeight - Q.clientHeight - J - te
|
|
: 0,
|
|
Ie =
|
|
"offsetWidth" in Q
|
|
? Q.offsetWidth === 0
|
|
? 0
|
|
: q / Q.offsetWidth
|
|
: 0,
|
|
ye =
|
|
"\
|
|
offsetHeight" in Q
|
|
? Q.offsetHeight === 0
|
|
? 0
|
|
: z / Q.offsetHeight
|
|
: 0;
|
|
if (h === Q)
|
|
((de =
|
|
u === "start"
|
|
? M
|
|
: u === "end"
|
|
? M - x
|
|
: u === "nearest"
|
|
? tn(g, g + x, x, J, te, g + M, g + M + v, v)
|
|
: M - x / 2),
|
|
(ae =
|
|
c === "start"
|
|
? F
|
|
: c === "center"
|
|
? F - b / 2
|
|
: c === "end"
|
|
? F - b
|
|
: tn(E, E + b, b, $, ie, E + F, E + F + S, S)),
|
|
(de = Math.max(0, de + g)),
|
|
(ae = Math.max(0, ae + E)));
|
|
else {
|
|
((de =
|
|
u === "start"
|
|
? M - W - J
|
|
: u === "end"
|
|
? M - R + te + ue
|
|
: u === "nearest"
|
|
? tn(W, R, z, J, te + ue, M, M + v, v)
|
|
: M - (W + z / 2) + ue / 2),
|
|
(ae =
|
|
c === "start"
|
|
? F - B - $
|
|
: c === "center"
|
|
? F - (B + q / 2) + ce / 2
|
|
: c === "end"
|
|
? F - re + ie + ce
|
|
: tn(B, re, q, $, ie + ce, F, F + S, S)));
|
|
let { scrollLeft: Oe, scrollTop: fe } = Q;
|
|
((de =
|
|
ye === 0
|
|
? 0
|
|
: Math.max(
|
|
0,
|
|
Math.min(fe + de / ye, Q.scrollHeight - z / ye + ue),
|
|
)),
|
|
(ae =
|
|
Ie === 0
|
|
? 0
|
|
: Math.max(
|
|
0,
|
|
Math.min(Oe + ae / Ie, Q.scrollWidth - q / Ie + ce),
|
|
)),
|
|
(M += fe - de),
|
|
(F += Oe - ae));
|
|
}
|
|
Z.push({ el: Q, top: de, left: ae });
|
|
}
|
|
return Z;
|
|
}, "r");
|
|
|
|
// ../node_modules/tslib/tslib.es6.mjs
|
|
var $t = /* @__PURE__ */ a(function () {
|
|
return (
|
|
($t =
|
|
Object.assign ||
|
|
/* @__PURE__ */ a(function (t) {
|
|
for (var o, i = 1, r = arguments.length; i < r; i++) {
|
|
o = arguments[i];
|
|
for (var n in o)
|
|
Object.prototype.hasOwnProperty.call(o, n) && (t[n] = o[n]);
|
|
}
|
|
return t;
|
|
}, "__assign")),
|
|
$t.apply(this, arguments)
|
|
);
|
|
}, "__assign");
|
|
|
|
// ../node_modules/downshift/dist/downshift.esm.js
|
|
var Fx = 0;
|
|
function Pp(e) {
|
|
return typeof e == "function" ? e : Re;
|
|
}
|
|
a(Pp, "cbToCb");
|
|
function Re() {}
|
|
a(Re, "noop");
|
|
function Rp(e, t) {
|
|
if (e) {
|
|
var o = Op(e, {
|
|
boundary: t,
|
|
block: "nearest",
|
|
scrollMode: "if-needed",
|
|
});
|
|
o.forEach(function (i) {
|
|
var r = i.el,
|
|
n = i.top,
|
|
l = i.left;
|
|
((r.scrollTop = n), (r.scrollLeft = l));
|
|
});
|
|
}
|
|
}
|
|
a(Rp, "scrollIntoView");
|
|
function Ap(e, t, o) {
|
|
var i = e === t || (t instanceof o.Node && e.contains && e.contains(t));
|
|
return i;
|
|
}
|
|
a(Ap, "isOrContainsNode");
|
|
function hn(e, t) {
|
|
var o;
|
|
function i() {
|
|
o && clearTimeout(o);
|
|
}
|
|
a(i, "cancel");
|
|
function r() {
|
|
for (var n = arguments.length, l = new Array(n), u = 0; u < n; u++)
|
|
l[u] = arguments[u];
|
|
(i(),
|
|
(o = setTimeout(function () {
|
|
((o = null), e.apply(void 0, l));
|
|
}, t)));
|
|
}
|
|
return (a(r, "wrapper"), (r.cancel = i), r);
|
|
}
|
|
a(hn, "debounce");
|
|
function le() {
|
|
for (var e = arguments.length, t = new Array(e), o = 0; o < e; o++)
|
|
t[o] = arguments[o];
|
|
return function (i) {
|
|
for (
|
|
var r = arguments.length, n = new Array(r > 1 ? r - 1 : 0), l = 1;
|
|
l < r;
|
|
l++
|
|
)
|
|
n[l - 1] = arguments[l];
|
|
return t.some(function (u) {
|
|
return (
|
|
u && u.apply(void 0, [i].concat(n)),
|
|
i.preventDownshiftDefault ||
|
|
(i.hasOwnProperty("nativeEvent") &&
|
|
i.nativeEvent.preventDownshiftDefault)
|
|
);
|
|
});
|
|
};
|
|
}
|
|
a(le, "callAllEventHandlers");
|
|
function Ze() {
|
|
for (var e = arguments.length, t = new Array(e), o = 0; o < e; o++)
|
|
t[o] = arguments[o];
|
|
return function (i) {
|
|
t.forEach(function (r) {
|
|
typeof r == "function" ? r(i) : r && (r.current = i);
|
|
});
|
|
};
|
|
}
|
|
a(Ze, "handleRefs");
|
|
function Bp() {
|
|
return String(Fx++);
|
|
}
|
|
a(Bp, "generateId");
|
|
function Rx(e) {
|
|
var t = e.isOpen,
|
|
o = e.resultCount,
|
|
i = e.previousResultCount;
|
|
return t
|
|
? o
|
|
? o !== i
|
|
? o +
|
|
" result" +
|
|
(o === 1 ? " is" : "s are") +
|
|
" available, use up and down arrow keys to navigate. Press Enter ke\
|
|
y to select."
|
|
: ""
|
|
: "No results are available."
|
|
: "";
|
|
}
|
|
a(Rx, "getA11yStatusMessage");
|
|
function Dp(e, t) {
|
|
return (
|
|
(e = Array.isArray(e) ? /* istanbul ignore next (preact) */ e[0] : e),
|
|
!e && t ? t : e
|
|
);
|
|
}
|
|
a(Dp, "unwrapArray");
|
|
function Bx(e) {
|
|
return typeof e.type == "string";
|
|
}
|
|
a(Bx, "isDOMElement");
|
|
function Hx(e) {
|
|
return e.props;
|
|
}
|
|
a(Hx, "getElementProps");
|
|
var zx = ["highlightedIndex", "inputValue", "isOpen", "selectedItem", "type"];
|
|
function on(e) {
|
|
e === void 0 && (e = {});
|
|
var t = {};
|
|
return (
|
|
zx.forEach(function (o) {
|
|
e.hasOwnProperty(o) && (t[o] = e[o]);
|
|
}),
|
|
t
|
|
);
|
|
}
|
|
a(on, "pickState");
|
|
function Vo(e, t) {
|
|
return !e || !t
|
|
? e
|
|
: Object.keys(e).reduce(function (o, i) {
|
|
return ((o[i] = ln(t, i) ? t[i] : e[i]), o);
|
|
}, {});
|
|
}
|
|
a(Vo, "getState");
|
|
function ln(e, t) {
|
|
return e[t] !== void 0;
|
|
}
|
|
a(ln, "isControlledProp");
|
|
function po(e) {
|
|
var t = e.key,
|
|
o = e.keyCode;
|
|
return o >= 37 && o <= 40 && t.indexOf("Arrow") !== 0 ? "Arrow" + t : t;
|
|
}
|
|
a(po, "normalizeArrowKey");
|
|
function Je(e, t, o, i, r) {
|
|
r === void 0 && (r = !1);
|
|
var n = o.length;
|
|
if (n === 0) return -1;
|
|
var l = n - 1;
|
|
(typeof e != "number" || e < 0 || e > l) && (e = t > 0 ? -1 : l + 1);
|
|
var u = e + t;
|
|
u < 0 ? (u = r ? l : 0) : u > l && (u = r ? 0 : l);
|
|
var c = Tt(u, t < 0, o, i, r);
|
|
return c === -1 ? (e >= n ? -1 : e) : c;
|
|
}
|
|
a(Je, "getHighlightedIndex");
|
|
function Tt(e, t, o, i, r) {
|
|
r === void 0 && (r = !1);
|
|
var n = o.length;
|
|
if (t) {
|
|
for (var l = e; l >= 0; l--) if (!i(o[l], l)) return l;
|
|
} else for (var u = e; u < n; u++) if (!i(o[u], u)) return u;
|
|
return r ? Tt(t ? n - 1 : 0, t, o, i) : -1;
|
|
}
|
|
a(Tt, "getNonDisabledIndex");
|
|
function un(e, t, o, i) {
|
|
return (
|
|
i === void 0 && (i = !0),
|
|
o &&
|
|
t.some(function (r) {
|
|
return r && (Ap(r, e, o) || (i && Ap(r, o.document.activeElement, o)));
|
|
})
|
|
);
|
|
}
|
|
a(un, "targetWithinDownshift");
|
|
var Wx = hn(function (e) {
|
|
Hp(e).textContent = "";
|
|
}, 500);
|
|
function Hp(e) {
|
|
var t = e.getElementById("a11y-status-message");
|
|
return (
|
|
t ||
|
|
((t = e.createElement("div")),
|
|
t.setAttribute("id", "a11y-status-message"),
|
|
t.setAttribute("role", "status"),
|
|
t.setAttribute(
|
|
"ar\
|
|
ia-live",
|
|
"polite",
|
|
),
|
|
t.setAttribute("aria-relevant", "additions text"),
|
|
Object.assign(t.style, {
|
|
border: "0",
|
|
clip: "rect(0 0 0 0)",
|
|
height: "1px",
|
|
margin: "-1px",
|
|
overflow: "hidden",
|
|
padding: "0",
|
|
position: "absolute",
|
|
width: "1px",
|
|
}),
|
|
e.body.appendChild(t),
|
|
t)
|
|
);
|
|
}
|
|
a(Hp, "getStatusDiv");
|
|
function zp(e, t) {
|
|
if (!(!e || !t)) {
|
|
var o = Hp(t);
|
|
((o.textContent = e), Wx(t));
|
|
}
|
|
}
|
|
a(zp, "setStatus");
|
|
function Vx(e) {
|
|
var t = e?.getElementById("a11y-status-message");
|
|
t && t.remove();
|
|
}
|
|
a(Vx, "cleanupStatusDiv");
|
|
var Wp = 0,
|
|
Vp = 1,
|
|
jp = 2,
|
|
rn = 3,
|
|
nn = 4,
|
|
Kp = 5,
|
|
$p = 6,
|
|
Up = 7,
|
|
Gp = 8,
|
|
qp = 9,
|
|
Yp = 10,
|
|
Qp = 11,
|
|
Xp = 12,
|
|
Zp = 13,
|
|
Jp = 14,
|
|
ed = 15,
|
|
td = 16,
|
|
jx = /* @__PURE__ */ Object.freeze({
|
|
__proto__: null,
|
|
blurButton: Jp,
|
|
blurInput: Yp,
|
|
changeInput: Qp,
|
|
clickButton: Zp,
|
|
clickItem: qp,
|
|
controlledPropUpdatedSelectedItem: ed,
|
|
itemMouseEnter: jp,
|
|
keyDownArrowDown: nn,
|
|
keyDownArrowUp: rn,
|
|
keyDownEnd: Gp,
|
|
keyDownEnter: $p,
|
|
keyDownEscape: Kp,
|
|
keyDownHome: Up,
|
|
keyDownSpaceButton: Xp,
|
|
mouseUp: Vp,
|
|
touchEnd: td,
|
|
unknown: Wp,
|
|
}),
|
|
Kx = ["refKey", "ref"],
|
|
$x = ["onClick", "onPress", "onKeyDown", "onKeyUp", "onBlur"],
|
|
Ux = ["onKeyDown", "onBlur", "onChange", "onInput", "onChangeText"],
|
|
Gx = ["refKey", "ref"],
|
|
qx = ["onMouseMove", "onMouseDown", "onClick", "onPress", "index", "item"],
|
|
qt = /* @__PURE__ */ (function () {
|
|
var e = /* @__PURE__ */ (function (t) {
|
|
function o(r) {
|
|
var n;
|
|
((n = t.call(this, r) || this),
|
|
(n.id = n.props.id || "downshift-" + Bp()),
|
|
(n.menuId = n.props.menuId || n.id + "-menu"),
|
|
(n.labelId = n.props.labelId || n.id + "-label"),
|
|
(n.inputId = n.props.inputId || n.id + "-input"),
|
|
(n.getItemId =
|
|
n.props.getItemId ||
|
|
function (g) {
|
|
return n.id + "-item-" + g;
|
|
}),
|
|
(n.items = []),
|
|
(n.itemCount = null),
|
|
(n.previousResultCount = 0),
|
|
(n.timeoutIds = []),
|
|
(n.internalSetTimeout = function (g, v) {
|
|
var S = setTimeout(function () {
|
|
((n.timeoutIds = n.timeoutIds.filter(function (w) {
|
|
return w !== S;
|
|
})),
|
|
g());
|
|
}, v);
|
|
n.timeoutIds.push(S);
|
|
}),
|
|
(n.setItemCount = function (g) {
|
|
n.itemCount = g;
|
|
}),
|
|
(n.unsetItemCount = function () {
|
|
n.itemCount = null;
|
|
}),
|
|
(n.isItemDisabled = function (g, v) {
|
|
var S = n.getItemNodeFromIndex(v);
|
|
return S && S.hasAttribute("disabled");
|
|
}),
|
|
(n.setHighlightedIndex = function (g, v) {
|
|
(g === void 0 && (g = n.props.defaultHighlightedIndex),
|
|
v === void 0 && (v = {}),
|
|
(v = on(v)),
|
|
n.internalSetState(
|
|
j(
|
|
{
|
|
highlightedIndex: g,
|
|
},
|
|
v,
|
|
),
|
|
));
|
|
}),
|
|
(n.clearSelection = function (g) {
|
|
n.internalSetState(
|
|
{
|
|
selectedItem: null,
|
|
inputValue: "",
|
|
highlightedIndex: n.props.defaultHighlightedIndex,
|
|
isOpen: n.props.defaultIsOpen,
|
|
},
|
|
g,
|
|
);
|
|
}),
|
|
(n.selectItem = function (g, v, S) {
|
|
((v = on(v)),
|
|
n.internalSetState(
|
|
j(
|
|
{
|
|
isOpen: n.props.defaultIsOpen,
|
|
highlightedIndex: n.props.defaultHighlightedIndex,
|
|
selectedItem: g,
|
|
inputValue: n.props.itemToString(g),
|
|
},
|
|
v,
|
|
),
|
|
S,
|
|
));
|
|
}),
|
|
(n.selectItemAtIndex = function (g, v, S) {
|
|
var w = n.items[g];
|
|
w != null && n.selectItem(w, v, S);
|
|
}),
|
|
(n.selectHighlightedItem = function (g, v) {
|
|
return n.selectItemAtIndex(n.getState().highlightedIndex, g, v);
|
|
}),
|
|
(n.internalSetState = function (g, v) {
|
|
var S,
|
|
w,
|
|
k = {},
|
|
_ = typeof g == "function";
|
|
return (
|
|
!_ &&
|
|
g.hasOwnProperty("inputValue") &&
|
|
n.props.onInputValueChange(
|
|
g.inputValue,
|
|
j({}, n.getStateAndHelpers(), g),
|
|
),
|
|
n.setState(
|
|
function (C) {
|
|
var T;
|
|
C = n.getState(C);
|
|
var O = _ ? g(C) : g;
|
|
((O = n.props.stateReducer(C, O)),
|
|
(S = O.hasOwnProperty("selectedItem")));
|
|
var P = {};
|
|
return (
|
|
S &&
|
|
O.selectedItem !== C.selectedItem &&
|
|
(w = O.selectedItem),
|
|
(T = O).type || (T.type = Wp),
|
|
Object.keys(O).forEach(function (D) {
|
|
(C[D] !== O[D] && (k[D] = O[D]),
|
|
D !== "type" &&
|
|
(O[D], ln(n.props, D) || (P[D] = O[D])));
|
|
}),
|
|
_ &&
|
|
O.hasOwnProperty("inputValue") &&
|
|
n.props.onInputValueChange(
|
|
O.inputValue,
|
|
j({}, n.getStateAndHelpers(), O),
|
|
),
|
|
P
|
|
);
|
|
},
|
|
function () {
|
|
Pp(v)();
|
|
var C = Object.keys(k).length > 1;
|
|
(C && n.props.onStateChange(k, n.getStateAndHelpers()),
|
|
S &&
|
|
n.props.onSelect(g.selectedItem, n.getStateAndHelpers()),
|
|
w !== void 0 && n.props.onChange(w, n.getStateAndHelpers()),
|
|
n.props.onUserAction(k, n.getStateAndHelpers()));
|
|
},
|
|
)
|
|
);
|
|
}),
|
|
(n.rootRef = function (g) {
|
|
return (n._rootNode = g);
|
|
}),
|
|
(n.getRootProps = function (g, v) {
|
|
var S,
|
|
w = g === void 0 ? {} : g,
|
|
k = w.refKey,
|
|
_ = k === void 0 ? "ref" : k,
|
|
C = w.ref,
|
|
T = ke(w, Kx),
|
|
O = v === void 0 ? {} : v,
|
|
P = O.suppressRefError,
|
|
D = P === void 0 ? !1 : P;
|
|
((n.getRootProps.called = !0),
|
|
(n.getRootProps.refKey = _),
|
|
(n.getRootProps.suppressRefError = D));
|
|
var M = n.getState(),
|
|
F = M.isOpen;
|
|
return j(
|
|
((S = {}),
|
|
(S[_] = Ze(C, n.rootRef)),
|
|
(S.role = "combobox"),
|
|
(S["aria-expanded"] = F),
|
|
(S["aria-haspopup"] = "listbox"),
|
|
(S["aria-owns"] = F ? n.menuId : void 0),
|
|
(S["aria-labelledby"] = n.labelId),
|
|
S),
|
|
T,
|
|
);
|
|
}),
|
|
(n.keyDownHandlers = {
|
|
ArrowDown: /* @__PURE__ */ a(function (v) {
|
|
var S = this;
|
|
if ((v.preventDefault(), this.getState().isOpen)) {
|
|
var w = v.shiftKey ? 5 : 1;
|
|
this.moveHighlightedIndex(w, {
|
|
type: nn,
|
|
});
|
|
} else
|
|
this.internalSetState(
|
|
{
|
|
isOpen: !0,
|
|
type: nn,
|
|
},
|
|
function () {
|
|
var k = S.getItemCount();
|
|
if (k > 0) {
|
|
var _ = S.getState(),
|
|
C = _.highlightedIndex,
|
|
T = Je(
|
|
C,
|
|
1,
|
|
{
|
|
length: k,
|
|
},
|
|
S.isItemDisabled,
|
|
!0,
|
|
);
|
|
S.setHighlightedIndex(T, {
|
|
type: nn,
|
|
});
|
|
}
|
|
},
|
|
);
|
|
}, "ArrowDown"),
|
|
ArrowUp: /* @__PURE__ */ a(function (v) {
|
|
var S = this;
|
|
if ((v.preventDefault(), this.getState().isOpen)) {
|
|
var w = v.shiftKey ? -5 : -1;
|
|
this.moveHighlightedIndex(w, {
|
|
type: rn,
|
|
});
|
|
} else
|
|
this.internalSetState(
|
|
{
|
|
isOpen: !0,
|
|
type: rn,
|
|
},
|
|
function () {
|
|
var k = S.getItemCount();
|
|
if (k > 0) {
|
|
var _ = S.getState(),
|
|
C = _.highlightedIndex,
|
|
T = Je(
|
|
C,
|
|
-1,
|
|
{
|
|
length: k,
|
|
},
|
|
S.isItemDisabled,
|
|
!0,
|
|
);
|
|
S.setHighlightedIndex(T, {
|
|
type: rn,
|
|
});
|
|
}
|
|
},
|
|
);
|
|
}, "ArrowUp"),
|
|
Enter: /* @__PURE__ */ a(function (v) {
|
|
if (v.which !== 229) {
|
|
var S = this.getState(),
|
|
w = S.isOpen,
|
|
k = S.highlightedIndex;
|
|
if (w && k != null) {
|
|
v.preventDefault();
|
|
var _ = this.items[k],
|
|
C = this.getItemNodeFromIndex(k);
|
|
if (_ == null || (C && C.hasAttribute("disabled"))) return;
|
|
this.selectHighlightedItem({
|
|
type: $p,
|
|
});
|
|
}
|
|
}
|
|
}, "Enter"),
|
|
Escape: /* @__PURE__ */ a(function (v) {
|
|
(v.preventDefault(),
|
|
this.reset(
|
|
j(
|
|
{
|
|
type: Kp,
|
|
},
|
|
!this.state.isOpen && {
|
|
selectedItem: null,
|
|
inputValue: "",
|
|
},
|
|
),
|
|
));
|
|
}, "Escape"),
|
|
}),
|
|
(n.buttonKeyDownHandlers = j({}, n.keyDownHandlers, {
|
|
" ": /* @__PURE__ */ a(function (v) {
|
|
(v.preventDefault(),
|
|
this.toggleMenu({
|
|
type: Xp,
|
|
}));
|
|
}, "_"),
|
|
})),
|
|
(n.inputKeyDownHandlers = j({}, n.keyDownHandlers, {
|
|
Home: /* @__PURE__ */ a(function (v) {
|
|
var S = this.getState(),
|
|
w = S.isOpen;
|
|
if (w) {
|
|
v.preventDefault();
|
|
var k = this.getItemCount();
|
|
if (!(k <= 0 || !w)) {
|
|
var _ = Tt(
|
|
0,
|
|
!1,
|
|
{
|
|
length: k,
|
|
},
|
|
this.isItemDisabled,
|
|
);
|
|
this.setHighlightedIndex(_, {
|
|
type: Up,
|
|
});
|
|
}
|
|
}
|
|
}, "Home"),
|
|
End: /* @__PURE__ */ a(function (v) {
|
|
var S = this.getState(),
|
|
w = S.isOpen;
|
|
if (w) {
|
|
v.preventDefault();
|
|
var k = this.getItemCount();
|
|
if (!(k <= 0 || !w)) {
|
|
var _ = Tt(
|
|
k - 1,
|
|
!0,
|
|
{
|
|
length: k,
|
|
},
|
|
this.isItemDisabled,
|
|
);
|
|
this.setHighlightedIndex(_, {
|
|
type: Gp,
|
|
});
|
|
}
|
|
}
|
|
}, "End"),
|
|
})),
|
|
(n.getToggleButtonProps = function (g) {
|
|
var v = g === void 0 ? {} : g,
|
|
S = v.onClick;
|
|
v.onPress;
|
|
var w = v.onKeyDown,
|
|
k = v.onKeyUp,
|
|
_ = v.onBlur,
|
|
C = ke(v, $x),
|
|
T = n.getState(),
|
|
O = T.isOpen,
|
|
P = {
|
|
onClick: le(S, n.buttonHandleClick),
|
|
onKeyDown: le(w, n.buttonHandleKeyDown),
|
|
onKeyUp: le(k, n.buttonHandleKeyUp),
|
|
onBlur: le(_, n.buttonHandleBlur),
|
|
},
|
|
D = C.disabled ? {} : P;
|
|
return j(
|
|
{
|
|
type: "button",
|
|
role: "button",
|
|
"aria-label": O ? "close menu" : "open menu",
|
|
"aria-haspopup": !0,
|
|
"data-toggle": !0,
|
|
},
|
|
D,
|
|
C,
|
|
);
|
|
}),
|
|
(n.buttonHandleKeyUp = function (g) {
|
|
g.preventDefault();
|
|
}),
|
|
(n.buttonHandleKeyDown = function (g) {
|
|
var v = po(g);
|
|
n.buttonKeyDownHandlers[v] && n.buttonKeyDownHandlers[v].call(n, g);
|
|
}),
|
|
(n.buttonHandleClick = function (g) {
|
|
if ((g.preventDefault(), n.props.environment)) {
|
|
var v = n.props.environment.document,
|
|
S = v.body,
|
|
w = v.activeElement;
|
|
S && S === w && g.target.focus();
|
|
}
|
|
n.internalSetTimeout(function () {
|
|
return n.toggleMenu({
|
|
type: Zp,
|
|
});
|
|
});
|
|
}),
|
|
(n.buttonHandleBlur = function (g) {
|
|
var v = g.target;
|
|
n.internalSetTimeout(function () {
|
|
if (!(n.isMouseDown || !n.props.environment)) {
|
|
var S = n.props.environment.document.activeElement;
|
|
(S == null || S.id !== n.inputId) &&
|
|
S !== v &&
|
|
n.reset({
|
|
type: Jp,
|
|
});
|
|
}
|
|
});
|
|
}),
|
|
(n.getLabelProps = function (g) {
|
|
return j(
|
|
{
|
|
htmlFor: n.inputId,
|
|
id: n.labelId,
|
|
},
|
|
g,
|
|
);
|
|
}),
|
|
(n.getInputProps = function (g) {
|
|
var v = g === void 0 ? {} : g,
|
|
S = v.onKeyDown,
|
|
w = v.onBlur,
|
|
k = v.onChange,
|
|
_ = v.onInput;
|
|
v.onChangeText;
|
|
var C = ke(v, Ux),
|
|
T,
|
|
O = {};
|
|
T = "onChange";
|
|
var P = n.getState(),
|
|
D = P.inputValue,
|
|
M = P.isOpen,
|
|
F = P.highlightedIndex;
|
|
if (!C.disabled) {
|
|
var Z;
|
|
O =
|
|
((Z = {}),
|
|
(Z[T] = le(k, _, n.inputHandleChange)),
|
|
(Z.onKeyDown = le(S, n.inputHandleKeyDown)),
|
|
(Z.onBlur = le(w, n.inputHandleBlur)),
|
|
Z);
|
|
}
|
|
return j(
|
|
{
|
|
"aria-autocomplete": "list",
|
|
"aria-activedescendant":
|
|
M && typeof F == "number" && F >= 0 ? n.getItemId(F) : void 0,
|
|
"aria-controls": M ? n.menuId : void 0,
|
|
"aria-labelledby": C && C["aria-label"] ? void 0 : n.labelId,
|
|
// https://developer.mozilla.org/en-US/docs/Web/Security/Securing_your_site/Turning_off_form_autocompletion
|
|
// revert back since autocomplete="nope" is ignored on latest Chrome and Opera
|
|
autoComplete: "off",
|
|
value: D,
|
|
id: n.inputId,
|
|
},
|
|
O,
|
|
C,
|
|
);
|
|
}),
|
|
(n.inputHandleKeyDown = function (g) {
|
|
var v = po(g);
|
|
v &&
|
|
n.inputKeyDownHandlers[v] &&
|
|
n.inputKeyDownHandlers[v].call(n, g);
|
|
}),
|
|
(n.inputHandleChange = function (g) {
|
|
n.internalSetState({
|
|
type: Qp,
|
|
isOpen: !0,
|
|
inputValue: g.target.value,
|
|
highlightedIndex: n.props.defaultHighlightedIndex,
|
|
});
|
|
}),
|
|
(n.inputHandleBlur = function () {
|
|
n.internalSetTimeout(function () {
|
|
var g;
|
|
if (!(n.isMouseDown || !n.props.environment)) {
|
|
var v = n.props.environment.document.activeElement,
|
|
S =
|
|
(v == null || (g = v.dataset) == null
|
|
? void 0
|
|
: g.toggle) &&
|
|
n._rootNode &&
|
|
n._rootNode.contains(v);
|
|
S ||
|
|
n.reset({
|
|
type: Yp,
|
|
});
|
|
}
|
|
});
|
|
}),
|
|
(n.menuRef = function (g) {
|
|
n._menuNode = g;
|
|
}),
|
|
(n.getMenuProps = function (g, v) {
|
|
var S,
|
|
w = g === void 0 ? {} : g,
|
|
k = w.refKey,
|
|
_ = k === void 0 ? "ref" : k,
|
|
C = w.ref,
|
|
T = ke(w, Gx),
|
|
O = v === void 0 ? {} : v,
|
|
P = O.suppressRefError,
|
|
D = P === void 0 ? !1 : P;
|
|
return (
|
|
(n.getMenuProps.called = !0),
|
|
(n.getMenuProps.refKey = _),
|
|
(n.getMenuProps.suppressRefError = D),
|
|
j(
|
|
((S = {}),
|
|
(S[_] = Ze(C, n.menuRef)),
|
|
(S.role = "listbox"),
|
|
(S["aria-labelledby"] =
|
|
T && T["aria-label"] ? void 0 : n.labelId),
|
|
(S.id = n.menuId),
|
|
S),
|
|
T,
|
|
)
|
|
);
|
|
}),
|
|
(n.getItemProps = function (g) {
|
|
var v,
|
|
S = g === void 0 ? {} : g,
|
|
w = S.onMouseMove,
|
|
k = S.onMouseDown,
|
|
_ = S.onClick;
|
|
S.onPress;
|
|
var C = S.index,
|
|
T = S.item,
|
|
O = T === void 0 ? /* istanbul ignore next */ void 0 : T,
|
|
P = ke(S, qx);
|
|
C === void 0
|
|
? (n.items.push(O), (C = n.items.indexOf(O)))
|
|
: (n.items[C] = O);
|
|
var D = "onClick",
|
|
M = _,
|
|
F =
|
|
((v = {
|
|
// onMouseMove is used over onMouseEnter here. onMouseMove
|
|
// is only triggered on actual mouse movement while onMouseEnter
|
|
// can fire on DOM changes, interrupting keyboard navigation
|
|
onMouseMove: le(w, function () {
|
|
C !== n.getState().highlightedIndex &&
|
|
(n.setHighlightedIndex(C, {
|
|
type: jp,
|
|
}),
|
|
(n.avoidScrolling = !0),
|
|
n.internalSetTimeout(function () {
|
|
return (n.avoidScrolling = !1);
|
|
}, 250));
|
|
}),
|
|
onMouseDown: le(k, function (V) {
|
|
V.preventDefault();
|
|
}),
|
|
}),
|
|
(v[D] = le(M, function () {
|
|
n.selectItemAtIndex(C, {
|
|
type: qp,
|
|
});
|
|
})),
|
|
v),
|
|
Z = P.disabled
|
|
? {
|
|
onMouseDown: F.onMouseDown,
|
|
}
|
|
: F;
|
|
return j(
|
|
{
|
|
id: n.getItemId(C),
|
|
role: "option",
|
|
"aria-selected": n.getState().highlightedIndex === C,
|
|
},
|
|
Z,
|
|
P,
|
|
);
|
|
}),
|
|
(n.clearItems = function () {
|
|
n.items = [];
|
|
}),
|
|
(n.reset = function (g, v) {
|
|
(g === void 0 && (g = {}),
|
|
(g = on(g)),
|
|
n.internalSetState(function (S) {
|
|
var w = S.selectedItem;
|
|
return j(
|
|
{
|
|
isOpen: n.props.defaultIsOpen,
|
|
highlightedIndex: n.props.defaultHighlightedIndex,
|
|
inputValue: n.props.itemToString(w),
|
|
},
|
|
g,
|
|
);
|
|
}, v));
|
|
}),
|
|
(n.toggleMenu = function (g, v) {
|
|
(g === void 0 && (g = {}),
|
|
(g = on(g)),
|
|
n.internalSetState(
|
|
function (S) {
|
|
var w = S.isOpen;
|
|
return j(
|
|
{
|
|
isOpen: !w,
|
|
},
|
|
w && {
|
|
highlightedIndex: n.props.defaultHighlightedIndex,
|
|
},
|
|
g,
|
|
);
|
|
},
|
|
function () {
|
|
var S = n.getState(),
|
|
w = S.isOpen,
|
|
k = S.highlightedIndex;
|
|
(w &&
|
|
n.getItemCount() > 0 &&
|
|
typeof k == "number" &&
|
|
n.setHighlightedIndex(k, g),
|
|
Pp(v)());
|
|
},
|
|
));
|
|
}),
|
|
(n.openMenu = function (g) {
|
|
n.internalSetState(
|
|
{
|
|
isOpen: !0,
|
|
},
|
|
g,
|
|
);
|
|
}),
|
|
(n.closeMenu = function (g) {
|
|
n.internalSetState(
|
|
{
|
|
isOpen: !1,
|
|
},
|
|
g,
|
|
);
|
|
}),
|
|
(n.updateStatus = hn(function () {
|
|
var g;
|
|
if (
|
|
(g = n.props) != null &&
|
|
(g = g.environment) != null &&
|
|
g.document
|
|
) {
|
|
var v = n.getState(),
|
|
S = n.items[v.highlightedIndex],
|
|
w = n.getItemCount(),
|
|
k = n.props.getA11yStatusMessage(
|
|
j(
|
|
{
|
|
itemToString: n.props.itemToString,
|
|
previousResultCount: n.previousResultCount,
|
|
resultCount: w,
|
|
highlightedItem: S,
|
|
},
|
|
v,
|
|
),
|
|
);
|
|
((n.previousResultCount = w),
|
|
zp(k, n.props.environment.document));
|
|
}
|
|
}, 200)));
|
|
var l = n.props,
|
|
u = l.defaultHighlightedIndex,
|
|
c = l.initialHighlightedIndex,
|
|
d = c === void 0 ? u : c,
|
|
p = l.defaultIsOpen,
|
|
f = l.initialIsOpen,
|
|
h = f === void 0 ? p : f,
|
|
y = l.initialInputValue,
|
|
m = y === void 0 ? "" : y,
|
|
b = l.initialSelectedItem,
|
|
x = b === void 0 ? null : b,
|
|
E = n.getState({
|
|
highlightedIndex: d,
|
|
isOpen: h,
|
|
inputValue: m,
|
|
selectedItem: x,
|
|
});
|
|
return (
|
|
E.selectedItem != null &&
|
|
n.props.initialInputValue === void 0 &&
|
|
(E.inputValue = n.props.itemToString(E.selectedItem)),
|
|
(n.state = E),
|
|
n
|
|
);
|
|
}
|
|
(a(o, "Downshift"), no(o, t));
|
|
var i = o.prototype;
|
|
return (
|
|
(i.internalClearTimeouts = /* @__PURE__ */ a(function () {
|
|
(this.timeoutIds.forEach(function (n) {
|
|
clearTimeout(n);
|
|
}),
|
|
(this.timeoutIds = []));
|
|
}, "internalClearTimeouts")),
|
|
(i.getState = /* @__PURE__ */ a(function (n) {
|
|
return (n === void 0 && (n = this.state), Vo(n, this.props));
|
|
}, "getState$1")),
|
|
(i.getItemCount = /* @__PURE__ */ a(function () {
|
|
var n = this.items.length;
|
|
return (
|
|
this.itemCount != null
|
|
? (n = this.itemCount)
|
|
: this.props.itemCount !== void 0 && (n = this.props.itemCount),
|
|
n
|
|
);
|
|
}, "getItemCount")),
|
|
(i.getItemNodeFromIndex = /* @__PURE__ */ a(function (n) {
|
|
return this.props.environment
|
|
? this.props.environment.document.getElementById(this.getItemId(n))
|
|
: null;
|
|
}, "getItemNodeFromIndex")),
|
|
(i.scrollHighlightedItemIntoView = /* @__PURE__ */ a(function () {
|
|
{
|
|
var n = this.getItemNodeFromIndex(this.getState().highlightedIndex);
|
|
this.props.scrollIntoView(n, this._menuNode);
|
|
}
|
|
}, "scrollHighlightedItemIntoView")),
|
|
(i.moveHighlightedIndex = /* @__PURE__ */ a(function (n, l) {
|
|
var u = this.getItemCount(),
|
|
c = this.getState(),
|
|
d = c.highlightedIndex;
|
|
if (u > 0) {
|
|
var p = Je(
|
|
d,
|
|
n,
|
|
{
|
|
length: u,
|
|
},
|
|
this.isItemDisabled,
|
|
!0,
|
|
);
|
|
this.setHighlightedIndex(p, l);
|
|
}
|
|
}, "moveHighlightedIndex")),
|
|
(i.getStateAndHelpers = /* @__PURE__ */ a(function () {
|
|
var n = this.getState(),
|
|
l = n.highlightedIndex,
|
|
u = n.inputValue,
|
|
c = n.selectedItem,
|
|
d = n.isOpen,
|
|
p = this.props.itemToString,
|
|
f = this.id,
|
|
h = this.getRootProps,
|
|
y = this.getToggleButtonProps,
|
|
m = this.getLabelProps,
|
|
b = this.getMenuProps,
|
|
x = this.getInputProps,
|
|
E = this.getItemProps,
|
|
g = this.openMenu,
|
|
v = this.closeMenu,
|
|
S = this.toggleMenu,
|
|
w = this.selectItem,
|
|
k = this.selectItemAtIndex,
|
|
_ = this.selectHighlightedItem,
|
|
C = this.setHighlightedIndex,
|
|
T = this.clearSelection,
|
|
O = this.clearItems,
|
|
P = this.reset,
|
|
D = this.setItemCount,
|
|
M = this.unsetItemCount,
|
|
F = this.internalSetState;
|
|
return {
|
|
// prop getters
|
|
getRootProps: h,
|
|
getToggleButtonProps: y,
|
|
getLabelProps: m,
|
|
getMenuProps: b,
|
|
getInputProps: x,
|
|
getItemProps: E,
|
|
// actions
|
|
reset: P,
|
|
openMenu: g,
|
|
closeMenu: v,
|
|
toggleMenu: S,
|
|
selectItem: w,
|
|
selectItemAtIndex: k,
|
|
selectHighlightedItem: _,
|
|
setHighlightedIndex: C,
|
|
clearSelection: T,
|
|
clearItems: O,
|
|
setItemCount: D,
|
|
unsetItemCount: M,
|
|
setState: F,
|
|
// props
|
|
itemToString: p,
|
|
// derived
|
|
id: f,
|
|
// state
|
|
highlightedIndex: l,
|
|
inputValue: u,
|
|
isOpen: d,
|
|
selectedItem: c,
|
|
};
|
|
}, "getStateAndHelpers")),
|
|
(i.componentDidMount = /* @__PURE__ */ a(function () {
|
|
var n = this;
|
|
if (!this.props.environment)
|
|
this.cleanup = function () {
|
|
n.internalClearTimeouts();
|
|
};
|
|
else {
|
|
var l = /* @__PURE__ */ a(function () {
|
|
n.isMouseDown = !0;
|
|
}, "onMouseDown"),
|
|
u = /* @__PURE__ */ a(function (y) {
|
|
n.isMouseDown = !1;
|
|
var m = un(
|
|
y.target,
|
|
[n._rootNode, n._menuNode],
|
|
n.props.environment,
|
|
);
|
|
!m &&
|
|
n.getState().isOpen &&
|
|
n.reset(
|
|
{
|
|
type: Vp,
|
|
},
|
|
function () {
|
|
return n.props.onOuterClick(n.getStateAndHelpers());
|
|
},
|
|
);
|
|
}, "onMouseUp"),
|
|
c = /* @__PURE__ */ a(function () {
|
|
n.isTouchMove = !1;
|
|
}, "onTouchStart"),
|
|
d = /* @__PURE__ */ a(function () {
|
|
n.isTouchMove = !0;
|
|
}, "onTouchMove"),
|
|
p = /* @__PURE__ */ a(function (y) {
|
|
var m = un(
|
|
y.target,
|
|
[n._rootNode, n._menuNode],
|
|
n.props.environment,
|
|
!1,
|
|
);
|
|
!n.isTouchMove &&
|
|
!m &&
|
|
n.getState().isOpen &&
|
|
n.reset(
|
|
{
|
|
type: td,
|
|
},
|
|
function () {
|
|
return n.props.onOuterClick(n.getStateAndHelpers());
|
|
},
|
|
);
|
|
}, "onTouchEnd"),
|
|
f = this.props.environment;
|
|
(f.addEventListener("mousedown", l),
|
|
f.addEventListener("mouseup", u),
|
|
f.addEventListener("touchstart", c),
|
|
f.addEventListener(
|
|
"touch\
|
|
move",
|
|
d,
|
|
),
|
|
f.addEventListener("touchend", p),
|
|
(this.cleanup = function () {
|
|
(n.internalClearTimeouts(),
|
|
n.updateStatus.cancel(),
|
|
f.removeEventListener("mousedown", l),
|
|
f.removeEventListener("mouseup", u),
|
|
f.removeEventListener("touchstart", c),
|
|
f.removeEventListener("touchmove", d),
|
|
f.removeEventListener("touchend", p));
|
|
}));
|
|
}
|
|
}, "componentDidMount")),
|
|
(i.shouldScroll = /* @__PURE__ */ a(function (n, l) {
|
|
var u =
|
|
this.props.highlightedIndex === void 0
|
|
? this.getState()
|
|
: this.props,
|
|
c = u.highlightedIndex,
|
|
d = l.highlightedIndex === void 0 ? n : l,
|
|
p = d.highlightedIndex,
|
|
f = c && this.getState().isOpen && !n.isOpen,
|
|
h = c !== p;
|
|
return f || h;
|
|
}, "shouldScroll")),
|
|
(i.componentDidUpdate = /* @__PURE__ */ a(function (n, l) {
|
|
(ln(this.props, "selectedItem") &&
|
|
this.props.selectedItemChanged(
|
|
n.selectedItem,
|
|
this.props.selectedItem,
|
|
) &&
|
|
this.internalSetState({
|
|
type: ed,
|
|
inputValue: this.props.itemToString(this.props.selectedItem),
|
|
}),
|
|
!this.avoidScrolling &&
|
|
this.shouldScroll(l, n) &&
|
|
this.scrollHighlightedItemIntoView(),
|
|
this.updateStatus());
|
|
}, "componentDidUpdate")),
|
|
(i.componentWillUnmount = /* @__PURE__ */ a(function () {
|
|
this.cleanup();
|
|
}, "componentWillUnmount")),
|
|
(i.render = /* @__PURE__ */ a(function () {
|
|
var n = Dp(this.props.children, Re);
|
|
(this.clearItems(),
|
|
(this.getRootProps.called = !1),
|
|
(this.getRootProps.refKey = void 0),
|
|
(this.getRootProps.suppressRefError = void 0),
|
|
(this.getMenuProps.called = !1),
|
|
(this.getMenuProps.refKey = void 0),
|
|
(this.getMenuProps.suppressRefError = void 0),
|
|
(this.getLabelProps.called = !1),
|
|
(this.getInputProps.called = !1));
|
|
var l = Dp(n(this.getStateAndHelpers()));
|
|
if (!l) return null;
|
|
if (this.getRootProps.called || this.props.suppressRefError) return l;
|
|
if (Bx(l)) return /* @__PURE__ */ ta(l, this.getRootProps(Hx(l)));
|
|
}, "render")),
|
|
o
|
|
);
|
|
})(Le);
|
|
return (
|
|
(e.defaultProps = {
|
|
defaultHighlightedIndex: null,
|
|
defaultIsOpen: !1,
|
|
getA11yStatusMessage: Rx,
|
|
itemToString: /* @__PURE__ */ a(function (o) {
|
|
return o == null ? "" : String(o);
|
|
}, "itemToString"),
|
|
onStateChange: Re,
|
|
onInputValueChange: Re,
|
|
onUserAction: Re,
|
|
onChange: Re,
|
|
onSelect: Re,
|
|
onOuterClick: Re,
|
|
selectedItemChanged: /* @__PURE__ */ a(function (o, i) {
|
|
return o !== i;
|
|
}, "selectedItemChanged"),
|
|
environment:
|
|
/* istanbul ignore next (ssr) */
|
|
typeof window > "u" ? void 0 : window,
|
|
stateReducer: /* @__PURE__ */ a(function (o, i) {
|
|
return i;
|
|
}, "stateReducer"),
|
|
suppressRefError: !1,
|
|
scrollIntoView: Rp,
|
|
}),
|
|
(e.stateChangeTypes = jx),
|
|
e
|
|
);
|
|
})();
|
|
var od = {
|
|
highlightedIndex: -1,
|
|
isOpen: !1,
|
|
selectedItem: null,
|
|
inputValue: "",
|
|
};
|
|
function Yx(e, t, o) {
|
|
var i = e.props,
|
|
r = e.type,
|
|
n = {};
|
|
(Object.keys(t).forEach(function (l) {
|
|
(Qx(l, e, t, o), o[l] !== t[l] && (n[l] = o[l]));
|
|
}),
|
|
i.onStateChange &&
|
|
Object.keys(n).length &&
|
|
i.onStateChange(
|
|
j(
|
|
{
|
|
type: r,
|
|
},
|
|
n,
|
|
),
|
|
));
|
|
}
|
|
a(Yx, "callOnChangeProps");
|
|
function Qx(e, t, o, i) {
|
|
var r = t.props,
|
|
n = t.type,
|
|
l = "on" + os(e) + "Change";
|
|
r[l] &&
|
|
i[e] !== void 0 &&
|
|
i[e] !== o[e] &&
|
|
r[l](
|
|
j(
|
|
{
|
|
type: n,
|
|
},
|
|
i,
|
|
),
|
|
);
|
|
}
|
|
a(Qx, "invokeOnChangeHandler");
|
|
function Xx(e, t) {
|
|
return t.changes;
|
|
}
|
|
a(Xx, "stateReducer");
|
|
var Mp = hn(function (e, t) {
|
|
zp(e, t);
|
|
}, 200),
|
|
Zx =
|
|
typeof window < "u" &&
|
|
typeof window.document < "u" &&
|
|
typeof window.document.createElement < "u"
|
|
? Xt
|
|
: H,
|
|
rd =
|
|
"useId" in s
|
|
? /* @__PURE__ */ a(function (t) {
|
|
var o = t.id,
|
|
i = t.labelId,
|
|
r = t.menuId,
|
|
n = t.getItemId,
|
|
l = t.toggleButtonId,
|
|
u = t.inputId,
|
|
c = "downshift-" + s.useId();
|
|
o || (o = c);
|
|
var d = U({
|
|
labelId: i || o + "-label",
|
|
menuId: r || o + "-menu",
|
|
getItemId:
|
|
n ||
|
|
function (p) {
|
|
return o + "-item-" + p;
|
|
},
|
|
toggleButtonId: l || o + "-toggle-button",
|
|
inputId: u || o + "-input",
|
|
});
|
|
return d.current;
|
|
}, "useElementIds")
|
|
: /* @__PURE__ */ a(function (t) {
|
|
var o = t.id,
|
|
i = o === void 0 ? "downshift-" + Bp() : o,
|
|
r = t.labelId,
|
|
n = t.menuId,
|
|
l = t.getItemId,
|
|
u = t.toggleButtonId,
|
|
c = t.inputId,
|
|
d = U({
|
|
labelId: r || i + "-label",
|
|
menuId: n || i + "-menu",
|
|
getItemId:
|
|
l ||
|
|
function (p) {
|
|
return i + "-item-" + p;
|
|
},
|
|
toggleButtonId: u || i + "-toggle-button",
|
|
inputId: c || i + "-input",
|
|
});
|
|
return d.current;
|
|
}, "useElementIds");
|
|
function ts(e, t, o, i) {
|
|
var r, n;
|
|
if (e === void 0) {
|
|
if (t === void 0) throw new Error(i);
|
|
((r = o[t]), (n = t));
|
|
} else ((n = t === void 0 ? o.indexOf(e) : t), (r = e));
|
|
return [r, n];
|
|
}
|
|
a(ts, "getItemAndIndex");
|
|
function Jx(e) {
|
|
return /^\S{1}$/.test(e);
|
|
}
|
|
a(Jx, "isAcceptedCharacterKey");
|
|
function os(e) {
|
|
return "" + e.slice(0, 1).toUpperCase() + e.slice(1);
|
|
}
|
|
a(os, "capitalizeString");
|
|
function gn(e) {
|
|
var t = U(e);
|
|
return ((t.current = e), t);
|
|
}
|
|
a(gn, "useLatestRef");
|
|
function nd(e, t, o, i) {
|
|
var r = U(),
|
|
n = U(),
|
|
l = A(
|
|
function (y, m) {
|
|
((n.current = m), (y = Vo(y, m.props)));
|
|
var b = e(y, m),
|
|
x = m.props.stateReducer(
|
|
y,
|
|
j({}, m, {
|
|
changes: b,
|
|
}),
|
|
);
|
|
return x;
|
|
},
|
|
[e],
|
|
),
|
|
u = Zt(l, t, o),
|
|
c = u[0],
|
|
d = u[1],
|
|
p = gn(t),
|
|
f = A(
|
|
function (y) {
|
|
return d(
|
|
j(
|
|
{
|
|
props: p.current,
|
|
},
|
|
y,
|
|
),
|
|
);
|
|
},
|
|
[p],
|
|
),
|
|
h = n.current;
|
|
return (
|
|
H(
|
|
function () {
|
|
var y = Vo(r.current, h?.props),
|
|
m = h && r.current && !i(y, c);
|
|
(m && Yx(h, y, c), (r.current = c));
|
|
},
|
|
[c, h, i],
|
|
),
|
|
[c, f]
|
|
);
|
|
}
|
|
a(nd, "useEnhancedReducer");
|
|
function id(e, t, o, i) {
|
|
var r = nd(e, t, o, i),
|
|
n = r[0],
|
|
l = r[1];
|
|
return [Vo(n, t), l];
|
|
}
|
|
a(id, "useControlledReducer$1");
|
|
var Wo = {
|
|
itemToString: /* @__PURE__ */ a(function (t) {
|
|
return t ? String(t) : "";
|
|
}, "itemToString"),
|
|
itemToKey: /* @__PURE__ */ a(function (t) {
|
|
return t;
|
|
}, "itemToKey"),
|
|
stateReducer: Xx,
|
|
scrollIntoView: Rp,
|
|
environment:
|
|
/* istanbul ignore next (ssr) */
|
|
typeof window > "u" ? void 0 : window,
|
|
};
|
|
function ut(e, t, o) {
|
|
o === void 0 && (o = od);
|
|
var i = e["default" + os(t)];
|
|
return i !== void 0 ? i : o[t];
|
|
}
|
|
a(ut, "getDefaultValue$1");
|
|
function Ut(e, t, o) {
|
|
o === void 0 && (o = od);
|
|
var i = e[t];
|
|
if (i !== void 0) return i;
|
|
var r = e["initial" + os(t)];
|
|
return r !== void 0 ? r : ut(e, t, o);
|
|
}
|
|
a(Ut, "getInitialValue$1");
|
|
function sd(e) {
|
|
var t = Ut(e, "selectedItem"),
|
|
o = Ut(e, "isOpen"),
|
|
i = eI(e),
|
|
r = Ut(e, "inputValue");
|
|
return {
|
|
highlightedIndex:
|
|
i < 0 && t && o
|
|
? e.items.findIndex(function (n) {
|
|
return e.itemToKey(n) === e.itemToKey(t);
|
|
})
|
|
: i,
|
|
isOpen: o,
|
|
selectedItem: t,
|
|
inputValue: r,
|
|
};
|
|
}
|
|
a(sd, "getInitialState$2");
|
|
function Gt(e, t, o) {
|
|
var i = e.items,
|
|
r = e.initialHighlightedIndex,
|
|
n = e.defaultHighlightedIndex,
|
|
l = e.isItemDisabled,
|
|
u = e.itemToKey,
|
|
c = t.selectedItem,
|
|
d = t.highlightedIndex;
|
|
return i.length === 0
|
|
? -1
|
|
: r !== void 0 && d === r && !l(i[r], r)
|
|
? r
|
|
: n !== void 0 && !l(i[n], n)
|
|
? n
|
|
: c
|
|
? i.findIndex(function (p) {
|
|
return u(c) === u(p);
|
|
})
|
|
: o < 0 && !l(i[i.length - 1], i.length - 1)
|
|
? i.length - 1
|
|
: o > 0 && !l(i[0], 0)
|
|
? 0
|
|
: -1;
|
|
}
|
|
a(Gt, "getHighlightedIndexOnOpen");
|
|
function ad(e, t, o) {
|
|
var i = U({
|
|
isMouseDown: !1,
|
|
isTouchMove: !1,
|
|
isTouchEnd: !1,
|
|
});
|
|
return (
|
|
H(
|
|
function () {
|
|
if (!e) return Re;
|
|
var r = o.map(function (p) {
|
|
return p.current;
|
|
});
|
|
function n() {
|
|
((i.current.isTouchEnd = !1), (i.current.isMouseDown = !0));
|
|
}
|
|
a(n, "onMouseDown");
|
|
function l(p) {
|
|
((i.current.isMouseDown = !1), un(p.target, r, e) || t());
|
|
}
|
|
a(l, "onMouseUp");
|
|
function u() {
|
|
((i.current.isTouchEnd = !1), (i.current.isTouchMove = !1));
|
|
}
|
|
a(u, "onTouchStart");
|
|
function c() {
|
|
i.current.isTouchMove = !0;
|
|
}
|
|
a(c, "onTouchMove");
|
|
function d(p) {
|
|
((i.current.isTouchEnd = !0),
|
|
!i.current.isTouchMove && !un(p.target, r, e, !1) && t());
|
|
}
|
|
return (
|
|
a(d, "onTouchEnd"),
|
|
e.addEventListener("mousedown", n),
|
|
e.addEventListener("mouseup", l),
|
|
e.addEventListener("touchstart", u),
|
|
e.addEventListener("touchmove", c),
|
|
e.addEventListener("touchend", d),
|
|
/* @__PURE__ */ a(function () {
|
|
(e.removeEventListener("mousedown", n),
|
|
e.removeEventListener("mouseup", l),
|
|
e.removeEventListener("touchstart", u),
|
|
e.removeEventListener("touchmove", c),
|
|
e.removeEventListener("touchend", d));
|
|
}, "cleanup")
|
|
);
|
|
},
|
|
[o, e, t],
|
|
),
|
|
i.current
|
|
);
|
|
}
|
|
a(ad, "useMouseAndTouchTracker");
|
|
var rs = /* @__PURE__ */ a(function () {
|
|
return Re;
|
|
}, "useGetterPropsCalledChecker");
|
|
function ns(e, t, o, i) {
|
|
i === void 0 && (i = {});
|
|
var r = i.document,
|
|
n = yn();
|
|
(H(function () {
|
|
if (!(!e || n || !r)) {
|
|
var l = e(t);
|
|
Mp(l, r);
|
|
}
|
|
}, o),
|
|
H(
|
|
function () {
|
|
return function () {
|
|
(Mp.cancel(), Vx(r));
|
|
};
|
|
},
|
|
[r],
|
|
));
|
|
}
|
|
a(ns, "useA11yMessageStatus");
|
|
function ld(e) {
|
|
var t = e.highlightedIndex,
|
|
o = e.isOpen,
|
|
i = e.itemRefs,
|
|
r = e.getItemNodeFromIndex,
|
|
n = e.menuElement,
|
|
l = e.scrollIntoView,
|
|
u = U(!0);
|
|
return (
|
|
Zx(
|
|
function () {
|
|
t < 0 ||
|
|
!o ||
|
|
!Object.keys(i.current).length ||
|
|
(u.current === !1 ? (u.current = !0) : l(r(t), n));
|
|
},
|
|
[t],
|
|
),
|
|
u
|
|
);
|
|
}
|
|
a(ld, "useScrollIntoView");
|
|
var is = Re;
|
|
function cn(e, t, o) {
|
|
var i;
|
|
o === void 0 && (o = !0);
|
|
var r = ((i = e.items) == null ? void 0 : i.length) && t >= 0;
|
|
return j(
|
|
{
|
|
isOpen: !1,
|
|
highlightedIndex: -1,
|
|
},
|
|
r &&
|
|
j(
|
|
{
|
|
selectedItem: e.items[t],
|
|
isOpen: ut(e, "isOpen"),
|
|
highlightedIndex: ut(e, "highlightedIndex"),
|
|
},
|
|
o && {
|
|
inputValue: e.itemToString(e.items[t]),
|
|
},
|
|
),
|
|
);
|
|
}
|
|
a(cn, "getChangesOnSelection");
|
|
function ud(e, t) {
|
|
return (
|
|
e.isOpen === t.isOpen &&
|
|
e.inputValue === t.inputValue &&
|
|
e.highlightedIndex === t.highlightedIndex &&
|
|
e.selectedItem === t.selectedItem
|
|
);
|
|
}
|
|
a(ud, "isDropdownsStateEqual");
|
|
function yn() {
|
|
var e = s.useRef(!0);
|
|
return (
|
|
s.useEffect(function () {
|
|
return (
|
|
(e.current = !1),
|
|
function () {
|
|
e.current = !0;
|
|
}
|
|
);
|
|
}, []),
|
|
e.current
|
|
);
|
|
}
|
|
a(yn, "useIsInitialMount");
|
|
function pn(e) {
|
|
var t = ut(e, "highlightedIndex");
|
|
return t > -1 && e.isItemDisabled(e.items[t], t) ? -1 : t;
|
|
}
|
|
a(pn, "getDefaultHighlightedIndex");
|
|
function eI(e) {
|
|
var t = Ut(e, "highlightedIndex");
|
|
return t > -1 && e.isItemDisabled(e.items[t], t) ? -1 : t;
|
|
}
|
|
a(eI, "getInitialHighlightedIndex");
|
|
var sn = {
|
|
environment: Y.default.shape({
|
|
addEventListener: Y.default.func.isRequired,
|
|
removeEventListener: Y.default.func.isRequired,
|
|
document: Y.default.shape({
|
|
createElement: Y.default.func.isRequired,
|
|
getElementById: Y.default.func.isRequired,
|
|
activeElement: Y.default.any.isRequired,
|
|
body: Y.default.any.isRequired,
|
|
}).isRequired,
|
|
Node: Y.default.func.isRequired,
|
|
}),
|
|
itemToString: Y.default.func,
|
|
itemToKey: Y.default.func,
|
|
stateReducer: Y.default.func,
|
|
},
|
|
cd = j({}, sn, {
|
|
getA11yStatusMessage: Y.default.func,
|
|
highlightedIndex: Y.default.number,
|
|
defaultHighlightedIndex: Y.default.number,
|
|
initialHighlightedIndex: Y.default.number,
|
|
isOpen: Y.default.bool,
|
|
defaultIsOpen: Y.default.bool,
|
|
initialIsOpen: Y.default.bool,
|
|
selectedItem: Y.default.any,
|
|
initialSelectedItem: Y.default.any,
|
|
defaultSelectedItem: Y.default.any,
|
|
id: Y.default.string,
|
|
labelId: Y.default.string,
|
|
menuId: Y.default.string,
|
|
getItemId: Y.default.func,
|
|
toggleButtonId: Y.default.string,
|
|
onSelectedItemChange: Y.default.func,
|
|
onHighlightedIndexChange: Y.default.func,
|
|
onStateChange: Y.default.func,
|
|
onIsOpenChange: Y.default.func,
|
|
scrollIntoView: Y.default.func,
|
|
});
|
|
function pd(e, t, o) {
|
|
var i = t.type,
|
|
r = t.props,
|
|
n;
|
|
switch (i) {
|
|
case o.ItemMouseMove:
|
|
n = {
|
|
highlightedIndex: t.disabled ? -1 : t.index,
|
|
};
|
|
break;
|
|
case o.MenuMouseLeave:
|
|
n = {
|
|
highlightedIndex: -1,
|
|
};
|
|
break;
|
|
case o.ToggleButtonClick:
|
|
case o.FunctionToggleMenu:
|
|
n = {
|
|
isOpen: !e.isOpen,
|
|
highlightedIndex: e.isOpen ? -1 : Gt(r, e, 0),
|
|
};
|
|
break;
|
|
case o.FunctionOpenMenu:
|
|
n = {
|
|
isOpen: !0,
|
|
highlightedIndex: Gt(r, e, 0),
|
|
};
|
|
break;
|
|
case o.FunctionCloseMenu:
|
|
n = {
|
|
isOpen: !1,
|
|
};
|
|
break;
|
|
case o.FunctionSetHighlightedIndex:
|
|
n = {
|
|
highlightedIndex: r.isItemDisabled(
|
|
r.items[t.highlightedIndex],
|
|
t.highlightedIndex,
|
|
)
|
|
? -1
|
|
: t.highlightedIndex,
|
|
};
|
|
break;
|
|
case o.FunctionSetInputValue:
|
|
n = {
|
|
inputValue: t.inputValue,
|
|
};
|
|
break;
|
|
case o.FunctionReset:
|
|
n = {
|
|
highlightedIndex: pn(r),
|
|
isOpen: ut(r, "isOpen"),
|
|
selectedItem: ut(r, "selectedItem"),
|
|
inputValue: ut(r, "inputValue"),
|
|
};
|
|
break;
|
|
default:
|
|
throw new Error("Reducer called without proper action type.");
|
|
}
|
|
return j({}, e, n);
|
|
}
|
|
a(pd, "downshiftCommonReducer");
|
|
function tI(e) {
|
|
for (
|
|
var t = e.keysSoFar,
|
|
o = e.highlightedIndex,
|
|
i = e.items,
|
|
r = e.itemToString,
|
|
n = e.isItemDisabled,
|
|
l = t.toLowerCase(),
|
|
u = 0;
|
|
u < i.length;
|
|
u++
|
|
) {
|
|
var c = (u + o + (t.length < 2 ? 1 : 0)) % i.length,
|
|
d = i[c];
|
|
if (d !== void 0 && r(d).toLowerCase().startsWith(l) && !n(d, c)) return c;
|
|
}
|
|
return o;
|
|
}
|
|
a(tI, "getItemIndexByCharacterKey");
|
|
var VR = $t($t({}, cd), {
|
|
items: Y.default.array.isRequired,
|
|
isItemDisabled: Y.default.func,
|
|
}),
|
|
oI = $t($t({}, Wo), {
|
|
isItemDisabled: /* @__PURE__ */ a(function () {
|
|
return !1;
|
|
}, "isItemDisabled"),
|
|
}),
|
|
rI = Re,
|
|
an = 0,
|
|
ss = 1,
|
|
as = 2,
|
|
dn = 3,
|
|
ls = 4,
|
|
us = 5,
|
|
cs = 6,
|
|
ps = 7,
|
|
ds = 8,
|
|
fs = 9,
|
|
ms = 10,
|
|
fn = 11,
|
|
dd = 12,
|
|
fd = 13,
|
|
hs = 14,
|
|
md = 15,
|
|
hd = 16,
|
|
gd = 17,
|
|
yd = 18,
|
|
gs = 19,
|
|
es = 20,
|
|
bd = 21,
|
|
vd = /* @__PURE__ */ Object.freeze({
|
|
__proto__: null,
|
|
FunctionCloseMenu: gd,
|
|
FunctionOpenMenu: hd,
|
|
FunctionReset: bd,
|
|
FunctionSelectItem: gs,
|
|
FunctionSetHighlightedIndex: yd,
|
|
FunctionSetInputValue: es,
|
|
FunctionToggleMenu: md,
|
|
ItemClick: hs,
|
|
ItemMouseMove: fd,
|
|
MenuMouseLeave: dd,
|
|
ToggleButtonBlur: fn,
|
|
ToggleButtonClick: an,
|
|
ToggleButtonKeyDownArrowDown: ss,
|
|
ToggleButtonKeyDownArrowUp: as,
|
|
ToggleButtonKeyDownCharacter: dn,
|
|
ToggleButtonKeyDownEnd: cs,
|
|
ToggleButtonKeyDownEnter: ps,
|
|
ToggleButtonKeyDownEscape: ls,
|
|
ToggleButtonKeyDownHome: us,
|
|
ToggleButtonKeyDownPageDown: ms,
|
|
ToggleButtonKeyDownPageUp: fs,
|
|
ToggleButtonKeyDownSpaceButton: ds,
|
|
});
|
|
function nI(e, t) {
|
|
var o,
|
|
i = t.type,
|
|
r = t.props,
|
|
n = t.altKey,
|
|
l;
|
|
switch (i) {
|
|
case hs:
|
|
l = {
|
|
isOpen: ut(r, "isOpen"),
|
|
highlightedIndex: pn(r),
|
|
selectedItem: r.items[t.index],
|
|
};
|
|
break;
|
|
case dn:
|
|
{
|
|
var u = t.key,
|
|
c = "" + e.inputValue + u,
|
|
d =
|
|
!e.isOpen && e.selectedItem
|
|
? r.items.findIndex(function (y) {
|
|
return r.itemToKey(y) === r.itemToKey(e.selectedItem);
|
|
})
|
|
: e.highlightedIndex,
|
|
p = tI({
|
|
keysSoFar: c,
|
|
highlightedIndex: d,
|
|
items: r.items,
|
|
itemToString: r.itemToString,
|
|
isItemDisabled: r.isItemDisabled,
|
|
});
|
|
l = {
|
|
inputValue: c,
|
|
highlightedIndex: p,
|
|
isOpen: !0,
|
|
};
|
|
}
|
|
break;
|
|
case ss:
|
|
{
|
|
var f = e.isOpen
|
|
? Je(e.highlightedIndex, 1, r.items, r.isItemDisabled)
|
|
: n && e.selectedItem == null
|
|
? -1
|
|
: Gt(r, e, 1);
|
|
l = {
|
|
highlightedIndex: f,
|
|
isOpen: !0,
|
|
};
|
|
}
|
|
break;
|
|
case as:
|
|
if (e.isOpen && n) l = cn(r, e.highlightedIndex, !1);
|
|
else {
|
|
var h = e.isOpen
|
|
? Je(e.highlightedIndex, -1, r.items, r.isItemDisabled)
|
|
: Gt(r, e, -1);
|
|
l = {
|
|
highlightedIndex: h,
|
|
isOpen: !0,
|
|
};
|
|
}
|
|
break;
|
|
// only triggered when menu is open.
|
|
case ps:
|
|
case ds:
|
|
l = cn(r, e.highlightedIndex, !1);
|
|
break;
|
|
case us:
|
|
l = {
|
|
highlightedIndex: Tt(0, !1, r.items, r.isItemDisabled),
|
|
isOpen: !0,
|
|
};
|
|
break;
|
|
case cs:
|
|
l = {
|
|
highlightedIndex: Tt(r.items.length - 1, !0, r.items, r.isItemDisabled),
|
|
isOpen: !0,
|
|
};
|
|
break;
|
|
case fs:
|
|
l = {
|
|
highlightedIndex: Je(
|
|
e.highlightedIndex,
|
|
-10,
|
|
r.items,
|
|
r.isItemDisabled,
|
|
),
|
|
};
|
|
break;
|
|
case ms:
|
|
l = {
|
|
highlightedIndex: Je(e.highlightedIndex, 10, r.items, r.isItemDisabled),
|
|
};
|
|
break;
|
|
case ls:
|
|
l = {
|
|
isOpen: !1,
|
|
highlightedIndex: -1,
|
|
};
|
|
break;
|
|
case fn:
|
|
l = j(
|
|
{
|
|
isOpen: !1,
|
|
highlightedIndex: -1,
|
|
},
|
|
e.highlightedIndex >= 0 &&
|
|
((o = r.items) == null ? void 0 : o.length) && {
|
|
selectedItem: r.items[e.highlightedIndex],
|
|
},
|
|
);
|
|
break;
|
|
case gs:
|
|
l = {
|
|
selectedItem: t.selectedItem,
|
|
};
|
|
break;
|
|
default:
|
|
return pd(e, t, vd);
|
|
}
|
|
return j({}, e, l);
|
|
}
|
|
a(nI, "downshiftSelectReducer");
|
|
var iI = ["onClick"],
|
|
sI = ["onMouseLeave", "refKey", "ref"],
|
|
aI = ["onBlur", "onClick", "onPress", "onKeyDown", "refKey", "ref"],
|
|
lI = [
|
|
"it\
|
|
em",
|
|
"index",
|
|
"onMouseMove",
|
|
"onClick",
|
|
"onMouseDown",
|
|
"onPress",
|
|
"refKey",
|
|
"disabled",
|
|
"ref",
|
|
];
|
|
xd.stateChangeTypes = vd;
|
|
function xd(e) {
|
|
(e === void 0 && (e = {}), rI(e, xd));
|
|
var t = j({}, oI, e),
|
|
o = t.scrollIntoView,
|
|
i = t.environment,
|
|
r = t.getA11yStatusMessage,
|
|
n = id(nI, t, sd, ud),
|
|
l = n[0],
|
|
u = n[1],
|
|
c = l.isOpen,
|
|
d = l.highlightedIndex,
|
|
p = l.selectedItem,
|
|
f = l.inputValue,
|
|
h = U(null),
|
|
y = U(null),
|
|
m = U({}),
|
|
b = U(null),
|
|
x = rd(t),
|
|
E = gn({
|
|
state: l,
|
|
props: t,
|
|
}),
|
|
g = A(
|
|
function (z) {
|
|
return m.current[x.getItemId(z)];
|
|
},
|
|
[x],
|
|
);
|
|
ns(r, l, [c, d, p, f], i);
|
|
var v = ld({
|
|
menuElement: y.current,
|
|
highlightedIndex: d,
|
|
isOpen: c,
|
|
itemRefs: m,
|
|
scrollIntoView: o,
|
|
getItemNodeFromIndex: g,
|
|
});
|
|
(H(function () {
|
|
return (
|
|
(b.current = hn(function (z) {
|
|
z({
|
|
type: es,
|
|
inputValue: "",
|
|
});
|
|
}, 500)),
|
|
function () {
|
|
b.current.cancel();
|
|
}
|
|
);
|
|
}, []),
|
|
H(
|
|
function () {
|
|
f && b.current(u);
|
|
},
|
|
[u, f],
|
|
),
|
|
is({
|
|
props: t,
|
|
state: l,
|
|
}),
|
|
H(function () {
|
|
var z = Ut(t, "isOpen");
|
|
z && h.current && h.current.focus();
|
|
}, []));
|
|
var S = ad(
|
|
i,
|
|
A(
|
|
/* @__PURE__ */ a(function () {
|
|
E.current.state.isOpen &&
|
|
u({
|
|
type: fn,
|
|
});
|
|
}, "handleBlur"),
|
|
[u, E],
|
|
),
|
|
G(
|
|
function () {
|
|
return [y, h];
|
|
},
|
|
[y.current, h.current],
|
|
),
|
|
),
|
|
w = rs("getMenuProps", "getToggleButtonProps");
|
|
H(
|
|
function () {
|
|
c || (m.current = {});
|
|
},
|
|
[c],
|
|
);
|
|
var k = G(
|
|
function () {
|
|
return {
|
|
ArrowDown: /* @__PURE__ */ a(function (q) {
|
|
(q.preventDefault(),
|
|
u({
|
|
type: ss,
|
|
altKey: q.altKey,
|
|
}));
|
|
}, "ArrowDown"),
|
|
ArrowUp: /* @__PURE__ */ a(function (q) {
|
|
(q.preventDefault(),
|
|
u({
|
|
type: as,
|
|
altKey: q.altKey,
|
|
}));
|
|
}, "ArrowUp"),
|
|
Home: /* @__PURE__ */ a(function (q) {
|
|
(q.preventDefault(),
|
|
u({
|
|
type: us,
|
|
}));
|
|
}, "Home"),
|
|
End: /* @__PURE__ */ a(function (q) {
|
|
(q.preventDefault(),
|
|
u({
|
|
type: cs,
|
|
}));
|
|
}, "End"),
|
|
Escape: /* @__PURE__ */ a(function () {
|
|
E.current.state.isOpen &&
|
|
u({
|
|
type: ls,
|
|
});
|
|
}, "Escape"),
|
|
Enter: /* @__PURE__ */ a(function (q) {
|
|
(q.preventDefault(),
|
|
u({
|
|
type: E.current.state.isOpen ? ps : an,
|
|
}));
|
|
}, "Enter"),
|
|
PageUp: /* @__PURE__ */ a(function (q) {
|
|
E.current.state.isOpen &&
|
|
(q.preventDefault(),
|
|
u({
|
|
type: fs,
|
|
}));
|
|
}, "PageUp"),
|
|
PageDown: /* @__PURE__ */ a(function (q) {
|
|
E.current.state.isOpen &&
|
|
(q.preventDefault(),
|
|
u({
|
|
type: ms,
|
|
}));
|
|
}, "PageDown"),
|
|
" ": /* @__PURE__ */ a(function (q) {
|
|
q.preventDefault();
|
|
var W = E.current.state;
|
|
if (!W.isOpen) {
|
|
u({
|
|
type: an,
|
|
});
|
|
return;
|
|
}
|
|
W.inputValue
|
|
? u({
|
|
type: dn,
|
|
key: " ",
|
|
})
|
|
: u({
|
|
type: ds,
|
|
});
|
|
}, "_"),
|
|
};
|
|
},
|
|
[u, E],
|
|
),
|
|
_ = A(
|
|
function () {
|
|
u({
|
|
type: md,
|
|
});
|
|
},
|
|
[u],
|
|
),
|
|
C = A(
|
|
function () {
|
|
u({
|
|
type: gd,
|
|
});
|
|
},
|
|
[u],
|
|
),
|
|
T = A(
|
|
function () {
|
|
u({
|
|
type: hd,
|
|
});
|
|
},
|
|
[u],
|
|
),
|
|
O = A(
|
|
function (z) {
|
|
u({
|
|
type: yd,
|
|
highlightedIndex: z,
|
|
});
|
|
},
|
|
[u],
|
|
),
|
|
P = A(
|
|
function (z) {
|
|
u({
|
|
type: gs,
|
|
selectedItem: z,
|
|
});
|
|
},
|
|
[u],
|
|
),
|
|
D = A(
|
|
function () {
|
|
u({
|
|
type: bd,
|
|
});
|
|
},
|
|
[u],
|
|
),
|
|
M = A(
|
|
function (z) {
|
|
u({
|
|
type: es,
|
|
inputValue: z,
|
|
});
|
|
},
|
|
[u],
|
|
),
|
|
F = A(
|
|
function (z) {
|
|
var q = z === void 0 ? {} : z,
|
|
W = q.onClick,
|
|
re = ke(q, iI),
|
|
R = /* @__PURE__ */ a(function () {
|
|
var L;
|
|
(L = h.current) == null || L.focus();
|
|
}, "labelHandleClick");
|
|
return j(
|
|
{
|
|
id: x.labelId,
|
|
htmlFor: x.toggleButtonId,
|
|
onClick: le(W, R),
|
|
},
|
|
re,
|
|
);
|
|
},
|
|
[x],
|
|
),
|
|
Z = A(
|
|
function (z, q) {
|
|
var W,
|
|
re = z === void 0 ? {} : z,
|
|
R = re.onMouseLeave,
|
|
B = re.refKey,
|
|
L = B === void 0 ? "ref" : B,
|
|
$ = re.ref,
|
|
J = ke(re, sI),
|
|
ie = q === void 0 ? {} : q,
|
|
te = ie.suppressRefError,
|
|
de = te === void 0 ? !1 : te,
|
|
ae = /* @__PURE__ */ a(function () {
|
|
u({
|
|
type: dd,
|
|
});
|
|
}, "menuHandleMouseLeave");
|
|
return (
|
|
w("getMenuProps", de, L, y),
|
|
j(
|
|
((W = {}),
|
|
(W[L] = Ze($, function (ce) {
|
|
y.current = ce;
|
|
})),
|
|
(W.id = x.menuId),
|
|
(W.role = "listbox"),
|
|
(W["aria-labelledby"] =
|
|
J && J["aria-label"] ? void 0 : "" + x.labelId),
|
|
(W.onMouseLeave = le(R, ae)),
|
|
W),
|
|
J,
|
|
)
|
|
);
|
|
},
|
|
[u, w, x],
|
|
),
|
|
V = A(
|
|
function (z, q) {
|
|
var W,
|
|
re = z === void 0 ? {} : z,
|
|
R = re.onBlur,
|
|
B = re.onClick;
|
|
re.onPress;
|
|
var L = re.onKeyDown,
|
|
$ = re.refKey,
|
|
J = $ === void 0 ? "ref" : $,
|
|
ie = re.ref,
|
|
te = ke(re, aI),
|
|
de = q === void 0 ? {} : q,
|
|
ae = de.suppressRefError,
|
|
ce = ae === void 0 ? !1 : ae,
|
|
ue = E.current.state,
|
|
Ie = /* @__PURE__ */ a(function () {
|
|
u({
|
|
type: an,
|
|
});
|
|
}, "toggleButtonHandleClick"),
|
|
ye = /* @__PURE__ */ a(function () {
|
|
ue.isOpen &&
|
|
!S.isMouseDown &&
|
|
u({
|
|
type: fn,
|
|
});
|
|
}, "toggleButtonHandleBlur"),
|
|
Oe = /* @__PURE__ */ a(function (_e) {
|
|
var Ae = po(_e);
|
|
Ae && k[Ae]
|
|
? k[Ae](_e)
|
|
: Jx(Ae) &&
|
|
u({
|
|
type: dn,
|
|
key: Ae,
|
|
});
|
|
}, "toggleButtonHandleKeyDown"),
|
|
fe = j(
|
|
((W = {}),
|
|
(W[J] = Ze(ie, function (Se) {
|
|
h.current = Se;
|
|
})),
|
|
(W["aria-activedescendant"] =
|
|
ue.isOpen && ue.highlightedIndex > -1
|
|
? x.getItemId(ue.highlightedIndex)
|
|
: ""),
|
|
(W["aria-controls"] = x.menuId),
|
|
(W["aria-expanded"] = E.current.state.isOpen),
|
|
(W["aria-haspopup"] = "listbox"),
|
|
(W["aria-labelledby"] =
|
|
te && te["aria-label"] ? void 0 : "" + x.labelId),
|
|
(W.id = x.toggleButtonId),
|
|
(W.role = "combobox"),
|
|
(W.tabIndex = 0),
|
|
(W.onBlur = le(R, ye)),
|
|
W),
|
|
te,
|
|
);
|
|
return (
|
|
te.disabled || ((fe.onClick = le(B, Ie)), (fe.onKeyDown = le(L, Oe))),
|
|
w("getToggleButtonProps", ce, J, h),
|
|
fe
|
|
);
|
|
},
|
|
[u, x, E, S, w, k],
|
|
),
|
|
Q = A(
|
|
function (z) {
|
|
var q,
|
|
W = z === void 0 ? {} : z,
|
|
re = W.item,
|
|
R = W.index,
|
|
B = W.onMouseMove,
|
|
L = W.onClick,
|
|
$ = W.onMouseDown;
|
|
W.onPress;
|
|
var J = W.refKey,
|
|
ie = J === void 0 ? "ref" : J,
|
|
te = W.disabled,
|
|
de = W.ref,
|
|
ae = ke(W, lI);
|
|
te !== void 0 &&
|
|
console.warn(
|
|
'Passing "disabled" as an argument to getItemProps is not supported anymore. Please use the isItemDisabled\
|
|
prop from useSelect.',
|
|
);
|
|
var ce = E.current,
|
|
ue = ce.state,
|
|
Ie = ce.props,
|
|
ye = ts(
|
|
re,
|
|
R,
|
|
Ie.items,
|
|
"Pass either item or index to getItemProps!",
|
|
),
|
|
Oe = ye[0],
|
|
fe = ye[1],
|
|
Se = Ie.isItemDisabled(Oe, fe),
|
|
_e = /* @__PURE__ */ a(function () {
|
|
S.isTouchEnd ||
|
|
fe === ue.highlightedIndex ||
|
|
((v.current = !1),
|
|
u({
|
|
type: fd,
|
|
index: fe,
|
|
disabled: Se,
|
|
}));
|
|
}, "itemHandleMouseMove"),
|
|
Ae = /* @__PURE__ */ a(function () {
|
|
u({
|
|
type: hs,
|
|
index: fe,
|
|
});
|
|
}, "itemHandleClick"),
|
|
et = /* @__PURE__ */ a(function (fo) {
|
|
return fo.preventDefault();
|
|
}, "itemHandleMouseDown"),
|
|
N = j(
|
|
((q = {}),
|
|
(q[ie] = Ze(de, function (Ge) {
|
|
Ge && (m.current[x.getItemId(fe)] = Ge);
|
|
})),
|
|
(q["aria-disabled"] = Se),
|
|
(q["aria-selected"] = Oe === ue.selectedItem),
|
|
(q.id = x.getItemId(fe)),
|
|
(q.role = "option"),
|
|
q),
|
|
ae,
|
|
);
|
|
return (
|
|
Se || (N.onClick = le(L, Ae)),
|
|
(N.onMouseMove = le(B, _e)),
|
|
(N.onMouseDown = le($, et)),
|
|
N
|
|
);
|
|
},
|
|
[E, x, S, v, u],
|
|
);
|
|
return {
|
|
// prop getters.
|
|
getToggleButtonProps: V,
|
|
getLabelProps: F,
|
|
getMenuProps: Z,
|
|
getItemProps: Q,
|
|
// actions.
|
|
toggleMenu: _,
|
|
openMenu: T,
|
|
closeMenu: C,
|
|
setHighlightedIndex: O,
|
|
selectItem: P,
|
|
reset: D,
|
|
setInputValue: M,
|
|
// state.
|
|
highlightedIndex: d,
|
|
isOpen: c,
|
|
selectedItem: p,
|
|
inputValue: f,
|
|
};
|
|
}
|
|
a(xd, "useSelect");
|
|
var ys = 0,
|
|
bs = 1,
|
|
vs = 2,
|
|
xs = 3,
|
|
Is = 4,
|
|
Ss = 5,
|
|
ws = 6,
|
|
Es = 7,
|
|
Ts = 8,
|
|
mn = 9,
|
|
Cs = 10,
|
|
Id = 11,
|
|
Sd = 12,
|
|
_s = 13,
|
|
wd = 14,
|
|
Ed = 15,
|
|
Td = 16,
|
|
Cd = 17,
|
|
_d = 18,
|
|
ks = 19,
|
|
kd = 20,
|
|
Od = 21,
|
|
Os = 22,
|
|
Pd = /* @__PURE__ */ Object.freeze({
|
|
__proto__: null,
|
|
ControlledPropUpdatedSelectedItem: Os,
|
|
FunctionCloseMenu: Cd,
|
|
FunctionOpenMenu: Td,
|
|
FunctionReset: Od,
|
|
FunctionSelectItem: ks,
|
|
FunctionSetHighlightedIndex: _d,
|
|
FunctionSetInputValue: kd,
|
|
FunctionToggleMenu: Ed,
|
|
InputBlur: mn,
|
|
InputChange: Ts,
|
|
InputClick: Cs,
|
|
InputKeyDownArrowDown: ys,
|
|
InputKeyDownArrowUp: bs,
|
|
InputKeyDownEnd: Is,
|
|
InputKeyDownEnter: Es,
|
|
InputKeyDownEscape: vs,
|
|
InputKeyDownHome: xs,
|
|
InputKeyDownPageDown: ws,
|
|
InputKeyDownPageUp: Ss,
|
|
ItemClick: _s,
|
|
ItemMouseMove: Sd,
|
|
MenuMouseLeave: Id,
|
|
ToggleButtonClick: wd,
|
|
});
|
|
function uI(e) {
|
|
var t = sd(e),
|
|
o = t.selectedItem,
|
|
i = t.inputValue;
|
|
return (
|
|
i === "" &&
|
|
o &&
|
|
e.defaultInputValue === void 0 &&
|
|
e.initialInputValue === void 0 &&
|
|
e.inputValue === void 0 &&
|
|
(i = e.itemToString(o)),
|
|
j({}, t, {
|
|
inputValue: i,
|
|
})
|
|
);
|
|
}
|
|
a(uI, "getInitialState$1");
|
|
var jR = j({}, cd, {
|
|
items: Y.default.array.isRequired,
|
|
isItemDisabled: Y.default.func,
|
|
inputValue: Y.default.string,
|
|
defaultInputValue: Y.default.string,
|
|
initialInputValue: Y.default.string,
|
|
inputId: Y.default.string,
|
|
onInputValueChange: Y.default.func,
|
|
});
|
|
function cI(e, t, o, i) {
|
|
var r = U(),
|
|
n = nd(e, t, o, i),
|
|
l = n[0],
|
|
u = n[1],
|
|
c = yn();
|
|
return (
|
|
H(
|
|
function () {
|
|
if (ln(t, "selectedItem")) {
|
|
if (!c) {
|
|
var d = t.itemToKey(t.selectedItem) !== t.itemToKey(r.current);
|
|
d &&
|
|
u({
|
|
type: Os,
|
|
inputValue: t.itemToString(t.selectedItem),
|
|
});
|
|
}
|
|
r.current =
|
|
l.selectedItem === r.current ? t.selectedItem : l.selectedItem;
|
|
}
|
|
},
|
|
[l.selectedItem, t.selectedItem],
|
|
),
|
|
[Vo(l, t), u]
|
|
);
|
|
}
|
|
a(cI, "useControlledReducer");
|
|
var pI = Re,
|
|
dI = j({}, Wo, {
|
|
isItemDisabled: /* @__PURE__ */ a(function () {
|
|
return !1;
|
|
}, "isItemDisabled"),
|
|
});
|
|
function fI(e, t) {
|
|
var o,
|
|
i = t.type,
|
|
r = t.props,
|
|
n = t.altKey,
|
|
l;
|
|
switch (i) {
|
|
case _s:
|
|
l = {
|
|
isOpen: ut(r, "isOpen"),
|
|
highlightedIndex: pn(r),
|
|
selectedItem: r.items[t.index],
|
|
inputValue: r.itemToString(r.items[t.index]),
|
|
};
|
|
break;
|
|
case ys:
|
|
e.isOpen
|
|
? (l = {
|
|
highlightedIndex: Je(
|
|
e.highlightedIndex,
|
|
1,
|
|
r.items,
|
|
r.isItemDisabled,
|
|
!0,
|
|
),
|
|
})
|
|
: (l = {
|
|
highlightedIndex: n && e.selectedItem == null ? -1 : Gt(r, e, 1),
|
|
isOpen: r.items.length >= 0,
|
|
});
|
|
break;
|
|
case bs:
|
|
e.isOpen
|
|
? n
|
|
? (l = cn(r, e.highlightedIndex))
|
|
: (l = {
|
|
highlightedIndex: Je(
|
|
e.highlightedIndex,
|
|
-1,
|
|
r.items,
|
|
r.isItemDisabled,
|
|
!0,
|
|
),
|
|
})
|
|
: (l = {
|
|
highlightedIndex: Gt(r, e, -1),
|
|
isOpen: r.items.length >= 0,
|
|
});
|
|
break;
|
|
case Es:
|
|
l = cn(r, e.highlightedIndex);
|
|
break;
|
|
case vs:
|
|
l = j(
|
|
{
|
|
isOpen: !1,
|
|
highlightedIndex: -1,
|
|
},
|
|
!e.isOpen && {
|
|
selectedItem: null,
|
|
inputValue: "",
|
|
},
|
|
);
|
|
break;
|
|
case Ss:
|
|
l = {
|
|
highlightedIndex: Je(
|
|
e.highlightedIndex,
|
|
-10,
|
|
r.items,
|
|
r.isItemDisabled,
|
|
!0,
|
|
),
|
|
};
|
|
break;
|
|
case ws:
|
|
l = {
|
|
highlightedIndex: Je(
|
|
e.highlightedIndex,
|
|
10,
|
|
r.items,
|
|
r.isItemDisabled,
|
|
!0,
|
|
),
|
|
};
|
|
break;
|
|
case xs:
|
|
l = {
|
|
highlightedIndex: Tt(0, !1, r.items, r.isItemDisabled),
|
|
};
|
|
break;
|
|
case Is:
|
|
l = {
|
|
highlightedIndex: Tt(r.items.length - 1, !0, r.items, r.isItemDisabled),
|
|
};
|
|
break;
|
|
case mn:
|
|
l = j(
|
|
{
|
|
isOpen: !1,
|
|
highlightedIndex: -1,
|
|
},
|
|
e.highlightedIndex >= 0 &&
|
|
((o = r.items) == null ? void 0 : o.length) &&
|
|
t.selectItem && {
|
|
selectedItem: r.items[e.highlightedIndex],
|
|
inputValue: r.itemToString(r.items[e.highlightedIndex]),
|
|
},
|
|
);
|
|
break;
|
|
case Ts:
|
|
l = {
|
|
isOpen: !0,
|
|
highlightedIndex: pn(r),
|
|
inputValue: t.inputValue,
|
|
};
|
|
break;
|
|
case Cs:
|
|
l = {
|
|
isOpen: !e.isOpen,
|
|
highlightedIndex: e.isOpen ? -1 : Gt(r, e, 0),
|
|
};
|
|
break;
|
|
case ks:
|
|
l = {
|
|
selectedItem: t.selectedItem,
|
|
inputValue: r.itemToString(t.selectedItem),
|
|
};
|
|
break;
|
|
case Os:
|
|
l = {
|
|
inputValue: t.inputValue,
|
|
};
|
|
break;
|
|
default:
|
|
return pd(e, t, Pd);
|
|
}
|
|
return j({}, e, l);
|
|
}
|
|
a(fI, "downshiftUseComboboxReducer");
|
|
var mI = ["onMouseLeave", "refKey", "ref"],
|
|
hI = [
|
|
"item",
|
|
"index",
|
|
"refKey",
|
|
"ref",
|
|
"onMouseMove",
|
|
"onMouseDown",
|
|
"onClick",
|
|
"onPress",
|
|
"dis\
|
|
abled",
|
|
],
|
|
gI = ["onClick", "onPress", "refKey", "ref"],
|
|
yI = [
|
|
"onKeyDown",
|
|
"onChange",
|
|
"onInput",
|
|
"onBlur",
|
|
"onChangeText",
|
|
"onClick",
|
|
"refKe\
|
|
y",
|
|
"ref",
|
|
];
|
|
Ad.stateChangeTypes = Pd;
|
|
function Ad(e) {
|
|
(e === void 0 && (e = {}), pI(e, Ad));
|
|
var t = j({}, dI, e),
|
|
o = t.items,
|
|
i = t.scrollIntoView,
|
|
r = t.environment,
|
|
n = t.getA11yStatusMessage,
|
|
l = cI(fI, t, uI, ud),
|
|
u = l[0],
|
|
c = l[1],
|
|
d = u.isOpen,
|
|
p = u.highlightedIndex,
|
|
f = u.selectedItem,
|
|
h = u.inputValue,
|
|
y = U(null),
|
|
m = U({}),
|
|
b = U(null),
|
|
x = U(null),
|
|
E = yn(),
|
|
g = rd(t),
|
|
v = U(),
|
|
S = gn({
|
|
state: u,
|
|
props: t,
|
|
}),
|
|
w = A(
|
|
function (R) {
|
|
return m.current[g.getItemId(R)];
|
|
},
|
|
[g],
|
|
);
|
|
ns(n, u, [d, p, f, h], r);
|
|
var k = ld({
|
|
menuElement: y.current,
|
|
highlightedIndex: p,
|
|
isOpen: d,
|
|
itemRefs: m,
|
|
scrollIntoView: i,
|
|
getItemNodeFromIndex: w,
|
|
});
|
|
(is({
|
|
props: t,
|
|
state: u,
|
|
}),
|
|
H(function () {
|
|
var R = Ut(t, "isOpen");
|
|
R && b.current && b.current.focus();
|
|
}, []),
|
|
H(function () {
|
|
E || (v.current = o.length);
|
|
}));
|
|
var _ = ad(
|
|
r,
|
|
A(
|
|
/* @__PURE__ */ a(function () {
|
|
S.current.state.isOpen &&
|
|
c({
|
|
type: mn,
|
|
selectItem: !1,
|
|
});
|
|
}, "handleBlur"),
|
|
[c, S],
|
|
),
|
|
G(
|
|
function () {
|
|
return [y, x, b];
|
|
},
|
|
[y.current, x.current, b.current],
|
|
),
|
|
),
|
|
C = rs("getInputProps", "getMenuProps");
|
|
(H(
|
|
function () {
|
|
d || (m.current = {});
|
|
},
|
|
[d],
|
|
),
|
|
H(
|
|
function () {
|
|
var R;
|
|
!d ||
|
|
!(r != null && r.document) ||
|
|
!(b != null && (R = b.current) != null && R.focus) ||
|
|
(r.document.activeElement !== b.current && b.current.focus());
|
|
},
|
|
[d, r],
|
|
));
|
|
var T = G(
|
|
function () {
|
|
return {
|
|
ArrowDown: /* @__PURE__ */ a(function (B) {
|
|
(B.preventDefault(),
|
|
c({
|
|
type: ys,
|
|
altKey: B.altKey,
|
|
}));
|
|
}, "ArrowDown"),
|
|
ArrowUp: /* @__PURE__ */ a(function (B) {
|
|
(B.preventDefault(),
|
|
c({
|
|
type: bs,
|
|
altKey: B.altKey,
|
|
}));
|
|
}, "ArrowUp"),
|
|
Home: /* @__PURE__ */ a(function (B) {
|
|
S.current.state.isOpen &&
|
|
(B.preventDefault(),
|
|
c({
|
|
type: xs,
|
|
}));
|
|
}, "Home"),
|
|
End: /* @__PURE__ */ a(function (B) {
|
|
S.current.state.isOpen &&
|
|
(B.preventDefault(),
|
|
c({
|
|
type: Is,
|
|
}));
|
|
}, "End"),
|
|
Escape: /* @__PURE__ */ a(function (B) {
|
|
var L = S.current.state;
|
|
(L.isOpen ||
|
|
L.inputValue ||
|
|
L.selectedItem ||
|
|
L.highlightedIndex > -1) &&
|
|
(B.preventDefault(),
|
|
c({
|
|
type: vs,
|
|
}));
|
|
}, "Escape"),
|
|
Enter: /* @__PURE__ */ a(function (B) {
|
|
var L = S.current.state;
|
|
!L.isOpen ||
|
|
B.which === 229 ||
|
|
(B.preventDefault(),
|
|
c({
|
|
type: Es,
|
|
}));
|
|
}, "Enter"),
|
|
PageUp: /* @__PURE__ */ a(function (B) {
|
|
S.current.state.isOpen &&
|
|
(B.preventDefault(),
|
|
c({
|
|
type: Ss,
|
|
}));
|
|
}, "PageUp"),
|
|
PageDown: /* @__PURE__ */ a(function (B) {
|
|
S.current.state.isOpen &&
|
|
(B.preventDefault(),
|
|
c({
|
|
type: ws,
|
|
}));
|
|
}, "PageDown"),
|
|
};
|
|
},
|
|
[c, S],
|
|
),
|
|
O = A(
|
|
function (R) {
|
|
return j(
|
|
{
|
|
id: g.labelId,
|
|
htmlFor: g.inputId,
|
|
},
|
|
R,
|
|
);
|
|
},
|
|
[g],
|
|
),
|
|
P = A(
|
|
function (R, B) {
|
|
var L,
|
|
$ = R === void 0 ? {} : R,
|
|
J = $.onMouseLeave,
|
|
ie = $.refKey,
|
|
te = ie === void 0 ? "ref" : ie,
|
|
de = $.ref,
|
|
ae = ke($, mI),
|
|
ce = B === void 0 ? {} : B,
|
|
ue = ce.suppressRefError,
|
|
Ie = ue === void 0 ? !1 : ue;
|
|
return (
|
|
C("getMenuProps", Ie, te, y),
|
|
j(
|
|
((L = {}),
|
|
(L[te] = Ze(de, function (ye) {
|
|
y.current = ye;
|
|
})),
|
|
(L.id = g.menuId),
|
|
(L.role = "listbox"),
|
|
(L["aria-labelledby"] =
|
|
ae && ae["aria-label"] ? void 0 : "" + g.labelId),
|
|
(L.onMouseLeave = le(J, function () {
|
|
c({
|
|
type: Id,
|
|
});
|
|
})),
|
|
L),
|
|
ae,
|
|
)
|
|
);
|
|
},
|
|
[c, C, g],
|
|
),
|
|
D = A(
|
|
function (R) {
|
|
var B,
|
|
L,
|
|
$ = R === void 0 ? {} : R,
|
|
J = $.item,
|
|
ie = $.index,
|
|
te = $.refKey,
|
|
de = te === void 0 ? "ref" : te,
|
|
ae = $.ref,
|
|
ce = $.onMouseMove,
|
|
ue = $.onMouseDown,
|
|
Ie = $.onClick;
|
|
$.onPress;
|
|
var ye = $.disabled,
|
|
Oe = ke($, hI);
|
|
ye !== void 0 &&
|
|
console.warn(
|
|
'Passing "disabled" as an argument to getItemProps is not supported anymore. Please use the isItemDisabled\
|
|
prop from useCombobox.',
|
|
);
|
|
var fe = S.current,
|
|
Se = fe.props,
|
|
_e = fe.state,
|
|
Ae = ts(
|
|
J,
|
|
ie,
|
|
Se.items,
|
|
"Pass either item or index to getItemProps!",
|
|
),
|
|
et = Ae[0],
|
|
N = Ae[1],
|
|
Ge = Se.isItemDisabled(et, N),
|
|
fo = "onClick",
|
|
Uo = Ie,
|
|
ht = /* @__PURE__ */ a(function () {
|
|
_.isTouchEnd ||
|
|
N === _e.highlightedIndex ||
|
|
((k.current = !1),
|
|
c({
|
|
type: Sd,
|
|
index: N,
|
|
disabled: Ge,
|
|
}));
|
|
}, "itemHandleMouseMove"),
|
|
Ct = /* @__PURE__ */ a(function () {
|
|
c({
|
|
type: _s,
|
|
index: N,
|
|
});
|
|
}, "itemHandleClick"),
|
|
gt = /* @__PURE__ */ a(function (ff) {
|
|
return ff.preventDefault();
|
|
}, "itemHandleMouseDown");
|
|
return j(
|
|
((B = {}),
|
|
(B[de] = Ze(ae, function (qe) {
|
|
qe && (m.current[g.getItemId(N)] = qe);
|
|
})),
|
|
(B["aria-disabled"] = Ge),
|
|
(B["aria-selected"] = N === _e.highlightedIndex),
|
|
(B.id = g.getItemId(N)),
|
|
(B.role = "option"),
|
|
B),
|
|
!Ge && ((L = {}), (L[fo] = le(Uo, Ct)), L),
|
|
{
|
|
onMouseMove: le(ce, ht),
|
|
onMouseDown: le(ue, gt),
|
|
},
|
|
Oe,
|
|
);
|
|
},
|
|
[c, g, S, _, k],
|
|
),
|
|
M = A(
|
|
function (R) {
|
|
var B,
|
|
L = R === void 0 ? {} : R,
|
|
$ = L.onClick;
|
|
L.onPress;
|
|
var J = L.refKey,
|
|
ie = J === void 0 ? "ref" : J,
|
|
te = L.ref,
|
|
de = ke(L, gI),
|
|
ae = S.current.state,
|
|
ce = /* @__PURE__ */ a(function () {
|
|
c({
|
|
type: wd,
|
|
});
|
|
}, "toggleButtonHandleClick");
|
|
return j(
|
|
((B = {}),
|
|
(B[ie] = Ze(te, function (ue) {
|
|
x.current = ue;
|
|
})),
|
|
(B["aria-controls"] = g.menuId),
|
|
(B["aria-expanded"] = ae.isOpen),
|
|
(B.id = g.toggleButtonId),
|
|
(B.tabIndex = -1),
|
|
B),
|
|
!de.disabled &&
|
|
j(
|
|
{},
|
|
{
|
|
onClick: le($, ce),
|
|
},
|
|
),
|
|
de,
|
|
);
|
|
},
|
|
[c, S, g],
|
|
),
|
|
F = A(
|
|
function (R, B) {
|
|
var L,
|
|
$ = R === void 0 ? {} : R,
|
|
J = $.onKeyDown,
|
|
ie = $.onChange,
|
|
te = $.onInput,
|
|
de = $.onBlur;
|
|
$.onChangeText;
|
|
var ae = $.onClick,
|
|
ce = $.refKey,
|
|
ue = ce === void 0 ? "ref" : ce,
|
|
Ie = $.ref,
|
|
ye = ke($, yI),
|
|
Oe = B === void 0 ? {} : B,
|
|
fe = Oe.suppressRefError,
|
|
Se = fe === void 0 ? !1 : fe;
|
|
C("getInputProps", Se, ue, b);
|
|
var _e = S.current.state,
|
|
Ae = /* @__PURE__ */ a(function (gt) {
|
|
var qe = po(gt);
|
|
qe && T[qe] && T[qe](gt);
|
|
}, "inputHandleKeyDown"),
|
|
et = /* @__PURE__ */ a(function (gt) {
|
|
c({
|
|
type: Ts,
|
|
inputValue: gt.target.value,
|
|
});
|
|
}, "inputHandleChange"),
|
|
N = /* @__PURE__ */ a(function (gt) {
|
|
if (r != null && r.document && _e.isOpen && !_.isMouseDown) {
|
|
var qe =
|
|
gt.relatedTarget === null &&
|
|
r.document.activeElement !== r.document.body;
|
|
c({
|
|
type: mn,
|
|
selectItem: !qe,
|
|
});
|
|
}
|
|
}, "inputHandleBlur"),
|
|
Ge = /* @__PURE__ */ a(function () {
|
|
c({
|
|
type: Cs,
|
|
});
|
|
}, "inputHandleClick"),
|
|
fo = "onChange",
|
|
Uo = {};
|
|
if (!ye.disabled) {
|
|
var ht;
|
|
Uo =
|
|
((ht = {}),
|
|
(ht[fo] = le(ie, te, et)),
|
|
(ht.onKeyDown = le(J, Ae)),
|
|
(ht.onBlur = le(de, N)),
|
|
(ht.onClick = le(ae, Ge)),
|
|
ht);
|
|
}
|
|
return j(
|
|
((L = {}),
|
|
(L[ue] = Ze(Ie, function (Ct) {
|
|
b.current = Ct;
|
|
})),
|
|
(L["aria-activedescendant"] =
|
|
_e.isOpen && _e.highlightedIndex > -1
|
|
? g.getItemId(_e.highlightedIndex)
|
|
: ""),
|
|
(L["aria-autocomplete"] = "list"),
|
|
(L["aria-controls"] = g.menuId),
|
|
(L["aria-expanded"] = _e.isOpen),
|
|
(L["aria-labelledby"] = ye && ye["aria-label"] ? void 0 : g.labelId),
|
|
(L.autoComplete = "off"),
|
|
(L.id = g.inputId),
|
|
(L.role = "combobox"),
|
|
(L.value = _e.inputValue),
|
|
L),
|
|
Uo,
|
|
ye,
|
|
);
|
|
},
|
|
[c, g, r, T, S, _, C],
|
|
),
|
|
Z = A(
|
|
function () {
|
|
c({
|
|
type: Ed,
|
|
});
|
|
},
|
|
[c],
|
|
),
|
|
V = A(
|
|
function () {
|
|
c({
|
|
type: Cd,
|
|
});
|
|
},
|
|
[c],
|
|
),
|
|
Q = A(
|
|
function () {
|
|
c({
|
|
type: Td,
|
|
});
|
|
},
|
|
[c],
|
|
),
|
|
z = A(
|
|
function (R) {
|
|
c({
|
|
type: _d,
|
|
highlightedIndex: R,
|
|
});
|
|
},
|
|
[c],
|
|
),
|
|
q = A(
|
|
function (R) {
|
|
c({
|
|
type: ks,
|
|
selectedItem: R,
|
|
});
|
|
},
|
|
[c],
|
|
),
|
|
W = A(
|
|
function (R) {
|
|
c({
|
|
type: kd,
|
|
inputValue: R,
|
|
});
|
|
},
|
|
[c],
|
|
),
|
|
re = A(
|
|
function () {
|
|
c({
|
|
type: Od,
|
|
});
|
|
},
|
|
[c],
|
|
);
|
|
return {
|
|
// prop getters.
|
|
getItemProps: D,
|
|
getLabelProps: O,
|
|
getMenuProps: P,
|
|
getInputProps: F,
|
|
getToggleButtonProps: M,
|
|
// actions.
|
|
toggleMenu: Z,
|
|
openMenu: Q,
|
|
closeMenu: V,
|
|
setHighlightedIndex: z,
|
|
setInputValue: W,
|
|
selectItem: q,
|
|
reset: re,
|
|
// state.
|
|
highlightedIndex: p,
|
|
isOpen: d,
|
|
selectedItem: f,
|
|
inputValue: h,
|
|
};
|
|
}
|
|
a(Ad, "useCombobox");
|
|
var Dd = {
|
|
activeIndex: -1,
|
|
selectedItems: [],
|
|
};
|
|
function Lp(e, t) {
|
|
return Ut(e, t, Dd);
|
|
}
|
|
a(Lp, "getInitialValue");
|
|
function Np(e, t) {
|
|
return ut(e, t, Dd);
|
|
}
|
|
a(Np, "getDefaultValue");
|
|
function bI(e) {
|
|
var t = Lp(e, "activeIndex"),
|
|
o = Lp(e, "selectedItems");
|
|
return {
|
|
activeIndex: t,
|
|
selectedItems: o,
|
|
};
|
|
}
|
|
a(bI, "getInitialState");
|
|
function Fp(e) {
|
|
if (e.shiftKey || e.metaKey || e.ctrlKey || e.altKey) return !1;
|
|
var t = e.target;
|
|
return !(
|
|
t instanceof HTMLInputElement && // if element is a text input
|
|
t.value !== "" && // and we have text in it
|
|
// and cursor is either not at the start or is currently highlighting text.
|
|
(t.selectionStart !== 0 || t.selectionEnd !== 0)
|
|
);
|
|
}
|
|
a(Fp, "isKeyDownOperationPermitted");
|
|
function vI(e, t) {
|
|
return e.selectedItems === t.selectedItems && e.activeIndex === t.activeIndex;
|
|
}
|
|
a(vI, "isStateEqual");
|
|
var KR = {
|
|
stateReducer: sn.stateReducer,
|
|
itemToKey: sn.itemToKey,
|
|
environment: sn.environment,
|
|
selectedItems: Y.default.array,
|
|
initialSelectedItems: Y.default.array,
|
|
defaultSelectedItems: Y.default.array,
|
|
getA11yStatusMessage: Y.default.func,
|
|
activeIndex: Y.default.number,
|
|
initialActiveIndex: Y.default.number,
|
|
defaultActiveIndex: Y.default.number,
|
|
onActiveIndexChange: Y.default.func,
|
|
onSelectedItemsChange: Y.default.func,
|
|
keyNavigationNext: Y.default.string,
|
|
keyNavigationPrevious: Y.default.string,
|
|
},
|
|
xI = {
|
|
itemToKey: Wo.itemToKey,
|
|
stateReducer: Wo.stateReducer,
|
|
environment: Wo.environment,
|
|
keyNavigationNext: "ArrowRight",
|
|
keyNavigationPrevious: "ArrowLeft",
|
|
},
|
|
II = Re,
|
|
Ps = 0,
|
|
As = 1,
|
|
Ds = 2,
|
|
Ms = 3,
|
|
Ls = 4,
|
|
Ns = 5,
|
|
Fs = 6,
|
|
Rs = 7,
|
|
Bs = 8,
|
|
Hs = 9,
|
|
zs = 10,
|
|
Ws = 11,
|
|
Vs = 12,
|
|
SI = /* @__PURE__ */ Object.freeze({
|
|
__proto__: null,
|
|
DropdownClick: Rs,
|
|
DropdownKeyDownBackspace: Fs,
|
|
DropdownKeyDownNavigationPrevious: Ns,
|
|
FunctionAddSelectedItem: Bs,
|
|
FunctionRemoveSelectedItem: Hs,
|
|
FunctionReset: Vs,
|
|
FunctionSetActiveIndex: Ws,
|
|
FunctionSetSelectedItems: zs,
|
|
SelectedItemClick: Ps,
|
|
SelectedItemKeyDownBackspace: Ds,
|
|
SelectedItemKeyDownDelete: As,
|
|
SelectedItemKeyDownNavigationNext: Ms,
|
|
SelectedItemKeyDownNavigationPrevious: Ls,
|
|
});
|
|
function wI(e, t) {
|
|
var o = t.type,
|
|
i = t.index,
|
|
r = t.props,
|
|
n = t.selectedItem,
|
|
l = e.activeIndex,
|
|
u = e.selectedItems,
|
|
c;
|
|
switch (o) {
|
|
case Ps:
|
|
c = {
|
|
activeIndex: i,
|
|
};
|
|
break;
|
|
case Ls:
|
|
c = {
|
|
activeIndex: l - 1 < 0 ? 0 : l - 1,
|
|
};
|
|
break;
|
|
case Ms:
|
|
c = {
|
|
activeIndex: l + 1 >= u.length ? -1 : l + 1,
|
|
};
|
|
break;
|
|
case Ds:
|
|
case As: {
|
|
if (l < 0) break;
|
|
var d = l;
|
|
(u.length === 1 ? (d = -1) : l === u.length - 1 && (d = u.length - 2),
|
|
(c = j(
|
|
{
|
|
selectedItems: [].concat(u.slice(0, l), u.slice(l + 1)),
|
|
},
|
|
{
|
|
activeIndex: d,
|
|
},
|
|
)));
|
|
break;
|
|
}
|
|
case Ns:
|
|
c = {
|
|
activeIndex: u.length - 1,
|
|
};
|
|
break;
|
|
case Fs:
|
|
c = {
|
|
selectedItems: u.slice(0, u.length - 1),
|
|
};
|
|
break;
|
|
case Bs:
|
|
c = {
|
|
selectedItems: [].concat(u, [n]),
|
|
};
|
|
break;
|
|
case Rs:
|
|
c = {
|
|
activeIndex: -1,
|
|
};
|
|
break;
|
|
case Hs: {
|
|
var p = l,
|
|
f = u.findIndex(function (m) {
|
|
return r.itemToKey(m) === r.itemToKey(n);
|
|
});
|
|
if (f < 0) break;
|
|
(u.length === 1 ? (p = -1) : f === u.length - 1 && (p = u.length - 2),
|
|
(c = {
|
|
selectedItems: [].concat(u.slice(0, f), u.slice(f + 1)),
|
|
activeIndex: p,
|
|
}));
|
|
break;
|
|
}
|
|
case zs: {
|
|
var h = t.selectedItems;
|
|
c = {
|
|
selectedItems: h,
|
|
};
|
|
break;
|
|
}
|
|
case Ws: {
|
|
var y = t.activeIndex;
|
|
c = {
|
|
activeIndex: y,
|
|
};
|
|
break;
|
|
}
|
|
case Vs:
|
|
c = {
|
|
activeIndex: Np(r, "activeIndex"),
|
|
selectedItems: Np(r, "selectedItems"),
|
|
};
|
|
break;
|
|
default:
|
|
throw new Error("Reducer called without proper action type.");
|
|
}
|
|
return j({}, e, c);
|
|
}
|
|
a(wI, "downshiftMultipleSelectionReducer");
|
|
var EI = ["refKey", "ref", "onClick", "onKeyDown", "selectedItem", "index"],
|
|
TI = [
|
|
"refKey",
|
|
"ref",
|
|
"onKeyDown",
|
|
"onClick",
|
|
"preventKeyActio\
|
|
n",
|
|
];
|
|
Md.stateChangeTypes = SI;
|
|
function Md(e) {
|
|
(e === void 0 && (e = {}), II(e, Md));
|
|
var t = j({}, xI, e),
|
|
o = t.getA11yStatusMessage,
|
|
i = t.environment,
|
|
r = t.keyNavigationNext,
|
|
n = t.keyNavigationPrevious,
|
|
l = id(wI, t, bI, vI),
|
|
u = l[0],
|
|
c = l[1],
|
|
d = u.activeIndex,
|
|
p = u.selectedItems,
|
|
f = yn(),
|
|
h = U(null),
|
|
y = U();
|
|
y.current = [];
|
|
var m = gn({
|
|
state: u,
|
|
props: t,
|
|
});
|
|
(ns(o, u, [d, p], i),
|
|
H(
|
|
function () {
|
|
f ||
|
|
(d === -1 && h.current
|
|
? h.current.focus()
|
|
: y.current[d] && y.current[d].focus());
|
|
},
|
|
[d],
|
|
),
|
|
is({
|
|
props: t,
|
|
state: u,
|
|
}));
|
|
var b = rs("getDropdownProps"),
|
|
x = G(
|
|
function () {
|
|
var T;
|
|
return (
|
|
(T = {}),
|
|
(T[n] = function () {
|
|
c({
|
|
type: Ls,
|
|
});
|
|
}),
|
|
(T[r] = function () {
|
|
c({
|
|
type: Ms,
|
|
});
|
|
}),
|
|
(T.Delete = /* @__PURE__ */ a(function () {
|
|
c({
|
|
type: As,
|
|
});
|
|
}, "Delete")),
|
|
(T.Backspace = /* @__PURE__ */ a(function () {
|
|
c({
|
|
type: Ds,
|
|
});
|
|
}, "Backspace")),
|
|
T
|
|
);
|
|
},
|
|
[c, r, n],
|
|
),
|
|
E = G(
|
|
function () {
|
|
var T;
|
|
return (
|
|
(T = {}),
|
|
(T[n] = function (O) {
|
|
Fp(O) &&
|
|
c({
|
|
type: Ns,
|
|
});
|
|
}),
|
|
(T.Backspace = /* @__PURE__ */ a(function (P) {
|
|
Fp(P) &&
|
|
c({
|
|
type: Fs,
|
|
});
|
|
}, "Backspace")),
|
|
T
|
|
);
|
|
},
|
|
[c, n],
|
|
),
|
|
g = A(
|
|
function (T) {
|
|
var O,
|
|
P = T === void 0 ? {} : T,
|
|
D = P.refKey,
|
|
M = D === void 0 ? "ref" : D,
|
|
F = P.ref,
|
|
Z = P.onClick,
|
|
V = P.onKeyDown,
|
|
Q = P.selectedItem,
|
|
z = P.index,
|
|
q = ke(P, EI),
|
|
W = m.current.state,
|
|
re = ts(
|
|
Q,
|
|
z,
|
|
W.selectedItems,
|
|
"Pass either item or index to getSelectedItemProps!",
|
|
),
|
|
R = re[1],
|
|
B = R > -1 && R === W.activeIndex,
|
|
L = /* @__PURE__ */ a(function () {
|
|
c({
|
|
type: Ps,
|
|
index: R,
|
|
});
|
|
}, "selectedItemHandleClick"),
|
|
$ = /* @__PURE__ */ a(function (ie) {
|
|
var te = po(ie);
|
|
te && x[te] && x[te](ie);
|
|
}, "selectedItemHandleKeyDown");
|
|
return j(
|
|
((O = {}),
|
|
(O[M] = Ze(F, function (J) {
|
|
J && y.current.push(J);
|
|
})),
|
|
(O.tabIndex = B ? 0 : -1),
|
|
(O.onClick = le(Z, L)),
|
|
(O.onKeyDown = le(V, $)),
|
|
O),
|
|
q,
|
|
);
|
|
},
|
|
[c, m, x],
|
|
),
|
|
v = A(
|
|
function (T, O) {
|
|
var P,
|
|
D = T === void 0 ? {} : T,
|
|
M = D.refKey,
|
|
F = M === void 0 ? "ref" : M,
|
|
Z = D.ref,
|
|
V = D.onKeyDown,
|
|
Q = D.onClick,
|
|
z = D.preventKeyAction,
|
|
q = z === void 0 ? !1 : z,
|
|
W = ke(D, TI),
|
|
re = O === void 0 ? {} : O,
|
|
R = re.suppressRefError,
|
|
B = R === void 0 ? !1 : R;
|
|
b("getDropdownProps", B, F, h);
|
|
var L = /* @__PURE__ */ a(function (ie) {
|
|
var te = po(ie);
|
|
te && E[te] && E[te](ie);
|
|
}, "dropdownHandleKeyDown"),
|
|
$ = /* @__PURE__ */ a(function () {
|
|
c({
|
|
type: Rs,
|
|
});
|
|
}, "dropdownHandleClick");
|
|
return j(
|
|
((P = {}),
|
|
(P[F] = Ze(Z, function (J) {
|
|
J && (h.current = J);
|
|
})),
|
|
P),
|
|
!q && {
|
|
onKeyDown: le(V, L),
|
|
onClick: le(Q, $),
|
|
},
|
|
W,
|
|
);
|
|
},
|
|
[c, E, b],
|
|
),
|
|
S = A(
|
|
function (T) {
|
|
c({
|
|
type: Bs,
|
|
selectedItem: T,
|
|
});
|
|
},
|
|
[c],
|
|
),
|
|
w = A(
|
|
function (T) {
|
|
c({
|
|
type: Hs,
|
|
selectedItem: T,
|
|
});
|
|
},
|
|
[c],
|
|
),
|
|
k = A(
|
|
function (T) {
|
|
c({
|
|
type: zs,
|
|
selectedItems: T,
|
|
});
|
|
},
|
|
[c],
|
|
),
|
|
_ = A(
|
|
function (T) {
|
|
c({
|
|
type: Ws,
|
|
activeIndex: T,
|
|
});
|
|
},
|
|
[c],
|
|
),
|
|
C = A(
|
|
function () {
|
|
c({
|
|
type: Vs,
|
|
});
|
|
},
|
|
[c],
|
|
);
|
|
return {
|
|
getSelectedItemProps: g,
|
|
getDropdownProps: v,
|
|
addSelectedItem: S,
|
|
removeSelectedItem: w,
|
|
setSelectedItems: k,
|
|
setActiveIndex: _,
|
|
reset: C,
|
|
selectedItems: p,
|
|
activeIndex: d,
|
|
};
|
|
}
|
|
a(Md, "useMultipleSelection");
|
|
|
|
// src/manager/components/sidebar/Search.tsx
|
|
var Nd = Ve(Ld(), 1);
|
|
|
|
// src/manager/components/sidebar/types.ts
|
|
function Ko(e) {
|
|
return !!(e && e.showAll);
|
|
}
|
|
a(Ko, "isExpandType");
|
|
function Ks(e) {
|
|
return !!(e && e.item);
|
|
}
|
|
a(Ks, "isSearchResult");
|
|
|
|
// src/manager/components/sidebar/Search.tsx
|
|
var { document: CI } = se,
|
|
$s = 50,
|
|
_I = {
|
|
shouldSort: !0,
|
|
tokenize: !0,
|
|
findAllMatches: !0,
|
|
includeScore: !0,
|
|
includeMatches: !0,
|
|
threshold: 0.2,
|
|
location: 0,
|
|
distance: 100,
|
|
maxPatternLength: 32,
|
|
minMatchCharLength: 1,
|
|
keys: [
|
|
{ name: "name", weight: 0.7 },
|
|
{ name: "path", weight: 0.3 },
|
|
],
|
|
},
|
|
kI = I.div({
|
|
display: "flex",
|
|
flexDirection: "row",
|
|
columnGap: 6,
|
|
}),
|
|
OI = I.label({
|
|
position: "absolute",
|
|
left: -1e4,
|
|
top: "auto",
|
|
width: 1,
|
|
height: 1,
|
|
overflow: "hidden",
|
|
}),
|
|
PI = I.div(({ theme: e, isMobile: t }) => ({
|
|
display: "flex",
|
|
flexDirection: "row",
|
|
alignItems: "center",
|
|
padding: t ? 4 : 2,
|
|
flexGrow: 1,
|
|
height: t ? 36 : 32,
|
|
width: "100%",
|
|
boxShadow: `${e.button.border} 0 0 0 1px inset`,
|
|
borderRadius: e.appBorderRadius + 2,
|
|
"&:has(input:focus), &:has(input:active)": {
|
|
boxShadow: `${e.color.secondary} 0 0 0 1px inset`,
|
|
background: e.background.app,
|
|
},
|
|
})),
|
|
AI = I.div(({ theme: e, onClick: t }) => ({
|
|
cursor: t ? "pointer" : "default",
|
|
flex: "0 0 28px",
|
|
height: "100%",
|
|
pointerEvents: t ? "auto" : "none",
|
|
color: e.textMutedColor,
|
|
display: "flex",
|
|
alignItems: "center",
|
|
justifyContent: "center",
|
|
})),
|
|
DI = I.input(({ theme: e, isMobile: t }) => ({
|
|
appearance: "none",
|
|
height: 28,
|
|
width: "100%",
|
|
padding: 0,
|
|
border: 0,
|
|
background: "transparent",
|
|
fontSize: t ? "16px" : `${e.typography.size.s1 + 1}px`,
|
|
fontFamily: "inherit",
|
|
transition: "all 150ms",
|
|
color: e.color.defaultText,
|
|
outline: 0,
|
|
"&::placeholder": {
|
|
color: e.textMutedColor,
|
|
opacity: 1,
|
|
},
|
|
"&:valid ~ code, &:focus ~ code": {
|
|
display: "none",
|
|
},
|
|
"&:invalid ~ svg": {
|
|
display: "none",
|
|
},
|
|
"&:valid ~ svg": {
|
|
display: "block",
|
|
},
|
|
"&::-ms-clear": {
|
|
display: "none",
|
|
},
|
|
"&::-webkit-search-decoration, &::-webkit-search-cancel-button, &::-webkit-search-results-button, &::-webkit-search-results-decoration":
|
|
{
|
|
display: "none",
|
|
},
|
|
})),
|
|
MI = I.code(({ theme: e }) => ({
|
|
margin: 5,
|
|
marginTop: 6,
|
|
height: 16,
|
|
lineHeight: "16px",
|
|
textAlign: "center",
|
|
fontSize: "11px",
|
|
color: e.base === "light" ? e.color.dark : e.textMutedColor,
|
|
userSelect: "none",
|
|
pointerEvents: "none",
|
|
display: "flex",
|
|
alignItems: "center",
|
|
gap: 4,
|
|
flexShrink: 0,
|
|
})),
|
|
LI = I.span({
|
|
fontSize: "14px",
|
|
}),
|
|
NI = I.div({
|
|
display: "flex",
|
|
alignItems: "center",
|
|
gap: 2,
|
|
}),
|
|
FI = I.div({ outline: 0 }),
|
|
Fd = s.memo(
|
|
/* @__PURE__ */ a(function ({
|
|
children: t,
|
|
dataset: o,
|
|
enableShortcuts: i = !0,
|
|
getLastViewed: r,
|
|
initialQuery: n = "",
|
|
searchBarContent: l,
|
|
searchFieldContent: u,
|
|
}) {
|
|
let c = oe(),
|
|
d = U(null),
|
|
[p, f] = K("Find components"),
|
|
[h, y] = K(!1),
|
|
m = c ? Ye(c.getShortcutKeys().search) : "/",
|
|
b = A(() => {
|
|
let w = o.entries.reduce((k, [_, { index: C, allStatuses: T }]) => {
|
|
let O = zr(C || {}, T ?? {});
|
|
return (
|
|
C &&
|
|
k.push(
|
|
...Object.values(C).map((P) => {
|
|
let D = T?.[P.id],
|
|
M = D ? Ho(Object.values(D).map((F) => F.value)) : null;
|
|
return {
|
|
...Ki(P, o.hash[_]),
|
|
status: M ?? O[P.id] ?? null,
|
|
};
|
|
}),
|
|
),
|
|
k
|
|
);
|
|
}, []);
|
|
return new Nd.default(w, _I);
|
|
}, [o]),
|
|
x = A(
|
|
(w) => {
|
|
let k = b();
|
|
if (!w) return [];
|
|
let _ = [],
|
|
C = /* @__PURE__ */ new Set(),
|
|
T = k.search(w).filter(({ item: O }) =>
|
|
!(
|
|
O.type === "component" ||
|
|
O.type === "docs" ||
|
|
O.type === "story"
|
|
) || // @ts-expect-error (non strict)
|
|
C.has(O.parent)
|
|
? !1
|
|
: (C.add(O.id), !0),
|
|
);
|
|
return (
|
|
T.length &&
|
|
((_ = T.slice(0, h ? 1e3 : $s)),
|
|
T.length > $s &&
|
|
!h &&
|
|
_.push({
|
|
showAll: /* @__PURE__ */ a(() => y(!0), "showAll"),
|
|
totalCount: T.length,
|
|
moreCount: T.length - $s,
|
|
})),
|
|
_
|
|
);
|
|
},
|
|
[h, b],
|
|
),
|
|
E = A(
|
|
(w) => {
|
|
if (Ks(w)) {
|
|
let { id: k, refId: _ } = w.item;
|
|
(c?.selectStory(k, void 0, { ref: _ !== lt && _ }),
|
|
d.current.blur(),
|
|
y(!1));
|
|
return;
|
|
}
|
|
Ko(w) && w.showAll();
|
|
},
|
|
[c],
|
|
),
|
|
g = A((w, k) => {
|
|
y(!1);
|
|
}, []),
|
|
v = A((w, k) => {
|
|
switch (k.type) {
|
|
case qt.stateChangeTypes.blurInput:
|
|
return {
|
|
...k,
|
|
// Prevent clearing the input on blur
|
|
inputValue: w.inputValue,
|
|
// Return to the tree view after selecting an item
|
|
isOpen: w.inputValue && !w.selectedItem,
|
|
};
|
|
case qt.stateChangeTypes.mouseUp:
|
|
return w;
|
|
case qt.stateChangeTypes.keyDownEscape:
|
|
return w.inputValue
|
|
? { ...k, inputValue: "", isOpen: !0, selectedItem: null }
|
|
: { ...k, isOpen: !1, selectedItem: null };
|
|
case qt.stateChangeTypes.clickItem:
|
|
case qt.stateChangeTypes.keyDownEnter:
|
|
return Ks(k.selectedItem)
|
|
? { ...k, inputValue: w.inputValue }
|
|
: Ko(k.selectedItem)
|
|
? w
|
|
: k;
|
|
default:
|
|
return k;
|
|
}
|
|
}, []),
|
|
{ isMobile: S } = ge();
|
|
return (
|
|
// @ts-expect-error (non strict)
|
|
/* @__PURE__ */ s.createElement(
|
|
qt,
|
|
{
|
|
initialInputValue: n,
|
|
stateReducer: v,
|
|
itemToString: (w) => w?.item?.name || "",
|
|
scrollIntoView: (w) => zt(w),
|
|
onSelect: E,
|
|
onInputValueChange: g,
|
|
},
|
|
({
|
|
isOpen: w,
|
|
openMenu: k,
|
|
closeMenu: _,
|
|
inputValue: C,
|
|
clearSelection: T,
|
|
getInputProps: O,
|
|
getItemProps: P,
|
|
getLabelProps: D,
|
|
getMenuProps: M,
|
|
getRootProps: F,
|
|
highlightedIndex: Z,
|
|
}) => {
|
|
let V = C ? C.trim() : "",
|
|
Q = V ? x(V) : [],
|
|
z = !V && r();
|
|
z &&
|
|
z.length &&
|
|
(Q = z.reduce((R, { storyId: B, refId: L }) => {
|
|
let $ = o.hash[L];
|
|
if ($ && $.index && $.index[B]) {
|
|
let J = $.index[B],
|
|
ie = J.type === "story" ? $.index[J.parent] : J;
|
|
R.some((te) => te.item.refId === L && te.item.id === ie.id) ||
|
|
R.push({ item: Ki(ie, o.hash[L]), matches: [], score: 0 });
|
|
}
|
|
return R;
|
|
}, []));
|
|
let q = "storybook-explorer-searchfield",
|
|
W = O({
|
|
id: q,
|
|
ref: d,
|
|
required: !0,
|
|
type: "search",
|
|
placeholder: p,
|
|
onFocus: /* @__PURE__ */ a(() => {
|
|
(k(), f("Type to find..."));
|
|
}, "onFocus"),
|
|
onBlur: /* @__PURE__ */ a(() => f("Find components"), "onBlur"),
|
|
onKeyDown: /* @__PURE__ */ a((R) => {
|
|
R.key === "Escape" && C.length === 0 && d.current.blur();
|
|
}, "onKeyDown"),
|
|
}),
|
|
re = D({
|
|
htmlFor: q,
|
|
});
|
|
return /* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
OI,
|
|
{ ...re },
|
|
"Search for components",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
kI,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
PI,
|
|
{
|
|
...F({ refKey: "" }, { suppressRefError: !0 }),
|
|
isMobile: S,
|
|
className: "search-field",
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
AI,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(So, null),
|
|
),
|
|
/* @__PURE__ */ s.createElement(DI, { ...W, isMobile: S }),
|
|
!S &&
|
|
i &&
|
|
!w &&
|
|
/* @__PURE__ */ s.createElement(
|
|
MI,
|
|
null,
|
|
m === "\u2318 K"
|
|
? /* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(LI, null, "\u2318"),
|
|
"K",
|
|
)
|
|
: m,
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
NI,
|
|
null,
|
|
w &&
|
|
/* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{ onClick: () => T() },
|
|
/* @__PURE__ */ s.createElement(je, null),
|
|
),
|
|
u,
|
|
),
|
|
),
|
|
l,
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
FI,
|
|
{ tabIndex: 0, id: "storybook-explorer-menu" },
|
|
t({
|
|
query: V,
|
|
results: Q,
|
|
isBrowsing: !w && CI.activeElement !== d.current,
|
|
closeMenu: _,
|
|
getMenuProps: M,
|
|
getItemProps: P,
|
|
highlightedIndex: Z,
|
|
}),
|
|
),
|
|
);
|
|
},
|
|
)
|
|
);
|
|
}, "Search"),
|
|
);
|
|
|
|
// src/manager/components/sidebar/SearchResults.tsx
|
|
var { document: Rd } = se,
|
|
RI = I.ol({
|
|
listStyle: "none",
|
|
margin: 0,
|
|
padding: 0,
|
|
}),
|
|
BI = I.li(({ theme: e, isHighlighted: t }) => ({
|
|
width: "100%",
|
|
border: "none",
|
|
cursor: "pointer",
|
|
display: "flex",
|
|
alignItems: "start",
|
|
justifyContent: "space-between",
|
|
textAlign: "left",
|
|
color: "inherit",
|
|
fontSize: `${e.typography.size.s2}px`,
|
|
background: t ? e.background.hoverable : "transparent",
|
|
minHeight: 28,
|
|
borderRadius: 4,
|
|
gap: 6,
|
|
paddingTop: 7,
|
|
paddingBottom: 7,
|
|
paddingLeft: 8,
|
|
paddingRight: 8,
|
|
"&:hover, &:focus": {
|
|
background: Te(0.93, e.color.secondary),
|
|
outline: "none",
|
|
},
|
|
})),
|
|
HI = I.div({
|
|
marginTop: 2,
|
|
}),
|
|
zI = I.div({
|
|
flex: 1,
|
|
display: "flex",
|
|
flexDirection: "column",
|
|
}),
|
|
WI = I.div(({ theme: e }) => ({
|
|
marginTop: 20,
|
|
textAlign: "center",
|
|
fontSize: `${e.typography.size.s2}px`,
|
|
lineHeight: "18px",
|
|
color: e.color.defaultText,
|
|
small: {
|
|
color: e.textMutedColor,
|
|
fontSize: `${e.typography.size.s1}px`,
|
|
},
|
|
})),
|
|
VI = I.mark(({ theme: e }) => ({
|
|
background: "transparent",
|
|
color: e.color.secondary,
|
|
})),
|
|
jI = I.div({
|
|
marginTop: 8,
|
|
}),
|
|
KI = I.div(({ theme: e }) => ({
|
|
display: "flex",
|
|
justifyContent: "space-between",
|
|
fontSize: `${e.typography.size.s1 - 1}px`,
|
|
fontWeight: e.typography.weight.bold,
|
|
minHeight: 28,
|
|
letterSpacing: "0.16em",
|
|
textTransform: "uppercase",
|
|
color: e.textMutedColor,
|
|
marginTop: 16,
|
|
marginBottom: 4,
|
|
alignItems: "center",
|
|
".search-result-recentlyOpened-clear": {
|
|
visibility: "hidden",
|
|
},
|
|
"&:hover": {
|
|
".search-result-recentlyOpened-clear": {
|
|
visibility: "visible",
|
|
},
|
|
},
|
|
})),
|
|
Bd = s.memo(
|
|
/* @__PURE__ */ a(function ({ children: t, match: o }) {
|
|
if (!o) return t;
|
|
let { value: i, indices: r } = o,
|
|
{ nodes: n } = r.reduce(
|
|
({ cursor: l, nodes: u }, [c, d], p, { length: f }) => (
|
|
u.push(
|
|
/* @__PURE__ */ s.createElement(
|
|
"span",
|
|
{ key: `${p}-1` },
|
|
i.slice(l, c),
|
|
),
|
|
),
|
|
u.push(
|
|
/* @__PURE__ */ s.createElement(
|
|
VI,
|
|
{ key: `${p}-2` },
|
|
i.slice(c, d + 1),
|
|
),
|
|
),
|
|
p === f - 1 &&
|
|
u.push(
|
|
/* @__PURE__ */ s.createElement(
|
|
"span",
|
|
{ key: `${p}-3` },
|
|
i.slice(d + 1),
|
|
),
|
|
),
|
|
{ cursor: d + 1, nodes: u }
|
|
),
|
|
{ cursor: 0, nodes: [] },
|
|
);
|
|
return /* @__PURE__ */ s.createElement("span", null, n);
|
|
}, "Highlight"),
|
|
),
|
|
$I = I.div(({ theme: e }) => ({
|
|
display: "grid",
|
|
justifyContent: "start",
|
|
gridAutoColumns: "auto",
|
|
gridAutoFlow: "column",
|
|
"& > span": {
|
|
display: "block",
|
|
whiteSpace: "nowrap",
|
|
overflow: "hidden",
|
|
textOverflow: "ellipsis",
|
|
},
|
|
})),
|
|
UI = I.div(({ theme: e }) => ({
|
|
display: "grid",
|
|
justifyContent: "start",
|
|
gridAutoColumns: "auto",
|
|
gridAutoFlow: "column",
|
|
fontSize: `${e.typography.size.s1 - 1}px`,
|
|
"& > span": {
|
|
display: "block",
|
|
whiteSpace: "nowrap",
|
|
overflow: "hidden",
|
|
textOverflow: "ellipsis",
|
|
},
|
|
"& > span + span": {
|
|
"&:before": {
|
|
content: "' / '",
|
|
},
|
|
},
|
|
})),
|
|
GI = s.memo(
|
|
/* @__PURE__ */ a(function ({ item: t, matches: o, onClick: i, ...r }) {
|
|
let n = A(
|
|
(p) => {
|
|
(p.preventDefault(), i?.(p));
|
|
},
|
|
[i],
|
|
),
|
|
l = oe();
|
|
H(() => {
|
|
l &&
|
|
r.isHighlighted &&
|
|
t.type === "component" &&
|
|
l.emit(
|
|
kt,
|
|
{ ids: [t.children[0]] },
|
|
{ options: { target: t.refId } },
|
|
);
|
|
}, [r.isHighlighted, t]);
|
|
let u = o.find((p) => p.key === "name"),
|
|
c = o.filter((p) => p.key === "path"),
|
|
[d] = t.status ? Bo[t.status] : [];
|
|
return /* @__PURE__ */ s.createElement(
|
|
BI,
|
|
{ ...r, onClick: n },
|
|
/* @__PURE__ */ s.createElement(
|
|
HI,
|
|
null,
|
|
t.type === "component" &&
|
|
/* @__PURE__ */ s.createElement(
|
|
wt,
|
|
{
|
|
viewBox: "0 0 14 14",
|
|
width: "14",
|
|
height: "14",
|
|
type: "component",
|
|
},
|
|
/* @__PURE__ */ s.createElement(Me, {
|
|
type: "com\
|
|
ponent",
|
|
}),
|
|
),
|
|
t.type === "story" &&
|
|
/* @__PURE__ */ s.createElement(
|
|
wt,
|
|
{
|
|
viewBox: "0 0 14 14",
|
|
width: "14",
|
|
height: "14",
|
|
type: "story",
|
|
},
|
|
/* @__PURE__ */ s.createElement(Me, { type: "story" }),
|
|
),
|
|
!(t.type === "component" || t.type === "story") &&
|
|
/* @__PURE__ */ s.createElement(
|
|
wt,
|
|
{
|
|
viewBox:
|
|
"\
|
|
0 0 14 14",
|
|
width: "14",
|
|
height: "14",
|
|
type: "document",
|
|
},
|
|
/* @__PURE__ */ s.createElement(Me, { type: "document" }),
|
|
),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
zI,
|
|
{ className: "search-result-item--label" },
|
|
/* @__PURE__ */ s.createElement(
|
|
$I,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(Bd, { match: u }, t.name),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
UI,
|
|
null,
|
|
t.path.map((p, f) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
"span",
|
|
{ key: f },
|
|
/* @__PURE__ */ s.createElement(
|
|
Bd,
|
|
{ match: c.find((h) => h.arrayIndex === f) },
|
|
p,
|
|
),
|
|
),
|
|
),
|
|
),
|
|
),
|
|
t.status
|
|
? /* @__PURE__ */ s.createElement(Xc, { status: t.status }, d)
|
|
: null,
|
|
);
|
|
}, "Result"),
|
|
),
|
|
Hd = s.memo(
|
|
/* @__PURE__ */ a(function ({
|
|
query: t,
|
|
results: o,
|
|
closeMenu: i,
|
|
getMenuProps: r,
|
|
getItemProps: n,
|
|
highlightedIndex: l,
|
|
isLoading: u = !1,
|
|
enableShortcuts: c = !0,
|
|
clearLastViewed: d,
|
|
}) {
|
|
let p = oe();
|
|
H(() => {
|
|
let y = /* @__PURE__ */ a((m) => {
|
|
if (!(!c || u || m.repeat) && Et(!1, m) && $e("Escape", m)) {
|
|
if (m.target?.id === "storybook-explorer-searchfield") return;
|
|
(m.preventDefault(), i());
|
|
}
|
|
}, "handleEscape");
|
|
return (
|
|
Rd.addEventListener("keydown", y),
|
|
() => Rd.removeEventListener("keydown", y)
|
|
);
|
|
}, [i, c, u]);
|
|
let f = A((y) => {
|
|
if (!p) return;
|
|
let m = y.currentTarget,
|
|
b = m.getAttribute("data-id"),
|
|
x = m.getAttribute("data-refid"),
|
|
E = p.resolveStory(
|
|
b,
|
|
x ===
|
|
"storybook_interna\
|
|
l"
|
|
? void 0
|
|
: x,
|
|
);
|
|
E?.type === "component" &&
|
|
p.emit(kt, {
|
|
// @ts-expect-error (TODO)
|
|
ids: [E.isLeaf ? E.id : E.children[0]],
|
|
options: { target: x },
|
|
});
|
|
}, []),
|
|
h = /* @__PURE__ */ a(() => {
|
|
(d(), i());
|
|
}, "handleClearLastViewed");
|
|
return /* @__PURE__ */ s.createElement(
|
|
RI,
|
|
{ ...r(), key: "results-list" },
|
|
o.length > 0 &&
|
|
!t &&
|
|
/* @__PURE__ */ s.createElement(
|
|
KI,
|
|
{
|
|
className:
|
|
"\
|
|
search-result-recentlyOpened",
|
|
},
|
|
"Recently opened",
|
|
/* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{
|
|
className: "search-result-recentlyOpened-clear",
|
|
onClick: h,
|
|
},
|
|
/* @__PURE__ */ s.createElement(Xn, null),
|
|
),
|
|
),
|
|
o.length === 0 &&
|
|
t &&
|
|
/* @__PURE__ */ s.createElement(
|
|
"li",
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
WI,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
"strong",
|
|
null,
|
|
"No components found",
|
|
),
|
|
/* @__PURE__ */ s.createElement("br", null),
|
|
/* @__PURE__ */ s.createElement(
|
|
"small",
|
|
null,
|
|
"Find \
|
|
components by name or path.",
|
|
),
|
|
),
|
|
),
|
|
o.map((y, m) => {
|
|
if (Ko(y)) {
|
|
let E = { ...o, ...n({ key: m, index: m, item: y }) },
|
|
{ key: g, ...v } = E;
|
|
return /* @__PURE__ */ s.createElement(
|
|
jI,
|
|
{ key: "search-result-expand" },
|
|
/* @__PURE__ */ s.createElement(
|
|
he,
|
|
{
|
|
key: g,
|
|
...v,
|
|
size: "\
|
|
small",
|
|
},
|
|
"Show ",
|
|
y.moreCount,
|
|
" more results",
|
|
),
|
|
);
|
|
}
|
|
let { item: b } = y,
|
|
x = `${b.refId}::${b.id}`;
|
|
return /* @__PURE__ */ s.createElement(GI, {
|
|
...y,
|
|
...n({ key: x, index: m, item: y }),
|
|
isHighlighted: l === m,
|
|
key: x,
|
|
"data-id": y.item.id,
|
|
"data-refid": y.item.refId,
|
|
onMouseOver: f,
|
|
className: "search-result-item",
|
|
});
|
|
}),
|
|
);
|
|
}, "SearchResults"),
|
|
);
|
|
|
|
// src/manager/components/sidebar/useDynamicFavicon.ts
|
|
var qI = ["active", "critical", "negative", "positive", "warning"],
|
|
$o,
|
|
YI = /* @__PURE__ */ a((e = "./favicon.svg", t) => {
|
|
$o ??= e;
|
|
let o = $o + (t && qI.includes(t) ? `?status=${t}` : "");
|
|
return new Promise((i) => {
|
|
let r = new Image();
|
|
((r.onload = () => i({ href: o, status: t })),
|
|
(r.onerror = () => i({ href: $o, status: t })),
|
|
(r.src = o));
|
|
});
|
|
}, "getFaviconUrl"),
|
|
zd = /* @__PURE__ */ a((e) => {
|
|
let t = U(document.head.querySelectorAll("link[rel*='icon']"));
|
|
H(() => {
|
|
let o = !0,
|
|
[i, ...r] = t.current;
|
|
if (i && !r.length)
|
|
return (
|
|
YI(i.href, e).then(
|
|
(n) => {
|
|
o &&
|
|
n.status === e &&
|
|
i.dataset.status !== e &&
|
|
((i.href = n.href),
|
|
n.status
|
|
? (i.dataset.status = n.status)
|
|
: delete i.dataset.status);
|
|
},
|
|
() => {
|
|
o && (i.href = $o);
|
|
},
|
|
),
|
|
() => {
|
|
((o = !1), (i.href = $o));
|
|
}
|
|
);
|
|
}, [e]);
|
|
}, "useDynamicFavicon");
|
|
|
|
// src/manager/components/sidebar/TestingModule.tsx
|
|
var Us = 500,
|
|
QI = Dt({
|
|
"0%": { transform: "rotate(0deg)" },
|
|
"10%": { transform: "rotate(10deg)" },
|
|
"40%": { transform: "rotate(170deg)" },
|
|
"50%": { transform: "rotate(180deg)" },
|
|
"60%": { transform: "rotate(190deg)" },
|
|
"90%": { transform: "rotate(350deg)" },
|
|
"100%": { transform: "rotate(360deg)" },
|
|
}),
|
|
XI = I.div(({ crashed: e, failed: t, running: o, updated: i, theme: r }) => ({
|
|
position: "relative",
|
|
lineHeight: "16px",
|
|
width: "100%",
|
|
padding: 1,
|
|
overflow: "hidden",
|
|
backgroundColor: `var(--sb-sidebar-bottom-card-background, ${r.background.content})`,
|
|
borderRadius: `var(--sb-sidebar-bottom-card-border-radius, ${r.appBorderRadius + 1}px)`,
|
|
boxShadow: `inset 0 0 0 1px ${e && !o ? r.color.negative : i ? r.color.positive : r.appBorderColor}, var(--sb-sidebar-bottom-card-box-shad\
|
|
ow, 0 1px 2px 0 rgba(0, 0, 0, 0.05), 0px -5px 20px 10px ${r.background.app})`,
|
|
transition: "box-shadow 1s",
|
|
"&:after": {
|
|
content: '""',
|
|
display: o ? "block" : "none",
|
|
position: "absolute",
|
|
left: "50%",
|
|
top: "50%",
|
|
marginLeft: "calc(max(100vw, 100vh) * -0.5)",
|
|
marginTop: "calc(max(100vw, 100vh) * -0.5)",
|
|
height: "max(100vw, 100vh)",
|
|
width: "max(100vw, 100vh)",
|
|
animation: `${QI} 3s linear infinite`,
|
|
background: t
|
|
? // Hardcoded colors to prevent themes from messing with them (orange+gold, secondary+seafoam)
|
|
"conic-gradient(transparent 90deg, #FC521F 150deg, #FFAE00 210deg, transparent 270deg)"
|
|
: "conic-gradient(transparent 90deg, #029CFD 150deg, #37D5D3 210deg, transparent 270deg)",
|
|
opacity: 1,
|
|
willChange: "auto",
|
|
},
|
|
})),
|
|
ZI = I.div(({ theme: e }) => ({
|
|
position: "relative",
|
|
zIndex: 1,
|
|
borderRadius: e.appBorderRadius,
|
|
backgroundColor: e.background.content,
|
|
display: "flex",
|
|
flexDirection: "column-reverse",
|
|
"&:hover #testing-module-collapse-toggle": {
|
|
opacity: 1,
|
|
},
|
|
})),
|
|
JI = I.div(({ theme: e }) => ({
|
|
overflow: "hidden",
|
|
willChange: "auto",
|
|
boxShadow: `inset 0 -1px 0 ${e.appBorderColor}`,
|
|
})),
|
|
eS = I.div({
|
|
display: "flex",
|
|
flexDirection: "column",
|
|
}),
|
|
tS = I.div(({ onClick: e }) => ({
|
|
display: "flex",
|
|
width: "100%",
|
|
cursor: e ? "pointer" : "default",
|
|
userSelect: "none",
|
|
alignItems: "center",
|
|
justifyContent: "space-between",
|
|
overflow: "hidden",
|
|
padding: 4,
|
|
gap: 4,
|
|
})),
|
|
oS = I.div({
|
|
display: "flex",
|
|
flexBasis: "100%",
|
|
containerType: "inline-size",
|
|
}),
|
|
rS = I.div({
|
|
display: "flex",
|
|
justifyContent: "flex-end",
|
|
gap: 4,
|
|
}),
|
|
nS = I(he)({
|
|
opacity: 0,
|
|
transition: "opacity 250ms",
|
|
willChange: "auto",
|
|
"&:focus, &:hover": {
|
|
opacity: 1,
|
|
},
|
|
}),
|
|
iS = I(he)({
|
|
// 90px is the width of the button when the label is visible
|
|
"@container (max-width: 90px)": {
|
|
span: {
|
|
display: "none",
|
|
},
|
|
},
|
|
}),
|
|
Wd = I(he)(
|
|
{ minWidth: 28 },
|
|
({ active: e, status: t, theme: o }) =>
|
|
!e &&
|
|
(o.base === "light"
|
|
? {
|
|
background: {
|
|
negative: o.background.negative,
|
|
warning: o.background.warning,
|
|
}[t],
|
|
color: {
|
|
negative: o.color.negativeText,
|
|
warning: o.color.warningText,
|
|
}[t],
|
|
}
|
|
: {
|
|
background: {
|
|
negative: `${o.color.negative}22`,
|
|
warning: `${o.color.warning}22`,
|
|
}[t],
|
|
color: {
|
|
negative: o.color.negative,
|
|
warning: o.color.warning,
|
|
}[t],
|
|
}),
|
|
),
|
|
sS = I.div(({ theme: e }) => ({
|
|
padding: 4,
|
|
"&:not(:last-child)": {
|
|
boxShadow: `inset 0 -1px 0 ${e.appBorderColor}`,
|
|
},
|
|
})),
|
|
Vd = /* @__PURE__ */ a(
|
|
({
|
|
registeredTestProviders: e,
|
|
testProviderStates: t,
|
|
hasStatuses: o,
|
|
clearStatuses: i,
|
|
onRunAll: r,
|
|
errorCount: n,
|
|
errorsActive: l,
|
|
setErrorsActive: u,
|
|
warningCount: c,
|
|
warningsActive: d,
|
|
setWarningsActive: p,
|
|
successCount: f,
|
|
}) => {
|
|
let h = U(null),
|
|
y = U(null),
|
|
[m, b] = K(Us),
|
|
[x, E] = K(!0),
|
|
[g, v] = K(!1),
|
|
[S, w] = K(!1),
|
|
k = U();
|
|
(H(() => {
|
|
let P = Jt.onSettingsChanged(() => {
|
|
(w(!0),
|
|
clearTimeout(k.current),
|
|
(k.current = setTimeout(() => {
|
|
w(!1);
|
|
}, 1e3)));
|
|
});
|
|
return () => {
|
|
(P(), clearTimeout(k.current));
|
|
};
|
|
}, []),
|
|
H(() => {
|
|
if (y.current) {
|
|
b(y.current?.getBoundingClientRect().height || Us);
|
|
let P = new ResizeObserver(() => {
|
|
requestAnimationFrame(() => {
|
|
if (y.current && !x) {
|
|
let D = y.current?.getBoundingClientRect().height || Us;
|
|
b(D);
|
|
}
|
|
});
|
|
});
|
|
return (P.observe(y.current), () => P.disconnect());
|
|
}
|
|
}, [x]));
|
|
let _ = A((P, D) => {
|
|
(P?.stopPropagation(),
|
|
v(!0),
|
|
E((M) => D ?? !M),
|
|
h.current && clearTimeout(h.current),
|
|
(h.current = setTimeout(() => {
|
|
v(!1);
|
|
}, 250)));
|
|
}, []),
|
|
C = Object.values(t).some((P) => P === "test-provider-state:running"),
|
|
T = Object.values(t).some((P) => P === "test-provider-state:crashed"),
|
|
O = Object.values(e).length > 0;
|
|
return (
|
|
H(() => {
|
|
T && x && _(void 0, !1);
|
|
}, [T, x, _]),
|
|
zd(
|
|
T
|
|
? "critical"
|
|
: n > 0
|
|
? "negative"
|
|
: c > 0
|
|
? "warning"
|
|
: C
|
|
? "active"
|
|
: f > 0
|
|
? "positive"
|
|
: void 0,
|
|
),
|
|
!O && !n && !c
|
|
? null
|
|
: /* @__PURE__ */ s.createElement(
|
|
XI,
|
|
{
|
|
id: "storybook-testing-module",
|
|
running: C,
|
|
crashed: T,
|
|
failed: n > 0,
|
|
updated: S,
|
|
"data-updated": S,
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
ZI,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
tS,
|
|
{
|
|
...(O
|
|
? {
|
|
onClick: /* @__PURE__ */ a(
|
|
(P) => _(P),
|
|
"onClic\
|
|
k",
|
|
),
|
|
}
|
|
: {}),
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
oS,
|
|
null,
|
|
O &&
|
|
/* @__PURE__ */ s.createElement(
|
|
ve,
|
|
{
|
|
hasChrome: !1,
|
|
tooltip: /* @__PURE__ */ s.createElement(rt, {
|
|
note: C ? "Running tests..." : "Start all tests",
|
|
}),
|
|
trigger: "hover",
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
iS,
|
|
{
|
|
size: "medium",
|
|
variant: "ghost",
|
|
padding: "small",
|
|
onClick: (P) => {
|
|
(P.stopPropagation(), r());
|
|
},
|
|
disabled: C,
|
|
},
|
|
/* @__PURE__ */ s.createElement(jn, null),
|
|
/* @__PURE__ */ s.createElement(
|
|
"span",
|
|
null,
|
|
C ? "Running..." : "Run tests",
|
|
),
|
|
),
|
|
),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
rS,
|
|
null,
|
|
O &&
|
|
/* @__PURE__ */ s.createElement(
|
|
ve,
|
|
{
|
|
hasChrome: !1,
|
|
tooltip: /* @__PURE__ */ s.createElement(rt, {
|
|
note: x
|
|
? "Expand testing module"
|
|
: "Collapse testing module",
|
|
}),
|
|
trigger: "hover",
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
nS,
|
|
{
|
|
size: "medium",
|
|
variant: "ghost",
|
|
padding: "small",
|
|
onClick: (P) => _(P),
|
|
id: "testing-module-collapse-toggle",
|
|
"aria-label": x
|
|
? "Expand testing module"
|
|
: "Collapse testing module",
|
|
},
|
|
/* @__PURE__ */ s.createElement(_n, {
|
|
style: {
|
|
transform: x ? "none" : "rotate(180deg)",
|
|
transition: "transform 250ms",
|
|
willChange: "auto",
|
|
},
|
|
}),
|
|
),
|
|
),
|
|
n > 0 &&
|
|
/* @__PURE__ */ s.createElement(
|
|
ve,
|
|
{
|
|
hasChrome: !1,
|
|
tooltip: /* @__PURE__ */ s.createElement(rt, {
|
|
note: "Toggle errors",
|
|
}),
|
|
trigger: "hover",
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
Wd,
|
|
{
|
|
id: "errors-found-filter",
|
|
size: "medium",
|
|
variant: "ghost",
|
|
padding: n < 10 ? "medium" : "small",
|
|
status: "negative",
|
|
active: l,
|
|
onClick: (P) => {
|
|
(P.stopPropagation(), u(!l));
|
|
},
|
|
"aria-label": "Toggle errors",
|
|
},
|
|
n < 1e3 ? n : "999+",
|
|
),
|
|
),
|
|
c > 0 &&
|
|
/* @__PURE__ */ s.createElement(
|
|
ve,
|
|
{
|
|
hasChrome: !1,
|
|
tooltip: /* @__PURE__ */ s.createElement(rt, {
|
|
note: "Toggle warnings",
|
|
}),
|
|
trigger: "hover",
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
Wd,
|
|
{
|
|
id: "warnings-found-filter",
|
|
size: "medium",
|
|
variant: "ghost",
|
|
padding: c < 10 ? "medium" : "small",
|
|
status: "warning",
|
|
active: d,
|
|
onClick: (P) => {
|
|
(P.stopPropagation(), p(!d));
|
|
},
|
|
"aria-label": "Toggle warnings",
|
|
},
|
|
c < 1e3 ? c : "999+",
|
|
),
|
|
),
|
|
o &&
|
|
/* @__PURE__ */ s.createElement(
|
|
ve,
|
|
{
|
|
hasChrome: !1,
|
|
tooltip: /* @__PURE__ */ s.createElement(rt, {
|
|
note: C
|
|
? "Can't clear statuses while tests are running"
|
|
: "Clear all statuses",
|
|
}),
|
|
trigger: "hover",
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{
|
|
id: "clear-statuses",
|
|
size: "medium",
|
|
onClick: (P) => {
|
|
(P.stopPropagation(), i());
|
|
},
|
|
disabled: C,
|
|
"aria-label": C
|
|
? "Can't clear statuses while tests are running"
|
|
: "Clear all statuses",
|
|
},
|
|
/* @__PURE__ */ s.createElement(Yn, null),
|
|
),
|
|
),
|
|
),
|
|
),
|
|
O &&
|
|
/* @__PURE__ */ s.createElement(
|
|
JI,
|
|
{
|
|
"data-testid": "collapse",
|
|
...(x && { inert: "" }),
|
|
style: {
|
|
transition: g ? "max-height 250ms" : "max-height 0ms",
|
|
display: O ? "block" : "none",
|
|
maxHeight: x ? 0 : m,
|
|
},
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
eS,
|
|
{ ref: y },
|
|
Object.values(e).map((P) => {
|
|
let { render: D, id: M } = P;
|
|
return D
|
|
? /* @__PURE__ */ s.createElement(
|
|
sS,
|
|
{ key: M, "data-module-id": M },
|
|
/* @__PURE__ */ s.createElement(D, null),
|
|
)
|
|
: (Ha.warn(
|
|
`No render function found for test provider with id '${M}', skipping...`,
|
|
),
|
|
null);
|
|
}),
|
|
),
|
|
),
|
|
),
|
|
)
|
|
);
|
|
},
|
|
"TestingModule",
|
|
);
|
|
|
|
// src/manager/components/sidebar/SidebarBottom.tsx
|
|
var aS = "sidebar-bottom-spacer",
|
|
lS = "sidebar-bottom-wrapper",
|
|
uS = /* @__PURE__ */ a(() => !0, "filterNone"),
|
|
cS = /* @__PURE__ */ a(
|
|
({ statuses: e = {} }) =>
|
|
Object.values(e).some(({ value: t }) => t === "status-value:warning"),
|
|
"filterWarn",
|
|
),
|
|
pS = /* @__PURE__ */ a(
|
|
({ statuses: e = {} }) =>
|
|
Object.values(e).some(({ value: t }) => t === "status-value:error"),
|
|
"filterError",
|
|
),
|
|
dS = /* @__PURE__ */ a(
|
|
({ statuses: e = {} }) =>
|
|
Object.values(e).some(({ value: t }) =>
|
|
["status-value:warning", "status-value:error"].includes(t),
|
|
),
|
|
"filterBoth",
|
|
),
|
|
fS = /* @__PURE__ */ a(
|
|
(e = !1, t = !1) => (e && t ? dS : e ? cS : t ? pS : uS),
|
|
"getFilter",
|
|
),
|
|
mS = I.div({
|
|
pointerEvents: "none",
|
|
}),
|
|
hS = I.div(({ theme: e }) => ({
|
|
position: "absolute",
|
|
bottom: 0,
|
|
left: 0,
|
|
right: 0,
|
|
padding: "12px 0",
|
|
margin: "0 12px",
|
|
display: "flex",
|
|
flexDirection: "column",
|
|
gap: 12,
|
|
color: e.color.defaultText,
|
|
fontSize: e.typography.size.s1,
|
|
overflow: "hidden",
|
|
"&:empty": {
|
|
display: "none",
|
|
},
|
|
// Integrators can use these to style their custom additions
|
|
"--sb-sidebar-bottom-card-background": e.background.content,
|
|
"--sb-sidebar-bottom-card-border": `1px solid ${e.appBorderColor}`,
|
|
"--sb-sidebar-bottom-card-border-radius": `${e.appBorderRadius + 1}px`,
|
|
"--sb-sidebar-bottom-card-box-shadow": `0 1px 2px 0 rgba(0, 0, 0, 0.05), 0px -5px 20px 10px ${e.background.app}`,
|
|
})),
|
|
gS = /* @__PURE__ */ a(
|
|
({
|
|
api: e,
|
|
notifications: t = [],
|
|
errorCount: o,
|
|
warningCount: i,
|
|
successCount: r,
|
|
hasStatuses: n,
|
|
isDevelopment: l,
|
|
testProviderStates: u,
|
|
registeredTestProviders: c,
|
|
onRunAll: d,
|
|
}) => {
|
|
let p = U(null),
|
|
f = U(null),
|
|
[h, y] = K(!1),
|
|
[m, b] = K(!1);
|
|
return (
|
|
H(() => {
|
|
if (p.current && f.current) {
|
|
let x = new ResizeObserver(() => {
|
|
p.current &&
|
|
f.current &&
|
|
(p.current.style.height = `${f.current.scrollHeight}px`);
|
|
});
|
|
return (x.observe(f.current), () => x.disconnect());
|
|
}
|
|
}, []),
|
|
H(() => {
|
|
let x = fS(i > 0 && h, o > 0 && m);
|
|
e.experimental_setFilter("sidebar-bottom-filter", x);
|
|
}, [e, i, o, h, m]),
|
|
!i && !o && Object.values(c).length === 0 && t.length === 0
|
|
? null
|
|
: /* @__PURE__ */ s.createElement(
|
|
Ee,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(mS, { id: aS, ref: p }),
|
|
/* @__PURE__ */ s.createElement(
|
|
hS,
|
|
{ id: lS, ref: f },
|
|
/* @__PURE__ */ s.createElement(Sr, {
|
|
notifications: t,
|
|
clearNotification: e.clearNotification,
|
|
}),
|
|
l &&
|
|
/* @__PURE__ */ s.createElement(Vd, {
|
|
registeredTestProviders: c,
|
|
testProviderStates: u,
|
|
onRunAll: /* @__PURE__ */ a(() => {
|
|
(d(), b(!1), y(!1));
|
|
}, "onRunAll"),
|
|
hasStatuses: n,
|
|
clearStatuses: /* @__PURE__ */ a(() => {
|
|
(At.unset(), Jt.clearAll(), b(!1), y(!1));
|
|
}, "clearStatuses"),
|
|
errorCount: o,
|
|
errorsActive: m,
|
|
setErrorsActive: b,
|
|
warningCount: i,
|
|
warningsActive: h,
|
|
setWarningsActive: y,
|
|
successCount: r,
|
|
}),
|
|
),
|
|
)
|
|
);
|
|
},
|
|
"SidebarBottomBase",
|
|
),
|
|
jd = /* @__PURE__ */ a(({ isDevelopment: e }) => {
|
|
let t = oe(),
|
|
o = t.getElements(Ce.experimental_TEST_PROVIDER),
|
|
{ notifications: i } = Ne(),
|
|
{
|
|
hasStatuses: r,
|
|
errorCount: n,
|
|
warningCount: l,
|
|
successCount: u,
|
|
} = Eo((d) =>
|
|
Object.values(d).reduce(
|
|
(p, f) => (
|
|
Object.values(f).forEach((h) => {
|
|
((p.hasStatuses = !0),
|
|
h.value === "status-value:error" && (p.errorCount += 1),
|
|
h.value === "status-value:warning" && (p.warningCount += 1),
|
|
h.value === "status-value:success" && (p.successCount += 1));
|
|
}),
|
|
p
|
|
),
|
|
{ errorCount: 0, warningCount: 0, successCount: 0, hasStatuses: !1 },
|
|
),
|
|
),
|
|
c = ri();
|
|
return /* @__PURE__ */ s.createElement(gS, {
|
|
api: t,
|
|
notifications: i,
|
|
hasStatuses: r,
|
|
errorCount: n,
|
|
warningCount: l,
|
|
successCount: u,
|
|
isDevelopment: e,
|
|
testProviderStates: c,
|
|
registeredTestProviders: o,
|
|
onRunAll: Jt.runAll,
|
|
});
|
|
}, "SidebarBottom");
|
|
|
|
// src/manager/components/sidebar/TagsFilterPanel.tsx
|
|
var yS = /* @__PURE__ */ new Set(["play-fn"]),
|
|
bS = I.div({
|
|
minWidth: 180,
|
|
maxWidth: 220,
|
|
}),
|
|
Kd = /* @__PURE__ */ a(
|
|
({
|
|
api: e,
|
|
allTags: t,
|
|
selectedTags: o,
|
|
toggleTag: i,
|
|
isDevelopment: r,
|
|
}) => {
|
|
let n = t.filter((c) => !yS.has(c)),
|
|
l = e.getDocsUrl({
|
|
subpath: "writing-stories/tags#filtering-by-custom-tags",
|
|
}),
|
|
u = [
|
|
t.map((c) => {
|
|
let d = o.includes(c),
|
|
p = `tag-${c}`;
|
|
return {
|
|
id: p,
|
|
title: c,
|
|
right: /* @__PURE__ */ s.createElement("input", {
|
|
type: "checkbox",
|
|
id: p,
|
|
name: p,
|
|
value: c,
|
|
checked: d,
|
|
onChange: () => {},
|
|
}),
|
|
onClick: /* @__PURE__ */ a(() => i(c), "onClick"),
|
|
};
|
|
}),
|
|
];
|
|
return (
|
|
t.length === 0 &&
|
|
u.push([
|
|
{
|
|
id: "no-tags",
|
|
title:
|
|
"There are no tags. Use tags to organize and filter your Storybook.",
|
|
isIndented: !1,
|
|
},
|
|
]),
|
|
n.length === 0 &&
|
|
r &&
|
|
u.push([
|
|
{
|
|
id: "tags-docs",
|
|
title: "Learn how to add tags",
|
|
icon: /* @__PURE__ */ s.createElement(tt, null),
|
|
href: l,
|
|
},
|
|
]),
|
|
/* @__PURE__ */ s.createElement(
|
|
bS,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(ot, { links: u }),
|
|
)
|
|
);
|
|
},
|
|
"TagsFilterPanel",
|
|
);
|
|
|
|
// src/manager/components/sidebar/TagsFilter.tsx
|
|
var vS = "tags-filter",
|
|
xS = /* @__PURE__ */ new Set([
|
|
"dev",
|
|
"docs-only",
|
|
"test-only",
|
|
"autodocs",
|
|
"test",
|
|
"attached-mdx",
|
|
"unattached-mdx",
|
|
]),
|
|
IS = I.div({
|
|
position: "relative",
|
|
}),
|
|
SS = I(or)(({ theme: e }) => ({
|
|
position: "absolute",
|
|
top: 7,
|
|
right: 7,
|
|
transform: "translate(50%, -50%)",
|
|
display: "flex",
|
|
alignItems: "center",
|
|
justifyContent: "center",
|
|
padding: 3,
|
|
height: 6,
|
|
minWidth: 6,
|
|
lineHeight: "px",
|
|
boxShadow: `${e.barSelectedColor} 0 0 0 1px inset`,
|
|
fontSize: e.typography.size.s1 - 1,
|
|
background: e.color.secondary,
|
|
color: e.color.lightest,
|
|
})),
|
|
$d = /* @__PURE__ */ a(
|
|
({
|
|
api: e,
|
|
indexJson: t,
|
|
initialSelectedTags: o = [],
|
|
isDevelopment: i,
|
|
}) => {
|
|
let [r, n] = K(o),
|
|
[l, u] = K(!1),
|
|
c = r.length > 0;
|
|
H(() => {
|
|
e.experimental_setFilter(vS, (y) =>
|
|
r.length === 0 ? !0 : r.some((m) => y.tags?.includes(m)),
|
|
);
|
|
}, [e, r]);
|
|
let d = Object.values(t.entries).reduce(
|
|
(y, m) => (
|
|
m.tags?.forEach((b) => {
|
|
xS.has(b) || y.add(b);
|
|
}),
|
|
y
|
|
),
|
|
/* @__PURE__ */ new Set(),
|
|
),
|
|
p = A(
|
|
(y) => {
|
|
r.includes(y) ? n(r.filter((m) => m !== y)) : n([...r, y]);
|
|
},
|
|
[r, n],
|
|
),
|
|
f = A(
|
|
(y) => {
|
|
(y.preventDefault(), u(!l));
|
|
},
|
|
[l, u],
|
|
);
|
|
if (d.size === 0 && !i) return null;
|
|
let h = Array.from(d);
|
|
return (
|
|
h.sort(),
|
|
/* @__PURE__ */ s.createElement(
|
|
ve,
|
|
{
|
|
placement: "bottom",
|
|
trigger: "click",
|
|
onVisibleChange: u,
|
|
tooltip: () =>
|
|
/* @__PURE__ */ s.createElement(Kd, {
|
|
api: e,
|
|
allTags: h,
|
|
selectedTags: r,
|
|
toggleTag: p,
|
|
isDevelopment: i,
|
|
}),
|
|
closeOnOutsideClick: !0,
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
IS,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{ key: "tags", title: "Tag filters", active: c, onClick: f },
|
|
/* @__PURE__ */ s.createElement(Rn, null),
|
|
),
|
|
r.length > 0 && /* @__PURE__ */ s.createElement(SS, null),
|
|
),
|
|
)
|
|
);
|
|
},
|
|
"TagsFilter",
|
|
);
|
|
|
|
// src/manager/components/sidebar/useLastViewed.ts
|
|
var xn = Ve(Ud(), 1);
|
|
var Gd = qi((e) => xn.default.set("lastViewedStoryIds", e), 1e3),
|
|
qd = /* @__PURE__ */ a((e) => {
|
|
let t = G(() => {
|
|
let r = xn.default.get("lastViewedStoryIds");
|
|
return !r || !Array.isArray(r)
|
|
? []
|
|
: r.some((n) => typeof n == "object" && n.storyId && n.refId)
|
|
? r
|
|
: [];
|
|
}, [xn.default]),
|
|
o = U(t),
|
|
i = A(
|
|
(r) => {
|
|
let n = o.current,
|
|
l = n.findIndex(
|
|
({ storyId: u, refId: c }) => u === r.storyId && c === r.refId,
|
|
);
|
|
l !== 0 &&
|
|
(l === -1
|
|
? (o.current = [r, ...n])
|
|
: (o.current = [r, ...n.slice(0, l), ...n.slice(l + 1)]),
|
|
Gd(o.current));
|
|
},
|
|
[o],
|
|
);
|
|
return (
|
|
H(() => {
|
|
e && i(e);
|
|
}, [e]),
|
|
{
|
|
getLastViewed: A(() => o.current, [o]),
|
|
clearLastViewed: A(() => {
|
|
((o.current = o.current.slice(0, 1)), Gd(o.current));
|
|
}, [o]),
|
|
}
|
|
);
|
|
}, "useLastViewed");
|
|
|
|
// src/manager/components/sidebar/Sidebar.tsx
|
|
var lt = "storybook_internal",
|
|
wS = I.nav(({ theme: e }) => ({
|
|
position: "absolute",
|
|
zIndex: 1,
|
|
left: 0,
|
|
top: 0,
|
|
bottom: 0,
|
|
right: 0,
|
|
width: "100%",
|
|
height: "100%",
|
|
display: "flex",
|
|
flexDirection: "column",
|
|
background: e.background.content,
|
|
[Qe]: {
|
|
background: e.background.app,
|
|
},
|
|
})),
|
|
ES = I(pt)({
|
|
paddingLeft: 12,
|
|
paddingRight: 12,
|
|
paddingBottom: 20,
|
|
paddingTop: 16,
|
|
flex: 1,
|
|
}),
|
|
TS = I(rt)({
|
|
margin: 0,
|
|
}),
|
|
CS = I(ee)(({ theme: e, isMobile: t }) => ({
|
|
color: e.color.mediumdark,
|
|
width: t ? 36 : 32,
|
|
height: t ? 36 : 32,
|
|
borderRadius: e.appBorderRadius + 2,
|
|
})),
|
|
_S = s.memo(
|
|
/* @__PURE__ */ a(function ({ children: t, condition: o }) {
|
|
let [i, r] = s.Children.toArray(t);
|
|
return /* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
{ style: { display: o ? "block" : "none" } },
|
|
i,
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
{ style: { display: o ? "none" : "block" } },
|
|
r,
|
|
),
|
|
);
|
|
}, "Swap"),
|
|
),
|
|
kS = /* @__PURE__ */ a((e, t, o, i, r) => {
|
|
let n = G(
|
|
() => ({
|
|
[lt]: {
|
|
index: e,
|
|
filteredIndex: e,
|
|
indexError: t,
|
|
previewInitialized: o,
|
|
allStatuses: i,
|
|
title: null,
|
|
id: lt,
|
|
url: "iframe.html",
|
|
},
|
|
...r,
|
|
}),
|
|
[r, e, t, o, i],
|
|
);
|
|
return G(() => ({ hash: n, entries: Object.entries(n) }), [n]);
|
|
}, "useCombination"),
|
|
OS = se.STORYBOOK_RENDERER === "react",
|
|
Yd = s.memo(
|
|
/* @__PURE__ */ a(function ({
|
|
// @ts-expect-error (non strict)
|
|
storyId: t = null,
|
|
refId: o = lt,
|
|
index: i,
|
|
indexJson: r,
|
|
indexError: n,
|
|
allStatuses: l,
|
|
previewInitialized: u,
|
|
menu: c,
|
|
menuHighlighted: d = !1,
|
|
enableShortcuts: p = !0,
|
|
isDevelopment: f = se.CONFIG_TYPE === "DEVELOPMENT",
|
|
refs: h = {},
|
|
onMenuClick: y,
|
|
showCreateStoryButton: m = f && OS,
|
|
}) {
|
|
let [b, x] = K(!1),
|
|
E = G(() => t && { storyId: t, refId: o }, [t, o]),
|
|
g = kS(i, n, u, l, h),
|
|
v = !i && !n,
|
|
S = qd(E),
|
|
{ isMobile: w } = ge(),
|
|
k = oe();
|
|
return /* @__PURE__ */ s.createElement(
|
|
wS,
|
|
{ className: "container sidebar-container", "aria-label": "Global" },
|
|
/* @__PURE__ */ s.createElement(
|
|
ir,
|
|
{ vertical: !0, offset: 3, scrollbarSize: 6 },
|
|
/* @__PURE__ */ s.createElement(
|
|
ES,
|
|
{ row: 1.6 },
|
|
/* @__PURE__ */ s.createElement(Sp, {
|
|
className: "sidebar-header",
|
|
menuHighlighted: d,
|
|
menu: c,
|
|
skipLinkHref: "#storybook-preview-wrapper",
|
|
isLoading: v,
|
|
onMenuClick: y,
|
|
}),
|
|
/* @__PURE__ */ s.createElement(
|
|
Fd,
|
|
{
|
|
dataset: g,
|
|
enableShortcuts: p,
|
|
searchBarContent:
|
|
m &&
|
|
/* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
ve,
|
|
{
|
|
trigger: "hover",
|
|
hasChrome: !1,
|
|
tooltip: /* @__PURE__ */ s.createElement(TS, {
|
|
note: "Create a new story",
|
|
}),
|
|
},
|
|
/* @__PURE__ */ s.createElement(
|
|
CS,
|
|
{
|
|
"aria-label": "Create a new story",
|
|
isMobile: w,
|
|
onClick: () => {
|
|
x(!0);
|
|
},
|
|
variant: "outline",
|
|
},
|
|
/* @__PURE__ */ s.createElement(Kn, null),
|
|
),
|
|
),
|
|
/* @__PURE__ */ s.createElement(wc, {
|
|
open: b,
|
|
onOpenChange: x,
|
|
}),
|
|
),
|
|
searchFieldContent:
|
|
r &&
|
|
/* @__PURE__ */ s.createElement($d, {
|
|
api: k,
|
|
indexJson: r,
|
|
isDevelopment: f,
|
|
}),
|
|
...S,
|
|
},
|
|
({
|
|
query: _,
|
|
results: C,
|
|
isBrowsing: T,
|
|
closeMenu: O,
|
|
getMenuProps: P,
|
|
getItemProps: D,
|
|
highlightedIndex: M,
|
|
}) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
_S,
|
|
{ condition: T },
|
|
/* @__PURE__ */ s.createElement(bp, {
|
|
dataset: g,
|
|
selected: E,
|
|
isLoading: v,
|
|
isBrowsing: T,
|
|
}),
|
|
/* @__PURE__ */ s.createElement(Hd, {
|
|
query: _,
|
|
results: C,
|
|
closeMenu: O,
|
|
getMenuProps: P,
|
|
getItemProps: D,
|
|
highlightedIndex: M,
|
|
enableShortcuts: p,
|
|
isLoading: v,
|
|
clearLastViewed: S.clearLastViewed,
|
|
}),
|
|
),
|
|
),
|
|
),
|
|
w || v
|
|
? null
|
|
: /* @__PURE__ */ s.createElement(jd, { isDevelopment: f }),
|
|
),
|
|
);
|
|
}, "Sidebar"),
|
|
);
|
|
|
|
// src/manager/container/Menu.tsx
|
|
var PS = {
|
|
storySearchField: "storybook-explorer-searchfield",
|
|
storyListMenu: "storybook-explorer-menu",
|
|
storyPanelRoot: "storybook-panel-root",
|
|
},
|
|
AS = I.span(({ theme: e }) => ({
|
|
display: "inline-block",
|
|
height: 16,
|
|
lineHeight: "16px",
|
|
textAlign: "center",
|
|
fontSize: "11px",
|
|
background:
|
|
e.base === "light" ? "rgba(0,0,0,0.05)" : "rgba(255,255,255,0.05)",
|
|
color: e.base === "light" ? e.color.dark : e.textMutedColor,
|
|
borderRadius: 2,
|
|
userSelect: "none",
|
|
pointerEvents: "none",
|
|
padding: "0 6px",
|
|
})),
|
|
DS = I.code({
|
|
padding: 0,
|
|
verticalAlign: "middle",
|
|
"& + &": {
|
|
marginLeft: 6,
|
|
},
|
|
}),
|
|
We = /* @__PURE__ */ a(
|
|
({ keys: e }) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
AS,
|
|
null,
|
|
e.map((t) => /* @__PURE__ */ s.createElement(DS, { key: t }, Ye([t]))),
|
|
),
|
|
"Shortcut",
|
|
),
|
|
Qd = /* @__PURE__ */ a((e, t, o, i, r, n, l) => {
|
|
let u = t.getShortcutKeys(),
|
|
c = G(
|
|
() => ({
|
|
id: "about",
|
|
title: "About your Storybook",
|
|
onClick: /* @__PURE__ */ a(
|
|
() => t.changeSettingsTab("about"),
|
|
"onClick",
|
|
),
|
|
icon: /* @__PURE__ */ s.createElement(Hn, null),
|
|
}),
|
|
[t],
|
|
),
|
|
d = G(
|
|
() => ({
|
|
id: "documentation",
|
|
title: "Documentation",
|
|
href: t.getDocsUrl({ versioned: !0, renderer: !0 }),
|
|
icon: /* @__PURE__ */ s.createElement(tt, null),
|
|
}),
|
|
[t],
|
|
),
|
|
p =
|
|
e.whatsNewData?.status === "SUCCESS" && !e.disableWhatsNewNotifications,
|
|
f = t.isWhatsNewUnread(),
|
|
h = G(
|
|
() => ({
|
|
id: "whats-new",
|
|
title: "What's new?",
|
|
onClick: /* @__PURE__ */ a(
|
|
() => t.changeSettingsTab("whats-new"),
|
|
"onClick",
|
|
),
|
|
right:
|
|
p &&
|
|
f &&
|
|
/* @__PURE__ */ s.createElement(
|
|
or,
|
|
{ status: "positive" },
|
|
"Check it out",
|
|
),
|
|
icon: /* @__PURE__ */ s.createElement(Zn, null),
|
|
}),
|
|
[t, p, f],
|
|
),
|
|
y = G(
|
|
() => ({
|
|
id: "shortcuts",
|
|
title: "Keyboard shortcuts",
|
|
onClick: /* @__PURE__ */ a(
|
|
() => t.changeSettingsTab("shortcuts"),
|
|
"onClick",
|
|
),
|
|
right: l
|
|
? /* @__PURE__ */ s.createElement(We, { keys: u.shortcutsPage })
|
|
: null,
|
|
icon: /* @__PURE__ */ s.createElement(Pn, null),
|
|
}),
|
|
[t, l, u.shortcutsPage],
|
|
),
|
|
m = G(
|
|
() => ({
|
|
id: "S",
|
|
title: "Show sidebar",
|
|
onClick: /* @__PURE__ */ a(() => t.toggleNav(), "onClick"),
|
|
active: n,
|
|
right: l
|
|
? /* @__PURE__ */ s.createElement(We, { keys: u.toggleNav })
|
|
: null,
|
|
icon: n ? /* @__PURE__ */ s.createElement(Be, null) : null,
|
|
}),
|
|
[t, l, u, n],
|
|
),
|
|
b = G(
|
|
() => ({
|
|
id: "T",
|
|
title: "Show toolbar",
|
|
onClick: /* @__PURE__ */ a(() => t.toggleToolbar(), "onClick"),
|
|
active: o,
|
|
right: l
|
|
? /* @__PURE__ */ s.createElement(We, { keys: u.toolbar })
|
|
: null,
|
|
icon: o ? /* @__PURE__ */ s.createElement(Be, null) : null,
|
|
}),
|
|
[t, l, u, o],
|
|
),
|
|
x = G(
|
|
() => ({
|
|
id: "A",
|
|
title: "Show addons panel",
|
|
onClick: /* @__PURE__ */ a(() => t.togglePanel(), "onClick"),
|
|
active: r,
|
|
right: l
|
|
? /* @__PURE__ */ s.createElement(We, { keys: u.togglePanel })
|
|
: null,
|
|
icon: r ? /* @__PURE__ */ s.createElement(Be, null) : null,
|
|
}),
|
|
[t, l, u, r],
|
|
),
|
|
E = G(
|
|
() => ({
|
|
id: "D",
|
|
title: "Change addons orientation",
|
|
onClick: /* @__PURE__ */ a(() => t.togglePanelPosition(), "onClick"),
|
|
right: l
|
|
? /* @__PURE__ */ s.createElement(We, { keys: u.panelPosition })
|
|
: null,
|
|
}),
|
|
[t, l, u],
|
|
),
|
|
g = G(
|
|
() => ({
|
|
id: "F",
|
|
title: "Go full screen",
|
|
onClick: /* @__PURE__ */ a(() => t.toggleFullscreen(), "onClick"),
|
|
active: i,
|
|
right: l
|
|
? /* @__PURE__ */ s.createElement(We, { keys: u.fullScreen })
|
|
: null,
|
|
icon: i ? /* @__PURE__ */ s.createElement(Be, null) : null,
|
|
}),
|
|
[t, l, u, i],
|
|
),
|
|
v = G(
|
|
() => ({
|
|
id: "/",
|
|
title: "Search",
|
|
onClick: /* @__PURE__ */ a(
|
|
() => t.focusOnUIElement(PS.storySearchField),
|
|
"onClick",
|
|
),
|
|
right: l
|
|
? /* @__PURE__ */ s.createElement(We, { keys: u.search })
|
|
: null,
|
|
}),
|
|
[t, l, u],
|
|
),
|
|
S = G(
|
|
() => ({
|
|
id: "up",
|
|
title: "Previous component",
|
|
onClick: /* @__PURE__ */ a(() => t.jumpToComponent(-1), "onClick"),
|
|
right: l
|
|
? /* @__PURE__ */ s.createElement(We, { keys: u.prevComponent })
|
|
: null,
|
|
}),
|
|
[t, l, u],
|
|
),
|
|
w = G(
|
|
() => ({
|
|
id: "down",
|
|
title: "Next component",
|
|
onClick: /* @__PURE__ */ a(() => t.jumpToComponent(1), "onClick"),
|
|
right: l
|
|
? /* @__PURE__ */ s.createElement(We, { keys: u.nextComponent })
|
|
: null,
|
|
}),
|
|
[t, l, u],
|
|
),
|
|
k = G(
|
|
() => ({
|
|
id: "prev",
|
|
title: "Previous story",
|
|
onClick: /* @__PURE__ */ a(() => t.jumpToStory(-1), "onClick"),
|
|
right: l
|
|
? /* @__PURE__ */ s.createElement(We, { keys: u.prevStory })
|
|
: null,
|
|
}),
|
|
[t, l, u],
|
|
),
|
|
_ = G(
|
|
() => ({
|
|
id: "next",
|
|
title: "Next story",
|
|
onClick: /* @__PURE__ */ a(() => t.jumpToStory(1), "onClick"),
|
|
right: l
|
|
? /* @__PURE__ */ s.createElement(We, { keys: u.nextStory })
|
|
: null,
|
|
}),
|
|
[t, l, u],
|
|
),
|
|
C = G(
|
|
() => ({
|
|
id: "collapse",
|
|
title: "Collapse all",
|
|
onClick: /* @__PURE__ */ a(() => t.emit(ho), "onClick"),
|
|
right: l
|
|
? /* @__PURE__ */ s.createElement(We, { keys: u.collapseAll })
|
|
: null,
|
|
}),
|
|
[t, l, u],
|
|
),
|
|
T = A(() => {
|
|
let O = t.getAddonsShortcuts(),
|
|
P = u;
|
|
return Object.entries(O)
|
|
.filter(([D, { showInMenu: M }]) => M)
|
|
.map(([D, { label: M, action: F }]) => ({
|
|
id: D,
|
|
title: M,
|
|
onClick: /* @__PURE__ */ a(() => F(), "onClick"),
|
|
right: l
|
|
? /* @__PURE__ */ s.createElement(We, { keys: P[D] })
|
|
: null,
|
|
}));
|
|
}, [t, l, u]);
|
|
return G(
|
|
() => [
|
|
[
|
|
c,
|
|
...(e.whatsNewData?.status === "SUCCESS" ? [h] : []),
|
|
d,
|
|
...(l ? [y] : []),
|
|
],
|
|
[m, b, x, E, g, v, S, w, k, _, C],
|
|
T(),
|
|
],
|
|
[c, e, h, d, y, m, b, x, E, g, v, S, w, k, _, C, T, l],
|
|
);
|
|
}, "useMenu");
|
|
|
|
// src/manager/container/Sidebar.tsx
|
|
var MS = s.memo(
|
|
/* @__PURE__ */ a(function ({ onMenuClick: t }) {
|
|
return /* @__PURE__ */ s.createElement(
|
|
me,
|
|
{
|
|
filter: /* @__PURE__ */ a(({ state: i, api: r }) => {
|
|
let {
|
|
ui: { name: n, url: l, enableShortcuts: u },
|
|
viewMode: c,
|
|
storyId: d,
|
|
refId: p,
|
|
layout: { showToolbar: f },
|
|
// FIXME: This is the actual `index.json` index where the `index` below
|
|
// is actually the stories hash. We should fix this up and make it consistent.
|
|
internal_index: h,
|
|
filteredIndex: y,
|
|
indexError: m,
|
|
previewInitialized: b,
|
|
refs: x,
|
|
} = i,
|
|
E = Qd(
|
|
i,
|
|
r,
|
|
f,
|
|
r.getIsFullscreen(),
|
|
r.getIsPanelShown(),
|
|
r.getIsNavShown(),
|
|
u,
|
|
),
|
|
g =
|
|
i.whatsNewData?.status === "SUCCESS" &&
|
|
!i.disableWhatsNewNotifications;
|
|
return {
|
|
title: n,
|
|
url: l,
|
|
indexJson: h,
|
|
index: y,
|
|
indexError: m,
|
|
previewInitialized: b,
|
|
refs: x,
|
|
storyId: d,
|
|
refId: p,
|
|
viewMode: c,
|
|
menu: E,
|
|
menuHighlighted: g && r.isWhatsNewUnread(),
|
|
enableShortcuts: u,
|
|
};
|
|
}, "mapper"),
|
|
},
|
|
(i) => {
|
|
let r = Eo();
|
|
return /* @__PURE__ */ s.createElement(Yd, {
|
|
...i,
|
|
allStatuses: r,
|
|
onMenuClick: t,
|
|
});
|
|
},
|
|
);
|
|
}, "Sideber"),
|
|
),
|
|
Xd = MS;
|
|
|
|
// src/manager/App.tsx
|
|
var Zd = /* @__PURE__ */ a(
|
|
({
|
|
managerLayoutState: e,
|
|
setManagerLayoutState: t,
|
|
pages: o,
|
|
hasTab: i,
|
|
}) => {
|
|
let { setMobileAboutOpen: r } = ge();
|
|
return /* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(eo, { styles: Ea }),
|
|
/* @__PURE__ */ s.createElement(Yl, {
|
|
hasTab: i,
|
|
managerLayoutState: e,
|
|
setManagerLayoutState: t,
|
|
slotMain: /* @__PURE__ */ s.createElement(Vu, {
|
|
id: "main",
|
|
withLoader: !0,
|
|
}),
|
|
slotSidebar: /* @__PURE__ */ s.createElement(Xd, {
|
|
onMenuClick: () => r((n) => !n),
|
|
}),
|
|
slotPanel: /* @__PURE__ */ s.createElement(Zl, null),
|
|
slotPages: o.map(({ id: n, render: l }) =>
|
|
/* @__PURE__ */ s.createElement(l, { key: n }),
|
|
),
|
|
}),
|
|
);
|
|
},
|
|
"App",
|
|
);
|
|
|
|
// src/manager/provider.ts
|
|
var Gs = class Gs {
|
|
getElements(t) {
|
|
throw new Error("Provider.getElements() is not implemented!");
|
|
}
|
|
handleAPI(t) {
|
|
throw new Error("Provider.handleAPI() is not implemented!");
|
|
}
|
|
getConfig() {
|
|
return (console.error("Provider.getConfig() is not implemented!"), {});
|
|
}
|
|
};
|
|
a(Gs, "Provider");
|
|
var Yt = Gs;
|
|
|
|
// src/manager/settings/About.tsx
|
|
var LS = I.div({
|
|
display: "flex",
|
|
alignItems: "center",
|
|
flexDirection: "column",
|
|
marginTop: 40,
|
|
}),
|
|
NS = I.header({
|
|
marginBottom: 32,
|
|
alignItems: "center",
|
|
display: "flex",
|
|
"> svg": {
|
|
height: 48,
|
|
width: "auto",
|
|
marginRight: 8,
|
|
},
|
|
}),
|
|
FS = I.div(({ theme: e }) => ({
|
|
marginBottom: 24,
|
|
display: "flex",
|
|
flexDirection: "column",
|
|
alignItems: "center",
|
|
color: e.base === "light" ? e.color.dark : e.color.lightest,
|
|
fontWeight: e.typography.weight.regular,
|
|
fontSize: e.typography.size.s2,
|
|
})),
|
|
RS = I.div({
|
|
display: "flex",
|
|
flexDirection: "row",
|
|
alignItems: "center",
|
|
marginBottom: 24,
|
|
marginTop: 24,
|
|
gap: 16,
|
|
}),
|
|
Jd = I(Pe)(({ theme: e }) => ({
|
|
"&&": {
|
|
fontWeight: e.typography.weight.bold,
|
|
color: e.base === "light" ? e.color.dark : e.color.light,
|
|
},
|
|
"&:hover": {
|
|
color: e.base === "light" ? e.color.darkest : e.color.lightest,
|
|
},
|
|
})),
|
|
ef = /* @__PURE__ */ a(
|
|
({ onNavigateToWhatsNew: e }) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
LS,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
NS,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(sr, { alt: "Storybook" }),
|
|
),
|
|
/* @__PURE__ */ s.createElement(Er, { onNavigateToWhatsNew: e }),
|
|
/* @__PURE__ */ s.createElement(
|
|
FS,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
RS,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
he,
|
|
{ asChild: !0 },
|
|
/* @__PURE__ */ s.createElement(
|
|
"a",
|
|
{ href: "https://github.com/storybookjs/storybook" },
|
|
/* @__PURE__ */ s.createElement(vo, null),
|
|
"GitHub",
|
|
),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
he,
|
|
{ asChild: !0 },
|
|
/* @__PURE__ */ s.createElement(
|
|
"a",
|
|
{ href: "https://storybook.js.org/docs" },
|
|
/* @__PURE__ */ s.createElement(Pt, {
|
|
style: {
|
|
display: "inline",
|
|
marginRight: 5,
|
|
},
|
|
}),
|
|
"Documentation",
|
|
),
|
|
),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
null,
|
|
"Open source software maintained by",
|
|
" ",
|
|
/* @__PURE__ */ s.createElement(
|
|
Jd,
|
|
{ href: "https://www.chromatic.com/" },
|
|
"Chromatic",
|
|
),
|
|
" and the",
|
|
" ",
|
|
/* @__PURE__ */ s.createElement(
|
|
Jd,
|
|
{
|
|
href: "https://github.com/storybookjs/storybook/graphs/contributors",
|
|
},
|
|
"Storybook Community",
|
|
),
|
|
),
|
|
),
|
|
),
|
|
"AboutScreen",
|
|
);
|
|
|
|
// src/manager/settings/AboutPage.tsx
|
|
var Ys = class Ys extends Le {
|
|
componentDidMount() {
|
|
let { api: t, notificationId: o } = this.props;
|
|
t.clearNotification(o);
|
|
}
|
|
render() {
|
|
let { children: t } = this.props;
|
|
return t;
|
|
}
|
|
};
|
|
a(Ys, "NotificationClearer");
|
|
var qs = Ys,
|
|
tf = /* @__PURE__ */ a(() => {
|
|
let e = oe(),
|
|
t = Ne(),
|
|
o = A(() => {
|
|
e.changeSettingsTab("whats-new");
|
|
}, [e]);
|
|
return /* @__PURE__ */ s.createElement(
|
|
qs,
|
|
{ api: e, notificationId: "update" },
|
|
/* @__PURE__ */ s.createElement(ef, {
|
|
onNavigateToWhatsNew: t.whatsNewData?.status === "SUCCESS" ? o : void 0,
|
|
}),
|
|
);
|
|
}, "AboutPage");
|
|
|
|
// src/manager/settings/SettingsFooter.tsx
|
|
var BS = I.div(({ theme: e }) => ({
|
|
display: "flex",
|
|
paddingTop: 20,
|
|
marginTop: 20,
|
|
borderTop: `1px solid ${e.appBorderColor}`,
|
|
fontWeight: e.typography.weight.bold,
|
|
"& > * + *": {
|
|
marginLeft: 20,
|
|
},
|
|
})),
|
|
HS = /* @__PURE__ */ a(
|
|
(e) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
BS,
|
|
{ ...e },
|
|
/* @__PURE__ */ s.createElement(
|
|
Pe,
|
|
{
|
|
secondary: !0,
|
|
href: "\
|
|
https://storybook.js.org",
|
|
cancel: !1,
|
|
target: "_blank",
|
|
},
|
|
"Docs",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
Pe,
|
|
{
|
|
secondary: !0,
|
|
href: "https://gith\
|
|
ub.com/storybookjs/storybook",
|
|
cancel: !1,
|
|
target: "_blank",
|
|
},
|
|
"GitHub",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
Pe,
|
|
{
|
|
secondary: !0,
|
|
href: "https://storybook.js.org/community#support",
|
|
cancel: !1,
|
|
target: "_blank",
|
|
},
|
|
"Support",
|
|
),
|
|
),
|
|
"SettingsFooter",
|
|
),
|
|
of = HS;
|
|
|
|
// src/manager/settings/shortcuts.tsx
|
|
var zS = I.header(({ theme: e }) => ({
|
|
marginBottom: 20,
|
|
fontSize: e.typography.size.m3,
|
|
fontWeight: e.typography.weight.bold,
|
|
alignItems: "center",
|
|
display: "flex",
|
|
})),
|
|
rf = I.div(({ theme: e }) => ({
|
|
fontWeight: e.typography.weight.bold,
|
|
})),
|
|
WS = I.div({
|
|
alignSelf: "flex-end",
|
|
display: "grid",
|
|
margin: "10px 0",
|
|
gridTemplateColumns: "1fr 1fr 12px",
|
|
"& > *:last-of-type": {
|
|
gridColumn: "2 / 2",
|
|
justifySelf: "flex-end",
|
|
gridRow: "1",
|
|
},
|
|
}),
|
|
VS = I.div(({ theme: e }) => ({
|
|
padding: "6px 0",
|
|
borderTop: `1px solid ${e.appBorderColor}`,
|
|
display: "grid",
|
|
gridTemplateColumns: "1fr 1fr 0px",
|
|
})),
|
|
jS = I.div({
|
|
display: "grid",
|
|
gridTemplateColumns: "1fr",
|
|
gridAutoRows: "minmax(auto, auto)",
|
|
marginBottom: 20,
|
|
}),
|
|
KS = I.div({
|
|
alignSelf: "center",
|
|
}),
|
|
$S = I(rr.Input)(
|
|
({ valid: e, theme: t }) =>
|
|
e === "error"
|
|
? {
|
|
animation: `${t.animation.jiggle} 700ms ease-out`,
|
|
}
|
|
: {},
|
|
{
|
|
display: "flex",
|
|
width: 80,
|
|
flexDirection: "column",
|
|
justifySelf: "flex-end",
|
|
paddingLeft: 4,
|
|
paddingRight: 4,
|
|
textAlign: "center",
|
|
},
|
|
),
|
|
US = Dt`
|
|
0%,100% { opacity: 0; }
|
|
50% { opacity: 1; }
|
|
`,
|
|
GS = I(Be)(
|
|
({ valid: e, theme: t }) =>
|
|
e === "valid"
|
|
? {
|
|
color: t.color.positive,
|
|
animation: `${US} 2s ease forwards`,
|
|
}
|
|
: {
|
|
opacity: 0,
|
|
},
|
|
{
|
|
alignSelf: "center",
|
|
display: "flex",
|
|
marginLeft: 10,
|
|
height: 14,
|
|
width: 14,
|
|
},
|
|
),
|
|
qS = I.div(({ theme: e }) => ({
|
|
fontSize: e.typography.size.s2,
|
|
padding: "3rem 20px",
|
|
maxWidth: 600,
|
|
margin: "0 auto",
|
|
})),
|
|
YS = {
|
|
fullScreen: "Go full screen",
|
|
togglePanel: "Toggle addons",
|
|
panelPosition: "Toggle addons orientation",
|
|
toggleNav: "Toggle sidebar",
|
|
toolbar: "Toggle canvas toolbar",
|
|
search: "Focus search",
|
|
focusNav: "Focus sidebar",
|
|
focusIframe: "Focus canvas",
|
|
focusPanel: "Focus addons",
|
|
prevComponent: "Previous component",
|
|
nextComponent: "Next component",
|
|
prevStory: "Previous story",
|
|
nextStory: "Next story",
|
|
shortcutsPage: "Go to shortcuts page",
|
|
aboutPage: "Go to about page",
|
|
collapseAll: "Collapse all items on sidebar",
|
|
expandAll: "Expand all items on sidebar",
|
|
remount: "Remount component",
|
|
},
|
|
QS = ["escape"];
|
|
function Qs(e) {
|
|
return Object.entries(e).reduce(
|
|
// @ts-expect-error (non strict)
|
|
(t, [o, i]) =>
|
|
QS.includes(o) ? t : { ...t, [o]: { shortcut: i, error: !1 } },
|
|
{},
|
|
);
|
|
}
|
|
a(Qs, "toShortcutState");
|
|
var Xs = class Xs extends Le {
|
|
constructor(o) {
|
|
super(o);
|
|
this.onKeyDown = /* @__PURE__ */ a((o) => {
|
|
let { activeFeature: i, shortcutKeys: r } = this.state;
|
|
if (o.key === "Backspace") return this.restoreDefault();
|
|
let n = va(o);
|
|
if (!n) return !1;
|
|
let l = !!Object.entries(r).find(
|
|
([u, { shortcut: c }]) => u !== i && c && xa(n, c),
|
|
);
|
|
return this.setState({
|
|
shortcutKeys: { ...r, [i]: { shortcut: n, error: l } },
|
|
});
|
|
}, "onKeyDown");
|
|
this.onFocus = /* @__PURE__ */ a(
|
|
(o) => () => {
|
|
let { shortcutKeys: i } = this.state;
|
|
this.setState({
|
|
activeFeature: o,
|
|
shortcutKeys: {
|
|
...i,
|
|
[o]: { shortcut: null, error: !1 },
|
|
},
|
|
});
|
|
},
|
|
"onFocus",
|
|
);
|
|
this.onBlur = /* @__PURE__ */ a(async () => {
|
|
let { shortcutKeys: o, activeFeature: i } = this.state;
|
|
if (o[i]) {
|
|
let { shortcut: r, error: n } = o[i];
|
|
return !r || n ? this.restoreDefault() : this.saveShortcut();
|
|
}
|
|
return !1;
|
|
}, "onBlur");
|
|
this.saveShortcut = /* @__PURE__ */ a(async () => {
|
|
let { activeFeature: o, shortcutKeys: i } = this.state,
|
|
{ setShortcut: r } = this.props;
|
|
(await r(o, i[o].shortcut), this.setState({ successField: o }));
|
|
}, "saveShortcut");
|
|
this.restoreDefaults = /* @__PURE__ */ a(async () => {
|
|
let { restoreAllDefaultShortcuts: o } = this.props,
|
|
i = await o();
|
|
return this.setState({ shortcutKeys: Qs(i) });
|
|
}, "restoreDefaults");
|
|
this.restoreDefault = /* @__PURE__ */ a(async () => {
|
|
let { activeFeature: o, shortcutKeys: i } = this.state,
|
|
{ restoreDefaultShortcut: r } = this.props,
|
|
n = await r(o);
|
|
return this.setState({
|
|
shortcutKeys: {
|
|
...i,
|
|
...Qs({ [o]: n }),
|
|
},
|
|
});
|
|
}, "restoreDefault");
|
|
this.displaySuccessMessage = /* @__PURE__ */ a((o) => {
|
|
let { successField: i, shortcutKeys: r } = this.state;
|
|
return o === i && r[o].error === !1 ? "valid" : void 0;
|
|
}, "displaySuccessMessage");
|
|
this.displayError = /* @__PURE__ */ a((o) => {
|
|
let { activeFeature: i, shortcutKeys: r } = this.state;
|
|
return o === i && r[o].error === !0 ? "error" : void 0;
|
|
}, "displayError");
|
|
this.renderKeyInput = /* @__PURE__ */ a(() => {
|
|
let { shortcutKeys: o, addonsShortcutLabels: i } = this.state;
|
|
return Object.entries(o).map(([n, { shortcut: l }]) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
VS,
|
|
{ key: n },
|
|
/* @__PURE__ */ s.createElement(KS, null, YS[n] || i[n]),
|
|
/* @__PURE__ */ s.createElement($S, {
|
|
spellCheck: "false",
|
|
valid: this.displayError(n),
|
|
className: "modalInput",
|
|
onBlur: this.onBlur,
|
|
onFocus: this.onFocus(n),
|
|
onKeyDown: this.onKeyDown,
|
|
value: l ? Ye(l) : "",
|
|
placeholder: "Type keys",
|
|
readOnly: !0,
|
|
}),
|
|
/* @__PURE__ */ s.createElement(GS, {
|
|
valid: this.displaySuccessMessage(n),
|
|
}),
|
|
),
|
|
);
|
|
}, "renderKeyInput");
|
|
this.renderKeyForm = /* @__PURE__ */ a(
|
|
() =>
|
|
/* @__PURE__ */ s.createElement(
|
|
jS,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
WS,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(rf, null, "Commands"),
|
|
/* @__PURE__ */ s.createElement(rf, null, "Shortcut"),
|
|
),
|
|
this.renderKeyInput(),
|
|
),
|
|
"renderKeyForm",
|
|
);
|
|
this.state = {
|
|
// @ts-expect-error (non strict)
|
|
activeFeature: void 0,
|
|
// @ts-expect-error (non strict)
|
|
successField: void 0,
|
|
// The initial shortcutKeys that come from props are the defaults/what was saved
|
|
// As the user interacts with the page, the state stores the temporary, unsaved shortcuts
|
|
// This object also includes the error attached to each shortcut
|
|
// @ts-expect-error (non strict)
|
|
shortcutKeys: Qs(o.shortcutKeys),
|
|
addonsShortcutLabels: o.addonsShortcutLabels,
|
|
};
|
|
}
|
|
render() {
|
|
let o = this.renderKeyForm();
|
|
return /* @__PURE__ */ s.createElement(
|
|
qS,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(zS, null, "Keyboard shortcuts"),
|
|
o,
|
|
/* @__PURE__ */ s.createElement(
|
|
he,
|
|
{
|
|
variant: "outline",
|
|
size: "small",
|
|
id: "restoreDefaultsHotkeys",
|
|
onClick: this.restoreDefaults,
|
|
},
|
|
"Restore defaults",
|
|
),
|
|
/* @__PURE__ */ s.createElement(of, null),
|
|
);
|
|
}
|
|
};
|
|
a(Xs, "ShortcutsScreen");
|
|
var In = Xs;
|
|
|
|
// src/manager/settings/ShortcutsPage.tsx
|
|
var nf = /* @__PURE__ */ a(
|
|
() =>
|
|
/* @__PURE__ */ s.createElement(
|
|
me,
|
|
null,
|
|
({
|
|
api: {
|
|
getShortcutKeys: e,
|
|
getAddonsShortcutLabels: t,
|
|
setShortcut: o,
|
|
restoreDefaultShortcut: i,
|
|
restoreAllDefaultShortcuts: r,
|
|
},
|
|
}) =>
|
|
/* @__PURE__ */ s.createElement(In, {
|
|
shortcutKeys: e(),
|
|
addonsShortcutLabels: t(),
|
|
setShortcut: o,
|
|
restoreDefaultShortcut: i,
|
|
restoreAllDefaultShortcuts: r,
|
|
}),
|
|
),
|
|
"ShortcutsPage",
|
|
);
|
|
|
|
// src/manager/settings/whats_new.tsx
|
|
var sf = I.div({
|
|
top: "50%",
|
|
position: "absolute",
|
|
transform: "translateY(-50%)",
|
|
width: "100%",
|
|
textAlign: "center",
|
|
}),
|
|
XS = I.div({
|
|
position: "relative",
|
|
height: "32px",
|
|
}),
|
|
af = I.div(({ theme: e }) => ({
|
|
paddingTop: "12px",
|
|
color: e.textMutedColor,
|
|
maxWidth: "295px",
|
|
margin: "0 auto",
|
|
fontSize: `${e.typography.size.s1}px`,
|
|
lineHeight: "16px",
|
|
})),
|
|
ZS = I.div(({ theme: e }) => ({
|
|
position: "absolute",
|
|
width: "100%",
|
|
bottom: "40px",
|
|
background: e.background.bar,
|
|
fontSize: "13px",
|
|
borderTop: "1px solid",
|
|
borderColor: e.appBorderColor,
|
|
padding: "8px 12px",
|
|
display: "flex",
|
|
alignItems: "center",
|
|
justifyContent: "space-between",
|
|
})),
|
|
JS = /* @__PURE__ */ a(
|
|
({
|
|
isNotificationsEnabled: e,
|
|
onToggleNotifications: t,
|
|
onCopyLink: o,
|
|
}) => {
|
|
let i = De(),
|
|
[r, n] = K("Copy Link"),
|
|
l = /* @__PURE__ */ a(() => {
|
|
(o(), n("Copied!"), setTimeout(() => n("Copy Link"), 4e3));
|
|
}, "copyLink");
|
|
return /* @__PURE__ */ s.createElement(
|
|
ZS,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
{ style: { display: "flex", alignItems: "center", gap: 10 } },
|
|
/* @__PURE__ */ s.createElement(Bn, { color: i.color.mediumdark }),
|
|
/* @__PURE__ */ s.createElement(
|
|
"div",
|
|
null,
|
|
"Share this with your tea\
|
|
m.",
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
he,
|
|
{ onClick: l, size: "small", variant: "ghost" },
|
|
r,
|
|
),
|
|
),
|
|
e
|
|
? /* @__PURE__ */ s.createElement(
|
|
he,
|
|
{
|
|
size: "\
|
|
small",
|
|
variant: "ghost",
|
|
onClick: t,
|
|
},
|
|
/* @__PURE__ */ s.createElement(Ln, null),
|
|
"Hide notifications",
|
|
)
|
|
: /* @__PURE__ */ s.createElement(
|
|
he,
|
|
{ size: "small", variant: "ghost", onClick: t },
|
|
/* @__PURE__ */ s.createElement(Nn, null),
|
|
"Show notifications",
|
|
),
|
|
);
|
|
},
|
|
"WhatsNewFooter",
|
|
),
|
|
ew = I.iframe(
|
|
{
|
|
position: "absolute",
|
|
top: 0,
|
|
left: 0,
|
|
right: 0,
|
|
bottom: 0,
|
|
border: 0,
|
|
margin: 0,
|
|
padding: 0,
|
|
width: "100%",
|
|
height: "calc(100% - 80px)",
|
|
background: "white",
|
|
},
|
|
({ isLoaded: e }) => ({ visibility: e ? "visible" : "hidden" }),
|
|
),
|
|
tw = I((e) => /* @__PURE__ */ s.createElement(go, { ...e }))(
|
|
({ theme: e }) => ({
|
|
color: e.textMutedColor,
|
|
width: 32,
|
|
height: 32,
|
|
margin: "0 auto",
|
|
}),
|
|
),
|
|
ow = /* @__PURE__ */ a(
|
|
() =>
|
|
/* @__PURE__ */ s.createElement(
|
|
sf,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
XS,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(nr, null),
|
|
),
|
|
/* @__PURE__ */ s.createElement(af, null, "Loading..."),
|
|
),
|
|
"WhatsNewLoader",
|
|
),
|
|
rw = /* @__PURE__ */ a(
|
|
() =>
|
|
/* @__PURE__ */ s.createElement(
|
|
sf,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(tw, null),
|
|
/* @__PURE__ */ s.createElement(
|
|
af,
|
|
null,
|
|
"The page couldn't be loaded. Check your inte\
|
|
rnet connection and try again.",
|
|
),
|
|
),
|
|
"MaxWaitTimeMessaging",
|
|
),
|
|
nw = /* @__PURE__ */ a(
|
|
({
|
|
didHitMaxWaitTime: e,
|
|
isLoaded: t,
|
|
onLoad: o,
|
|
url: i,
|
|
onCopyLink: r,
|
|
onToggleNotifications: n,
|
|
isNotificationsEnabled: l,
|
|
}) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
Ee,
|
|
null,
|
|
!t && !e && /* @__PURE__ */ s.createElement(ow, null),
|
|
e
|
|
? /* @__PURE__ */ s.createElement(rw, null)
|
|
: /* @__PURE__ */ s.createElement(
|
|
s.Fragment,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(ew, {
|
|
isLoaded: t,
|
|
onLoad: o,
|
|
src: i,
|
|
title:
|
|
"What\
|
|
's new?",
|
|
}),
|
|
/* @__PURE__ */ s.createElement(JS, {
|
|
isNotificationsEnabled: l,
|
|
onToggleNotifications: n,
|
|
onCopyLink: r,
|
|
}),
|
|
),
|
|
),
|
|
"PureWhatsNewScreen",
|
|
),
|
|
iw = 1e4,
|
|
lf = /* @__PURE__ */ a(() => {
|
|
let e = oe(),
|
|
t = Ne(),
|
|
{ whatsNewData: o } = t,
|
|
[i, r] = K(!1),
|
|
[n, l] = K(!1);
|
|
if (
|
|
(H(() => {
|
|
let c = setTimeout(() => !i && l(!0), iw);
|
|
return () => clearTimeout(c);
|
|
}, [i]),
|
|
o?.status !== "SUCCESS")
|
|
)
|
|
return null;
|
|
let u = !o.disableWhatsNewNotifications;
|
|
return /* @__PURE__ */ s.createElement(nw, {
|
|
didHitMaxWaitTime: n,
|
|
isLoaded: i,
|
|
onLoad: () => {
|
|
(e.whatsNewHasBeenRead(), r(!0));
|
|
},
|
|
url: o.url,
|
|
isNotificationsEnabled: u,
|
|
onCopyLink: () => {
|
|
navigator.clipboard?.writeText(o.blogUrl ?? o.url);
|
|
},
|
|
onToggleNotifications: () => {
|
|
u
|
|
? se.confirm(
|
|
"All update notifications will no longer be shown. Are you sure?",
|
|
) && e.toggleWhatsNewNotifications()
|
|
: e.toggleWhatsNewNotifications();
|
|
},
|
|
});
|
|
}, "WhatsNewScreen");
|
|
|
|
// src/manager/settings/whats_new_page.tsx
|
|
var uf = /* @__PURE__ */ a(
|
|
() => /* @__PURE__ */ s.createElement(lf, null),
|
|
"WhatsNewPage",
|
|
);
|
|
|
|
// src/manager/settings/index.tsx
|
|
var { document: cf } = se,
|
|
sw = I.div(({ theme: e }) => ({
|
|
display: "flex",
|
|
justifyContent: "space-between",
|
|
alignItems: "center",
|
|
height: 40,
|
|
boxShadow: `${e.appBorderColor} 0 -1px 0 0 inset`,
|
|
background: e.barBg,
|
|
paddingRight: 8,
|
|
})),
|
|
Zs = s.memo(
|
|
/* @__PURE__ */ a(function ({ changeTab: t, id: o, title: i }) {
|
|
return /* @__PURE__ */ s.createElement(dr, null, ({ path: r }) => {
|
|
let n = r.includes(`settings/${o}`);
|
|
return /* @__PURE__ */ s.createElement(
|
|
lr,
|
|
{
|
|
id: `tabbutton-${o}`,
|
|
className: ["tabbutton"]
|
|
.concat(n ? ["tabbutton-active"] : [])
|
|
.join(" "),
|
|
type: "button",
|
|
key: "id",
|
|
active: n,
|
|
onClick: () => t(o),
|
|
role: "tab",
|
|
},
|
|
i,
|
|
);
|
|
});
|
|
}, "TabBarButton"),
|
|
),
|
|
aw = I(ir)(({ theme: e }) => ({
|
|
background: e.background.content,
|
|
})),
|
|
lw = /* @__PURE__ */ a(
|
|
({
|
|
changeTab: e,
|
|
onClose: t,
|
|
enableShortcuts: o = !0,
|
|
enableWhatsNew: i,
|
|
}) => (
|
|
s.useEffect(() => {
|
|
let r = /* @__PURE__ */ a((n) => {
|
|
!o ||
|
|
n.repeat ||
|
|
(Et(!1, n) && $e("Escape", n) && (n.preventDefault(), t()));
|
|
}, "handleEscape");
|
|
return (
|
|
cf.addEventListener("keydown", r),
|
|
() => cf.removeEventListener("keydown", r)
|
|
);
|
|
}, [o, t]),
|
|
/* @__PURE__ */ s.createElement(
|
|
Ee,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(
|
|
sw,
|
|
{ className: "sb-bar" },
|
|
/* @__PURE__ */ s.createElement(
|
|
ar,
|
|
{ role: "tablist" },
|
|
/* @__PURE__ */ s.createElement(Zs, {
|
|
id: "about",
|
|
title: "About",
|
|
changeTab: e,
|
|
}),
|
|
i &&
|
|
/* @__PURE__ */ s.createElement(Zs, {
|
|
id: "whats-new",
|
|
title: "What's new?",
|
|
changeTab: e,
|
|
}),
|
|
/* @__PURE__ */ s.createElement(Zs, {
|
|
id: "shortcuts",
|
|
title:
|
|
"Keyboard shortc\
|
|
uts",
|
|
changeTab: e,
|
|
}),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
ee,
|
|
{
|
|
onClick: (r) => (r.preventDefault(), t()),
|
|
title: "Close settings page",
|
|
},
|
|
/* @__PURE__ */ s.createElement(je, null),
|
|
),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
aw,
|
|
{ vertical: !0, horizontal: !1 },
|
|
/* @__PURE__ */ s.createElement(
|
|
To,
|
|
{ path: "about" },
|
|
/* @__PURE__ */ s.createElement(tf, { key: "about" }),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
To,
|
|
{ path: "whats-new" },
|
|
/* @__PURE__ */ s.createElement(uf, {
|
|
key: "\
|
|
whats-new",
|
|
}),
|
|
),
|
|
/* @__PURE__ */ s.createElement(
|
|
To,
|
|
{ path: "shortcuts" },
|
|
/* @__PURE__ */ s.createElement(nf, { key: "shortcuts" }),
|
|
),
|
|
),
|
|
)
|
|
),
|
|
"P\
|
|
ages",
|
|
),
|
|
uw = /* @__PURE__ */ a(() => {
|
|
let e = oe(),
|
|
t = Ne(),
|
|
o = /* @__PURE__ */ a((i) => e.changeSettingsTab(i), "changeTab");
|
|
return /* @__PURE__ */ s.createElement(lw, {
|
|
enableWhatsNew: t.whatsNewData?.status === "SUCCESS",
|
|
enableShortcuts: t.ui.enableShortcuts,
|
|
changeTab: o,
|
|
onClose: e.closeSettings,
|
|
});
|
|
}, "SettingsPages"),
|
|
pf = {
|
|
id: "settings",
|
|
url: "/settings/",
|
|
title: "Settings",
|
|
type: be.experimental_PAGE,
|
|
render: /* @__PURE__ */ a(
|
|
() =>
|
|
/* @__PURE__ */ s.createElement(
|
|
To,
|
|
{ path: "/settings/", startsWith: !0 },
|
|
/* @__PURE__ */ s.createElement(uw, null),
|
|
),
|
|
"render",
|
|
),
|
|
};
|
|
|
|
// src/manager/index.tsx
|
|
ni.displayName = "ThemeProvider";
|
|
vt.displayName = "HelmetProvider";
|
|
var cw = /* @__PURE__ */ a(
|
|
({ provider: e }) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
vt,
|
|
{ key: "helmet.Provider" },
|
|
/* @__PURE__ */ s.createElement(
|
|
Ua,
|
|
{ key: "location.provider" },
|
|
/* @__PURE__ */ s.createElement(pw, { provider: e }),
|
|
),
|
|
),
|
|
"Root",
|
|
),
|
|
pw = /* @__PURE__ */ a(({ provider: e }) => {
|
|
let t = qa();
|
|
return /* @__PURE__ */ s.createElement(
|
|
dr,
|
|
{ key: "location.consumer" },
|
|
(o) =>
|
|
/* @__PURE__ */ s.createElement(
|
|
ba,
|
|
{
|
|
key: "manager",
|
|
provider: e,
|
|
...o,
|
|
navigate: t,
|
|
docsOptions: se?.DOCS_OPTIONS || {},
|
|
},
|
|
(i) => {
|
|
let { state: r, api: n } = i,
|
|
l = A(
|
|
(c) => {
|
|
n.setSizes(c);
|
|
},
|
|
[n],
|
|
),
|
|
u = G(
|
|
() => [
|
|
pf,
|
|
...Object.values(n.getElements(be.experimental_PAGE)),
|
|
],
|
|
[Object.keys(n.getElements(be.experimental_PAGE)).join()],
|
|
);
|
|
return /* @__PURE__ */ s.createElement(
|
|
ni,
|
|
{ key: "theme.provider", theme: Ta(r.theme) },
|
|
/* @__PURE__ */ s.createElement(
|
|
xl,
|
|
null,
|
|
/* @__PURE__ */ s.createElement(Zd, {
|
|
key: "app",
|
|
pages: u,
|
|
managerLayoutState: {
|
|
...r.layout,
|
|
viewMode: r.viewMode,
|
|
},
|
|
hasTab: !!n.getQueryParam("tab"),
|
|
setManagerLayoutState: l,
|
|
}),
|
|
),
|
|
);
|
|
},
|
|
),
|
|
);
|
|
}, "Main");
|
|
function df(e, t) {
|
|
if (!(t instanceof Yt)) throw new $a();
|
|
Ka(e).render(
|
|
/* @__PURE__ */ s.createElement(cw, { key: "root", provider: t }),
|
|
);
|
|
}
|
|
a(df, "renderStorybookUI");
|
|
|
|
// src/manager/runtime.tsx
|
|
var dw = "CORE/WS_DISCONNECTED";
|
|
He.register(bt, () =>
|
|
He.add(bt, {
|
|
title: bt,
|
|
type: be.TOOL,
|
|
match: /* @__PURE__ */ a(({ tabId: e }) => !e, "match"),
|
|
render: /* @__PURE__ */ a(
|
|
() => /* @__PURE__ */ s.createElement(ja, null),
|
|
"render",
|
|
),
|
|
}),
|
|
);
|
|
var ea = class ea extends Yt {
|
|
constructor() {
|
|
super();
|
|
this.wsDisconnected = !1;
|
|
let o = sa({ page: "manager" });
|
|
(He.setChannel(o),
|
|
o.emit(ua),
|
|
(this.addons = He),
|
|
(this.channel = o),
|
|
(se.__STORYBOOK_ADDONS_CHANNEL__ = o));
|
|
}
|
|
getElements(o) {
|
|
return this.addons.getElements(o);
|
|
}
|
|
getConfig() {
|
|
return this.addons.getConfig();
|
|
}
|
|
handleAPI(o) {
|
|
(this.addons.loadAddons(o),
|
|
this.channel.on(ca, (i) => {
|
|
((this.wsDisconnected = !0),
|
|
o.addNotification({
|
|
id: dw,
|
|
content: {
|
|
headline:
|
|
i.code === 3008 ? "Server timed out" : "Connection lost",
|
|
subHeadline:
|
|
"Please restart your Storybook server and reload the page",
|
|
},
|
|
icon: /* @__PURE__ */ s.createElement(Fn, { color: wa.negative }),
|
|
link: void 0,
|
|
}));
|
|
}));
|
|
}
|
|
};
|
|
a(ea, "ReactProvider");
|
|
var Js = ea,
|
|
{ document: fw } = se,
|
|
mw = fw.getElementById("root");
|
|
setTimeout(() => {
|
|
df(mw, new Js());
|
|
}, 0);
|