pimath 0.0.125 → 0.0.127

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 (84) hide show
  1. package/.idea/inspectionProfiles/Project_Default.xml +5 -5
  2. package/.idea/shelf/Uncommitted_changes_before_Checkout_at_07_11_2023_08_30_[Default_Changelist]/shelved.patch +192 -192
  3. package/.idea/shelf/Uncommitted_changes_before_Checkout_at_09_11_2023_10_43_[Default_Changelist]/shelved.patch +2404 -2404
  4. package/.idea/shelf/Uncommitted_changes_before_Checkout_at_09_11_2023_11_01_[Default_Changelist]/shelved.patch +1362 -1362
  5. package/dev/pimath.js +7945 -0
  6. package/dev/pimath.js.map +1 -0
  7. package/dist/pimath.js +192 -221
  8. package/dist/pimath.js.map +1 -1
  9. package/dist/pimath.min.js +1 -1
  10. package/dist/pimath.min.js.map +1 -1
  11. package/docs/.nojekyll +1 -0
  12. package/docs/assets/highlight.css +78 -0
  13. package/docs/assets/main.js +59 -0
  14. package/docs/assets/navigation.js +1 -0
  15. package/docs/assets/search.js +1 -0
  16. package/docs/assets/style.css +1383 -0
  17. package/docs/classes/Logicalset.Logicalset.html +217 -0
  18. package/docs/classes/Polynom.Rational.html +397 -0
  19. package/docs/classes/Vector-1.Vector.html +490 -0
  20. package/docs/classes/Vector.Point.html +337 -0
  21. package/docs/classes/algebra_equation.Equation.html +790 -0
  22. package/docs/classes/algebra_linearSystem.LinearSystem.html +404 -0
  23. package/docs/classes/algebra_monom.Monom.html +962 -0
  24. package/docs/classes/algebra_polynom.Polynom.html +1275 -0
  25. package/docs/classes/coefficients_fraction.Fraction.html +934 -0
  26. package/docs/classes/geometry_circle.Circle.html +472 -0
  27. package/docs/classes/geometry_line.Line.html +774 -0
  28. package/docs/classes/geometry_triangle.Triangle.html +429 -0
  29. package/docs/classes/numeric.Numeric.html +265 -0
  30. package/docs/classes/shutingyard.Shutingyard.html +250 -0
  31. package/docs/enums/algebra_equation.PARTICULAR_SOLUTION.html +83 -0
  32. package/docs/enums/geometry_line.LinePropriety.html +97 -0
  33. package/docs/enums/shutingyard.ShutingyardMode.html +97 -0
  34. package/docs/enums/shutingyard.ShutingyardType.html +111 -0
  35. package/docs/index.html +63 -0
  36. package/docs/interfaces/algebra_equation.ISolution.html +105 -0
  37. package/docs/interfaces/algebra_polynom.IEuclidian.html +87 -0
  38. package/docs/interfaces/geometry_triangle.remarquableLines.html +163 -0
  39. package/docs/modules/Logicalset.html +65 -0
  40. package/docs/modules/Polynom.html +65 -0
  41. package/docs/modules/Vector-1.html +65 -0
  42. package/docs/modules/Vector.html +65 -0
  43. package/docs/modules/algebra_equation.html +69 -0
  44. package/docs/modules/algebra_linearSystem.html +61 -0
  45. package/docs/modules/algebra_monom.html +65 -0
  46. package/docs/modules/algebra_polynom.html +69 -0
  47. package/docs/modules/coefficients_fraction.html +65 -0
  48. package/docs/modules/geometry_circle.html +61 -0
  49. package/docs/modules/geometry_line.html +65 -0
  50. package/docs/modules/geometry_triangle.html +65 -0
  51. package/docs/modules/numeric.html +61 -0
  52. package/docs/modules/shutingyard.html +75 -0
  53. package/docs/types/algebra_monom.literalType.html +61 -0
  54. package/docs/types/algebra_polynom.PolynomParsingType.html +56 -0
  55. package/docs/types/coefficients_fraction.FractionParsingType.html +56 -0
  56. package/docs/types/shutingyard.Token.html +63 -0
  57. package/docs/types/shutingyard.tokenType.html +68 -0
  58. package/docs/variables/shutingyard.tokenConstant.html +61 -0
  59. package/esm/index.js +1 -1
  60. package/esm/index.js.map +1 -1
  61. package/esm/maths/algebra/monom.d.ts +19 -19
  62. package/esm/maths/algebra/monom.js +66 -66
  63. package/esm/maths/algebra/monom.js.map +1 -1
  64. package/esm/maths/algebra/polynom.d.ts +14 -14
  65. package/esm/maths/algebra/polynom.js +72 -50
  66. package/esm/maths/algebra/polynom.js.map +1 -1
  67. package/esm/maths/numeric.js +3 -48
  68. package/esm/maths/numeric.js.map +1 -1
  69. package/package.json +1 -1
  70. package/src/index.ts +1 -1
  71. package/src/maths/algebra/monom.ts +138 -130
  72. package/src/maths/algebra/polynom.ts +97 -82
  73. package/src/maths/geometry/line.ts +22 -25
  74. package/src/maths/geometry/point.ts +43 -29
  75. package/src/maths/numeric.ts +61 -90
  76. package/src/maths/randomization/random.ts +7 -0
  77. package/src/maths/randomization/rndGeometryCircle.ts +50 -0
  78. package/src/maths/randomization/rndTypes.ts +10 -4
  79. package/tests/algebra/linear.test.ts +1 -1
  80. package/tests/algebra/polynom.test.ts +162 -1
  81. package/tests/algebra/study.test.ts +1 -0
  82. package/tests/geometry/circle.test.ts +320 -115
  83. package/tests/geometry/line.test.ts +8 -17
  84. package/tests/numeric.test.ts +19 -3
