gensplore 0.0.8 → 0.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/dist/gensplore.cjs +9 -9
- package/dist/gensplore.js +418 -407
- package/dist/index.d.cts +10 -0
- package/dist/index.d.ts +10 -0
- package/package.json +1 -1
package/dist/gensplore.js
CHANGED
|
@@ -65,22 +65,22 @@ function B(e) {
|
|
|
65
65
|
for (var t = 1; t < arguments.length; t++) {
|
|
66
66
|
var n = arguments[t] == null ? {} : arguments[t];
|
|
67
67
|
t % 2 ? ee(Object(n), !0).forEach(function(t) {
|
|
68
|
-
|
|
68
|
+
te(e, t, n[t]);
|
|
69
69
|
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : ee(Object(n)).forEach(function(t) {
|
|
70
70
|
Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t));
|
|
71
71
|
});
|
|
72
72
|
}
|
|
73
73
|
return e;
|
|
74
74
|
}
|
|
75
|
-
function
|
|
76
|
-
return (t =
|
|
75
|
+
function te(e, t, n) {
|
|
76
|
+
return (t = V(t)) in e ? Object.defineProperty(e, t, {
|
|
77
77
|
value: n,
|
|
78
78
|
enumerable: !0,
|
|
79
79
|
configurable: !0,
|
|
80
80
|
writable: !0
|
|
81
81
|
}) : e[t] = n, e;
|
|
82
82
|
}
|
|
83
|
-
function
|
|
83
|
+
function V(e) {
|
|
84
84
|
var t = ne(e, "string");
|
|
85
85
|
return typeof t == "symbol" ? t : t + "";
|
|
86
86
|
}
|
|
@@ -227,7 +227,7 @@ var me = Object.defineProperty, he = (e, t, n) => t in e ? me(e, t, {
|
|
|
227
227
|
configurable: !0,
|
|
228
228
|
writable: !0,
|
|
229
229
|
value: n
|
|
230
|
-
}) : e[t] = n, ge = (e, t, n) => (he(e, typeof t == "symbol" ? t : t + "", n), n),
|
|
230
|
+
}) : e[t] = n, ge = (e, t, n) => (he(e, typeof t == "symbol" ? t : t + "", n), n), _e = new class {
|
|
231
231
|
constructor() {
|
|
232
232
|
ge(this, "current", this.detect()), ge(this, "handoffState", "pending"), ge(this, "currentId", 0);
|
|
233
233
|
}
|
|
@@ -258,11 +258,11 @@ var me = Object.defineProperty, he = (e, t, n) => t in e ? me(e, t, {
|
|
|
258
258
|
}();
|
|
259
259
|
//#endregion
|
|
260
260
|
//#region node_modules/@headlessui/react/dist/utils/owner.js
|
|
261
|
-
function
|
|
262
|
-
return
|
|
261
|
+
function H(e) {
|
|
262
|
+
return _e.isServer ? null : e == null ? document : e?.ownerDocument ?? document;
|
|
263
263
|
}
|
|
264
264
|
function ve(e) {
|
|
265
|
-
return
|
|
265
|
+
return _e.isServer ? null : e == null ? document : (e?.getRootNode)?.call(e) ?? document;
|
|
266
266
|
}
|
|
267
267
|
function ye(e) {
|
|
268
268
|
return ve(e)?.activeElement ?? null;
|
|
@@ -333,52 +333,52 @@ function Ce() {
|
|
|
333
333
|
}
|
|
334
334
|
//#endregion
|
|
335
335
|
//#region node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js
|
|
336
|
-
var
|
|
337
|
-
|
|
336
|
+
var U = (e, t) => {
|
|
337
|
+
_e.isServer ? d(e, t) : m(e, t);
|
|
338
338
|
};
|
|
339
339
|
//#endregion
|
|
340
340
|
//#region node_modules/@headlessui/react/dist/hooks/use-latest-value.js
|
|
341
|
-
function
|
|
341
|
+
function we(e) {
|
|
342
342
|
let t = _(e);
|
|
343
|
-
return
|
|
343
|
+
return U(() => {
|
|
344
344
|
t.current = e;
|
|
345
345
|
}, [e]), t;
|
|
346
346
|
}
|
|
347
347
|
//#endregion
|
|
348
348
|
//#region node_modules/@headlessui/react/dist/hooks/use-event.js
|
|
349
|
-
var
|
|
350
|
-
let n =
|
|
349
|
+
var W = function(e) {
|
|
350
|
+
let n = we(e);
|
|
351
351
|
return t.useCallback((...e) => n.current(...e), [n]);
|
|
352
352
|
};
|
|
353
353
|
//#endregion
|
|
354
354
|
//#region node_modules/@headlessui/react/dist/hooks/use-slot.js
|
|
355
|
-
function
|
|
355
|
+
function Te(e) {
|
|
356
356
|
return h(() => e, Object.values(e));
|
|
357
357
|
}
|
|
358
358
|
//#endregion
|
|
359
359
|
//#region node_modules/@headlessui/react/dist/internal/disabled.js
|
|
360
|
-
var
|
|
361
|
-
function
|
|
362
|
-
return u(
|
|
360
|
+
var Ee = i(void 0);
|
|
361
|
+
function De() {
|
|
362
|
+
return u(Ee);
|
|
363
363
|
}
|
|
364
364
|
//#endregion
|
|
365
365
|
//#region node_modules/@headlessui/react/dist/utils/class-names.js
|
|
366
|
-
function
|
|
366
|
+
function Oe(...e) {
|
|
367
367
|
return Array.from(new Set(e.flatMap((e) => typeof e == "string" ? e.split(" ") : []))).filter(Boolean).join(" ");
|
|
368
368
|
}
|
|
369
369
|
//#endregion
|
|
370
370
|
//#region node_modules/@headlessui/react/dist/utils/match.js
|
|
371
|
-
function
|
|
371
|
+
function ke(e, t, ...n) {
|
|
372
372
|
if (e in t) {
|
|
373
373
|
let r = t[e];
|
|
374
374
|
return typeof r == "function" ? r(...n) : r;
|
|
375
375
|
}
|
|
376
376
|
let r = /* @__PURE__ */ Error(`Tried to handle "${e}" but there is no handler defined. Only defined handlers are: ${Object.keys(t).map((e) => `"${e}"`).join(", ")}.`);
|
|
377
|
-
throw Error.captureStackTrace && Error.captureStackTrace(r,
|
|
377
|
+
throw Error.captureStackTrace && Error.captureStackTrace(r, ke), r;
|
|
378
378
|
}
|
|
379
379
|
//#endregion
|
|
380
380
|
//#region node_modules/@headlessui/react/dist/utils/render.js
|
|
381
|
-
var
|
|
381
|
+
var Ae = ((e) => (e[e.None = 0] = "None", e[e.RenderStrategy = 1] = "RenderStrategy", e[e.Static = 2] = "Static", e))(Ae || {}), je = ((e) => (e[e.Unmount = 0] = "Unmount", e[e.Hidden = 1] = "Hidden", e))(je || {});
|
|
382
382
|
function Me() {
|
|
383
383
|
let e = Fe();
|
|
384
384
|
return l((t) => Ne({
|
|
@@ -397,7 +397,7 @@ function Ne({ ourProps: e, theirProps: t, slot: n, defaultTag: r, features: i, v
|
|
|
397
397
|
}
|
|
398
398
|
if (l & 1) {
|
|
399
399
|
let { unmount: e = !0, ...t } = c;
|
|
400
|
-
return
|
|
400
|
+
return ke(+!e, {
|
|
401
401
|
0() {
|
|
402
402
|
return null;
|
|
403
403
|
},
|
|
@@ -437,7 +437,7 @@ function Pe(e, t = {}, n, i, o) {
|
|
|
437
437
|
["Add an `as=\"...\"` prop, to ensure that we render an actual element instead of a \"Fragment\".", "Render a single element as the child so that we can forward the props onto that element."].map((e) => ` - ${e}`).join("\n")
|
|
438
438
|
].join("\n"));
|
|
439
439
|
} else {
|
|
440
|
-
let e = p.props?.className, t = typeof e == "function" ? (...t) =>
|
|
440
|
+
let e = p.props?.className, t = typeof e == "function" ? (...t) => Oe(e(...t), d.className) : Oe(e, d.className), n = t ? { className: t } : {}, i = Le(p.props, ze(Be(d, ["ref"])));
|
|
441
441
|
for (let e in m) e in i && delete m[e];
|
|
442
442
|
return r(p, Object.assign({}, i, m, f, { ref: o(Ve(p), f.ref) }, n));
|
|
443
443
|
}
|
|
@@ -567,7 +567,7 @@ function it(...e) {
|
|
|
567
567
|
d(() => {
|
|
568
568
|
t.current = e;
|
|
569
569
|
}, [e]);
|
|
570
|
-
let n =
|
|
570
|
+
let n = W((e) => {
|
|
571
571
|
for (let n of t.current) n != null && (typeof n == "function" ? n(e) : n.current = e);
|
|
572
572
|
});
|
|
573
573
|
return e.every((e) => e == null || e?.[nt]) ? void 0 : n;
|
|
@@ -587,7 +587,7 @@ function ot() {
|
|
|
587
587
|
function st() {
|
|
588
588
|
let [e, n] = v([]);
|
|
589
589
|
return [e.length > 0 ? e.join(" ") : void 0, h(() => function(e) {
|
|
590
|
-
let r =
|
|
590
|
+
let r = W((e) => (n((t) => [...t, e]), () => n((t) => {
|
|
591
591
|
let n = t.slice(), r = n.indexOf(e);
|
|
592
592
|
return r !== -1 && n.splice(r, 1), n;
|
|
593
593
|
}))), i = h(() => ({
|
|
@@ -608,9 +608,9 @@ function st() {
|
|
|
608
608
|
}
|
|
609
609
|
var ct = "p";
|
|
610
610
|
function lt(e, t) {
|
|
611
|
-
let n = p(), r =
|
|
612
|
-
|
|
613
|
-
let c =
|
|
611
|
+
let n = p(), r = De(), { id: i = `headlessui-description-${n}`, ...a } = e, o = ot(), s = it(t);
|
|
612
|
+
U(() => o.register(i), [i, o.register]);
|
|
613
|
+
let c = Te({
|
|
614
614
|
...o.slot,
|
|
615
615
|
disabled: r || !1
|
|
616
616
|
}), l = {
|
|
@@ -1412,7 +1412,7 @@ var Rt = class extends Map {
|
|
|
1412
1412
|
t instanceof WeakSet ? t.add(e) : t.set(e, n);
|
|
1413
1413
|
}, Gt = (e, t, n, r) => (Ht(e, t, "write to private field"), r ? r.call(e, n) : t.set(e, n), n), Kt, qt, Jt, Yt = class {
|
|
1414
1414
|
constructor(e) {
|
|
1415
|
-
Wt(this, Kt, {}), Wt(this, qt, new Rt(() => /* @__PURE__ */ new Set())), Wt(this, Jt, /* @__PURE__ */ new Set()), Vt(this, "disposables", Se()), Gt(this, Kt, e),
|
|
1415
|
+
Wt(this, Kt, {}), Wt(this, qt, new Rt(() => /* @__PURE__ */ new Set())), Wt(this, Jt, /* @__PURE__ */ new Set()), Vt(this, "disposables", Se()), Gt(this, Kt, e), _e.isServer && this.disposables.microTask(() => {
|
|
1416
1416
|
this.dispose();
|
|
1417
1417
|
});
|
|
1418
1418
|
}
|
|
@@ -1423,7 +1423,7 @@ var Rt = class extends Map {
|
|
|
1423
1423
|
return Ut(this, Kt);
|
|
1424
1424
|
}
|
|
1425
1425
|
subscribe(e, t) {
|
|
1426
|
-
if (
|
|
1426
|
+
if (_e.isServer) return () => {};
|
|
1427
1427
|
let n = {
|
|
1428
1428
|
selector: e,
|
|
1429
1429
|
callback: t,
|
|
@@ -1434,7 +1434,7 @@ var Rt = class extends Map {
|
|
|
1434
1434
|
});
|
|
1435
1435
|
}
|
|
1436
1436
|
on(e, t) {
|
|
1437
|
-
return
|
|
1437
|
+
return _e.isServer ? () => {} : (Ut(this, qt).get(e).add(t), this.disposables.add(() => {
|
|
1438
1438
|
Ut(this, qt).get(e).delete(t);
|
|
1439
1439
|
}));
|
|
1440
1440
|
}
|
|
@@ -1517,7 +1517,7 @@ var $t = Object.defineProperty, en = (e, t, n) => t in e ? $t(e, t, {
|
|
|
1517
1517
|
return new e({ stack: [] });
|
|
1518
1518
|
}
|
|
1519
1519
|
reduce(e, t) {
|
|
1520
|
-
return
|
|
1520
|
+
return ke(t.type, rn, e, t);
|
|
1521
1521
|
}
|
|
1522
1522
|
}, on = new Rt(() => an.new()), sn = /* @__PURE__ */ j(((t, n) => {
|
|
1523
1523
|
n.exports = { ...e };
|
|
@@ -1617,7 +1617,7 @@ var $t = Object.defineProperty, en = (e, t, n) => t in e ? $t(e, t, {
|
|
|
1617
1617
|
t.exports = process.env.NODE_ENV === "production" ? cn() : ln();
|
|
1618
1618
|
})))();
|
|
1619
1619
|
function dn(e, t, n = Xt) {
|
|
1620
|
-
return (0, un.useSyncExternalStoreWithSelector)(
|
|
1620
|
+
return (0, un.useSyncExternalStoreWithSelector)(W((t) => e.subscribe(fn, t)), W(() => e.state), W(() => e.state), W(t), n);
|
|
1621
1621
|
}
|
|
1622
1622
|
function fn(e) {
|
|
1623
1623
|
return e;
|
|
@@ -1626,7 +1626,7 @@ function fn(e) {
|
|
|
1626
1626
|
//#region node_modules/@headlessui/react/dist/hooks/use-is-top-layer.js
|
|
1627
1627
|
function pn(e, t) {
|
|
1628
1628
|
let n = f(), r = on.get(t), [i, a] = dn(r, l((e) => [r.selectors.isTop(e, n), r.selectors.inStack(e, n)], [r, n]));
|
|
1629
|
-
return
|
|
1629
|
+
return U(() => {
|
|
1630
1630
|
if (e) return r.actions.push(n), () => r.actions.pop(n);
|
|
1631
1631
|
}, [
|
|
1632
1632
|
r,
|
|
@@ -1652,14 +1652,14 @@ function _n(e) {
|
|
|
1652
1652
|
}
|
|
1653
1653
|
function vn(e, { allowed: t, disallowed: n } = {}) {
|
|
1654
1654
|
let r = pn(e, "inert-others");
|
|
1655
|
-
|
|
1655
|
+
U(() => {
|
|
1656
1656
|
if (!r) return;
|
|
1657
1657
|
let e = Se();
|
|
1658
1658
|
for (let t of n?.() ?? []) t && e.add(gn(t));
|
|
1659
1659
|
let i = t?.() ?? [];
|
|
1660
1660
|
for (let t of i) {
|
|
1661
1661
|
if (!t) continue;
|
|
1662
|
-
let n =
|
|
1662
|
+
let n = H(t);
|
|
1663
1663
|
if (!n) continue;
|
|
1664
1664
|
let r = t.parentElement;
|
|
1665
1665
|
for (; r && r !== n.body;) {
|
|
@@ -1677,7 +1677,7 @@ function vn(e, { allowed: t, disallowed: n } = {}) {
|
|
|
1677
1677
|
//#endregion
|
|
1678
1678
|
//#region node_modules/@headlessui/react/dist/hooks/use-on-disappear.js
|
|
1679
1679
|
function yn(e, t, n) {
|
|
1680
|
-
let r =
|
|
1680
|
+
let r = we((e) => {
|
|
1681
1681
|
let t = e.getBoundingClientRect();
|
|
1682
1682
|
t.x === 0 && t.y === 0 && t.width === 0 && t.height === 0 && n();
|
|
1683
1683
|
});
|
|
@@ -1723,7 +1723,7 @@ function En(e = document.body) {
|
|
|
1723
1723
|
}
|
|
1724
1724
|
var Dn = ((e) => (e[e.Strict = 0] = "Strict", e[e.Loose = 1] = "Loose", e))(Dn || {});
|
|
1725
1725
|
function On(e, t = 0) {
|
|
1726
|
-
return e !==
|
|
1726
|
+
return e !== H(e)?.body && ke(t, {
|
|
1727
1727
|
0() {
|
|
1728
1728
|
return e.matches(bn);
|
|
1729
1729
|
},
|
|
@@ -1798,7 +1798,7 @@ function Ln() {
|
|
|
1798
1798
|
//#endregion
|
|
1799
1799
|
//#region node_modules/@headlessui/react/dist/hooks/use-document-event.js
|
|
1800
1800
|
function Rn(e, t, n, r) {
|
|
1801
|
-
let i =
|
|
1801
|
+
let i = we(n);
|
|
1802
1802
|
d(() => {
|
|
1803
1803
|
if (!e) return;
|
|
1804
1804
|
function n(e) {
|
|
@@ -1814,7 +1814,7 @@ function Rn(e, t, n, r) {
|
|
|
1814
1814
|
//#endregion
|
|
1815
1815
|
//#region node_modules/@headlessui/react/dist/hooks/use-window-event.js
|
|
1816
1816
|
function zn(e, t, n, r) {
|
|
1817
|
-
let i =
|
|
1817
|
+
let i = we(n);
|
|
1818
1818
|
d(() => {
|
|
1819
1819
|
if (!e) return;
|
|
1820
1820
|
function n(e) {
|
|
@@ -1831,7 +1831,7 @@ function zn(e, t, n, r) {
|
|
|
1831
1831
|
//#region node_modules/@headlessui/react/dist/hooks/use-outside-click.js
|
|
1832
1832
|
var Bn = 30;
|
|
1833
1833
|
function Vn(e, t, n) {
|
|
1834
|
-
let r =
|
|
1834
|
+
let r = we(n), i = l(function(e, n) {
|
|
1835
1835
|
if (e.defaultPrevented) return;
|
|
1836
1836
|
let i = n(e);
|
|
1837
1837
|
if (i === null || !i.getRootNode().contains(i) || !i.isConnected) return;
|
|
@@ -1865,12 +1865,12 @@ function Vn(e, t, n) {
|
|
|
1865
1865
|
//#endregion
|
|
1866
1866
|
//#region node_modules/@headlessui/react/dist/hooks/use-owner.js
|
|
1867
1867
|
function Hn(...e) {
|
|
1868
|
-
return h(() =>
|
|
1868
|
+
return h(() => H(...e), [...e]);
|
|
1869
1869
|
}
|
|
1870
1870
|
//#endregion
|
|
1871
1871
|
//#region node_modules/@headlessui/react/dist/hooks/use-event-listener.js
|
|
1872
1872
|
function Un(e, t, n, r) {
|
|
1873
|
-
let i =
|
|
1873
|
+
let i = we(n);
|
|
1874
1874
|
d(() => {
|
|
1875
1875
|
e ??= window;
|
|
1876
1876
|
function n(e) {
|
|
@@ -2029,7 +2029,7 @@ Xn.subscribe(() => {
|
|
|
2029
2029
|
//#region node_modules/@headlessui/react/dist/hooks/document-overflow/use-document-overflow.js
|
|
2030
2030
|
function Zn(e, t, n = () => ({ containers: [] })) {
|
|
2031
2031
|
let r = Wn(Xn), i = t ? r.get(t) : void 0, a = i ? i.count > 0 : !1;
|
|
2032
|
-
return
|
|
2032
|
+
return U(() => {
|
|
2033
2033
|
if (t && e) return Xn.dispatch("PUSH", t, n), () => Xn.dispatch("POP", t, n);
|
|
2034
2034
|
}, [e, t]), a;
|
|
2035
2035
|
}
|
|
@@ -2071,7 +2071,7 @@ function tr(e) {
|
|
|
2071
2071
|
}
|
|
2072
2072
|
function nr(e, t, n, r) {
|
|
2073
2073
|
let [i, a] = v(n), { hasFlag: o, addFlag: s, removeFlag: c } = $n(e && i ? 3 : 0), l = _(!1), u = _(!1);
|
|
2074
|
-
return
|
|
2074
|
+
return U(() => {
|
|
2075
2075
|
var i;
|
|
2076
2076
|
if (e) {
|
|
2077
2077
|
if (n && a(!0), !t) {
|
|
@@ -2146,7 +2146,7 @@ function or(e) {
|
|
|
2146
2146
|
//#endregion
|
|
2147
2147
|
//#region node_modules/@headlessui/react/dist/hooks/use-watch.js
|
|
2148
2148
|
function sr(e, t) {
|
|
2149
|
-
let n = _([]), r =
|
|
2149
|
+
let n = _([]), r = W(e);
|
|
2150
2150
|
d(() => {
|
|
2151
2151
|
let e = [...n.current];
|
|
2152
2152
|
for (let [i, a] of t.entries()) if (n.current[i] !== a) {
|
|
@@ -2191,7 +2191,7 @@ pr(() => {
|
|
|
2191
2191
|
//#endregion
|
|
2192
2192
|
//#region node_modules/@headlessui/react/dist/hooks/use-on-unmount.js
|
|
2193
2193
|
function hr(e) {
|
|
2194
|
-
let t =
|
|
2194
|
+
let t = W(e), n = _(!1);
|
|
2195
2195
|
d(() => (n.current = !1, () => {
|
|
2196
2196
|
n.current = !0, xe(() => {
|
|
2197
2197
|
n.current && t();
|
|
@@ -2205,10 +2205,10 @@ function gr() {
|
|
|
2205
2205
|
return "useSyncExternalStore" in e && ((e) => e.useSyncExternalStore)(e)(() => () => {}, () => !1, () => !t);
|
|
2206
2206
|
}
|
|
2207
2207
|
function _r() {
|
|
2208
|
-
let t = gr(), [n, r] = e.useState(
|
|
2209
|
-
return n &&
|
|
2208
|
+
let t = gr(), [n, r] = e.useState(_e.isHandoffComplete);
|
|
2209
|
+
return n && _e.isHandoffComplete === !1 && r(!1), e.useEffect(() => {
|
|
2210
2210
|
n !== !0 && r(!0);
|
|
2211
|
-
}, [n]), e.useEffect(() =>
|
|
2211
|
+
}, [n]), e.useEffect(() => _e.handoff(), []), !t && n;
|
|
2212
2212
|
}
|
|
2213
2213
|
//#endregion
|
|
2214
2214
|
//#region node_modules/@headlessui/react/dist/internal/portal-force-root.js
|
|
@@ -2224,7 +2224,7 @@ function br(e) {
|
|
|
2224
2224
|
function xr(e) {
|
|
2225
2225
|
let t = yr(), n = u(Er), [r, i] = v(() => {
|
|
2226
2226
|
if (!t && n !== null) return n.current ?? null;
|
|
2227
|
-
if (
|
|
2227
|
+
if (_e.isServer) return null;
|
|
2228
2228
|
let r = e?.getElementById("headlessui-portal-root");
|
|
2229
2229
|
if (r) return r;
|
|
2230
2230
|
if (e === null) return null;
|
|
@@ -2287,7 +2287,7 @@ function Dr(e, n) {
|
|
|
2287
2287
|
}
|
|
2288
2288
|
var Or = i(null);
|
|
2289
2289
|
function kr() {
|
|
2290
|
-
let e = u(Or), n = _([]), r =
|
|
2290
|
+
let e = u(Or), n = _([]), r = W((t) => (n.current.push(t), e && e.register(t), () => i(t))), i = W((t) => {
|
|
2291
2291
|
let r = n.current.indexOf(t);
|
|
2292
2292
|
r !== -1 && n.current.splice(r, 1), e && e.unregister(t);
|
|
2293
2293
|
}), a = h(() => ({
|
|
@@ -2316,7 +2316,7 @@ function Nr(e, t = typeof document < "u" ? document.defaultView : null, n) {
|
|
|
2316
2316
|
//#region node_modules/@headlessui/react/dist/hooks/use-is-touch-device.js
|
|
2317
2317
|
function Pr() {
|
|
2318
2318
|
let [e] = v(() => typeof window < "u" && typeof window.matchMedia == "function" ? window.matchMedia("(pointer: coarse)") : null), [t, n] = v(e?.matches ?? !1);
|
|
2319
|
-
return
|
|
2319
|
+
return U(() => {
|
|
2320
2320
|
if (!e) return;
|
|
2321
2321
|
function t(e) {
|
|
2322
2322
|
n(e.matches);
|
|
@@ -2327,8 +2327,8 @@ function Pr() {
|
|
|
2327
2327
|
//#endregion
|
|
2328
2328
|
//#region node_modules/@headlessui/react/dist/hooks/use-root-containers.js
|
|
2329
2329
|
function Fr({ defaultContainers: e = [], portals: t, mainTreeNode: n } = {}) {
|
|
2330
|
-
let r =
|
|
2331
|
-
let r =
|
|
2330
|
+
let r = W(() => {
|
|
2331
|
+
let r = H(n), i = [];
|
|
2332
2332
|
for (let t of e) t !== null && (Xe(t) ? i.push(t) : "current" in t && Xe(t.current) && i.push(t.current));
|
|
2333
2333
|
if (t != null && t.current) for (let e of t.current) i.push(e);
|
|
2334
2334
|
for (let e of r?.querySelectorAll("html > *, body > *") ?? []) e !== document.body && e !== document.head && Xe(e) && e.id !== "headlessui-portal-root" && (n && (e.contains(n) || e.contains(n?.getRootNode()?.host)) || i.some((t) => e.contains(t)) || i.push(e));
|
|
@@ -2336,7 +2336,7 @@ function Fr({ defaultContainers: e = [], portals: t, mainTreeNode: n } = {}) {
|
|
|
2336
2336
|
});
|
|
2337
2337
|
return {
|
|
2338
2338
|
resolveContainers: r,
|
|
2339
|
-
contains:
|
|
2339
|
+
contains: W((e) => r().some((t) => t.contains(e)))
|
|
2340
2340
|
};
|
|
2341
2341
|
}
|
|
2342
2342
|
var Ir = i(null);
|
|
@@ -2346,7 +2346,7 @@ function Lr({ children: e, node: n }) {
|
|
|
2346
2346
|
features: Ke.Hidden,
|
|
2347
2347
|
ref: (e) => {
|
|
2348
2348
|
if (e) {
|
|
2349
|
-
for (let t of
|
|
2349
|
+
for (let t of H(e)?.querySelectorAll("html > *, body > *") ?? []) if (t !== document.body && t !== document.head && Xe(t) && t != null && t.contains(e)) {
|
|
2350
2350
|
i(t);
|
|
2351
2351
|
break;
|
|
2352
2352
|
}
|
|
@@ -2361,7 +2361,7 @@ function Rr(e = null) {
|
|
|
2361
2361
|
//#region node_modules/@headlessui/react/dist/hooks/use-is-mounted.js
|
|
2362
2362
|
function zr() {
|
|
2363
2363
|
let e = _(!1);
|
|
2364
|
-
return
|
|
2364
|
+
return U(() => (e.current = !0, () => {
|
|
2365
2365
|
e.current = !1;
|
|
2366
2366
|
}), []), e;
|
|
2367
2367
|
}
|
|
@@ -2401,11 +2401,11 @@ function Gr(e, n) {
|
|
|
2401
2401
|
containers: s,
|
|
2402
2402
|
previousActiveElement: d
|
|
2403
2403
|
});
|
|
2404
|
-
let f = Vr(), p =
|
|
2404
|
+
let f = Vr(), p = W((e) => {
|
|
2405
2405
|
if (!Ze(r.current)) return;
|
|
2406
2406
|
let t = r.current;
|
|
2407
2407
|
((e) => e())(() => {
|
|
2408
|
-
|
|
2408
|
+
ke(f.current, {
|
|
2409
2409
|
[Br.Forwards]: () => {
|
|
2410
2410
|
Pn(t, Sn.First, { skipElements: [e.relatedTarget, o] });
|
|
2411
2411
|
},
|
|
@@ -2426,7 +2426,7 @@ function Gr(e, n) {
|
|
|
2426
2426
|
let t = Hr(s);
|
|
2427
2427
|
Ze(r.current) && t.add(r.current);
|
|
2428
2428
|
let n = e.relatedTarget;
|
|
2429
|
-
Qe(n) && n.dataset.headlessuiFocusGuard !== "true" && (Qr(t, n) || (g.current ? Pn(r.current,
|
|
2429
|
+
Qe(n) && n.dataset.headlessuiFocusGuard !== "true" && (Qr(t, n) || (g.current ? Pn(r.current, ke(f.current, {
|
|
2430
2430
|
[Br.Forwards]: () => Sn.Next,
|
|
2431
2431
|
[Br.Backwards]: () => Sn.Previous
|
|
2432
2432
|
}) | Sn.WrapAround, { relativeTo: e.target }) : Qe(e.target) && An(e.target)));
|
|
@@ -2462,7 +2462,7 @@ function Jr(e = !0) {
|
|
|
2462
2462
|
e,
|
|
2463
2463
|
mr,
|
|
2464
2464
|
t
|
|
2465
|
-
]),
|
|
2465
|
+
]), W(() => t.current.find((e) => e != null && e.isConnected) ?? null);
|
|
2466
2466
|
}
|
|
2467
2467
|
function Yr(e, { ownerDocument: t }) {
|
|
2468
2468
|
let n = !!(e & 8), r = Jr(n);
|
|
@@ -2549,35 +2549,35 @@ function ai(e) {
|
|
|
2549
2549
|
return "children" in e ? ai(e.children) : e.current.filter(({ el: e }) => e.current !== null).filter(({ state: e }) => e === "visible").length > 0;
|
|
2550
2550
|
}
|
|
2551
2551
|
function oi(e, t) {
|
|
2552
|
-
let n =
|
|
2552
|
+
let n = we(e), r = _([]), i = zr(), a = Ce(), o = W((e, t = je.Hidden) => {
|
|
2553
2553
|
let o = r.current.findIndex(({ el: t }) => t === e);
|
|
2554
|
-
o !== -1 && (
|
|
2555
|
-
[
|
|
2554
|
+
o !== -1 && (ke(t, {
|
|
2555
|
+
[je.Unmount]() {
|
|
2556
2556
|
r.current.splice(o, 1);
|
|
2557
2557
|
},
|
|
2558
|
-
[
|
|
2558
|
+
[je.Hidden]() {
|
|
2559
2559
|
r.current[o].state = "hidden";
|
|
2560
2560
|
}
|
|
2561
2561
|
}), a.microTask(() => {
|
|
2562
2562
|
var e;
|
|
2563
2563
|
!ai(r) && i.current && ((e = n.current) == null || e.call(n));
|
|
2564
2564
|
}));
|
|
2565
|
-
}), s =
|
|
2565
|
+
}), s = W((e) => {
|
|
2566
2566
|
let t = r.current.find(({ el: t }) => t === e);
|
|
2567
2567
|
return t ? t.state !== "visible" && (t.state = "visible") : r.current.push({
|
|
2568
2568
|
el: e,
|
|
2569
2569
|
state: "visible"
|
|
2570
|
-
}), () => o(e,
|
|
2570
|
+
}), () => o(e, je.Unmount);
|
|
2571
2571
|
}), c = _([]), l = _(Promise.resolve()), u = _({
|
|
2572
2572
|
enter: [],
|
|
2573
2573
|
leave: []
|
|
2574
|
-
}), d =
|
|
2574
|
+
}), d = W((e, n, r) => {
|
|
2575
2575
|
c.current.splice(0), t && (t.chains.current[n] = t.chains.current[n].filter(([t]) => t !== e)), t?.chains.current[n].push([e, new Promise((e) => {
|
|
2576
2576
|
c.current.push(e);
|
|
2577
2577
|
})]), t?.chains.current[n].push([e, new Promise((e) => {
|
|
2578
2578
|
Promise.all(u.current[n].map(([e, t]) => t)).then(() => e());
|
|
2579
2579
|
})]), n === "enter" ? l.current = l.current.then(() => t?.wait.current).then(() => r(n)) : r(n);
|
|
2580
|
-
}), f =
|
|
2580
|
+
}), f = W((e, t, n) => {
|
|
2581
2581
|
Promise.all(u.current[t].splice(0).map(([e, t]) => t)).then(() => {
|
|
2582
2582
|
var e;
|
|
2583
2583
|
(e = c.current.shift()) == null || e();
|
|
@@ -2601,21 +2601,21 @@ function oi(e, t) {
|
|
|
2601
2601
|
l
|
|
2602
2602
|
]);
|
|
2603
2603
|
}
|
|
2604
|
-
var si = n, ci =
|
|
2604
|
+
var si = n, ci = Ae.RenderStrategy;
|
|
2605
2605
|
function li(e, n) {
|
|
2606
2606
|
var r;
|
|
2607
2607
|
let { transition: i = !0, beforeEnter: a, afterEnter: o, beforeLeave: s, afterLeave: c, enter: l, enterFrom: u, enterTo: f, entered: p, leave: m, leaveFrom: h, leaveTo: g, ...y } = e, [b, x] = v(null), S = _(null), C = $r(e), w = it(...C ? [
|
|
2608
2608
|
S,
|
|
2609
2609
|
n,
|
|
2610
2610
|
x
|
|
2611
|
-
] : n === null ? [] : [n]), T = (r = y.unmount) == null || r ?
|
|
2612
|
-
|
|
2613
|
-
if (T ===
|
|
2611
|
+
] : n === null ? [] : [n]), T = (r = y.unmount) == null || r ? je.Unmount : je.Hidden, { show: E, appear: D, initial: O } = ni(), [k, A] = v(E ? "visible" : "hidden"), j = ri(), { register: M, unregister: N } = j;
|
|
2612
|
+
U(() => M(S), [M, S]), U(() => {
|
|
2613
|
+
if (T === je.Hidden && S.current) {
|
|
2614
2614
|
if (E && k !== "visible") {
|
|
2615
2615
|
A("visible");
|
|
2616
2616
|
return;
|
|
2617
2617
|
}
|
|
2618
|
-
return
|
|
2618
|
+
return ke(k, {
|
|
2619
2619
|
hidden: () => N(S),
|
|
2620
2620
|
visible: () => M(S)
|
|
2621
2621
|
});
|
|
@@ -2629,7 +2629,7 @@ function li(e, n) {
|
|
|
2629
2629
|
T
|
|
2630
2630
|
]);
|
|
2631
2631
|
let P = _r();
|
|
2632
|
-
|
|
2632
|
+
U(() => {
|
|
2633
2633
|
if (C && P && k === "visible" && S.current === null) throw Error("Did you forget to passthrough the `ref` to the actual DOM node?");
|
|
2634
2634
|
}, [
|
|
2635
2635
|
S,
|
|
@@ -2639,13 +2639,13 @@ function li(e, n) {
|
|
|
2639
2639
|
]);
|
|
2640
2640
|
let F = O && !D, I = D && E && O, L = _(!1), R = oi(() => {
|
|
2641
2641
|
L.current || (A("hidden"), N(S));
|
|
2642
|
-
}, j), z =
|
|
2642
|
+
}, j), z = W((e) => {
|
|
2643
2643
|
L.current = !0;
|
|
2644
2644
|
let t = e ? "enter" : "leave";
|
|
2645
2645
|
R.onStart(S, t, (e) => {
|
|
2646
2646
|
e === "enter" ? a?.() : e === "leave" && s?.();
|
|
2647
2647
|
});
|
|
2648
|
-
}), ee =
|
|
2648
|
+
}), ee = W((e) => {
|
|
2649
2649
|
let t = e ? "enter" : "leave";
|
|
2650
2650
|
L.current = !1, R.onStop(S, t, (e) => {
|
|
2651
2651
|
e === "enter" ? o?.() : e === "leave" && c?.();
|
|
@@ -2661,15 +2661,15 @@ function li(e, n) {
|
|
|
2661
2661
|
let [, B] = nr(!(!i || !C || !P || F), b, E, {
|
|
2662
2662
|
start: z,
|
|
2663
2663
|
end: ee
|
|
2664
|
-
}),
|
|
2664
|
+
}), te = ze({
|
|
2665
2665
|
ref: w,
|
|
2666
|
-
className:
|
|
2666
|
+
className: Oe(y.className, I && l, I && u, B.enter && l, B.enter && B.closed && u, B.enter && !B.closed && f, B.leave && m, B.leave && !B.closed && h, B.leave && B.closed && g, !B.transition && E && p)?.trim() || void 0,
|
|
2667
2667
|
...tr(B)
|
|
2668
|
-
}),
|
|
2669
|
-
k === "visible" && (
|
|
2668
|
+
}), V = 0;
|
|
2669
|
+
k === "visible" && (V |= lr.Open), k === "hidden" && (V |= lr.Closed), E && k === "hidden" && (V |= lr.Opening), !E && k === "visible" && (V |= lr.Closing);
|
|
2670
2670
|
let ne = Me();
|
|
2671
|
-
return t.createElement(ii.Provider, { value: R }, t.createElement(dr, { value:
|
|
2672
|
-
ourProps:
|
|
2671
|
+
return t.createElement(ii.Provider, { value: R }, t.createElement(dr, { value: V }, ne({
|
|
2672
|
+
ourProps: te,
|
|
2673
2673
|
theirProps: y,
|
|
2674
2674
|
defaultTag: si,
|
|
2675
2675
|
features: ci,
|
|
@@ -2685,7 +2685,7 @@ function ui(e, r) {
|
|
|
2685
2685
|
let [d, f] = v(i ? "visible" : "hidden"), p = oi(() => {
|
|
2686
2686
|
i || f("hidden");
|
|
2687
2687
|
}), [m, g] = v(!0), y = _([i]);
|
|
2688
|
-
|
|
2688
|
+
U(() => {
|
|
2689
2689
|
m !== !1 && y.current[y.current.length - 1] !== i && (y.current.push(i), g(!1));
|
|
2690
2690
|
}, [y, i]);
|
|
2691
2691
|
let b = h(() => ({
|
|
@@ -2697,13 +2697,13 @@ function ui(e, r) {
|
|
|
2697
2697
|
a,
|
|
2698
2698
|
m
|
|
2699
2699
|
]);
|
|
2700
|
-
|
|
2700
|
+
U(() => {
|
|
2701
2701
|
i ? f("visible") : !ai(p) && c.current !== null && f("hidden");
|
|
2702
2702
|
}, [i, p]);
|
|
2703
|
-
let x = { unmount: o }, S =
|
|
2703
|
+
let x = { unmount: o }, S = W(() => {
|
|
2704
2704
|
var t;
|
|
2705
2705
|
m && g(!1), (t = e.beforeEnter) == null || t.call(e);
|
|
2706
|
-
}), C =
|
|
2706
|
+
}), C = W(() => {
|
|
2707
2707
|
var t;
|
|
2708
2708
|
m && g(!1), (t = e.beforeLeave) == null || t.call(e);
|
|
2709
2709
|
}), w = Me();
|
|
@@ -2755,7 +2755,7 @@ function bi(e) {
|
|
|
2755
2755
|
return t;
|
|
2756
2756
|
}
|
|
2757
2757
|
function xi(e, t) {
|
|
2758
|
-
return
|
|
2758
|
+
return ke(t.type, vi, e, t);
|
|
2759
2759
|
}
|
|
2760
2760
|
var Si = Re(function(e, n) {
|
|
2761
2761
|
let r = p(), { id: i = `headlessui-dialog-${r}`, open: a, onClose: s, initialFocus: c, role: u = "dialog", autoFocus: d = !0, __demoMode: f = !1, unmount: m = !1, ...v } = e, y = _(!1);
|
|
@@ -2768,7 +2768,7 @@ var Si = Re(function(e, n) {
|
|
|
2768
2768
|
titleId: null,
|
|
2769
2769
|
descriptionId: null,
|
|
2770
2770
|
panelRef: o()
|
|
2771
|
-
}), D =
|
|
2771
|
+
}), D = W(() => s(!1)), O = W((e) => E({
|
|
2772
2772
|
type: 0,
|
|
2773
2773
|
id: e
|
|
2774
2774
|
})), k = _r() ? w === 0 : !1, [A, j] = kr(), M = { get current() {
|
|
@@ -2779,11 +2779,11 @@ var Si = Re(function(e, n) {
|
|
|
2779
2779
|
defaultContainers: [M]
|
|
2780
2780
|
}), F = b !== null && (b & lr.Closing) === lr.Closing;
|
|
2781
2781
|
vn(f || F ? !1 : k, {
|
|
2782
|
-
allowed:
|
|
2783
|
-
disallowed:
|
|
2782
|
+
allowed: W(() => [x.current?.closest("[data-headlessui-portal]") ?? null]),
|
|
2783
|
+
disallowed: W(() => [N?.closest("body > *:not(#headlessui-portal-root)") ?? null])
|
|
2784
2784
|
});
|
|
2785
2785
|
let I = on.get(null);
|
|
2786
|
-
|
|
2786
|
+
U(() => {
|
|
2787
2787
|
if (k) return I.actions.push(i), () => I.actions.pop(i);
|
|
2788
2788
|
}, [
|
|
2789
2789
|
I,
|
|
@@ -2807,7 +2807,7 @@ var Si = Re(function(e, n) {
|
|
|
2807
2807
|
O,
|
|
2808
2808
|
m,
|
|
2809
2809
|
T
|
|
2810
|
-
]), B =
|
|
2810
|
+
]), B = Te({ open: w === 0 }), te = {
|
|
2811
2811
|
ref: S,
|
|
2812
2812
|
id: i,
|
|
2813
2813
|
role: u,
|
|
@@ -2816,8 +2816,8 @@ var Si = Re(function(e, n) {
|
|
|
2816
2816
|
"aria-labelledby": T.titleId,
|
|
2817
2817
|
"aria-describedby": R,
|
|
2818
2818
|
unmount: m
|
|
2819
|
-
},
|
|
2820
|
-
k && !f && (ne |= Wr.RestoreFocus, ne |= Wr.TabLock, d && (ne |= Wr.AutoFocus),
|
|
2819
|
+
}, V = !Pr(), ne = Wr.None;
|
|
2820
|
+
k && !f && (ne |= Wr.RestoreFocus, ne |= Wr.TabLock, d && (ne |= Wr.AutoFocus), V && (ne |= Wr.InitialFocus));
|
|
2821
2821
|
let re = Me();
|
|
2822
2822
|
return t.createElement(fr, null, t.createElement(br, { force: !0 }, t.createElement(Mr, null, t.createElement(yi.Provider, { value: ee }, t.createElement(jr, { target: x }, t.createElement(br, { force: !1 }, t.createElement(z, { slot: B }, t.createElement(j, null, t.createElement(qr, {
|
|
2823
2823
|
initialFocus: c,
|
|
@@ -2825,7 +2825,7 @@ var Si = Re(function(e, n) {
|
|
|
2825
2825
|
containers: P,
|
|
2826
2826
|
features: ne
|
|
2827
2827
|
}, t.createElement(mt, { value: D }, re({
|
|
2828
|
-
ourProps:
|
|
2828
|
+
ourProps: te,
|
|
2829
2829
|
theirProps: v,
|
|
2830
2830
|
slot: B,
|
|
2831
2831
|
defaultTag: Ci,
|
|
@@ -2833,7 +2833,7 @@ var Si = Re(function(e, n) {
|
|
|
2833
2833
|
visible: w === 0,
|
|
2834
2834
|
name: "Dialog"
|
|
2835
2835
|
})))))))))));
|
|
2836
|
-
}), Ci = "div", wi =
|
|
2836
|
+
}), Ci = "div", wi = Ae.RenderStrategy | Ae.Static;
|
|
2837
2837
|
function Ti(e, n) {
|
|
2838
2838
|
let { transition: r = !1, open: i, ...a } = e, o = ur(), s = e.hasOwnProperty("open") || o !== null, c = e.hasOwnProperty("onClose");
|
|
2839
2839
|
if (!s && !c) throw Error("You have to provide an `open` and an `onClose` prop to the `Dialog` component.");
|
|
@@ -2856,10 +2856,10 @@ function Ti(e, n) {
|
|
|
2856
2856
|
}
|
|
2857
2857
|
var Ei = "div";
|
|
2858
2858
|
function Di(e, r) {
|
|
2859
|
-
let i = p(), { id: a = `headlessui-dialog-panel-${i}`, transition: o = !1, ...s } = e, [{ dialogState: c, unmount: l }, u] = bi("Dialog.Panel"), d = it(r, u.panelRef), f =
|
|
2859
|
+
let i = p(), { id: a = `headlessui-dialog-panel-${i}`, transition: o = !1, ...s } = e, [{ dialogState: c, unmount: l }, u] = bi("Dialog.Panel"), d = it(r, u.panelRef), f = Te({ open: c === 0 }), m = {
|
|
2860
2860
|
ref: d,
|
|
2861
2861
|
id: a,
|
|
2862
|
-
onClick:
|
|
2862
|
+
onClick: W((e) => {
|
|
2863
2863
|
e.stopPropagation();
|
|
2864
2864
|
})
|
|
2865
2865
|
}, h = o ? mi : n, g = o ? { unmount: l } : {}, _ = Me();
|
|
@@ -2873,7 +2873,7 @@ function Di(e, r) {
|
|
|
2873
2873
|
}
|
|
2874
2874
|
var Oi = "div";
|
|
2875
2875
|
function ki(e, r) {
|
|
2876
|
-
let { transition: i = !1, ...a } = e, [{ dialogState: o, unmount: s }] = bi("Dialog.Backdrop"), c =
|
|
2876
|
+
let { transition: i = !1, ...a } = e, [{ dialogState: o, unmount: s }] = bi("Dialog.Backdrop"), c = Te({ open: o === 0 }), l = {
|
|
2877
2877
|
ref: r,
|
|
2878
2878
|
"aria-hidden": !0
|
|
2879
2879
|
}, u = i ? mi : n, d = i ? { unmount: s } : {}, f = Me();
|
|
@@ -2889,7 +2889,7 @@ var Ai = "h2";
|
|
|
2889
2889
|
function ji(e, t) {
|
|
2890
2890
|
let n = p(), { id: r = `headlessui-dialog-title-${n}`, ...i } = e, [{ dialogState: a, setTitleId: o }] = bi("Dialog.Title"), s = it(t);
|
|
2891
2891
|
d(() => (o(r), () => o(null)), [r, o]);
|
|
2892
|
-
let c =
|
|
2892
|
+
let c = Te({ open: a === 0 }), l = {
|
|
2893
2893
|
ref: s,
|
|
2894
2894
|
id: r
|
|
2895
2895
|
};
|
|
@@ -2907,7 +2907,7 @@ var Pi = Re(ji), Fi = Object.assign(Mi, {
|
|
|
2907
2907
|
Panel: Ni,
|
|
2908
2908
|
Title: Pi,
|
|
2909
2909
|
Description: dt
|
|
2910
|
-
}), Ii = "
|
|
2910
|
+
}), Ii = "function e(e,t){if(!t||typeof t.sequence!=`string`)throw Error(`Expected an aligned DNA sequence.`);let n=t.sequence.toUpperCase();if(!e.length||n.length!==e.length)throw Error(`Aligned sequence length must match the reference.`);if(/[^ACGTRYSWKMBDHVN-]/.test(n))throw Error(`Aligned sequences must contain IUPAC DNA bases or deletion gaps (-).`);let r=[],i=0;for(let t=0;t<n.length;){if(n[t]===e[t]){t++;continue}let a=n[t]===`-`?`Deletion`:/[^ACGT]/.test(n[t]+e[t])?`Ambiguous`:`Substitution`,o=t+1;if(a===`Deletion`||a===`Ambiguous`)for(;o<n.length&&n[o]!==e[o]&&(a===`Deletion`?n[o]===`-`:n[o]!==`-`&&/[^ACGT]/.test(n[o]+e[o]));)o++;r.push({type:a,start:t,end:o,reference:e.slice(t,o),alternative:a===`Deletion`?``:n.slice(t,o)}),i+=o-t,t=o}let a=new Set;for(let n of t.insertions||[]){let t=n.position,o=typeof n.sequence==`string`?n.sequence.toUpperCase():``;if(!Number.isInteger(t)||t<0||t>e.length||a.has(t))throw Error(`Insertions need unique integer positions from 0 to the reference length.`);if(!o||/[^ACGTRYSWKMBDHVN]/.test(o))throw Error(`Insertions must contain ungapped IUPAC DNA bases.`);a.add(t),r.push({type:`Insertion`,start:t,end:t,reference:``,alternative:o}),i+=o.length}return r.sort((e,t)=>e.start-t.start||e.end-t.end),{name:t.name||`Alternative`,distance:i,differences:r}}const t=e=>{switch(e){case`TTT`:case`TTC`:return`F`;case`TTA`:case`TTG`:case`CTT`:case`CTC`:case`CTA`:case`CTG`:return`L`;case`ATT`:case`ATC`:case`ATA`:return`I`;case`ATG`:return`M`;case`GTT`:case`GTC`:case`GTA`:case`GTG`:return`V`;case`TCT`:case`TCC`:case`TCA`:case`TCG`:case`AGT`:case`AGC`:return`S`;case`CCT`:case`CCC`:case`CCA`:case`CCG`:return`P`;case`ACT`:case`ACC`:case`ACA`:case`ACG`:return`T`;case`GCT`:case`GCC`:case`GCA`:case`GCG`:return`A`;case`TAT`:case`TAC`:return`Y`;case`TAA`:case`TAG`:case`TGA`:return`*`;case`CAT`:case`CAC`:return`H`;case`CAA`:case`CAG`:return`Q`;case`AAT`:case`AAC`:return`N`;case`AAA`:case`AAG`:return`K`;case`GAT`:case`GAC`:return`D`;case`GAA`:case`GAG`:return`E`;case`TGT`:case`TGC`:return`C`;case`TGG`:return`W`;case`CGT`:case`CGC`:case`CGA`:case`CGG`:case`AGA`:case`AGG`:return`R`;case`GGT`:case`GGC`:case`GGA`:case`GGG`:return`G`;default:return`X`}};function n(e){let t=e.trim().split(/\\r?\\n/);if(!t[0]?.startsWith(`>`))throw Error(`Expected a FASTA header starting with >.`);if(t.slice(1).some(e=>e.startsWith(`>`)))throw Error(`Please supply exactly one FASTA record.`);let n=t.slice(1).join(``).replace(/\\s/g,``).toUpperCase();if(!n||/[^ACGTRYSWKMBDHVN]/.test(n))throw Error(`Expected an ungapped DNA sequence (IUPAC bases).`);return{name:t[0].slice(1).trim()||`Alternative`,sequence:n}}function r(e,t,n=128){let r=e.length,i=t.length;if(!r||!i)throw Error(`Both sequences must contain bases.`);if(Math.max(r,i)>1e5)throw Error(`Comparison supports sequences up to 100,000 bases.`);let a=()=>Error(`Sequences exceed the ${n}-edit comparison limit. Use complete sequences in the same orientation and with the same starting point.`);if(Math.abs(r-i)>n)throw a();let o=2*n+1,s=n+1,c=s*s,l=new Uint8Array((r+1)*o),u=(e,t,n)=>e<=t&&e<=n?0:t<=n?1:2,d=new Uint32Array(o*3).fill(c);d[n*3]=0;for(let e=1;e<=Math.min(i,n);e++)d[(e+n)*3+2]=e*s+1,l[e+n]=(e===1?0:2)<<4;for(let a=1;a<=r;a++){let r=new Uint32Array(o*3).fill(c);for(let f=Math.max(0,a-n);f<=Math.min(i,a+n);f++){let i=f-a+n,p=i*3;if(f===0){r[p+1]=a*s+1,l[a*o+i]=(a===1?0:1)<<2;continue}let m=u(d[p],d[p+1],d[p+2]);r[p]=Math.min(c,d[p+m]+(e[a-1]===t[f-1]?0:s));let h=0,g=0;if(i+1<o){let e=p+3,t=d[e]+s+1,n=d[e+1]+s,i=d[e+2]+s+1;h=u(t,n,i),r[p+1]=Math.min(c,t,n,i)}if(i>0){let e=p-3,t=r[e]+s+1,n=r[e+1]+s+1,i=r[e+2]+s;g=u(t,n,i),r[p+2]=Math.min(c,t,n,i)}l[a*o+i]=m|h<<2|g<<4}d=r}let f=(i-r+n)*3,p=u(d[f],d[f+1],d[f+2]),m=Math.floor(d[f+p]/s);if(m>n)throw a();let h=r,g=i,_=[];for(;h||g;){let r=l[h*o+g-h+n]>>p*2&3;p===0?_.push([e[--h],t[--g]]):p===1?_.push([e[--h],`-`]):_.push([`-`,t[--g]]),p=r}_.reverse();let v=[],y=0;for(let[e,t]of _){if(e!==t){let n=e===`-`?`Insertion`:t===`-`?`Deletion`:/[^ACGT]/.test(e+t)?`Ambiguous`:`Substitution`,r=v.at(-1);r&&r.type===n&&n!==`Substitution`&&n!==`Ambiguous`&&r.end===y?(r.reference+=e===`-`?``:e,r.alternative+=t===`-`?``:t,r.end+=e===`-`?0:1):v.push({type:n,start:y,end:y+(e===`-`?0:1),reference:e===`-`?``:e,alternative:t===`-`?``:t})}e!==`-`&&y++}return{distance:m,differences:v}}function i(e,t){return e.locations?.length?e.locations:e.start>e.end?[{start:e.start,end:t-1},{start:0,end:e.end}]:[{start:e.start,end:e.end}]}const a={A:`T`,T:`A`,C:`G`,G:`C`,R:`Y`,Y:`R`,S:`S`,W:`W`,K:`M`,M:`K`,B:`V`,V:`B`,D:`H`,H:`D`,N:`N`},o=e=>[...e].reverse().map(e=>a[e]||`N`).join(``),s=e=>{let n=``;for(let r=0;r+2<e.length;r+=3)n+=t(e.slice(r,r+3));return n},c=(e,t,n)=>{let r=e.notes?.[t];return(Array.isArray(r)?r[0]:r)??n};function l(e,t,n){if(![`CDS`,`mat_peptide`].includes(t.type))return null;let a=i(t,e.length),l=[];for(let t of a){if(!Number.isInteger(t.start)||!Number.isInteger(t.end)||t.start<0||t.end>=e.length||t.end<t.start)return{warning:`Unsupported coding location`,codons:[],changes:[]};for(let e=t.start;e<=t.end;e++)l.push(e)}t.strand<0&&l.reverse();let u=Number(c(t,`codon_start`,1))-1;if(![0,1,2].includes(u))return{warning:`Unsupported codon_start`,codons:[],changes:[]};l.splice(0,u);let d=Number(c(t,`transl_table`,1));if(![1,11].includes(d)||[`transl_except`,`ribosomal_slippage`,`exception`].some(e=>t.notes?.[e]))return{warning:`AA comparison unavailable for this translation table or exception`,codons:[],changes:[]};let f=new Map(l.map((e,t)=>[e,t])),p=e=>t.strand<0?o(e):e,m=l.map(t=>p(e[t])).join(``),h=s(m),g=[...h].map((e,t)=>({positions:l.slice(t*3,t*3+3),aminoAcid:e,codonIndex:t})),_=new Set,v=new Map,y=new Map,b=1/0,x=!1;for(let e of n)if(e.type===`Insertion`){let n=t.strand<0?e.start-1:e.start,r=f.get(n),i=t.strand<0?e.start:e.start-1;r>0&&l[r-1]===i?(y.set(r,p(e.alternative)),e.alternative.length%3&&(b=Math.min(b,r))):(f.has(n)||f.has(i))&&(x=!0)}else if(e.type===`Deletion`){let t=[];for(let n=e.start;n<e.end;n++){let e=f.get(n);e!==void 0&&(_.add(e),t.push(e))}t.length%3&&(b=Math.min(b,...t))}else for(let t=e.start;t<e.end;t++){let n=f.get(t);n!==void 0&&v.set(n,p(e.alternative[t-e.start]))}let S=``,C=[];for(let e=0;e<l.length;e++)C[e]=S.length,S+=y.get(e)||``,_.has(e)||(S+=v.get(e)??m[e]);let w=Math.floor(b/3),T=Number.isFinite(b)?h.slice(0,w):h,E=s(Number.isFinite(b)?S.slice(0,C[w*3]):S),D=[],O=e=>{let n=Math.min(e.start,Math.max(0,g.length-1)),r=g[n],i=e.start<g.length?(r?.positions[0]??l[0])+(t.strand<0?.5:-.5):(r?.positions[2]??l[0])+(t.strand<0?-.5:.5);return{...e,anchor:r?.positions[1]??l[0],...e.type===`Insertion`?{pointerPosition:i}:{},aaPosition:e.type===`Insertion`?e.start:e.start+1}};try{T&&E?D=r(T,E).differences.map(e=>O({...e,type:e.type===`Ambiguous`?/X/.test(e.reference+e.alternative)?`Ambiguous`:`Substitution`:e.type})):(T||E)&&(D=[O({type:T?`Deletion`:`Insertion`,start:0,end:T.length,reference:T,alternative:E})])}catch{return{codons:g,changes:[],warning:`AA comparison exceeds the alignment limit`}}return Number.isFinite(b)&&D.push(O({type:`Frameshift`,start:w,end:w+1,reference:``,alternative:``})),{codons:g,changes:D,warning:x?`Insertion at a coding boundary: AA assignment is uncertain`:void 0}}function u(e,t,n){return t.map(t=>l(e,t,n))}self.onmessage=({data:t})=>{try{let i=t.alignedSequence||n(t.fasta),a=t.alignedSequence?e(t.reference,i):r(t.reference,i.sequence);self.postMessage({...a,name:i.name,proteins:u(t.reference,t.features||[],a.differences)})}catch(e){self.postMessage({error:e.message})}};", Li = typeof self < "u" && self.Blob && new Blob(["URL.revokeObjectURL(import.meta.url);", Ii], { type: "text/javascript;charset=utf-8" });
|
|
2911
2911
|
function Ri(e) {
|
|
2912
2912
|
let t;
|
|
2913
2913
|
try {
|
|
@@ -2928,80 +2928,88 @@ function Ri(e) {
|
|
|
2928
2928
|
}
|
|
2929
2929
|
//#endregion
|
|
2930
2930
|
//#region src/components/ComparisonPanel.jsx
|
|
2931
|
-
function zi({ reference: e, features: t, fastaUrl: n,
|
|
2932
|
-
let [
|
|
2931
|
+
function zi({ reference: e, features: t, fastaUrl: n, alignedSequence: r, onResult: i, onGoTo: a, open: o, setOpen: s, onStatus: c }) {
|
|
2932
|
+
let [l, u] = v(null), [f, p] = v(n || ""), [m, h] = v(0), [g, y] = v(n || ""), [C, w] = v(""), [T, E] = v(!1), [D, O] = v(null), k = _(0), A = _();
|
|
2933
2933
|
d(() => {
|
|
2934
|
-
|
|
2935
|
-
|
|
2936
|
-
|
|
2934
|
+
(r || A.current) && (k.current++, u(null), y("")), A.current = r;
|
|
2935
|
+
}, [r]), d(() => {
|
|
2936
|
+
c({
|
|
2937
|
+
busy: T,
|
|
2938
|
+
error: C
|
|
2937
2939
|
});
|
|
2938
2940
|
}, [
|
|
2939
|
-
|
|
2940
|
-
|
|
2941
|
-
|
|
2941
|
+
T,
|
|
2942
|
+
C,
|
|
2943
|
+
c
|
|
2942
2944
|
]), d(() => {
|
|
2943
|
-
|
|
2944
|
-
}, [
|
|
2945
|
-
let
|
|
2946
|
-
|
|
2945
|
+
C && s(!0);
|
|
2946
|
+
}, [C, s]);
|
|
2947
|
+
let j = () => {
|
|
2948
|
+
O(null), i(null), w("");
|
|
2947
2949
|
};
|
|
2948
2950
|
d(() => {
|
|
2949
|
-
|
|
2950
|
-
}, [n,
|
|
2951
|
-
if (!
|
|
2952
|
-
let e = new AbortController(), t = ++
|
|
2953
|
-
return
|
|
2951
|
+
p(n || ""), y(n || ""), n || (k.current++, u(null), O(null), i(null), w(""), E(!1));
|
|
2952
|
+
}, [n, i]), d(() => {
|
|
2953
|
+
if (!g || r) return;
|
|
2954
|
+
let e = new AbortController(), t = ++k.current;
|
|
2955
|
+
return j(), u(null), E(!0), (async () => {
|
|
2954
2956
|
try {
|
|
2955
|
-
let n = new URL(
|
|
2957
|
+
let n = new URL(g, window.location.href);
|
|
2956
2958
|
if (!["http:", "https:"].includes(n.protocol)) throw Error("Use an HTTP or HTTPS URL.");
|
|
2957
2959
|
let r = await fetch(n, { signal: e.signal });
|
|
2958
2960
|
if (!r.ok) throw Error(`FASTA request failed (${r.status}).`);
|
|
2959
2961
|
let i = await r.text();
|
|
2960
2962
|
if (i.length > 1e6) throw Error("FASTA file is too large.");
|
|
2961
|
-
t ===
|
|
2963
|
+
t === k.current && u(i);
|
|
2962
2964
|
} catch (n) {
|
|
2963
|
-
!e.signal.aborted && t ===
|
|
2965
|
+
!e.signal.aborted && t === k.current && (w(n.message), E(!1));
|
|
2964
2966
|
}
|
|
2965
2967
|
})(), () => e.abort();
|
|
2966
|
-
}, [
|
|
2967
|
-
|
|
2968
|
-
|
|
2968
|
+
}, [
|
|
2969
|
+
g,
|
|
2970
|
+
m,
|
|
2971
|
+
r
|
|
2972
|
+
]), d(() => {
|
|
2973
|
+
if (l === null && !r) {
|
|
2974
|
+
O(null), i(null);
|
|
2969
2975
|
return;
|
|
2970
2976
|
}
|
|
2971
|
-
|
|
2972
|
-
let n = new Ri(),
|
|
2977
|
+
j(), E(!0);
|
|
2978
|
+
let n = new Ri(), a = k.current, o = !1;
|
|
2973
2979
|
return n.onmessage = ({ data: e }) => {
|
|
2974
|
-
|
|
2980
|
+
o || a !== k.current || (E(!1), e.error ? w(e.error) : (O(e), i(e)));
|
|
2975
2981
|
}, n.onerror = () => {
|
|
2976
|
-
|
|
2982
|
+
o || a !== k.current || (w("Alignment failed. Please try another FASTA."), E(!1));
|
|
2977
2983
|
}, n.postMessage({
|
|
2978
2984
|
reference: e,
|
|
2979
2985
|
features: t,
|
|
2980
|
-
fasta:
|
|
2986
|
+
fasta: l,
|
|
2987
|
+
alignedSequence: r
|
|
2981
2988
|
}), () => {
|
|
2982
|
-
|
|
2989
|
+
o = !0, n.terminate();
|
|
2983
2990
|
};
|
|
2984
2991
|
}, [
|
|
2985
2992
|
e,
|
|
2986
2993
|
t,
|
|
2987
|
-
|
|
2988
|
-
r
|
|
2994
|
+
l,
|
|
2995
|
+
r,
|
|
2996
|
+
i
|
|
2989
2997
|
]);
|
|
2990
|
-
let
|
|
2998
|
+
let M = async (e) => {
|
|
2991
2999
|
if (!e) return;
|
|
2992
|
-
let t = ++
|
|
2993
|
-
|
|
3000
|
+
let t = ++k.current;
|
|
3001
|
+
y(""), u(null), j(), E(!0);
|
|
2994
3002
|
try {
|
|
2995
3003
|
if (e.size > 1e6) throw Error("FASTA file is too large.");
|
|
2996
3004
|
let n = await e.text();
|
|
2997
|
-
t ===
|
|
3005
|
+
t === k.current && u(n);
|
|
2998
3006
|
} catch (e) {
|
|
2999
|
-
t ===
|
|
3007
|
+
t === k.current && (w(e.message), E(!1));
|
|
3000
3008
|
}
|
|
3001
3009
|
};
|
|
3002
3010
|
return /* @__PURE__ */ S(Fi, {
|
|
3003
|
-
open:
|
|
3004
|
-
onClose: () =>
|
|
3011
|
+
open: o,
|
|
3012
|
+
onClose: () => s(!1),
|
|
3005
3013
|
className: "gensplore comparison-drawer",
|
|
3006
3014
|
children: [/* @__PURE__ */ x("div", {
|
|
3007
3015
|
className: "comparison-drawer-overlay",
|
|
@@ -3013,7 +3021,7 @@ function zi({ reference: e, features: t, fastaUrl: n, onResult: r, onGoTo: i, op
|
|
|
3013
3021
|
className: "comparison-drawer-header",
|
|
3014
3022
|
children: [/* @__PURE__ */ x(Pi, { children: "Compare FASTA" }), /* @__PURE__ */ x("button", {
|
|
3015
3023
|
type: "button",
|
|
3016
|
-
onClick: () =>
|
|
3024
|
+
onClick: () => s(!1),
|
|
3017
3025
|
"aria-label": "Close comparison",
|
|
3018
3026
|
children: "×"
|
|
3019
3027
|
})]
|
|
@@ -3021,66 +3029,68 @@ function zi({ reference: e, features: t, fastaUrl: n, onResult: r, onGoTo: i, op
|
|
|
3021
3029
|
className: "comparison-panel",
|
|
3022
3030
|
"aria-label": "Compare FASTA",
|
|
3023
3031
|
children: [
|
|
3024
|
-
/* @__PURE__ */ S(
|
|
3025
|
-
|
|
3026
|
-
|
|
3027
|
-
|
|
3028
|
-
|
|
3029
|
-
|
|
3030
|
-
|
|
3031
|
-
|
|
3032
|
-
|
|
3033
|
-
|
|
3034
|
-
|
|
3035
|
-
|
|
3036
|
-
|
|
3037
|
-
|
|
3038
|
-
|
|
3039
|
-
|
|
3040
|
-
|
|
3041
|
-
|
|
3042
|
-
|
|
3043
|
-
|
|
3044
|
-
|
|
3045
|
-
|
|
3046
|
-
|
|
3047
|
-
|
|
3048
|
-
|
|
3049
|
-
|
|
3050
|
-
|
|
3051
|
-
|
|
3052
|
-
|
|
3053
|
-
|
|
3054
|
-
|
|
3032
|
+
!r && /* @__PURE__ */ S(b, { children: [
|
|
3033
|
+
/* @__PURE__ */ S("label", { children: ["FASTA file ", /* @__PURE__ */ x("input", {
|
|
3034
|
+
type: "file",
|
|
3035
|
+
accept: ".fa,.fasta,.fna,.txt",
|
|
3036
|
+
onChange: (e) => {
|
|
3037
|
+
M(e.target.files[0]), e.target.value = "";
|
|
3038
|
+
}
|
|
3039
|
+
})] }),
|
|
3040
|
+
/* @__PURE__ */ S("form", {
|
|
3041
|
+
onSubmit: (e) => {
|
|
3042
|
+
e.preventDefault(), y(f.trim()), h((e) => e + 1);
|
|
3043
|
+
},
|
|
3044
|
+
children: [/* @__PURE__ */ S("label", { children: ["FASTA URL ", /* @__PURE__ */ x("input", {
|
|
3045
|
+
type: "text",
|
|
3046
|
+
inputMode: "url",
|
|
3047
|
+
className: "comparison-url",
|
|
3048
|
+
value: f,
|
|
3049
|
+
onChange: (e) => p(e.target.value),
|
|
3050
|
+
placeholder: "https://example.org/alternative.fasta",
|
|
3051
|
+
required: !0
|
|
3052
|
+
})] }), /* @__PURE__ */ x("button", {
|
|
3053
|
+
type: "submit",
|
|
3054
|
+
children: "Load URL"
|
|
3055
|
+
})]
|
|
3056
|
+
}),
|
|
3057
|
+
(l !== null || g || D || C || T) && /* @__PURE__ */ x("button", {
|
|
3058
|
+
onClick: () => {
|
|
3059
|
+
k.current++, y(""), u(null), E(!1), j();
|
|
3060
|
+
},
|
|
3061
|
+
children: "Clear"
|
|
3062
|
+
})
|
|
3063
|
+
] }),
|
|
3064
|
+
T && /* @__PURE__ */ x("p", {
|
|
3055
3065
|
role: "status",
|
|
3056
3066
|
children: "Loading / aligning FASTA…"
|
|
3057
3067
|
}),
|
|
3058
|
-
|
|
3068
|
+
C && /* @__PURE__ */ x("p", {
|
|
3059
3069
|
role: "alert",
|
|
3060
|
-
children:
|
|
3070
|
+
children: C
|
|
3061
3071
|
}),
|
|
3062
|
-
|
|
3072
|
+
D && /* @__PURE__ */ S(b, { children: [
|
|
3063
3073
|
/* @__PURE__ */ S("p", {
|
|
3064
3074
|
role: "status",
|
|
3065
3075
|
className: "comparison-summary",
|
|
3066
3076
|
children: [/* @__PURE__ */ S("strong", { children: [
|
|
3067
|
-
|
|
3077
|
+
D.differences.length,
|
|
3068
3078
|
" ",
|
|
3069
|
-
|
|
3079
|
+
D.differences.length === 1 ? "change" : "changes"
|
|
3070
3080
|
] }), /* @__PURE__ */ x("span", {
|
|
3071
|
-
title:
|
|
3072
|
-
children:
|
|
3081
|
+
title: D.name,
|
|
3082
|
+
children: D.name
|
|
3073
3083
|
})]
|
|
3074
3084
|
}),
|
|
3075
|
-
|
|
3085
|
+
D.proteins?.some((e) => e?.warning) && /* @__PURE__ */ x("ul", {
|
|
3076
3086
|
"aria-label": "Amino-acid comparison notes",
|
|
3077
|
-
children:
|
|
3087
|
+
children: D.proteins.map((e, n) => e?.warning && /* @__PURE__ */ S("li", { children: [
|
|
3078
3088
|
t[n].name,
|
|
3079
3089
|
": ",
|
|
3080
3090
|
e.warning
|
|
3081
3091
|
] }, n))
|
|
3082
3092
|
}),
|
|
3083
|
-
|
|
3093
|
+
D.differences.length > 0 && /* @__PURE__ */ x("div", {
|
|
3084
3094
|
className: "comparison-table",
|
|
3085
3095
|
children: /* @__PURE__ */ S("table", { children: [/* @__PURE__ */ x("thead", { children: /* @__PURE__ */ S("tr", { children: [
|
|
3086
3096
|
/* @__PURE__ */ x("th", {
|
|
@@ -3091,14 +3101,14 @@ function zi({ reference: e, features: t, fastaUrl: n, onResult: r, onGoTo: i, op
|
|
|
3091
3101
|
/* @__PURE__ */ x("th", { children: "Reference" }),
|
|
3092
3102
|
/* @__PURE__ */ x("th", { children: "Alternative" }),
|
|
3093
3103
|
/* @__PURE__ */ x("th", { "aria-label": "Navigate" })
|
|
3094
|
-
] }) }), /* @__PURE__ */ x("tbody", { children:
|
|
3104
|
+
] }) }), /* @__PURE__ */ x("tbody", { children: D.differences.map((t, n) => /* @__PURE__ */ S("tr", { children: [
|
|
3095
3105
|
/* @__PURE__ */ x("td", { children: t.type === "Insertion" ? `After ${t.start}` : t.end > t.start + 1 ? `${t.start + 1}–${t.end}` : t.start + 1 }),
|
|
3096
3106
|
/* @__PURE__ */ x("td", { children: t.type }),
|
|
3097
3107
|
/* @__PURE__ */ x("td", { children: t.reference || "—" }),
|
|
3098
3108
|
/* @__PURE__ */ x("td", { children: t.alternative || "—" }),
|
|
3099
3109
|
/* @__PURE__ */ x("td", { children: /* @__PURE__ */ x("button", {
|
|
3100
3110
|
onClick: () => {
|
|
3101
|
-
|
|
3111
|
+
s(!1), requestAnimationFrame(() => a(Math.min(t.start, e.length - 1)));
|
|
3102
3112
|
},
|
|
3103
3113
|
children: "Go to"
|
|
3104
3114
|
}) })
|
|
@@ -4278,8 +4288,8 @@ var Ao = ({ parsedSequence: e, rowStart: t, rowEnd: n, setHoveredInfo: r, rowId:
|
|
|
4278
4288
|
R.forEach((e, t) => {
|
|
4279
4289
|
z[t] = t * 20 + ee, ee += e.length ? 12 + e.length * 26 : 0;
|
|
4280
4290
|
}), L += ee;
|
|
4281
|
-
let B = Math.ceil(j / (t > 1e4 ? 60 : 40)),
|
|
4282
|
-
|
|
4291
|
+
let B = Math.ceil(j / (t > 1e4 ? 60 : 40)), te = Math.ceil(T.length / B);
|
|
4292
|
+
te = [
|
|
4283
4293
|
5,
|
|
4284
4294
|
10,
|
|
4285
4295
|
20,
|
|
@@ -4300,8 +4310,8 @@ var Ao = ({ parsedSequence: e, rowStart: t, rowEnd: n, setHoveredInfo: r, rowId:
|
|
|
4300
4310
|
2e6,
|
|
4301
4311
|
5e6,
|
|
4302
4312
|
1e7
|
|
4303
|
-
].find((e) => e >=
|
|
4304
|
-
let
|
|
4313
|
+
].find((e) => e >= te) || te;
|
|
4314
|
+
let V = t % te, ne = Math.floor((n - t) / te) + 1, re = Array.from({ length: ne }, (e, n) => (n + 1) * te + t - V - 1).map((e, r) => {
|
|
4305
4315
|
let i = (e - t) / (n - t) * j;
|
|
4306
4316
|
return /* @__PURE__ */ S("g", { children: [/* @__PURE__ */ x("line", {
|
|
4307
4317
|
x1: i,
|
|
@@ -5702,17 +5712,17 @@ function Ps(e) {
|
|
|
5702
5712
|
//#endregion
|
|
5703
5713
|
//#region node_modules/rc-slider/es/Slider.js
|
|
5704
5714
|
var Fs = /*#__PURE__*/ e.forwardRef(function(t, n) {
|
|
5705
|
-
var r = t.prefixCls, i = r === void 0 ? "rc-slider" : r, a = t.className, o = t.style, s = t.classNames, c = t.styles, l = t.id, u = t.disabled, d = u !== void 0 && u, f = t.keyboard, p = f === void 0 || f, m = t.autoFocus, h = t.onFocus, g = t.onBlur, _ = t.min, v = _ === void 0 ? 0 : _, y = t.max, b = y === void 0 ? 100 : y, x = t.step, S = x === void 0 ? 1 : x, C = t.value, w = t.defaultValue, T = t.range, E = t.count, D = t.onChange, O = t.onBeforeChange, k = t.onAfterChange, A = t.onChangeComplete, j = t.allowCross, M = j === void 0 || j, N = t.pushable, P = N !== void 0 && N, F = t.reverse, I = t.vertical, L = t.included, R = L === void 0 || L, z = t.startPoint, ee = t.trackStyle, B = t.handleStyle,
|
|
5715
|
+
var r = t.prefixCls, i = r === void 0 ? "rc-slider" : r, a = t.className, o = t.style, s = t.classNames, c = t.styles, l = t.id, u = t.disabled, d = u !== void 0 && u, f = t.keyboard, p = f === void 0 || f, m = t.autoFocus, h = t.onFocus, g = t.onBlur, _ = t.min, v = _ === void 0 ? 0 : _, y = t.max, b = y === void 0 ? 100 : y, x = t.step, S = x === void 0 ? 1 : x, C = t.value, w = t.defaultValue, T = t.range, E = t.count, D = t.onChange, O = t.onBeforeChange, k = t.onAfterChange, A = t.onChangeComplete, j = t.allowCross, M = j === void 0 || j, N = t.pushable, P = N !== void 0 && N, F = t.reverse, I = t.vertical, L = t.included, R = L === void 0 || L, z = t.startPoint, ee = t.trackStyle, B = t.handleStyle, te = t.railStyle, V = t.dotStyle, ne = t.activeDotStyle, re = t.marks, ie = t.dots, ae = t.handleRender, oe = t.activeHandleRender, se = t.track, ce = t.tabIndex, le = ce === void 0 ? 0 : ce, ue = t.ariaLabelForHandle, de = t.ariaLabelledByForHandle, fe = t.ariaRequired, pe = t.ariaValueTextFormatterForHandle, me = e.useRef(null), he = e.useRef(null), ge = e.useMemo(function() {
|
|
5706
5716
|
return I ? F ? "ttb" : "btt" : F ? "rtl" : "ltr";
|
|
5707
|
-
}, [F, I]),
|
|
5717
|
+
}, [F, I]), _e = Ko(Ps(T), 5), H = _e[0], ve = _e[1], ye = _e[2], be = _e[3], xe = _e[4], Se = e.useMemo(function() {
|
|
5708
5718
|
return isFinite(v) ? v : 0;
|
|
5709
5719
|
}, [v]), Ce = e.useMemo(function() {
|
|
5710
5720
|
return isFinite(b) ? b : 100;
|
|
5711
|
-
}, [b]),
|
|
5721
|
+
}, [b]), U = e.useMemo(function() {
|
|
5712
5722
|
return S !== null && S <= 0 ? 1 : S;
|
|
5713
|
-
}, [S]),
|
|
5714
|
-
return typeof P == "boolean" ? P ?
|
|
5715
|
-
}, [P,
|
|
5723
|
+
}, [S]), we = e.useMemo(function() {
|
|
5724
|
+
return typeof P == "boolean" ? P ? U : !1 : P >= 0 && P;
|
|
5725
|
+
}, [P, U]), W = e.useMemo(function() {
|
|
5716
5726
|
return Object.keys(re || {}).map(function(t) {
|
|
5717
5727
|
var n = re[t], r = { value: Number(t) };
|
|
5718
5728
|
return n && jo(n) === "object" && !/*#__PURE__*/ e.isValidElement(n) && ("label" in n || "style" in n) ? (r.style = n.style, r.label = n.label) : r.label = n, r;
|
|
@@ -5722,10 +5732,10 @@ var Fs = /*#__PURE__*/ e.forwardRef(function(t, n) {
|
|
|
5722
5732
|
}).sort(function(e, t) {
|
|
5723
5733
|
return e.value - t.value;
|
|
5724
5734
|
});
|
|
5725
|
-
}, [re]),
|
|
5726
|
-
var e =
|
|
5727
|
-
if (
|
|
5728
|
-
if (n = Ho(e), E ||
|
|
5735
|
+
}, [re]), Te = Ko(Ns(Se, Ce, U, W, M, we), 2), Ee = Te[0], De = Te[1], Oe = Ko(ts(w, { value: C }), 2), ke = Oe[0], Ae = Oe[1], je = e.useMemo(function() {
|
|
5736
|
+
var e = ke == null ? [] : Array.isArray(ke) ? ke : [ke], t = Ko(e, 1)[0], n = ke === null ? [] : [t === void 0 ? Se : t];
|
|
5737
|
+
if (H) {
|
|
5738
|
+
if (n = Ho(e), E || ke === void 0) {
|
|
5729
5739
|
var r = E >= 0 ? E + 1 : 2;
|
|
5730
5740
|
for (n = n.slice(0, r); n.length < r;) n.push(n[n.length - 1] ?? Se);
|
|
5731
5741
|
}
|
|
@@ -5734,41 +5744,41 @@ var Fs = /*#__PURE__*/ e.forwardRef(function(t, n) {
|
|
|
5734
5744
|
});
|
|
5735
5745
|
}
|
|
5736
5746
|
return n.forEach(function(e, t) {
|
|
5737
|
-
n[t] =
|
|
5747
|
+
n[t] = Ee(e);
|
|
5738
5748
|
}), n;
|
|
5739
5749
|
}, [
|
|
5740
|
-
|
|
5741
|
-
|
|
5750
|
+
ke,
|
|
5751
|
+
H,
|
|
5742
5752
|
Se,
|
|
5743
5753
|
E,
|
|
5744
|
-
|
|
5754
|
+
Ee
|
|
5745
5755
|
]), Me = function(e) {
|
|
5746
|
-
return
|
|
5756
|
+
return H ? e : e[0];
|
|
5747
5757
|
}, Ne = Jo(function(e) {
|
|
5748
5758
|
var t = Ho(e).sort(function(e, t) {
|
|
5749
5759
|
return e - t;
|
|
5750
5760
|
});
|
|
5751
|
-
D && !ds(t,
|
|
5761
|
+
D && !ds(t, je, !0) && D(Me(t)), Ae(t);
|
|
5752
5762
|
}), Pe = Jo(function(e) {
|
|
5753
5763
|
e && me.current.hideHelp();
|
|
5754
|
-
var t = Me(
|
|
5764
|
+
var t = Me(je);
|
|
5755
5765
|
k?.(t), ls(!k, "[rc-slider] `onAfterChange` is deprecated. Please use `onChangeComplete` instead."), A?.(t);
|
|
5756
5766
|
}), Fe = function(e) {
|
|
5757
|
-
if (!(d || !ve ||
|
|
5758
|
-
var t = Ho(
|
|
5767
|
+
if (!(d || !ve || je.length <= be)) {
|
|
5768
|
+
var t = Ho(je);
|
|
5759
5769
|
t.splice(e, 1), O?.(Me(t)), Ne(t);
|
|
5760
5770
|
var n = Math.max(0, e - 1);
|
|
5761
5771
|
me.current.hideHelp(), me.current.focus(n);
|
|
5762
5772
|
}
|
|
5763
|
-
}, Ie = Ko(Ms(he, ge,
|
|
5773
|
+
}, Ie = Ko(Ms(he, ge, je, Se, Ce, Ee, Ne, Pe, De, ve, be), 5), Le = Ie[0], Re = Ie[1], ze = Ie[2], Be = Ie[3], Ve = Ie[4], He = function(e, t) {
|
|
5764
5774
|
if (!d) {
|
|
5765
|
-
var n = Ho(
|
|
5766
|
-
|
|
5775
|
+
var n = Ho(je), r = 0, i = 0, a = Ce - Se;
|
|
5776
|
+
je.forEach(function(t, n) {
|
|
5767
5777
|
var o = Math.abs(e - t);
|
|
5768
5778
|
o <= a && (a = o, r = n), t < e && (i = n);
|
|
5769
5779
|
});
|
|
5770
5780
|
var o = r;
|
|
5771
|
-
ve && a !== 0 && (!xe ||
|
|
5781
|
+
ve && a !== 0 && (!xe || je.length < xe) ? (n.splice(i + 1, 0, e), o = i + 1) : n[r] = e, H && !je.length && E === void 0 && n.push(e);
|
|
5772
5782
|
var s = Me(n);
|
|
5773
5783
|
if (O?.(s), Ne(n), t) {
|
|
5774
5784
|
var c, l;
|
|
@@ -5790,28 +5800,28 @@ var Fs = /*#__PURE__*/ e.forwardRef(function(t, n) {
|
|
|
5790
5800
|
break;
|
|
5791
5801
|
default: u = (c - i) / n;
|
|
5792
5802
|
}
|
|
5793
|
-
He(
|
|
5803
|
+
He(Ee(Se + u * (Ce - Se)), e);
|
|
5794
5804
|
}, We = Ko(e.useState(null), 2), Ge = We[0], Ke = We[1], qe = function(e, t) {
|
|
5795
5805
|
if (!d) {
|
|
5796
|
-
var n =
|
|
5797
|
-
O?.(Me(
|
|
5806
|
+
var n = De(je, e, t);
|
|
5807
|
+
O?.(Me(je)), Ne(n.values), Ke(n.value);
|
|
5798
5808
|
}
|
|
5799
5809
|
};
|
|
5800
5810
|
e.useEffect(function() {
|
|
5801
5811
|
if (Ge !== null) {
|
|
5802
|
-
var e =
|
|
5812
|
+
var e = je.indexOf(Ge);
|
|
5803
5813
|
e >= 0 && me.current.focus(e);
|
|
5804
5814
|
}
|
|
5805
5815
|
Ke(null);
|
|
5806
5816
|
}, [Ge]);
|
|
5807
5817
|
var Je = e.useMemo(function() {
|
|
5808
|
-
return ye &&
|
|
5809
|
-
}, [ye,
|
|
5810
|
-
Ve(e, t), O?.(Me(
|
|
5818
|
+
return ye && U === null ? (process.env.NODE_ENV !== "production" && ls(!1, "`draggableTrack` is not supported when `step` is `null`."), !1) : ye;
|
|
5819
|
+
}, [ye, U]), Ye = Jo(function(e, t) {
|
|
5820
|
+
Ve(e, t), O?.(Me(je));
|
|
5811
5821
|
}), Xe = Le !== -1;
|
|
5812
5822
|
e.useEffect(function() {
|
|
5813
5823
|
if (!Xe) {
|
|
5814
|
-
var e =
|
|
5824
|
+
var e = je.lastIndexOf(Re);
|
|
5815
5825
|
me.current.focus(e);
|
|
5816
5826
|
}
|
|
5817
5827
|
}, [Xe]);
|
|
@@ -5820,10 +5830,10 @@ var Fs = /*#__PURE__*/ e.forwardRef(function(t, n) {
|
|
|
5820
5830
|
return e - t;
|
|
5821
5831
|
});
|
|
5822
5832
|
}, [Be]), Qe = Ko(e.useMemo(function() {
|
|
5823
|
-
return
|
|
5833
|
+
return H ? [Ze[0], Ze[Ze.length - 1]] : [Se, Ze[0]];
|
|
5824
5834
|
}, [
|
|
5825
5835
|
Ze,
|
|
5826
|
-
|
|
5836
|
+
H,
|
|
5827
5837
|
Se
|
|
5828
5838
|
]), 2), $e = Qe[0], et = Qe[1];
|
|
5829
5839
|
e.useImperativeHandle(n, function() {
|
|
@@ -5846,11 +5856,11 @@ var Fs = /*#__PURE__*/ e.forwardRef(function(t, n) {
|
|
|
5846
5856
|
direction: ge,
|
|
5847
5857
|
disabled: d,
|
|
5848
5858
|
keyboard: p,
|
|
5849
|
-
step:
|
|
5859
|
+
step: U,
|
|
5850
5860
|
included: R,
|
|
5851
5861
|
includedStart: $e,
|
|
5852
5862
|
includedEnd: et,
|
|
5853
|
-
range:
|
|
5863
|
+
range: H,
|
|
5854
5864
|
tabIndex: le,
|
|
5855
5865
|
ariaLabelForHandle: ue,
|
|
5856
5866
|
ariaLabelledByForHandle: de,
|
|
@@ -5865,11 +5875,11 @@ var Fs = /*#__PURE__*/ e.forwardRef(function(t, n) {
|
|
|
5865
5875
|
ge,
|
|
5866
5876
|
d,
|
|
5867
5877
|
p,
|
|
5868
|
-
|
|
5878
|
+
U,
|
|
5869
5879
|
R,
|
|
5870
5880
|
$e,
|
|
5871
5881
|
et,
|
|
5872
|
-
|
|
5882
|
+
H,
|
|
5873
5883
|
le,
|
|
5874
5884
|
ue,
|
|
5875
5885
|
de,
|
|
@@ -5880,24 +5890,24 @@ var Fs = /*#__PURE__*/ e.forwardRef(function(t, n) {
|
|
|
5880
5890
|
]);
|
|
5881
5891
|
return /*#__PURE__*/ e.createElement(vs.Provider, { value: tt }, /*#__PURE__*/ e.createElement("div", {
|
|
5882
5892
|
ref: he,
|
|
5883
|
-
className: (0, qo.default)(i, a, Po(Po(Po(Po({}, `${i}-disabled`, d), `${i}-vertical`, I), `${i}-horizontal`, !I), `${i}-with-marks`,
|
|
5893
|
+
className: (0, qo.default)(i, a, Po(Po(Po(Po({}, `${i}-disabled`, d), `${i}-vertical`, I), `${i}-horizontal`, !I), `${i}-with-marks`, W.length)),
|
|
5884
5894
|
style: o,
|
|
5885
5895
|
onMouseDown: Ue,
|
|
5886
5896
|
id: l
|
|
5887
5897
|
}, /*#__PURE__*/ e.createElement("div", {
|
|
5888
5898
|
className: (0, qo.default)(`${i}-rail`, s?.rail),
|
|
5889
|
-
style: Io(Io({},
|
|
5899
|
+
style: Io(Io({}, te), c?.rail)
|
|
5890
5900
|
}), se !== !1 && /*#__PURE__*/ e.createElement(ks, {
|
|
5891
5901
|
prefixCls: i,
|
|
5892
5902
|
style: ee,
|
|
5893
|
-
values:
|
|
5903
|
+
values: je,
|
|
5894
5904
|
startPoint: z,
|
|
5895
5905
|
onStartMove: Je ? Ye : void 0
|
|
5896
5906
|
}), /*#__PURE__*/ e.createElement(Ds, {
|
|
5897
5907
|
prefixCls: i,
|
|
5898
|
-
marks:
|
|
5908
|
+
marks: W,
|
|
5899
5909
|
dots: ie,
|
|
5900
|
-
style:
|
|
5910
|
+
style: V,
|
|
5901
5911
|
activeStyle: ne
|
|
5902
5912
|
}), /*#__PURE__*/ e.createElement(Cs, {
|
|
5903
5913
|
ref: me,
|
|
@@ -5916,7 +5926,7 @@ var Fs = /*#__PURE__*/ e.forwardRef(function(t, n) {
|
|
|
5916
5926
|
onDelete: ve ? Fe : void 0
|
|
5917
5927
|
}), /*#__PURE__*/ e.createElement(Ts, {
|
|
5918
5928
|
prefixCls: i,
|
|
5919
|
-
marks:
|
|
5929
|
+
marks: W,
|
|
5920
5930
|
onClick: He
|
|
5921
5931
|
})));
|
|
5922
5932
|
});
|
|
@@ -18009,13 +18019,13 @@ function Fy() {
|
|
|
18009
18019
|
}
|
|
18010
18020
|
return this;
|
|
18011
18021
|
}, "fill");
|
|
18012
|
-
var
|
|
18013
|
-
function
|
|
18014
|
-
if (e = e.split("=")[0], e = e.trim().replace(
|
|
18022
|
+
var te = /[^+/0-9A-Za-z-_]/g;
|
|
18023
|
+
function V(e) {
|
|
18024
|
+
if (e = e.split("=")[0], e = e.trim().replace(te, ""), e.length < 2) return "";
|
|
18015
18025
|
for (; e.length % 4 != 0;) e += "=";
|
|
18016
18026
|
return e;
|
|
18017
18027
|
}
|
|
18018
|
-
Z(
|
|
18028
|
+
Z(V, "base64clean");
|
|
18019
18029
|
function ne(e, t) {
|
|
18020
18030
|
t ||= Infinity;
|
|
18021
18031
|
for (var n, r = e.length, i = null, a = [], o = 0; o < r; ++o) {
|
|
@@ -18066,7 +18076,7 @@ function Fy() {
|
|
|
18066
18076
|
}
|
|
18067
18077
|
Z(ie, "utf16leToBytes");
|
|
18068
18078
|
function ae(e) {
|
|
18069
|
-
return t.toByteArray(
|
|
18079
|
+
return t.toByteArray(V(e));
|
|
18070
18080
|
}
|
|
18071
18081
|
Z(ae, "base64ToBytes");
|
|
18072
18082
|
function oe(e, t, n, r) {
|
|
@@ -19650,12 +19660,12 @@ function Hb() {
|
|
|
19650
19660
|
Z(A, "howMuchToRead"), w.prototype.read = function(e) {
|
|
19651
19661
|
c("read", e), e = parseInt(e, 10);
|
|
19652
19662
|
var t = this._readableState, n = e;
|
|
19653
|
-
if (e !== 0 && (t.emittedReadable = !1), e === 0 && t.needReadable && ((t.highWaterMark === 0 ? t.length > 0 : t.length >= t.highWaterMark) || t.ended)) return c("read: emitReadable", t.length, t.ended), t.length === 0 && t.ended ?
|
|
19654
|
-
if (e = A(e, t), e === 0 && t.ended) return t.length === 0 &&
|
|
19663
|
+
if (e !== 0 && (t.emittedReadable = !1), e === 0 && t.needReadable && ((t.highWaterMark === 0 ? t.length > 0 : t.length >= t.highWaterMark) || t.ended)) return c("read: emitReadable", t.length, t.ended), t.length === 0 && t.ended ? V(this) : M(this), null;
|
|
19664
|
+
if (e = A(e, t), e === 0 && t.ended) return t.length === 0 && V(this), null;
|
|
19655
19665
|
var r = t.needReadable;
|
|
19656
19666
|
c("need readable", r), (t.length === 0 || t.length - e < t.highWaterMark) && (r = !0, c("length less than watermark", r)), t.ended || t.reading ? (r = !1, c("reading or ended", r)) : r && (c("do read"), t.reading = !0, t.sync = !0, t.length === 0 && (t.needReadable = !0), this._read(t.highWaterMark), t.sync = !1, t.reading || (e = A(n, t)));
|
|
19657
|
-
var i = e > 0 ?
|
|
19658
|
-
return i === null ? (t.needReadable = t.length <= t.highWaterMark, e = 0) : (t.length -= e, t.awaitDrain = 0), t.length === 0 && (t.ended || (t.needReadable = !0), n !== e && t.ended &&
|
|
19667
|
+
var i = e > 0 ? te(e, t) : null;
|
|
19668
|
+
return i === null ? (t.needReadable = t.length <= t.highWaterMark, e = 0) : (t.length -= e, t.awaitDrain = 0), t.length === 0 && (t.ended || (t.needReadable = !0), n !== e && t.ended && V(this)), i !== null && this.emit("data", i), i;
|
|
19659
19669
|
};
|
|
19660
19670
|
function j(e, t) {
|
|
19661
19671
|
if (c("onEofChunk"), !t.ended) {
|
|
@@ -19835,23 +19845,23 @@ function Hb() {
|
|
|
19835
19845
|
set: /* @__PURE__ */ Z(function(e) {
|
|
19836
19846
|
this._readableState && (this._readableState.flowing = e);
|
|
19837
19847
|
}, "set")
|
|
19838
|
-
}), w._fromList =
|
|
19848
|
+
}), w._fromList = te, Object.defineProperty(w.prototype, "readableLength", {
|
|
19839
19849
|
enumerable: !1,
|
|
19840
19850
|
get: /* @__PURE__ */ Z(function() {
|
|
19841
19851
|
return this._readableState.length;
|
|
19842
19852
|
}, "get")
|
|
19843
19853
|
});
|
|
19844
|
-
function
|
|
19854
|
+
function te(e, t) {
|
|
19845
19855
|
if (t.length === 0) return null;
|
|
19846
19856
|
var n;
|
|
19847
19857
|
return t.objectMode ? n = t.buffer.shift() : !e || e >= t.length ? (n = t.decoder ? t.buffer.join("") : t.buffer.length === 1 ? t.buffer.first() : t.buffer.concat(t.length), t.buffer.clear()) : n = t.buffer.consume(e, t.decoder), n;
|
|
19848
19858
|
}
|
|
19849
|
-
Z(
|
|
19850
|
-
function
|
|
19859
|
+
Z(te, "fromList");
|
|
19860
|
+
function V(e) {
|
|
19851
19861
|
var t = e._readableState;
|
|
19852
19862
|
c("endReadable", t.endEmitted), t.endEmitted || (t.ended = !0, process.nextTick(ne, t, e));
|
|
19853
19863
|
}
|
|
19854
|
-
Z(
|
|
19864
|
+
Z(V, "endReadable");
|
|
19855
19865
|
function ne(e, t) {
|
|
19856
19866
|
if (c("endReadableNT", e.endEmitted, e.length), !e.endEmitted && e.length === 0 && (e.endEmitted = !0, t.readable = !1, t.emit("end"), e.autoDestroy)) {
|
|
19857
19867
|
var n = t._writableState;
|
|
@@ -20828,11 +20838,11 @@ var iS = /* @__PURE__ */ tS(nS, 9, 1), aS = /* @__PURE__ */ tS(rS, 5, 1), oS = /
|
|
|
20828
20838
|
var D = z - 257, B = Wx[D];
|
|
20829
20839
|
ee = sS(e, d, (1 << B) - 1) + Yx[D], d += B;
|
|
20830
20840
|
}
|
|
20831
|
-
var
|
|
20832
|
-
|
|
20833
|
-
var F = Zx[
|
|
20834
|
-
if (
|
|
20835
|
-
var B = Gx[
|
|
20841
|
+
var te = m[cS(e, d) & L], V = te >> 4;
|
|
20842
|
+
te || fS(3), d += te & 15;
|
|
20843
|
+
var F = Zx[V];
|
|
20844
|
+
if (V > 3) {
|
|
20845
|
+
var B = Gx[V];
|
|
20836
20846
|
F += cS(e, d) & (1 << B) - 1, d += B;
|
|
20837
20847
|
}
|
|
20838
20848
|
if (d > _) {
|
|
@@ -23880,35 +23890,35 @@ function PC({ searchPanelOpen: e, setSearchPanelOpen: t, searchInput: n, setSear
|
|
|
23880
23890
|
}
|
|
23881
23891
|
//#endregion
|
|
23882
23892
|
//#region src/components/GensploreView.jsx
|
|
23883
|
-
function FC({ genbankString: e, searchInput: t, setSearchInput: n, setTitleCallback: r, fastaUrl: i }) {
|
|
23884
|
-
let [
|
|
23885
|
-
|
|
23886
|
-
}, [n]), [
|
|
23893
|
+
function FC({ genbankString: e, searchInput: t, setSearchInput: n, setTitleCallback: r, fastaUrl: i, alignedSequence: a }) {
|
|
23894
|
+
let [o, s] = v(""), c = t === void 0 ? o : t, u = l((e) => {
|
|
23895
|
+
s(e), n?.(e);
|
|
23896
|
+
}, [n]), [f, p] = v(null), [g, y] = v(!1), [C, w] = v({
|
|
23887
23897
|
busy: !1,
|
|
23888
23898
|
error: ""
|
|
23889
|
-
}), [
|
|
23899
|
+
}), [T, E] = v(!1), [D, O] = v(0), [k, A] = v(null), [j, M] = v(null), [N, P] = v(null), [F, I] = v("nuc"), [L, { width: R }] = AC(), [z, ee] = v(null), [B, te] = v({
|
|
23890
23900
|
x: null,
|
|
23891
23901
|
y: null
|
|
23892
|
-
}), [V,
|
|
23893
|
-
function
|
|
23902
|
+
}), [V, ne] = v(null), [re, ie] = v([]), [ae, oe] = v(0), [se, ce] = v(!1), fe = F === "nuc" ? parseInt(c) : null, pe = F === "annot" ? c : null, me = F === "sequence" && c ? c.toUpperCase() : null, [he, ge] = v(0);
|
|
23903
|
+
function _e() {
|
|
23894
23904
|
var e = document;
|
|
23895
23905
|
return Math.max(Math.max(e.body.scrollHeight, e.documentElement.scrollHeight), Math.max(e.body.offsetHeight, e.documentElement.offsetHeight), Math.max(e.body.clientHeight, e.documentElement.clientHeight));
|
|
23896
23906
|
}
|
|
23897
23907
|
d(() => {
|
|
23898
23908
|
let e = () => {
|
|
23899
|
-
let e = window.pageYOffset, t = window.innerHeight, n = e / (
|
|
23900
|
-
Math.abs(n -
|
|
23909
|
+
let e = window.pageYOffset, t = window.innerHeight, n = e / (_e() - t);
|
|
23910
|
+
Math.abs(n - he) > .05 && ge(n);
|
|
23901
23911
|
};
|
|
23902
23912
|
return window.addEventListener("scroll", e), () => {
|
|
23903
23913
|
window.removeEventListener("scroll", e);
|
|
23904
23914
|
};
|
|
23905
|
-
}, [
|
|
23915
|
+
}, [he]), d(() => {
|
|
23906
23916
|
let t = !1;
|
|
23907
|
-
return
|
|
23917
|
+
return ne(null), p(null), ie([]), oe(0), (async () => {
|
|
23908
23918
|
try {
|
|
23909
23919
|
let n = await Dv(e);
|
|
23910
23920
|
if (t) return;
|
|
23911
|
-
n[0].parsedSequence.sequence = n[0].parsedSequence.sequence.toUpperCase(),
|
|
23921
|
+
n[0].parsedSequence.sequence = n[0].parsedSequence.sequence.toUpperCase(), ne(n[0]);
|
|
23912
23922
|
} catch (e) {
|
|
23913
23923
|
console.error("Error loading GenBank file:", e);
|
|
23914
23924
|
}
|
|
@@ -23917,14 +23927,14 @@ function FC({ genbankString: e, searchInput: t, setSearchInput: n, setTitleCallb
|
|
|
23917
23927
|
};
|
|
23918
23928
|
}, [e]), d(() => {
|
|
23919
23929
|
let e = V?.parsedSequence.name;
|
|
23920
|
-
e && r && r(
|
|
23930
|
+
e && r && r(f ? `${f.name} vs ${e} | Gensplore` : `${e} | Gensplore`);
|
|
23921
23931
|
}, [
|
|
23922
23932
|
V,
|
|
23923
|
-
|
|
23933
|
+
f,
|
|
23924
23934
|
r
|
|
23925
23935
|
]), d(() => {
|
|
23926
23936
|
let e = (e) => {
|
|
23927
|
-
(e.ctrlKey || e.metaKey) && e.keyCode === 70 && (e.preventDefault(),
|
|
23937
|
+
(e.ctrlKey || e.metaKey) && e.keyCode === 70 && (e.preventDefault(), E(!0), setTimeout(() => {
|
|
23928
23938
|
document.getElementById("search-input").focus(), document.getElementById("search-input").select();
|
|
23929
23939
|
}, 100));
|
|
23930
23940
|
};
|
|
@@ -23933,77 +23943,77 @@ function FC({ genbankString: e, searchInput: t, setSearchInput: n, setTitleCallb
|
|
|
23933
23943
|
};
|
|
23934
23944
|
}, []), d(() => {
|
|
23935
23945
|
let e = (e) => {
|
|
23936
|
-
(e.ctrlKey || e.metaKey) && e.keyCode === 67 &&
|
|
23946
|
+
(e.ctrlKey || e.metaKey) && e.keyCode === 67 && k !== null && j !== null && (He(e.shiftKey), e.preventDefault());
|
|
23937
23947
|
};
|
|
23938
23948
|
return window.addEventListener("keydown", e), () => {
|
|
23939
23949
|
window.removeEventListener("keydown", e);
|
|
23940
23950
|
};
|
|
23941
23951
|
}, [
|
|
23942
23952
|
V,
|
|
23943
|
-
|
|
23944
|
-
|
|
23953
|
+
k,
|
|
23954
|
+
j
|
|
23945
23955
|
]);
|
|
23946
|
-
let H = Math.floor(
|
|
23956
|
+
let H = Math.floor(R * .0965 / 2 ** D);
|
|
23947
23957
|
H < 30 && (H = 30);
|
|
23948
|
-
let
|
|
23949
|
-
V && (
|
|
23950
|
-
let
|
|
23951
|
-
if (!
|
|
23958
|
+
let ve, ye;
|
|
23959
|
+
V && (ve = V.parsedSequence.sequence, ye = ve.length);
|
|
23960
|
+
let be = h(() => {
|
|
23961
|
+
if (!ve) return [];
|
|
23952
23962
|
let e = [];
|
|
23953
|
-
for (let t = 0; t <
|
|
23963
|
+
for (let t = 0; t < ye; t += H) e.push({
|
|
23954
23964
|
rowStart: t,
|
|
23955
|
-
rowEnd: t + H >
|
|
23965
|
+
rowEnd: t + H > ye ? ye : t + H
|
|
23956
23966
|
});
|
|
23957
23967
|
return e;
|
|
23958
23968
|
}, [
|
|
23959
|
-
|
|
23969
|
+
ve,
|
|
23960
23970
|
H,
|
|
23961
|
-
|
|
23962
|
-
]),
|
|
23971
|
+
ye
|
|
23972
|
+
]), xe = _(null), [Se, Ce] = v(0);
|
|
23963
23973
|
m(() => {
|
|
23964
|
-
let e =
|
|
23974
|
+
let e = xe.current;
|
|
23965
23975
|
if (!e) return;
|
|
23966
|
-
let t = () =>
|
|
23976
|
+
let t = () => Ce(e.getBoundingClientRect().top + window.scrollY);
|
|
23967
23977
|
t();
|
|
23968
23978
|
let n = new ResizeObserver(t);
|
|
23969
23979
|
return n.observe(e.parentElement), () => n.disconnect();
|
|
23970
|
-
}, [V,
|
|
23971
|
-
let
|
|
23972
|
-
count:
|
|
23980
|
+
}, [V, R]);
|
|
23981
|
+
let U = Lt({
|
|
23982
|
+
count: be.length,
|
|
23973
23983
|
estimateSize: () => 90,
|
|
23974
|
-
scrollMargin:
|
|
23975
|
-
}), we =
|
|
23976
|
-
let t = we[Math.floor(we.length / 2)].index, n =
|
|
23977
|
-
|
|
23984
|
+
scrollMargin: Se
|
|
23985
|
+
}), we = U.getVirtualItems(), [W, Te] = v(null), Ee = (e) => {
|
|
23986
|
+
let t = we[Math.floor(we.length / 2)].index, n = be[t].rowStart, r = be[t].rowEnd, i = Math.floor((n + r) / 2);
|
|
23987
|
+
Te(i), console.log("middleRowMiddle", i), O(e);
|
|
23978
23988
|
};
|
|
23979
23989
|
d(() => {
|
|
23980
|
-
if (!
|
|
23981
|
-
if (
|
|
23982
|
-
let e = Math.floor((
|
|
23983
|
-
|
|
23990
|
+
if (!W) return;
|
|
23991
|
+
if (k && j) {
|
|
23992
|
+
let e = Math.floor((k + j) / 2);
|
|
23993
|
+
U.scrollToIndex(3 + Math.floor(e / H), {
|
|
23984
23994
|
align: "center",
|
|
23985
23995
|
smoothScroll: !1
|
|
23986
|
-
}),
|
|
23996
|
+
}), Te(null);
|
|
23987
23997
|
return;
|
|
23988
23998
|
}
|
|
23989
|
-
let e = Math.floor(
|
|
23990
|
-
|
|
23999
|
+
let e = Math.floor(W / H);
|
|
24000
|
+
U.scrollToIndex(e, {
|
|
23991
24001
|
align: "center",
|
|
23992
24002
|
smoothScroll: !1
|
|
23993
|
-
}),
|
|
23994
|
-
}, [
|
|
23995
|
-
let [De, Oe] = v(null), [ke, Ae] = v(!1), [je,
|
|
24003
|
+
}), Te(null), console.log("scrolling to", W);
|
|
24004
|
+
}, [W, D]);
|
|
24005
|
+
let [De, Oe] = v(null), [ke, Ae] = v(!1), [je, Me] = v(!1), [Ne, Pe] = v(null);
|
|
23996
24006
|
d(() => {
|
|
23997
|
-
if (!ce) return;
|
|
23998
|
-
let e = Math.floor(ce / H);
|
|
23999
|
-
ce !== De && (e > ye.length || (Ce.scrollToIndex(e + 1, { align: "center" }), Oe(ce)));
|
|
24000
|
-
}, [ce, H]), d(() => {
|
|
24001
|
-
if (!Me) return;
|
|
24002
|
-
let e = Math.floor(Me.start / H);
|
|
24003
|
-
Ce.scrollToIndex(e + 1, { align: "center" }), Ne(null);
|
|
24004
|
-
}, [Me, H]), d(() => {
|
|
24005
24007
|
if (!fe) return;
|
|
24006
|
-
let e =
|
|
24008
|
+
let e = Math.floor(fe / H);
|
|
24009
|
+
fe !== De && (e > be.length || (U.scrollToIndex(e + 1, { align: "center" }), Oe(fe)));
|
|
24010
|
+
}, [fe, H]), d(() => {
|
|
24011
|
+
if (!Ne) return;
|
|
24012
|
+
let e = Math.floor(Ne.start / H);
|
|
24013
|
+
U.scrollToIndex(e + 1, { align: "center" }), Pe(null);
|
|
24014
|
+
}, [Ne, H]), d(() => {
|
|
24015
|
+
if (!pe) return;
|
|
24016
|
+
let e = pe.replace(/\s/g, "");
|
|
24007
24017
|
if (e === "") return;
|
|
24008
24018
|
let t = Ui(V.parsedSequence.features, e);
|
|
24009
24019
|
if (t.length === 0) {
|
|
@@ -24011,73 +24021,73 @@ function FC({ genbankString: e, searchInput: t, setSearchInput: n, setTitleCallb
|
|
|
24011
24021
|
return;
|
|
24012
24022
|
}
|
|
24013
24023
|
let n = t[0], r = Math.floor(n.start / H);
|
|
24014
|
-
|
|
24015
|
-
}, [
|
|
24016
|
-
if (!
|
|
24017
|
-
|
|
24024
|
+
U.scrollToIndex(r + 1, { align: "center" }), Oe(pe);
|
|
24025
|
+
}, [pe]), d(() => {
|
|
24026
|
+
if (!ve || !me) {
|
|
24027
|
+
ie([]);
|
|
24018
24028
|
return;
|
|
24019
24029
|
}
|
|
24020
|
-
let e =
|
|
24030
|
+
let e = me.replace(/\s/g, "");
|
|
24021
24031
|
if (e === "") {
|
|
24022
|
-
|
|
24032
|
+
ie([]);
|
|
24023
24033
|
return;
|
|
24024
24034
|
}
|
|
24025
24035
|
console.log("strippedSequenceInput", e);
|
|
24026
24036
|
let t = [], n = 0, r = Hi(e);
|
|
24027
24037
|
for (console.log("rc", r);;) {
|
|
24028
|
-
let i =
|
|
24038
|
+
let i = ve.indexOf(e, n), a = se ? ve.indexOf(r, n) : -1, o;
|
|
24029
24039
|
if (o = i === -1 ? a : a === -1 ? i : Math.min(i, a), o === -1) break;
|
|
24030
24040
|
t.push([o, o + e.length]), n = o + 1;
|
|
24031
24041
|
}
|
|
24032
|
-
if (
|
|
24033
|
-
let i = Math.min(
|
|
24034
|
-
i !==
|
|
24042
|
+
if (ie(t), console.log("length", t.length), t.length == 0) return;
|
|
24043
|
+
let i = Math.min(ae, t.length - 1);
|
|
24044
|
+
i !== ae && oe(i);
|
|
24035
24045
|
let a = Math.floor(t[i][0] / H);
|
|
24036
|
-
console.log("row", a),
|
|
24046
|
+
console.log("row", a), U.scrollToIndex(a + 1, { align: "center" }), Oe(me);
|
|
24037
24047
|
}, [
|
|
24038
|
-
|
|
24039
|
-
|
|
24040
|
-
|
|
24041
|
-
|
|
24048
|
+
me,
|
|
24049
|
+
ae,
|
|
24050
|
+
se,
|
|
24051
|
+
ve
|
|
24042
24052
|
]);
|
|
24043
|
-
let [
|
|
24053
|
+
let [Fe, Ie] = v(!1), [Le, Re] = v({}), ze = h(() => {
|
|
24044
24054
|
if (!V) return [];
|
|
24045
24055
|
let e = [];
|
|
24046
24056
|
return V.parsedSequence.features.forEach((t, n) => {
|
|
24047
|
-
|
|
24057
|
+
Le[n] && e.push(t);
|
|
24048
24058
|
}), e;
|
|
24049
|
-
}, [
|
|
24059
|
+
}, [Le, V]);
|
|
24050
24060
|
d(() => {
|
|
24051
24061
|
if (!V) return;
|
|
24052
24062
|
let e = {};
|
|
24053
24063
|
V.parsedSequence.features.forEach((t, n) => {
|
|
24054
24064
|
e[n] = t.type !== "source" && t.type !== "gene" && t.type !== "mRNA";
|
|
24055
|
-
}),
|
|
24065
|
+
}), Re(e);
|
|
24056
24066
|
}, [V]);
|
|
24057
|
-
let
|
|
24058
|
-
e.preventDefault(),
|
|
24067
|
+
let Be = (e) => {
|
|
24068
|
+
e.preventDefault(), te({
|
|
24059
24069
|
x: e.clientX,
|
|
24060
24070
|
y: e.clientY
|
|
24061
24071
|
});
|
|
24062
|
-
},
|
|
24063
|
-
|
|
24072
|
+
}, Ve = () => {
|
|
24073
|
+
te({
|
|
24064
24074
|
x: null,
|
|
24065
24075
|
y: null
|
|
24066
24076
|
});
|
|
24067
|
-
},
|
|
24068
|
-
if (
|
|
24069
|
-
let t = Math.min(
|
|
24077
|
+
}, He = (e = !1) => {
|
|
24078
|
+
if (k === null || j === null) return;
|
|
24079
|
+
let t = Math.min(k, j), n = Math.max(k, j), r = V.parsedSequence.sequence.substring(t, n);
|
|
24070
24080
|
e && (r = Hi(r)), navigator.clipboard.writeText(r), J.success(`Copied ${e ? "reverse complement " : ""}to clipboard`);
|
|
24071
24081
|
};
|
|
24072
|
-
return d(() => (document.addEventListener("click",
|
|
24073
|
-
document.removeEventListener("click",
|
|
24074
|
-
}), []), V ?
|
|
24082
|
+
return d(() => (document.addEventListener("click", Ve), () => {
|
|
24083
|
+
document.removeEventListener("click", Ve);
|
|
24084
|
+
}), []), V ? R ? /* @__PURE__ */ x(b, { children: /* @__PURE__ */ S("div", {
|
|
24075
24085
|
className: "gensplore",
|
|
24076
|
-
onContextMenu:
|
|
24086
|
+
onContextMenu: Be,
|
|
24077
24087
|
children: [
|
|
24078
24088
|
/* @__PURE__ */ x(Fi, {
|
|
24079
24089
|
open: je,
|
|
24080
|
-
onClose: () =>
|
|
24090
|
+
onClose: () => Me(!1),
|
|
24081
24091
|
className: "gensplore fixed z-50 max-w-2xl px-4 py-6 bg-white rounded-lg shadow-xl sm:px-6 sm:py-8 sm:pb-4 sm:pt-6",
|
|
24082
24092
|
children: /* @__PURE__ */ x(Ni, {
|
|
24083
24093
|
className: "fixed inset-0 flex items-center justify-center bg-gray-500/75 transition-opacity",
|
|
@@ -24110,7 +24120,7 @@ function FC({ genbankString: e, searchInput: t, setSearchInput: n, setTitleCallb
|
|
|
24110
24120
|
children: /* @__PURE__ */ x("button", {
|
|
24111
24121
|
type: "button",
|
|
24112
24122
|
className: "inline-flex justify-center px-4 py-2 text-sm font-medium text-gray-700 bg-gray-100 border border-transparent rounded-md hover:bg-gray-200 focus:outline-hidden focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-blue-500",
|
|
24113
|
-
onClick: () =>
|
|
24123
|
+
onClick: () => Me(!1),
|
|
24114
24124
|
children: "Close"
|
|
24115
24125
|
})
|
|
24116
24126
|
})
|
|
@@ -24125,39 +24135,39 @@ function FC({ genbankString: e, searchInput: t, setSearchInput: n, setTitleCallb
|
|
|
24125
24135
|
/* @__PURE__ */ x("div", {
|
|
24126
24136
|
className: "fixed top-0 right-0 z-10",
|
|
24127
24137
|
children: /* @__PURE__ */ x(PC, {
|
|
24128
|
-
searchInput:
|
|
24129
|
-
setSearchInput:
|
|
24130
|
-
searchPanelOpen:
|
|
24131
|
-
setSearchPanelOpen:
|
|
24132
|
-
searchType:
|
|
24133
|
-
setSearchType:
|
|
24134
|
-
curSeqHitIndex:
|
|
24135
|
-
setCurSeqHitIndex:
|
|
24136
|
-
sequenceHits:
|
|
24137
|
-
includeRC:
|
|
24138
|
-
setIncludeRC:
|
|
24138
|
+
searchInput: c,
|
|
24139
|
+
setSearchInput: u,
|
|
24140
|
+
searchPanelOpen: T,
|
|
24141
|
+
setSearchPanelOpen: E,
|
|
24142
|
+
searchType: F,
|
|
24143
|
+
setSearchType: I,
|
|
24144
|
+
curSeqHitIndex: ae,
|
|
24145
|
+
setCurSeqHitIndex: oe,
|
|
24146
|
+
sequenceHits: re,
|
|
24147
|
+
includeRC: se,
|
|
24148
|
+
setIncludeRC: ce
|
|
24139
24149
|
})
|
|
24140
24150
|
}),
|
|
24141
24151
|
/* @__PURE__ */ x("div", {
|
|
24142
24152
|
className: "fixed bottom-0 right-0 z-10 p-2 rounded shadow bg-white comparison-toolbar",
|
|
24143
24153
|
children: /* @__PURE__ */ x(Vs, {
|
|
24144
|
-
zoomLevel:
|
|
24154
|
+
zoomLevel: D,
|
|
24145
24155
|
setZoomLevel: Ee,
|
|
24146
24156
|
configModalOpen: je,
|
|
24147
|
-
setConfigModalOpen:
|
|
24148
|
-
setFeatureOffcanvasOpen:
|
|
24149
|
-
comparisonPanelOpen:
|
|
24150
|
-
setComparisonPanelOpen:
|
|
24151
|
-
comparisonCount:
|
|
24152
|
-
comparisonStatus:
|
|
24157
|
+
setConfigModalOpen: Me,
|
|
24158
|
+
setFeatureOffcanvasOpen: Ie,
|
|
24159
|
+
comparisonPanelOpen: g,
|
|
24160
|
+
setComparisonPanelOpen: y,
|
|
24161
|
+
comparisonCount: f?.differences.length,
|
|
24162
|
+
comparisonStatus: C
|
|
24153
24163
|
})
|
|
24154
24164
|
}),
|
|
24155
24165
|
/* @__PURE__ */ S("div", {
|
|
24156
24166
|
className: "w-full",
|
|
24157
|
-
children: [/* @__PURE__ */ x(Bi, { hoveredInfo:
|
|
24158
|
-
ref:
|
|
24167
|
+
children: [/* @__PURE__ */ x(Bi, { hoveredInfo: z }), V && /* @__PURE__ */ S("div", {
|
|
24168
|
+
ref: L,
|
|
24159
24169
|
children: [
|
|
24160
|
-
|
|
24170
|
+
k !== null && (j !== null || N !== null) && /* @__PURE__ */ x("div", {
|
|
24161
24171
|
className: "fixed bottom-1 left-1 z-10 px-3 py-2 text-sm rounded-lg shadow-lg bg-linear-to-r from-gray-50 to-gray-100 border border-gray-200",
|
|
24162
24172
|
children: /* @__PURE__ */ S("div", {
|
|
24163
24173
|
className: "flex flex-col ",
|
|
@@ -24169,9 +24179,9 @@ function FC({ genbankString: e, searchInput: t, setSearchInput: n, setTitleCallb
|
|
|
24169
24179
|
}), /* @__PURE__ */ S("span", {
|
|
24170
24180
|
className: "font-mono text-gray-700",
|
|
24171
24181
|
children: [
|
|
24172
|
-
Math.min(
|
|
24182
|
+
Math.min(k, j || N) + 1,
|
|
24173
24183
|
" - ",
|
|
24174
|
-
Math.max(
|
|
24184
|
+
Math.max(k, j || N)
|
|
24175
24185
|
]
|
|
24176
24186
|
})]
|
|
24177
24187
|
}), /* @__PURE__ */ S("div", {
|
|
@@ -24182,10 +24192,10 @@ function FC({ genbankString: e, searchInput: t, setSearchInput: n, setTitleCallb
|
|
|
24182
24192
|
}), /* @__PURE__ */ S("span", {
|
|
24183
24193
|
className: "font-mono text-gray-700 flex items-center",
|
|
24184
24194
|
children: [
|
|
24185
|
-
Math.abs((
|
|
24195
|
+
Math.abs((j || N) - k),
|
|
24186
24196
|
" bp",
|
|
24187
24197
|
/* @__PURE__ */ x("button", {
|
|
24188
|
-
onClick: () =>
|
|
24198
|
+
onClick: () => He(),
|
|
24189
24199
|
className: "ml-2 p-1 hover:bg-gray-200 rounded-full",
|
|
24190
24200
|
title: "Copy selection",
|
|
24191
24201
|
children: /* @__PURE__ */ x(le, { className: "h-4 w-4 text-gray-500" })
|
|
@@ -24200,10 +24210,10 @@ function FC({ genbankString: e, searchInput: t, setSearchInput: n, setTitleCallb
|
|
|
24200
24210
|
children: [/* @__PURE__ */ x("h2", {
|
|
24201
24211
|
className: "text-2xl",
|
|
24202
24212
|
style: { overflowWrap: "anywhere" },
|
|
24203
|
-
children:
|
|
24213
|
+
children: f?.name || V.parsedSequence.name
|
|
24204
24214
|
}), /* @__PURE__ */ x("div", { children: /* @__PURE__ */ x("div", {
|
|
24205
24215
|
className: "flex flex-row",
|
|
24206
|
-
children: /* @__PURE__ */ S("span", { children: [
|
|
24216
|
+
children: /* @__PURE__ */ S("span", { children: [f && /* @__PURE__ */ S(b, { children: [
|
|
24207
24217
|
"Reference: ",
|
|
24208
24218
|
/* @__PURE__ */ x("strong", { children: V.parsedSequence.name }),
|
|
24209
24219
|
" · "
|
|
@@ -24211,21 +24221,22 @@ function FC({ genbankString: e, searchInput: t, setSearchInput: n, setTitleCallb
|
|
|
24211
24221
|
}) })]
|
|
24212
24222
|
}),
|
|
24213
24223
|
/* @__PURE__ */ x(zi, {
|
|
24214
|
-
open:
|
|
24215
|
-
setOpen:
|
|
24216
|
-
onStatus:
|
|
24217
|
-
reference:
|
|
24224
|
+
open: g,
|
|
24225
|
+
setOpen: y,
|
|
24226
|
+
onStatus: w,
|
|
24227
|
+
reference: ve,
|
|
24218
24228
|
features: V.parsedSequence.features,
|
|
24219
24229
|
fastaUrl: i,
|
|
24220
|
-
|
|
24221
|
-
|
|
24230
|
+
alignedSequence: a,
|
|
24231
|
+
onResult: p,
|
|
24232
|
+
onGoTo: (e) => U.scrollToIndex(Math.floor(e / H), { align: "center" })
|
|
24222
24233
|
}),
|
|
24223
24234
|
/* @__PURE__ */ x("div", {
|
|
24224
|
-
ref:
|
|
24235
|
+
ref: xe,
|
|
24225
24236
|
className: "mt-5 h-80",
|
|
24226
24237
|
children: /* @__PURE__ */ x("div", {
|
|
24227
24238
|
style: {
|
|
24228
|
-
height:
|
|
24239
|
+
height: U.getTotalSize(),
|
|
24229
24240
|
width: "100%",
|
|
24230
24241
|
position: "relative"
|
|
24231
24242
|
},
|
|
@@ -24236,36 +24247,36 @@ function FC({ genbankString: e, searchInput: t, setSearchInput: n, setTitleCallb
|
|
|
24236
24247
|
top: 0,
|
|
24237
24248
|
left: 0,
|
|
24238
24249
|
width: "100%",
|
|
24239
|
-
transform: `translateY(${(we[0]?.start ?? 0) -
|
|
24250
|
+
transform: `translateY(${(we[0]?.start ?? 0) - U.options.scrollMargin}px)`
|
|
24240
24251
|
},
|
|
24241
24252
|
className: "whitebg",
|
|
24242
24253
|
children: we.map((e) => {
|
|
24243
|
-
let t =
|
|
24254
|
+
let t = be[e.index];
|
|
24244
24255
|
return /* @__PURE__ */ x("div", {
|
|
24245
|
-
ref:
|
|
24256
|
+
ref: U.measureElement,
|
|
24246
24257
|
"data-index": e.index,
|
|
24247
24258
|
children: /* @__PURE__ */ x(Ao, {
|
|
24248
24259
|
parsedSequence: V.parsedSequence,
|
|
24249
|
-
visibleFeatures:
|
|
24250
|
-
differences:
|
|
24251
|
-
proteins:
|
|
24260
|
+
visibleFeatures: ze,
|
|
24261
|
+
differences: f?.differences || [],
|
|
24262
|
+
proteins: f?.proteins,
|
|
24252
24263
|
rowStart: t.rowStart,
|
|
24253
24264
|
rowEnd: t.rowEnd,
|
|
24254
24265
|
rowWidth: H,
|
|
24255
|
-
setHoveredInfo:
|
|
24266
|
+
setHoveredInfo: ee,
|
|
24256
24267
|
rowId: e.index,
|
|
24257
|
-
intSearchInput:
|
|
24258
|
-
annotSearchInput:
|
|
24268
|
+
intSearchInput: fe - 1,
|
|
24269
|
+
annotSearchInput: pe,
|
|
24259
24270
|
renderProperly: !0,
|
|
24260
|
-
zoomLevel:
|
|
24261
|
-
whereMouseWentDown:
|
|
24262
|
-
setWhereMouseWentDown:
|
|
24263
|
-
whereMouseWentUp:
|
|
24264
|
-
setWhereMouseWentUp:
|
|
24265
|
-
whereMouseCurrentlyIs:
|
|
24266
|
-
setWhereMouseCurrentlyIs:
|
|
24267
|
-
sequenceHits:
|
|
24268
|
-
curSeqHitIndex:
|
|
24271
|
+
zoomLevel: D,
|
|
24272
|
+
whereMouseWentDown: k,
|
|
24273
|
+
setWhereMouseWentDown: A,
|
|
24274
|
+
whereMouseWentUp: j,
|
|
24275
|
+
setWhereMouseWentUp: M,
|
|
24276
|
+
whereMouseCurrentlyIs: N,
|
|
24277
|
+
setWhereMouseCurrentlyIs: P,
|
|
24278
|
+
sequenceHits: re,
|
|
24279
|
+
curSeqHitIndex: ae,
|
|
24269
24280
|
enableRC: ke
|
|
24270
24281
|
}, e.index)
|
|
24271
24282
|
}, e.key);
|
|
@@ -24278,20 +24289,20 @@ function FC({ genbankString: e, searchInput: t, setSearchInput: n, setTitleCallb
|
|
|
24278
24289
|
})
|
|
24279
24290
|
]
|
|
24280
24291
|
}),
|
|
24281
|
-
|
|
24282
|
-
x:
|
|
24283
|
-
y:
|
|
24284
|
-
onClose:
|
|
24292
|
+
B.x !== null && /* @__PURE__ */ x(de, {
|
|
24293
|
+
x: B.x,
|
|
24294
|
+
y: B.y,
|
|
24295
|
+
onClose: Ve,
|
|
24285
24296
|
onCopy: () => {
|
|
24286
|
-
|
|
24297
|
+
He(!1), Ve();
|
|
24287
24298
|
},
|
|
24288
24299
|
onCopyRC: () => {
|
|
24289
|
-
|
|
24300
|
+
He(!0), Ve();
|
|
24290
24301
|
}
|
|
24291
24302
|
}),
|
|
24292
|
-
|
|
24293
|
-
isOpen:
|
|
24294
|
-
onClose: () =>
|
|
24303
|
+
Fe && /* @__PURE__ */ x(ue, {
|
|
24304
|
+
isOpen: Fe,
|
|
24305
|
+
onClose: () => Ie(!1),
|
|
24295
24306
|
children: /* @__PURE__ */ S("table", {
|
|
24296
24307
|
className: "min-w-full divide-y divide-gray-200",
|
|
24297
24308
|
children: [/* @__PURE__ */ x("thead", { children: /* @__PURE__ */ S("tr", { children: [
|
|
@@ -24316,10 +24327,10 @@ function FC({ genbankString: e, searchInput: t, setSearchInput: n, setTitleCallb
|
|
|
24316
24327
|
children: [/* @__PURE__ */ x("input", {
|
|
24317
24328
|
type: "checkbox",
|
|
24318
24329
|
className: "focus:ring-indigo-500 text-indigo-600 border-gray-300 rounded mr-2",
|
|
24319
|
-
checked: !!
|
|
24330
|
+
checked: !!Le[t],
|
|
24320
24331
|
onChange: () => {
|
|
24321
|
-
let e = { ...
|
|
24322
|
-
e[t] = !e[t],
|
|
24332
|
+
let e = { ...Le };
|
|
24333
|
+
e[t] = !e[t], Re(e);
|
|
24323
24334
|
}
|
|
24324
24335
|
}), e.name]
|
|
24325
24336
|
}),
|
|
@@ -24334,7 +24345,7 @@ function FC({ genbankString: e, searchInput: t, setSearchInput: n, setTitleCallb
|
|
|
24334
24345
|
/* @__PURE__ */ x("td", { children: /* @__PURE__ */ x("button", {
|
|
24335
24346
|
className: "bg-gray-100 hover:bg-gray-200 text-gray-600 font-semibold py-1 px-1 border border-gray-400 rounded shadow text-sm ",
|
|
24336
24347
|
onClick: () => {
|
|
24337
|
-
|
|
24348
|
+
Ie(!1), Pe(e);
|
|
24338
24349
|
},
|
|
24339
24350
|
children: "Go to"
|
|
24340
24351
|
}) })
|
|
@@ -24346,7 +24357,7 @@ function FC({ genbankString: e, searchInput: t, setSearchInput: n, setTitleCallb
|
|
|
24346
24357
|
}) }) : /* @__PURE__ */ x("div", {
|
|
24347
24358
|
className: "gensplore w-full h-full p-5",
|
|
24348
24359
|
children: /* @__PURE__ */ x("div", {
|
|
24349
|
-
ref:
|
|
24360
|
+
ref: L,
|
|
24350
24361
|
className: "w-full h-full"
|
|
24351
24362
|
})
|
|
24352
24363
|
}) : /* @__PURE__ */ x("div", { children: "Loading..." });
|