diff --git a/.version b/.version
index a6316f06..fa49670c 100644
--- a/.version
+++ b/.version
@@ -1 +1 @@
-v2.3.0
\ No newline at end of file
+v2.4.0
\ No newline at end of file
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 820d6277..1324aa2d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,13 @@
# Change Log
+## [v2.4.0](https://github.com/auth0/auth0-angular/tree/v2.4.0) (2025-12-23)
+
+[Full Changelog](https://github.com/auth0/auth0-angular/compare/v2.3.0...v2.4.0)
+
+**Added**
+
+- feat: add DPoP support with fetcher API [\#732](https://github.com/auth0/auth0-angular/pull/732) ([yogeshchoudhary147](https://github.com/yogeshchoudhary147))
+
## [v2.3.0](https://github.com/auth0/auth0-angular/tree/v2.3.0) (2025-09-10)
[Full Changelog](https://github.com/auth0/auth0-angular/compare/v2.2.3...v2.3.0)
diff --git a/docs/assets/hierarchy.js b/docs/assets/hierarchy.js
new file mode 100644
index 00000000..183dcd38
--- /dev/null
+++ b/docs/assets/hierarchy.js
@@ -0,0 +1,2 @@
+window.hierarchyData =
+ 'eJyVk81uwjAQhN9lz6aQxElIbhWtqkr0R5SqB8TBMguxCHZqOyfEu1cJamUI1OFkKZ7NN7Pr3YNWyhrIFzTISBQkJMzSJQGN6xK5FUoayPcQZmlzSLZDyOFdVXU1VRsh36qjhMBWyBXkYZwQqHUJOQhpUa8ZRzPs6O8KuyuBAC+ZMZCDNatB84PBX1FzWYhypVFCvohG4fJAIBqFjosntHO1RfklbNES+pm5VtbDU2MhSBwLzxPGC/QAj6KbI0fHyJEbeao4Kz+s0myDp+ggHP+iWwKaYUd81cLxw4EADbKTBkvUgj9qrfR/IFfnYZxEpJQSmqQkDjIS0zGJ04gkaRubUuoYmYsdqtp6jbi6m4xktIUm7iN/WbMZftdC48oLPtf26HRGzxeqb8qO2E+LT+Z6X9sCpRWcNQ/fy7sg70Gk4/N8EyY5lmWPdl6Q9yCmkTs9YYyQmxmuNZqiXXj/FK/U+NlJ6m7pp8GHSlWvSnL0QjtiH+1w+AEfCOVe';
diff --git a/docs/assets/highlight.css b/docs/assets/highlight.css
index 940fbfe8..a58fd388 100644
--- a/docs/assets/highlight.css
+++ b/docs/assets/highlight.css
@@ -19,6 +19,8 @@
--dark-hl-8: #c8c8c8;
--light-hl-9: #0070c1;
--dark-hl-9: #4fc1ff;
+ --light-hl-10: #098658;
+ --dark-hl-10: #b5cea8;
--light-code-background: #ffffff;
--dark-code-background: #1e1e1e;
}
@@ -35,6 +37,7 @@
--hl-7: var(--light-hl-7);
--hl-8: var(--light-hl-8);
--hl-9: var(--light-hl-9);
+ --hl-10: var(--light-hl-10);
--code-background: var(--light-code-background);
}
}
@@ -51,6 +54,7 @@
--hl-7: var(--dark-hl-7);
--hl-8: var(--dark-hl-8);
--hl-9: var(--dark-hl-9);
+ --hl-10: var(--dark-hl-10);
--code-background: var(--dark-code-background);
}
}
@@ -66,6 +70,7 @@
--hl-7: var(--light-hl-7);
--hl-8: var(--light-hl-8);
--hl-9: var(--light-hl-9);
+ --hl-10: var(--light-hl-10);
--code-background: var(--light-code-background);
}
@@ -80,6 +85,7 @@
--hl-7: var(--dark-hl-7);
--hl-8: var(--dark-hl-8);
--hl-9: var(--dark-hl-9);
+ --hl-10: var(--dark-hl-10);
--code-background: var(--dark-code-background);
}
@@ -113,6 +119,9 @@
.hl-9 {
color: var(--hl-9);
}
+.hl-10 {
+ color: var(--hl-10);
+}
pre,
code {
background: var(--code-background);
diff --git a/docs/assets/icons.js b/docs/assets/icons.js
index 0d1c044c..20caa56f 100644
--- a/docs/assets/icons.js
+++ b/docs/assets/icons.js
@@ -1,20 +1,21 @@
-(function (svg) {
- svg.innerHTML = ``;
- svg.style.display = 'none';
- if (location.protocol === 'file:') {
+(function () {
+ addIcons();
+ function addIcons() {
if (document.readyState === 'loading')
- document.addEventListener('DOMContentLoaded', updateUseElements);
- else updateUseElements();
- function updateUseElements() {
- document.querySelectorAll('use').forEach((el) => {
- if (el.getAttribute('href').includes('#icon-')) {
- el.setAttribute('href', el.getAttribute('href').replace(/.*#/, '#'));
- }
- });
- }
+ return document.addEventListener('DOMContentLoaded', addIcons);
+ const svg = document.body.appendChild(
+ document.createElementNS('http://www.w3.org/2000/svg', 'svg')
+ );
+ svg.innerHTML = `MMNEPVFCICPMFPCPTTAAATR`;
+ svg.style.display = 'none';
+ if (location.protocol === 'file:') updateUseElements();
}
-})(
- document.body.appendChild(
- document.createElementNS('http://www.w3.org/2000/svg', 'svg')
- )
-);
+
+ function updateUseElements() {
+ document.querySelectorAll('use').forEach((el) => {
+ if (el.getAttribute('href').includes('#icon-')) {
+ el.setAttribute('href', el.getAttribute('href').replace(/.*#/, '#'));
+ }
+ });
+ }
+})();
diff --git a/docs/assets/icons.svg b/docs/assets/icons.svg
index 7dead611..50ad5799 100644
--- a/docs/assets/icons.svg
+++ b/docs/assets/icons.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/docs/assets/main.js b/docs/assets/main.js
index 623d0d17..f831c885 100644
--- a/docs/assets/main.js
+++ b/docs/assets/main.js
@@ -1,36 +1,71 @@
'use strict';
-'use strict';
+window.translations = {
+ copy: 'Copy',
+ copied: 'Copied!',
+ normally_hidden:
+ 'This member is normally hidden due to your filter settings.',
+ hierarchy_expand: 'Expand',
+ hierarchy_collapse: 'Collapse',
+ folder: 'Folder',
+ search_index_not_available: 'The search index is not available',
+ search_no_results_found_for_0: 'No results found for {0}',
+ kind_1: 'Project',
+ kind_2: 'Module',
+ kind_4: 'Namespace',
+ kind_8: 'Enumeration',
+ kind_16: 'Enumeration Member',
+ kind_32: 'Variable',
+ kind_64: 'Function',
+ kind_128: 'Class',
+ kind_256: 'Interface',
+ kind_512: 'Constructor',
+ kind_1024: 'Property',
+ kind_2048: 'Method',
+ kind_4096: 'Call Signature',
+ kind_8192: 'Index Signature',
+ kind_16384: 'Constructor Signature',
+ kind_32768: 'Parameter',
+ kind_65536: 'Type Literal',
+ kind_131072: 'Type Parameter',
+ kind_262144: 'Accessor',
+ kind_524288: 'Get Signature',
+ kind_1048576: 'Set Signature',
+ kind_2097152: 'Type Alias',
+ kind_4194304: 'Reference',
+ kind_8388608: 'Document',
+};
+('use strict');
(() => {
- var Ce = Object.create;
- var ne = Object.defineProperty;
- var Pe = Object.getOwnPropertyDescriptor;
- var Oe = Object.getOwnPropertyNames;
- var _e = Object.getPrototypeOf,
- Re = Object.prototype.hasOwnProperty;
- var Me = (t, e) => () => (
+ var Ke = Object.create;
+ var he = Object.defineProperty;
+ var Ge = Object.getOwnPropertyDescriptor;
+ var Ze = Object.getOwnPropertyNames;
+ var Xe = Object.getPrototypeOf,
+ Ye = Object.prototype.hasOwnProperty;
+ var et = (t, e) => () => (
e || t((e = { exports: {} }).exports, e), e.exports
);
- var Fe = (t, e, n, r) => {
+ var tt = (t, e, n, r) => {
if ((e && typeof e == 'object') || typeof e == 'function')
- for (let i of Oe(e))
- !Re.call(t, i) &&
+ for (let i of Ze(e))
+ !Ye.call(t, i) &&
i !== n &&
- ne(t, i, {
+ he(t, i, {
get: () => e[i],
- enumerable: !(r = Pe(e, i)) || r.enumerable,
+ enumerable: !(r = Ge(e, i)) || r.enumerable,
});
return t;
};
- var De = (t, e, n) => (
- (n = t != null ? Ce(_e(t)) : {}),
- Fe(
+ var nt = (t, e, n) => (
+ (n = t != null ? Ke(Xe(t)) : {}),
+ tt(
e || !t || !t.__esModule
- ? ne(n, 'default', { value: t, enumerable: !0 })
+ ? he(n, 'default', { value: t, enumerable: !0 })
: n,
t
)
);
- var ae = Me((se, oe) => {
+ var ye = et((me, ge) => {
(function () {
var t = function (e) {
var n = new t.Builder();
@@ -182,9 +217,9 @@
(t.tokenizer = function (e, n) {
if (e == null || e == null) return [];
if (Array.isArray(e))
- return e.map(function (y) {
+ return e.map(function (f) {
return new t.Token(
- t.utils.asString(y).toLowerCase(),
+ t.utils.asString(f).toLowerCase(),
t.utils.clone(n)
);
});
@@ -197,12 +232,12 @@
o <= i;
o++
) {
- var l = r.charAt(o),
- u = o - a;
- if (l.match(t.tokenizer.separator) || o == i) {
- if (u > 0) {
+ var c = r.charAt(o),
+ l = o - a;
+ if (c.match(t.tokenizer.separator) || o == i) {
+ if (l > 0) {
var d = t.utils.clone(n) || {};
- (d.position = [a, u]),
+ (d.position = [a, l]),
(d.index = s.length),
s.push(new t.Token(r.slice(a, o), d));
}
@@ -270,7 +305,7 @@
var a = i(e[o], o, e);
if (!(a == null || a === ''))
if (Array.isArray(a))
- for (var l = 0; l < a.length; l++) s.push(a[l]);
+ for (var c = 0; c < a.length; c++) s.push(a[c]);
else s.push(a);
}
e = s;
@@ -339,19 +374,19 @@
s = r.length,
o = i.length,
a = 0,
+ c = 0,
l = 0,
- u = 0,
d = 0;
- u < s && d < o;
+ l < s && d < o;
)
- (a = r[u]),
- (l = i[d]),
- a < l
- ? (u += 2)
- : a > l
+ (a = r[l]),
+ (c = i[d]),
+ a < c
+ ? (l += 2)
+ : a > c
? (d += 2)
- : a == l && ((n += r[u + 1] * i[d + 1]), (u += 2), (d += 2));
+ : a == c && ((n += r[l + 1] * i[d + 1]), (l += 2), (d += 2));
return n;
}),
(t.Vector.prototype.similarity = function (e) {
@@ -407,100 +442,100 @@
s = r + '[^aeiouy]*',
o = i + '[aeiou]*',
a = '^(' + s + ')?' + o + s,
- l = '^(' + s + ')?' + o + s + '(' + o + ')?$',
- u = '^(' + s + ')?' + o + s + o + s,
+ c = '^(' + s + ')?' + o + s + '(' + o + ')?$',
+ l = '^(' + s + ')?' + o + s + o + s,
d = '^(' + s + ')?' + i,
- y = new RegExp(a),
- p = new RegExp(u),
- b = new RegExp(l),
- g = new RegExp(d),
- L = /^(.+?)(ss|i)es$/,
- f = /^(.+?)([^s])s$/,
- m = /^(.+?)eed$/,
- S = /^(.+?)(ed|ing)$/,
- w = /.$/,
- k = /(at|bl|iz)$/,
- _ = new RegExp('([^aeiouylsz])\\1$'),
- B = new RegExp('^' + s + i + '[^aeiouwxy]$'),
- A = /^(.+?[^aeiou])y$/,
- j =
+ f = new RegExp(a),
+ p = new RegExp(l),
+ v = new RegExp(c),
+ x = new RegExp(d),
+ w = /^(.+?)(ss|i)es$/,
+ m = /^(.+?)([^s])s$/,
+ g = /^(.+?)eed$/,
+ T = /^(.+?)(ed|ing)$/,
+ L = /.$/,
+ C = /(at|bl|iz)$/,
+ O = new RegExp('([^aeiouylsz])\\1$'),
+ j = new RegExp('^' + s + i + '[^aeiouwxy]$'),
+ N = /^(.+?[^aeiou])y$/,
+ q =
/^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/,
- $ = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/,
- V =
+ W = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/,
+ B =
/^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/,
- q = /^(.+?)(s|t)(ion)$/,
- C = /^(.+?)e$/,
- z = /ll$/,
- W = new RegExp('^' + s + i + '[^aeiouwxy]$'),
- N = function (c) {
- var v, P, T, h, x, O, M;
- if (c.length < 3) return c;
+ z = /^(.+?)(s|t)(ion)$/,
+ _ = /^(.+?)e$/,
+ U = /ll$/,
+ J = new RegExp('^' + s + i + '[^aeiouwxy]$'),
+ V = function (u) {
+ var y, P, k, h, E, Q, H;
+ if (u.length < 3) return u;
if (
- ((T = c.substr(0, 1)),
- T == 'y' && (c = T.toUpperCase() + c.substr(1)),
- (h = L),
- (x = f),
- h.test(c)
- ? (c = c.replace(h, '$1$2'))
- : x.test(c) && (c = c.replace(x, '$1$2')),
- (h = m),
- (x = S),
- h.test(c))
+ ((k = u.substr(0, 1)),
+ k == 'y' && (u = k.toUpperCase() + u.substr(1)),
+ (h = w),
+ (E = m),
+ h.test(u)
+ ? (u = u.replace(h, '$1$2'))
+ : E.test(u) && (u = u.replace(E, '$1$2')),
+ (h = g),
+ (E = T),
+ h.test(u))
) {
- var E = h.exec(c);
- (h = y), h.test(E[1]) && ((h = w), (c = c.replace(h, '')));
- } else if (x.test(c)) {
- var E = x.exec(c);
- (v = E[1]),
- (x = g),
- x.test(v) &&
- ((c = v),
- (x = k),
- (O = _),
- (M = B),
- x.test(c)
- ? (c = c + 'e')
- : O.test(c)
- ? ((h = w), (c = c.replace(h, '')))
- : M.test(c) && (c = c + 'e'));
+ var b = h.exec(u);
+ (h = f), h.test(b[1]) && ((h = L), (u = u.replace(h, '')));
+ } else if (E.test(u)) {
+ var b = E.exec(u);
+ (y = b[1]),
+ (E = x),
+ E.test(y) &&
+ ((u = y),
+ (E = C),
+ (Q = O),
+ (H = j),
+ E.test(u)
+ ? (u = u + 'e')
+ : Q.test(u)
+ ? ((h = L), (u = u.replace(h, '')))
+ : H.test(u) && (u = u + 'e'));
}
- if (((h = A), h.test(c))) {
- var E = h.exec(c);
- (v = E[1]), (c = v + 'i');
+ if (((h = N), h.test(u))) {
+ var b = h.exec(u);
+ (y = b[1]), (u = y + 'i');
}
- if (((h = j), h.test(c))) {
- var E = h.exec(c);
- (v = E[1]), (P = E[2]), (h = y), h.test(v) && (c = v + e[P]);
+ if (((h = q), h.test(u))) {
+ var b = h.exec(u);
+ (y = b[1]), (P = b[2]), (h = f), h.test(y) && (u = y + e[P]);
}
- if (((h = $), h.test(c))) {
- var E = h.exec(c);
- (v = E[1]), (P = E[2]), (h = y), h.test(v) && (c = v + n[P]);
+ if (((h = W), h.test(u))) {
+ var b = h.exec(u);
+ (y = b[1]), (P = b[2]), (h = f), h.test(y) && (u = y + n[P]);
}
- if (((h = V), (x = q), h.test(c))) {
- var E = h.exec(c);
- (v = E[1]), (h = p), h.test(v) && (c = v);
- } else if (x.test(c)) {
- var E = x.exec(c);
- (v = E[1] + E[2]), (x = p), x.test(v) && (c = v);
+ if (((h = B), (E = z), h.test(u))) {
+ var b = h.exec(u);
+ (y = b[1]), (h = p), h.test(y) && (u = y);
+ } else if (E.test(u)) {
+ var b = E.exec(u);
+ (y = b[1] + b[2]), (E = p), E.test(y) && (u = y);
}
- if (((h = C), h.test(c))) {
- var E = h.exec(c);
- (v = E[1]),
+ if (((h = _), h.test(u))) {
+ var b = h.exec(u);
+ (y = b[1]),
(h = p),
- (x = b),
- (O = W),
- (h.test(v) || (x.test(v) && !O.test(v))) && (c = v);
+ (E = v),
+ (Q = J),
+ (h.test(y) || (E.test(y) && !Q.test(y))) && (u = y);
}
return (
- (h = z),
- (x = p),
- h.test(c) && x.test(c) && ((h = w), (c = c.replace(h, ''))),
- T == 'y' && (c = T.toLowerCase() + c.substr(1)),
- c
+ (h = U),
+ (E = p),
+ h.test(u) && E.test(u) && ((h = L), (u = u.replace(h, ''))),
+ k == 'y' && (u = k.toLowerCase() + u.substr(1)),
+ u
);
};
- return function (R) {
- return R.update(N);
+ return function (A) {
+ return A.update(V);
};
})()),
t.Pipeline.registerFunction(t.stemmer, 'stemmer');
@@ -683,15 +718,15 @@
});
}
if (s.editsRemaining != 0) {
- if ('*' in s.node.edges) var l = s.node.edges['*'];
+ if ('*' in s.node.edges) var c = s.node.edges['*'];
else {
- var l = new t.TokenSet();
- s.node.edges['*'] = l;
+ var c = new t.TokenSet();
+ s.node.edges['*'] = c;
}
if (
- (s.str.length == 0 && (l.final = !0),
+ (s.str.length == 0 && (c.final = !0),
i.push({
- node: l,
+ node: c,
editsRemaining: s.editsRemaining - 1,
str: s.str,
}),
@@ -704,25 +739,25 @@
s.str.length == 1 && (s.node.final = !0),
s.str.length >= 1)
) {
- if ('*' in s.node.edges) var u = s.node.edges['*'];
+ if ('*' in s.node.edges) var l = s.node.edges['*'];
else {
- var u = new t.TokenSet();
- s.node.edges['*'] = u;
+ var l = new t.TokenSet();
+ s.node.edges['*'] = l;
}
- s.str.length == 1 && (u.final = !0),
+ s.str.length == 1 && (l.final = !0),
i.push({
- node: u,
+ node: l,
editsRemaining: s.editsRemaining - 1,
str: s.str.slice(1),
});
}
if (s.str.length > 1) {
var d = s.str.charAt(0),
- y = s.str.charAt(1),
+ f = s.str.charAt(1),
p;
- y in s.node.edges
- ? (p = s.node.edges[y])
- : ((p = new t.TokenSet()), (s.node.edges[y] = p)),
+ f in s.node.edges
+ ? (p = s.node.edges[f])
+ : ((p = new t.TokenSet()), (s.node.edges[f] = p)),
s.str.length == 1 && (p.final = !0),
i.push({
node: p,
@@ -744,8 +779,8 @@
a = i == s - 1;
if (o == '*') (n.edges[o] = n), (n.final = a);
else {
- var l = new t.TokenSet();
- (l.final = a), (n.edges[o] = l), (n = l);
+ var c = new t.TokenSet();
+ (c.final = a), (n.edges[o] = c), (n = c);
}
}
return r;
@@ -792,24 +827,24 @@
var s = Object.keys(r.qNode.edges),
o = s.length,
a = Object.keys(r.node.edges),
- l = a.length,
- u = 0;
- u < o;
- u++
+ c = a.length,
+ l = 0;
+ l < o;
+ l++
)
- for (var d = s[u], y = 0; y < l; y++) {
- var p = a[y];
+ for (var d = s[l], f = 0; f < c; f++) {
+ var p = a[f];
if (p == d || d == '*') {
- var b = r.node.edges[p],
- g = r.qNode.edges[d],
- L = b.final && g.final,
- f = void 0;
+ var v = r.node.edges[p],
+ x = r.qNode.edges[d],
+ w = v.final && x.final,
+ m = void 0;
p in r.output.edges
- ? ((f = r.output.edges[p]), (f.final = f.final || L))
- : ((f = new t.TokenSet()),
- (f.final = L),
- (r.output.edges[p] = f)),
- i.push({ qNode: g, output: f, node: b });
+ ? ((m = r.output.edges[p]), (m.final = m.final || w))
+ : ((m = new t.TokenSet()),
+ (m.final = w),
+ (r.output.edges[p] = m)),
+ i.push({ qNode: x, output: m, node: v });
}
}
}
@@ -881,113 +916,113 @@
s = Object.create(null),
o = Object.create(null),
a = Object.create(null),
- l = 0;
- l < this.fields.length;
- l++
+ c = 0;
+ c < this.fields.length;
+ c++
)
- i[this.fields[l]] = new t.Vector();
+ i[this.fields[c]] = new t.Vector();
e.call(n, n);
- for (var l = 0; l < n.clauses.length; l++) {
- var u = n.clauses[l],
+ for (var c = 0; c < n.clauses.length; c++) {
+ var l = n.clauses[c],
d = null,
- y = t.Set.empty;
- u.usePipeline
- ? (d = this.pipeline.runString(u.term, { fields: u.fields }))
- : (d = [u.term]);
+ f = t.Set.empty;
+ l.usePipeline
+ ? (d = this.pipeline.runString(l.term, { fields: l.fields }))
+ : (d = [l.term]);
for (var p = 0; p < d.length; p++) {
- var b = d[p];
- u.term = b;
- var g = t.TokenSet.fromClause(u),
- L = this.tokenSet.intersect(g).toArray();
- if (L.length === 0 && u.presence === t.Query.presence.REQUIRED) {
- for (var f = 0; f < u.fields.length; f++) {
- var m = u.fields[f];
- o[m] = t.Set.empty;
+ var v = d[p];
+ l.term = v;
+ var x = t.TokenSet.fromClause(l),
+ w = this.tokenSet.intersect(x).toArray();
+ if (w.length === 0 && l.presence === t.Query.presence.REQUIRED) {
+ for (var m = 0; m < l.fields.length; m++) {
+ var g = l.fields[m];
+ o[g] = t.Set.empty;
}
break;
}
- for (var S = 0; S < L.length; S++)
+ for (var T = 0; T < w.length; T++)
for (
- var w = L[S], k = this.invertedIndex[w], _ = k._index, f = 0;
- f < u.fields.length;
- f++
+ var L = w[T], C = this.invertedIndex[L], O = C._index, m = 0;
+ m < l.fields.length;
+ m++
) {
- var m = u.fields[f],
- B = k[m],
- A = Object.keys(B),
- j = w + '/' + m,
- $ = new t.Set(A);
+ var g = l.fields[m],
+ j = C[g],
+ N = Object.keys(j),
+ q = L + '/' + g,
+ W = new t.Set(N);
if (
- (u.presence == t.Query.presence.REQUIRED &&
- ((y = y.union($)),
- o[m] === void 0 && (o[m] = t.Set.complete)),
- u.presence == t.Query.presence.PROHIBITED)
+ (l.presence == t.Query.presence.REQUIRED &&
+ ((f = f.union(W)),
+ o[g] === void 0 && (o[g] = t.Set.complete)),
+ l.presence == t.Query.presence.PROHIBITED)
) {
- a[m] === void 0 && (a[m] = t.Set.empty),
- (a[m] = a[m].union($));
+ a[g] === void 0 && (a[g] = t.Set.empty),
+ (a[g] = a[g].union(W));
continue;
}
if (
- (i[m].upsert(_, u.boost, function (Qe, Ie) {
- return Qe + Ie;
+ (i[g].upsert(O, l.boost, function (Ue, Je) {
+ return Ue + Je;
}),
- !s[j])
+ !s[q])
) {
- for (var V = 0; V < A.length; V++) {
- var q = A[V],
- C = new t.FieldRef(q, m),
- z = B[q],
- W;
- (W = r[C]) === void 0
- ? (r[C] = new t.MatchData(w, m, z))
- : W.add(w, m, z);
+ for (var B = 0; B < N.length; B++) {
+ var z = N[B],
+ _ = new t.FieldRef(z, g),
+ U = j[z],
+ J;
+ (J = r[_]) === void 0
+ ? (r[_] = new t.MatchData(L, g, U))
+ : J.add(L, g, U);
}
- s[j] = !0;
+ s[q] = !0;
}
}
}
- if (u.presence === t.Query.presence.REQUIRED)
- for (var f = 0; f < u.fields.length; f++) {
- var m = u.fields[f];
- o[m] = o[m].intersect(y);
+ if (l.presence === t.Query.presence.REQUIRED)
+ for (var m = 0; m < l.fields.length; m++) {
+ var g = l.fields[m];
+ o[g] = o[g].intersect(f);
}
}
for (
- var N = t.Set.complete, R = t.Set.empty, l = 0;
- l < this.fields.length;
- l++
+ var V = t.Set.complete, A = t.Set.empty, c = 0;
+ c < this.fields.length;
+ c++
) {
- var m = this.fields[l];
- o[m] && (N = N.intersect(o[m])), a[m] && (R = R.union(a[m]));
+ var g = this.fields[c];
+ o[g] && (V = V.intersect(o[g])), a[g] && (A = A.union(a[g]));
}
- var c = Object.keys(r),
- v = [],
+ var u = Object.keys(r),
+ y = [],
P = Object.create(null);
if (n.isNegated()) {
- c = Object.keys(this.fieldVectors);
- for (var l = 0; l < c.length; l++) {
- var C = c[l],
- T = t.FieldRef.fromString(C);
- r[C] = new t.MatchData();
+ u = Object.keys(this.fieldVectors);
+ for (var c = 0; c < u.length; c++) {
+ var _ = u[c],
+ k = t.FieldRef.fromString(_);
+ r[_] = new t.MatchData();
}
}
- for (var l = 0; l < c.length; l++) {
- var T = t.FieldRef.fromString(c[l]),
- h = T.docRef;
- if (N.contains(h) && !R.contains(h)) {
- var x = this.fieldVectors[T],
- O = i[T.fieldName].similarity(x),
- M;
- if ((M = P[h]) !== void 0)
- (M.score += O), M.matchData.combine(r[T]);
+ for (var c = 0; c < u.length; c++) {
+ var k = t.FieldRef.fromString(u[c]),
+ h = k.docRef;
+ if (V.contains(h) && !A.contains(h)) {
+ var E = this.fieldVectors[k],
+ Q = i[k.fieldName].similarity(E),
+ H;
+ if ((H = P[h]) !== void 0)
+ (H.score += Q), H.matchData.combine(r[k]);
else {
- var E = { ref: h, score: O, matchData: r[T] };
- (P[h] = E), v.push(E);
+ var b = { ref: h, score: Q, matchData: r[k] };
+ (P[h] = b), y.push(b);
}
}
}
- return v.sort(function (Te, ke) {
- return ke.score - Te.score;
+ return y.sort(function (We, ze) {
+ return ze.score - We.score;
});
}),
(t.Index.prototype.toJSON = function () {
@@ -1014,7 +1049,7 @@
s = Object.create(null),
o = e.invertedIndex,
a = new t.TokenSet.Builder(),
- l = t.Pipeline.load(e.pipeline);
+ c = t.Pipeline.load(e.pipeline);
e.version != t.version &&
t.utils.warn(
"Version mismatch when loading serialised index. Current version of lunr '" +
@@ -1023,17 +1058,17 @@
e.version +
"'"
);
- for (var u = 0; u < i.length; u++) {
- var d = i[u],
- y = d[0],
+ for (var l = 0; l < i.length; l++) {
+ var d = i[l],
+ f = d[0],
p = d[1];
- r[y] = new t.Vector(p);
+ r[f] = new t.Vector(p);
}
- for (var u = 0; u < o.length; u++) {
- var d = o[u],
- b = d[0],
- g = d[1];
- a.insert(b), (s[b] = g);
+ for (var l = 0; l < o.length; l++) {
+ var d = o[l],
+ v = d[0],
+ x = d[1];
+ a.insert(v), (s[v] = x);
}
return (
a.finish(),
@@ -1041,7 +1076,7 @@
(n.fieldVectors = r),
(n.invertedIndex = s),
(n.tokenSet = a.root),
- (n.pipeline = l),
+ (n.pipeline = c),
new t.Index(n)
);
});
@@ -1084,35 +1119,35 @@
for (var s = 0; s < i.length; s++) {
var o = i[s],
a = this._fields[o].extractor,
- l = a ? a(e) : e[o],
- u = this.tokenizer(l, { fields: [o] }),
- d = this.pipeline.run(u),
- y = new t.FieldRef(r, o),
+ c = a ? a(e) : e[o],
+ l = this.tokenizer(c, { fields: [o] }),
+ d = this.pipeline.run(l),
+ f = new t.FieldRef(r, o),
p = Object.create(null);
- (this.fieldTermFrequencies[y] = p),
- (this.fieldLengths[y] = 0),
- (this.fieldLengths[y] += d.length);
- for (var b = 0; b < d.length; b++) {
- var g = d[b];
+ (this.fieldTermFrequencies[f] = p),
+ (this.fieldLengths[f] = 0),
+ (this.fieldLengths[f] += d.length);
+ for (var v = 0; v < d.length; v++) {
+ var x = d[v];
if (
- (p[g] == null && (p[g] = 0),
- (p[g] += 1),
- this.invertedIndex[g] == null)
+ (p[x] == null && (p[x] = 0),
+ (p[x] += 1),
+ this.invertedIndex[x] == null)
) {
- var L = Object.create(null);
- (L._index = this.termIndex), (this.termIndex += 1);
- for (var f = 0; f < i.length; f++)
- L[i[f]] = Object.create(null);
- this.invertedIndex[g] = L;
+ var w = Object.create(null);
+ (w._index = this.termIndex), (this.termIndex += 1);
+ for (var m = 0; m < i.length; m++)
+ w[i[m]] = Object.create(null);
+ this.invertedIndex[x] = w;
}
- this.invertedIndex[g][o][r] == null &&
- (this.invertedIndex[g][o][r] = Object.create(null));
- for (var m = 0; m < this.metadataWhitelist.length; m++) {
- var S = this.metadataWhitelist[m],
- w = g.metadata[S];
- this.invertedIndex[g][o][r][S] == null &&
- (this.invertedIndex[g][o][r][S] = []),
- this.invertedIndex[g][o][r][S].push(w);
+ this.invertedIndex[x][o][r] == null &&
+ (this.invertedIndex[x][o][r] = Object.create(null));
+ for (var g = 0; g < this.metadataWhitelist.length; g++) {
+ var T = this.metadataWhitelist[g],
+ L = x.metadata[T];
+ this.invertedIndex[x][o][r][T] == null &&
+ (this.invertedIndex[x][o][r][T] = []),
+ this.invertedIndex[x][o][r][T].push(L);
}
}
}
@@ -1134,9 +1169,9 @@
r[a] || (r[a] = 0),
(r[a] += this.fieldLengths[o]);
}
- for (var l = Object.keys(this._fields), s = 0; s < l.length; s++) {
- var u = l[s];
- r[u] = r[u] / i[u];
+ for (var c = Object.keys(this._fields), s = 0; s < c.length; s++) {
+ var l = c[s];
+ r[l] = r[l] / i[l];
}
this.averageFieldLength = r;
}),
@@ -1153,38 +1188,38 @@
for (
var o = t.FieldRef.fromString(n[s]),
a = o.fieldName,
- l = this.fieldLengths[o],
- u = new t.Vector(),
+ c = this.fieldLengths[o],
+ l = new t.Vector(),
d = this.fieldTermFrequencies[o],
- y = Object.keys(d),
- p = y.length,
- b = this._fields[a].boost || 1,
- g = this._documents[o.docRef].boost || 1,
- L = 0;
- L < p;
- L++
+ f = Object.keys(d),
+ p = f.length,
+ v = this._fields[a].boost || 1,
+ x = this._documents[o.docRef].boost || 1,
+ w = 0;
+ w < p;
+ w++
) {
- var f = y[L],
- m = d[f],
- S = this.invertedIndex[f]._index,
- w,
- k,
- _;
- i[f] === void 0
- ? ((w = t.idf(this.invertedIndex[f], this.documentCount)),
- (i[f] = w))
- : (w = i[f]),
- (k =
- (w * ((this._k1 + 1) * m)) /
+ var m = f[w],
+ g = d[m],
+ T = this.invertedIndex[m]._index,
+ L,
+ C,
+ O;
+ i[m] === void 0
+ ? ((L = t.idf(this.invertedIndex[m], this.documentCount)),
+ (i[m] = L))
+ : (L = i[m]),
+ (C =
+ (L * ((this._k1 + 1) * g)) /
(this._k1 *
- (1 - this._b + this._b * (l / this.averageFieldLength[a])) +
- m)),
- (k *= b),
- (k *= g),
- (_ = Math.round(k * 1e3) / 1e3),
- u.insert(S, _);
+ (1 - this._b + this._b * (c / this.averageFieldLength[a])) +
+ g)),
+ (C *= v),
+ (C *= x),
+ (O = Math.round(C * 1e3) / 1e3),
+ l.insert(T, O);
}
- e[o] = u;
+ e[o] = l;
}
this.fieldVectors = e;
}),
@@ -1233,11 +1268,11 @@
(this.metadata[i] = Object.create(null));
for (var o = 0; o < s.length; o++) {
var a = s[o],
- l = Object.keys(e.metadata[i][a]);
+ c = Object.keys(e.metadata[i][a]);
this.metadata[i][a] == null &&
(this.metadata[i][a] = Object.create(null));
- for (var u = 0; u < l.length; u++) {
- var d = l[u];
+ for (var l = 0; l < c.length; l++) {
+ var d = c[l];
this.metadata[i][a][d] == null
? (this.metadata[i][a][d] = e.metadata[i][a][d])
: (this.metadata[i][a][d] = this.metadata[i][a][d].concat(
@@ -1631,21 +1666,93 @@
(function (e, n) {
typeof define == 'function' && define.amd
? define(n)
- : typeof se == 'object'
- ? (oe.exports = n())
+ : typeof me == 'object'
+ ? (ge.exports = n())
: (e.lunr = n());
})(this, function () {
return t;
});
})();
});
- var re = [];
- function G(t, e) {
- re.push({ selector: e, constructor: t });
+ var M,
+ G = {
+ getItem() {
+ return null;
+ },
+ setItem() {},
+ },
+ K;
+ try {
+ (K = localStorage), (M = K);
+ } catch {
+ (K = G), (M = G);
+ }
+ var S = {
+ getItem: (t) => M.getItem(t),
+ setItem: (t, e) => M.setItem(t, e),
+ disableWritingLocalStorage() {
+ M = G;
+ },
+ disable() {
+ localStorage.clear(), (M = G);
+ },
+ enable() {
+ M = K;
+ },
+ };
+ window.TypeDoc ||= {
+ disableWritingLocalStorage() {
+ S.disableWritingLocalStorage();
+ },
+ disableLocalStorage: () => {
+ S.disable();
+ },
+ enableLocalStorage: () => {
+ S.enable();
+ },
+ };
+ window.translations ||= {
+ copy: 'Copy',
+ copied: 'Copied!',
+ normally_hidden:
+ 'This member is normally hidden due to your filter settings.',
+ hierarchy_expand: 'Expand',
+ hierarchy_collapse: 'Collapse',
+ search_index_not_available: 'The search index is not available',
+ search_no_results_found_for_0: 'No results found for {0}',
+ folder: 'Folder',
+ kind_1: 'Project',
+ kind_2: 'Module',
+ kind_4: 'Namespace',
+ kind_8: 'Enumeration',
+ kind_16: 'Enumeration Member',
+ kind_32: 'Variable',
+ kind_64: 'Function',
+ kind_128: 'Class',
+ kind_256: 'Interface',
+ kind_512: 'Constructor',
+ kind_1024: 'Property',
+ kind_2048: 'Method',
+ kind_4096: 'Call Signature',
+ kind_8192: 'Index Signature',
+ kind_16384: 'Constructor Signature',
+ kind_32768: 'Parameter',
+ kind_65536: 'Type Literal',
+ kind_131072: 'Type Parameter',
+ kind_262144: 'Accessor',
+ kind_524288: 'Get Signature',
+ kind_1048576: 'Set Signature',
+ kind_2097152: 'Type Alias',
+ kind_4194304: 'Reference',
+ kind_8388608: 'Document',
+ };
+ var pe = [];
+ function X(t, e) {
+ pe.push({ selector: e, constructor: t });
}
- var U = class {
+ var Z = class {
+ alwaysVisibleMember = null;
constructor() {
- this.alwaysVisibleMember = null;
this.createComponents(document.body),
this.ensureFocusedElementVisible(),
this.listenForCodeCopies(),
@@ -1658,7 +1765,7 @@
this.scrollToHash());
}
createComponents(e) {
- re.forEach((n) => {
+ pe.forEach((n) => {
e.querySelectorAll(n.selector).forEach((r) => {
r.dataset.hasInstance ||
(new n.constructor({ el: r, app: this }),
@@ -1671,15 +1778,13 @@
}
showPage() {
document.body.style.display &&
- (console.log('Show page'),
- document.body.style.removeProperty('display'),
+ (document.body.style.removeProperty('display'),
this.ensureFocusedElementVisible(),
this.updateIndexVisibility(),
this.scrollToHash());
}
scrollToHash() {
if (location.hash) {
- console.log('Scorlling');
let e = document.getElementById(location.hash.substring(1));
if (!e) return;
e.scrollIntoView({ behavior: 'instant', block: 'start' });
@@ -1690,11 +1795,12 @@
n = e?.parentElement;
for (; n && !n.classList.contains('.tsd-navigation'); )
n instanceof HTMLDetailsElement && (n.open = !0), (n = n.parentElement);
- if (e && !e.checkVisibility()) {
+ if (e && !rt(e)) {
let r =
e.getBoundingClientRect().top -
document.documentElement.clientHeight / 4;
- document.querySelector('.site-menu').scrollTop = r;
+ (document.querySelector('.site-menu').scrollTop = r),
+ (document.querySelector('.col-sidebar').scrollTop = r);
}
}
updateIndexVisibility() {
@@ -1723,14 +1829,19 @@
if (!e) return;
let n = e.parentElement;
for (; n && n.tagName !== 'SECTION'; ) n = n.parentElement;
- if (n && n.offsetParent == null) {
+ if (!n) return;
+ let r = n.offsetParent == null,
+ i = n;
+ for (; i !== document.body; )
+ i instanceof HTMLDetailsElement && (i.open = !0), (i = i.parentElement);
+ if (n.offsetParent == null) {
(this.alwaysVisibleMember = n), n.classList.add('always-visible');
- let r = document.createElement('p');
- r.classList.add('warning'),
- (r.textContent =
- 'This member is normally hidden due to your filter settings.'),
- n.prepend(r);
+ let s = document.createElement('p');
+ s.classList.add('warning'),
+ (s.textContent = window.translations.normally_hidden),
+ n.prepend(s);
}
+ r && e.scrollIntoView();
}
listenForCodeCopies() {
document.querySelectorAll('pre > button').forEach((e) => {
@@ -1740,170 +1851,299 @@
navigator.clipboard.writeText(
e.previousElementSibling.innerText.trim()
),
- (e.textContent = 'Copied!'),
+ (e.textContent = window.translations.copied),
e.classList.add('visible'),
clearTimeout(n),
(n = setTimeout(() => {
e.classList.remove('visible'),
(n = setTimeout(() => {
- e.textContent = 'Copy';
+ e.textContent = window.translations.copy;
}, 100));
}, 1e3));
});
});
}
};
- var ie = (t, e = 100) => {
+ function rt(t) {
+ let e = t.getBoundingClientRect(),
+ n = Math.max(document.documentElement.clientHeight, window.innerHeight);
+ return !(e.bottom < 0 || e.top - n >= 0);
+ }
+ var fe = (t, e = 100) => {
let n;
return () => {
clearTimeout(n), (n = setTimeout(() => t(), e));
};
};
- var de = De(ae());
- async function le(t, e) {
- if (!window.searchData) return;
- let n = await fetch(window.searchData),
- r = new Blob([await n.arrayBuffer()])
+ var Ie = nt(ye(), 1);
+ async function R(t) {
+ let e = Uint8Array.from(atob(t), (s) => s.charCodeAt(0)),
+ r = new Blob([e])
.stream()
- .pipeThrough(new DecompressionStream('gzip')),
- i = await new Response(r).json();
- (t.data = i),
- (t.index = de.Index.load(i.index)),
- e.classList.remove('loading'),
- e.classList.add('ready');
+ .pipeThrough(new DecompressionStream('deflate')),
+ i = await new Response(r).text();
+ return JSON.parse(i);
}
- function he() {
- let t = document.getElementById('tsd-search');
- if (!t) return;
- let e = { base: t.dataset.base + '/' },
- n = document.getElementById('tsd-search-script');
- t.classList.add('loading'),
- n &&
- (n.addEventListener('error', () => {
- t.classList.remove('loading'), t.classList.add('failure');
- }),
- n.addEventListener('load', () => {
- le(e, t);
- }),
- le(e, t));
- let r = document.querySelector('#tsd-search input'),
- i = document.querySelector('#tsd-search .results');
- if (!r || !i)
- throw new Error(
- 'The input field or the result list wrapper was not found'
- );
- let s = !1;
- i.addEventListener('mousedown', () => (s = !0)),
- i.addEventListener('mouseup', () => {
- (s = !1), t.classList.remove('has-focus');
- }),
- r.addEventListener('focus', () => t.classList.add('has-focus')),
- r.addEventListener('blur', () => {
- s || ((s = !1), t.classList.remove('has-focus'));
- }),
- Ae(t, i, r, e);
+ var Y = 'closing',
+ ae = 'tsd-overlay';
+ function it() {
+ let t = Math.abs(window.innerWidth - document.documentElement.clientWidth);
+ (document.body.style.overflow = 'hidden'),
+ (document.body.style.paddingRight = `${t}px`);
}
- function Ae(t, e, n, r) {
- n.addEventListener(
- 'input',
- ie(() => {
- Ve(t, e, n, r);
- }, 200)
- );
- let i = !1;
- n.addEventListener('keydown', (s) => {
- (i = !0),
- s.key == 'Enter'
- ? Ne(e, n)
- : s.key == 'Escape'
- ? n.blur()
- : s.key == 'ArrowUp'
- ? ue(e, -1)
- : s.key === 'ArrowDown'
- ? ue(e, 1)
- : (i = !1);
+ function st() {
+ document.body.style.removeProperty('overflow'),
+ document.body.style.removeProperty('padding-right');
+ }
+ function xe(t, e) {
+ t.addEventListener('animationend', () => {
+ t.classList.contains(Y) &&
+ (t.classList.remove(Y),
+ document.getElementById(ae)?.remove(),
+ t.close(),
+ st());
}),
- n.addEventListener('keypress', (s) => {
- i && s.preventDefault();
+ t.addEventListener('cancel', (n) => {
+ n.preventDefault(), ve(t);
}),
- document.body.addEventListener('keydown', (s) => {
- s.altKey ||
- s.ctrlKey ||
- s.metaKey ||
- (!n.matches(':focus') &&
- s.key === '/' &&
- (n.focus(), s.preventDefault()));
+ e?.closeOnClick &&
+ document.addEventListener(
+ 'click',
+ (n) => {
+ t.open && !t.contains(n.target) && ve(t);
+ },
+ !0
+ );
+ }
+ function Ee(t) {
+ if (t.open) return;
+ let e = document.createElement('div');
+ (e.id = ae), document.body.appendChild(e), t.showModal(), it();
+ }
+ function ve(t) {
+ if (!t.open) return;
+ document.getElementById(ae)?.classList.add(Y), t.classList.add(Y);
+ }
+ var I = class {
+ el;
+ app;
+ constructor(e) {
+ (this.el = e.el), (this.app = e.app);
+ }
+ };
+ var be = document.head.appendChild(document.createElement('style'));
+ be.dataset.for = 'filters';
+ var le = {};
+ function we(t) {
+ for (let e of t.split(/\s+/)) if (le.hasOwnProperty(e) && !le[e]) return !0;
+ return !1;
+ }
+ var ee = class extends I {
+ key;
+ value;
+ constructor(e) {
+ super(e),
+ (this.key = `filter-${this.el.name}`),
+ (this.value = this.el.checked),
+ this.el.addEventListener('change', () => {
+ this.setLocalStorage(this.el.checked);
+ }),
+ this.setLocalStorage(this.fromLocalStorage()),
+ (be.innerHTML += `html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; }
+`),
+ this.app.updateIndexVisibility();
+ }
+ fromLocalStorage() {
+ let e = S.getItem(this.key);
+ return e ? e === 'true' : this.el.checked;
+ }
+ setLocalStorage(e) {
+ S.setItem(this.key, e.toString()),
+ (this.value = e),
+ this.handleValueChange();
+ }
+ handleValueChange() {
+ (this.el.checked = this.value),
+ document.documentElement.classList.toggle(this.key, this.value),
+ (le[`tsd-is-${this.el.name}`] = this.value),
+ this.app.filterChanged(),
+ this.app.updateIndexVisibility();
+ }
+ };
+ var Le = 0;
+ async function Se(t, e) {
+ if (!window.searchData) return;
+ let n = await R(window.searchData);
+ (t.data = n), (t.index = Ie.Index.load(n.index)), (e.innerHTML = '');
+ }
+ function _e() {
+ let t = document.getElementById('tsd-search-trigger'),
+ e = document.getElementById('tsd-search'),
+ n = document.getElementById('tsd-search-input'),
+ r = document.getElementById('tsd-search-results'),
+ i = document.getElementById('tsd-search-script'),
+ s = document.getElementById('tsd-search-status');
+ if (!(t && e && n && r && i && s))
+ throw new Error('Search controls missing');
+ let o = { base: document.documentElement.dataset.base };
+ o.base.endsWith('/') || (o.base += '/'),
+ i.addEventListener('error', () => {
+ let a = window.translations.search_index_not_available;
+ Pe(s, a);
+ }),
+ i.addEventListener('load', () => {
+ Se(o, s);
+ }),
+ Se(o, s),
+ ot({ trigger: t, searchEl: e, results: r, field: n, status: s }, o);
+ }
+ function ot(t, e) {
+ let { field: n, results: r, searchEl: i, status: s, trigger: o } = t;
+ xe(i, { closeOnClick: !0 });
+ function a() {
+ Ee(i), n.setSelectionRange(0, n.value.length);
+ }
+ o.addEventListener('click', a),
+ n.addEventListener(
+ 'input',
+ fe(() => {
+ at(r, n, s, e);
+ }, 200)
+ ),
+ n.addEventListener('keydown', (l) => {
+ if (r.childElementCount === 0 || l.ctrlKey || l.metaKey || l.altKey)
+ return;
+ let d = n.getAttribute('aria-activedescendant'),
+ f = d ? document.getElementById(d) : null;
+ if (f) {
+ let p = !1,
+ v = !1;
+ switch (l.key) {
+ case 'Home':
+ case 'End':
+ case 'ArrowLeft':
+ case 'ArrowRight':
+ v = !0;
+ break;
+ case 'ArrowDown':
+ case 'ArrowUp':
+ p = l.shiftKey;
+ break;
+ }
+ (p || v) && ke(n);
+ }
+ if (!l.shiftKey)
+ switch (l.key) {
+ case 'Enter':
+ f?.querySelector('a')?.click();
+ break;
+ case 'ArrowUp':
+ Te(r, n, f, -1), l.preventDefault();
+ break;
+ case 'ArrowDown':
+ Te(r, n, f, 1), l.preventDefault();
+ break;
+ }
+ });
+ function c() {
+ ke(n);
+ }
+ n.addEventListener('change', c),
+ n.addEventListener('blur', c),
+ n.addEventListener('click', c),
+ document.body.addEventListener('keydown', (l) => {
+ if (l.altKey || l.metaKey || l.shiftKey) return;
+ let d = l.ctrlKey && l.key === 'k',
+ f = !l.ctrlKey && !ut() && l.key === '/';
+ (d || f) && (l.preventDefault(), a());
});
}
- function Ve(t, e, n, r) {
+ function at(t, e, n, r) {
if (!r.index || !r.data) return;
- e.textContent = '';
- let i = n.value.trim(),
+ (t.innerHTML = ''), (n.innerHTML = ''), (Le += 1);
+ let i = e.value.trim(),
s;
if (i) {
- let o = i
+ let a = i
.split(' ')
- .map((a) => (a.length ? `*${a}*` : ''))
+ .map((c) => (c.length ? `*${c}*` : ''))
.join(' ');
- s = r.index.search(o);
+ s = r.index.search(a).filter(({ ref: c }) => {
+ let l = r.data.rows[Number(c)].classes;
+ return !l || !we(l);
+ });
} else s = [];
- for (let o = 0; o < s.length; o++) {
- let a = s[o],
- l = r.data.rows[Number(a.ref)],
- u = 1;
- l.name.toLowerCase().startsWith(i.toLowerCase()) &&
- (u *= 1 + 1 / (1 + Math.abs(l.name.length - i.length))),
- (a.score *= u);
+ if (s.length === 0 && i) {
+ let a = window.translations.search_no_results_found_for_0.replace(
+ '{0}',
+ ` "${te(i)}" `
+ );
+ Pe(n, a);
+ return;
}
- if (s.length === 0) {
- let o = document.createElement('li');
- o.classList.add('no-results');
- let a = document.createElement('span');
- (a.textContent = 'No results found'), o.appendChild(a), e.appendChild(o);
+ for (let a = 0; a < s.length; a++) {
+ let c = s[a],
+ l = r.data.rows[Number(c.ref)],
+ d = 1;
+ l.name.toLowerCase().startsWith(i.toLowerCase()) &&
+ (d *= 10 / (1 + Math.abs(l.name.length - i.length))),
+ (c.score *= d);
}
- s.sort((o, a) => a.score - o.score);
- for (let o = 0, a = Math.min(10, s.length); o < a; o++) {
- let l = r.data.rows[Number(s[o].ref)],
- u = ``,
- d = ce(l.name, i);
+ s.sort((a, c) => c.score - a.score);
+ let o = Math.min(10, s.length);
+ for (let a = 0; a < o; a++) {
+ let c = r.data.rows[Number(s[a].ref)],
+ d = ``,
+ f = Ce(c.name, i);
globalThis.DEBUG_SEARCH_WEIGHTS &&
- (d += ` (score: ${s[o].score.toFixed(2)})`),
- l.parent &&
- (d = `
- ${ce(l.parent, i)}.${d}`);
- let y = document.createElement('li');
- y.classList.value = l.classes ?? '';
- let p = document.createElement('a');
- (p.href = r.base + l.url),
- (p.innerHTML = u + d),
- y.append(p),
- e.appendChild(y);
+ (f += ` (score: ${s[a].score.toFixed(2)})`),
+ c.parent &&
+ (f = `
+ ${Ce(c.parent, i)}.${f}`);
+ let p = document.createElement('li');
+ (p.id = `tsd-search:${Le}-${a}`),
+ (p.role = 'option'),
+ (p.ariaSelected = 'false'),
+ (p.classList.value = c.classes ?? '');
+ let v = document.createElement('a');
+ (v.tabIndex = -1),
+ (v.href = r.base + c.url),
+ (v.innerHTML = d + `${f}`),
+ p.append(v),
+ t.appendChild(p);
}
}
- function ue(t, e) {
- let n = t.querySelector('.current');
- if (!n)
- (n = t.querySelector(e == 1 ? 'li:first-child' : 'li:last-child')),
- n && n.classList.add('current');
- else {
- let r = n;
- if (e === 1)
- do r = r.nextElementSibling ?? void 0;
- while (r instanceof HTMLElement && r.offsetParent == null);
- else
- do r = r.previousElementSibling ?? void 0;
- while (r instanceof HTMLElement && r.offsetParent == null);
- r && (n.classList.remove('current'), r.classList.add('current'));
+ function Te(t, e, n, r) {
+ let i;
+ if (
+ (r === 1
+ ? (i = n?.nextElementSibling || t.firstElementChild)
+ : (i = n?.previousElementSibling || t.lastElementChild),
+ i !== n)
+ ) {
+ if (!i || i.role !== 'option') {
+ console.error('Option missing');
+ return;
+ }
+ (i.ariaSelected = 'true'),
+ i.scrollIntoView({ behavior: 'smooth', block: 'nearest' }),
+ e.setAttribute('aria-activedescendant', i.id),
+ n?.setAttribute('aria-selected', 'false');
}
}
- function Ne(t, e) {
- let n = t.querySelector('.current');
- if ((n || (n = t.querySelector('li:first-child')), n)) {
- let r = n.querySelector('a');
- r && (window.location.href = r.href), e.blur();
- }
+ function ke(t) {
+ let e = t.getAttribute('aria-activedescendant');
+ (e ? document.getElementById(e) : null)?.setAttribute(
+ 'aria-selected',
+ 'false'
+ ),
+ t.setAttribute('aria-activedescendant', '');
}
- function ce(t, e) {
+ function Ce(t, e) {
if (e === '') return t;
let n = t.toLocaleLowerCase(),
r = e.toLocaleLowerCase(),
@@ -1911,68 +2151,92 @@
s = 0,
o = n.indexOf(r);
for (; o != -1; )
- i.push(K(t.substring(s, o)), `${K(t.substring(o, o + r.length))}`),
+ i.push(
+ te(t.substring(s, o)),
+ `${te(t.substring(o, o + r.length))}`
+ ),
(s = o + r.length),
(o = n.indexOf(r, s));
- return i.push(K(t.substring(s))), i.join('');
+ return i.push(te(t.substring(s))), i.join('');
}
- var He = {
+ var lt = {
'&': '&',
'<': '<',
'>': '>',
"'": ''',
'"': '"',
};
- function K(t) {
- return t.replace(/[&<>"'"]/g, (e) => He[e]);
+ function te(t) {
+ return t.replace(/[&<>"'"]/g, (e) => lt[e]);
}
- var I = class {
- constructor(e) {
- (this.el = e.el), (this.app = e.app);
- }
- };
- var F = 'mousedown',
- fe = 'mousemove',
- H = 'mouseup',
- J = { x: 0, y: 0 },
- pe = !1,
- ee = !1,
- Be = !1,
- D = !1,
- me = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(
+ function Pe(t, e) {
+ t.innerHTML = e ? `
${e}
` : '';
+ }
+ var ct = [
+ 'button',
+ 'checkbox',
+ 'file',
+ 'hidden',
+ 'image',
+ 'radio',
+ 'range',
+ 'reset',
+ 'submit',
+ ];
+ function ut() {
+ let t = document.activeElement;
+ return t
+ ? t.isContentEditable ||
+ t.tagName === 'TEXTAREA' ||
+ t.tagName === 'SEARCH'
+ ? !0
+ : t.tagName === 'INPUT' && !ct.includes(t.type)
+ : !1;
+ }
+ var D = 'mousedown',
+ Me = 'mousemove',
+ $ = 'mouseup',
+ ne = { x: 0, y: 0 },
+ Qe = !1,
+ ce = !1,
+ dt = !1,
+ F = !1,
+ Oe = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(
navigator.userAgent
);
- document.documentElement.classList.add(me ? 'is-mobile' : 'not-mobile');
- me &&
+ document.documentElement.classList.add(Oe ? 'is-mobile' : 'not-mobile');
+ Oe &&
'ontouchstart' in document.documentElement &&
- ((Be = !0), (F = 'touchstart'), (fe = 'touchmove'), (H = 'touchend'));
- document.addEventListener(F, (t) => {
- (ee = !0), (D = !1);
- let e = F == 'touchstart' ? t.targetTouches[0] : t;
- (J.y = e.pageY || 0), (J.x = e.pageX || 0);
+ ((dt = !0), (D = 'touchstart'), (Me = 'touchmove'), ($ = 'touchend'));
+ document.addEventListener(D, (t) => {
+ (ce = !0), (F = !1);
+ let e = D == 'touchstart' ? t.targetTouches[0] : t;
+ (ne.y = e.pageY || 0), (ne.x = e.pageX || 0);
});
- document.addEventListener(fe, (t) => {
- if (ee && !D) {
- let e = F == 'touchstart' ? t.targetTouches[0] : t,
- n = J.x - (e.pageX || 0),
- r = J.y - (e.pageY || 0);
- D = Math.sqrt(n * n + r * r) > 10;
+ document.addEventListener(Me, (t) => {
+ if (ce && !F) {
+ let e = D == 'touchstart' ? t.targetTouches[0] : t,
+ n = ne.x - (e.pageX || 0),
+ r = ne.y - (e.pageY || 0);
+ F = Math.sqrt(n * n + r * r) > 10;
}
});
- document.addEventListener(H, () => {
- ee = !1;
+ document.addEventListener($, () => {
+ ce = !1;
});
document.addEventListener('click', (t) => {
- pe && (t.preventDefault(), t.stopImmediatePropagation(), (pe = !1));
+ Qe && (t.preventDefault(), t.stopImmediatePropagation(), (Qe = !1));
});
- var X = class extends I {
+ var re = class extends I {
+ active;
+ className;
constructor(e) {
super(e),
(this.className = this.el.dataset.toggle || ''),
- this.el.addEventListener(H, (n) => this.onPointerUp(n)),
+ this.el.addEventListener($, (n) => this.onPointerUp(n)),
this.el.addEventListener('click', (n) => n.preventDefault()),
- document.addEventListener(F, (n) => this.onDocumentPointerDown(n)),
- document.addEventListener(H, (n) => this.onDocumentPointerUp(n));
+ document.addEventListener(D, (n) => this.onDocumentPointerDown(n)),
+ document.addEventListener($, (n) => this.onDocumentPointerUp(n));
}
setActive(e) {
if (this.active == e) return;
@@ -1984,7 +2248,7 @@
setTimeout(() => document.documentElement.classList.remove(n), 500);
}
onPointerUp(e) {
- D || (this.setActive(!0), e.preventDefault());
+ F || (this.setActive(!0), e.preventDefault());
}
onDocumentPointerDown(e) {
if (this.active) {
@@ -1993,7 +2257,7 @@
}
}
onDocumentPointerUp(e) {
- if (!D && this.active && e.target.closest('.col-sidebar')) {
+ if (!F && this.active && e.target.closest('.col-sidebar')) {
let n = e.target.closest('a');
if (n) {
let r = window.location.href;
@@ -2004,142 +2268,279 @@
}
}
};
- var te;
- try {
- te = localStorage;
- } catch {
- te = {
- getItem() {
- return null;
- },
- setItem() {},
+ var ue = new Map(),
+ de = class {
+ open;
+ accordions = [];
+ key;
+ constructor(e, n) {
+ (this.key = e), (this.open = n);
+ }
+ add(e) {
+ this.accordions.push(e),
+ (e.open = this.open),
+ e.addEventListener('toggle', () => {
+ this.toggle(e.open);
+ });
+ }
+ toggle(e) {
+ for (let n of this.accordions) n.open = e;
+ S.setItem(this.key, e.toString());
+ }
+ },
+ ie = class extends I {
+ constructor(e) {
+ super(e);
+ let n = this.el.querySelector('summary'),
+ r = n.querySelector('a');
+ r &&
+ r.addEventListener('click', () => {
+ location.assign(r.href);
+ });
+ let i = `tsd-accordion-${
+ n.dataset.key ??
+ n.textContent.trim().replace(/\s+/g, '-').toLowerCase()
+ }`,
+ s;
+ if (ue.has(i)) s = ue.get(i);
+ else {
+ let o = S.getItem(i),
+ a = o ? o === 'true' : this.el.open;
+ (s = new de(i, a)), ue.set(i, s);
+ }
+ s.add(this.el);
+ }
};
- }
- var Q = te;
- var ye = document.head.appendChild(document.createElement('style'));
- ye.dataset.for = 'filters';
- var Y = class extends I {
- constructor(e) {
- super(e),
- (this.key = `filter-${this.el.name}`),
- (this.value = this.el.checked),
- this.el.addEventListener('change', () => {
- this.setLocalStorage(this.el.checked);
- }),
- this.setLocalStorage(this.fromLocalStorage()),
- (ye.innerHTML += `html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; }
-`),
- this.app.updateIndexVisibility();
- }
- fromLocalStorage() {
- let e = Q.getItem(this.key);
- return e ? e === 'true' : this.el.checked;
- }
- setLocalStorage(e) {
- Q.setItem(this.key, e.toString()),
- (this.value = e),
- this.handleValueChange();
- }
- handleValueChange() {
- (this.el.checked = this.value),
- document.documentElement.classList.toggle(this.key, this.value),
- this.app.filterChanged(),
- this.app.updateIndexVisibility();
- }
- };
- var Z = class extends I {
- constructor(e) {
- super(e),
- (this.summary = this.el.querySelector('.tsd-accordion-summary')),
- (this.icon = this.summary.querySelector('svg')),
- (this.key = `tsd-accordion-${
- this.summary.dataset.key ??
- this.summary.textContent.trim().replace(/\s+/g, '-').toLowerCase()
- }`);
- let n = Q.getItem(this.key);
- (this.el.open = n ? n === 'true' : this.el.open),
- this.el.addEventListener('toggle', () => this.update());
- let r = this.summary.querySelector('a');
- r &&
- r.addEventListener('click', () => {
- location.assign(r.href);
- }),
- this.update();
- }
- update() {
- (this.icon.style.transform = `rotate(${this.el.open ? 0 : -90}deg)`),
- Q.setItem(this.key, this.el.open.toString());
- }
- };
- function ge(t) {
- let e = Q.getItem('tsd-theme') || 'os';
+ function He(t) {
+ let e = S.getItem('tsd-theme') || 'os';
(t.value = e),
- ve(e),
+ Ae(e),
t.addEventListener('change', () => {
- Q.setItem('tsd-theme', t.value), ve(t.value);
+ S.setItem('tsd-theme', t.value), Ae(t.value);
});
}
- function ve(t) {
+ function Ae(t) {
document.documentElement.dataset.theme = t;
}
- var Le;
- function be() {
+ var se;
+ function Ne() {
let t = document.getElementById('tsd-nav-script');
- t && (t.addEventListener('load', xe), xe());
+ t && (t.addEventListener('load', Re), Re());
}
- async function xe() {
+ async function Re() {
let t = document.getElementById('tsd-nav-container');
if (!t || !window.navigationData) return;
- let n = await (await fetch(window.navigationData)).arrayBuffer(),
- r = new Blob([n]).stream().pipeThrough(new DecompressionStream('gzip')),
- i = await new Response(r).json();
- (Le = t.dataset.base + '/'), (t.innerHTML = '');
- for (let s of i) we(s, t, []);
+ let e = await R(window.navigationData);
+ (se = document.documentElement.dataset.base),
+ se.endsWith('/') || (se += '/'),
+ (t.innerHTML = '');
+ for (let n of e) Be(n, t, []);
window.app.createComponents(t),
window.app.showPage(),
window.app.ensureActivePageVisible();
}
- function we(t, e, n) {
+ function Be(t, e, n) {
let r = e.appendChild(document.createElement('li'));
if (t.children) {
let i = [...n, t.text],
s = r.appendChild(document.createElement('details'));
- (s.className = t.class
- ? `${t.class} tsd-index-accordion`
- : 'tsd-index-accordion'),
- (s.dataset.key = i.join('$'));
+ s.className = t.class ? `${t.class} tsd-accordion` : 'tsd-accordion';
let o = s.appendChild(document.createElement('summary'));
(o.className = 'tsd-accordion-summary'),
+ (o.dataset.key = i.join('$')),
(o.innerHTML =
''),
- Ee(t, o);
+ De(t, o);
let a = s.appendChild(document.createElement('div'));
a.className = 'tsd-accordion-details';
- let l = a.appendChild(document.createElement('ul'));
- l.className = 'tsd-nested-navigation';
- for (let u of t.children) we(u, l, i);
- } else Ee(t, r, t.class);
+ let c = a.appendChild(document.createElement('ul'));
+ c.className = 'tsd-nested-navigation';
+ for (let l of t.children) Be(l, c, i);
+ } else De(t, r, t.class);
}
- function Ee(t, e, n) {
+ function De(t, e, n) {
if (t.path) {
let r = e.appendChild(document.createElement('a'));
- (r.href = Le + t.path),
+ if (
+ ((r.href = se + t.path),
n && (r.className = n),
- location.pathname === r.pathname && r.classList.add('current'),
- t.kind &&
- (r.innerHTML = ``),
- (r.appendChild(document.createElement('span')).textContent = t.text);
- } else e.appendChild(document.createElement('span')).textContent = t.text;
+ location.pathname === r.pathname &&
+ !r.href.includes('#') &&
+ (r.classList.add('current'), (r.ariaCurrent = 'page')),
+ t.kind)
+ ) {
+ let i = window.translations[`kind_${t.kind}`].replaceAll('"', '"');
+ r.innerHTML = ``;
+ }
+ r.appendChild(Fe(t.text, document.createElement('span')));
+ } else {
+ let r = e.appendChild(document.createElement('span')),
+ i = window.translations.folder.replaceAll('"', '"');
+ (r.innerHTML = ``),
+ r.appendChild(Fe(t.text, document.createElement('span')));
+ }
+ }
+ function Fe(t, e) {
+ let n = t.split(
+ /(?<=[^A-Z])(?=[A-Z])|(?<=[A-Z])(?=[A-Z][a-z])|(?<=[_-])(?=[^_-])/
+ );
+ for (let r = 0; r < n.length; ++r)
+ r !== 0 && e.appendChild(document.createElement('wbr')),
+ e.appendChild(document.createTextNode(n[r]));
+ return e;
+ }
+ var oe = document.documentElement.dataset.base;
+ oe.endsWith('/') || (oe += '/');
+ function $e() {
+ document.querySelector('.tsd-full-hierarchy')
+ ? ht()
+ : document.querySelector('.tsd-hierarchy') && pt();
+ }
+ function ht() {
+ document.addEventListener('click', (r) => {
+ let i = r.target;
+ for (; i.parentElement && i.parentElement.tagName != 'LI'; )
+ i = i.parentElement;
+ i.dataset.dropdown &&
+ (i.dataset.dropdown = String(i.dataset.dropdown !== 'true'));
+ });
+ let t = new Map(),
+ e = new Set();
+ for (let r of document.querySelectorAll(
+ '.tsd-full-hierarchy [data-refl]'
+ )) {
+ let i = r.querySelector('ul');
+ t.has(r.dataset.refl)
+ ? e.add(r.dataset.refl)
+ : i && t.set(r.dataset.refl, i);
+ }
+ for (let r of e) n(r);
+ function n(r) {
+ let i = t.get(r).cloneNode(!0);
+ i.querySelectorAll('[id]').forEach((s) => {
+ s.removeAttribute('id');
+ }),
+ i.querySelectorAll('[data-dropdown]').forEach((s) => {
+ s.dataset.dropdown = 'false';
+ });
+ for (let s of document.querySelectorAll(`[data-refl="${r}"]`)) {
+ let o = gt(),
+ a = s.querySelector('ul');
+ s.insertBefore(o, a),
+ (o.dataset.dropdown = String(!!a)),
+ a || s.appendChild(i.cloneNode(!0));
+ }
+ }
+ }
+ function pt() {
+ let t = document.getElementById('tsd-hierarchy-script');
+ t && (t.addEventListener('load', Ve), Ve());
+ }
+ async function Ve() {
+ let t = document.querySelector('.tsd-panel.tsd-hierarchy:has(h4 a)');
+ if (!t || !window.hierarchyData) return;
+ let e = +t.dataset.refl,
+ n = await R(window.hierarchyData),
+ r = t.querySelector('ul'),
+ i = document.createElement('ul');
+ if (
+ (i.classList.add('tsd-hierarchy'),
+ ft(i, n, e),
+ r.querySelectorAll('li').length == i.querySelectorAll('li').length)
+ )
+ return;
+ let s = document.createElement('span');
+ s.classList.add('tsd-hierarchy-toggle'),
+ (s.textContent = window.translations.hierarchy_expand),
+ t.querySelector('h4 a')?.insertAdjacentElement('afterend', s),
+ s.insertAdjacentText('beforebegin', ', '),
+ s.addEventListener('click', () => {
+ s.textContent === window.translations.hierarchy_expand
+ ? (r.insertAdjacentElement('afterend', i),
+ r.remove(),
+ (s.textContent = window.translations.hierarchy_collapse))
+ : (i.insertAdjacentElement('afterend', r),
+ i.remove(),
+ (s.textContent = window.translations.hierarchy_expand));
+ });
+ }
+ function ft(t, e, n) {
+ let r = e.roots.filter((i) => mt(e, i, n));
+ for (let i of r) t.appendChild(je(e, i, n));
+ }
+ function je(t, e, n, r = new Set()) {
+ if (r.has(e)) return;
+ r.add(e);
+ let i = t.reflections[e],
+ s = document.createElement('li');
+ if ((s.classList.add('tsd-hierarchy-item'), e === n)) {
+ let o = s.appendChild(document.createElement('span'));
+ (o.textContent = i.name), o.classList.add('tsd-hierarchy-target');
+ } else {
+ for (let a of i.uniqueNameParents || []) {
+ let c = t.reflections[a],
+ l = s.appendChild(document.createElement('a'));
+ (l.textContent = c.name),
+ (l.href = oe + c.url),
+ (l.className = c.class + ' tsd-signature-type'),
+ s.append(document.createTextNode('.'));
+ }
+ let o = s.appendChild(document.createElement('a'));
+ (o.textContent = t.reflections[e].name),
+ (o.href = oe + i.url),
+ (o.className = i.class + ' tsd-signature-type');
+ }
+ if (i.children) {
+ let o = s.appendChild(document.createElement('ul'));
+ o.classList.add('tsd-hierarchy');
+ for (let a of i.children) {
+ let c = je(t, a, n, r);
+ c && o.appendChild(c);
+ }
+ }
+ return r.delete(e), s;
+ }
+ function mt(t, e, n) {
+ if (e === n) return !0;
+ let r = new Set(),
+ i = [t.reflections[e]];
+ for (; i.length; ) {
+ let s = i.pop();
+ if (!r.has(s)) {
+ r.add(s);
+ for (let o of s.children || []) {
+ if (o === n) return !0;
+ i.push(t.reflections[o]);
+ }
+ }
+ }
+ return !1;
+ }
+ function gt() {
+ let t = document.createElementNS('http://www.w3.org/2000/svg', 'svg');
+ return (
+ t.setAttribute('width', '20'),
+ t.setAttribute('height', '20'),
+ t.setAttribute('viewBox', '0 0 24 24'),
+ t.setAttribute('fill', 'none'),
+ (t.innerHTML = ''),
+ t
+ );
}
- G(X, 'a[data-toggle]');
- G(Z, '.tsd-index-accordion');
- G(Y, '.tsd-filter-item input[type=checkbox]');
- var Se = document.getElementById('tsd-theme');
- Se && ge(Se);
- var je = new U();
- Object.defineProperty(window, 'app', { value: je });
- he();
- be();
+ X(re, 'a[data-toggle]');
+ X(ie, '.tsd-accordion');
+ X(ee, '.tsd-filter-item input[type=checkbox]');
+ var qe = document.getElementById('tsd-theme');
+ qe && He(qe);
+ var yt = new Z();
+ Object.defineProperty(window, 'app', { value: yt });
+ _e();
+ Ne();
+ $e();
+ 'virtualKeyboard' in navigator &&
+ (navigator.virtualKeyboard.overlaysContent = !0);
})();
/*! Bundled license information:
diff --git a/docs/assets/navigation.js b/docs/assets/navigation.js
index 79c530f9..d778cfbf 100644
--- a/docs/assets/navigation.js
+++ b/docs/assets/navigation.js
@@ -1,2 +1,2 @@
window.navigationData =
- 'data:application/octet-stream;base64,H4sIAAAAAAAAE6WWUW/TMBSF/4ufO7oVNqBvU2GjUgtTt4kHxIPn3CRXS+1g31QriP+OkozWcRwnSl97jr/TXDsn/vGHEbwQm7MvRPkaKFURm7CcU8rmDGSxNdOj8ialbcYm7BllxOYf/k4Oq6+fDGku6CvfYcJJ6SNEZNwYMNOWpUm7mDV4BaXniwxB0g0XpPTeA2x5+oi1eaFkjImfZzv6aLcF15EfU0l968u5LiWBFpD7J9Y29THXKioy8KNqrY9wD3qHogPxKvYyiFMXoZT61oMkFJxQyc9ad03GMbWYk9rN5oxMdIbmDF4ItOQZs9JuQYJG0RFjq+P4S7mGrdL7BRepZyINeVzCSgme3ZPSPIGOlJZlXNI65hv4VaCGqGNermNkDhqDMtlArMGkD+oZuo5Bl3Nc7p3Ki3zBpYAs63xEj+mEtAfcgioolGVbxiWFQ07nPxrwcMtfx/Gu89wpECwLMOaifPNfxSZ6dnnlVr1T8jbiIPdBlMbfVcPccc23ppPm+FrYgVVE1Qm+xwwkZftveUn0h3Z4Twv+jpRWR25IsmseF+183QKb5nWG9s9ZsFEFwXC+ZQ+FLJ3GtYBLT9MOHcsyqmbs59baOPBKJaqg0P42HKFHr4uwmlCI17aN++cVZ6USlL1ptmtc2AYi1CCoN89nDJZKjtXJ+gQxSiztRyzt86rfXIfDO//4/uJyZjGrc8af7FtfjToIXsKwKj5esVv3wh3XWNIbF3HvBfHtzFvOPcSGKQDk/+/bN9Yw40KKajemltyEXL1zIE4FdONaxgAYzZAiOvJD/kBMrtUOI6h2woe19Rbm5z91KrDXBg4AAA==';
+ 'eJyll0FT2zAQhf+Lz6GBtNA2t04oNDMJMAGmh04PQt7EO9iSKq0zpJ3+947tlNiSLGfE+T1/z9qVV/KPPwnBCyXT5BuRWgJlMk1GiWKUJdMERFmY8UF5l1GRJ6PkGUWaTD/9Hb0+/eXJkGacbtgWN4ykPkB4zowBM3YsXdrZpMMrKTud5QiCrhgnqXceoOMZIjbmmRRr3Ph5bccQDQQhZ4RSfNXau2LX5DBHjTuZJmTSEzQn8EKgBcsTK+26ZDr1Z9TS0NtWXZwLAs1B+fvjmoaYS5mWOfhRjTZEuAe9Rd6D2IuDDGLUR6ik0PNXQDwDTzX2Qly/rkGARt6zLdpqHH8ullBIvZsxnnlW3pHjEhaSs/yepGYb6ElxLHFJyzVbwa8SNaQ99bIdkTloDIrNCtYaTPYgn6Hvs+1zxuXeSVWqGRMc8rx3iR7TG9IesABZUiirbYlLCoe8nf9o4FJJdSMFh54QxxKd5IfHTmulrJGE1UhdM15Npb3YRU/OL+yjyjqk2ohXeQgiNf6uz547pllhemmWz8EeOfSo/lbuMQdB+e5WVUR/aI/3bcHfkbJ6cx+TbJvjoq3zMtA0rzPUP+uBlSwJjue37KGQuTXbW8C5Z6YfW5Z5WtfYz220OPBCbmRJof52HKGlNyO3rlCI59ri3rzmLOQGxWBa2xUXtoIUNXAazPMZg0NFYb2zLmGNAiv7AUs7Vc8322HxTj9/PDuftJj1PmNP7Xtkg3oVvISjCjErDcmivsstUWDB8tuSVElOVI8vPnl/f7S/2CauI8ZntH6AnHv0lmmsatf5TfJeqN9PvEfPALFjCgDZ//+Tq9ZWWZeC13tt3JK7kIsPFsQacP04xxgAozlmzB74IX8gRmm5xRTqTviwbd3B/PwHJDRogw==';
diff --git a/docs/assets/search.js b/docs/assets/search.js
index 91da3b01..f892e2aa 100644
--- a/docs/assets/search.js
+++ b/docs/assets/search.js
@@ -1,2 +1,2 @@
window.searchData =
- 'data:application/octet-stream;base64,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';
+ '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';
diff --git a/docs/assets/style.css b/docs/assets/style.css
index bcb7d05c..200ca34d 100644
--- a/docs/assets/style.css
+++ b/docs/assets/style.css
@@ -1,99 +1,282 @@
-:root {
- /* Light */
- --light-color-background: #f2f4f8;
- --light-color-background-secondary: #eff0f1;
- --light-color-warning-text: #222;
- --light-color-background-warning: #e6e600;
- --light-color-icon-background: var(--light-color-background);
- --light-color-accent: #c5c7c9;
- --light-color-active-menu-item: var(--light-color-accent);
- --light-color-text: #222;
- --light-color-text-aside: #6e6e6e;
- --light-color-link: #1f70c2;
-
- --light-color-ts-keyword: #056bd6;
- --light-color-ts-project: #b111c9;
- --light-color-ts-module: var(--light-color-ts-project);
- --light-color-ts-namespace: var(--light-color-ts-project);
- --light-color-ts-enum: #7e6f15;
- --light-color-ts-enum-member: var(--light-color-ts-enum);
- --light-color-ts-variable: #4760ec;
- --light-color-ts-function: #572be7;
- --light-color-ts-class: #1f70c2;
- --light-color-ts-interface: #108024;
- --light-color-ts-constructor: var(--light-color-ts-class);
- --light-color-ts-property: var(--light-color-ts-variable);
- --light-color-ts-method: var(--light-color-ts-function);
- --light-color-ts-call-signature: var(--light-color-ts-method);
- --light-color-ts-index-signature: var(--light-color-ts-property);
- --light-color-ts-constructor-signature: var(--light-color-ts-constructor);
- --light-color-ts-parameter: var(--light-color-ts-variable);
- /* type literal not included as links will never be generated to it */
- --light-color-ts-type-parameter: #a55c0e;
- --light-color-ts-accessor: var(--light-color-ts-property);
- --light-color-ts-get-signature: var(--light-color-ts-accessor);
- --light-color-ts-set-signature: var(--light-color-ts-accessor);
- --light-color-ts-type-alias: #d51270;
- /* reference not included as links will be colored with the kind that it points to */
-
- --light-external-icon: url("data:image/svg+xml;utf8,");
- --light-color-scheme: light;
-
- /* Dark */
- --dark-color-background: #2b2e33;
- --dark-color-background-secondary: #1e2024;
- --dark-color-background-warning: #bebe00;
- --dark-color-warning-text: #222;
- --dark-color-icon-background: var(--dark-color-background-secondary);
- --dark-color-accent: #9096a2;
- --dark-color-active-menu-item: #5d5d6a;
- --dark-color-text: #f5f5f5;
- --dark-color-text-aside: #dddddd;
- --dark-color-link: #00aff4;
-
- --dark-color-ts-keyword: #3399ff;
- --dark-color-ts-project: #e358ff;
- --dark-color-ts-module: var(--dark-color-ts-project);
- --dark-color-ts-namespace: var(--dark-color-ts-project);
- --dark-color-ts-enum: #f4d93e;
- --dark-color-ts-enum-member: var(--dark-color-ts-enum);
- --dark-color-ts-variable: #798dff;
- --dark-color-ts-function: #a280ff;
- --dark-color-ts-class: #8ac4ff;
- --dark-color-ts-interface: #6cff87;
- --dark-color-ts-constructor: var(--dark-color-ts-class);
- --dark-color-ts-property: var(--dark-color-ts-variable);
- --dark-color-ts-method: var(--dark-color-ts-function);
- --dark-color-ts-call-signature: var(--dark-color-ts-method);
- --dark-color-ts-index-signature: var(--dark-color-ts-property);
- --dark-color-ts-constructor-signature: var(--dark-color-ts-constructor);
- --dark-color-ts-parameter: var(--dark-color-ts-variable);
- /* type literal not included as links will never be generated to it */
- --dark-color-ts-type-parameter: #e07d13;
- --dark-color-ts-accessor: var(--dark-color-ts-property);
- --dark-color-ts-get-signature: var(--dark-color-ts-accessor);
- --dark-color-ts-set-signature: var(--dark-color-ts-accessor);
- --dark-color-ts-type-alias: #ff6492;
- /* reference not included as links will be colored with the kind that it points to */
-
- --dark-external-icon: url("data:image/svg+xml;utf8,");
- --dark-color-scheme: dark;
-}
+@layer typedoc {
+ :root {
+ --dim-toolbar-contents-height: 2.5rem;
+ --dim-toolbar-border-bottom-width: 1px;
+ --dim-header-height: calc(
+ var(--dim-toolbar-border-bottom-width) +
+ var(--dim-toolbar-contents-height)
+ );
+
+ /* 0rem For mobile; unit is required for calculation in `calc` */
+ --dim-container-main-margin-y: 0rem;
+
+ --dim-footer-height: 3.5rem;
+
+ --modal-animation-duration: 0.2s;
+ }
+
+ :root {
+ /* Light */
+ --light-color-background: #f2f4f8;
+ --light-color-background-secondary: #eff0f1;
+ /* Not to be confused with [:active](https://developer.mozilla.org/en-US/docs/Web/CSS/:active) */
+ --light-color-background-active: #d6d8da;
+ --light-color-background-warning: #e6e600;
+ --light-color-warning-text: #222;
+ --light-color-accent: #c5c7c9;
+ --light-color-active-menu-item: var(--light-color-background-active);
+ --light-color-text: #222;
+ --light-color-contrast-text: #000;
+ --light-color-text-aside: #5e5e5e;
+
+ --light-color-icon-background: var(--light-color-background);
+ --light-color-icon-text: var(--light-color-text);
+
+ --light-color-comment-tag-text: var(--light-color-text);
+ --light-color-comment-tag: var(--light-color-background);
+
+ --light-color-link: #1f70c2;
+ --light-color-focus-outline: #3584e4;
+
+ --light-color-ts-keyword: #056bd6;
+ --light-color-ts-project: #b111c9;
+ --light-color-ts-module: var(--light-color-ts-project);
+ --light-color-ts-namespace: var(--light-color-ts-project);
+ --light-color-ts-enum: #7e6f15;
+ --light-color-ts-enum-member: var(--light-color-ts-enum);
+ --light-color-ts-variable: #4760ec;
+ --light-color-ts-function: #572be7;
+ --light-color-ts-class: #1f70c2;
+ --light-color-ts-interface: #108024;
+ --light-color-ts-constructor: var(--light-color-ts-class);
+ --light-color-ts-property: #9f5f30;
+ --light-color-ts-method: #be3989;
+ --light-color-ts-reference: #ff4d82;
+ --light-color-ts-call-signature: var(--light-color-ts-method);
+ --light-color-ts-index-signature: var(--light-color-ts-property);
+ --light-color-ts-constructor-signature: var(--light-color-ts-constructor);
+ --light-color-ts-parameter: var(--light-color-ts-variable);
+ /* type literal not included as links will never be generated to it */
+ --light-color-ts-type-parameter: #a55c0e;
+ --light-color-ts-accessor: #c73c3c;
+ --light-color-ts-get-signature: var(--light-color-ts-accessor);
+ --light-color-ts-set-signature: var(--light-color-ts-accessor);
+ --light-color-ts-type-alias: #d51270;
+ /* reference not included as links will be colored with the kind that it points to */
+ --light-color-document: #000000;
+
+ --light-color-alert-note: #0969d9;
+ --light-color-alert-tip: #1a7f37;
+ --light-color-alert-important: #8250df;
+ --light-color-alert-warning: #9a6700;
+ --light-color-alert-caution: #cf222e;
+
+ --light-external-icon: url("data:image/svg+xml;utf8,");
+ --light-color-scheme: light;
+ }
-@media (prefers-color-scheme: light) {
:root {
+ /* Dark */
+ --dark-color-background: #2b2e33;
+ --dark-color-background-secondary: #1e2024;
+ /* Not to be confused with [:active](https://developer.mozilla.org/en-US/docs/Web/CSS/:active) */
+ --dark-color-background-active: #5d5d6a;
+ --dark-color-background-warning: #bebe00;
+ --dark-color-warning-text: #222;
+ --dark-color-accent: #9096a2;
+ --dark-color-active-menu-item: var(--dark-color-background-active);
+ --dark-color-text: #f5f5f5;
+ --dark-color-contrast-text: #ffffff;
+ --dark-color-text-aside: #dddddd;
+
+ --dark-color-icon-background: var(--dark-color-background-secondary);
+ --dark-color-icon-text: var(--dark-color-text);
+
+ --dark-color-comment-tag-text: var(--dark-color-text);
+ --dark-color-comment-tag: var(--dark-color-background);
+
+ --dark-color-link: #00aff4;
+ --dark-color-focus-outline: #4c97f2;
+
+ --dark-color-ts-keyword: #3399ff;
+ --dark-color-ts-project: #e358ff;
+ --dark-color-ts-module: var(--dark-color-ts-project);
+ --dark-color-ts-namespace: var(--dark-color-ts-project);
+ --dark-color-ts-enum: #f4d93e;
+ --dark-color-ts-enum-member: var(--dark-color-ts-enum);
+ --dark-color-ts-variable: #798dff;
+ --dark-color-ts-function: #a280ff;
+ --dark-color-ts-class: #8ac4ff;
+ --dark-color-ts-interface: #6cff87;
+ --dark-color-ts-constructor: var(--dark-color-ts-class);
+ --dark-color-ts-property: #ff984d;
+ --dark-color-ts-method: #ff4db8;
+ --dark-color-ts-reference: #ff4d82;
+ --dark-color-ts-call-signature: var(--dark-color-ts-method);
+ --dark-color-ts-index-signature: var(--dark-color-ts-property);
+ --dark-color-ts-constructor-signature: var(--dark-color-ts-constructor);
+ --dark-color-ts-parameter: var(--dark-color-ts-variable);
+ /* type literal not included as links will never be generated to it */
+ --dark-color-ts-type-parameter: #e07d13;
+ --dark-color-ts-accessor: #ff6060;
+ --dark-color-ts-get-signature: var(--dark-color-ts-accessor);
+ --dark-color-ts-set-signature: var(--dark-color-ts-accessor);
+ --dark-color-ts-type-alias: #ff6492;
+ /* reference not included as links will be colored with the kind that it points to */
+ --dark-color-document: #ffffff;
+
+ --dark-color-alert-note: #0969d9;
+ --dark-color-alert-tip: #1a7f37;
+ --dark-color-alert-important: #8250df;
+ --dark-color-alert-warning: #9a6700;
+ --dark-color-alert-caution: #cf222e;
+
+ --dark-external-icon: url("data:image/svg+xml;utf8,");
+ --dark-color-scheme: dark;
+ }
+
+ @media (prefers-color-scheme: light) {
+ :root {
+ --color-background: var(--light-color-background);
+ --color-background-secondary: var(--light-color-background-secondary);
+ --color-background-active: var(--light-color-background-active);
+ --color-background-warning: var(--light-color-background-warning);
+ --color-warning-text: var(--light-color-warning-text);
+ --color-accent: var(--light-color-accent);
+ --color-active-menu-item: var(--light-color-active-menu-item);
+ --color-text: var(--light-color-text);
+ --color-contrast-text: var(--light-color-contrast-text);
+ --color-text-aside: var(--light-color-text-aside);
+
+ --color-icon-background: var(--light-color-icon-background);
+ --color-icon-text: var(--light-color-icon-text);
+
+ --color-comment-tag-text: var(--light-color-text);
+ --color-comment-tag: var(--light-color-background);
+
+ --color-link: var(--light-color-link);
+ --color-focus-outline: var(--light-color-focus-outline);
+
+ --color-ts-keyword: var(--light-color-ts-keyword);
+ --color-ts-project: var(--light-color-ts-project);
+ --color-ts-module: var(--light-color-ts-module);
+ --color-ts-namespace: var(--light-color-ts-namespace);
+ --color-ts-enum: var(--light-color-ts-enum);
+ --color-ts-enum-member: var(--light-color-ts-enum-member);
+ --color-ts-variable: var(--light-color-ts-variable);
+ --color-ts-function: var(--light-color-ts-function);
+ --color-ts-class: var(--light-color-ts-class);
+ --color-ts-interface: var(--light-color-ts-interface);
+ --color-ts-constructor: var(--light-color-ts-constructor);
+ --color-ts-property: var(--light-color-ts-property);
+ --color-ts-method: var(--light-color-ts-method);
+ --color-ts-reference: var(--light-color-ts-reference);
+ --color-ts-call-signature: var(--light-color-ts-call-signature);
+ --color-ts-index-signature: var(--light-color-ts-index-signature);
+ --color-ts-constructor-signature: var(
+ --light-color-ts-constructor-signature
+ );
+ --color-ts-parameter: var(--light-color-ts-parameter);
+ --color-ts-type-parameter: var(--light-color-ts-type-parameter);
+ --color-ts-accessor: var(--light-color-ts-accessor);
+ --color-ts-get-signature: var(--light-color-ts-get-signature);
+ --color-ts-set-signature: var(--light-color-ts-set-signature);
+ --color-ts-type-alias: var(--light-color-ts-type-alias);
+ --color-document: var(--light-color-document);
+
+ --color-alert-note: var(--light-color-alert-note);
+ --color-alert-tip: var(--light-color-alert-tip);
+ --color-alert-important: var(--light-color-alert-important);
+ --color-alert-warning: var(--light-color-alert-warning);
+ --color-alert-caution: var(--light-color-alert-caution);
+
+ --external-icon: var(--light-external-icon);
+ --color-scheme: var(--light-color-scheme);
+ }
+ }
+
+ @media (prefers-color-scheme: dark) {
+ :root {
+ --color-background: var(--dark-color-background);
+ --color-background-secondary: var(--dark-color-background-secondary);
+ --color-background-active: var(--dark-color-background-active);
+ --color-background-warning: var(--dark-color-background-warning);
+ --color-warning-text: var(--dark-color-warning-text);
+ --color-accent: var(--dark-color-accent);
+ --color-active-menu-item: var(--dark-color-active-menu-item);
+ --color-text: var(--dark-color-text);
+ --color-contrast-text: var(--dark-color-contrast-text);
+ --color-text-aside: var(--dark-color-text-aside);
+
+ --color-icon-background: var(--dark-color-icon-background);
+ --color-icon-text: var(--dark-color-icon-text);
+
+ --color-comment-tag-text: var(--dark-color-text);
+ --color-comment-tag: var(--dark-color-background);
+
+ --color-link: var(--dark-color-link);
+ --color-focus-outline: var(--dark-color-focus-outline);
+
+ --color-ts-keyword: var(--dark-color-ts-keyword);
+ --color-ts-project: var(--dark-color-ts-project);
+ --color-ts-module: var(--dark-color-ts-module);
+ --color-ts-namespace: var(--dark-color-ts-namespace);
+ --color-ts-enum: var(--dark-color-ts-enum);
+ --color-ts-enum-member: var(--dark-color-ts-enum-member);
+ --color-ts-variable: var(--dark-color-ts-variable);
+ --color-ts-function: var(--dark-color-ts-function);
+ --color-ts-class: var(--dark-color-ts-class);
+ --color-ts-interface: var(--dark-color-ts-interface);
+ --color-ts-constructor: var(--dark-color-ts-constructor);
+ --color-ts-property: var(--dark-color-ts-property);
+ --color-ts-method: var(--dark-color-ts-method);
+ --color-ts-reference: var(--dark-color-ts-reference);
+ --color-ts-call-signature: var(--dark-color-ts-call-signature);
+ --color-ts-index-signature: var(--dark-color-ts-index-signature);
+ --color-ts-constructor-signature: var(
+ --dark-color-ts-constructor-signature
+ );
+ --color-ts-parameter: var(--dark-color-ts-parameter);
+ --color-ts-type-parameter: var(--dark-color-ts-type-parameter);
+ --color-ts-accessor: var(--dark-color-ts-accessor);
+ --color-ts-get-signature: var(--dark-color-ts-get-signature);
+ --color-ts-set-signature: var(--dark-color-ts-set-signature);
+ --color-ts-type-alias: var(--dark-color-ts-type-alias);
+ --color-document: var(--dark-color-document);
+
+ --color-alert-note: var(--dark-color-alert-note);
+ --color-alert-tip: var(--dark-color-alert-tip);
+ --color-alert-important: var(--dark-color-alert-important);
+ --color-alert-warning: var(--dark-color-alert-warning);
+ --color-alert-caution: var(--dark-color-alert-caution);
+
+ --external-icon: var(--dark-external-icon);
+ --color-scheme: var(--dark-color-scheme);
+ }
+ }
+
+ :root[data-theme='light'] {
--color-background: var(--light-color-background);
--color-background-secondary: var(--light-color-background-secondary);
+ --color-background-active: var(--light-color-background-active);
--color-background-warning: var(--light-color-background-warning);
--color-warning-text: var(--light-color-warning-text);
--color-icon-background: var(--light-color-icon-background);
--color-accent: var(--light-color-accent);
--color-active-menu-item: var(--light-color-active-menu-item);
--color-text: var(--light-color-text);
+ --color-contrast-text: var(--light-color-contrast-text);
--color-text-aside: var(--light-color-text-aside);
+ --color-icon-text: var(--light-color-icon-text);
+
+ --color-comment-tag-text: var(--light-color-text);
+ --color-comment-tag: var(--light-color-background);
+
--color-link: var(--light-color-link);
+ --color-focus-outline: var(--light-color-focus-outline);
--color-ts-keyword: var(--light-color-ts-keyword);
+ --color-ts-project: var(--light-color-ts-project);
--color-ts-module: var(--light-color-ts-module);
--color-ts-namespace: var(--light-color-ts-namespace);
--color-ts-enum: var(--light-color-ts-enum);
@@ -105,6 +288,7 @@
--color-ts-constructor: var(--light-color-ts-constructor);
--color-ts-property: var(--light-color-ts-property);
--color-ts-method: var(--light-color-ts-method);
+ --color-ts-reference: var(--light-color-ts-reference);
--color-ts-call-signature: var(--light-color-ts-call-signature);
--color-ts-index-signature: var(--light-color-ts-index-signature);
--color-ts-constructor-signature: var(
@@ -116,26 +300,40 @@
--color-ts-get-signature: var(--light-color-ts-get-signature);
--color-ts-set-signature: var(--light-color-ts-set-signature);
--color-ts-type-alias: var(--light-color-ts-type-alias);
+ --color-document: var(--light-color-document);
+
+ --color-note: var(--light-color-note);
+ --color-tip: var(--light-color-tip);
+ --color-important: var(--light-color-important);
+ --color-warning: var(--light-color-warning);
+ --color-caution: var(--light-color-caution);
--external-icon: var(--light-external-icon);
--color-scheme: var(--light-color-scheme);
}
-}
-@media (prefers-color-scheme: dark) {
- :root {
+ :root[data-theme='dark'] {
--color-background: var(--dark-color-background);
--color-background-secondary: var(--dark-color-background-secondary);
+ --color-background-active: var(--dark-color-background-active);
--color-background-warning: var(--dark-color-background-warning);
--color-warning-text: var(--dark-color-warning-text);
--color-icon-background: var(--dark-color-icon-background);
--color-accent: var(--dark-color-accent);
--color-active-menu-item: var(--dark-color-active-menu-item);
--color-text: var(--dark-color-text);
+ --color-contrast-text: var(--dark-color-contrast-text);
--color-text-aside: var(--dark-color-text-aside);
+ --color-icon-text: var(--dark-color-icon-text);
+
+ --color-comment-tag-text: var(--dark-color-text);
+ --color-comment-tag: var(--dark-color-background);
+
--color-link: var(--dark-color-link);
+ --color-focus-outline: var(--dark-color-focus-outline);
--color-ts-keyword: var(--dark-color-ts-keyword);
+ --color-ts-project: var(--dark-color-ts-project);
--color-ts-module: var(--dark-color-ts-module);
--color-ts-namespace: var(--dark-color-ts-namespace);
--color-ts-enum: var(--dark-color-ts-enum);
@@ -147,6 +345,7 @@
--color-ts-constructor: var(--dark-color-ts-constructor);
--color-ts-property: var(--dark-color-ts-property);
--color-ts-method: var(--dark-color-ts-method);
+ --color-ts-reference: var(--dark-color-ts-reference);
--color-ts-call-signature: var(--dark-color-ts-call-signature);
--color-ts-index-signature: var(--dark-color-ts-index-signature);
--color-ts-constructor-signature: var(
@@ -158,1249 +357,1262 @@
--color-ts-get-signature: var(--dark-color-ts-get-signature);
--color-ts-set-signature: var(--dark-color-ts-set-signature);
--color-ts-type-alias: var(--dark-color-ts-type-alias);
+ --color-document: var(--dark-color-document);
+
+ --color-note: var(--dark-color-note);
+ --color-tip: var(--dark-color-tip);
+ --color-important: var(--dark-color-important);
+ --color-warning: var(--dark-color-warning);
+ --color-caution: var(--dark-color-caution);
--external-icon: var(--dark-external-icon);
--color-scheme: var(--dark-color-scheme);
}
-}
-
-html {
- color-scheme: var(--color-scheme);
-}
-body {
- margin: 0;
-}
+ html {
+ color-scheme: var(--color-scheme);
+ @media (prefers-reduced-motion: no-preference) {
+ scroll-behavior: smooth;
+ }
+ }
-:root[data-theme='light'] {
- --color-background: var(--light-color-background);
- --color-background-secondary: var(--light-color-background-secondary);
- --color-background-warning: var(--light-color-background-warning);
- --color-warning-text: var(--light-color-warning-text);
- --color-icon-background: var(--light-color-icon-background);
- --color-accent: var(--light-color-accent);
- --color-active-menu-item: var(--light-color-active-menu-item);
- --color-text: var(--light-color-text);
- --color-text-aside: var(--light-color-text-aside);
- --color-link: var(--light-color-link);
-
- --color-ts-keyword: var(--light-color-ts-keyword);
- --color-ts-module: var(--light-color-ts-module);
- --color-ts-namespace: var(--light-color-ts-namespace);
- --color-ts-enum: var(--light-color-ts-enum);
- --color-ts-enum-member: var(--light-color-ts-enum-member);
- --color-ts-variable: var(--light-color-ts-variable);
- --color-ts-function: var(--light-color-ts-function);
- --color-ts-class: var(--light-color-ts-class);
- --color-ts-interface: var(--light-color-ts-interface);
- --color-ts-constructor: var(--light-color-ts-constructor);
- --color-ts-property: var(--light-color-ts-property);
- --color-ts-method: var(--light-color-ts-method);
- --color-ts-call-signature: var(--light-color-ts-call-signature);
- --color-ts-index-signature: var(--light-color-ts-index-signature);
- --color-ts-constructor-signature: var(--light-color-ts-constructor-signature);
- --color-ts-parameter: var(--light-color-ts-parameter);
- --color-ts-type-parameter: var(--light-color-ts-type-parameter);
- --color-ts-accessor: var(--light-color-ts-accessor);
- --color-ts-get-signature: var(--light-color-ts-get-signature);
- --color-ts-set-signature: var(--light-color-ts-set-signature);
- --color-ts-type-alias: var(--light-color-ts-type-alias);
-
- --external-icon: var(--light-external-icon);
- --color-scheme: var(--light-color-scheme);
-}
+ *:focus-visible,
+ .tsd-accordion-summary:focus-visible svg {
+ outline: 2px solid var(--color-focus-outline);
+ }
-:root[data-theme='dark'] {
- --color-background: var(--dark-color-background);
- --color-background-secondary: var(--dark-color-background-secondary);
- --color-background-warning: var(--dark-color-background-warning);
- --color-warning-text: var(--dark-color-warning-text);
- --color-icon-background: var(--dark-color-icon-background);
- --color-accent: var(--dark-color-accent);
- --color-active-menu-item: var(--dark-color-active-menu-item);
- --color-text: var(--dark-color-text);
- --color-text-aside: var(--dark-color-text-aside);
- --color-link: var(--dark-color-link);
-
- --color-ts-keyword: var(--dark-color-ts-keyword);
- --color-ts-module: var(--dark-color-ts-module);
- --color-ts-namespace: var(--dark-color-ts-namespace);
- --color-ts-enum: var(--dark-color-ts-enum);
- --color-ts-enum-member: var(--dark-color-ts-enum-member);
- --color-ts-variable: var(--dark-color-ts-variable);
- --color-ts-function: var(--dark-color-ts-function);
- --color-ts-class: var(--dark-color-ts-class);
- --color-ts-interface: var(--dark-color-ts-interface);
- --color-ts-constructor: var(--dark-color-ts-constructor);
- --color-ts-property: var(--dark-color-ts-property);
- --color-ts-method: var(--dark-color-ts-method);
- --color-ts-call-signature: var(--dark-color-ts-call-signature);
- --color-ts-index-signature: var(--dark-color-ts-index-signature);
- --color-ts-constructor-signature: var(--dark-color-ts-constructor-signature);
- --color-ts-parameter: var(--dark-color-ts-parameter);
- --color-ts-type-parameter: var(--dark-color-ts-type-parameter);
- --color-ts-accessor: var(--dark-color-ts-accessor);
- --color-ts-get-signature: var(--dark-color-ts-get-signature);
- --color-ts-set-signature: var(--dark-color-ts-set-signature);
- --color-ts-type-alias: var(--dark-color-ts-type-alias);
-
- --external-icon: var(--dark-external-icon);
- --color-scheme: var(--dark-color-scheme);
-}
+ .always-visible,
+ .always-visible .tsd-signatures {
+ display: inherit !important;
+ }
-.always-visible,
-.always-visible .tsd-signatures {
- display: inherit !important;
-}
+ h1,
+ h2,
+ h3,
+ h4,
+ h5,
+ h6 {
+ line-height: 1.2;
+ }
-h1,
-h2,
-h3,
-h4,
-h5,
-h6 {
- line-height: 1.2;
-}
+ h1 {
+ font-size: 1.875rem;
+ margin: 0.67rem 0;
+ }
-h1 > a:not(.link),
-h2 > a:not(.link),
-h3 > a:not(.link),
-h4 > a:not(.link),
-h5 > a:not(.link),
-h6 > a:not(.link) {
- text-decoration: none;
- color: var(--color-text);
-}
+ h2 {
+ font-size: 1.5rem;
+ margin: 0.83rem 0;
+ }
-h1 {
- font-size: 1.875rem;
- margin: 0.67rem 0;
-}
+ h3 {
+ font-size: 1.25rem;
+ margin: 1rem 0;
+ }
-h2 {
- font-size: 1.5rem;
- margin: 0.83rem 0;
-}
+ h4 {
+ font-size: 1.05rem;
+ margin: 1.33rem 0;
+ }
-h3 {
- font-size: 1.25rem;
- margin: 1rem 0;
-}
+ h5 {
+ font-size: 1rem;
+ margin: 1.5rem 0;
+ }
-h4 {
- font-size: 1.05rem;
- margin: 1.33rem 0;
-}
+ h6 {
+ font-size: 0.875rem;
+ margin: 2.33rem 0;
+ }
-h5 {
- font-size: 1rem;
- margin: 1.5rem 0;
-}
+ dl,
+ menu,
+ ol,
+ ul {
+ margin: 1em 0;
+ }
-h6 {
- font-size: 0.875rem;
- margin: 2.33rem 0;
-}
+ dd {
+ margin: 0 0 0 34px;
+ }
-.uppercase {
- text-transform: uppercase;
-}
+ .container {
+ max-width: 1700px;
+ padding: 0 2rem;
+ }
-dl,
-menu,
-ol,
-ul {
- margin: 1em 0;
-}
+ /* Footer */
+ footer {
+ border-top: 1px solid var(--color-accent);
+ padding-top: 1rem;
+ padding-bottom: 1rem;
+ max-height: var(--dim-footer-height);
+ }
+ footer > p {
+ margin: 0 1em;
+ }
-dd {
- margin: 0 0 0 40px;
-}
+ .container-main {
+ margin: var(--dim-container-main-margin-y) auto;
+ /* toolbar, footer, margin */
+ min-height: calc(
+ 100svh - var(--dim-header-height) - var(--dim-footer-height) - 2 *
+ var(--dim-container-main-margin-y)
+ );
+ }
-.container {
- max-width: 1700px;
- padding: 0 2rem;
-}
+ @keyframes fade-in {
+ from {
+ opacity: 0;
+ }
+ to {
+ opacity: 1;
+ }
+ }
+ @keyframes fade-out {
+ from {
+ opacity: 1;
+ visibility: visible;
+ }
+ to {
+ opacity: 0;
+ }
+ }
+ @keyframes pop-in-from-right {
+ from {
+ transform: translate(100%, 0);
+ }
+ to {
+ transform: translate(0, 0);
+ }
+ }
+ @keyframes pop-out-to-right {
+ from {
+ transform: translate(0, 0);
+ visibility: visible;
+ }
+ to {
+ transform: translate(100%, 0);
+ }
+ }
+ body {
+ background: var(--color-background);
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans',
+ Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';
+ font-size: 16px;
+ color: var(--color-text);
+ margin: 0;
+ }
-/* Footer */
-footer {
- border-top: 1px solid var(--color-accent);
- padding-top: 1rem;
- padding-bottom: 1rem;
- max-height: 3.5rem;
-}
-.tsd-generator {
- margin: 0 1em;
-}
+ a {
+ color: var(--color-link);
+ text-decoration: none;
+ }
+ a:hover {
+ text-decoration: underline;
+ }
+ a.external[target='_blank'] {
+ background-image: var(--external-icon);
+ background-position: top 3px right;
+ background-repeat: no-repeat;
+ padding-right: 13px;
+ }
+ a.tsd-anchor-link {
+ color: var(--color-text);
+ }
+ :target {
+ scroll-margin-block: calc(var(--dim-header-height) + 0.5rem);
+ }
-.container-main {
- margin: 0 auto;
- /* toolbar, footer, margin */
- min-height: calc(100vh - 41px - 56px - 4rem);
-}
+ code,
+ pre {
+ font-family: Menlo, Monaco, Consolas, 'Courier New', monospace;
+ padding: 0.2em;
+ margin: 0;
+ font-size: 0.875rem;
+ border-radius: 0.8em;
+ }
-@keyframes fade-in {
- from {
+ pre {
+ position: relative;
+ white-space: pre-wrap;
+ word-wrap: break-word;
+ padding: 10px;
+ border: 1px solid var(--color-accent);
+ margin-bottom: 8px;
+ }
+ pre code {
+ padding: 0;
+ font-size: 100%;
+ }
+ pre > button {
+ position: absolute;
+ top: 10px;
+ right: 10px;
opacity: 0;
+ transition: opacity 0.1s;
+ box-sizing: border-box;
}
- to {
+ pre:hover > button,
+ pre > button.visible,
+ pre > button:focus-visible {
opacity: 1;
}
-}
-@keyframes fade-out {
- from {
- opacity: 1;
- visibility: visible;
+
+ blockquote {
+ margin: 1em 0;
+ padding-left: 1em;
+ border-left: 4px solid gray;
}
- to {
- opacity: 0;
+
+ img {
+ max-width: 100%;
}
-}
-@keyframes fade-in-delayed {
- 0% {
- opacity: 0;
+
+ * {
+ scrollbar-width: thin;
+ scrollbar-color: var(--color-accent) var(--color-icon-background);
}
- 33% {
- opacity: 0;
+
+ *::-webkit-scrollbar {
+ width: 0.75rem;
}
- 100% {
- opacity: 1;
+
+ *::-webkit-scrollbar-track {
+ background: var(--color-icon-background);
}
-}
-@keyframes fade-out-delayed {
- 0% {
- opacity: 1;
- visibility: visible;
+
+ *::-webkit-scrollbar-thumb {
+ background-color: var(--color-accent);
+ border-radius: 999rem;
+ border: 0.25rem solid var(--color-icon-background);
}
- 66% {
- opacity: 0;
+
+ dialog {
+ border: none;
+ outline: none;
+ padding: 0;
+ background-color: var(--color-background);
}
- 100% {
- opacity: 0;
+ dialog::backdrop {
+ display: none;
}
-}
-@keyframes pop-in-from-right {
- from {
- transform: translate(100%, 0);
+ #tsd-overlay {
+ background-color: rgba(0, 0, 0, 0.5);
+ position: fixed;
+ z-index: 9999;
+ top: 0;
+ left: 0;
+ right: 0;
+ bottom: 0;
+ animation: fade-in var(--modal-animation-duration) forwards;
}
- to {
- transform: translate(0, 0);
+ #tsd-overlay.closing {
+ animation-name: fade-out;
}
-}
-@keyframes pop-out-to-right {
- from {
- transform: translate(0, 0);
- visibility: visible;
+
+ .tsd-typography {
+ line-height: 1.333em;
}
- to {
- transform: translate(100%, 0);
+ .tsd-typography ul {
+ list-style: square;
+ padding: 0 0 0 20px;
+ margin: 0;
+ }
+ .tsd-typography .tsd-index-panel h3,
+ .tsd-index-panel .tsd-typography h3,
+ .tsd-typography h4,
+ .tsd-typography h5,
+ .tsd-typography h6 {
+ font-size: 1em;
+ }
+ .tsd-typography h5,
+ .tsd-typography h6 {
+ font-weight: normal;
+ }
+ .tsd-typography p,
+ .tsd-typography ul,
+ .tsd-typography ol {
+ margin: 1em 0;
+ }
+ .tsd-typography table {
+ border-collapse: collapse;
+ border: none;
+ }
+ .tsd-typography td,
+ .tsd-typography th {
+ padding: 6px 13px;
+ border: 1px solid var(--color-accent);
+ }
+ .tsd-typography thead,
+ .tsd-typography tr:nth-child(even) {
+ background-color: var(--color-background-secondary);
}
-}
-body {
- background: var(--color-background);
- font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans',
- Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';
- font-size: 16px;
- color: var(--color-text);
-}
-a {
- color: var(--color-link);
- text-decoration: none;
-}
-a:hover {
- text-decoration: underline;
-}
-a.external[target='_blank'] {
- background-image: var(--external-icon);
- background-position: top 3px right;
- background-repeat: no-repeat;
- padding-right: 13px;
-}
+ .tsd-alert {
+ padding: 8px 16px;
+ margin-bottom: 16px;
+ border-left: 0.25em solid var(--alert-color);
+ }
+ .tsd-alert blockquote > :last-child,
+ .tsd-alert > :last-child {
+ margin-bottom: 0;
+ }
+ .tsd-alert-title {
+ color: var(--alert-color);
+ display: inline-flex;
+ align-items: center;
+ }
+ .tsd-alert-title span {
+ margin-left: 4px;
+ }
-code,
-pre {
- font-family: Menlo, Monaco, Consolas, 'Courier New', monospace;
- padding: 0.2em;
- margin: 0;
- font-size: 0.875rem;
- border-radius: 0.8em;
-}
+ .tsd-alert-note {
+ --alert-color: var(--color-alert-note);
+ }
+ .tsd-alert-tip {
+ --alert-color: var(--color-alert-tip);
+ }
+ .tsd-alert-important {
+ --alert-color: var(--color-alert-important);
+ }
+ .tsd-alert-warning {
+ --alert-color: var(--color-alert-warning);
+ }
+ .tsd-alert-caution {
+ --alert-color: var(--color-alert-caution);
+ }
-pre {
- position: relative;
- white-space: pre;
- white-space: pre-wrap;
- word-wrap: break-word;
- padding: 10px;
- border: 1px solid var(--color-accent);
-}
-pre code {
- padding: 0;
- font-size: 100%;
-}
-pre > button {
- position: absolute;
- top: 10px;
- right: 10px;
- opacity: 0;
- transition: opacity 0.1s;
- box-sizing: border-box;
-}
-pre:hover > button,
-pre > button.visible {
- opacity: 1;
-}
+ .tsd-breadcrumb {
+ margin: 0;
+ margin-top: 1rem;
+ padding: 0;
+ color: var(--color-text-aside);
+ }
+ .tsd-breadcrumb a {
+ color: var(--color-text-aside);
+ text-decoration: none;
+ }
+ .tsd-breadcrumb a:hover {
+ text-decoration: underline;
+ }
+ .tsd-breadcrumb li {
+ display: inline;
+ }
+ .tsd-breadcrumb li:after {
+ content: ' / ';
+ }
-blockquote {
- margin: 1em 0;
- padding-left: 1em;
- border-left: 4px solid gray;
-}
+ .tsd-comment-tags {
+ display: flex;
+ flex-direction: column;
+ }
+ dl.tsd-comment-tag-group {
+ display: flex;
+ align-items: center;
+ overflow: hidden;
+ margin: 0.5em 0;
+ }
+ dl.tsd-comment-tag-group dt {
+ display: flex;
+ margin-right: 0.5em;
+ font-size: 0.875em;
+ font-weight: normal;
+ }
+ dl.tsd-comment-tag-group dd {
+ margin: 0;
+ }
+ code.tsd-tag {
+ padding: 0.25em 0.4em;
+ border: 0.1em solid var(--color-accent);
+ margin-right: 0.25em;
+ font-size: 70%;
+ }
+ h1 code.tsd-tag:first-of-type {
+ margin-left: 0.25em;
+ }
-.tsd-typography {
- line-height: 1.333em;
-}
-.tsd-typography ul {
- list-style: square;
- padding: 0 0 0 20px;
- margin: 0;
-}
-.tsd-typography .tsd-index-panel h3,
-.tsd-index-panel .tsd-typography h3,
-.tsd-typography h4,
-.tsd-typography h5,
-.tsd-typography h6 {
- font-size: 1em;
-}
-.tsd-typography h5,
-.tsd-typography h6 {
- font-weight: normal;
-}
-.tsd-typography p,
-.tsd-typography ul,
-.tsd-typography ol {
- margin: 1em 0;
-}
-.tsd-typography table {
- border-collapse: collapse;
- border: none;
-}
-.tsd-typography td,
-.tsd-typography th {
- padding: 6px 13px;
- border: 1px solid var(--color-accent);
-}
-.tsd-typography thead,
-.tsd-typography tr:nth-child(even) {
- background-color: var(--color-background-secondary);
-}
+ dl.tsd-comment-tag-group dd:before,
+ dl.tsd-comment-tag-group dd:after {
+ content: ' ';
+ }
+ dl.tsd-comment-tag-group dd pre,
+ dl.tsd-comment-tag-group dd:after {
+ clear: both;
+ }
+ dl.tsd-comment-tag-group p {
+ margin: 0;
+ }
-.tsd-breadcrumb {
- margin: 0;
- padding: 0;
- color: var(--color-text-aside);
-}
-.tsd-breadcrumb a {
- color: var(--color-text-aside);
- text-decoration: none;
-}
-.tsd-breadcrumb a:hover {
- text-decoration: underline;
-}
-.tsd-breadcrumb li {
- display: inline;
-}
-.tsd-breadcrumb li:after {
- content: ' / ';
-}
+ .tsd-panel.tsd-comment .lead {
+ font-size: 1.1em;
+ line-height: 1.333em;
+ margin-bottom: 2em;
+ }
+ .tsd-panel.tsd-comment .lead:last-child {
+ margin-bottom: 0;
+ }
-.tsd-comment-tags {
- display: flex;
- flex-direction: column;
-}
-dl.tsd-comment-tag-group {
- display: flex;
- align-items: center;
- overflow: hidden;
- margin: 0.5em 0;
-}
-dl.tsd-comment-tag-group dt {
- display: flex;
- margin-right: 0.5em;
- font-size: 0.875em;
- font-weight: normal;
-}
-dl.tsd-comment-tag-group dd {
- margin: 0;
-}
-code.tsd-tag {
- padding: 0.25em 0.4em;
- border: 0.1em solid var(--color-accent);
- margin-right: 0.25em;
- font-size: 70%;
-}
-h1 code.tsd-tag:first-of-type {
- margin-left: 0.25em;
-}
+ .tsd-filter-visibility h4 {
+ font-size: 1rem;
+ padding-top: 0.75rem;
+ padding-bottom: 0.5rem;
+ margin: 0;
+ }
+ .tsd-filter-item:not(:last-child) {
+ margin-bottom: 0.5rem;
+ }
+ .tsd-filter-input {
+ display: flex;
+ width: -moz-fit-content;
+ width: fit-content;
+ align-items: center;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+ cursor: pointer;
+ }
+ .tsd-filter-input input[type='checkbox'] {
+ cursor: pointer;
+ position: absolute;
+ width: 1.5em;
+ height: 1.5em;
+ opacity: 0;
+ }
+ .tsd-filter-input input[type='checkbox']:disabled {
+ pointer-events: none;
+ }
+ .tsd-filter-input svg {
+ cursor: pointer;
+ width: 1.5em;
+ height: 1.5em;
+ margin-right: 0.5em;
+ border-radius: 0.33em;
+ /* Leaving this at full opacity breaks event listeners on Firefox.
+ Don't remove unless you know what you're doing. */
+ opacity: 0.99;
+ }
+ .tsd-filter-input input[type='checkbox']:focus-visible + svg {
+ outline: 2px solid var(--color-focus-outline);
+ }
+ .tsd-checkbox-background {
+ fill: var(--color-accent);
+ }
+ input[type='checkbox']:checked ~ svg .tsd-checkbox-checkmark {
+ stroke: var(--color-text);
+ }
+ .tsd-filter-input input:disabled ~ svg > .tsd-checkbox-background {
+ fill: var(--color-background);
+ stroke: var(--color-accent);
+ stroke-width: 0.25rem;
+ }
+ .tsd-filter-input input:disabled ~ svg > .tsd-checkbox-checkmark {
+ stroke: var(--color-accent);
+ }
-dl.tsd-comment-tag-group dd:before,
-dl.tsd-comment-tag-group dd:after {
- content: ' ';
-}
-dl.tsd-comment-tag-group dd pre,
-dl.tsd-comment-tag-group dd:after {
- clear: both;
-}
-dl.tsd-comment-tag-group p {
- margin: 0;
-}
+ .settings-label {
+ font-weight: bold;
+ text-transform: uppercase;
+ display: inline-block;
+ }
-.tsd-panel.tsd-comment .lead {
- font-size: 1.1em;
- line-height: 1.333em;
- margin-bottom: 2em;
-}
-.tsd-panel.tsd-comment .lead:last-child {
- margin-bottom: 0;
-}
+ .tsd-filter-visibility .settings-label {
+ margin: 0.75rem 0 0.5rem 0;
+ }
-.tsd-filter-visibility h4 {
- font-size: 1rem;
- padding-top: 0.75rem;
- padding-bottom: 0.5rem;
- margin: 0;
-}
-.tsd-filter-item:not(:last-child) {
- margin-bottom: 0.5rem;
-}
-.tsd-filter-input {
- display: flex;
- width: fit-content;
- width: -moz-fit-content;
- align-items: center;
- user-select: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- cursor: pointer;
-}
-.tsd-filter-input input[type='checkbox'] {
- cursor: pointer;
- position: absolute;
- width: 1.5em;
- height: 1.5em;
- opacity: 0;
-}
-.tsd-filter-input input[type='checkbox']:disabled {
- pointer-events: none;
-}
-.tsd-filter-input svg {
- cursor: pointer;
- width: 1.5em;
- height: 1.5em;
- margin-right: 0.5em;
- border-radius: 0.33em;
- /* Leaving this at full opacity breaks event listeners on Firefox.
- Don't remove unless you know what you're doing. */
- opacity: 0.99;
-}
-.tsd-filter-input input[type='checkbox']:focus + svg {
- transform: scale(0.95);
-}
-.tsd-filter-input input[type='checkbox']:focus:not(:focus-visible) + svg {
- transform: scale(1);
-}
-.tsd-checkbox-background {
- fill: var(--color-accent);
-}
-input[type='checkbox']:checked ~ svg .tsd-checkbox-checkmark {
- stroke: var(--color-text);
-}
-.tsd-filter-input input:disabled ~ svg > .tsd-checkbox-background {
- fill: var(--color-background);
- stroke: var(--color-accent);
- stroke-width: 0.25rem;
-}
-.tsd-filter-input input:disabled ~ svg > .tsd-checkbox-checkmark {
- stroke: var(--color-accent);
-}
+ .tsd-theme-toggle .settings-label {
+ margin: 0.75rem 0.75rem 0 0;
+ }
-.tsd-theme-toggle {
- padding-top: 0.75rem;
-}
-.tsd-theme-toggle > h4 {
- display: inline;
- vertical-align: middle;
- margin-right: 0.75rem;
-}
+ .tsd-hierarchy h4 label:hover span {
+ text-decoration: underline;
+ }
-.tsd-hierarchy {
- list-style: square;
- margin: 0;
-}
-.tsd-hierarchy .target {
- font-weight: bold;
-}
+ .tsd-hierarchy {
+ list-style: square;
+ margin: 0;
+ }
+ .tsd-hierarchy-target {
+ font-weight: bold;
+ }
+ .tsd-hierarchy-toggle {
+ color: var(--color-link);
+ cursor: pointer;
+ }
-.tsd-full-hierarchy:not(:last-child) {
- margin-bottom: 1em;
- padding-bottom: 1em;
- border-bottom: 1px solid var(--color-accent);
-}
-.tsd-full-hierarchy,
-.tsd-full-hierarchy ul {
- list-style: none;
- margin: 0;
- padding: 0;
-}
-.tsd-full-hierarchy ul {
- padding-left: 1.5rem;
-}
-.tsd-full-hierarchy a {
- padding: 0.25rem 0 !important;
- font-size: 1rem;
- display: inline-flex;
- align-items: center;
- color: var(--color-text);
-}
+ .tsd-full-hierarchy:not(:last-child) {
+ margin-bottom: 1em;
+ padding-bottom: 1em;
+ border-bottom: 1px solid var(--color-accent);
+ }
+ .tsd-full-hierarchy,
+ .tsd-full-hierarchy ul {
+ list-style: none;
+ margin: 0;
+ padding: 0;
+ }
+ .tsd-full-hierarchy ul {
+ padding-left: 1.5rem;
+ }
+ .tsd-full-hierarchy a {
+ padding: 0.25rem 0 !important;
+ font-size: 1rem;
+ display: inline-flex;
+ align-items: center;
+ color: var(--color-text);
+ }
+ .tsd-full-hierarchy svg[data-dropdown] {
+ cursor: pointer;
+ }
+ .tsd-full-hierarchy svg[data-dropdown='false'] {
+ transform: rotate(-90deg);
+ }
+ .tsd-full-hierarchy svg[data-dropdown='false'] ~ ul {
+ display: none;
+ }
-.tsd-panel-group.tsd-index-group {
- margin-bottom: 0;
-}
-.tsd-index-panel .tsd-index-list {
- list-style: none;
- line-height: 1.333em;
- margin: 0;
- padding: 0.25rem 0 0 0;
- overflow: hidden;
- display: grid;
- grid-template-columns: repeat(3, 1fr);
- column-gap: 1rem;
- grid-template-rows: auto;
-}
-@media (max-width: 1024px) {
- .tsd-index-panel .tsd-index-list {
- grid-template-columns: repeat(2, 1fr);
+ .tsd-panel-group.tsd-index-group {
+ margin-bottom: 0;
}
-}
-@media (max-width: 768px) {
.tsd-index-panel .tsd-index-list {
- grid-template-columns: repeat(1, 1fr);
+ list-style: none;
+ line-height: 1.333em;
+ margin: 0;
+ padding: 0.25rem 0 0 0;
+ overflow: hidden;
+ display: grid;
+ grid-template-columns: repeat(3, 1fr);
+ column-gap: 1rem;
+ grid-template-rows: auto;
+ }
+ @media (max-width: 1024px) {
+ .tsd-index-panel .tsd-index-list {
+ grid-template-columns: repeat(2, 1fr);
+ }
+ }
+ @media (max-width: 768px) {
+ .tsd-index-panel .tsd-index-list {
+ grid-template-columns: repeat(1, 1fr);
+ }
+ }
+ .tsd-index-panel .tsd-index-list li {
+ -webkit-page-break-inside: avoid;
+ -moz-page-break-inside: avoid;
+ -ms-page-break-inside: avoid;
+ -o-page-break-inside: avoid;
+ page-break-inside: avoid;
}
-}
-.tsd-index-panel .tsd-index-list li {
- -webkit-page-break-inside: avoid;
- -moz-page-break-inside: avoid;
- -ms-page-break-inside: avoid;
- -o-page-break-inside: avoid;
- page-break-inside: avoid;
-}
-.tsd-flag {
- display: inline-block;
- padding: 0.25em 0.4em;
- border-radius: 4px;
- color: var(--color-comment-tag-text);
- background-color: var(--color-comment-tag);
- text-indent: 0;
- font-size: 75%;
- line-height: 1;
- font-weight: normal;
-}
+ .tsd-flag {
+ display: inline-block;
+ padding: 0.25em 0.4em;
+ border-radius: 4px;
+ color: var(--color-comment-tag-text);
+ background-color: var(--color-comment-tag);
+ text-indent: 0;
+ font-size: 75%;
+ line-height: 1;
+ font-weight: normal;
+ }
-.tsd-anchor {
- position: relative;
- top: -100px;
-}
+ .tsd-anchor {
+ position: relative;
+ top: -100px;
+ }
-.tsd-member {
- position: relative;
-}
-.tsd-member .tsd-anchor + h3 {
- display: flex;
- align-items: center;
- margin-top: 0;
- margin-bottom: 0;
- border-bottom: none;
-}
+ .tsd-member {
+ position: relative;
+ }
+ .tsd-member .tsd-anchor + h3 {
+ display: flex;
+ align-items: center;
+ margin-top: 0;
+ margin-bottom: 0;
+ border-bottom: none;
+ }
-.tsd-navigation.settings {
- margin: 1rem 0;
-}
-.tsd-navigation > a,
-.tsd-navigation .tsd-accordion-summary {
- width: calc(100% - 0.25rem);
- display: flex;
- align-items: center;
-}
-.tsd-navigation a,
-.tsd-navigation summary > span,
-.tsd-page-navigation a {
- display: flex;
- width: calc(100% - 0.25rem);
- align-items: center;
- padding: 0.25rem;
- color: var(--color-text);
- text-decoration: none;
- box-sizing: border-box;
-}
-.tsd-navigation a.current,
-.tsd-page-navigation a.current {
- background: var(--color-active-menu-item);
-}
-.tsd-navigation a:hover,
-.tsd-page-navigation a:hover {
- text-decoration: underline;
-}
-.tsd-navigation ul,
-.tsd-page-navigation ul {
- margin-top: 0;
- margin-bottom: 0;
- padding: 0;
- list-style: none;
-}
-.tsd-navigation li,
-.tsd-page-navigation li {
- padding: 0;
- max-width: 100%;
-}
-.tsd-nested-navigation {
- margin-left: 3rem;
-}
-.tsd-nested-navigation > li > details {
- margin-left: -1.5rem;
-}
-.tsd-small-nested-navigation {
- margin-left: 1.5rem;
-}
-.tsd-small-nested-navigation > li > details {
- margin-left: -1.5rem;
-}
-
-.tsd-page-navigation ul {
- padding-left: 1.75rem;
-}
-
-#tsd-sidebar-links a {
- margin-top: 0;
- margin-bottom: 0.5rem;
- line-height: 1.25rem;
-}
-#tsd-sidebar-links a:last-of-type {
- margin-bottom: 0;
-}
-
-a.tsd-index-link {
- padding: 0.25rem 0 !important;
- font-size: 1rem;
- line-height: 1.25rem;
- display: inline-flex;
- align-items: center;
- color: var(--color-text);
-}
-.tsd-accordion-summary {
- list-style-type: none; /* hide marker on non-safari */
- outline: none; /* broken on safari, so just hide it */
-}
-.tsd-accordion-summary::-webkit-details-marker {
- display: none; /* hide marker on safari */
-}
-.tsd-accordion-summary,
-.tsd-accordion-summary a {
- user-select: none;
- -moz-user-select: none;
- -webkit-user-select: none;
- -ms-user-select: none;
-
- cursor: pointer;
-}
-.tsd-accordion-summary a {
- width: calc(100% - 1.5rem);
-}
-.tsd-accordion-summary > * {
- margin-top: 0;
- margin-bottom: 0;
- padding-top: 0;
- padding-bottom: 0;
-}
-.tsd-index-accordion .tsd-accordion-summary > svg {
- margin-left: 0.25rem;
-}
-.tsd-index-content > :not(:first-child) {
- margin-top: 0.75rem;
-}
-.tsd-index-heading {
- margin-top: 1.5rem;
- margin-bottom: 0.75rem;
-}
-
-.tsd-kind-icon {
- margin-right: 0.5rem;
- width: 1.25rem;
- height: 1.25rem;
- min-width: 1.25rem;
- min-height: 1.25rem;
-}
-.tsd-kind-icon path {
- transform-origin: center;
- transform: scale(1.1);
-}
-.tsd-signature > .tsd-kind-icon {
- margin-right: 0.8rem;
-}
-
-.tsd-panel {
- margin-bottom: 2.5rem;
-}
-.tsd-panel.tsd-member {
- margin-bottom: 4rem;
-}
-.tsd-panel:empty {
- display: none;
-}
-.tsd-panel > h1,
-.tsd-panel > h2,
-.tsd-panel > h3 {
- margin: 1.5rem -1.5rem 0.75rem -1.5rem;
- padding: 0 1.5rem 0.75rem 1.5rem;
-}
-.tsd-panel > h1.tsd-before-signature,
-.tsd-panel > h2.tsd-before-signature,
-.tsd-panel > h3.tsd-before-signature {
- margin-bottom: 0;
- border-bottom: none;
-}
-
-.tsd-panel-group {
- margin: 4rem 0;
-}
-.tsd-panel-group.tsd-index-group {
- margin: 2rem 0;
-}
-.tsd-panel-group.tsd-index-group details {
- margin: 2rem 0;
-}
-
-#tsd-search {
- transition: background-color 0.2s;
-}
-#tsd-search .title {
- position: relative;
- z-index: 2;
-}
-#tsd-search .field {
- position: absolute;
- left: 0;
- top: 0;
- right: 2.5rem;
- height: 100%;
-}
-#tsd-search .field input {
- box-sizing: border-box;
- position: relative;
- top: -50px;
- z-index: 1;
- width: 100%;
- padding: 0 10px;
- opacity: 0;
- outline: 0;
- border: 0;
- background: transparent;
- color: var(--color-text);
-}
-#tsd-search .field label {
- position: absolute;
- overflow: hidden;
- right: -40px;
-}
-#tsd-search .field input,
-#tsd-search .title,
-#tsd-toolbar-links a {
- transition: opacity 0.2s;
-}
-#tsd-search .results {
- position: absolute;
- visibility: hidden;
- top: 40px;
- width: 100%;
- margin: 0;
- padding: 0;
- list-style: none;
- box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
-}
-#tsd-search .results li {
- background-color: var(--color-background);
- line-height: initial;
- padding: 4px;
-}
-#tsd-search .results li:nth-child(even) {
- background-color: var(--color-background-secondary);
-}
-#tsd-search .results li.state {
- display: none;
-}
-#tsd-search .results li.current:not(.no-results),
-#tsd-search .results li:hover:not(.no-results) {
- background-color: var(--color-accent);
-}
-#tsd-search .results a {
- display: flex;
- align-items: center;
- padding: 0.25rem;
- box-sizing: border-box;
-}
-#tsd-search .results a:before {
- top: 10px;
-}
-#tsd-search .results span.parent {
- color: var(--color-text-aside);
- font-weight: normal;
-}
-#tsd-search.has-focus {
- background-color: var(--color-accent);
-}
-#tsd-search.has-focus .field input {
- top: 0;
- opacity: 1;
-}
-#tsd-search.has-focus .title,
-#tsd-search.has-focus #tsd-toolbar-links a {
- z-index: 0;
- opacity: 0;
-}
-#tsd-search.has-focus .results {
- visibility: visible;
-}
-#tsd-search.loading .results li.state.loading {
- display: block;
-}
-#tsd-search.failure .results li.state.failure {
- display: block;
-}
-
-#tsd-toolbar-links {
- position: absolute;
- top: 0;
- right: 2rem;
- height: 100%;
- display: flex;
- align-items: center;
- justify-content: flex-end;
-}
-#tsd-toolbar-links a {
- margin-left: 1.5rem;
-}
-#tsd-toolbar-links a:hover {
- text-decoration: underline;
-}
-
-.tsd-signature {
- margin: 0 0 1rem 0;
- padding: 1rem 0.5rem;
- border: 1px solid var(--color-accent);
- font-family: Menlo, Monaco, Consolas, 'Courier New', monospace;
- font-size: 14px;
- overflow-x: auto;
-}
-
-.tsd-signature-keyword {
- color: var(--color-ts-keyword);
- font-weight: normal;
-}
-
-.tsd-signature-symbol {
- color: var(--color-text-aside);
- font-weight: normal;
-}
-
-.tsd-signature-type {
- font-style: italic;
- font-weight: normal;
-}
-
-.tsd-signatures {
- padding: 0;
- margin: 0 0 1em 0;
- list-style-type: none;
-}
-.tsd-signatures .tsd-signature {
- margin: 0;
- border-color: var(--color-accent);
- border-width: 1px 0;
- transition: background-color 0.1s;
-}
-.tsd-description .tsd-signatures .tsd-signature {
- border-width: 1px;
-}
-
-ul.tsd-parameter-list,
-ul.tsd-type-parameter-list {
- list-style: square;
- margin: 0;
- padding-left: 20px;
-}
-ul.tsd-parameter-list > li.tsd-parameter-signature,
-ul.tsd-type-parameter-list > li.tsd-parameter-signature {
- list-style: none;
- margin-left: -20px;
-}
-ul.tsd-parameter-list h5,
-ul.tsd-type-parameter-list h5 {
- font-size: 16px;
- margin: 1em 0 0.5em 0;
-}
-.tsd-sources {
- margin-top: 1rem;
- font-size: 0.875em;
-}
-.tsd-sources a {
- color: var(--color-text-aside);
- text-decoration: underline;
-}
-.tsd-sources ul {
- list-style: none;
- padding: 0;
-}
-
-.tsd-page-toolbar {
- position: sticky;
- z-index: 1;
- top: 0;
- left: 0;
- width: 100%;
- color: var(--color-text);
- background: var(--color-background-secondary);
- border-bottom: 1px var(--color-accent) solid;
- transition: transform 0.3s ease-in-out;
-}
-.tsd-page-toolbar a {
- color: var(--color-text);
- text-decoration: none;
-}
-.tsd-page-toolbar a.title {
- font-weight: bold;
-}
-.tsd-page-toolbar a.title:hover {
- text-decoration: underline;
-}
-.tsd-page-toolbar .tsd-toolbar-contents {
- display: flex;
- justify-content: space-between;
- height: 2.5rem;
- margin: 0 auto;
-}
-.tsd-page-toolbar .table-cell {
- position: relative;
- white-space: nowrap;
- line-height: 40px;
-}
-.tsd-page-toolbar .table-cell:first-child {
- width: 100%;
-}
-.tsd-page-toolbar .tsd-toolbar-icon {
- box-sizing: border-box;
- line-height: 0;
- padding: 12px 0;
-}
-
-.tsd-widget {
- display: inline-block;
- overflow: hidden;
- opacity: 0.8;
- height: 40px;
- transition: opacity 0.1s, background-color 0.2s;
- vertical-align: bottom;
- cursor: pointer;
-}
-.tsd-widget:hover {
- opacity: 0.9;
-}
-.tsd-widget.active {
- opacity: 1;
- background-color: var(--color-accent);
-}
-.tsd-widget.no-caption {
- width: 40px;
-}
-.tsd-widget.no-caption:before {
- margin: 0;
-}
-
-.tsd-widget.options,
-.tsd-widget.menu {
- display: none;
-}
-input[type='checkbox'] + .tsd-widget:before {
- background-position: -120px 0;
-}
-input[type='checkbox']:checked + .tsd-widget:before {
- background-position: -160px 0;
-}
-
-img {
- max-width: 100%;
-}
-
-.tsd-anchor-icon {
- display: inline-flex;
- align-items: center;
- margin-left: 0.5rem;
- vertical-align: middle;
- color: var(--color-text);
-}
-
-.tsd-anchor-icon svg {
- width: 1em;
- height: 1em;
- visibility: hidden;
-}
-
-.tsd-anchor-link:hover > .tsd-anchor-icon svg {
- visibility: visible;
-}
-
-.deprecated {
- text-decoration: line-through !important;
-}
-
-.warning {
- padding: 1rem;
- color: var(--color-warning-text);
- background: var(--color-background-warning);
-}
+ .tsd-navigation.settings {
+ margin: 0;
+ margin-bottom: 1rem;
+ }
+ .tsd-navigation > a,
+ .tsd-navigation .tsd-accordion-summary {
+ width: calc(100% - 0.25rem);
+ display: flex;
+ align-items: center;
+ }
+ .tsd-navigation a,
+ .tsd-navigation summary > span,
+ .tsd-page-navigation a {
+ display: flex;
+ width: calc(100% - 0.25rem);
+ align-items: center;
+ padding: 0.25rem;
+ color: var(--color-text);
+ text-decoration: none;
+ box-sizing: border-box;
+ }
+ .tsd-navigation a.current,
+ .tsd-page-navigation a.current {
+ background: var(--color-active-menu-item);
+ color: var(--color-contrast-text);
+ }
+ .tsd-navigation a:hover,
+ .tsd-page-navigation a:hover {
+ text-decoration: underline;
+ }
+ .tsd-navigation ul,
+ .tsd-page-navigation ul {
+ margin-top: 0;
+ margin-bottom: 0;
+ padding: 0;
+ list-style: none;
+ }
+ .tsd-navigation li,
+ .tsd-page-navigation li {
+ padding: 0;
+ max-width: 100%;
+ }
+ .tsd-navigation .tsd-nav-link {
+ display: none;
+ }
+ .tsd-nested-navigation {
+ margin-left: 3rem;
+ }
+ .tsd-nested-navigation > li > details {
+ margin-left: -1.5rem;
+ }
+ .tsd-small-nested-navigation {
+ margin-left: 1.5rem;
+ }
+ .tsd-small-nested-navigation > li > details {
+ margin-left: -1.5rem;
+ }
-.tsd-kind-project {
- color: var(--color-ts-project);
-}
-.tsd-kind-module {
- color: var(--color-ts-module);
-}
-.tsd-kind-namespace {
- color: var(--color-ts-namespace);
-}
-.tsd-kind-enum {
- color: var(--color-ts-enum);
-}
-.tsd-kind-enum-member {
- color: var(--color-ts-enum-member);
-}
-.tsd-kind-variable {
- color: var(--color-ts-variable);
-}
-.tsd-kind-function {
- color: var(--color-ts-function);
-}
-.tsd-kind-class {
- color: var(--color-ts-class);
-}
-.tsd-kind-interface {
- color: var(--color-ts-interface);
-}
-.tsd-kind-constructor {
- color: var(--color-ts-constructor);
-}
-.tsd-kind-property {
- color: var(--color-ts-property);
-}
-.tsd-kind-method {
- color: var(--color-ts-method);
-}
-.tsd-kind-call-signature {
- color: var(--color-ts-call-signature);
-}
-.tsd-kind-index-signature {
- color: var(--color-ts-index-signature);
-}
-.tsd-kind-constructor-signature {
- color: var(--color-ts-constructor-signature);
-}
-.tsd-kind-parameter {
- color: var(--color-ts-parameter);
-}
-.tsd-kind-type-literal {
- color: var(--color-ts-type-literal);
-}
-.tsd-kind-type-parameter {
- color: var(--color-ts-type-parameter);
-}
-.tsd-kind-accessor {
- color: var(--color-ts-accessor);
-}
-.tsd-kind-get-signature {
- color: var(--color-ts-get-signature);
-}
-.tsd-kind-set-signature {
- color: var(--color-ts-set-signature);
-}
-.tsd-kind-type-alias {
- color: var(--color-ts-type-alias);
-}
+ .tsd-page-navigation-section > summary {
+ padding: 0.25rem;
+ }
+ .tsd-page-navigation-section > summary > svg {
+ margin-right: 0.25rem;
+ }
+ .tsd-page-navigation-section > div {
+ margin-left: 30px;
+ }
+ .tsd-page-navigation ul {
+ padding-left: 1.75rem;
+ }
-/* if we have a kind icon, don't color the text by kind */
-.tsd-kind-icon ~ span {
- color: var(--color-text);
-}
+ #tsd-sidebar-links a {
+ margin-top: 0;
+ margin-bottom: 0.5rem;
+ line-height: 1.25rem;
+ }
+ #tsd-sidebar-links a:last-of-type {
+ margin-bottom: 0;
+ }
-* {
- scrollbar-width: thin;
- scrollbar-color: var(--color-accent) var(--color-icon-background);
-}
+ a.tsd-index-link {
+ padding: 0.25rem 0 !important;
+ font-size: 1rem;
+ line-height: 1.25rem;
+ display: inline-flex;
+ align-items: center;
+ color: var(--color-text);
+ }
+ .tsd-accordion-summary {
+ list-style-type: none; /* hide marker on non-safari */
+ outline: none; /* broken on safari, so just hide it */
+ display: flex;
+ align-items: center;
+ gap: 0.25rem;
+ box-sizing: border-box;
+ }
+ .tsd-accordion-summary::-webkit-details-marker {
+ display: none; /* hide marker on safari */
+ }
+ .tsd-accordion-summary,
+ .tsd-accordion-summary a {
+ -moz-user-select: none;
+ -webkit-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+
+ cursor: pointer;
+ }
+ .tsd-accordion-summary a {
+ width: calc(100% - 1.5rem);
+ }
+ .tsd-accordion-summary > * {
+ margin-top: 0;
+ margin-bottom: 0;
+ padding-top: 0;
+ padding-bottom: 0;
+ }
+ /*
+ * We need to be careful to target the arrow indicating whether the accordion
+ * is open, but not any other SVGs included in the details element.
+ */
+ .tsd-accordion:not([open]) > .tsd-accordion-summary > svg:first-child {
+ transform: rotate(-90deg);
+ }
+ .tsd-index-content > :not(:first-child) {
+ margin-top: 0.75rem;
+ }
+ .tsd-index-summary {
+ margin-top: 1.5rem;
+ margin-bottom: 0.75rem;
+ display: flex;
+ align-content: center;
+ }
-*::-webkit-scrollbar {
- width: 0.75rem;
-}
+ .tsd-no-select {
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+ }
+ .tsd-kind-icon {
+ margin-right: 0.5rem;
+ width: 1.25rem;
+ height: 1.25rem;
+ min-width: 1.25rem;
+ min-height: 1.25rem;
+ }
+ .tsd-signature > .tsd-kind-icon {
+ margin-right: 0.8rem;
+ }
-*::-webkit-scrollbar-track {
- background: var(--color-icon-background);
-}
+ .tsd-panel {
+ margin-bottom: 2.5rem;
+ }
+ .tsd-panel.tsd-member {
+ margin-bottom: 4rem;
+ }
+ .tsd-panel:empty {
+ display: none;
+ }
+ .tsd-panel > h1,
+ .tsd-panel > h2,
+ .tsd-panel > h3 {
+ margin: 1.5rem -1.5rem 0.75rem -1.5rem;
+ padding: 0 1.5rem 0.75rem 1.5rem;
+ }
+ .tsd-panel > h1.tsd-before-signature,
+ .tsd-panel > h2.tsd-before-signature,
+ .tsd-panel > h3.tsd-before-signature {
+ margin-bottom: 0;
+ border-bottom: none;
+ }
-*::-webkit-scrollbar-thumb {
- background-color: var(--color-accent);
- border-radius: 999rem;
- border: 0.25rem solid var(--color-icon-background);
-}
+ .tsd-panel-group {
+ margin: 2rem 0;
+ }
+ .tsd-panel-group.tsd-index-group {
+ margin: 2rem 0;
+ }
+ .tsd-panel-group.tsd-index-group details {
+ margin: 2rem 0;
+ }
+ .tsd-panel-group > .tsd-accordion-summary {
+ margin-bottom: 1rem;
+ }
-/* mobile */
-@media (max-width: 769px) {
- .tsd-widget.options,
- .tsd-widget.menu {
- display: inline-block;
+ #tsd-search[open] {
+ animation: fade-in var(--modal-animation-duration) ease-out forwards;
+ }
+ #tsd-search[open].closing {
+ animation-name: fade-out;
}
- .container-main {
+ /* Avoid setting `display` on closed dialog */
+ #tsd-search[open] {
display: flex;
+ flex-direction: column;
+ padding: 1rem;
+ width: 32rem;
+ max-width: 90vw;
+ max-height: calc(100vh - env(keyboard-inset-height, 0px) - 25vh);
+ /* Anchor dialog to top */
+ margin-top: 10vh;
+ border-radius: 6px;
+ will-change: max-height;
}
- html .col-content {
- float: none;
- max-width: 100%;
+ #tsd-search-input {
+ box-sizing: border-box;
width: 100%;
+ padding: 0 0.625rem; /* 10px */
+ outline: 0;
+ border: 2px solid var(--color-accent);
+ background-color: transparent;
+ color: var(--color-text);
+ border-radius: 4px;
+ height: 2.5rem;
+ flex: 0 0 auto;
+ font-size: 0.875rem;
+ transition: border-color 0.2s, background-color 0.2s;
+ }
+ #tsd-search-input:focus-visible {
+ background-color: var(--color-background-active);
+ border-color: transparent;
+ color: var(--color-contrast-text);
}
- html .col-sidebar {
- position: fixed !important;
+ #tsd-search-input::placeholder {
+ color: inherit;
+ opacity: 0.8;
+ }
+ #tsd-search-results {
+ margin: 0;
+ padding: 0;
+ list-style: none;
+ flex: 1 1 auto;
+ display: flex;
+ flex-direction: column;
overflow-y: auto;
- -webkit-overflow-scrolling: touch;
- z-index: 1024;
- top: 0 !important;
- bottom: 0 !important;
- left: auto !important;
- right: 0 !important;
- padding: 1.5rem 1.5rem 0 0;
- width: 75vw;
- visibility: hidden;
+ }
+ #tsd-search-results:not(:empty) {
+ margin-top: 0.5rem;
+ }
+ #tsd-search-results > li {
background-color: var(--color-background);
- transform: translate(100%, 0);
+ line-height: 1.5;
+ box-sizing: border-box;
+ border-radius: 4px;
}
- html .col-sidebar > *:last-child {
- padding-bottom: 20px;
+ #tsd-search-results > li:nth-child(even) {
+ background-color: var(--color-background-secondary);
}
- html .overlay {
- content: '';
- display: block;
- position: fixed;
- z-index: 1023;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- background-color: rgba(0, 0, 0, 0.75);
- visibility: hidden;
+ #tsd-search-results > li:is(:hover, [aria-selected='true']) {
+ background-color: var(--color-background-active);
+ color: var(--color-contrast-text);
+ }
+ /* It's important that this takes full size of parent `li`, to capture a click on `li` */
+ #tsd-search-results > li > a {
+ display: flex;
+ align-items: center;
+ padding: 0.5rem 0.25rem;
+ box-sizing: border-box;
+ width: 100%;
+ }
+ #tsd-search-results > li > a > .text {
+ flex: 1 1 auto;
+ min-width: 0;
+ overflow-wrap: anywhere;
+ }
+ #tsd-search-results > li > a .parent {
+ color: var(--color-text-aside);
+ }
+ #tsd-search-results > li > a mark {
+ color: inherit;
+ background-color: inherit;
+ font-weight: bold;
+ }
+ #tsd-search-status {
+ flex: 1;
+ display: grid;
+ place-content: center;
+ text-align: center;
+ overflow-wrap: anywhere;
+ }
+ #tsd-search-status:not(:empty) {
+ min-height: 6rem;
}
- .to-has-menu .overlay {
- animation: fade-in 0.4s;
+ .tsd-signature {
+ margin: 0 0 1rem 0;
+ padding: 1rem 0.5rem;
+ border: 1px solid var(--color-accent);
+ font-family: Menlo, Monaco, Consolas, 'Courier New', monospace;
+ font-size: 14px;
+ overflow-x: auto;
}
- .to-has-menu .col-sidebar {
- animation: pop-in-from-right 0.4s;
+ .tsd-signature-keyword {
+ color: var(--color-ts-keyword);
+ font-weight: normal;
}
- .from-has-menu .overlay {
- animation: fade-out 0.4s;
+ .tsd-signature-symbol {
+ color: var(--color-text-aside);
+ font-weight: normal;
}
- .from-has-menu .col-sidebar {
- animation: pop-out-to-right 0.4s;
+ .tsd-signature-type {
+ font-style: italic;
+ font-weight: normal;
}
- .has-menu body {
- overflow: hidden;
+ .tsd-signatures {
+ padding: 0;
+ margin: 0 0 1em 0;
+ list-style-type: none;
}
- .has-menu .overlay {
- visibility: visible;
+ .tsd-signatures .tsd-signature {
+ margin: 0;
+ border-color: var(--color-accent);
+ border-width: 1px 0;
+ transition: background-color 0.1s;
}
- .has-menu .col-sidebar {
- visibility: visible;
- transform: translate(0, 0);
+ .tsd-signatures .tsd-index-signature:not(:last-child) {
+ margin-bottom: 1em;
+ }
+ .tsd-signatures .tsd-index-signature .tsd-signature {
+ border-width: 1px;
+ }
+ .tsd-description .tsd-signatures .tsd-signature {
+ border-width: 1px;
+ }
+
+ ul.tsd-parameter-list,
+ ul.tsd-type-parameter-list {
+ list-style: square;
+ margin: 0;
+ padding-left: 20px;
+ }
+ ul.tsd-parameter-list > li.tsd-parameter-signature,
+ ul.tsd-type-parameter-list > li.tsd-parameter-signature {
+ list-style: none;
+ margin-left: -20px;
+ }
+ ul.tsd-parameter-list h5,
+ ul.tsd-type-parameter-list h5 {
+ font-size: 16px;
+ margin: 1em 0 0.5em 0;
+ }
+ .tsd-sources {
+ margin-top: 1rem;
+ font-size: 0.875em;
+ }
+ .tsd-sources a {
+ color: var(--color-text-aside);
+ text-decoration: underline;
+ }
+ .tsd-sources ul {
+ list-style: none;
+ padding: 0;
+ }
+
+ .tsd-page-toolbar {
+ position: sticky;
+ z-index: 1;
+ top: 0;
+ left: 0;
+ width: 100%;
+ color: var(--color-text);
+ background: var(--color-background-secondary);
+ border-bottom: var(--dim-toolbar-border-bottom-width) var(--color-accent)
+ solid;
+ transition: transform 0.3s ease-in-out;
+ }
+ .tsd-page-toolbar a {
+ color: var(--color-text);
+ }
+ .tsd-toolbar-contents {
display: flex;
- flex-direction: column;
+ align-items: center;
+ height: var(--dim-toolbar-contents-height);
+ margin: 0 auto;
+ }
+ .tsd-toolbar-contents > .title {
+ font-weight: bold;
+ margin-right: auto;
+ }
+ #tsd-toolbar-links {
+ display: flex;
+ align-items: center;
gap: 1.5rem;
- max-height: 100vh;
- padding: 1rem 2rem;
+ margin-right: 1rem;
}
- .has-menu .tsd-navigation {
- max-height: 100%;
+
+ .tsd-widget {
+ box-sizing: border-box;
+ display: inline-block;
+ opacity: 0.8;
+ height: 2.5rem;
+ width: 2.5rem;
+ transition: opacity 0.1s, background-color 0.1s;
+ text-align: center;
+ cursor: pointer;
+ border: none;
+ background-color: transparent;
+ }
+ .tsd-widget:hover {
+ opacity: 0.9;
+ }
+ .tsd-widget:active {
+ opacity: 1;
+ background-color: var(--color-accent);
+ }
+ #tsd-toolbar-menu-trigger {
+ display: none;
}
-}
-/* one sidebar */
-@media (min-width: 770px) {
- .container-main {
- display: grid;
- grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
- grid-template-areas: 'sidebar content';
- margin: 2rem auto;
+ .tsd-member-summary-name {
+ display: inline-flex;
+ align-items: center;
+ padding: 0.25rem;
+ text-decoration: none;
}
- .col-sidebar {
- grid-area: sidebar;
+ .tsd-anchor-icon {
+ display: inline-flex;
+ align-items: center;
+ margin-left: 0.5rem;
+ color: var(--color-text);
+ vertical-align: middle;
}
- .col-content {
- grid-area: content;
- padding: 0 1rem;
+
+ .tsd-anchor-icon svg {
+ width: 1em;
+ height: 1em;
+ visibility: hidden;
}
-}
-@media (min-width: 770px) and (max-width: 1399px) {
- .col-sidebar {
- max-height: calc(100vh - 2rem - 42px);
- overflow: auto;
- position: sticky;
- top: 42px;
- padding-top: 1rem;
+
+ .tsd-member-summary-name:hover > .tsd-anchor-icon svg,
+ .tsd-anchor-link:hover > .tsd-anchor-icon svg,
+ .tsd-anchor-icon:focus-visible svg {
+ visibility: visible;
}
- .site-menu {
- margin-top: 1rem;
+
+ .deprecated {
+ text-decoration: line-through !important;
}
-}
-/* two sidebars */
-@media (min-width: 1200px) {
- .container-main {
- grid-template-columns: minmax(0, 1fr) minmax(0, 2.5fr) minmax(0, 20rem);
- grid-template-areas: 'sidebar content toc';
+ .warning {
+ padding: 1rem;
+ color: var(--color-warning-text);
+ background: var(--color-background-warning);
}
- .col-sidebar {
- display: contents;
+ .tsd-kind-project {
+ color: var(--color-ts-project);
+ }
+ .tsd-kind-module {
+ color: var(--color-ts-module);
+ }
+ .tsd-kind-namespace {
+ color: var(--color-ts-namespace);
+ }
+ .tsd-kind-enum {
+ color: var(--color-ts-enum);
+ }
+ .tsd-kind-enum-member {
+ color: var(--color-ts-enum-member);
+ }
+ .tsd-kind-variable {
+ color: var(--color-ts-variable);
+ }
+ .tsd-kind-function {
+ color: var(--color-ts-function);
+ }
+ .tsd-kind-class {
+ color: var(--color-ts-class);
+ }
+ .tsd-kind-interface {
+ color: var(--color-ts-interface);
+ }
+ .tsd-kind-constructor {
+ color: var(--color-ts-constructor);
+ }
+ .tsd-kind-property {
+ color: var(--color-ts-property);
+ }
+ .tsd-kind-method {
+ color: var(--color-ts-method);
+ }
+ .tsd-kind-reference {
+ color: var(--color-ts-reference);
+ }
+ .tsd-kind-call-signature {
+ color: var(--color-ts-call-signature);
+ }
+ .tsd-kind-index-signature {
+ color: var(--color-ts-index-signature);
+ }
+ .tsd-kind-constructor-signature {
+ color: var(--color-ts-constructor-signature);
+ }
+ .tsd-kind-parameter {
+ color: var(--color-ts-parameter);
+ }
+ .tsd-kind-type-parameter {
+ color: var(--color-ts-type-parameter);
+ }
+ .tsd-kind-accessor {
+ color: var(--color-ts-accessor);
+ }
+ .tsd-kind-get-signature {
+ color: var(--color-ts-get-signature);
+ }
+ .tsd-kind-set-signature {
+ color: var(--color-ts-set-signature);
+ }
+ .tsd-kind-type-alias {
+ color: var(--color-ts-type-alias);
}
- .page-menu {
- grid-area: toc;
- padding-left: 1rem;
+ /* if we have a kind icon, don't color the text by kind */
+ .tsd-kind-icon ~ span {
+ color: var(--color-text);
}
- .site-menu {
- grid-area: sidebar;
+
+ /* mobile */
+ @media (max-width: 769px) {
+ #tsd-toolbar-menu-trigger {
+ display: inline-block;
+ /* temporary fix to vertically align, for compatibility */
+ line-height: 2.5;
+ }
+ #tsd-toolbar-links {
+ display: none;
+ }
+
+ .container-main {
+ display: flex;
+ }
+ .col-content {
+ float: none;
+ max-width: 100%;
+ width: 100%;
+ }
+ .col-sidebar {
+ position: fixed !important;
+ overflow-y: auto;
+ -webkit-overflow-scrolling: touch;
+ z-index: 1024;
+ top: 0 !important;
+ bottom: 0 !important;
+ left: auto !important;
+ right: 0 !important;
+ padding: 1.5rem 1.5rem 0 0;
+ width: 75vw;
+ visibility: hidden;
+ background-color: var(--color-background);
+ transform: translate(100%, 0);
+ }
+ .col-sidebar > *:last-child {
+ padding-bottom: 20px;
+ }
+ .overlay {
+ content: '';
+ display: block;
+ position: fixed;
+ z-index: 1023;
+ top: 0;
+ left: 0;
+ right: 0;
+ bottom: 0;
+ background-color: rgba(0, 0, 0, 0.75);
+ visibility: hidden;
+ }
+
+ .to-has-menu .overlay {
+ animation: fade-in 0.4s;
+ }
+
+ .to-has-menu .col-sidebar {
+ animation: pop-in-from-right 0.4s;
+ }
+
+ .from-has-menu .overlay {
+ animation: fade-out 0.4s;
+ }
+
+ .from-has-menu .col-sidebar {
+ animation: pop-out-to-right 0.4s;
+ }
+
+ .has-menu body {
+ overflow: hidden;
+ }
+ .has-menu .overlay {
+ visibility: visible;
+ }
+ .has-menu .col-sidebar {
+ visibility: visible;
+ transform: translate(0, 0);
+ display: flex;
+ flex-direction: column;
+ gap: 1.5rem;
+ max-height: 100vh;
+ padding: 1rem 2rem;
+ }
+ .has-menu .tsd-navigation {
+ max-height: 100%;
+ }
+ .tsd-navigation .tsd-nav-link {
+ display: flex;
+ }
}
- .site-menu {
- margin-top: 1rem 0;
+ /* one sidebar */
+ @media (min-width: 770px) {
+ .container-main {
+ display: grid;
+ grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
+ grid-template-areas: 'sidebar content';
+ --dim-container-main-margin-y: 2rem;
+ }
+
+ .tsd-breadcrumb {
+ margin-top: 0;
+ }
+
+ .col-sidebar {
+ grid-area: sidebar;
+ }
+ .col-content {
+ grid-area: content;
+ padding: 0 1rem;
+ }
+ }
+ @media (min-width: 770px) and (max-width: 1399px) {
+ .col-sidebar {
+ max-height: calc(
+ 100vh - var(--dim-header-height) - var(--dim-footer-height) - 2 *
+ var(--dim-container-main-margin-y)
+ );
+ overflow: auto;
+ position: sticky;
+ top: calc(var(--dim-header-height) + var(--dim-container-main-margin-y));
+ }
+ .site-menu {
+ margin-top: 1rem;
+ }
}
- .page-menu,
- .site-menu {
- max-height: calc(100vh - 2rem - 42px);
- overflow: auto;
- position: sticky;
- top: 42px;
+ /* two sidebars */
+ @media (min-width: 1200px) {
+ .container-main {
+ grid-template-columns: minmax(0, 1fr) minmax(0, 2.5fr) minmax(0, 20rem);
+ grid-template-areas: 'sidebar content toc';
+ }
+
+ .col-sidebar {
+ display: contents;
+ }
+
+ .page-menu {
+ grid-area: toc;
+ padding-left: 1rem;
+ }
+ .site-menu {
+ grid-area: sidebar;
+ }
+
+ .site-menu {
+ margin-top: 0rem;
+ }
+
+ .page-menu,
+ .site-menu {
+ max-height: calc(
+ 100vh - var(--dim-header-height) - var(--dim-footer-height) - 2 *
+ var(--dim-container-main-margin-y)
+ );
+ overflow: auto;
+ position: sticky;
+ top: calc(var(--dim-header-height) + var(--dim-container-main-margin-y));
+ }
}
}
diff --git a/docs/classes/AbstractNavigator.html b/docs/classes/AbstractNavigator.html
index 56713b3f..1158fcee 100644
--- a/docs/classes/AbstractNavigator.html
+++ b/docs/classes/AbstractNavigator.html
@@ -1,5 +1,5 @@
-
+
@@ -12,6 +12,11 @@
+