package/docs/.nojekyll ADDED
@@ -0,0 +1 @@
1
+ TypeDoc added this file to prevent GitHub Pages from using Jekyll. You can turn off this behavior by setting the `githubPages` option to false.
@@ -0,0 +1,78 @@
1
+ :root {
2
+ --light-hl-0: #0000FF;
3
+ --dark-hl-0: #569CD6;
4
+ --light-hl-1: #000000;
5
+ --dark-hl-1: #D4D4D4;
6
+ --light-hl-2: #0070C1;
7
+ --dark-hl-2: #4FC1FF;
8
+ --light-hl-3: #001080;
9
+ --dark-hl-3: #9CDCFE;
10
+ --light-hl-4: #795E26;
11
+ --dark-hl-4: #DCDCAA;
12
+ --light-hl-5: #A31515;
13
+ --dark-hl-5: #CE9178;
14
+ --light-hl-6: #008000;
15
+ --dark-hl-6: #6A9955;
16
+ --light-hl-7: #098658;
17
+ --dark-hl-7: #B5CEA8;
18
+ --light-code-background: #FFFFFF;
19
+ --dark-code-background: #1E1E1E;
20
+ }
21
+
22
+ @media (prefers-color-scheme: light) { :root {
23
+ --hl-0: var(--light-hl-0);
24
+ --hl-1: var(--light-hl-1);
25
+ --hl-2: var(--light-hl-2);
26
+ --hl-3: var(--light-hl-3);
27
+ --hl-4: var(--light-hl-4);
28
+ --hl-5: var(--light-hl-5);
29
+ --hl-6: var(--light-hl-6);
30
+ --hl-7: var(--light-hl-7);
31
+ --code-background: var(--light-code-background);
32
+ } }
33
+
34
+ @media (prefers-color-scheme: dark) { :root {
35
+ --hl-0: var(--dark-hl-0);
36
+ --hl-1: var(--dark-hl-1);
37
+ --hl-2: var(--dark-hl-2);
38
+ --hl-3: var(--dark-hl-3);
39
+ --hl-4: var(--dark-hl-4);
40
+ --hl-5: var(--dark-hl-5);
41
+ --hl-6: var(--dark-hl-6);
42
+ --hl-7: var(--dark-hl-7);
43
+ --code-background: var(--dark-code-background);
44
+ } }
45
+
46
+ :root[data-theme='light'] {
47
+ --hl-0: var(--light-hl-0);
48
+ --hl-1: var(--light-hl-1);
49
+ --hl-2: var(--light-hl-2);
50
+ --hl-3: var(--light-hl-3);
51
+ --hl-4: var(--light-hl-4);
52
+ --hl-5: var(--light-hl-5);
53
+ --hl-6: var(--light-hl-6);
54
+ --hl-7: var(--light-hl-7);
55
+ --code-background: var(--light-code-background);
56
+ }
57
+
58
+ :root[data-theme='dark'] {
59
+ --hl-0: var(--dark-hl-0);
60
+ --hl-1: var(--dark-hl-1);
61
+ --hl-2: var(--dark-hl-2);
62
+ --hl-3: var(--dark-hl-3);
63
+ --hl-4: var(--dark-hl-4);
64
+ --hl-5: var(--dark-hl-5);
65
+ --hl-6: var(--dark-hl-6);
66
+ --hl-7: var(--dark-hl-7);
67
+ --code-background: var(--dark-code-background);
68
+ }
69
+
70
+ .hl-0 { color: var(--hl-0); }
71
+ .hl-1 { color: var(--hl-1); }
72
+ .hl-2 { color: var(--hl-2); }
73
+ .hl-3 { color: var(--hl-3); }
74
+ .hl-4 { color: var(--hl-4); }
75
+ .hl-5 { color: var(--hl-5); }
76
+ .hl-6 { color: var(--hl-6); }
77
+ .hl-7 { color: var(--hl-7); }
78
+ pre, code { background: var(--code-background); }
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ "use strict";(()=>{var Pe=Object.create;var ne=Object.defineProperty;var Ie=Object.getOwnPropertyDescriptor;var Oe=Object.getOwnPropertyNames;var _e=Object.getPrototypeOf,Re=Object.prototype.hasOwnProperty;var Me=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Fe=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Oe(e))!Re.call(t,i)&&i!==n&&ne(t,i,{get:()=>e[i],enumerable:!(r=Ie(e,i))||r.enumerable});return t};var De=(t,e,n)=>(n=t!=null?Pe(_e(t)):{},Fe(e||!t||!t.__esModule?ne(n,"default",{value:t,enumerable:!0}):n,t));var ae=Me((se,oe)=>{(function(){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()};t.version="2.3.9";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)return e;for(var n=Object.create(null),r=Object.keys(e),i=0;i<r.length;i++){var s=r[i],o=e[s];if(Array.isArray(o)){n[s]=o.slice();continue}if(typeof o=="string"||typeof o=="number"||typeof o=="boolean"){n[s]=o;continue}throw new TypeError("clone is not deep and does not support nested objects")}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)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};t.Set=function(e){if(this.elements=Object.create(null),e){this.length=e.length;for(var n=0;n<this.length;n++)this.elements[e[n]]=!0}else 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)return this;if(e===t.Set.empty)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++){var a=i[o];a in r.elements&&s.push(a)}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)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)};t.tokenizer=function(e,n){if(e==null||e==null)return[];if(Array.isArray(e))return e.map(function(v){return new t.Token(t.utils.asString(v).toLowerCase(),t.utils.clone(n))});for(var r=e.toString().toLowerCase(),i=r.length,s=[],o=0,a=0;o<=i;o++){var l=r.charAt(o),u=o-a;if(l.match(t.tokenizer.separator)||o==i){if(u>0){var d=t.utils.clone(n)||{};d.position=[a,u],d.index=s.length,s.push(new t.Token(r.slice(a,o),d))}a=o+1}}return s},t.tokenizer.separator=/[\s\-]+/;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){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index.
3
+ `,e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(r){var i=t.Pipeline.registeredFunctions[r];if(i)n.add(i);else 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)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)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++){for(var i=this._stack[r],s=[],o=0;o<e.length;o++){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]);else s.push(a)}e=s}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})};t.Vector=function(e){this._magnitude=0,this.elements=e||[]},t.Vector.prototype.positionForIndex=function(e){if(this.elements.length==0)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);)i=r-n,s=n+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(o<e)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)return this._magnitude;for(var e=0,n=this.elements.length,r=1;r<n;r+=2){var i=this.elements[r];e+=i*i}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,l=0,u=0,d=0;u<s&&d<o;)a=r[u],l=i[d],a<l?u+=2:a>l?d+=2:a==l&&(n+=r[u+1]*i[d+1],u+=2,d+=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++)e[r]=this.elements[n];return e},t.Vector.prototype.toJSON=function(){return this.elements};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,l="^("+s+")?"+o+s+"("+o+")?$",u="^("+s+")?"+o+s+o+s,d="^("+s+")?"+i,v=new RegExp(a),f=new RegExp(u),b=new RegExp(l),g=new RegExp(d),L=/^(.+?)(ss|i)es$/,p=/^(.+?)([^s])s$/,m=/^(.+?)eed$/,S=/^(.+?)(ed|ing)$/,w=/.$/,k=/(at|bl|iz)$/,_=new RegExp("([^aeiouylsz])\\1$"),H=new RegExp("^"+s+i+"[^aeiouwxy]$"),A=/^(.+?[^aeiou])y$/,j=/^(.+?)(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)$/,N=/^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/,q=/^(.+?)(s|t)(ion)$/,P=/^(.+?)e$/,z=/ll$/,W=new RegExp("^"+s+i+"[^aeiouwxy]$"),V=function(c){var y,I,T,h,x,O,M;if(c.length<3)return c;if(T=c.substr(0,1),T=="y"&&(c=T.toUpperCase()+c.substr(1)),h=L,x=p,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)){var E=h.exec(c);h=v,h.test(E[1])&&(h=w,c=c.replace(h,""))}else if(x.test(c)){var E=x.exec(c);y=E[1],x=g,x.test(y)&&(c=y,x=k,O=_,M=H,x.test(c)?c=c+"e":O.test(c)?(h=w,c=c.replace(h,"")):M.test(c)&&(c=c+"e"))}if(h=A,h.test(c)){var E=h.exec(c);y=E[1],c=y+"i"}if(h=j,h.test(c)){var E=h.exec(c);y=E[1],I=E[2],h=v,h.test(y)&&(c=y+e[I])}if(h=$,h.test(c)){var E=h.exec(c);y=E[1],I=E[2],h=v,h.test(y)&&(c=y+n[I])}if(h=N,x=q,h.test(c)){var E=h.exec(c);y=E[1],h=f,h.test(y)&&(c=y)}else if(x.test(c)){var E=x.exec(c);y=E[1]+E[2],x=f,x.test(y)&&(c=y)}if(h=P,h.test(c)){var E=h.exec(c);y=E[1],h=f,x=b,O=W,(h.test(y)||x.test(y)&&!O.test(y))&&(c=y)}return h=z,x=f,h.test(c)&&x.test(c)&&(h=w,c=c.replace(h,"")),T=="y"&&(c=T.toLowerCase()+c.substr(1)),c};return function(R){return R.update(V)}}(),t.Pipeline.registerFunction(t.stemmer,"stemmer");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())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");t.trimmer=function(e){return e.update(function(n){return n.replace(/^\W+/,"").replace(/\W+$/,"")})},t.Pipeline.registerFunction(t.trimmer,"trimmer");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++)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;){var s=i.pop();if(s.str.length>0){var o=s.str.charAt(0),a;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)})}if(s.editsRemaining!=0){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new t.TokenSet;s.node.edges["*"]=l}if(s.str.length==0&&(l.final=!0),i.push({node:l,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){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new t.TokenSet;s.node.edges["*"]=u}s.str.length==1&&(u.final=!0),i.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var d=s.str.charAt(0),v=s.str.charAt(1),f;v in s.node.edges?f=s.node.edges[v]:(f=new t.TokenSet,s.node.edges[v]=f),s.str.length==1&&(f.final=!0),i.push({node:f,editsRemaining:s.editsRemaining-1,str:d+s.str.slice(2)})}}}return r},t.TokenSet.fromString=function(e){for(var n=new t.TokenSet,r=n,i=0,s=e.length;i<s;i++){var o=e[i],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}}return r},t.TokenSet.prototype.toArray=function(){for(var e=[],n=[{prefix:"",node:this}];n.length;){var r=n.pop(),i=Object.keys(r.node.edges),s=i.length;r.node.final&&(r.prefix.charAt(0),e.push(r.prefix));for(var o=0;o<s;o++){var a=i[o];n.push({prefix:r.prefix.concat(a),node:r.node.edges[a]})}}return e},t.TokenSet.prototype.toString=function(){if(this._str)return this._str;for(var e=this.final?"1":"0",n=Object.keys(this.edges).sort(),r=n.length,i=0;i<r;i++){var s=n[i],o=this.edges[s];e=e+s+o.id}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;){r=i.pop();for(var s=Object.keys(r.qNode.edges),o=s.length,a=Object.keys(r.node.edges),l=a.length,u=0;u<o;u++)for(var d=s[u],v=0;v<l;v++){var f=a[v];if(f==d||d=="*"){var b=r.node.edges[f],g=r.qNode.edges[d],L=b.final&&g.final,p=void 0;f in r.output.edges?(p=r.output.edges[f],p.final=p.final||L):(p=new t.TokenSet,p.final=L,r.output.edges[f]=p),i.push({qNode:g,output:p,node:b})}}}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)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++)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++){var s=new t.TokenSet,o=e[i];n.edges[o]=s,this.uncheckedNodes.push({parent:n,char:o,child:s}),n=s}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--){var r=this.uncheckedNodes[n],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r.char]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}};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),l=0;l<this.fields.length;l++)i[this.fields[l]]=new t.Vector;e.call(n,n);for(var l=0;l<n.clauses.length;l++){var u=n.clauses[l],d=null,v=t.Set.empty;u.usePipeline?d=this.pipeline.runString(u.term,{fields:u.fields}):d=[u.term];for(var f=0;f<d.length;f++){var b=d[f];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 p=0;p<u.fields.length;p++){var m=u.fields[p];o[m]=t.Set.empty}break}for(var S=0;S<L.length;S++)for(var w=L[S],k=this.invertedIndex[w],_=k._index,p=0;p<u.fields.length;p++){var m=u.fields[p],H=k[m],A=Object.keys(H),j=w+"/"+m,$=new t.Set(A);if(u.presence==t.Query.presence.REQUIRED&&(v=v.union($),o[m]===void 0&&(o[m]=t.Set.complete)),u.presence==t.Query.presence.PROHIBITED){a[m]===void 0&&(a[m]=t.Set.empty),a[m]=a[m].union($);continue}if(i[m].upsert(_,u.boost,function(Qe,Ce){return Qe+Ce}),!s[j]){for(var N=0;N<A.length;N++){var q=A[N],P=new t.FieldRef(q,m),z=H[q],W;(W=r[P])===void 0?r[P]=new t.MatchData(w,m,z):W.add(w,m,z)}s[j]=!0}}}if(u.presence===t.Query.presence.REQUIRED)for(var p=0;p<u.fields.length;p++){var m=u.fields[p];o[m]=o[m].intersect(v)}}for(var V=t.Set.complete,R=t.Set.empty,l=0;l<this.fields.length;l++){var m=this.fields[l];o[m]&&(V=V.intersect(o[m])),a[m]&&(R=R.union(a[m]))}var c=Object.keys(r),y=[],I=Object.create(null);if(n.isNegated()){c=Object.keys(this.fieldVectors);for(var l=0;l<c.length;l++){var P=c[l],T=t.FieldRef.fromString(P);r[P]=new t.MatchData}}for(var l=0;l<c.length;l++){var T=t.FieldRef.fromString(c[l]),h=T.docRef;if(V.contains(h)&&!R.contains(h)){var x=this.fieldVectors[T],O=i[T.fieldName].similarity(x),M;if((M=I[h])!==void 0)M.score+=O,M.matchData.combine(r[T]);else{var E={ref:h,score:O,matchData:r[T]};I[h]=E,y.push(E)}}}return y.sort(function(Te,ke){return ke.score-Te.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,l=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 u=0;u<i.length;u++){var d=i[u],v=d[0],f=d[1];r[v]=new t.Vector(f)}for(var u=0;u<o.length;u++){var d=o[u],b=d[0],g=d[1];a.insert(b),s[b]=g}return a.finish(),n.fields=e.fields,n.fieldVectors=r,n.invertedIndex=s,n.tokenSet=a.root,n.pipeline=l,new t.Index(n)};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))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++){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),v=new t.FieldRef(r,o),f=Object.create(null);this.fieldTermFrequencies[v]=f,this.fieldLengths[v]=0,this.fieldLengths[v]+=d.length;for(var b=0;b<d.length;b++){var g=d[b];if(f[g]==null&&(f[g]=0),f[g]+=1,this.invertedIndex[g]==null){var L=Object.create(null);L._index=this.termIndex,this.termIndex+=1;for(var p=0;p<i.length;p++)L[i[p]]=Object.create(null);this.invertedIndex[g]=L}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)}}}},t.Builder.prototype.calculateAverageFieldLengths=function(){for(var e=Object.keys(this.fieldLengths),n=e.length,r={},i={},s=0;s<n;s++){var o=t.FieldRef.fromString(e[s]),a=o.fieldName;i[a]||(i[a]=0),i[a]+=1,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]}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++){for(var o=t.FieldRef.fromString(n[s]),a=o.fieldName,l=this.fieldLengths[o],u=new t.Vector,d=this.fieldTermFrequencies[o],v=Object.keys(d),f=v.length,b=this._fields[a].boost||1,g=this._documents[o.docRef].boost||1,L=0;L<f;L++){var p=v[L],m=d[p],S=this.invertedIndex[p]._index,w,k,_;i[p]===void 0?(w=t.idf(this.invertedIndex[p],this.documentCount),i[p]=w):w=i[p],k=w*((this._k1+1)*m)/(this._k1*(1-this._b+this._b*(l/this.averageFieldLength[a]))+m),k*=b,k*=g,_=Math.round(k*1e3)/1e3,u.insert(S,_)}e[o]=u}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++){var a=s[o];i[a]=r[a].slice()}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++){var i=n[r],s=Object.keys(e.metadata[i]);this.metadata[i]==null&&(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]);this.metadata[i][a]==null&&(this.metadata[i][a]=Object.create(null));for(var u=0;u<l.length;u++){var d=l[u];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(e.metadata[i][a][d])}}}},t.MatchData.prototype.add=function(e,n,r){if(!(e in this.metadata)){this.metadata[e]=Object.create(null),this.metadata[e][n]=r;return}if(!(n in this.metadata[e])){this.metadata[e][n]=r;return}for(var i=Object.keys(r),s=0;s<i.length;s++){var o=i[s];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]}},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++)if(this.clauses[e].presence!=t.Query.presence.PROHIBITED)return!1;return!0},t.Query.prototype.term=function(e,n){if(Array.isArray(e))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;)e=e(this)},t.QueryLexer.prototype.sliceString=function(){for(var e=[],n=this.start,r=this.pos,i=0;i<this.escapeCharPositions.length;i++)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)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 e=this.next(),n=e.charCodeAt(0);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())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(;;){var n=e.next();if(n==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(n.charCodeAt(0)==92){e.escapeCharacter();continue}if(n==":")return t.QueryLexer.lexField;if(n=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(n=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(n=="+"&&e.width()===1||n=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(n.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},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;)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)switch(n.type){case t.QueryLexer.PRESENCE:return t.QueryParser.parsePresence;case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expected either a field or a term, found "+n.type;throw n.str.length>=1&&(r+=" with value '"+n.str+"'"),new t.QueryParseError(r,n.start,n.end)}},t.QueryParser.parsePresence=function(e){var n=e.consumeLexeme();if(n!=null){switch(n.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var r="unrecognised presence operator'"+n.str+"'";throw new t.QueryParseError(r,n.start,n.end)}var i=e.peekLexeme();if(i==null){var r="expecting term or field, found nothing";throw new t.QueryParseError(r,n.start,n.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(r,i.start,i.end)}}},t.QueryParser.parseField=function(e){var n=e.consumeLexeme();if(n!=null){if(e.query.allFields.indexOf(n.str)==-1){var r=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+n.str+"', possible fields: "+r;throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.fields=[n.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,n.start,n.end)}switch(s.type){case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var i="expecting term, found '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseTerm=function(e){var n=e.consumeLexeme();if(n!=null){e.currentClause.term=n.str.toLowerCase(),n.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var r=e.peekLexeme();if(r==null){e.nextClause();return}switch(r.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+r.type+"'";throw new t.QueryParseError(i,r.start,r.end)}}},t.QueryParser.parseEditDistance=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="edit distance must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.editDistance=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseBoost=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="boost must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.boost=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},function(e,n){typeof define=="function"&&define.amd?define(n):typeof se=="object"?oe.exports=n():e.lunr=n()}(this,function(){return t})})()});var re=[];function G(t,e){re.push({selector:e,constructor:t})}var U=class{constructor(){this.alwaysVisibleMember=null;this.createComponents(document.body),this.ensureActivePageVisible(),this.ensureFocusedElementVisible(),this.listenForCodeCopies(),window.addEventListener("hashchange",()=>this.ensureFocusedElementVisible())}createComponents(e){re.forEach(n=>{e.querySelectorAll(n.selector).forEach(r=>{r.dataset.hasInstance||(new n.constructor({el:r,app:this}),r.dataset.hasInstance=String(!0))})})}filterChanged(){this.ensureFocusedElementVisible()}ensureActivePageVisible(){let e=document.querySelector(".tsd-navigation .current"),n=e?.parentElement;for(;n&&!n.classList.contains(".tsd-navigation");)n instanceof HTMLDetailsElement&&(n.open=!0),n=n.parentElement;if(e){let r=e.getBoundingClientRect().top-document.documentElement.clientHeight/4;document.querySelector(".site-menu").scrollTop=r}}ensureFocusedElementVisible(){if(this.alwaysVisibleMember&&(this.alwaysVisibleMember.classList.remove("always-visible"),this.alwaysVisibleMember.firstElementChild.remove(),this.alwaysVisibleMember=null),!location.hash)return;let e=document.getElementById(location.hash.substring(1));if(!e)return;let n=e.parentElement;for(;n&&n.tagName!=="SECTION";)n=n.parentElement;if(n&&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)}}listenForCodeCopies(){document.querySelectorAll("pre > button").forEach(e=>{let n;e.addEventListener("click",()=>{e.previousElementSibling instanceof HTMLElement&&navigator.clipboard.writeText(e.previousElementSibling.innerText.trim()),e.textContent="Copied!",e.classList.add("visible"),clearTimeout(n),n=setTimeout(()=>{e.classList.remove("visible"),n=setTimeout(()=>{e.textContent="Copy"},100)},1e3)})})}};var ie=(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()]).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")}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)}function Ae(t,e,n,r){n.addEventListener("input",ie(()=>{Ne(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"?ue(e,-1):s.key==="ArrowDown"?ue(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())})}function Ne(t,e,n,r){if(!r.index||!r.data)return;e.textContent="";let i=n.value.trim(),s=i?r.index.search(`*${i}*`):[];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){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)}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=`<svg width="20" height="20" viewBox="0 0 24 24" fill="none" class="tsd-kind-icon"><use href="#icon-${l.kind}"></use></svg>`,d=ce(l.name,i);globalThis.DEBUG_SEARCH_WEIGHTS&&(d+=` (score: ${s[o].score.toFixed(2)})`),l.parent&&(d=`<span class="parent">
4
+ ${ce(l.parent,i)}.</span>${d}`);let v=document.createElement("li");v.classList.value=l.classes??"";let f=document.createElement("a");f.href=r.base+l.url,f.innerHTML=u+d,v.append(f),e.appendChild(v)}}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 Ve(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 ce(t,e){if(e==="")return t;let n=t.toLocaleLowerCase(),r=e.toLocaleLowerCase(),i=[],s=0,o=n.indexOf(r);for(;o!=-1;)i.push(K(t.substring(s,o)),`<b>${K(t.substring(o,o+r.length))}</b>`),s=o+r.length,o=n.indexOf(r,s);return i.push(K(t.substring(s))),i.join("")}var Be={"&":"&amp;","<":"&lt;",">":"&gt;","'":"&#039;",'"':"&quot;"};function K(t){return t.replace(/[&<>"'"]/g,e=>Be[e])}var C=class{constructor(e){this.el=e.el,this.app=e.app}};var F="mousedown",pe="mousemove",B="mouseup",J={x:0,y:0},fe=!1,ee=!1,He=!1,D=!1,me=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(me?"is-mobile":"not-mobile");me&&"ontouchstart"in document.documentElement&&(He=!0,F="touchstart",pe="touchmove",B="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});document.addEventListener(pe,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(B,()=>{ee=!1});document.addEventListener("click",t=>{fe&&(t.preventDefault(),t.stopImmediatePropagation(),fe=!1)});var X=class extends C{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))}setActive(n){if(this.active==n)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)}onPointerUp(n){D||(this.setActive(!0),n.preventDefault())}onDocumentPointerDown(n){if(this.active){if(n.target.closest(".col-sidebar, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(n){if(!D&&this.active&&n.target.closest(".col-sidebar")){let r=n.target.closest("a");if(r){let i=window.location.href;i.indexOf("#")!=-1&&(i=i.substring(0,i.indexOf("#"))),r.href.substring(0,i.length)==i&&setTimeout(()=>this.setActive(!1),250)}}}};var te;try{te=localStorage}catch{te={getItem(){return null},setItem(){}}}var Q=te;var ve=document.head.appendChild(document.createElement("style"));ve.dataset.for="filters";var Y=class extends C{constructor(n){super(n);this.key=`filter-${this.el.name}`,this.value=this.el.checked,this.el.addEventListener("change",()=>{this.setLocalStorage(this.el.checked)}),this.setLocalStorage(this.fromLocalStorage()),ve.innerHTML+=`html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; }
5
+ `}fromLocalStorage(){let n=Q.getItem(this.key);return n?n==="true":this.el.checked}setLocalStorage(n){Q.setItem(this.key,n.toString()),this.value=n,this.handleValueChange()}handleValueChange(){this.el.checked=this.value,document.documentElement.classList.toggle(this.key,this.value),this.app.filterChanged(),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"})}};var Z=class extends C{constructor(n){super(n);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 r=Q.getItem(this.key);this.el.open=r?r==="true":this.el.open,this.el.addEventListener("toggle",()=>this.update());let i=this.summary.querySelector("a");i&&i.addEventListener("click",()=>{location.assign(i.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";t.value=e,ye(e),t.addEventListener("change",()=>{Q.setItem("tsd-theme",t.value),ye(t.value)})}function ye(t){document.documentElement.dataset.theme=t}var Le;function be(){let t=document.getElementById("tsd-nav-script");t&&(t.addEventListener("load",xe),xe())}async function xe(){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,[]);window.app.createComponents(t),window.app.ensureActivePageVisible()}function we(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("$");let o=s.appendChild(document.createElement("summary"));o.className="tsd-accordion-summary",o.innerHTML='<svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="#icon-chevronDown"></use></svg>',Ee(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)}function Ee(t,e,n){if(t.path){let r=e.appendChild(document.createElement("a"));r.href=Le+t.path,n&&(r.className=n),location.href===r.href&&r.classList.add("current"),t.kind&&(r.innerHTML=`<svg width="20" height="20" viewBox="0 0 24 24" fill="none" class="tsd-kind-icon"><use href="#icon-${t.kind}"></use></svg>`),r.appendChild(document.createElement("span")).textContent=t.text}else e.appendChild(document.createElement("span")).textContent=t.text}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();})();
6
+ /*! Bundled license information:
7
+
8
+ lunr/lunr.js:
9
+ (**
10
+ * lunr - http://lunrjs.com - A bit like Solr, but much smaller and not as bright - 2.3.9
11
+ * Copyright (C) 2020 Oliver Nightingale
12
+ * @license MIT
13
+ *)
14
+ (*!
15
+ * lunr.utils
16
+ * Copyright (C) 2020 Oliver Nightingale
17
+ *)
18
+ (*!
19
+ * lunr.Set
20
+ * Copyright (C) 2020 Oliver Nightingale
21
+ *)
22
+ (*!
23
+ * lunr.tokenizer
24
+ * Copyright (C) 2020 Oliver Nightingale
25
+ *)
26
+ (*!
27
+ * lunr.Pipeline
28
+ * Copyright (C) 2020 Oliver Nightingale
29
+ *)
30
+ (*!
31
+ * lunr.Vector
32
+ * Copyright (C) 2020 Oliver Nightingale
33
+ *)
34
+ (*!
35
+ * lunr.stemmer
36
+ * Copyright (C) 2020 Oliver Nightingale
37
+ * Includes code from - http://tartarus.org/~martin/PorterStemmer/js.txt
38
+ *)
39
+ (*!
40
+ * lunr.stopWordFilter
41
+ * Copyright (C) 2020 Oliver Nightingale
42
+ *)
43
+ (*!
44
+ * lunr.trimmer
45
+ * Copyright (C) 2020 Oliver Nightingale
46
+ *)
47
+ (*!
48
+ * lunr.TokenSet
49
+ * Copyright (C) 2020 Oliver Nightingale
50
+ *)
51
+ (*!
52
+ * lunr.Index
53
+ * Copyright (C) 2020 Oliver Nightingale
54
+ *)
55
+ (*!
56
+ * lunr.Builder
57
+ * Copyright (C) 2020 Oliver Nightingale
58
+ *)
59
+ */
@@ -0,0 +1 @@
1
+ window.navigationData = "data:application/octet-stream;base64,H4sIAAAAAAAACqWWX2/aMBTFv0ue2ViZunW8VYhKSEARpHupKmScS7Dq2Mwx06Kp330O4MT/krraI/HJL+ceX1/z/DeR8Ecm42TOc4IRLUEmg+SI5EE9K3h2olAO27XPB1lQJXglLEvGo0GCD4RmAlgyfu5FYYrK0kZ1UW9Gd28vb4MGt+K0YrzwbV0XojytkSScIeo70hSt6DfzE7DkwvdyeR5lZcUJCyRzJZxX/8fDp5soFy7EtqEgoYpcJ4jmsBNoCL9O5/R8T1fFViviErpfp7PJ0/x+vd08zp/S2eOyJQM7FQFu4B37W3eG76nnV5fvcadB43UQLW624fRk89QmgtgjHEI2cieM22/BcClhgMSmKiUEDoGmm6q4UxrEujlY2HnnN7oao+DBk6vp5+Uotwsb5Nq8gBY+zt4oStSuIJpWR2hZUv1ySYbQsfflx/eb21Gw2GPXoNLs4wcGljf13JI1LDgFnf6cnjAlGUH9DaqJrdxvUG8sr5AoCcv7InWcGm+8ny3msN8TTIDJcrgXCIfHjCnballUzg8eUwcdZj4E4XbeWtOTTT/8QxHlwAuQohpiIjAFPxwt2F4EUbFMHJYOxWVNAkh3GDQG62HSY69ejh5dK8GPgoCs3JvBxlnS7gthbjnzim1QkYVKoQ5P3rsXWhJVcOrxPIsNLw2C7QYVUCChrqMdhbqqMjgWfLT7Wv/9pXYDBMF+BteFqMqXLkQXriHLEMzdmPKg7luWV0hkvh1jMcrSptUveAZu/5k4R9rdf4bQnha9TH8+dDD9+DqIfU2T8ldg7hwzOWdBeF61FFmLQhPRJDWiKNqEs1Ii8z/1b6RaduduriW2yV/rkfryD8aZxK0ODQAA"
@@ -0,0 +1 @@
1
+ window.searchData = "data:application/octet-stream;base64,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";