@designliquido/delegua 0.10.4 → 0.10.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/README.md +5 -0
  2. package/bin/package.json +6 -1
  3. package/coverage/lcov-report/block-navigation.d.ts +1 -0
  4. package/coverage/lcov-report/block-navigation.js +70 -0
  5. package/coverage/lcov-report/block-navigation.js.map +1 -0
  6. package/coverage/lcov-report/prettify.d.ts +0 -0
  7. package/coverage/lcov-report/prettify.js +477 -0
  8. package/coverage/lcov-report/prettify.js.map +1 -0
  9. package/coverage/lcov-report/sorter.d.ts +1 -0
  10. package/coverage/lcov-report/sorter.js +163 -0
  11. package/coverage/lcov-report/sorter.js.map +1 -0
  12. package/docs/assets/main.d.ts +0 -0
  13. package/docs/assets/main.js +604 -0
  14. package/docs/assets/main.js.map +1 -0
  15. package/docs/assets/search.d.ts +0 -0
  16. package/docs/assets/search.js +2 -0
  17. package/docs/assets/search.js.map +1 -0
  18. package/execucao.js +2 -1
  19. package/execucao.js.map +1 -1
  20. package/fontes/bibliotecas/biblioteca-global.js +3 -3
  21. package/fontes/bibliotecas/biblioteca-global.js.map +1 -1
  22. package/fontes/bibliotecas/importar-biblioteca.js +2 -1
  23. package/fontes/bibliotecas/importar-biblioteca.js.map +1 -1
  24. package/fontes/bibliotecas/primitivas-texto.d.ts +1 -0
  25. package/fontes/bibliotecas/primitivas-texto.js +1 -0
  26. package/fontes/bibliotecas/primitivas-texto.js.map +1 -1
  27. package/fontes/bibliotecas/primitivas-vetor.d.ts +1 -0
  28. package/fontes/bibliotecas/primitivas-vetor.js +1 -0
  29. package/fontes/bibliotecas/primitivas-vetor.js.map +1 -1
  30. package/fontes/delegua.d.ts +1 -1
  31. package/fontes/delegua.js +11 -1
  32. package/fontes/delegua.js.map +1 -1
  33. package/fontes/tradutores/index.js +27 -31
  34. package/fontes/tradutores/index.js.map +1 -1
  35. package/package.json +6 -1
  36. package/testes/tradutores/tradutor-javascript.test.js +144 -3
  37. package/testes/tradutores/tradutor-javascript.test.js.map +1 -1
@@ -0,0 +1,604 @@
1
+ "use strict";
2
+ "use strict";
3
+ (() => {
4
+ var Qe = Object.create;
5
+ var ae = Object.defineProperty;
6
+ var Pe = Object.getOwnPropertyDescriptor;
7
+ var Ce = Object.getOwnPropertyNames;
8
+ var Oe = Object.getPrototypeOf, Re = Object.prototype.hasOwnProperty;
9
+ var _e = (t, e) => () => (e || t((e = { exports: {} }).exports, e), e.exports);
10
+ var Me = (t, e, n, r) => { if (e && typeof e == "object" || typeof e == "function")
11
+ for (let i of Ce(e))
12
+ !Re.call(t, i) && i !== n && ae(t, i, { get: () => e[i], enumerable: !(r = Pe(e, i)) || r.enumerable }); return t; };
13
+ var De = (t, e, n) => (n = t != null ? Qe(Oe(t)) : {}, Me(e || !t || !t.__esModule ? ae(n, "default", { value: t, enumerable: !0 }) : n, t));
14
+ var de = _e((ce, he) => {
15
+ (function () {
16
+ var t = function (e) { var n = new t.Builder; return n.pipeline.add(t.trimmer, t.stopWordFilter, t.stemmer), n.searchPipeline.add(t.stemmer), e.call(n, n), n.build(); };
17
+ t.version = "2.3.9";
18
+ t.utils = {}, t.utils.warn = function (e) { return function (n) { e.console && console.warn && console.warn(n); }; }(this), t.utils.asString = function (e) { return e == null ? "" : e.toString(); }, t.utils.clone = function (e) { if (e == null)
19
+ return e; for (var n = Object.create(null), r = Object.keys(e), i = 0; i < r.length; i++) {
20
+ var s = r[i], o = e[s];
21
+ if (Array.isArray(o)) {
22
+ n[s] = o.slice();
23
+ continue;
24
+ }
25
+ if (typeof o == "string" || typeof o == "number" || typeof o == "boolean") {
26
+ n[s] = o;
27
+ continue;
28
+ }
29
+ throw new TypeError("clone is not deep and does not support nested objects");
30
+ } return n; }, t.FieldRef = function (e, n, r) { this.docRef = e, this.fieldName = n, this._stringValue = r; }, t.FieldRef.joiner = "/", t.FieldRef.fromString = function (e) { var n = e.indexOf(t.FieldRef.joiner); if (n === -1)
31
+ throw "malformed field ref string"; var r = e.slice(0, n), i = e.slice(n + 1); return new t.FieldRef(i, r, e); }, t.FieldRef.prototype.toString = function () { return this._stringValue == null && (this._stringValue = this.fieldName + t.FieldRef.joiner + this.docRef), this._stringValue; };
32
+ t.Set = function (e) { if (this.elements = Object.create(null), e) {
33
+ this.length = e.length;
34
+ for (var n = 0; n < this.length; n++)
35
+ this.elements[e[n]] = !0;
36
+ }
37
+ else
38
+ this.length = 0; }, t.Set.complete = { intersect: function (e) { return e; }, union: function () { return this; }, contains: function () { return !0; } }, t.Set.empty = { intersect: function () { return this; }, union: function (e) { return e; }, contains: function () { return !1; } }, t.Set.prototype.contains = function (e) { return !!this.elements[e]; }, t.Set.prototype.intersect = function (e) { var n, r, i, s = []; if (e === t.Set.complete)
39
+ return this; if (e === t.Set.empty)
40
+ return e; this.length < e.length ? (n = this, r = e) : (n = e, r = this), i = Object.keys(n.elements); for (var o = 0; o < i.length; o++) {
41
+ var a = i[o];
42
+ a in r.elements && s.push(a);
43
+ } return new t.Set(s); }, t.Set.prototype.union = function (e) { return e === t.Set.complete ? t.Set.complete : e === t.Set.empty ? this : new t.Set(Object.keys(this.elements).concat(Object.keys(e.elements))); }, t.idf = function (e, n) { var r = 0; for (var i in e)
44
+ i != "_index" && (r += Object.keys(e[i]).length); var s = (n - r + .5) / (r + .5); return Math.log(1 + Math.abs(s)); }, t.Token = function (e, n) { this.str = e || "", this.metadata = n || {}; }, t.Token.prototype.toString = function () { return this.str; }, t.Token.prototype.update = function (e) { return this.str = e(this.str, this.metadata), this; }, t.Token.prototype.clone = function (e) { return e = e || function (n) { return n; }, new t.Token(e(this.str, this.metadata), this.metadata); };
45
+ t.tokenizer = function (e, n) { if (e == null || e == null)
46
+ return []; if (Array.isArray(e))
47
+ return e.map(function (m) { return new t.Token(t.utils.asString(m).toLowerCase(), t.utils.clone(n)); }); for (var r = e.toString().toLowerCase(), i = r.length, s = [], o = 0, a = 0; o <= i; o++) {
48
+ var u = r.charAt(o), l = o - a;
49
+ if (u.match(t.tokenizer.separator) || o == i) {
50
+ if (l > 0) {
51
+ var h = t.utils.clone(n) || {};
52
+ h.position = [a, l], h.index = s.length, s.push(new t.Token(r.slice(a, o), h));
53
+ }
54
+ a = o + 1;
55
+ }
56
+ } return s; }, t.tokenizer.separator = /[\s\-]+/;
57
+ t.Pipeline = function () { this._stack = []; }, t.Pipeline.registeredFunctions = Object.create(null), t.Pipeline.registerFunction = function (e, n) { n in this.registeredFunctions && t.utils.warn("Overwriting existing registered function: " + n), e.label = n, t.Pipeline.registeredFunctions[e.label] = e; }, t.Pipeline.warnIfFunctionNotRegistered = function (e) {
58
+ var n = e.label && e.label in this.registeredFunctions;
59
+ n || t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index.
60
+ `, e);
61
+ }, t.Pipeline.load = function (e) { var n = new t.Pipeline; return e.forEach(function (r) { var i = t.Pipeline.registeredFunctions[r]; if (i)
62
+ n.add(i);
63
+ else
64
+ throw new Error("Cannot load unregistered function: " + r); }), n; }, t.Pipeline.prototype.add = function () { var e = Array.prototype.slice.call(arguments); e.forEach(function (n) { t.Pipeline.warnIfFunctionNotRegistered(n), this._stack.push(n); }, this); }, t.Pipeline.prototype.after = function (e, n) { t.Pipeline.warnIfFunctionNotRegistered(n); var r = this._stack.indexOf(e); if (r == -1)
65
+ throw new Error("Cannot find existingFn"); r = r + 1, this._stack.splice(r, 0, n); }, t.Pipeline.prototype.before = function (e, n) { t.Pipeline.warnIfFunctionNotRegistered(n); var r = this._stack.indexOf(e); if (r == -1)
66
+ throw new Error("Cannot find existingFn"); this._stack.splice(r, 0, n); }, t.Pipeline.prototype.remove = function (e) { var n = this._stack.indexOf(e); n != -1 && this._stack.splice(n, 1); }, t.Pipeline.prototype.run = function (e) { for (var n = this._stack.length, r = 0; r < n; r++) {
67
+ for (var i = this._stack[r], s = [], o = 0; o < e.length; o++) {
68
+ var a = i(e[o], o, e);
69
+ if (!(a == null || a === ""))
70
+ if (Array.isArray(a))
71
+ for (var u = 0; u < a.length; u++)
72
+ s.push(a[u]);
73
+ else
74
+ s.push(a);
75
+ }
76
+ e = s;
77
+ } return e; }, t.Pipeline.prototype.runString = function (e, n) { var r = new t.Token(e, n); return this.run([r]).map(function (i) { return i.toString(); }); }, t.Pipeline.prototype.reset = function () { this._stack = []; }, t.Pipeline.prototype.toJSON = function () { return this._stack.map(function (e) { return t.Pipeline.warnIfFunctionNotRegistered(e), e.label; }); };
78
+ t.Vector = function (e) { this._magnitude = 0, this.elements = e || []; }, t.Vector.prototype.positionForIndex = function (e) { if (this.elements.length == 0)
79
+ return 0; for (var n = 0, r = this.elements.length / 2, i = r - n, s = Math.floor(i / 2), o = this.elements[s * 2]; i > 1 && (o < e && (n = s), o > e && (r = s), o != e);)
80
+ i = r - n, s = n + Math.floor(i / 2), o = this.elements[s * 2]; if (o == e || o > e)
81
+ return s * 2; if (o < e)
82
+ return (s + 1) * 2; }, t.Vector.prototype.insert = function (e, n) { this.upsert(e, n, function () { throw "duplicate index"; }); }, t.Vector.prototype.upsert = function (e, n, r) { this._magnitude = 0; var i = this.positionForIndex(e); this.elements[i] == e ? this.elements[i + 1] = r(this.elements[i + 1], n) : this.elements.splice(i, 0, e, n); }, t.Vector.prototype.magnitude = function () { if (this._magnitude)
83
+ return this._magnitude; for (var e = 0, n = this.elements.length, r = 1; r < n; r += 2) {
84
+ var i = this.elements[r];
85
+ e += i * i;
86
+ } return this._magnitude = Math.sqrt(e); }, t.Vector.prototype.dot = function (e) { for (var n = 0, r = this.elements, i = e.elements, s = r.length, o = i.length, a = 0, u = 0, l = 0, h = 0; l < s && h < o;)
87
+ a = r[l], u = i[h], a < u ? l += 2 : a > u ? h += 2 : a == u && (n += r[l + 1] * i[h + 1], l += 2, h += 2); return n; }, t.Vector.prototype.similarity = function (e) { return this.dot(e) / this.magnitude() || 0; }, t.Vector.prototype.toArray = function () { for (var e = new Array(this.elements.length / 2), n = 1, r = 0; n < this.elements.length; n += 2, r++)
88
+ e[r] = this.elements[n]; return e; }, t.Vector.prototype.toJSON = function () { return this.elements; };
89
+ t.stemmer = function () { var e = { ational: "ate", tional: "tion", enci: "ence", anci: "ance", izer: "ize", bli: "ble", alli: "al", entli: "ent", eli: "e", ousli: "ous", ization: "ize", ation: "ate", ator: "ate", alism: "al", iveness: "ive", fulness: "ful", ousness: "ous", aliti: "al", iviti: "ive", biliti: "ble", logi: "log" }, n = { icate: "ic", ative: "", alize: "al", iciti: "ic", ical: "ic", ful: "", ness: "" }, r = "[^aeiou]", i = "[aeiouy]", s = r + "[^aeiouy]*", o = i + "[aeiou]*", a = "^(" + s + ")?" + o + s, u = "^(" + s + ")?" + o + s + "(" + o + ")?$", l = "^(" + s + ")?" + o + s + o + s, h = "^(" + s + ")?" + i, m = new RegExp(a), v = new RegExp(l), b = new RegExp(u), y = new RegExp(h), E = /^(.+?)(ss|i)es$/, f = /^(.+?)([^s])s$/, p = /^(.+?)eed$/, w = /^(.+?)(ed|ing)$/, S = /.$/, I = /(at|bl|iz)$/, _ = new RegExp("([^aeiouylsz])\\1$"), z = new RegExp("^" + s + i + "[^aeiouwxy]$"), A = /^(.+?[^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 = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/, W = /^(.+?)(s|t)(ion)$/, P = /^(.+?)e$/, U = /ll$/, G = new RegExp("^" + s + i + "[^aeiouwxy]$"), N = function (c) { var g, C, T, d, x, O, D; if (c.length < 3)
90
+ return c; if (T = c.substr(0, 1), T == "y" && (c = T.toUpperCase() + c.substr(1)), d = E, x = f, d.test(c) ? c = c.replace(d, "$1$2") : x.test(c) && (c = c.replace(x, "$1$2")), d = p, x = w, d.test(c)) {
91
+ var L = d.exec(c);
92
+ d = m, d.test(L[1]) && (d = S, c = c.replace(d, ""));
93
+ }
94
+ else if (x.test(c)) {
95
+ var L = x.exec(c);
96
+ g = L[1], x = y, x.test(g) && (c = g, x = I, O = _, D = z, x.test(c) ? c = c + "e" : O.test(c) ? (d = S, c = c.replace(d, "")) : D.test(c) && (c = c + "e"));
97
+ } if (d = A, d.test(c)) {
98
+ var L = d.exec(c);
99
+ g = L[1], c = g + "i";
100
+ } if (d = q, d.test(c)) {
101
+ var L = d.exec(c);
102
+ g = L[1], C = L[2], d = m, d.test(g) && (c = g + e[C]);
103
+ } if (d = $, d.test(c)) {
104
+ var L = d.exec(c);
105
+ g = L[1], C = L[2], d = m, d.test(g) && (c = g + n[C]);
106
+ } if (d = V, x = W, d.test(c)) {
107
+ var L = d.exec(c);
108
+ g = L[1], d = v, d.test(g) && (c = g);
109
+ }
110
+ else if (x.test(c)) {
111
+ var L = x.exec(c);
112
+ g = L[1] + L[2], x = v, x.test(g) && (c = g);
113
+ } if (d = P, d.test(c)) {
114
+ var L = d.exec(c);
115
+ g = L[1], d = v, x = b, O = G, (d.test(g) || x.test(g) && !O.test(g)) && (c = g);
116
+ } return d = U, x = v, d.test(c) && x.test(c) && (d = S, c = c.replace(d, "")), T == "y" && (c = T.toLowerCase() + c.substr(1)), c; }; return function (M) { return M.update(N); }; }(), t.Pipeline.registerFunction(t.stemmer, "stemmer");
117
+ t.generateStopWordFilter = function (e) { var n = e.reduce(function (r, i) { return r[i] = i, r; }, {}); return function (r) { if (r && n[r.toString()] !== r.toString())
118
+ return r; }; }, t.stopWordFilter = t.generateStopWordFilter(["a", "able", "about", "across", "after", "all", "almost", "also", "am", "among", "an", "and", "any", "are", "as", "at", "be", "because", "been", "but", "by", "can", "cannot", "could", "dear", "did", "do", "does", "either", "else", "ever", "every", "for", "from", "get", "got", "had", "has", "have", "he", "her", "hers", "him", "his", "how", "however", "i", "if", "in", "into", "is", "it", "its", "just", "least", "let", "like", "likely", "may", "me", "might", "most", "must", "my", "neither", "no", "nor", "not", "of", "off", "often", "on", "only", "or", "other", "our", "own", "rather", "said", "say", "says", "she", "should", "since", "so", "some", "than", "that", "the", "their", "them", "then", "there", "these", "they", "this", "tis", "to", "too", "twas", "us", "wants", "was", "we", "were", "what", "when", "where", "which", "while", "who", "whom", "why", "will", "with", "would", "yet", "you", "your"]), t.Pipeline.registerFunction(t.stopWordFilter, "stopWordFilter");
119
+ t.trimmer = function (e) { return e.update(function (n) { return n.replace(/^\W+/, "").replace(/\W+$/, ""); }); }, t.Pipeline.registerFunction(t.trimmer, "trimmer");
120
+ t.TokenSet = function () { this.final = !1, this.edges = {}, this.id = t.TokenSet._nextId, t.TokenSet._nextId += 1; }, t.TokenSet._nextId = 1, t.TokenSet.fromArray = function (e) { for (var n = new t.TokenSet.Builder, r = 0, i = e.length; r < i; r++)
121
+ n.insert(e[r]); return n.finish(), n.root; }, t.TokenSet.fromClause = function (e) { return "editDistance" in e ? t.TokenSet.fromFuzzyString(e.term, e.editDistance) : t.TokenSet.fromString(e.term); }, t.TokenSet.fromFuzzyString = function (e, n) { for (var r = new t.TokenSet, i = [{ node: r, editsRemaining: n, str: e }]; i.length;) {
122
+ var s = i.pop();
123
+ if (s.str.length > 0) {
124
+ var o = s.str.charAt(0), a;
125
+ o in s.node.edges ? a = s.node.edges[o] : (a = new t.TokenSet, s.node.edges[o] = a), s.str.length == 1 && (a.final = !0), i.push({ node: a, editsRemaining: s.editsRemaining, str: s.str.slice(1) });
126
+ }
127
+ if (s.editsRemaining != 0) {
128
+ if ("*" in s.node.edges)
129
+ var u = s.node.edges["*"];
130
+ else {
131
+ var u = new t.TokenSet;
132
+ s.node.edges["*"] = u;
133
+ }
134
+ if (s.str.length == 0 && (u.final = !0), i.push({ node: u, editsRemaining: s.editsRemaining - 1, str: s.str }), s.str.length > 1 && i.push({ node: s.node, editsRemaining: s.editsRemaining - 1, str: s.str.slice(1) }), s.str.length == 1 && (s.node.final = !0), s.str.length >= 1) {
135
+ if ("*" in s.node.edges)
136
+ var l = s.node.edges["*"];
137
+ else {
138
+ var l = new t.TokenSet;
139
+ s.node.edges["*"] = l;
140
+ }
141
+ s.str.length == 1 && (l.final = !0), i.push({ node: l, editsRemaining: s.editsRemaining - 1, str: s.str.slice(1) });
142
+ }
143
+ if (s.str.length > 1) {
144
+ var h = s.str.charAt(0), m = s.str.charAt(1), v;
145
+ m in s.node.edges ? v = s.node.edges[m] : (v = new t.TokenSet, s.node.edges[m] = v), s.str.length == 1 && (v.final = !0), i.push({ node: v, editsRemaining: s.editsRemaining - 1, str: h + s.str.slice(2) });
146
+ }
147
+ }
148
+ } return r; }, t.TokenSet.fromString = function (e) { for (var n = new t.TokenSet, r = n, i = 0, s = e.length; i < s; i++) {
149
+ var o = e[i], a = i == s - 1;
150
+ if (o == "*")
151
+ n.edges[o] = n, n.final = a;
152
+ else {
153
+ var u = new t.TokenSet;
154
+ u.final = a, n.edges[o] = u, n = u;
155
+ }
156
+ } return r; }, t.TokenSet.prototype.toArray = function () { for (var e = [], n = [{ prefix: "", node: this }]; n.length;) {
157
+ var r = n.pop(), i = Object.keys(r.node.edges), s = i.length;
158
+ r.node.final && (r.prefix.charAt(0), e.push(r.prefix));
159
+ for (var o = 0; o < s; o++) {
160
+ var a = i[o];
161
+ n.push({ prefix: r.prefix.concat(a), node: r.node.edges[a] });
162
+ }
163
+ } return e; }, t.TokenSet.prototype.toString = function () { if (this._str)
164
+ return this._str; for (var e = this.final ? "1" : "0", n = Object.keys(this.edges).sort(), r = n.length, i = 0; i < r; i++) {
165
+ var s = n[i], o = this.edges[s];
166
+ e = e + s + o.id;
167
+ } return e; }, t.TokenSet.prototype.intersect = function (e) { for (var n = new t.TokenSet, r = void 0, i = [{ qNode: e, output: n, node: this }]; i.length;) {
168
+ r = i.pop();
169
+ for (var s = Object.keys(r.qNode.edges), o = s.length, a = Object.keys(r.node.edges), u = a.length, l = 0; l < o; l++)
170
+ for (var h = s[l], m = 0; m < u; m++) {
171
+ var v = a[m];
172
+ if (v == h || h == "*") {
173
+ var b = r.node.edges[v], y = r.qNode.edges[h], E = b.final && y.final, f = void 0;
174
+ v in r.output.edges ? (f = r.output.edges[v], f.final = f.final || E) : (f = new t.TokenSet, f.final = E, r.output.edges[v] = f), i.push({ qNode: y, output: f, node: b });
175
+ }
176
+ }
177
+ } return n; }, t.TokenSet.Builder = function () { this.previousWord = "", this.root = new t.TokenSet, this.uncheckedNodes = [], this.minimizedNodes = {}; }, t.TokenSet.Builder.prototype.insert = function (e) { var n, r = 0; if (e < this.previousWord)
178
+ throw new Error("Out of order word insertion"); for (var i = 0; i < e.length && i < this.previousWord.length && e[i] == this.previousWord[i]; i++)
179
+ r++; this.minimize(r), this.uncheckedNodes.length == 0 ? n = this.root : n = this.uncheckedNodes[this.uncheckedNodes.length - 1].child; for (var i = r; i < e.length; i++) {
180
+ var s = new t.TokenSet, o = e[i];
181
+ n.edges[o] = s, this.uncheckedNodes.push({ parent: n, char: o, child: s }), n = s;
182
+ } n.final = !0, this.previousWord = e; }, t.TokenSet.Builder.prototype.finish = function () { this.minimize(0); }, t.TokenSet.Builder.prototype.minimize = function (e) { for (var n = this.uncheckedNodes.length - 1; n >= e; n--) {
183
+ var r = this.uncheckedNodes[n], i = r.child.toString();
184
+ i in this.minimizedNodes ? r.parent.edges[r.char] = this.minimizedNodes[i] : (r.child._str = i, this.minimizedNodes[i] = r.child), this.uncheckedNodes.pop();
185
+ } };
186
+ t.Index = function (e) { this.invertedIndex = e.invertedIndex, this.fieldVectors = e.fieldVectors, this.tokenSet = e.tokenSet, this.fields = e.fields, this.pipeline = e.pipeline; }, t.Index.prototype.search = function (e) { return this.query(function (n) { var r = new t.QueryParser(e, n); r.parse(); }); }, t.Index.prototype.query = function (e) { for (var n = new t.Query(this.fields), r = Object.create(null), i = Object.create(null), s = Object.create(null), o = Object.create(null), a = Object.create(null), u = 0; u < this.fields.length; u++)
187
+ i[this.fields[u]] = new t.Vector; e.call(n, n); for (var u = 0; u < n.clauses.length; u++) {
188
+ var l = n.clauses[u], h = null, m = t.Set.empty;
189
+ l.usePipeline ? h = this.pipeline.runString(l.term, { fields: l.fields }) : h = [l.term];
190
+ for (var v = 0; v < h.length; v++) {
191
+ var b = h[v];
192
+ l.term = b;
193
+ var y = t.TokenSet.fromClause(l), E = this.tokenSet.intersect(y).toArray();
194
+ if (E.length === 0 && l.presence === t.Query.presence.REQUIRED) {
195
+ for (var f = 0; f < l.fields.length; f++) {
196
+ var p = l.fields[f];
197
+ o[p] = t.Set.empty;
198
+ }
199
+ break;
200
+ }
201
+ for (var w = 0; w < E.length; w++)
202
+ for (var S = E[w], I = this.invertedIndex[S], _ = I._index, f = 0; f < l.fields.length; f++) {
203
+ var p = l.fields[f], z = I[p], A = Object.keys(z), q = S + "/" + p, $ = new t.Set(A);
204
+ if (l.presence == t.Query.presence.REQUIRED && (m = m.union($), o[p] === void 0 && (o[p] = t.Set.complete)), l.presence == t.Query.presence.PROHIBITED) {
205
+ a[p] === void 0 && (a[p] = t.Set.empty), a[p] = a[p].union($);
206
+ continue;
207
+ }
208
+ if (i[p].upsert(_, l.boost, function (ke, Ie) { return ke + Ie; }), !s[q]) {
209
+ for (var V = 0; V < A.length; V++) {
210
+ var W = A[V], P = new t.FieldRef(W, p), U = z[W], G;
211
+ (G = r[P]) === void 0 ? r[P] = new t.MatchData(S, p, U) : G.add(S, p, U);
212
+ }
213
+ s[q] = !0;
214
+ }
215
+ }
216
+ }
217
+ if (l.presence === t.Query.presence.REQUIRED)
218
+ for (var f = 0; f < l.fields.length; f++) {
219
+ var p = l.fields[f];
220
+ o[p] = o[p].intersect(m);
221
+ }
222
+ } for (var N = t.Set.complete, M = t.Set.empty, u = 0; u < this.fields.length; u++) {
223
+ var p = this.fields[u];
224
+ o[p] && (N = N.intersect(o[p])), a[p] && (M = M.union(a[p]));
225
+ } var c = Object.keys(r), g = [], C = Object.create(null); if (n.isNegated()) {
226
+ c = Object.keys(this.fieldVectors);
227
+ for (var u = 0; u < c.length; u++) {
228
+ var P = c[u], T = t.FieldRef.fromString(P);
229
+ r[P] = new t.MatchData;
230
+ }
231
+ } for (var u = 0; u < c.length; u++) {
232
+ var T = t.FieldRef.fromString(c[u]), d = T.docRef;
233
+ if (!!N.contains(d) && !M.contains(d)) {
234
+ var x = this.fieldVectors[T], O = i[T.fieldName].similarity(x), D;
235
+ if ((D = C[d]) !== void 0)
236
+ D.score += O, D.matchData.combine(r[T]);
237
+ else {
238
+ var L = { ref: d, score: O, matchData: r[T] };
239
+ C[d] = L, g.push(L);
240
+ }
241
+ }
242
+ } return g.sort(function (we, Te) { return Te.score - we.score; }); }, t.Index.prototype.toJSON = function () { var e = Object.keys(this.invertedIndex).sort().map(function (r) { return [r, this.invertedIndex[r]]; }, this), n = Object.keys(this.fieldVectors).map(function (r) { return [r, this.fieldVectors[r].toJSON()]; }, this); return { version: t.version, fields: this.fields, fieldVectors: n, invertedIndex: e, pipeline: this.pipeline.toJSON() }; }, t.Index.load = function (e) { var n = {}, r = {}, i = e.fieldVectors, s = Object.create(null), o = e.invertedIndex, a = new t.TokenSet.Builder, u = t.Pipeline.load(e.pipeline); e.version != t.version && t.utils.warn("Version mismatch when loading serialised index. Current version of lunr '" + t.version + "' does not match serialized index '" + e.version + "'"); for (var l = 0; l < i.length; l++) {
243
+ var h = i[l], m = h[0], v = h[1];
244
+ r[m] = new t.Vector(v);
245
+ } for (var l = 0; l < o.length; l++) {
246
+ var h = o[l], b = h[0], y = h[1];
247
+ a.insert(b), s[b] = y;
248
+ } return a.finish(), n.fields = e.fields, n.fieldVectors = r, n.invertedIndex = s, n.tokenSet = a.root, n.pipeline = u, new t.Index(n); };
249
+ t.Builder = function () { this._ref = "id", this._fields = Object.create(null), this._documents = Object.create(null), this.invertedIndex = Object.create(null), this.fieldTermFrequencies = {}, this.fieldLengths = {}, this.tokenizer = t.tokenizer, this.pipeline = new t.Pipeline, this.searchPipeline = new t.Pipeline, this.documentCount = 0, this._b = .75, this._k1 = 1.2, this.termIndex = 0, this.metadataWhitelist = []; }, t.Builder.prototype.ref = function (e) { this._ref = e; }, t.Builder.prototype.field = function (e, n) { if (/\//.test(e))
250
+ throw new RangeError("Field '" + e + "' contains illegal character '/'"); this._fields[e] = n || {}; }, t.Builder.prototype.b = function (e) { e < 0 ? this._b = 0 : e > 1 ? this._b = 1 : this._b = e; }, t.Builder.prototype.k1 = function (e) { this._k1 = e; }, t.Builder.prototype.add = function (e, n) { var r = e[this._ref], i = Object.keys(this._fields); this._documents[r] = n || {}, this.documentCount += 1; for (var s = 0; s < i.length; s++) {
251
+ var o = i[s], a = this._fields[o].extractor, u = a ? a(e) : e[o], l = this.tokenizer(u, { fields: [o] }), h = this.pipeline.run(l), m = new t.FieldRef(r, o), v = Object.create(null);
252
+ this.fieldTermFrequencies[m] = v, this.fieldLengths[m] = 0, this.fieldLengths[m] += h.length;
253
+ for (var b = 0; b < h.length; b++) {
254
+ var y = h[b];
255
+ if (v[y] == null && (v[y] = 0), v[y] += 1, this.invertedIndex[y] == null) {
256
+ var E = Object.create(null);
257
+ E._index = this.termIndex, this.termIndex += 1;
258
+ for (var f = 0; f < i.length; f++)
259
+ E[i[f]] = Object.create(null);
260
+ this.invertedIndex[y] = E;
261
+ }
262
+ this.invertedIndex[y][o][r] == null && (this.invertedIndex[y][o][r] = Object.create(null));
263
+ for (var p = 0; p < this.metadataWhitelist.length; p++) {
264
+ var w = this.metadataWhitelist[p], S = y.metadata[w];
265
+ this.invertedIndex[y][o][r][w] == null && (this.invertedIndex[y][o][r][w] = []), this.invertedIndex[y][o][r][w].push(S);
266
+ }
267
+ }
268
+ } }, t.Builder.prototype.calculateAverageFieldLengths = function () { for (var e = Object.keys(this.fieldLengths), n = e.length, r = {}, i = {}, s = 0; s < n; s++) {
269
+ var o = t.FieldRef.fromString(e[s]), a = o.fieldName;
270
+ i[a] || (i[a] = 0), i[a] += 1, r[a] || (r[a] = 0), r[a] += this.fieldLengths[o];
271
+ } for (var u = Object.keys(this._fields), s = 0; s < u.length; s++) {
272
+ var l = u[s];
273
+ r[l] = r[l] / i[l];
274
+ } this.averageFieldLength = r; }, t.Builder.prototype.createFieldVectors = function () { for (var e = {}, n = Object.keys(this.fieldTermFrequencies), r = n.length, i = Object.create(null), s = 0; s < r; s++) {
275
+ for (var o = t.FieldRef.fromString(n[s]), a = o.fieldName, u = this.fieldLengths[o], l = new t.Vector, h = this.fieldTermFrequencies[o], m = Object.keys(h), v = m.length, b = this._fields[a].boost || 1, y = this._documents[o.docRef].boost || 1, E = 0; E < v; E++) {
276
+ var f = m[E], p = h[f], w = this.invertedIndex[f]._index, S, I, _;
277
+ i[f] === void 0 ? (S = t.idf(this.invertedIndex[f], this.documentCount), i[f] = S) : S = i[f], I = S * ((this._k1 + 1) * p) / (this._k1 * (1 - this._b + this._b * (u / this.averageFieldLength[a])) + p), I *= b, I *= y, _ = Math.round(I * 1e3) / 1e3, l.insert(w, _);
278
+ }
279
+ e[o] = l;
280
+ } this.fieldVectors = e; }, t.Builder.prototype.createTokenSet = function () { this.tokenSet = t.TokenSet.fromArray(Object.keys(this.invertedIndex).sort()); }, t.Builder.prototype.build = function () { return this.calculateAverageFieldLengths(), this.createFieldVectors(), this.createTokenSet(), new t.Index({ invertedIndex: this.invertedIndex, fieldVectors: this.fieldVectors, tokenSet: this.tokenSet, fields: Object.keys(this._fields), pipeline: this.searchPipeline }); }, t.Builder.prototype.use = function (e) { var n = Array.prototype.slice.call(arguments, 1); n.unshift(this), e.apply(this, n); }, t.MatchData = function (e, n, r) { for (var i = Object.create(null), s = Object.keys(r || {}), o = 0; o < s.length; o++) {
281
+ var a = s[o];
282
+ i[a] = r[a].slice();
283
+ } this.metadata = Object.create(null), e !== void 0 && (this.metadata[e] = Object.create(null), this.metadata[e][n] = i); }, t.MatchData.prototype.combine = function (e) { for (var n = Object.keys(e.metadata), r = 0; r < n.length; r++) {
284
+ var i = n[r], s = Object.keys(e.metadata[i]);
285
+ this.metadata[i] == null && (this.metadata[i] = Object.create(null));
286
+ for (var o = 0; o < s.length; o++) {
287
+ var a = s[o], u = Object.keys(e.metadata[i][a]);
288
+ this.metadata[i][a] == null && (this.metadata[i][a] = Object.create(null));
289
+ for (var l = 0; l < u.length; l++) {
290
+ var h = u[l];
291
+ this.metadata[i][a][h] == null ? this.metadata[i][a][h] = e.metadata[i][a][h] : this.metadata[i][a][h] = this.metadata[i][a][h].concat(e.metadata[i][a][h]);
292
+ }
293
+ }
294
+ } }, t.MatchData.prototype.add = function (e, n, r) { if (!(e in this.metadata)) {
295
+ this.metadata[e] = Object.create(null), this.metadata[e][n] = r;
296
+ return;
297
+ } if (!(n in this.metadata[e])) {
298
+ this.metadata[e][n] = r;
299
+ return;
300
+ } for (var i = Object.keys(r), s = 0; s < i.length; s++) {
301
+ var o = i[s];
302
+ o in this.metadata[e][n] ? this.metadata[e][n][o] = this.metadata[e][n][o].concat(r[o]) : this.metadata[e][n][o] = r[o];
303
+ } }, t.Query = function (e) { this.clauses = [], this.allFields = e; }, t.Query.wildcard = new String("*"), t.Query.wildcard.NONE = 0, t.Query.wildcard.LEADING = 1, t.Query.wildcard.TRAILING = 2, t.Query.presence = { OPTIONAL: 1, REQUIRED: 2, PROHIBITED: 3 }, t.Query.prototype.clause = function (e) { return "fields" in e || (e.fields = this.allFields), "boost" in e || (e.boost = 1), "usePipeline" in e || (e.usePipeline = !0), "wildcard" in e || (e.wildcard = t.Query.wildcard.NONE), e.wildcard & t.Query.wildcard.LEADING && e.term.charAt(0) != t.Query.wildcard && (e.term = "*" + e.term), e.wildcard & t.Query.wildcard.TRAILING && e.term.slice(-1) != t.Query.wildcard && (e.term = "" + e.term + "*"), "presence" in e || (e.presence = t.Query.presence.OPTIONAL), this.clauses.push(e), this; }, t.Query.prototype.isNegated = function () { for (var e = 0; e < this.clauses.length; e++)
304
+ if (this.clauses[e].presence != t.Query.presence.PROHIBITED)
305
+ return !1; return !0; }, t.Query.prototype.term = function (e, n) { if (Array.isArray(e))
306
+ return e.forEach(function (i) { this.term(i, t.utils.clone(n)); }, this), this; var r = n || {}; return r.term = e.toString(), this.clause(r), this; }, t.QueryParseError = function (e, n, r) { this.name = "QueryParseError", this.message = e, this.start = n, this.end = r; }, t.QueryParseError.prototype = new Error, t.QueryLexer = function (e) { this.lexemes = [], this.str = e, this.length = e.length, this.pos = 0, this.start = 0, this.escapeCharPositions = []; }, t.QueryLexer.prototype.run = function () { for (var e = t.QueryLexer.lexText; e;)
307
+ e = e(this); }, t.QueryLexer.prototype.sliceString = function () { for (var e = [], n = this.start, r = this.pos, i = 0; i < this.escapeCharPositions.length; i++)
308
+ r = this.escapeCharPositions[i], e.push(this.str.slice(n, r)), n = r + 1; return e.push(this.str.slice(n, this.pos)), this.escapeCharPositions.length = 0, e.join(""); }, t.QueryLexer.prototype.emit = function (e) { this.lexemes.push({ type: e, str: this.sliceString(), start: this.start, end: this.pos }), this.start = this.pos; }, t.QueryLexer.prototype.escapeCharacter = function () { this.escapeCharPositions.push(this.pos - 1), this.pos += 1; }, t.QueryLexer.prototype.next = function () { if (this.pos >= this.length)
309
+ return t.QueryLexer.EOS; var e = this.str.charAt(this.pos); return this.pos += 1, e; }, t.QueryLexer.prototype.width = function () { return this.pos - this.start; }, t.QueryLexer.prototype.ignore = function () { this.start == this.pos && (this.pos += 1), this.start = this.pos; }, t.QueryLexer.prototype.backup = function () { this.pos -= 1; }, t.QueryLexer.prototype.acceptDigitRun = function () { var e, n; do
310
+ e = this.next(), n = e.charCodeAt(0);
311
+ while (n > 47 && n < 58); e != t.QueryLexer.EOS && this.backup(); }, t.QueryLexer.prototype.more = function () { return this.pos < this.length; }, t.QueryLexer.EOS = "EOS", t.QueryLexer.FIELD = "FIELD", t.QueryLexer.TERM = "TERM", t.QueryLexer.EDIT_DISTANCE = "EDIT_DISTANCE", t.QueryLexer.BOOST = "BOOST", t.QueryLexer.PRESENCE = "PRESENCE", t.QueryLexer.lexField = function (e) { return e.backup(), e.emit(t.QueryLexer.FIELD), e.ignore(), t.QueryLexer.lexText; }, t.QueryLexer.lexTerm = function (e) { if (e.width() > 1 && (e.backup(), e.emit(t.QueryLexer.TERM)), e.ignore(), e.more())
312
+ return t.QueryLexer.lexText; }, t.QueryLexer.lexEditDistance = function (e) { return e.ignore(), e.acceptDigitRun(), e.emit(t.QueryLexer.EDIT_DISTANCE), t.QueryLexer.lexText; }, t.QueryLexer.lexBoost = function (e) { return e.ignore(), e.acceptDigitRun(), e.emit(t.QueryLexer.BOOST), t.QueryLexer.lexText; }, t.QueryLexer.lexEOS = function (e) { e.width() > 0 && e.emit(t.QueryLexer.TERM); }, t.QueryLexer.termSeparator = t.tokenizer.separator, t.QueryLexer.lexText = function (e) { for (;;) {
313
+ var n = e.next();
314
+ if (n == t.QueryLexer.EOS)
315
+ return t.QueryLexer.lexEOS;
316
+ if (n.charCodeAt(0) == 92) {
317
+ e.escapeCharacter();
318
+ continue;
319
+ }
320
+ if (n == ":")
321
+ return t.QueryLexer.lexField;
322
+ if (n == "~")
323
+ return e.backup(), e.width() > 0 && e.emit(t.QueryLexer.TERM), t.QueryLexer.lexEditDistance;
324
+ if (n == "^")
325
+ return e.backup(), e.width() > 0 && e.emit(t.QueryLexer.TERM), t.QueryLexer.lexBoost;
326
+ if (n == "+" && e.width() === 1 || n == "-" && e.width() === 1)
327
+ return e.emit(t.QueryLexer.PRESENCE), t.QueryLexer.lexText;
328
+ if (n.match(t.QueryLexer.termSeparator))
329
+ return t.QueryLexer.lexTerm;
330
+ } }, t.QueryParser = function (e, n) { this.lexer = new t.QueryLexer(e), this.query = n, this.currentClause = {}, this.lexemeIdx = 0; }, t.QueryParser.prototype.parse = function () { this.lexer.run(), this.lexemes = this.lexer.lexemes; for (var e = t.QueryParser.parseClause; e;)
331
+ e = e(this); return this.query; }, t.QueryParser.prototype.peekLexeme = function () { return this.lexemes[this.lexemeIdx]; }, t.QueryParser.prototype.consumeLexeme = function () { var e = this.peekLexeme(); return this.lexemeIdx += 1, e; }, t.QueryParser.prototype.nextClause = function () { var e = this.currentClause; this.query.clause(e), this.currentClause = {}; }, t.QueryParser.parseClause = function (e) { var n = e.peekLexeme(); if (n != null)
332
+ switch (n.type) {
333
+ case t.QueryLexer.PRESENCE: return t.QueryParser.parsePresence;
334
+ case t.QueryLexer.FIELD: return t.QueryParser.parseField;
335
+ case t.QueryLexer.TERM: return t.QueryParser.parseTerm;
336
+ default:
337
+ var r = "expected either a field or a term, found " + n.type;
338
+ throw n.str.length >= 1 && (r += " with value '" + n.str + "'"), new t.QueryParseError(r, n.start, n.end);
339
+ } }, t.QueryParser.parsePresence = function (e) { var n = e.consumeLexeme(); if (n != null) {
340
+ switch (n.str) {
341
+ case "-":
342
+ e.currentClause.presence = t.Query.presence.PROHIBITED;
343
+ break;
344
+ case "+":
345
+ e.currentClause.presence = t.Query.presence.REQUIRED;
346
+ break;
347
+ default:
348
+ var r = "unrecognised presence operator'" + n.str + "'";
349
+ throw new t.QueryParseError(r, n.start, n.end);
350
+ }
351
+ var i = e.peekLexeme();
352
+ if (i == null) {
353
+ var r = "expecting term or field, found nothing";
354
+ throw new t.QueryParseError(r, n.start, n.end);
355
+ }
356
+ switch (i.type) {
357
+ case t.QueryLexer.FIELD: return t.QueryParser.parseField;
358
+ case t.QueryLexer.TERM: return t.QueryParser.parseTerm;
359
+ default:
360
+ var r = "expecting term or field, found '" + i.type + "'";
361
+ throw new t.QueryParseError(r, i.start, i.end);
362
+ }
363
+ } }, t.QueryParser.parseField = function (e) { var n = e.consumeLexeme(); if (n != null) {
364
+ if (e.query.allFields.indexOf(n.str) == -1) {
365
+ var r = e.query.allFields.map(function (o) { return "'" + o + "'"; }).join(", "), i = "unrecognised field '" + n.str + "', possible fields: " + r;
366
+ throw new t.QueryParseError(i, n.start, n.end);
367
+ }
368
+ e.currentClause.fields = [n.str];
369
+ var s = e.peekLexeme();
370
+ if (s == null) {
371
+ var i = "expecting term, found nothing";
372
+ throw new t.QueryParseError(i, n.start, n.end);
373
+ }
374
+ switch (s.type) {
375
+ case t.QueryLexer.TERM: return t.QueryParser.parseTerm;
376
+ default:
377
+ var i = "expecting term, found '" + s.type + "'";
378
+ throw new t.QueryParseError(i, s.start, s.end);
379
+ }
380
+ } }, t.QueryParser.parseTerm = function (e) { var n = e.consumeLexeme(); if (n != null) {
381
+ e.currentClause.term = n.str.toLowerCase(), n.str.indexOf("*") != -1 && (e.currentClause.usePipeline = !1);
382
+ var r = e.peekLexeme();
383
+ if (r == null) {
384
+ e.nextClause();
385
+ return;
386
+ }
387
+ switch (r.type) {
388
+ case t.QueryLexer.TERM: return e.nextClause(), t.QueryParser.parseTerm;
389
+ case t.QueryLexer.FIELD: return e.nextClause(), t.QueryParser.parseField;
390
+ case t.QueryLexer.EDIT_DISTANCE: return t.QueryParser.parseEditDistance;
391
+ case t.QueryLexer.BOOST: return t.QueryParser.parseBoost;
392
+ case t.QueryLexer.PRESENCE: return e.nextClause(), t.QueryParser.parsePresence;
393
+ default:
394
+ var i = "Unexpected lexeme type '" + r.type + "'";
395
+ throw new t.QueryParseError(i, r.start, r.end);
396
+ }
397
+ } }, t.QueryParser.parseEditDistance = function (e) { var n = e.consumeLexeme(); if (n != null) {
398
+ var r = parseInt(n.str, 10);
399
+ if (isNaN(r)) {
400
+ var i = "edit distance must be numeric";
401
+ throw new t.QueryParseError(i, n.start, n.end);
402
+ }
403
+ e.currentClause.editDistance = r;
404
+ var s = e.peekLexeme();
405
+ if (s == null) {
406
+ e.nextClause();
407
+ return;
408
+ }
409
+ switch (s.type) {
410
+ case t.QueryLexer.TERM: return e.nextClause(), t.QueryParser.parseTerm;
411
+ case t.QueryLexer.FIELD: return e.nextClause(), t.QueryParser.parseField;
412
+ case t.QueryLexer.EDIT_DISTANCE: return t.QueryParser.parseEditDistance;
413
+ case t.QueryLexer.BOOST: return t.QueryParser.parseBoost;
414
+ case t.QueryLexer.PRESENCE: return e.nextClause(), t.QueryParser.parsePresence;
415
+ default:
416
+ var i = "Unexpected lexeme type '" + s.type + "'";
417
+ throw new t.QueryParseError(i, s.start, s.end);
418
+ }
419
+ } }, t.QueryParser.parseBoost = function (e) { var n = e.consumeLexeme(); if (n != null) {
420
+ var r = parseInt(n.str, 10);
421
+ if (isNaN(r)) {
422
+ var i = "boost must be numeric";
423
+ throw new t.QueryParseError(i, n.start, n.end);
424
+ }
425
+ e.currentClause.boost = r;
426
+ var s = e.peekLexeme();
427
+ if (s == null) {
428
+ e.nextClause();
429
+ return;
430
+ }
431
+ switch (s.type) {
432
+ case t.QueryLexer.TERM: return e.nextClause(), t.QueryParser.parseTerm;
433
+ case t.QueryLexer.FIELD: return e.nextClause(), t.QueryParser.parseField;
434
+ case t.QueryLexer.EDIT_DISTANCE: return t.QueryParser.parseEditDistance;
435
+ case t.QueryLexer.BOOST: return t.QueryParser.parseBoost;
436
+ case t.QueryLexer.PRESENCE: return e.nextClause(), t.QueryParser.parsePresence;
437
+ default:
438
+ var i = "Unexpected lexeme type '" + s.type + "'";
439
+ throw new t.QueryParseError(i, s.start, s.end);
440
+ }
441
+ } }, function (e, n) { typeof define == "function" && define.amd ? define(n) : typeof ce == "object" ? he.exports = n() : e.lunr = n(); }(this, function () { return t; });
442
+ })();
443
+ });
444
+ var le = [];
445
+ function j(t, e) { le.push({ selector: e, constructor: t }); }
446
+ var Y = class {
447
+ constructor() { this.createComponents(document.body); }
448
+ createComponents(e) { le.forEach(n => { e.querySelectorAll(n.selector).forEach(r => { r.dataset.hasInstance || (new n.constructor({ el: r }), r.dataset.hasInstance = String(!0)); }); }); }
449
+ };
450
+ var k = class {
451
+ constructor(e) { this.el = e.el; }
452
+ };
453
+ var J = class {
454
+ constructor() { this.listeners = {}; }
455
+ addEventListener(e, n) { e in this.listeners || (this.listeners[e] = []), this.listeners[e].push(n); }
456
+ removeEventListener(e, n) { if (!(e in this.listeners))
457
+ return; let r = this.listeners[e]; for (let i = 0, s = r.length; i < s; i++)
458
+ if (r[i] === n) {
459
+ r.splice(i, 1);
460
+ return;
461
+ } }
462
+ dispatchEvent(e) { if (!(e.type in this.listeners))
463
+ return !0; let n = this.listeners[e.type].slice(); for (let r = 0, i = n.length; r < i; r++)
464
+ n[r].call(this, e); return !e.defaultPrevented; }
465
+ };
466
+ var ne = (t, e = 100) => { let n = Date.now(); return (...r) => { n + e - Date.now() < 0 && (t(...r), n = Date.now()); }; };
467
+ var re = class extends J {
468
+ constructor() { super(); this.scrollTop = 0; this.lastY = 0; this.width = 0; this.height = 0; this.showToolbar = !0; this.toolbar = document.querySelector(".tsd-page-toolbar"), this.navigation = document.querySelector(".col-menu"), window.addEventListener("scroll", ne(() => this.onScroll(), 10)), window.addEventListener("resize", ne(() => this.onResize(), 10)), this.searchInput = document.querySelector("#tsd-search input"), this.searchInput && this.searchInput.addEventListener("focus", () => { this.hideShowToolbar(); }), this.onResize(), this.onScroll(); }
469
+ triggerResize() { let n = new CustomEvent("resize", { detail: { width: this.width, height: this.height } }); this.dispatchEvent(n); }
470
+ onResize() { this.width = window.innerWidth || 0, this.height = window.innerHeight || 0; let n = new CustomEvent("resize", { detail: { width: this.width, height: this.height } }); this.dispatchEvent(n); }
471
+ onScroll() { this.scrollTop = window.scrollY || 0; let n = new CustomEvent("scroll", { detail: { scrollTop: this.scrollTop } }); this.dispatchEvent(n), this.hideShowToolbar(); }
472
+ hideShowToolbar() { var _a; let n = this.showToolbar; this.showToolbar = this.lastY >= this.scrollTop || this.scrollTop <= 0 || !!this.searchInput && this.searchInput === document.activeElement, n !== this.showToolbar && (this.toolbar.classList.toggle("tsd-page-toolbar--hide"), (_a = this.navigation) === null || _a === void 0 ? void 0 : _a.classList.toggle("col-menu--hide")), this.lastY = this.scrollTop; }
473
+ }, R = re;
474
+ R.instance = new re;
475
+ var X = class extends k {
476
+ constructor(n) { super(n); this.anchors = []; this.index = -1; R.instance.addEventListener("resize", () => this.onResize()), R.instance.addEventListener("scroll", r => this.onScroll(r)), this.createAnchors(); }
477
+ createAnchors() { let n = window.location.href; n.indexOf("#") != -1 && (n = n.substring(0, n.indexOf("#"))), this.el.querySelectorAll("a").forEach(r => { let i = r.href; if (i.indexOf("#") == -1 || i.substring(0, n.length) != n)
478
+ return; let s = i.substring(i.indexOf("#") + 1), o = document.querySelector("a.tsd-anchor[name=" + s + "]"), a = r.parentNode; !o || !a || this.anchors.push({ link: a, anchor: o, position: 0 }); }), this.onResize(); }
479
+ onResize() { let n; for (let i = 0, s = this.anchors.length; i < s; i++) {
480
+ n = this.anchors[i];
481
+ let o = n.anchor.getBoundingClientRect();
482
+ n.position = o.top + document.body.scrollTop;
483
+ } this.anchors.sort((i, s) => i.position - s.position); let r = new CustomEvent("scroll", { detail: { scrollTop: R.instance.scrollTop } }); this.onScroll(r); }
484
+ onScroll(n) { let r = n.detail.scrollTop + 5, i = this.anchors, s = i.length - 1, o = this.index; for (; o > -1 && i[o].position > r;)
485
+ o -= 1; for (; o < s && i[o + 1].position < r;)
486
+ o += 1; this.index != o && (this.index > -1 && this.anchors[this.index].link.classList.remove("focus"), this.index = o, this.index > -1 && this.anchors[this.index].link.classList.add("focus")); }
487
+ };
488
+ var ue = (t, e = 100) => { let n; return () => { clearTimeout(n), n = setTimeout(() => t(), e); }; };
489
+ var me = De(de());
490
+ function ve() { let t = document.getElementById("tsd-search"); if (!t)
491
+ return; let e = document.getElementById("search-script"); t.classList.add("loading"), e && (e.addEventListener("error", () => { t.classList.remove("loading"), t.classList.add("failure"); }), e.addEventListener("load", () => { t.classList.remove("loading"), t.classList.add("ready"); }), window.searchData && t.classList.remove("loading")); let n = document.querySelector("#tsd-search input"), r = document.querySelector("#tsd-search .results"); if (!n || !r)
492
+ throw new Error("The input field or the result list wrapper was not found"); let i = !1; r.addEventListener("mousedown", () => i = !0), r.addEventListener("mouseup", () => { i = !1, t.classList.remove("has-focus"); }), n.addEventListener("focus", () => t.classList.add("has-focus")), n.addEventListener("blur", () => { i || (i = !1, t.classList.remove("has-focus")); }); let s = { base: t.dataset.base + "/" }; Fe(t, r, n, s); }
493
+ function Fe(t, e, n, r) { n.addEventListener("input", ue(() => { Ae(t, e, n, r); }, 200)); let i = !1; n.addEventListener("keydown", s => { i = !0, s.key == "Enter" ? Ve(e, n) : s.key == "Escape" ? n.blur() : s.key == "ArrowUp" ? fe(e, -1) : s.key === "ArrowDown" ? fe(e, 1) : i = !1; }), n.addEventListener("keypress", s => { i && s.preventDefault(); }), document.body.addEventListener("keydown", s => { s.altKey || s.ctrlKey || s.metaKey || !n.matches(":focus") && s.key === "/" && (n.focus(), s.preventDefault()); }); }
494
+ function He(t, e) { t.index || window.searchData && (e.classList.remove("loading"), e.classList.add("ready"), t.data = window.searchData, t.index = me.Index.load(window.searchData.index)); }
495
+ function Ae(t, e, n, r) { var _a; if (He(r, t), !r.index || !r.data)
496
+ return; e.textContent = ""; let i = n.value.trim(), s = i ? r.index.search(`*${i}*`) : []; for (let o = 0; o < s.length; o++) {
497
+ let a = s[o], u = r.data.rows[Number(a.ref)], l = 1;
498
+ u.name.toLowerCase().startsWith(i.toLowerCase()) && (l *= 1 + 1 / (1 + Math.abs(u.name.length - i.length))), a.score *= l;
499
+ } s.sort((o, a) => a.score - o.score); for (let o = 0, a = Math.min(10, s.length); o < a; o++) {
500
+ let u = r.data.rows[Number(s[o].ref)], l = pe(u.name, i);
501
+ globalThis.DEBUG_SEARCH_WEIGHTS && (l += ` (score: ${s[o].score.toFixed(2)})`), u.parent && (l = `<span class="parent">${pe(u.parent, i)}.</span>${l}`);
502
+ let h = document.createElement("li");
503
+ h.classList.value = (_a = u.classes) !== null && _a !== void 0 ? _a : "";
504
+ let m = document.createElement("a");
505
+ m.href = r.base + u.url, m.innerHTML = l, h.append(m), e.appendChild(h);
506
+ } }
507
+ function fe(t, e) { var _a, _c; let n = t.querySelector(".current"); if (!n)
508
+ n = t.querySelector(e == 1 ? "li:first-child" : "li:last-child"), n && n.classList.add("current");
509
+ else {
510
+ let r = n;
511
+ if (e === 1)
512
+ do
513
+ r = (_a = r.nextElementSibling) !== null && _a !== void 0 ? _a : void 0;
514
+ while (r instanceof HTMLElement && r.offsetParent == null);
515
+ else
516
+ do
517
+ r = (_c = r.previousElementSibling) !== null && _c !== void 0 ? _c : void 0;
518
+ while (r instanceof HTMLElement && r.offsetParent == null);
519
+ r && (n.classList.remove("current"), r.classList.add("current"));
520
+ } }
521
+ function Ve(t, e) { let n = t.querySelector(".current"); if (n || (n = t.querySelector("li:first-child")), n) {
522
+ let r = n.querySelector("a");
523
+ r && (window.location.href = r.href), e.blur();
524
+ } }
525
+ function pe(t, e) { if (e === "")
526
+ return t; let n = t.toLocaleLowerCase(), r = e.toLocaleLowerCase(), i = [], s = 0, o = n.indexOf(r); for (; o != -1;)
527
+ i.push(ie(t.substring(s, o)), `<b>${ie(t.substring(o, o + r.length))}</b>`), s = o + r.length, o = n.indexOf(r, s); return i.push(ie(t.substring(s))), i.join(""); }
528
+ var Ne = { "&": "&amp;", "<": "&lt;", ">": "&gt;", "'": "&#039;", '"': "&quot;" };
529
+ function ie(t) { return t.replace(/[&<>"'"]/g, e => Ne[e]); }
530
+ var F = "mousedown", ye = "mousemove", B = "mouseup", Z = { x: 0, y: 0 }, ge = !1, se = !1, je = !1, H = !1, xe = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
531
+ document.documentElement.classList.add(xe ? "is-mobile" : "not-mobile");
532
+ xe && "ontouchstart" in document.documentElement && (je = !0, F = "touchstart", ye = "touchmove", B = "touchend");
533
+ document.addEventListener(F, t => { se = !0, H = !1; let e = F == "touchstart" ? t.targetTouches[0] : t; Z.y = e.pageY || 0, Z.x = e.pageX || 0; });
534
+ document.addEventListener(ye, t => { if (!!se && !H) {
535
+ let e = F == "touchstart" ? t.targetTouches[0] : t, n = Z.x - (e.pageX || 0), r = Z.y - (e.pageY || 0);
536
+ H = Math.sqrt(n * n + r * r) > 10;
537
+ } });
538
+ document.addEventListener(B, () => { se = !1; });
539
+ document.addEventListener("click", t => { ge && (t.preventDefault(), t.stopImmediatePropagation(), ge = !1); });
540
+ var K = class extends k {
541
+ constructor(n) { super(n); this.className = this.el.dataset.toggle || "", this.el.addEventListener(B, r => this.onPointerUp(r)), this.el.addEventListener("click", r => r.preventDefault()), document.addEventListener(F, r => this.onDocumentPointerDown(r)), document.addEventListener(B, r => this.onDocumentPointerUp(r)); }
542
+ setActive(n) { if (this.active == n)
543
+ return; this.active = n, document.documentElement.classList.toggle("has-" + this.className, n), this.el.classList.toggle("active", n); let r = (this.active ? "to-has-" : "from-has-") + this.className; document.documentElement.classList.add(r), setTimeout(() => document.documentElement.classList.remove(r), 500); }
544
+ onPointerUp(n) { H || (this.setActive(!0), n.preventDefault()); }
545
+ onDocumentPointerDown(n) { if (this.active) {
546
+ if (n.target.closest(".col-menu, .tsd-filter-group"))
547
+ return;
548
+ this.setActive(!1);
549
+ } }
550
+ onDocumentPointerUp(n) { if (!H && this.active && n.target.closest(".col-menu")) {
551
+ let r = n.target.closest("a");
552
+ if (r) {
553
+ let i = window.location.href;
554
+ i.indexOf("#") != -1 && (i = i.substring(0, i.indexOf("#"))), r.href.substring(0, i.length) == i && setTimeout(() => this.setActive(!1), 250);
555
+ }
556
+ } }
557
+ };
558
+ var oe;
559
+ try {
560
+ oe = localStorage;
561
+ }
562
+ catch (_a) {
563
+ oe = { getItem() { return null; }, setItem() { } };
564
+ }
565
+ var Q = oe;
566
+ var Le = document.head.appendChild(document.createElement("style"));
567
+ Le.dataset.for = "filters";
568
+ var ee = class extends k {
569
+ constructor(n) {
570
+ super(n);
571
+ this.key = `filter-${this.el.name}`, this.value = this.el.checked, this.el.addEventListener("change", () => { this.setLocalStorage(this.el.checked); }), this.setLocalStorage(this.fromLocalStorage()), Le.innerHTML += `html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; }
572
+ `;
573
+ }
574
+ fromLocalStorage() { let n = Q.getItem(this.key); return n ? n === "true" : this.el.checked; }
575
+ setLocalStorage(n) { Q.setItem(this.key, n.toString()), this.value = n, this.handleValueChange(); }
576
+ handleValueChange() { this.el.checked = this.value, document.documentElement.classList.toggle(this.key, this.value), document.querySelectorAll(".tsd-index-section").forEach(n => { n.style.display = "block"; let r = Array.from(n.querySelectorAll(".tsd-index-link")).every(i => i.offsetParent == null); n.style.display = r ? "none" : "block"; }); }
577
+ };
578
+ var te = class extends k {
579
+ constructor(n) { super(n); this.calculateHeights(), this.summary = this.el.querySelector(".tsd-accordion-summary"), this.icon = this.summary.querySelector("svg"), this.key = `tsd-accordion-${this.summary.textContent.replace(/\s+/g, "-").toLowerCase()}`, this.setLocalStorage(this.fromLocalStorage(), !0), this.summary.addEventListener("click", r => this.toggleVisibility(r)), this.icon.style.transform = this.getIconRotation(); }
580
+ getIconRotation(n = this.el.open) { return `rotate(${n ? 0 : -90}deg)`; }
581
+ calculateHeights() { let n = this.el.open, { position: r, left: i } = this.el.style; this.el.style.position = "fixed", this.el.style.left = "-9999px", this.el.open = !0, this.expandedHeight = this.el.offsetHeight + "px", this.el.open = !1, this.collapsedHeight = this.el.offsetHeight + "px", this.el.open = n, this.el.style.height = n ? this.expandedHeight : this.collapsedHeight, this.el.style.position = r, this.el.style.left = i; }
582
+ toggleVisibility(n) { n.preventDefault(), this.el.style.overflow = "hidden", this.el.open ? this.collapse() : this.expand(); }
583
+ expand(n = !0) { this.el.open = !0, this.animate(this.collapsedHeight, this.expandedHeight, { opening: !0, duration: n ? 300 : 0 }); }
584
+ collapse(n = !0) { this.animate(this.expandedHeight, this.collapsedHeight, { opening: !1, duration: n ? 300 : 0 }); }
585
+ animate(n, r, { opening: i, duration: s = 300 }) { if (this.animation)
586
+ return; let o = { duration: s, easing: "ease" }; this.animation = this.el.animate({ height: [n, r] }, o), this.icon.animate({ transform: [this.icon.style.transform || this.getIconRotation(!i), this.getIconRotation(i)] }, o).addEventListener("finish", () => { this.icon.style.transform = this.getIconRotation(i); }), this.animation.addEventListener("finish", () => this.animationEnd(i)); }
587
+ animationEnd(n) { this.el.open = n, this.animation = void 0, this.el.style.height = "auto", this.el.style.overflow = "visible", this.setLocalStorage(n); }
588
+ fromLocalStorage() { let n = Q.getItem(this.key); return n ? n === "true" : this.el.open; }
589
+ setLocalStorage(n, r = !1) { this.fromLocalStorage() === n && !r || (Q.setItem(this.key, n.toString()), this.el.open = n, this.handleValueChange(r)); }
590
+ handleValueChange(n = !1) { this.fromLocalStorage() === this.el.open && !n || (this.fromLocalStorage() ? this.expand(!1) : this.collapse(!1)); }
591
+ };
592
+ function be(t) { let e = Q.getItem("tsd-theme") || "os"; t.value = e, Ee(e), t.addEventListener("change", () => { Q.setItem("tsd-theme", t.value), Ee(t.value); }); }
593
+ function Ee(t) { document.documentElement.dataset.theme = t; }
594
+ ve();
595
+ j(X, ".menu-highlight");
596
+ j(K, "a[data-toggle]");
597
+ j(te, ".tsd-index-accordion");
598
+ j(ee, ".tsd-filter-item input[type=checkbox]");
599
+ var Se = document.getElementById("theme");
600
+ Se && be(Se);
601
+ var Be = new Y;
602
+ Object.defineProperty(window, "app", { value: Be });
603
+ })();
604
+ //# sourceMappingURL=main.js.map