dobo 2.0.1 → 2.2.1

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 (194) hide show
  1. package/.github/FUNDING.yml +0 -0
  2. package/.github/workflows/repo-lockdown.yml +0 -0
  3. package/.jsdoc.conf.json +0 -0
  4. package/LICENSE +0 -0
  5. package/README.md +2 -2
  6. package/docs/Dobo.html +0 -0
  7. package/docs/data/search.json +0 -0
  8. package/docs/fonts/Inconsolata-Regular.ttf +0 -0
  9. package/docs/fonts/OpenSans-Regular.ttf +0 -0
  10. package/docs/fonts/WorkSans-Bold.ttf +0 -0
  11. package/docs/global.html +0 -0
  12. package/docs/index.html +0 -0
  13. package/docs/index.js.html +0 -0
  14. package/docs/lib_collect-connections.js.html +0 -0
  15. package/docs/lib_collect-drivers.js.html +0 -0
  16. package/docs/lib_collect-features.js.html +0 -0
  17. package/docs/lib_collect-schemas.js.html +0 -0
  18. package/docs/lib_index.js.html +0 -0
  19. package/docs/method_model_create.js.html +0 -0
  20. package/docs/method_model_drop.js.html +0 -0
  21. package/docs/method_model_exists.js.html +0 -0
  22. package/docs/method_record_count.js.html +0 -0
  23. package/docs/method_record_create.js.html +0 -0
  24. package/docs/method_record_find-all.js.html +0 -0
  25. package/docs/method_record_find-one.js.html +0 -0
  26. package/docs/method_record_find.js.html +0 -0
  27. package/docs/method_record_get.js.html +0 -0
  28. package/docs/method_record_remove.js.html +0 -0
  29. package/docs/method_record_update.js.html +0 -0
  30. package/docs/method_record_upsert.js.html +0 -0
  31. package/docs/method_sanitize_body.js.html +0 -0
  32. package/docs/method_sanitize_date.js.html +0 -0
  33. package/docs/method_sanitize_id.js.html +0 -0
  34. package/docs/method_validate.js.html +0 -0
  35. package/docs/module-Lib.html +0 -0
  36. package/docs/scripts/core.js +476 -477
  37. package/docs/scripts/core.min.js +0 -0
  38. package/docs/scripts/resize.js +36 -36
  39. package/docs/scripts/search.js +105 -105
  40. package/docs/scripts/search.min.js +0 -0
  41. package/docs/scripts/third-party/Apache-License-2.0.txt +0 -0
  42. package/docs/scripts/third-party/fuse.js +1 -1
  43. package/docs/scripts/third-party/hljs-line-num-original.js +282 -285
  44. package/docs/scripts/third-party/hljs-line-num.js +1 -1
  45. package/docs/scripts/third-party/hljs-original.js +1195 -1202
  46. package/docs/scripts/third-party/hljs.js +1 -1
  47. package/docs/scripts/third-party/popper.js +1 -1
  48. package/docs/scripts/third-party/tippy.js +1 -1
  49. package/docs/scripts/third-party/tocbot.js +508 -509
  50. package/docs/scripts/third-party/tocbot.min.js +0 -0
  51. package/docs/static/bitcoin.jpeg +0 -0
  52. package/docs/static/home.md +0 -0
  53. package/docs/static/logo-ecosystem.png +0 -0
  54. package/docs/static/logo.png +0 -0
  55. package/docs/styles/clean-jsdoc-theme-base.css +0 -0
  56. package/docs/styles/clean-jsdoc-theme-dark.css +0 -0
  57. package/docs/styles/clean-jsdoc-theme-light.css +0 -0
  58. package/docs/styles/clean-jsdoc-theme-scrollbar.css +0 -0
  59. package/docs/styles/clean-jsdoc-theme-without-scrollbar.min.css +0 -0
  60. package/docs/styles/clean-jsdoc-theme.min.css +0 -0
  61. package/extend/bajo/intl/en-US.json +66 -28
  62. package/extend/bajo/intl/id.json +55 -27
  63. package/extend/bajoCli/applet/clear-record.js +22 -0
  64. package/extend/bajoCli/applet/connection.js +0 -0
  65. package/extend/bajoCli/applet/count-record.js +27 -0
  66. package/extend/bajoCli/applet/create-aggregate.js +33 -0
  67. package/extend/bajoCli/applet/create-histogram.js +33 -0
  68. package/extend/bajoCli/applet/create-record.js +39 -0
  69. package/extend/bajoCli/applet/find-record.js +27 -0
  70. package/extend/bajoCli/applet/get-record.js +27 -0
  71. package/extend/bajoCli/applet/lib/post-process.js +10 -17
  72. package/extend/bajoCli/applet/model.js +22 -0
  73. package/extend/bajoCli/applet/rebuild-model.js +91 -0
  74. package/extend/bajoCli/applet/remove-record.js +27 -0
  75. package/extend/bajoCli/applet/update-record.js +44 -0
  76. package/extend/bajoCli/applet.js +0 -0
  77. package/extend/dobo/driver/memory.js +170 -0
  78. package/extend/dobo/feature/created-at.js +9 -7
  79. package/extend/dobo/feature/dt.js +0 -0
  80. package/extend/dobo/feature/immutable.js +30 -0
  81. package/extend/dobo/feature/int-id.js +0 -0
  82. package/extend/dobo/feature/removed-at.js +32 -54
  83. package/extend/dobo/feature/updated-at.js +14 -12
  84. package/extend/waibuMpa/route/attachment/@model/@id/@field/@file.js +2 -6
  85. package/extend/waibuStatic/virtual.json +0 -0
  86. package/index.js +284 -371
  87. package/lib/collect-connections.js +49 -21
  88. package/lib/collect-drivers.js +19 -33
  89. package/lib/collect-features.js +24 -17
  90. package/lib/collect-models.js +321 -0
  91. package/lib/factory/action.js +161 -0
  92. package/lib/factory/connection.js +62 -0
  93. package/lib/factory/driver.js +372 -0
  94. package/lib/factory/feature.js +33 -0
  95. package/lib/factory/model/_util.js +402 -0
  96. package/lib/factory/model/build.js +15 -0
  97. package/lib/factory/model/clear-record.js +17 -0
  98. package/lib/factory/model/count-record.js +17 -0
  99. package/lib/factory/model/create-aggregate.js +17 -0
  100. package/lib/factory/model/create-attachment.js +29 -0
  101. package/lib/factory/model/create-histogram.js +17 -0
  102. package/lib/factory/model/create-record.js +35 -0
  103. package/lib/factory/model/drop.js +15 -0
  104. package/lib/factory/model/exists.js +21 -0
  105. package/lib/factory/model/find-all-record.js +71 -0
  106. package/lib/factory/model/find-attachment.js +29 -0
  107. package/lib/factory/model/find-one-record.js +19 -0
  108. package/{method/record/find.js → lib/factory/model/find-record.js} +103 -115
  109. package/lib/factory/model/get-attachment.js +15 -0
  110. package/lib/factory/model/get-record.js +79 -0
  111. package/lib/factory/model/list-attachment.js +37 -0
  112. package/lib/{add-fixtures.js → factory/model/load-fixtures.js} +69 -67
  113. package/lib/factory/model/remove-attachment.js +15 -0
  114. package/lib/factory/model/remove-record.js +59 -0
  115. package/lib/factory/model/sanitize-body.js +56 -0
  116. package/lib/factory/model/sanitize-id.js +7 -0
  117. package/lib/factory/model/sanitize-record.js +26 -0
  118. package/lib/factory/model/update-attachment.js +9 -0
  119. package/lib/factory/model/update-record.js +81 -0
  120. package/lib/factory/model/upsert-record.js +95 -0
  121. package/{method → lib/factory/model}/validate.js +38 -52
  122. package/lib/factory/model.js +150 -0
  123. package/lib/index.js +0 -0
  124. package/package.json +8 -4
  125. package/wiki/APPLETS.md +0 -0
  126. package/wiki/CHANGES.md +50 -0
  127. package/wiki/CONFIG.md +0 -0
  128. package/wiki/CONTRIBUTING.md +0 -0
  129. package/wiki/DEV-GUIDE.md +0 -0
  130. package/wiki/ECOSYSTEM.md +0 -0
  131. package/wiki/GETTING-STARTED.md +10 -10
  132. package/wiki/QUERY-LANGUAGE.md +0 -0
  133. package/wiki/USER-GUIDE.md +0 -0
  134. package/extend/bajoCli/applet/model-clear.js +0 -11
  135. package/extend/bajoCli/applet/model-rebuild.js +0 -101
  136. package/extend/bajoCli/applet/record-create.js +0 -43
  137. package/extend/bajoCli/applet/record-find.js +0 -28
  138. package/extend/bajoCli/applet/record-get.js +0 -24
  139. package/extend/bajoCli/applet/record-remove.js +0 -24
  140. package/extend/bajoCli/applet/record-update.js +0 -47
  141. package/extend/bajoCli/applet/schema.js +0 -22
  142. package/extend/bajoCli/applet/stat-count.js +0 -24
  143. package/lib/build-bulk-action.js +0 -12
  144. package/lib/check-unique.js +0 -39
  145. package/lib/collect-schemas.js +0 -91
  146. package/lib/exec-feature-hook.js +0 -13
  147. package/lib/exec-validation.js +0 -21
  148. package/lib/generic-prop-sanitizer.js +0 -32
  149. package/lib/handle-attachment-upload.js +0 -16
  150. package/lib/mem-db/conn-sanitizer.js +0 -8
  151. package/lib/mem-db/instantiate.js +0 -41
  152. package/lib/mem-db/method/model/clear.js +0 -6
  153. package/lib/mem-db/method/model/create.js +0 -5
  154. package/lib/mem-db/method/model/drop.js +0 -5
  155. package/lib/mem-db/method/model/exists.js +0 -5
  156. package/lib/mem-db/method/record/create.js +0 -12
  157. package/lib/mem-db/method/record/find.js +0 -20
  158. package/lib/mem-db/method/record/get.js +0 -9
  159. package/lib/mem-db/method/record/remove.js +0 -13
  160. package/lib/mem-db/method/record/update.js +0 -15
  161. package/lib/mem-db/method/stat/count.js +0 -11
  162. package/lib/mem-db/start.js +0 -25
  163. package/lib/merge-attachment-info.js +0 -16
  164. package/lib/multi-rel-rows.js +0 -42
  165. package/lib/resolve-method.js +0 -16
  166. package/lib/sanitize-schema.js +0 -198
  167. package/lib/single-rel-rows.js +0 -38
  168. package/method/attachment/copy-uploaded.js +0 -34
  169. package/method/attachment/create.js +0 -29
  170. package/method/attachment/find.js +0 -27
  171. package/method/attachment/get-path.js +0 -12
  172. package/method/attachment/get.js +0 -12
  173. package/method/attachment/pre-check.js +0 -9
  174. package/method/attachment/remove.js +0 -11
  175. package/method/attachment/update.js +0 -7
  176. package/method/bulk/create.js +0 -46
  177. package/method/model/clear.js +0 -22
  178. package/method/model/create.js +0 -32
  179. package/method/model/drop.js +0 -31
  180. package/method/model/exists.js +0 -37
  181. package/method/record/clear.js +0 -24
  182. package/method/record/count.js +0 -66
  183. package/method/record/create.js +0 -111
  184. package/method/record/find-all.js +0 -41
  185. package/method/record/find-one.js +0 -70
  186. package/method/record/get.js +0 -89
  187. package/method/record/remove.js +0 -72
  188. package/method/record/update.js +0 -104
  189. package/method/record/upsert.js +0 -51
  190. package/method/sanitize/body.js +0 -85
  191. package/method/sanitize/date.js +0 -27
  192. package/method/sanitize/id.js +0 -17
  193. package/method/stat/aggregate.js +0 -23
  194. package/method/stat/histogram.js +0 -26
@@ -1 +1 @@
1
- var hljs=function(){"use strict";var e={exports:{}};function t(n){return n instanceof Map?n.clear=n.delete=n.set=function(){throw new Error("map is read-only")}:n instanceof Set&&(n.add=n.clear=n.delete=function(){throw new Error("set is read-only")}),Object.freeze(n),Object.getOwnPropertyNames(n).forEach(function(e){e=n[e];"object"!=typeof e||Object.isFrozen(e)||t(e)}),n}e.exports=t,e.exports.default=t;var z=e.exports;class D{constructor(e){void 0===e.data&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function n(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;")}function l(e,...n){const t=Object.create(null);for(const a in e)t[a]=e[a];return n.forEach(function(e){for(const n in e)t[n]=e[n]}),t}const a=e=>!!e.kind;class T{constructor(e,n){this.buffer="",this.classPrefix=n.classPrefix,e.walk(this)}addText(e){this.buffer+=n(e)}openNode(n){if(a(n)){let e=n.kind;e=n.sublanguage?"language-"+e:((e,{prefix:n})=>{if(e.includes(".")){const t=e.split(".");return[""+n+t.shift(),...t.map((e,n)=>""+e+"_".repeat(n+1))].join(" ")}return""+n+e})(e,{prefix:this.classPrefix}),this.span(e)}}closeNode(e){a(e)&&(this.buffer+="</span>")}value(){return this.buffer}span(e){this.buffer+=`<span class="${e}">`}}class i{constructor(){this.rootNode={children:[]},this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){e={kind:e,children:[]};this.add(e),this.stack.push(e)}closeNode(){if(1<this.stack.length)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(n,e){return"string"==typeof e?n.addText(e):e.children&&(n.openNode(e),e.children.forEach(e=>this._walk(n,e)),n.closeNode(e)),n}static _collapse(e){"string"!=typeof e&&e.children&&(e.children.every(e=>"string"==typeof e)?e.children=[e.children.join("")]:e.children.forEach(e=>{i._collapse(e)}))}}class L extends i{constructor(e){super(),this.options=e}addKeyword(e,n){""!==e&&(this.openNode(n),this.addText(e),this.closeNode())}addText(e){""!==e&&this.add(e)}addSublanguage(e,n){const t=e.root;t.kind=n,t.sublanguage=!0,this.add(t)}toHTML(){const e=new T(this,this.options);return e.value()}finalize(){return!0}}function c(e){return e?"string"==typeof e?e:e.source:null}function k(e){return O("(?=",e,")")}function O(...e){return e.map(e=>c(e)).join("")}function d(...e){var n,t="object"==typeof(n=(t=e)[t.length-1])&&n.constructor===Object?(t.splice(t.length-1,1),n):{};return"("+(t.capture?"":"?:")+e.map(e=>c(e)).join("|")+")"}function u(e){return new RegExp(e.toString()+"|").exec("").length-1}const I=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function g(e,{joinWith:n}){let r=0;return e.map(e=>{var n=r+=1;let t=c(e),a="";for(;0<t.length;){var i=I.exec(t);if(!i){a+=t;break}a+=t.substring(0,i.index),t=t.substring(i.index+i[0].length),"\\"===i[0][0]&&i[1]?a+="\\"+String(Number(i[1])+n):(a+=i[0],"("===i[0]&&r++)}return a}).map(e=>`(${e})`).join(n)}function r(e,n,t={}){const a=l({scope:"comment",begin:e,end:n,contains:[]},t);return a.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0}),e=d("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/),a.contains.push({begin:O(/[ ]+/,"(",e,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),a}var e="[a-zA-Z]\\w*",s="[a-zA-Z_]\\w*",o="\\b\\d+(\\.\\d+)?",b="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",h="\\b(0b[01]+)",p={begin:"\\\\[\\s\\S]",relevance:0},m={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[p]},f={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[p]},E=r("//","$"),v=r("/\\*","\\*/"),w=r("#","$"),y=Object.freeze({__proto__:null,MATCH_NOTHING_RE:/\b\B/,IDENT_RE:e,UNDERSCORE_IDENT_RE:s,NUMBER_RE:o,C_NUMBER_RE:b,BINARY_NUMBER_RE:h,RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",SHEBANG:(e={})=>{var n=/^#![ ]*\//;return e.binary&&(e.begin=O(n,/.*\b/,e.binary,/\b.*/)),l({scope:"meta",begin:n,end:/$/,relevance:0,"on:begin":(e,n)=>{0!==e.index&&n.ignoreMatch()}},e)},BACKSLASH_ESCAPE:p,APOS_STRING_MODE:m,QUOTE_STRING_MODE:f,PHRASAL_WORDS_MODE:{begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},COMMENT:r,C_LINE_COMMENT_MODE:E,C_BLOCK_COMMENT_MODE:v,HASH_COMMENT_MODE:w,NUMBER_MODE:{scope:"number",begin:o,relevance:0},C_NUMBER_MODE:{scope:"number",begin:b,relevance:0},BINARY_NUMBER_MODE:{scope:"number",begin:h,relevance:0},REGEXP_MODE:{begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[p,{begin:/\[/,end:/\]/,relevance:0,contains:[p]}]}]},TITLE_MODE:{scope:"title",begin:e,relevance:0},UNDERSCORE_TITLE_MODE:{scope:"title",begin:s,relevance:0},METHOD_GUARD:{begin:"\\.\\s*"+s,relevance:0},END_SAME_AS_BEGIN:function(e){return Object.assign(e,{"on:begin":(e,n)=>{n.data._beginMatch=e[1]},"on:end":(e,n)=>{n.data._beginMatch!==e[1]&&n.ignoreMatch()}})}});function $(e,n){"."===e.input[e.index-1]&&n.ignoreMatch()}function P(e,n){void 0!==e.className&&(e.scope=e.className,delete e.className)}function U(e,n){n&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",e.__beforeBegin=$,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,void 0===e.relevance&&(e.relevance=0))}function H(e,n){Array.isArray(e.illegal)&&(e.illegal=d(...e.illegal))}function Z(e,n){if(e.match){if(e.begin||e.end)throw new Error("begin & end are not supported with match");e.begin=e.match,delete e.match}}function G(e,n){void 0===e.relevance&&(e.relevance=1)}const K=(n,e)=>{if(n.beforeMatch){if(n.starts)throw new Error("beforeMatch cannot be used with starts");const t=Object.assign({},n);Object.keys(n).forEach(e=>{delete n[e]}),n.keywords=t.keywords,n.begin=O(t.beforeMatch,k(t.begin)),n.starts={relevance:0,contains:[Object.assign(t,{endsParent:!0})]},n.relevance=0,delete t.beforeMatch}},X=["of","and","for","in","not","or","if","then","parent","list","value"],W="keyword";function _(n,t,e=W){const a=Object.create(null);return"string"==typeof n?i(e,n.split(" ")):Array.isArray(n)?i(e,n):Object.keys(n).forEach(function(e){Object.assign(a,_(n[e],t,e))}),a;function i(n,e){(e=t?e.map(e=>e.toLowerCase()):e).forEach(function(e){e=e.split("|");a[e[0]]=[n,function(e,n){if(n)return Number(n);return function(e){return X.includes(e.toLowerCase())}(e)?0:1}(e[0],e[1])]})}}const N={},j=e=>{console.error(e)},x=(e,...n)=>{console.log("WARN: "+e,...n)},A=(e,n)=>{N[e+"/"+n]||(console.log(`Deprecated as of ${e}. `+n),N[e+"/"+n]=!0)},S=new Error;function M(e,n,{key:t}){let a=0;var i=e[t];const r={},s={};for(let e=1;e<=n.length;e++)s[e+a]=i[e],r[e+a]=!0,a+=u(n[e-1]);e[t]=s,e[t]._emit=r,e[t]._multi=!0}function q(e){(n=e).scope&&"object"==typeof n.scope&&null!==n.scope&&(n.beginScope=n.scope,delete n.scope),"string"==typeof e.beginScope&&(e.beginScope={_wrap:e.beginScope}),"string"==typeof e.endScope&&(e.endScope={_wrap:e.endScope});var n=e;if(Array.isArray(n.begin)){if(n.skip||n.excludeBegin||n.returnBegin)throw j("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),S;if("object"!=typeof n.beginScope||null===n.beginScope)throw j("beginScope must be object"),S;M(n,n.begin,{key:"beginScope"}),n.begin=g(n.begin,{joinWith:""})}n=e;if(Array.isArray(n.end)){if(n.skip||n.excludeEnd||n.returnEnd)throw j("skip, excludeEnd, returnEnd not compatible with endScope: {}"),S;if("object"!=typeof n.endScope||null===n.endScope)throw j("endScope must be object"),S;M(n,n.end,{key:"endScope"}),n.end=g(n.end,{joinWith:""})}}function Q(r){function s(e,n){return new RegExp(c(e),"m"+(r.case_insensitive?"i":"")+(n?"g":""))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(e,n){n.position=this.position++,this.matchIndexes[this.matchAt]=n,this.regexes.push([n,e]),this.matchAt+=u(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null);var e=this.regexes.map(e=>e[1]);this.matcherRe=s(g(e,{joinWith:"|"}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex;const n=this.matcherRe.exec(e);if(!n)return null;var e=n.findIndex((e,n)=>0<n&&void 0!==e),t=this.matchIndexes[e];return n.splice(0,e),Object.assign(n,t)}}class o{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){if(this.multiRegexes[e])return this.multiRegexes[e];const t=new n;return this.rules.slice(e).forEach(([e,n])=>t.addRule(e,n)),t.compile(),this.multiRegexes[e]=t}resumingScanAtSamePosition(){return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,n){this.rules.push([e,n]),"begin"===n.type&&this.count++}exec(e){const n=this.getMatcher(this.regexIndex);n.lastIndex=this.lastIndex;let t=n.exec(e);if(this.resumingScanAtSamePosition()&&(!t||t.index!==this.lastIndex)){const a=this.getMatcher(0);a.lastIndex=this.lastIndex+1,t=a.exec(e)}return t&&(this.regexIndex+=t.position+1,this.regexIndex===this.count&&this.considerAll()),t}}if(r.compilerExtensions||(r.compilerExtensions=[]),r.contains&&r.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return r.classNameAliases=l(r.classNameAliases||{}),function n(t,a){const i=t;if(!t.isCompiled){[P,Z,q,K].forEach(e=>e(t,a)),r.compilerExtensions.forEach(e=>e(t,a)),t.__beforeBegin=null,[U,H,G].forEach(e=>e(t,a)),t.isCompiled=!0;let e=null;"object"==typeof t.keywords&&t.keywords.$pattern&&(t.keywords=Object.assign({},t.keywords),e=t.keywords.$pattern,delete t.keywords.$pattern),e=e||/\w+/,t.keywords&&(t.keywords=_(t.keywords,r.case_insensitive)),i.keywordPatternRe=s(e,!0),a&&(t.begin||(t.begin=/\B|\b/),i.beginRe=s(t.begin),t.end||t.endsWithParent||(t.end=/\B|\b/),t.end&&(i.endRe=s(t.end)),i.terminatorEnd=c(t.end)||"",t.endsWithParent&&a.terminatorEnd&&(i.terminatorEnd+=(t.end?"|":"")+a.terminatorEnd)),t.illegal&&(i.illegalRe=s(t.illegal)),t.contains||(t.contains=[]),t.contains=[].concat(...t.contains.map(function(e){var n="self"===e?t:e;return n.variants&&!n.cachedVariants&&(n.cachedVariants=n.variants.map(function(e){return l(n,{variants:null},e)})),n.cachedVariants||(function e(n){return!!n&&(n.endsWithParent||e(n.starts))}(n)?l(n,{starts:n.starts?l(n.starts):null}):Object.isFrozen(n)?l(n):n)})),t.contains.forEach(function(e){n(e,i)}),t.starts&&n(t.starts,a),i.matcher=function(e){const n=new o;return e.contains.forEach(e=>n.addRule(e.begin,{rule:e,type:"begin"})),e.terminatorEnd&&n.addRule(e.terminatorEnd,{type:"end"}),e.illegal&&n.addRule(e.illegal,{type:"illegal"}),n}(i)}return i}(r)}const C=n,F=l,J=Symbol("nomatch");m=function(a){const O=Object.create(null),r=Object.create(null),i=[];let S=!0;const M="Could not find the language '{}', did you forget to load/include a language module?",s={disableAutodetect:!0,name:"Plain text",contains:[]};let R={ignoreUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:L};function o(e){return R.noHighlightRe.test(e)}function l(e,n,t,a){let i="",r="";"object"==typeof n?(i=e,t=n.ignoreIllegals,r=n.language,a=void 0):(A("10.7.0","highlight(lang, code, ...args) has been deprecated."),A("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"),r=e,i=n),void 0===t&&(t=!0);e={code:i,language:r};u("before:highlight",e);const s=e.result||B(e.language,e.code,t,a);return s.code=e.code,u("after:highlight",s),s}function B(r,s,o,e){const l=Object.create(null);function c(){if(m.keywords){let e=0,n=(m.keywordPatternRe.lastIndex=0,m.keywordPatternRe.exec(v)),t="";for(;n;){t+=v.substring(e,n.index);var a=p.case_insensitive?n[0].toLowerCase():n[0],i=m.keywords[a];if(i){const[r,s]=i;E.addText(t),t="",l[a]=(l[a]||0)+1,l[a]<=7&&(w+=s),r.startsWith("_")?t+=n[0]:(i=p.classNameAliases[r]||r,E.addKeyword(n[0],i))}else t+=n[0];e=m.keywordPatternRe.lastIndex,n=m.keywordPatternRe.exec(v)}t+=v.substr(e),E.addText(t)}else E.addText(v)}function d(){(null!=m.subLanguage?function(){if(""!==v){let e=null;if("string"==typeof m.subLanguage){if(!O[m.subLanguage])return E.addText(v);e=B(m.subLanguage,v,!0,f[m.subLanguage]),f[m.subLanguage]=e._top}else e=T(v,m.subLanguage.length?m.subLanguage:null);0<m.relevance&&(w+=e.relevance),E.addSublanguage(e._emitter,e.language)}}:c)(),v=""}function i(e,n){let t=1;for(;void 0!==n[t];){var a,i;e._emit[t]?(a=p.classNameAliases[e[t]]||e[t],i=n[t],a?E.addKeyword(i,a):(v=i,c(),v=""),t++):t++}}function u(e,n){e.scope&&"string"==typeof e.scope&&E.openNode(p.classNameAliases[e.scope]||e.scope),e.beginScope&&(e.beginScope._wrap?(E.addKeyword(v,p.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap),v=""):e.beginScope._multi&&(i(e.beginScope,n),v="")),m=Object.create(e,{parent:{value:m}})}function g(e){var n,t=e[0],a=e.rule,i=new D(a);for(const r of[a.__beforeBegin,a["on:begin"]])if(r&&(r(e,i),i.isMatchIgnored))return n=t,0===m.matcher.regexIndex?(v+=n[0],1):(N=!0,0);return a.skip?v+=t:(a.excludeBegin&&(v+=t),d(),a.returnBegin||a.excludeBegin||(v=t)),u(a,e),a.returnBegin?0:t.length}function b(e){var n=e[0],t=s.substr(e.index),a=function e(n,t,a){r=n.endRe,s=a;let i=(r=r&&r.exec(s))&&0===r.index;var r,s;if(i&&(n["on:end"]&&(s=new D(n),n["on:end"](t,s),s.isMatchIgnored&&(i=!1)),i)){for(;n.endsParent&&n.parent;)n=n.parent;return n}if(n.endsWithParent)return e(n.parent,t,a)}(m,e,t);if(!a)return J;t=m;for(m.endScope&&m.endScope._wrap?(d(),E.addKeyword(n,m.endScope._wrap)):m.endScope&&m.endScope._multi?(d(),i(m.endScope,e)):t.skip?v+=n:(t.returnEnd||t.excludeEnd||(v+=n),d(),t.excludeEnd&&(v=n));m.scope&&!m.isMultiClass&&E.closeNode(),m.skip||m.subLanguage||(w+=m.relevance),(m=m.parent)!==a.parent;);return a.starts&&u(a.starts,e),t.returnEnd?0:n.length}let h={};function n(e,n){var t=n&&n[0];if(v+=e,null==t)return d(),0;if("begin"===h.type&&"end"===n.type&&h.index===n.index&&""===t){if(v+=s.slice(n.index,n.index+1),S)return 1;{const a=new Error(`0 width match regex (${r})`);throw a.languageName=r,a.badRule=h.rule,a}}if("begin"===(h=n).type)return g(n);if("illegal"===n.type&&!o){const i=new Error('Illegal lexeme "'+t+'" for mode "'+(m.scope||"<unnamed>")+'"');throw i.mode=m,i}if("end"===n.type){e=b(n);if(e!==J)return e}if("illegal"===n.type&&""===t)return 1;if(1e5<_&&_>3*n.index)throw new Error("potential infinite loop, way more iterations than matches");return v+=t,t.length}const p=I(r);if(!p)throw j(M.replace("{}",r)),new Error('Unknown language: "'+r+'"');var t=Q(p);let a="",m=e||t;const f={},E=new R.__emitter(R);{const k=[];for(let e=m;e!==p;e=e.parent)e.scope&&k.unshift(e.scope);k.forEach(e=>E.openNode(e))}let v="",w=0,y=0,_=0,N=!1;try{for(m.matcher.considerAll();;){_++,N?N=!1:m.matcher.considerAll(),m.matcher.lastIndex=y;var x=m.matcher.exec(s);if(!x)break;var A=n(s.substring(y,x.index),x);y=x.index+A}return n(s.substr(y)),E.closeAllNodes(),E.finalize(),a=E.toHTML(),{language:r,value:a,relevance:w,illegal:!1,_emitter:E,_top:m}}catch(e){if(e.message&&e.message.includes("Illegal"))return{language:r,value:C(s),illegal:!0,relevance:0,_illegalBy:{message:e.message,index:y,context:s.slice(y-100,y+100),mode:e.mode,resultSoFar:a},_emitter:E};if(S)return{language:r,value:C(s),illegal:!1,relevance:0,errorRaised:e,_emitter:E,_top:m};throw e}}function T(n,e){e=e||R.languages||Object.keys(O);var t=function(e){const n={value:C(e),illegal:!1,relevance:0,_top:s,_emitter:new R.__emitter(R)};return n._emitter.addText(e),n}(n);const a=e.filter(I).filter(d).map(e=>B(e,n,!1));a.unshift(t);var[e,t]=a.sort((e,n)=>{if(e.relevance!==n.relevance)return n.relevance-e.relevance;if(e.language&&n.language){if(I(e.language).supersetOf===n.language)return 1;if(I(n.language).supersetOf===e.language)return-1}return 0});const i=e;return i.secondBest=t,i}function n(e){var n,t,a,i=function(e){let n=e.className+" ";n+=e.parentNode?e.parentNode.className:"";var t,a=R.languageDetectRe.exec(n);return a?((t=I(a[1]))||(x(M.replace("{}",a[1])),x("Falling back to no-highlight mode for this block.",e)),t?a[1]:"no-highlight"):n.split(/\s+/).find(e=>o(e)||I(e))}(e);o(i)||(u("before:highlightElement",{el:e,language:i}),!R.ignoreUnescapedHTML&&0<e.children.length&&(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/issues/2886"),console.warn(e)),t=e.textContent,u("after:highlightElement",{el:e,result:n=i?l(t,{language:i,ignoreIllegals:!0}):T(t),text:t}),e.innerHTML=n.value,t=e,i=i,a=n.language,i=i&&r[i]||a,t.classList.add("hljs"),t.classList.add("language-"+i),e.result={language:n.language,re:n.relevance,relevance:n.relevance},n.secondBest&&(e.secondBest={language:n.secondBest.language,relevance:n.secondBest.relevance}))}let t=!1;function e(){if("loading"===document.readyState)t=!0;else{const e=document.querySelectorAll(R.cssSelector);e.forEach(n)}}function I(e){return e=(e||"").toLowerCase(),O[e]||O[r[e]]}function c(e,{languageName:n}){(e="string"==typeof e?[e]:e).forEach(e=>{r[e.toLowerCase()]=n})}function d(e){e=I(e);return e&&!e.disableAutodetect}function u(e,n){const t=e;i.forEach(function(e){e[t]&&e[t](n)})}"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("DOMContentLoaded",function(){t&&e()},!1),Object.assign(a,{highlight:l,highlightAuto:T,highlightAll:e,highlightElement:n,highlightBlock:function(e){return A("10.7.0","highlightBlock will be removed entirely in v12.0"),A("10.7.0","Please use highlightElement now."),n(e)},configure:function(e){R=F(R,e)},initHighlighting:()=>{e(),A("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")},initHighlightingOnLoad:function(){e(),A("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")},registerLanguage:function(n,e){let t=null;try{t=e(a)}catch(e){if(j("Language definition for '{}' could not be registered.".replace("{}",n)),!S)throw e;j(e),t=s}t.name||(t.name=n),(O[n]=t).rawDefinition=e.bind(null,a),t.aliases&&c(t.aliases,{languageName:n})},unregisterLanguage:function(e){delete O[e];for(const n of Object.keys(r))r[n]===e&&delete r[n]},listLanguages:function(){return Object.keys(O)},getLanguage:I,registerAliases:c,autoDetection:d,inherit:F,addPlugin:function(e){var n;(n=e)["before:highlightBlock"]&&!n["before:highlightElement"]&&(n["before:highlightElement"]=e=>{n["before:highlightBlock"](Object.assign({block:e.el},e))}),n["after:highlightBlock"]&&!n["after:highlightElement"]&&(n["after:highlightElement"]=e=>{n["after:highlightBlock"](Object.assign({block:e.el},e))}),i.push(e)}}),a.debugMode=function(){S=!1},a.safeMode=function(){S=!0},a.versionString="11.0.0-beta1";for(const g in y)"object"==typeof y[g]&&z(y[g]);return Object.assign(a,y),a}({});const V=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],Y=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],ee=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],ne=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],te=["align-content","align-items","align-self","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","auto","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","clip-path","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-variant","font-variant-ligatures","font-variation-settings","font-weight","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inherit","initial","justify-content","left","letter-spacing","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","max-height","max-width","min-height","min-width","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","perspective","perspective-origin","pointer-events","position","quotes","resize","right","src","tab-size","table-layout","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-indent","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","white-space","widows","width","word-break","word-spacing","word-wrap","z-index"].reverse();ee.concat(ne);const R="[A-Za-z$_][0-9A-Za-z$_]*",ae=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],ie=["true","false","null","undefined","NaN","Infinity"],re=["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer","BigInt64Array","BigUint64Array","BigInt"],se=["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],oe=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],le=["arguments","this","super","console","window","document","localStorage","module","global"],ce=[].concat(oe,re,se);function de(e){var n=R;const t="<>",a="</>",i=/<[A-Za-z0-9\\._:-]+/,r=/\/[A-Za-z0-9\\._:-]+>|\/>/,s=(e,n)=>{var t=e[0].length+e.index,a=e.input[t];"<"===a?n.ignoreMatch():">"===a&&([a,e]=[e,{after:t}["after"]],t="</"+a[0].slice(1),-1===a.input.indexOf(t,e)&&n.ignoreMatch())};var o={$pattern:R,keyword:ae,literal:ie,built_in:ce,"variable.language":le},l="[0-9](_?[0-9])*",c=`\\.(${l})`,d="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",l={className:"number",variants:[{begin:`(\\b(${d})((${c})|\\.)?|(${c}))`+`[eE][+-]?(${l})\\b`},{begin:`\\b(${d})\\b((${c})\\b|\\.)?|(${c})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0};const u={className:"subst",begin:"\\$\\{",end:"\\}",keywords:o,contains:[]};var d={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,u],subLanguage:"xml"}},c={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,u],subLanguage:"css"}},g={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,u]},b={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:n+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]};const h=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,d,c,g,l,e.REGEXP_MODE],p=(u.contains=h.concat({begin:/\{/,end:/\}/,keywords:o,contains:["self"].concat(h)}),[].concat(b,u.contains));var m=p.concat([{begin:/\(/,end:/\)/,keywords:o,contains:["self"].concat(p)}]),f={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:o,contains:m},E={variants:[{match:[/class/,/\s+/,n],scope:{1:"keyword",3:"title.class"}},{match:[/extends/,/\s+/,O(n,"(",O(/\./,n),")*")],scope:{1:"keyword",3:"title.class.inherited"}}]},v={relevance:0,match:/\b[A-Z][a-z]+([A-Z][a-z]+)*/,className:"title.class",keywords:{_:[...re,...se]}},w={variants:[{match:[/function/,/\s+/,n,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[f],illegal:/%/};var y={match:O(/\b/,O("(?!",[...oe,"super"].join("|"),")"),n,k(/\(/)),className:"title.function",relevance:0},_={begin:O(/\./,k(O(n,/(?![0-9A-Za-z$_(])/))),end:n,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},N={match:[/get|set/,/\s+/,n,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},f]},x="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",A={match:[/const|var|let/,/\s+/,n,/\s*/,/=\s*/,k(x)],className:{1:"keyword",3:"title.function"},contains:[f]};return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:o,exports:{PARAMS_CONTAINS:m},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),{label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,d,c,g,b,l,v,{className:"attr",begin:n+k(":"),relevance:0},A,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[b,e.REGEXP_MODE,{className:"function",begin:x,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:o,contains:m}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:t,end:a},{begin:i,"on:begin":s,end:r}],subLanguage:"xml",contains:[{begin:i,end:r,skip:!0,contains:["self"]}]}]},w,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[f,e.inherit(e.TITLE_MODE,{begin:n,className:"title.function"})]},{match:/\.\.\./,relevance:0},_,{match:"\\$"+n,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[f]},y,{relevance:0,match:/\b[A-Z][A-Z_]+\b/,className:"variable.constant"},E,N,{match:/\$[(.]/}]}}function ue(e){var n={beginKeywords:["true","false","null"].join(" ")};return{name:"JSON",contains:[{className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},{match:/[{}[\],:]/,className:"punctuation",relevance:0},e.QUOTE_STRING_MODE,n,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}function ge(e){var n={IMPORTANT:{scope:"meta",begin:"!important"},HEXCOLOR:{scope:"number",begin:"#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})"},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0}};const t=ne,a=ee;var i="@[a-z-]+",r={className:"variable",begin:"(\\$[a-zA-Z-][a-zA-Z0-9_-]*)\\b"};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},n.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+V.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+a.join("|")+")"},{className:"selector-pseudo",begin:"::("+t.join("|")+")"},r,{begin:/\(/,end:/\)/,contains:[n.CSS_NUMBER_MODE]},{className:"attribute",begin:"\\b("+te.join("|")+")\\b"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:":",end:";",contains:[r,n.HEXCOLOR,n.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,n.IMPORTANT]},{begin:"@(page|font-face)",keywords:{$pattern:i,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:"and or not only",attribute:Y.join(" ")},contains:[{begin:i,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},r,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,n.HEXCOLOR,n.CSS_NUMBER_MODE]}]}}f=e=>O(/\b/,e,/\w$/.test(e)?/\b/:/\B/),["Protocol","Type"].map(f),["init","self"].map(f),E=d(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),O(E,d(E,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),"*"),v=d(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),w=d(v,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),o=O(v,w,"*");O(/[A-Z]/,w,"*"),O(/convention\(/,d("swift","block","c"),/\)/),O(/objc\(/,o,/\)/);var be=Object.freeze({__proto__:null,grmr_bash:function(e){var n={},t={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[n]}]};Object.assign(n,{className:"variable",variants:[{begin:O(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},t]});const a={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]};var t={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},i={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,n,a]},r=(a.contains.push(i),{begin:/\$\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,n]}),s=e.SHEBANG({binary:`(${["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"].join("|")})`,relevance:10}),o={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{name:"Bash",aliases:["sh"],keywords:{$pattern:/\b[a-z._-]+\b/,keyword:["if","then","else","elif","fi","for","while","in","do","done","case","esac","function"],literal:["true","false"],built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp"},contains:[s,e.SHEBANG(),o,r,e.HASH_COMMENT_MODE,t,i,{className:"",begin:/\\"/},{className:"string",begin:/'/,end:/'/},n]}},grmr_scss:ge,grmr_css:ge,grmr_javascript:de,grmr_json:ue,grmr_json5:ue,grmr_xml:function(e){var n=O(/[A-Z_]/,O("(?:",/[A-Z0-9_.-]*:/,")?"),/[A-Z0-9_.-]*/),t={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},a={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},i=e.inherit(a,{begin:/\(/,end:/\)/}),r=e.inherit(e.APOS_STRING_MODE,{className:"string"}),s=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),o={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:/[A-Za-z0-9._:-]+/,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[t]},{begin:/'/,end:/'/,contains:[t]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[a,s,r,i,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[a,i,s,r]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},t,{className:"meta",begin:/<\?xml/,end:/\?>/,relevance:10},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[o],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[o],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:O(/</,k(O(n,d(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:n,relevance:0,starts:o}]},{className:"tag",begin:O(/<\//,k(O(n,/>/))),contains:[{className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}},grmr_markdown:function(e){var n={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},t={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:O(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.+?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]};const a={className:"strong",contains:[],variants:[{begin:/_{2}/,end:/_{2}/},{begin:/\*{2}/,end:/\*{2}/}]},i={className:"emphasis",contains:[],variants:[{begin:/\*(?!\*)/,end:/\*/},{begin:/_(?!_)/,end:/_/,relevance:0}]};a.contains.push(i),i.contains.push(a);let r=[n,t];a.contains=a.contains.concat(r),i.contains=i.contains.concat(r);var s={className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:r=r.concat(a,i)},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:r}]}]},o={className:"quote",begin:"^>\\s+",contains:r,end:"$"};return{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[s,n,{className:"bullet",begin:"^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},a,i,o,{className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},{begin:"^[-\\*]{3,}",end:"$"},t,{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]}]}},grmr_plaintext:function(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}},grmr_shell:function(e){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}},grmr_typescript:function(e){R;var n={$pattern:R,keyword:ae.concat(["type","namespace","typedef","interface","public","private","protected","implements","declare","abstract","readonly"]),literal:ie,built_in:ce.concat(["any","void","number","boolean","string","object","never","enum"]),"variable.language":le},t={className:"meta",begin:"@[A-Za-z$_][0-9A-Za-z$_]*"},a=(e,n,t)=>{var a=e.contains.findIndex(e=>e.label===n);if(-1===a)throw new Error("can not find mode to replace");e.contains.splice(a,1,t)};const i=de(e),r=(Object.assign(i.keywords,n),i.exports.PARAMS_CONTAINS.push(t),i.contains=i.contains.concat([t,{beginKeywords:"namespace",end:/\{/,excludeEnd:!0},{beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:"interface extends"}]),a(i,"shebang",e.SHEBANG()),a(i,"use_strict",{className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/}),i.contains.find(e=>"func.def"===e.label));return r.relevance=0,Object.assign(i,{name:"TypeScript",aliases:["ts","tsx"]}),i},grmr_yaml:function(e){var n="true false yes no null",t="[\\w#;/?:@&=+$,.~*'()[\\]]+",a={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,{className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]}]},i=e.inherit(a,{variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]});const r={end:",",endsWithParent:!0,excludeEnd:!0,keywords:n,relevance:0};var s={begin:/\{/,end:/\}/,contains:[r],illegal:"\\n",relevance:0},o={begin:"\\[",end:"\\]",contains:[r],illegal:"\\n",relevance:0};const l=[...t=[{className:"attr",variants:[{begin:"\\w[\\w :\\/.-]*:(?=[ \t]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ \t]|$)'},{begin:"'\\w[\\w :\\/.-]*':(?=[ \t]|$)"}]},{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+t},{className:"type",begin:"!<"+t+">"},{className:"type",begin:"!"+t},{className:"type",begin:"!!"+t},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:n,keywords:{literal:n}},{className:"number",begin:"\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b"},{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},s,o,a]];return l.pop(),l.push(i),r.contains=l,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:t}}});const he=m;for(const B of Object.keys(be)){var pe=B.replace("grmr_","");he.registerLanguage(pe,be[B])}return he}();"object"==typeof exports&&"undefined"!=typeof module&&(module.exports=hljs);
1
+ const hljs = (function () { 'use strict'; var e = { exports: {} }; function t (n) { return n instanceof Map ? n.clear = n.delete = n.set = function () { throw new Error('map is read-only') } : n instanceof Set && (n.add = n.clear = n.delete = function () { throw new Error('set is read-only') }), Object.freeze(n), Object.getOwnPropertyNames(n).forEach(function (e) { e = n[e]; typeof e !== 'object' || Object.isFrozen(e) || t(e) }), n }e.exports = t, e.exports.default = t; const z = e.exports; class D {constructor (e) { void 0 === e.data && (e.data = {}), this.data = e.data, this.isMatchIgnored = !1 }ignoreMatch () { this.isMatchIgnored = !0 }} function n (e) { return e.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;').replace(/'/g, '&#x27;') } function l (e, ...n) { const t = Object.create(null); for (const a in e)t[a] = e[a]; return n.forEach(function (e) { for (const n in e)t[n] = e[n] }), t } const a = e => !!e.kind; class T {constructor (e, n) { this.buffer = '', this.classPrefix = n.classPrefix, e.walk(this) }addText (e) { this.buffer += n(e) }openNode (n) { if (a(n)) { let e = n.kind; e = n.sublanguage ? 'language-' + e : ((e, { prefix: n }) => { if (e.includes('.')) { const t = e.split('.'); return ['' + n + t.shift(), ...t.map((e, n) => '' + e + '_'.repeat(n + 1))].join(' ') } return '' + n + e })(e, { prefix: this.classPrefix }), this.span(e) } }closeNode (e) { a(e) && (this.buffer += '</span>') }value () { return this.buffer }span (e) { this.buffer += `<span class="${e}">` }} class i {constructor () { this.rootNode = { children: [] }, this.stack = [this.rootNode] } get top () { return this.stack[this.stack.length - 1] } get root () { return this.rootNode }add (e) { this.top.children.push(e) }openNode (e) { e = { kind: e, children: [] }; this.add(e), this.stack.push(e) }closeNode () { if (this.stack.length > 1) return this.stack.pop() }closeAllNodes () { for (;this.closeNode();); }toJSON () { return JSON.stringify(this.rootNode, null, 4) }walk (e) { return this.constructor._walk(e, this.rootNode) } static _walk (n, e) { return typeof e === 'string' ? n.addText(e) : e.children && (n.openNode(e), e.children.forEach(e => this._walk(n, e)), n.closeNode(e)), n } static _collapse (e) { typeof e !== 'string' && e.children && (e.children.every(e => typeof e === 'string') ? e.children = [e.children.join('')] : e.children.forEach(e => { i._collapse(e) })) }} class L extends i {constructor (e) { super(), this.options = e }addKeyword (e, n) { e !== '' && (this.openNode(n), this.addText(e), this.closeNode()) }addText (e) { e !== '' && this.add(e) }addSublanguage (e, n) { const t = e.root; t.kind = n, t.sublanguage = !0, this.add(t) }toHTML () { const e = new T(this, this.options); return e.value() }finalize () { return !0 }} function c (e) { return e ? typeof e === 'string' ? e : e.source : null } function k (e) { return O('(?=', e, ')') } function O (...e) { return e.map(e => c(e)).join('') } function d (...e) { let n; var t = typeof (n = (t = e)[t.length - 1]) === 'object' && n.constructor === Object ? (t.splice(t.length - 1, 1), n) : {}; return '(' + (t.capture ? '' : '?:') + e.map(e => c(e)).join('|') + ')' } function u (e) { return new RegExp(e.toString() + '|').exec('').length - 1 } const I = /\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./; function g (e, { joinWith: n }) { let r = 0; return e.map(e => { const n = r += 1; let t = c(e); let a = ''; for (;t.length > 0;) { const i = I.exec(t); if (!i) { a += t; break }a += t.substring(0, i.index), t = t.substring(i.index + i[0].length), i[0][0] === '\\' && i[1] ? a += '\\' + String(Number(i[1]) + n) : (a += i[0], i[0] === '(' && r++) } return a }).map(e => `(${e})`).join(n) } function r (e, n, t = {}) { const a = l({ scope: 'comment', begin: e, end: n, contains: [] }, t); return a.contains.push({ scope: 'doctag', begin: '[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)', end: /(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/, excludeBegin: !0, relevance: 0 }), e = d('I', 'a', 'is', 'so', 'us', 'to', 'at', 'if', 'in', 'it', 'on', /[A-Za-z]+['](d|ve|re|ll|t|s|n)/, /[A-Za-z]+[-][a-z]+/, /[A-Za-z][a-z]{2,}/), a.contains.push({ begin: O(/[ ]+/, '(', e, /[.]?[:]?([.][ ]|[ ])/, '){3}') }), a } var e = '[a-zA-Z]\\w*'; const s = '[a-zA-Z_]\\w*'; let o = '\\b\\d+(\\.\\d+)?'; const b = '(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)'; const h = '\\b(0b[01]+)'; const p = { begin: '\\\\[\\s\\S]', relevance: 0 }; let m = { scope: 'string', begin: "'", end: "'", illegal: '\\n', contains: [p] }; let f = { scope: 'string', begin: '"', end: '"', illegal: '\\n', contains: [p] }; let E = r('//', '$'); let v = r('/\\*', '\\*/'); let w = r('#', '$'); const y = Object.freeze({ __proto__: null, MATCH_NOTHING_RE: /\b\B/, IDENT_RE: e, UNDERSCORE_IDENT_RE: s, NUMBER_RE: o, C_NUMBER_RE: b, BINARY_NUMBER_RE: h, RE_STARTERS_RE: '!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~', SHEBANG: (e = {}) => { const n = /^#![ ]*\//; return e.binary && (e.begin = O(n, /.*\b/, e.binary, /\b.*/)), l({ scope: 'meta', begin: n, end: /$/, relevance: 0, 'on:begin': (e, n) => { e.index !== 0 && n.ignoreMatch() } }, e) }, BACKSLASH_ESCAPE: p, APOS_STRING_MODE: m, QUOTE_STRING_MODE: f, PHRASAL_WORDS_MODE: { begin: /\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/ }, COMMENT: r, C_LINE_COMMENT_MODE: E, C_BLOCK_COMMENT_MODE: v, HASH_COMMENT_MODE: w, NUMBER_MODE: { scope: 'number', begin: o, relevance: 0 }, C_NUMBER_MODE: { scope: 'number', begin: b, relevance: 0 }, BINARY_NUMBER_MODE: { scope: 'number', begin: h, relevance: 0 }, REGEXP_MODE: { begin: /(?=\/[^/\n]*\/)/, contains: [{ scope: 'regexp', begin: /\//, end: /\/[gimuy]*/, illegal: /\n/, contains: [p, { begin: /\[/, end: /\]/, relevance: 0, contains: [p] }] }] }, TITLE_MODE: { scope: 'title', begin: e, relevance: 0 }, UNDERSCORE_TITLE_MODE: { scope: 'title', begin: s, relevance: 0 }, METHOD_GUARD: { begin: '\\.\\s*' + s, relevance: 0 }, END_SAME_AS_BEGIN: function (e) { return Object.assign(e, { 'on:begin': (e, n) => { n.data._beginMatch = e[1] }, 'on:end': (e, n) => { n.data._beginMatch !== e[1] && n.ignoreMatch() } }) } }); function $ (e, n) { e.input[e.index - 1] === '.' && n.ignoreMatch() } function P (e, n) { void 0 !== e.className && (e.scope = e.className, delete e.className) } function U (e, n) { n && e.beginKeywords && (e.begin = '\\b(' + e.beginKeywords.split(' ').join('|') + ')(?!\\.)(?=\\b|\\s)', e.__beforeBegin = $, e.keywords = e.keywords || e.beginKeywords, delete e.beginKeywords, void 0 === e.relevance && (e.relevance = 0)) } function H (e, n) { Array.isArray(e.illegal) && (e.illegal = d(...e.illegal)) } function Z (e, n) { if (e.match) { if (e.begin || e.end) throw new Error('begin & end are not supported with match'); e.begin = e.match, delete e.match } } function G (e, n) { void 0 === e.relevance && (e.relevance = 1) } const K = (n, e) => { if (n.beforeMatch) { if (n.starts) throw new Error('beforeMatch cannot be used with starts'); const t = Object.assign({}, n); Object.keys(n).forEach(e => { delete n[e] }), n.keywords = t.keywords, n.begin = O(t.beforeMatch, k(t.begin)), n.starts = { relevance: 0, contains: [Object.assign(t, { endsParent: !0 })] }, n.relevance = 0, delete t.beforeMatch } }; const X = ['of', 'and', 'for', 'in', 'not', 'or', 'if', 'then', 'parent', 'list', 'value']; const W = 'keyword'; function _ (n, t, e = W) { const a = Object.create(null); return typeof n === 'string' ? i(e, n.split(' ')) : Array.isArray(n) ? i(e, n) : Object.keys(n).forEach(function (e) { Object.assign(a, _(n[e], t, e)) }), a; function i (n, e) { (e = t ? e.map(e => e.toLowerCase()) : e).forEach(function (e) { e = e.split('|'); a[e[0]] = [n, (function (e, n) { if (n) return Number(n); return (function (e) { return X.includes(e.toLowerCase()) }(e)) ? 0 : 1 }(e[0], e[1]))] }) } } const N = {}; const j = e => { console.error(e) }; const x = (e, ...n) => { console.log('WARN: ' + e, ...n) }; const A = (e, n) => { N[e + '/' + n] || (console.log(`Deprecated as of ${e}. ` + n), N[e + '/' + n] = !0) }; const S = new Error(); function M (e, n, { key: t }) { let a = 0; const i = e[t]; const r = {}; const s = {}; for (let e = 1; e <= n.length; e++)s[e + a] = i[e], r[e + a] = !0, a += u(n[e - 1]); e[t] = s, e[t]._emit = r, e[t]._multi = !0 } function q (e) { (n = e).scope && typeof n.scope === 'object' && n.scope !== null && (n.beginScope = n.scope, delete n.scope), typeof e.beginScope === 'string' && (e.beginScope = { _wrap: e.beginScope }), typeof e.endScope === 'string' && (e.endScope = { _wrap: e.endScope }); var n = e; if (Array.isArray(n.begin)) { if (n.skip || n.excludeBegin || n.returnBegin) throw j('skip, excludeBegin, returnBegin not compatible with beginScope: {}'), S; if (typeof n.beginScope !== 'object' || n.beginScope === null) throw j('beginScope must be object'), S; M(n, n.begin, { key: 'beginScope' }), n.begin = g(n.begin, { joinWith: '' }) }n = e; if (Array.isArray(n.end)) { if (n.skip || n.excludeEnd || n.returnEnd) throw j('skip, excludeEnd, returnEnd not compatible with endScope: {}'), S; if (typeof n.endScope !== 'object' || n.endScope === null) throw j('endScope must be object'), S; M(n, n.end, { key: 'endScope' }), n.end = g(n.end, { joinWith: '' }) } } function Q (r) { function s (e, n) { return new RegExp(c(e), 'm' + (r.case_insensitive ? 'i' : '') + (n ? 'g' : '')) } class n {constructor () { this.matchIndexes = {}, this.regexes = [], this.matchAt = 1, this.position = 0 }addRule (e, n) { n.position = this.position++, this.matchIndexes[this.matchAt] = n, this.regexes.push([n, e]), this.matchAt += u(e) + 1 }compile () { this.regexes.length === 0 && (this.exec = () => null); const e = this.regexes.map(e => e[1]); this.matcherRe = s(g(e, { joinWith: '|' }), !0), this.lastIndex = 0 }exec (e) { this.matcherRe.lastIndex = this.lastIndex; const n = this.matcherRe.exec(e); if (!n) return null; var e = n.findIndex((e, n) => n > 0 && void 0 !== e); const t = this.matchIndexes[e]; return n.splice(0, e), Object.assign(n, t) }} class o {constructor () { this.rules = [], this.multiRegexes = [], this.count = 0, this.lastIndex = 0, this.regexIndex = 0 }getMatcher (e) { if (this.multiRegexes[e]) return this.multiRegexes[e]; const t = new n(); return this.rules.slice(e).forEach(([e, n]) => t.addRule(e, n)), t.compile(), this.multiRegexes[e] = t }resumingScanAtSamePosition () { return this.regexIndex !== 0 }considerAll () { this.regexIndex = 0 }addRule (e, n) { this.rules.push([e, n]), n.type === 'begin' && this.count++ }exec (e) { const n = this.getMatcher(this.regexIndex); n.lastIndex = this.lastIndex; let t = n.exec(e); if (this.resumingScanAtSamePosition() && (!t || t.index !== this.lastIndex)) { const a = this.getMatcher(0); a.lastIndex = this.lastIndex + 1, t = a.exec(e) } return t && (this.regexIndex += t.position + 1, this.regexIndex === this.count && this.considerAll()), t }} if (r.compilerExtensions || (r.compilerExtensions = []), r.contains && r.contains.includes('self')) throw new Error('ERR: contains `self` is not supported at the top-level of a language. See documentation.'); return r.classNameAliases = l(r.classNameAliases || {}), (function n (t, a) { const i = t; if (!t.isCompiled) { [P, Z, q, K].forEach(e => e(t, a)), r.compilerExtensions.forEach(e => e(t, a)), t.__beforeBegin = null, [U, H, G].forEach(e => e(t, a)), t.isCompiled = !0; let e = null; typeof t.keywords === 'object' && t.keywords.$pattern && (t.keywords = Object.assign({}, t.keywords), e = t.keywords.$pattern, delete t.keywords.$pattern), e = e || /\w+/, t.keywords && (t.keywords = _(t.keywords, r.case_insensitive)), i.keywordPatternRe = s(e, !0), a && (t.begin || (t.begin = /\B|\b/), i.beginRe = s(t.begin), t.end || t.endsWithParent || (t.end = /\B|\b/), t.end && (i.endRe = s(t.end)), i.terminatorEnd = c(t.end) || '', t.endsWithParent && a.terminatorEnd && (i.terminatorEnd += (t.end ? '|' : '') + a.terminatorEnd)), t.illegal && (i.illegalRe = s(t.illegal)), t.contains || (t.contains = []), t.contains = [].concat(...t.contains.map(function (e) { const n = e === 'self' ? t : e; return n.variants && !n.cachedVariants && (n.cachedVariants = n.variants.map(function (e) { return l(n, { variants: null }, e) })), n.cachedVariants || ((function e (n) { return !!n && (n.endsWithParent || e(n.starts)) }(n)) ? l(n, { starts: n.starts ? l(n.starts) : null }) : Object.isFrozen(n) ? l(n) : n) })), t.contains.forEach(function (e) { n(e, i) }), t.starts && n(t.starts, a), i.matcher = (function (e) { const n = new o(); return e.contains.forEach(e => n.addRule(e.begin, { rule: e, type: 'begin' })), e.terminatorEnd && n.addRule(e.terminatorEnd, { type: 'end' }), e.illegal && n.addRule(e.illegal, { type: 'illegal' }), n }(i)) } return i }(r)) } const C = n; const F = l; const J = Symbol('nomatch'); m = (function (a) { const O = Object.create(null); const r = Object.create(null); const i = []; let S = !0; const M = "Could not find the language '{}', did you forget to load/include a language module?"; const s = { disableAutodetect: !0, name: 'Plain text', contains: [] }; let R = { ignoreUnescapedHTML: !1, noHighlightRe: /^(no-?highlight)$/i, languageDetectRe: /\blang(?:uage)?-([\w-]+)\b/i, classPrefix: 'hljs-', cssSelector: 'pre code', languages: null, __emitter: L }; function o (e) { return R.noHighlightRe.test(e) } function l (e, n, t, a) { let i = ''; let r = ''; typeof n === 'object' ? (i = e, t = n.ignoreIllegals, r = n.language, a = void 0) : (A('10.7.0', 'highlight(lang, code, ...args) has been deprecated.'), A('10.7.0', 'Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277'), r = e, i = n), void 0 === t && (t = !0); e = { code: i, language: r }; u('before:highlight', e); const s = e.result || B(e.language, e.code, t, a); return s.code = e.code, u('after:highlight', s), s } function B (r, s, o, e) { const l = Object.create(null); function c () { if (m.keywords) { let e = 0; let n = (m.keywordPatternRe.lastIndex = 0, m.keywordPatternRe.exec(v)); let t = ''; for (;n;) { t += v.substring(e, n.index); const a = p.case_insensitive ? n[0].toLowerCase() : n[0]; let i = m.keywords[a]; if (i) { const [r, s] = i; E.addText(t), t = '', l[a] = (l[a] || 0) + 1, l[a] <= 7 && (w += s), r.startsWith('_') ? t += n[0] : (i = p.classNameAliases[r] || r, E.addKeyword(n[0], i)) } else t += n[0]; e = m.keywordPatternRe.lastIndex, n = m.keywordPatternRe.exec(v) }t += v.substr(e), E.addText(t) } else E.addText(v) } function d () { (m.subLanguage != null ? function () { if (v !== '') { let e = null; if (typeof m.subLanguage === 'string') { if (!O[m.subLanguage]) return E.addText(v); e = B(m.subLanguage, v, !0, f[m.subLanguage]), f[m.subLanguage] = e._top } else e = T(v, m.subLanguage.length ? m.subLanguage : null); m.relevance > 0 && (w += e.relevance), E.addSublanguage(e._emitter, e.language) } } : c)(), v = '' } function i (e, n) { let t = 1; for (;void 0 !== n[t];) { var a, i; e._emit[t] ? (a = p.classNameAliases[e[t]] || e[t], i = n[t], a ? E.addKeyword(i, a) : (v = i, c(), v = ''), t++) : t++ } } function u (e, n) { e.scope && typeof e.scope === 'string' && E.openNode(p.classNameAliases[e.scope] || e.scope), e.beginScope && (e.beginScope._wrap ? (E.addKeyword(v, p.classNameAliases[e.beginScope._wrap] || e.beginScope._wrap), v = '') : e.beginScope._multi && (i(e.beginScope, n), v = '')), m = Object.create(e, { parent: { value: m } }) } function g (e) { let n; const t = e[0]; const a = e.rule; const i = new D(a); for (const r of [a.__beforeBegin, a['on:begin']]) if (r && (r(e, i), i.isMatchIgnored)) return n = t, m.matcher.regexIndex === 0 ? (v += n[0], 1) : (N = !0, 0); return a.skip ? v += t : (a.excludeBegin && (v += t), d(), a.returnBegin || a.excludeBegin || (v = t)), u(a, e), a.returnBegin ? 0 : t.length } function b (e) { const n = e[0]; let t = s.substr(e.index); const a = (function e (n, t, a) { r = n.endRe, s = a; let i = (r = r && r.exec(s)) && r.index === 0; let r, s; if (i && (n['on:end'] && (s = new D(n), n['on:end'](t, s), s.isMatchIgnored && (i = !1)), i)) { for (;n.endsParent && n.parent;)n = n.parent; return n } if (n.endsWithParent) return e(n.parent, t, a) }(m, e, t)); if (!a) return J; t = m; for (m.endScope && m.endScope._wrap ? (d(), E.addKeyword(n, m.endScope._wrap)) : m.endScope && m.endScope._multi ? (d(), i(m.endScope, e)) : t.skip ? v += n : (t.returnEnd || t.excludeEnd || (v += n), d(), t.excludeEnd && (v = n)); m.scope && !m.isMultiClass && E.closeNode(), m.skip || m.subLanguage || (w += m.relevance), (m = m.parent) !== a.parent;);return a.starts && u(a.starts, e), t.returnEnd ? 0 : n.length } let h = {}; function n (e, n) { const t = n && n[0]; if (v += e, t == null) return d(), 0; if (h.type === 'begin' && n.type === 'end' && h.index === n.index && t === '') { if (v += s.slice(n.index, n.index + 1), S) return 1; { const a = new Error(`0 width match regex (${r})`); throw a.languageName = r, a.badRule = h.rule, a } } if ((h = n).type === 'begin') return g(n); if (n.type === 'illegal' && !o) { const i = new Error('Illegal lexeme "' + t + '" for mode "' + (m.scope || '<unnamed>') + '"'); throw i.mode = m, i } if (n.type === 'end') { e = b(n); if (e !== J) return e } if (n.type === 'illegal' && t === '') return 1; if (_ > 1e5 && _ > 3 * n.index) throw new Error('potential infinite loop, way more iterations than matches'); return v += t, t.length } const p = I(r); if (!p) throw j(M.replace('{}', r)), new Error('Unknown language: "' + r + '"'); const t = Q(p); let a = ''; let m = e || t; const f = {}; const E = new R.__emitter(R); { const k = []; for (let e = m; e !== p; e = e.parent)e.scope && k.unshift(e.scope); k.forEach(e => E.openNode(e)) } let v = ''; let w = 0; let y = 0; let _ = 0; let N = !1; try { for (m.matcher.considerAll(); ;) { _++, N ? N = !1 : m.matcher.considerAll(), m.matcher.lastIndex = y; const x = m.matcher.exec(s); if (!x) break; const A = n(s.substring(y, x.index), x); y = x.index + A } return n(s.substr(y)), E.closeAllNodes(), E.finalize(), a = E.toHTML(), { language: r, value: a, relevance: w, illegal: !1, _emitter: E, _top: m } } catch (e) { if (e.message && e.message.includes('Illegal')) return { language: r, value: C(s), illegal: !0, relevance: 0, _illegalBy: { message: e.message, index: y, context: s.slice(y - 100, y + 100), mode: e.mode, resultSoFar: a }, _emitter: E }; if (S) return { language: r, value: C(s), illegal: !1, relevance: 0, errorRaised: e, _emitter: E, _top: m }; throw e } } function T (n, e) { e = e || R.languages || Object.keys(O); var t = (function (e) { const n = { value: C(e), illegal: !1, relevance: 0, _top: s, _emitter: new R.__emitter(R) }; return n._emitter.addText(e), n }(n)); const a = e.filter(I).filter(d).map(e => B(e, n, !1)); a.unshift(t); var [e, t] = a.sort((e, n) => { if (e.relevance !== n.relevance) return n.relevance - e.relevance; if (e.language && n.language) { if (I(e.language).supersetOf === n.language) return 1; if (I(n.language).supersetOf === e.language) return -1 } return 0 }); const i = e; return i.secondBest = t, i } function n (e) { let n; let t; let a; let i = (function (e) { let n = e.className + ' '; n += e.parentNode ? e.parentNode.className : ''; let t; const a = R.languageDetectRe.exec(n); return a ? ((t = I(a[1])) || (x(M.replace('{}', a[1])), x('Falling back to no-highlight mode for this block.', e)), t ? a[1] : 'no-highlight') : n.split(/\s+/).find(e => o(e) || I(e)) }(e)); o(i) || (u('before:highlightElement', { el: e, language: i }), !R.ignoreUnescapedHTML && e.children.length > 0 && (console.warn('One of your code blocks includes unescaped HTML. This is a potentially serious security risk.'), console.warn('https://github.com/highlightjs/highlight.js/issues/2886'), console.warn(e)), t = e.textContent, u('after:highlightElement', { el: e, result: n = i ? l(t, { language: i, ignoreIllegals: !0 }) : T(t), text: t }), e.innerHTML = n.value, t = e, i = i, a = n.language, i = i && r[i] || a, t.classList.add('hljs'), t.classList.add('language-' + i), e.result = { language: n.language, re: n.relevance, relevance: n.relevance }, n.secondBest && (e.secondBest = { language: n.secondBest.language, relevance: n.secondBest.relevance })) } let t = !1; function e () { if (document.readyState === 'loading')t = !0; else { const e = document.querySelectorAll(R.cssSelector); e.forEach(n) } } function I (e) { return e = (e || '').toLowerCase(), O[e] || O[r[e]] } function c (e, { languageName: n }) { (e = typeof e === 'string' ? [e] : e).forEach(e => { r[e.toLowerCase()] = n }) } function d (e) { e = I(e); return e && !e.disableAutodetect } function u (e, n) { const t = e; i.forEach(function (e) { e[t] && e[t](n) }) } typeof window !== 'undefined' && window.addEventListener && window.addEventListener('DOMContentLoaded', function () { t && e() }, !1), Object.assign(a, { highlight: l, highlightAuto: T, highlightAll: e, highlightElement: n, highlightBlock: function (e) { return A('10.7.0', 'highlightBlock will be removed entirely in v12.0'), A('10.7.0', 'Please use highlightElement now.'), n(e) }, configure: function (e) { R = F(R, e) }, initHighlighting: () => { e(), A('10.6.0', 'initHighlighting() deprecated. Use highlightAll() now.') }, initHighlightingOnLoad: function () { e(), A('10.6.0', 'initHighlightingOnLoad() deprecated. Use highlightAll() now.') }, registerLanguage: function (n, e) { let t = null; try { t = e(a) } catch (e) { if (j("Language definition for '{}' could not be registered.".replace('{}', n)), !S) throw e; j(e), t = s }t.name || (t.name = n), (O[n] = t).rawDefinition = e.bind(null, a), t.aliases && c(t.aliases, { languageName: n }) }, unregisterLanguage: function (e) { delete O[e]; for (const n of Object.keys(r))r[n] === e && delete r[n] }, listLanguages: function () { return Object.keys(O) }, getLanguage: I, registerAliases: c, autoDetection: d, inherit: F, addPlugin: function (e) { let n; (n = e)['before:highlightBlock'] && !n['before:highlightElement'] && (n['before:highlightElement'] = e => { n['before:highlightBlock'](Object.assign({ block: e.el }, e)) }), n['after:highlightBlock'] && !n['after:highlightElement'] && (n['after:highlightElement'] = e => { n['after:highlightBlock'](Object.assign({ block: e.el }, e)) }), i.push(e) } }), a.debugMode = function () { S = !1 }, a.safeMode = function () { S = !0 }, a.versionString = '11.0.0-beta1'; for (const g in y) typeof y[g] === 'object' && z(y[g]); return Object.assign(a, y), a }({})); const V = ['a', 'abbr', 'address', 'article', 'aside', 'audio', 'b', 'blockquote', 'body', 'button', 'canvas', 'caption', 'cite', 'code', 'dd', 'del', 'details', 'dfn', 'div', 'dl', 'dt', 'em', 'fieldset', 'figcaption', 'figure', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'header', 'hgroup', 'html', 'i', 'iframe', 'img', 'input', 'ins', 'kbd', 'label', 'legend', 'li', 'main', 'mark', 'menu', 'nav', 'object', 'ol', 'p', 'q', 'quote', 'samp', 'section', 'span', 'strong', 'summary', 'sup', 'table', 'tbody', 'td', 'textarea', 'tfoot', 'th', 'thead', 'time', 'tr', 'ul', 'var', 'video']; const Y = ['any-hover', 'any-pointer', 'aspect-ratio', 'color', 'color-gamut', 'color-index', 'device-aspect-ratio', 'device-height', 'device-width', 'display-mode', 'forced-colors', 'grid', 'height', 'hover', 'inverted-colors', 'monochrome', 'orientation', 'overflow-block', 'overflow-inline', 'pointer', 'prefers-color-scheme', 'prefers-contrast', 'prefers-reduced-motion', 'prefers-reduced-transparency', 'resolution', 'scan', 'scripting', 'update', 'width', 'min-width', 'max-width', 'min-height', 'max-height']; const ee = ['active', 'any-link', 'blank', 'checked', 'current', 'default', 'defined', 'dir', 'disabled', 'drop', 'empty', 'enabled', 'first', 'first-child', 'first-of-type', 'fullscreen', 'future', 'focus', 'focus-visible', 'focus-within', 'has', 'host', 'host-context', 'hover', 'indeterminate', 'in-range', 'invalid', 'is', 'lang', 'last-child', 'last-of-type', 'left', 'link', 'local-link', 'not', 'nth-child', 'nth-col', 'nth-last-child', 'nth-last-col', 'nth-last-of-type', 'nth-of-type', 'only-child', 'only-of-type', 'optional', 'out-of-range', 'past', 'placeholder-shown', 'read-only', 'read-write', 'required', 'right', 'root', 'scope', 'target', 'target-within', 'user-invalid', 'valid', 'visited', 'where']; const ne = ['after', 'backdrop', 'before', 'cue', 'cue-region', 'first-letter', 'first-line', 'grammar-error', 'marker', 'part', 'placeholder', 'selection', 'slotted', 'spelling-error']; const te = ['align-content', 'align-items', 'align-self', 'animation', 'animation-delay', 'animation-direction', 'animation-duration', 'animation-fill-mode', 'animation-iteration-count', 'animation-name', 'animation-play-state', 'animation-timing-function', 'auto', 'backface-visibility', 'background', 'background-attachment', 'background-clip', 'background-color', 'background-image', 'background-origin', 'background-position', 'background-repeat', 'background-size', 'border', 'border-bottom', 'border-bottom-color', 'border-bottom-left-radius', 'border-bottom-right-radius', 'border-bottom-style', 'border-bottom-width', 'border-collapse', 'border-color', 'border-image', 'border-image-outset', 'border-image-repeat', 'border-image-slice', 'border-image-source', 'border-image-width', 'border-left', 'border-left-color', 'border-left-style', 'border-left-width', 'border-radius', 'border-right', 'border-right-color', 'border-right-style', 'border-right-width', 'border-spacing', 'border-style', 'border-top', 'border-top-color', 'border-top-left-radius', 'border-top-right-radius', 'border-top-style', 'border-top-width', 'border-width', 'bottom', 'box-decoration-break', 'box-shadow', 'box-sizing', 'break-after', 'break-before', 'break-inside', 'caption-side', 'clear', 'clip', 'clip-path', 'color', 'column-count', 'column-fill', 'column-gap', 'column-rule', 'column-rule-color', 'column-rule-style', 'column-rule-width', 'column-span', 'column-width', 'columns', 'content', 'counter-increment', 'counter-reset', 'cursor', 'direction', 'display', 'empty-cells', 'filter', 'flex', 'flex-basis', 'flex-direction', 'flex-flow', 'flex-grow', 'flex-shrink', 'flex-wrap', 'float', 'font', 'font-display', 'font-family', 'font-feature-settings', 'font-kerning', 'font-language-override', 'font-size', 'font-size-adjust', 'font-smoothing', 'font-stretch', 'font-style', 'font-variant', 'font-variant-ligatures', 'font-variation-settings', 'font-weight', 'height', 'hyphens', 'icon', 'image-orientation', 'image-rendering', 'image-resolution', 'ime-mode', 'inherit', 'initial', 'justify-content', 'left', 'letter-spacing', 'line-height', 'list-style', 'list-style-image', 'list-style-position', 'list-style-type', 'margin', 'margin-bottom', 'margin-left', 'margin-right', 'margin-top', 'marks', 'mask', 'max-height', 'max-width', 'min-height', 'min-width', 'nav-down', 'nav-index', 'nav-left', 'nav-right', 'nav-up', 'none', 'normal', 'object-fit', 'object-position', 'opacity', 'order', 'orphans', 'outline', 'outline-color', 'outline-offset', 'outline-style', 'outline-width', 'overflow', 'overflow-wrap', 'overflow-x', 'overflow-y', 'padding', 'padding-bottom', 'padding-left', 'padding-right', 'padding-top', 'page-break-after', 'page-break-before', 'page-break-inside', 'perspective', 'perspective-origin', 'pointer-events', 'position', 'quotes', 'resize', 'right', 'src', 'tab-size', 'table-layout', 'text-align', 'text-align-last', 'text-decoration', 'text-decoration-color', 'text-decoration-line', 'text-decoration-style', 'text-indent', 'text-overflow', 'text-rendering', 'text-shadow', 'text-transform', 'text-underline-position', 'top', 'transform', 'transform-origin', 'transform-style', 'transition', 'transition-delay', 'transition-duration', 'transition-property', 'transition-timing-function', 'unicode-bidi', 'vertical-align', 'visibility', 'white-space', 'widows', 'width', 'word-break', 'word-spacing', 'word-wrap', 'z-index'].reverse(); ee.concat(ne); const R = '[A-Za-z$_][0-9A-Za-z$_]*'; const ae = ['as', 'in', 'of', 'if', 'for', 'while', 'finally', 'var', 'new', 'function', 'do', 'return', 'void', 'else', 'break', 'catch', 'instanceof', 'with', 'throw', 'case', 'default', 'try', 'switch', 'continue', 'typeof', 'delete', 'let', 'yield', 'const', 'class', 'debugger', 'async', 'await', 'static', 'import', 'from', 'export', 'extends']; const ie = ['true', 'false', 'null', 'undefined', 'NaN', 'Infinity']; const re = ['Intl', 'DataView', 'Number', 'Math', 'Date', 'String', 'RegExp', 'Object', 'Function', 'Boolean', 'Error', 'Symbol', 'Set', 'Map', 'WeakSet', 'WeakMap', 'Proxy', 'Reflect', 'JSON', 'Promise', 'Float64Array', 'Int16Array', 'Int32Array', 'Int8Array', 'Uint16Array', 'Uint32Array', 'Float32Array', 'Array', 'Uint8Array', 'Uint8ClampedArray', 'ArrayBuffer', 'BigInt64Array', 'BigUint64Array', 'BigInt']; const se = ['EvalError', 'InternalError', 'RangeError', 'ReferenceError', 'SyntaxError', 'TypeError', 'URIError']; const oe = ['setInterval', 'setTimeout', 'clearInterval', 'clearTimeout', 'require', 'exports', 'eval', 'isFinite', 'isNaN', 'parseFloat', 'parseInt', 'decodeURI', 'decodeURIComponent', 'encodeURI', 'encodeURIComponent', 'escape', 'unescape']; const le = ['arguments', 'this', 'super', 'console', 'window', 'document', 'localStorage', 'module', 'global']; const ce = [].concat(oe, re, se); function de (e) { const n = R; const t = '<>'; const a = '</>'; const i = /<[A-Za-z0-9\\._:-]+/; const r = /\/[A-Za-z0-9\\._:-]+>|\/>/; const s = (e, n) => { let t = e[0].length + e.index; let a = e.input[t]; a === '<' ? n.ignoreMatch() : a === '>' && ([a, e] = [e, { after: t }.after], t = '</' + a[0].slice(1), a.input.indexOf(t, e) === -1 && n.ignoreMatch()) }; const o = { $pattern: R, keyword: ae, literal: ie, built_in: ce, 'variable.language': le }; var l = '[0-9](_?[0-9])*'; var c = `\\.(${l})`; var d = '0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*'; var l = { className: 'number', variants: [{ begin: `(\\b(${d})((${c})|\\.)?|(${c}))` + `[eE][+-]?(${l})\\b` }, { begin: `\\b(${d})\\b((${c})\\b|\\.)?|(${c})\\b` }, { begin: '\\b(0|[1-9](_?[0-9])*)n\\b' }, { begin: '\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b' }, { begin: '\\b0[bB][0-1](_?[0-1])*n?\\b' }, { begin: '\\b0[oO][0-7](_?[0-7])*n?\\b' }, { begin: '\\b0[0-7]+n?\\b' }], relevance: 0 }; const u = { className: 'subst', begin: '\\$\\{', end: '\\}', keywords: o, contains: [] }; var d = { begin: 'html`', end: '', starts: { end: '`', returnEnd: !1, contains: [e.BACKSLASH_ESCAPE, u], subLanguage: 'xml' } }; var c = { begin: 'css`', end: '', starts: { end: '`', returnEnd: !1, contains: [e.BACKSLASH_ESCAPE, u], subLanguage: 'css' } }; const g = { className: 'string', begin: '`', end: '`', contains: [e.BACKSLASH_ESCAPE, u] }; const b = { className: 'comment', variants: [e.COMMENT(/\/\*\*(?!\/)/, '\\*/', { relevance: 0, contains: [{ begin: '(?=@[A-Za-z]+)', relevance: 0, contains: [{ className: 'doctag', begin: '@[A-Za-z]+' }, { className: 'type', begin: '\\{', end: '\\}', excludeEnd: !0, excludeBegin: !0, relevance: 0 }, { className: 'variable', begin: n + '(?=\\s*(-)|$)', endsParent: !0, relevance: 0 }, { begin: /(?=[^\n])\s/, relevance: 0 }] }] }), e.C_BLOCK_COMMENT_MODE, e.C_LINE_COMMENT_MODE] }; const h = [e.APOS_STRING_MODE, e.QUOTE_STRING_MODE, d, c, g, l, e.REGEXP_MODE]; const p = (u.contains = h.concat({ begin: /\{/, end: /\}/, keywords: o, contains: ['self'].concat(h) }), [].concat(b, u.contains)); const m = p.concat([{ begin: /\(/, end: /\)/, keywords: o, contains: ['self'].concat(p) }]); const f = { className: 'params', begin: /\(/, end: /\)/, excludeBegin: !0, excludeEnd: !0, keywords: o, contains: m }; const E = { variants: [{ match: [/class/, /\s+/, n], scope: { 1: 'keyword', 3: 'title.class' } }, { match: [/extends/, /\s+/, O(n, '(', O(/\./, n), ')*')], scope: { 1: 'keyword', 3: 'title.class.inherited' } }] }; const v = { relevance: 0, match: /\b[A-Z][a-z]+([A-Z][a-z]+)*/, className: 'title.class', keywords: { _: [...re, ...se] } }; const w = { variants: [{ match: [/function/, /\s+/, n, /(?=\s*\()/] }, { match: [/function/, /\s*(?=\()/] }], className: { 1: 'keyword', 3: 'title.function' }, label: 'func.def', contains: [f], illegal: /%/ }; const y = { match: O(/\b/, O('(?!', [...oe, 'super'].join('|'), ')'), n, k(/\(/)), className: 'title.function', relevance: 0 }; const _ = { begin: O(/\./, k(O(n, /(?![0-9A-Za-z$_(])/))), end: n, excludeBegin: !0, keywords: 'prototype', className: 'property', relevance: 0 }; const N = { match: [/get|set/, /\s+/, n, /(?=\()/], className: { 1: 'keyword', 3: 'title.function' }, contains: [{ begin: /\(\)/ }, f] }; const x = '(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|' + e.UNDERSCORE_IDENT_RE + ')\\s*=>'; const A = { match: [/const|var|let/, /\s+/, n, /\s*/, /=\s*/, k(x)], className: { 1: 'keyword', 3: 'title.function' }, contains: [f] }; return { name: 'Javascript', aliases: ['js', 'jsx', 'mjs', 'cjs'], keywords: o, exports: { PARAMS_CONTAINS: m }, illegal: /#(?![$_A-z])/, contains: [e.SHEBANG({ label: 'shebang', binary: 'node', relevance: 5 }), { label: 'use_strict', className: 'meta', relevance: 10, begin: /^\s*['"]use (strict|asm)['"]/ }, e.APOS_STRING_MODE, e.QUOTE_STRING_MODE, d, c, g, b, l, v, { className: 'attr', begin: n + k(':'), relevance: 0 }, A, { begin: '(' + e.RE_STARTERS_RE + '|\\b(case|return|throw)\\b)\\s*', keywords: 'return throw case', relevance: 0, contains: [b, e.REGEXP_MODE, { className: 'function', begin: x, returnBegin: !0, end: '\\s*=>', contains: [{ className: 'params', variants: [{ begin: e.UNDERSCORE_IDENT_RE, relevance: 0 }, { className: null, begin: /\(\s*\)/, skip: !0 }, { begin: /\(/, end: /\)/, excludeBegin: !0, excludeEnd: !0, keywords: o, contains: m }] }] }, { begin: /,/, relevance: 0 }, { match: /\s+/, relevance: 0 }, { variants: [{ begin: t, end: a }, { begin: i, 'on:begin': s, end: r }], subLanguage: 'xml', contains: [{ begin: i, end: r, skip: !0, contains: ['self'] }] }] }, w, { beginKeywords: 'while if switch catch for' }, { begin: '\\b(?!function)' + e.UNDERSCORE_IDENT_RE + '\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{', returnBegin: !0, label: 'func.def', contains: [f, e.inherit(e.TITLE_MODE, { begin: n, className: 'title.function' })] }, { match: /\.\.\./, relevance: 0 }, _, { match: '\\$' + n, relevance: 0 }, { match: [/\bconstructor(?=\s*\()/], className: { 1: 'title.function' }, contains: [f] }, y, { relevance: 0, match: /\b[A-Z][A-Z_]+\b/, className: 'variable.constant' }, E, N, { match: /\$[(.]/ }] } } function ue (e) { const n = { beginKeywords: ['true', 'false', 'null'].join(' ') }; return { name: 'JSON', contains: [{ className: 'attr', begin: /"(\\.|[^\\"\r\n])*"(?=\s*:)/, relevance: 1.01 }, { match: /[{}[\],:]/, className: 'punctuation', relevance: 0 }, e.QUOTE_STRING_MODE, n, e.C_NUMBER_MODE, e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE], illegal: '\\S' } } function ge (e) { const n = { IMPORTANT: { scope: 'meta', begin: '!important' }, HEXCOLOR: { scope: 'number', begin: '#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})' }, ATTRIBUTE_SELECTOR_MODE: { scope: 'selector-attr', begin: /\[/, end: /\]/, illegal: '$', contains: [e.APOS_STRING_MODE, e.QUOTE_STRING_MODE] }, CSS_NUMBER_MODE: { scope: 'number', begin: e.NUMBER_RE + '(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?', relevance: 0 } }; const t = ne; const a = ee; const i = '@[a-z-]+'; const r = { className: 'variable', begin: '(\\$[a-zA-Z-][a-zA-Z0-9_-]*)\\b' }; return { name: 'SCSS', case_insensitive: !0, illegal: "[=/|']", contains: [e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE, { className: 'selector-id', begin: '#[A-Za-z0-9_-]+', relevance: 0 }, { className: 'selector-class', begin: '\\.[A-Za-z0-9_-]+', relevance: 0 }, n.ATTRIBUTE_SELECTOR_MODE, { className: 'selector-tag', begin: '\\b(' + V.join('|') + ')\\b', relevance: 0 }, { className: 'selector-pseudo', begin: ':(' + a.join('|') + ')' }, { className: 'selector-pseudo', begin: '::(' + t.join('|') + ')' }, r, { begin: /\(/, end: /\)/, contains: [n.CSS_NUMBER_MODE] }, { className: 'attribute', begin: '\\b(' + te.join('|') + ')\\b' }, { begin: '\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b' }, { begin: ':', end: ';', contains: [r, n.HEXCOLOR, n.CSS_NUMBER_MODE, e.QUOTE_STRING_MODE, e.APOS_STRING_MODE, n.IMPORTANT] }, { begin: '@(page|font-face)', keywords: { $pattern: i, keyword: '@page @font-face' } }, { begin: '@', end: '[{;]', returnBegin: !0, keywords: { $pattern: /[a-z-]+/, keyword: 'and or not only', attribute: Y.join(' ') }, contains: [{ begin: i, className: 'keyword' }, { begin: /[a-z-]+(?=:)/, className: 'attribute' }, r, e.QUOTE_STRING_MODE, e.APOS_STRING_MODE, n.HEXCOLOR, n.CSS_NUMBER_MODE] }] } }f = e => O(/\b/, e, /\w$/.test(e) ? /\b/ : /\B/), ['Protocol', 'Type'].map(f), ['init', 'self'].map(f), E = d(/[/=\-+!*%<>&|^~?]/, /[\u00A1-\u00A7]/, /[\u00A9\u00AB]/, /[\u00AC\u00AE]/, /[\u00B0\u00B1]/, /[\u00B6\u00BB\u00BF\u00D7\u00F7]/, /[\u2016-\u2017]/, /[\u2020-\u2027]/, /[\u2030-\u203E]/, /[\u2041-\u2053]/, /[\u2055-\u205E]/, /[\u2190-\u23FF]/, /[\u2500-\u2775]/, /[\u2794-\u2BFF]/, /[\u2E00-\u2E7F]/, /[\u3001-\u3003]/, /[\u3008-\u3020]/, /[\u3030]/), O(E, d(E, /[\u0300-\u036F]/, /[\u1DC0-\u1DFF]/, /[\u20D0-\u20FF]/, /[\uFE00-\uFE0F]/, /[\uFE20-\uFE2F]/), '*'), v = d(/[a-zA-Z_]/, /[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/, /[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/, /[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/, /[\u1E00-\u1FFF]/, /[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/, /[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/, /[\u2C00-\u2DFF\u2E80-\u2FFF]/, /[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/, /[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/, /[\uFE47-\uFEFE\uFF00-\uFFFD]/), w = d(v, /\d/, /[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/), o = O(v, w, '*'); O(/[A-Z]/, w, '*'), O(/convention\(/, d('swift', 'block', 'c'), /\)/), O(/objc\(/, o, /\)/); const be = Object.freeze({ __proto__: null, grmr_bash: function (e) { const n = {}; var t = { begin: /\$\{/, end: /\}/, contains: ['self', { begin: /:-/, contains: [n] }] }; Object.assign(n, { className: 'variable', variants: [{ begin: O(/\$[\w\d#@][\w\d_]*/, '(?![\\w\\d])(?![$])') }, t] }); const a = { className: 'subst', begin: /\$\(/, end: /\)/, contains: [e.BACKSLASH_ESCAPE] }; var t = { begin: /<<-?\s*(?=\w+)/, starts: { contains: [e.END_SAME_AS_BEGIN({ begin: /(\w+)/, end: /(\w+)/, className: 'string' })] } }; const i = { className: 'string', begin: /"/, end: /"/, contains: [e.BACKSLASH_ESCAPE, n, a] }; const r = (a.contains.push(i), { begin: /\$\(\(/, end: /\)\)/, contains: [{ begin: /\d+#[0-9a-f]+/, className: 'number' }, e.NUMBER_MODE, n] }); const s = e.SHEBANG({ binary: `(${['fish', 'bash', 'zsh', 'sh', 'csh', 'ksh', 'tcsh', 'dash', 'scsh'].join('|')})`, relevance: 10 }); const o = { className: 'function', begin: /\w[\w\d_]*\s*\(\s*\)\s*\{/, returnBegin: !0, contains: [e.inherit(e.TITLE_MODE, { begin: /\w[\w\d_]*/ })], relevance: 0 }; return { name: 'Bash', aliases: ['sh'], keywords: { $pattern: /\b[a-z._-]+\b/, keyword: ['if', 'then', 'else', 'elif', 'fi', 'for', 'while', 'in', 'do', 'done', 'case', 'esac', 'function'], literal: ['true', 'false'], built_in: 'break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp' }, contains: [s, e.SHEBANG(), o, r, e.HASH_COMMENT_MODE, t, i, { className: '', begin: /\\"/ }, { className: 'string', begin: /'/, end: /'/ }, n] } }, grmr_scss: ge, grmr_css: ge, grmr_javascript: de, grmr_json: ue, grmr_json5: ue, grmr_xml: function (e) { const n = O(/[A-Z_]/, O('(?:', /[A-Z0-9_.-]*:/, ')?'), /[A-Z0-9_.-]*/); const t = { className: 'symbol', begin: /&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/ }; const a = { begin: /\s/, contains: [{ className: 'keyword', begin: /#?[a-z_][a-z1-9_-]+/, illegal: /\n/ }] }; const i = e.inherit(a, { begin: /\(/, end: /\)/ }); const r = e.inherit(e.APOS_STRING_MODE, { className: 'string' }); const s = e.inherit(e.QUOTE_STRING_MODE, { className: 'string' }); const o = { endsWithParent: !0, illegal: /</, relevance: 0, contains: [{ className: 'attr', begin: /[A-Za-z0-9._:-]+/, relevance: 0 }, { begin: /=\s*/, relevance: 0, contains: [{ className: 'string', endsParent: !0, variants: [{ begin: /"/, end: /"/, contains: [t] }, { begin: /'/, end: /'/, contains: [t] }, { begin: /[^\s"'=<>`]+/ }] }] }] }; return { name: 'HTML, XML', aliases: ['html', 'xhtml', 'rss', 'atom', 'xjb', 'xsd', 'xsl', 'plist', 'wsf', 'svg'], case_insensitive: !0, contains: [{ className: 'meta', begin: /<![a-z]/, end: />/, relevance: 10, contains: [a, s, r, i, { begin: /\[/, end: /\]/, contains: [{ className: 'meta', begin: /<![a-z]/, end: />/, contains: [a, i, s, r] }] }] }, e.COMMENT(/<!--/, /-->/, { relevance: 10 }), { begin: /<!\[CDATA\[/, end: /\]\]>/, relevance: 10 }, t, { className: 'meta', begin: /<\?xml/, end: /\?>/, relevance: 10 }, { className: 'tag', begin: /<style(?=\s|>)/, end: />/, keywords: { name: 'style' }, contains: [o], starts: { end: /<\/style>/, returnEnd: !0, subLanguage: ['css', 'xml'] } }, { className: 'tag', begin: /<script(?=\s|>)/, end: />/, keywords: { name: 'script' }, contains: [o], starts: { end: /<\/script>/, returnEnd: !0, subLanguage: ['javascript', 'handlebars', 'xml'] } }, { className: 'tag', begin: /<>|<\/>/ }, { className: 'tag', begin: O(/</, k(O(n, d(/\/>/, />/, /\s/)))), end: /\/?>/, contains: [{ className: 'name', begin: n, relevance: 0, starts: o }] }, { className: 'tag', begin: O(/<\//, k(O(n, />/))), contains: [{ className: 'name', begin: n, relevance: 0 }, { begin: />/, relevance: 0, endsParent: !0 }] }] } }, grmr_markdown: function (e) { const n = { begin: /<\/?[A-Za-z_]/, end: '>', subLanguage: 'xml', relevance: 0 }; const t = { variants: [{ begin: /\[.+?\]\[.*?\]/, relevance: 0 }, { begin: /\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/, relevance: 2 }, { begin: O(/\[.+?\]\(/, /[A-Za-z][A-Za-z0-9+.-]*/, /:\/\/.*?\)/), relevance: 2 }, { begin: /\[.+?\]\([./?&#].*?\)/, relevance: 1 }, { begin: /\[.+?\]\(.*?\)/, relevance: 0 }], returnBegin: !0, contains: [{ className: 'string', relevance: 0, begin: '\\[', end: '\\]', excludeBegin: !0, returnEnd: !0 }, { className: 'link', relevance: 0, begin: '\\]\\(', end: '\\)', excludeBegin: !0, excludeEnd: !0 }, { className: 'symbol', relevance: 0, begin: '\\]\\[', end: '\\]', excludeBegin: !0, excludeEnd: !0 }] }; const a = { className: 'strong', contains: [], variants: [{ begin: /_{2}/, end: /_{2}/ }, { begin: /\*{2}/, end: /\*{2}/ }] }; const i = { className: 'emphasis', contains: [], variants: [{ begin: /\*(?!\*)/, end: /\*/ }, { begin: /_(?!_)/, end: /_/, relevance: 0 }] }; a.contains.push(i), i.contains.push(a); let r = [n, t]; a.contains = a.contains.concat(r), i.contains = i.contains.concat(r); const s = { className: 'section', variants: [{ begin: '^#{1,6}', end: '$', contains: r = r.concat(a, i) }, { begin: '(?=^.+?\\n[=-]{2,}$)', contains: [{ begin: '^[=-]*$' }, { begin: '^', end: '\\n', contains: r }] }] }; const o = { className: 'quote', begin: '^>\\s+', contains: r, end: '$' }; return { name: 'Markdown', aliases: ['md', 'mkdown', 'mkd'], contains: [s, n, { className: 'bullet', begin: '^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)', end: '\\s+', excludeEnd: !0 }, a, i, o, { className: 'code', variants: [{ begin: '(`{3,})[^`](.|\\n)*?\\1`*[ ]*' }, { begin: '(~{3,})[^~](.|\\n)*?\\1~*[ ]*' }, { begin: '```', end: '```+[ ]*$' }, { begin: '~~~', end: '~~~+[ ]*$' }, { begin: '`.+?`' }, { begin: '(?=^( {4}|\\t))', contains: [{ begin: '^( {4}|\\t)', end: '(\\n)$' }], relevance: 0 }] }, { begin: '^[-\\*]{3,}', end: '$' }, t, { begin: /^\[[^\n]+\]:/, returnBegin: !0, contains: [{ className: 'symbol', begin: /\[/, end: /\]/, excludeBegin: !0, excludeEnd: !0 }, { className: 'link', begin: /:\s*/, end: /$/, excludeBegin: !0 }] }] } }, grmr_plaintext: function (e) { return { name: 'Plain text', aliases: ['text', 'txt'], disableAutodetect: !0 } }, grmr_shell: function (e) { return { name: 'Shell Session', aliases: ['console', 'shellsession'], contains: [{ className: 'meta', begin: /^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/, starts: { end: /[^\\](?=\s*$)/, subLanguage: 'bash' } }] } }, grmr_typescript: function (e) { R; const n = { $pattern: R, keyword: ae.concat(['type', 'namespace', 'typedef', 'interface', 'public', 'private', 'protected', 'implements', 'declare', 'abstract', 'readonly']), literal: ie, built_in: ce.concat(['any', 'void', 'number', 'boolean', 'string', 'object', 'never', 'enum']), 'variable.language': le }; const t = { className: 'meta', begin: '@[A-Za-z$_][0-9A-Za-z$_]*' }; const a = (e, n, t) => { const a = e.contains.findIndex(e => e.label === n); if (a === -1) throw new Error('can not find mode to replace'); e.contains.splice(a, 1, t) }; const i = de(e); const r = (Object.assign(i.keywords, n), i.exports.PARAMS_CONTAINS.push(t), i.contains = i.contains.concat([t, { beginKeywords: 'namespace', end: /\{/, excludeEnd: !0 }, { beginKeywords: 'interface', end: /\{/, excludeEnd: !0, keywords: 'interface extends' }]), a(i, 'shebang', e.SHEBANG()), a(i, 'use_strict', { className: 'meta', relevance: 10, begin: /^\s*['"]use strict['"]/ }), i.contains.find(e => e.label === 'func.def')); return r.relevance = 0, Object.assign(i, { name: 'TypeScript', aliases: ['ts', 'tsx'] }), i }, grmr_yaml: function (e) { const n = 'true false yes no null'; let t = "[\\w#;/?:@&=+$,.~*'()[\\]]+"; const a = { className: 'string', relevance: 0, variants: [{ begin: /'/, end: /'/ }, { begin: /"/, end: /"/ }, { begin: /\S+/ }], contains: [e.BACKSLASH_ESCAPE, { className: 'template-variable', variants: [{ begin: /\{\{/, end: /\}\}/ }, { begin: /%\{/, end: /\}/ }] }] }; const i = e.inherit(a, { variants: [{ begin: /'/, end: /'/ }, { begin: /"/, end: /"/ }, { begin: /[^\s,{}[\]]+/ }] }); const r = { end: ',', endsWithParent: !0, excludeEnd: !0, keywords: n, relevance: 0 }; const s = { begin: /\{/, end: /\}/, contains: [r], illegal: '\\n', relevance: 0 }; const o = { begin: '\\[', end: '\\]', contains: [r], illegal: '\\n', relevance: 0 }; const l = [...t = [{ className: 'attr', variants: [{ begin: '\\w[\\w :\\/.-]*:(?=[ \t]|$)' }, { begin: '"\\w[\\w :\\/.-]*":(?=[ \t]|$)' }, { begin: "'\\w[\\w :\\/.-]*':(?=[ \t]|$)" }] }, { className: 'meta', begin: '^---\\s*$', relevance: 10 }, { className: 'string', begin: '[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*' }, { begin: '<%[%=-]?', end: '[%-]?%>', subLanguage: 'ruby', excludeBegin: !0, excludeEnd: !0, relevance: 0 }, { className: 'type', begin: '!\\w+!' + t }, { className: 'type', begin: '!<' + t + '>' }, { className: 'type', begin: '!' + t }, { className: 'type', begin: '!!' + t }, { className: 'meta', begin: '&' + e.UNDERSCORE_IDENT_RE + '$' }, { className: 'meta', begin: '\\*' + e.UNDERSCORE_IDENT_RE + '$' }, { className: 'bullet', begin: '-(?=[ ]|$)', relevance: 0 }, e.HASH_COMMENT_MODE, { beginKeywords: n, keywords: { literal: n } }, { className: 'number', begin: '\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b' }, { className: 'number', begin: e.C_NUMBER_RE + '\\b', relevance: 0 }, s, o, a]]; return l.pop(), l.push(i), r.contains = l, { name: 'YAML', case_insensitive: !0, aliases: ['yml'], contains: t } } }); const he = m; for (const B of Object.keys(be)) { const pe = B.replace('grmr_', ''); he.registerLanguage(pe, be[B]) } return he }()); typeof exports === 'object' && typeof module !== 'undefined' && (module.exports = hljs)
@@ -2,4 +2,4 @@
2
2
  * @popperjs/core v2.11.5 - MIT License
3
3
  */
4
4
 
5
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Popper={})}(this,(function(e){"use strict";function t(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function n(e){return e instanceof t(e).Element||e instanceof Element}function r(e){return e instanceof t(e).HTMLElement||e instanceof HTMLElement}function o(e){return"undefined"!=typeof ShadowRoot&&(e instanceof t(e).ShadowRoot||e instanceof ShadowRoot)}var i=Math.max,a=Math.min,s=Math.round;function f(e,t){void 0===t&&(t=!1);var n=e.getBoundingClientRect(),o=1,i=1;if(r(e)&&t){var a=e.offsetHeight,f=e.offsetWidth;f>0&&(o=s(n.width)/f||1),a>0&&(i=s(n.height)/a||1)}return{width:n.width/o,height:n.height/i,top:n.top/i,right:n.right/o,bottom:n.bottom/i,left:n.left/o,x:n.left/o,y:n.top/i}}function c(e){var n=t(e);return{scrollLeft:n.pageXOffset,scrollTop:n.pageYOffset}}function p(e){return e?(e.nodeName||"").toLowerCase():null}function u(e){return((n(e)?e.ownerDocument:e.document)||window.document).documentElement}function l(e){return f(u(e)).left+c(e).scrollLeft}function d(e){return t(e).getComputedStyle(e)}function h(e){var t=d(e),n=t.overflow,r=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+r)}function m(e,n,o){void 0===o&&(o=!1);var i,a,d=r(n),m=r(n)&&function(e){var t=e.getBoundingClientRect(),n=s(t.width)/e.offsetWidth||1,r=s(t.height)/e.offsetHeight||1;return 1!==n||1!==r}(n),v=u(n),g=f(e,m),y={scrollLeft:0,scrollTop:0},b={x:0,y:0};return(d||!d&&!o)&&(("body"!==p(n)||h(v))&&(y=(i=n)!==t(i)&&r(i)?{scrollLeft:(a=i).scrollLeft,scrollTop:a.scrollTop}:c(i)),r(n)?((b=f(n,!0)).x+=n.clientLeft,b.y+=n.clientTop):v&&(b.x=l(v))),{x:g.left+y.scrollLeft-b.x,y:g.top+y.scrollTop-b.y,width:g.width,height:g.height}}function v(e){var t=f(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function g(e){return"html"===p(e)?e:e.assignedSlot||e.parentNode||(o(e)?e.host:null)||u(e)}function y(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:r(e)&&h(e)?e:y(g(e))}function b(e,n){var r;void 0===n&&(n=[]);var o=y(e),i=o===(null==(r=e.ownerDocument)?void 0:r.body),a=t(o),s=i?[a].concat(a.visualViewport||[],h(o)?o:[]):o,f=n.concat(s);return i?f:f.concat(b(g(s)))}function x(e){return["table","td","th"].indexOf(p(e))>=0}function w(e){return r(e)&&"fixed"!==d(e).position?e.offsetParent:null}function O(e){for(var n=t(e),i=w(e);i&&x(i)&&"static"===d(i).position;)i=w(i);return i&&("html"===p(i)||"body"===p(i)&&"static"===d(i).position)?n:i||function(e){var t=-1!==navigator.userAgent.toLowerCase().indexOf("firefox");if(-1!==navigator.userAgent.indexOf("Trident")&&r(e)&&"fixed"===d(e).position)return null;var n=g(e);for(o(n)&&(n=n.host);r(n)&&["html","body"].indexOf(p(n))<0;){var i=d(n);if("none"!==i.transform||"none"!==i.perspective||"paint"===i.contain||-1!==["transform","perspective"].indexOf(i.willChange)||t&&"filter"===i.willChange||t&&i.filter&&"none"!==i.filter)return n;n=n.parentNode}return null}(e)||n}var j="top",E="bottom",D="right",A="left",L="auto",P=[j,E,D,A],M="start",k="end",W="viewport",B="popper",H=P.reduce((function(e,t){return e.concat([t+"-"+M,t+"-"+k])}),[]),T=[].concat(P,[L]).reduce((function(e,t){return e.concat([t,t+"-"+M,t+"-"+k])}),[]),R=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function S(e){var t=new Map,n=new Set,r=[];function o(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!n.has(e)){var r=t.get(e);r&&o(r)}})),r.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||o(e)})),r}function C(e){return e.split("-")[0]}function q(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&o(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function V(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function N(e,r){return r===W?V(function(e){var n=t(e),r=u(e),o=n.visualViewport,i=r.clientWidth,a=r.clientHeight,s=0,f=0;return o&&(i=o.width,a=o.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(s=o.offsetLeft,f=o.offsetTop)),{width:i,height:a,x:s+l(e),y:f}}(e)):n(r)?function(e){var t=f(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}(r):V(function(e){var t,n=u(e),r=c(e),o=null==(t=e.ownerDocument)?void 0:t.body,a=i(n.scrollWidth,n.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),s=i(n.scrollHeight,n.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),f=-r.scrollLeft+l(e),p=-r.scrollTop;return"rtl"===d(o||n).direction&&(f+=i(n.clientWidth,o?o.clientWidth:0)-a),{width:a,height:s,x:f,y:p}}(u(e)))}function I(e,t,o){var s="clippingParents"===t?function(e){var t=b(g(e)),o=["absolute","fixed"].indexOf(d(e).position)>=0&&r(e)?O(e):e;return n(o)?t.filter((function(e){return n(e)&&q(e,o)&&"body"!==p(e)})):[]}(e):[].concat(t),f=[].concat(s,[o]),c=f[0],u=f.reduce((function(t,n){var r=N(e,n);return t.top=i(r.top,t.top),t.right=a(r.right,t.right),t.bottom=a(r.bottom,t.bottom),t.left=i(r.left,t.left),t}),N(e,c));return u.width=u.right-u.left,u.height=u.bottom-u.top,u.x=u.left,u.y=u.top,u}function _(e){return e.split("-")[1]}function F(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function U(e){var t,n=e.reference,r=e.element,o=e.placement,i=o?C(o):null,a=o?_(o):null,s=n.x+n.width/2-r.width/2,f=n.y+n.height/2-r.height/2;switch(i){case j:t={x:s,y:n.y-r.height};break;case E:t={x:s,y:n.y+n.height};break;case D:t={x:n.x+n.width,y:f};break;case A:t={x:n.x-r.width,y:f};break;default:t={x:n.x,y:n.y}}var c=i?F(i):null;if(null!=c){var p="y"===c?"height":"width";switch(a){case M:t[c]=t[c]-(n[p]/2-r[p]/2);break;case k:t[c]=t[c]+(n[p]/2-r[p]/2)}}return t}function z(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function X(e,t){return t.reduce((function(t,n){return t[n]=e,t}),{})}function Y(e,t){void 0===t&&(t={});var r=t,o=r.placement,i=void 0===o?e.placement:o,a=r.boundary,s=void 0===a?"clippingParents":a,c=r.rootBoundary,p=void 0===c?W:c,l=r.elementContext,d=void 0===l?B:l,h=r.altBoundary,m=void 0!==h&&h,v=r.padding,g=void 0===v?0:v,y=z("number"!=typeof g?g:X(g,P)),b=d===B?"reference":B,x=e.rects.popper,w=e.elements[m?b:d],O=I(n(w)?w:w.contextElement||u(e.elements.popper),s,p),A=f(e.elements.reference),L=U({reference:A,element:x,strategy:"absolute",placement:i}),M=V(Object.assign({},x,L)),k=d===B?M:A,H={top:O.top-k.top+y.top,bottom:k.bottom-O.bottom+y.bottom,left:O.left-k.left+y.left,right:k.right-O.right+y.right},T=e.modifiersData.offset;if(d===B&&T){var R=T[i];Object.keys(H).forEach((function(e){var t=[D,E].indexOf(e)>=0?1:-1,n=[j,E].indexOf(e)>=0?"y":"x";H[e]+=R[n]*t}))}return H}var G={placement:"bottom",modifiers:[],strategy:"absolute"};function J(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return!t.some((function(e){return!(e&&"function"==typeof e.getBoundingClientRect)}))}function K(e){void 0===e&&(e={});var t=e,r=t.defaultModifiers,o=void 0===r?[]:r,i=t.defaultOptions,a=void 0===i?G:i;return function(e,t,r){void 0===r&&(r=a);var i,s,f={placement:"bottom",orderedModifiers:[],options:Object.assign({},G,a),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},c=[],p=!1,u={state:f,setOptions:function(r){var i="function"==typeof r?r(f.options):r;l(),f.options=Object.assign({},a,f.options,i),f.scrollParents={reference:n(e)?b(e):e.contextElement?b(e.contextElement):[],popper:b(t)};var s,p,d=function(e){var t=S(e);return R.reduce((function(e,n){return e.concat(t.filter((function(e){return e.phase===n})))}),[])}((s=[].concat(o,f.options.modifiers),p=s.reduce((function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e}),{}),Object.keys(p).map((function(e){return p[e]}))));return f.orderedModifiers=d.filter((function(e){return e.enabled})),f.orderedModifiers.forEach((function(e){var t=e.name,n=e.options,r=void 0===n?{}:n,o=e.effect;if("function"==typeof o){var i=o({state:f,name:t,instance:u,options:r}),a=function(){};c.push(i||a)}})),u.update()},forceUpdate:function(){if(!p){var e=f.elements,t=e.reference,n=e.popper;if(J(t,n)){f.rects={reference:m(t,O(n),"fixed"===f.options.strategy),popper:v(n)},f.reset=!1,f.placement=f.options.placement,f.orderedModifiers.forEach((function(e){return f.modifiersData[e.name]=Object.assign({},e.data)}));for(var r=0;r<f.orderedModifiers.length;r++)if(!0!==f.reset){var o=f.orderedModifiers[r],i=o.fn,a=o.options,s=void 0===a?{}:a,c=o.name;"function"==typeof i&&(f=i({state:f,options:s,name:c,instance:u})||f)}else f.reset=!1,r=-1}}},update:(i=function(){return new Promise((function(e){u.forceUpdate(),e(f)}))},function(){return s||(s=new Promise((function(e){Promise.resolve().then((function(){s=void 0,e(i())}))}))),s}),destroy:function(){l(),p=!0}};if(!J(e,t))return u;function l(){c.forEach((function(e){return e()})),c=[]}return u.setOptions(r).then((function(e){!p&&r.onFirstUpdate&&r.onFirstUpdate(e)})),u}}var Q={passive:!0};var Z={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var n=e.state,r=e.instance,o=e.options,i=o.scroll,a=void 0===i||i,s=o.resize,f=void 0===s||s,c=t(n.elements.popper),p=[].concat(n.scrollParents.reference,n.scrollParents.popper);return a&&p.forEach((function(e){e.addEventListener("scroll",r.update,Q)})),f&&c.addEventListener("resize",r.update,Q),function(){a&&p.forEach((function(e){e.removeEventListener("scroll",r.update,Q)})),f&&c.removeEventListener("resize",r.update,Q)}},data:{}};var $={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,n=e.name;t.modifiersData[n]=U({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}},ee={top:"auto",right:"auto",bottom:"auto",left:"auto"};function te(e){var n,r=e.popper,o=e.popperRect,i=e.placement,a=e.variation,f=e.offsets,c=e.position,p=e.gpuAcceleration,l=e.adaptive,h=e.roundOffsets,m=e.isFixed,v=f.x,g=void 0===v?0:v,y=f.y,b=void 0===y?0:y,x="function"==typeof h?h({x:g,y:b}):{x:g,y:b};g=x.x,b=x.y;var w=f.hasOwnProperty("x"),L=f.hasOwnProperty("y"),P=A,M=j,W=window;if(l){var B=O(r),H="clientHeight",T="clientWidth";if(B===t(r)&&"static"!==d(B=u(r)).position&&"absolute"===c&&(H="scrollHeight",T="scrollWidth"),B=B,i===j||(i===A||i===D)&&a===k)M=E,b-=(m&&B===W&&W.visualViewport?W.visualViewport.height:B[H])-o.height,b*=p?1:-1;if(i===A||(i===j||i===E)&&a===k)P=D,g-=(m&&B===W&&W.visualViewport?W.visualViewport.width:B[T])-o.width,g*=p?1:-1}var R,S=Object.assign({position:c},l&&ee),C=!0===h?function(e){var t=e.x,n=e.y,r=window.devicePixelRatio||1;return{x:s(t*r)/r||0,y:s(n*r)/r||0}}({x:g,y:b}):{x:g,y:b};return g=C.x,b=C.y,p?Object.assign({},S,((R={})[M]=L?"0":"",R[P]=w?"0":"",R.transform=(W.devicePixelRatio||1)<=1?"translate("+g+"px, "+b+"px)":"translate3d("+g+"px, "+b+"px, 0)",R)):Object.assign({},S,((n={})[M]=L?b+"px":"",n[P]=w?g+"px":"",n.transform="",n))}var ne={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,n=e.options,r=n.gpuAcceleration,o=void 0===r||r,i=n.adaptive,a=void 0===i||i,s=n.roundOffsets,f=void 0===s||s,c={placement:C(t.placement),variation:_(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:o,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,te(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:f})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,te(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:f})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}};var re={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var n=t.styles[e]||{},o=t.attributes[e]||{},i=t.elements[e];r(i)&&p(i)&&(Object.assign(i.style,n),Object.keys(o).forEach((function(e){var t=o[e];!1===t?i.removeAttribute(e):i.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach((function(e){var o=t.elements[e],i=t.attributes[e]||{},a=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce((function(e,t){return e[t]="",e}),{});r(o)&&p(o)&&(Object.assign(o.style,a),Object.keys(i).forEach((function(e){o.removeAttribute(e)})))}))}},requires:["computeStyles"]};var oe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,n=e.options,r=e.name,o=n.offset,i=void 0===o?[0,0]:o,a=T.reduce((function(e,n){return e[n]=function(e,t,n){var r=C(e),o=[A,j].indexOf(r)>=0?-1:1,i="function"==typeof n?n(Object.assign({},t,{placement:e})):n,a=i[0],s=i[1];return a=a||0,s=(s||0)*o,[A,D].indexOf(r)>=0?{x:s,y:a}:{x:a,y:s}}(n,t.rects,i),e}),{}),s=a[t.placement],f=s.x,c=s.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=f,t.modifiersData.popperOffsets.y+=c),t.modifiersData[r]=a}},ie={left:"right",right:"left",bottom:"top",top:"bottom"};function ae(e){return e.replace(/left|right|bottom|top/g,(function(e){return ie[e]}))}var se={start:"end",end:"start"};function fe(e){return e.replace(/start|end/g,(function(e){return se[e]}))}function ce(e,t){void 0===t&&(t={});var n=t,r=n.placement,o=n.boundary,i=n.rootBoundary,a=n.padding,s=n.flipVariations,f=n.allowedAutoPlacements,c=void 0===f?T:f,p=_(r),u=p?s?H:H.filter((function(e){return _(e)===p})):P,l=u.filter((function(e){return c.indexOf(e)>=0}));0===l.length&&(l=u);var d=l.reduce((function(t,n){return t[n]=Y(e,{placement:n,boundary:o,rootBoundary:i,padding:a})[C(n)],t}),{});return Object.keys(d).sort((function(e,t){return d[e]-d[t]}))}var pe={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var o=n.mainAxis,i=void 0===o||o,a=n.altAxis,s=void 0===a||a,f=n.fallbackPlacements,c=n.padding,p=n.boundary,u=n.rootBoundary,l=n.altBoundary,d=n.flipVariations,h=void 0===d||d,m=n.allowedAutoPlacements,v=t.options.placement,g=C(v),y=f||(g===v||!h?[ae(v)]:function(e){if(C(e)===L)return[];var t=ae(e);return[fe(e),t,fe(t)]}(v)),b=[v].concat(y).reduce((function(e,n){return e.concat(C(n)===L?ce(t,{placement:n,boundary:p,rootBoundary:u,padding:c,flipVariations:h,allowedAutoPlacements:m}):n)}),[]),x=t.rects.reference,w=t.rects.popper,O=new Map,P=!0,k=b[0],W=0;W<b.length;W++){var B=b[W],H=C(B),T=_(B)===M,R=[j,E].indexOf(H)>=0,S=R?"width":"height",q=Y(t,{placement:B,boundary:p,rootBoundary:u,altBoundary:l,padding:c}),V=R?T?D:A:T?E:j;x[S]>w[S]&&(V=ae(V));var N=ae(V),I=[];if(i&&I.push(q[H]<=0),s&&I.push(q[V]<=0,q[N]<=0),I.every((function(e){return e}))){k=B,P=!1;break}O.set(B,I)}if(P)for(var F=function(e){var t=b.find((function(t){var n=O.get(t);if(n)return n.slice(0,e).every((function(e){return e}))}));if(t)return k=t,"break"},U=h?3:1;U>0;U--){if("break"===F(U))break}t.placement!==k&&(t.modifiersData[r]._skip=!0,t.placement=k,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function ue(e,t,n){return i(e,a(t,n))}var le={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name,o=n.mainAxis,s=void 0===o||o,f=n.altAxis,c=void 0!==f&&f,p=n.boundary,u=n.rootBoundary,l=n.altBoundary,d=n.padding,h=n.tether,m=void 0===h||h,g=n.tetherOffset,y=void 0===g?0:g,b=Y(t,{boundary:p,rootBoundary:u,padding:d,altBoundary:l}),x=C(t.placement),w=_(t.placement),L=!w,P=F(x),k="x"===P?"y":"x",W=t.modifiersData.popperOffsets,B=t.rects.reference,H=t.rects.popper,T="function"==typeof y?y(Object.assign({},t.rects,{placement:t.placement})):y,R="number"==typeof T?{mainAxis:T,altAxis:T}:Object.assign({mainAxis:0,altAxis:0},T),S=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,q={x:0,y:0};if(W){if(s){var V,N="y"===P?j:A,I="y"===P?E:D,U="y"===P?"height":"width",z=W[P],X=z+b[N],G=z-b[I],J=m?-H[U]/2:0,K=w===M?B[U]:H[U],Q=w===M?-H[U]:-B[U],Z=t.elements.arrow,$=m&&Z?v(Z):{width:0,height:0},ee=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},te=ee[N],ne=ee[I],re=ue(0,B[U],$[U]),oe=L?B[U]/2-J-re-te-R.mainAxis:K-re-te-R.mainAxis,ie=L?-B[U]/2+J+re+ne+R.mainAxis:Q+re+ne+R.mainAxis,ae=t.elements.arrow&&O(t.elements.arrow),se=ae?"y"===P?ae.clientTop||0:ae.clientLeft||0:0,fe=null!=(V=null==S?void 0:S[P])?V:0,ce=z+ie-fe,pe=ue(m?a(X,z+oe-fe-se):X,z,m?i(G,ce):G);W[P]=pe,q[P]=pe-z}if(c){var le,de="x"===P?j:A,he="x"===P?E:D,me=W[k],ve="y"===k?"height":"width",ge=me+b[de],ye=me-b[he],be=-1!==[j,A].indexOf(x),xe=null!=(le=null==S?void 0:S[k])?le:0,we=be?ge:me-B[ve]-H[ve]-xe+R.altAxis,Oe=be?me+B[ve]+H[ve]-xe-R.altAxis:ye,je=m&&be?function(e,t,n){var r=ue(e,t,n);return r>n?n:r}(we,me,Oe):ue(m?we:ge,me,m?Oe:ye);W[k]=je,q[k]=je-me}t.modifiersData[r]=q}},requiresIfExists:["offset"]};var de={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,n=e.state,r=e.name,o=e.options,i=n.elements.arrow,a=n.modifiersData.popperOffsets,s=C(n.placement),f=F(s),c=[A,D].indexOf(s)>=0?"height":"width";if(i&&a){var p=function(e,t){return z("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:X(e,P))}(o.padding,n),u=v(i),l="y"===f?j:A,d="y"===f?E:D,h=n.rects.reference[c]+n.rects.reference[f]-a[f]-n.rects.popper[c],m=a[f]-n.rects.reference[f],g=O(i),y=g?"y"===f?g.clientHeight||0:g.clientWidth||0:0,b=h/2-m/2,x=p[l],w=y-u[c]-p[d],L=y/2-u[c]/2+b,M=ue(x,L,w),k=f;n.modifiersData[r]=((t={})[k]=M,t.centerOffset=M-L,t)}},effect:function(e){var t=e.state,n=e.options.element,r=void 0===n?"[data-popper-arrow]":n;null!=r&&("string"!=typeof r||(r=t.elements.popper.querySelector(r)))&&q(t.elements.popper,r)&&(t.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function he(e,t,n){return void 0===n&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function me(e){return[j,D,E,A].some((function(t){return e[t]>=0}))}var ve={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,n=e.name,r=t.rects.reference,o=t.rects.popper,i=t.modifiersData.preventOverflow,a=Y(t,{elementContext:"reference"}),s=Y(t,{altBoundary:!0}),f=he(a,r),c=he(s,o,i),p=me(f),u=me(c);t.modifiersData[n]={referenceClippingOffsets:f,popperEscapeOffsets:c,isReferenceHidden:p,hasPopperEscaped:u},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":p,"data-popper-escaped":u})}},ge=K({defaultModifiers:[Z,$,ne,re]}),ye=[Z,$,ne,re,oe,pe,le,de,ve],be=K({defaultModifiers:ye});e.applyStyles=re,e.arrow=de,e.computeStyles=ne,e.createPopper=be,e.createPopperLite=ge,e.defaultModifiers=ye,e.detectOverflow=Y,e.eventListeners=Z,e.flip=pe,e.hide=ve,e.offset=oe,e.popperGenerator=K,e.popperOffsets=$,e.preventOverflow=le,Object.defineProperty(e,"__esModule",{value:!0})}));
5
+ !(function (e, t) { typeof exports === 'object' && typeof module !== 'undefined' ? t(exports) : typeof define === 'function' && define.amd ? define(['exports'], t) : t((e = typeof globalThis !== 'undefined' ? globalThis : e || self).Popper = {}) }(this, function (e) { 'use strict'; function t (e) { if (e == null) return window; if (e.toString() !== '[object Window]') { const t = e.ownerDocument; return t && t.defaultView || window } return e } function n (e) { return e instanceof t(e).Element || e instanceof Element } function r (e) { return e instanceof t(e).HTMLElement || e instanceof HTMLElement } function o (e) { return typeof ShadowRoot !== 'undefined' && (e instanceof t(e).ShadowRoot || e instanceof ShadowRoot) } const i = Math.max; const a = Math.min; const s = Math.round; function f (e, t) { void 0 === t && (t = !1); const n = e.getBoundingClientRect(); let o = 1; let i = 1; if (r(e) && t) { const a = e.offsetHeight; const f = e.offsetWidth; f > 0 && (o = s(n.width) / f || 1), a > 0 && (i = s(n.height) / a || 1) } return { width: n.width / o, height: n.height / i, top: n.top / i, right: n.right / o, bottom: n.bottom / i, left: n.left / o, x: n.left / o, y: n.top / i } } function c (e) { const n = t(e); return { scrollLeft: n.pageXOffset, scrollTop: n.pageYOffset } } function p (e) { return e ? (e.nodeName || '').toLowerCase() : null } function u (e) { return ((n(e) ? e.ownerDocument : e.document) || window.document).documentElement } function l (e) { return f(u(e)).left + c(e).scrollLeft } function d (e) { return t(e).getComputedStyle(e) } function h (e) { const t = d(e); const n = t.overflow; const r = t.overflowX; const o = t.overflowY; return /auto|scroll|overlay|hidden/.test(n + o + r) } function m (e, n, o) { void 0 === o && (o = !1); let i; let a; const d = r(n); const m = r(n) && (function (e) { const t = e.getBoundingClientRect(); const n = s(t.width) / e.offsetWidth || 1; const r = s(t.height) / e.offsetHeight || 1; return n !== 1 || r !== 1 }(n)); const v = u(n); const g = f(e, m); let y = { scrollLeft: 0, scrollTop: 0 }; let b = { x: 0, y: 0 }; return (d || !d && !o) && ((p(n) !== 'body' || h(v)) && (y = (i = n) !== t(i) && r(i) ? { scrollLeft: (a = i).scrollLeft, scrollTop: a.scrollTop } : c(i)), r(n) ? ((b = f(n, !0)).x += n.clientLeft, b.y += n.clientTop) : v && (b.x = l(v))), { x: g.left + y.scrollLeft - b.x, y: g.top + y.scrollTop - b.y, width: g.width, height: g.height } } function v (e) { const t = f(e); let n = e.offsetWidth; let r = e.offsetHeight; return Math.abs(t.width - n) <= 1 && (n = t.width), Math.abs(t.height - r) <= 1 && (r = t.height), { x: e.offsetLeft, y: e.offsetTop, width: n, height: r } } function g (e) { return p(e) === 'html' ? e : e.assignedSlot || e.parentNode || (o(e) ? e.host : null) || u(e) } function y (e) { return ['html', 'body', '#document'].indexOf(p(e)) >= 0 ? e.ownerDocument.body : r(e) && h(e) ? e : y(g(e)) } function b (e, n) { let r; void 0 === n && (n = []); const o = y(e); const i = o === ((r = e.ownerDocument) == null ? void 0 : r.body); const a = t(o); const s = i ? [a].concat(a.visualViewport || [], h(o) ? o : []) : o; const f = n.concat(s); return i ? f : f.concat(b(g(s))) } function x (e) { return ['table', 'td', 'th'].indexOf(p(e)) >= 0 } function w (e) { return r(e) && d(e).position !== 'fixed' ? e.offsetParent : null } function O (e) { for (var n = t(e), i = w(e); i && x(i) && d(i).position === 'static';)i = w(i); return i && (p(i) === 'html' || p(i) === 'body' && d(i).position === 'static') ? n : i || (function (e) { const t = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1; if (navigator.userAgent.indexOf('Trident') !== -1 && r(e) && d(e).position === 'fixed') return null; let n = g(e); for (o(n) && (n = n.host); r(n) && ['html', 'body'].indexOf(p(n)) < 0;) { const i = d(n); if (i.transform !== 'none' || i.perspective !== 'none' || i.contain === 'paint' || ['transform', 'perspective'].indexOf(i.willChange) !== -1 || t && i.willChange === 'filter' || t && i.filter && i.filter !== 'none') return n; n = n.parentNode } return null }(e)) || n } const j = 'top'; const E = 'bottom'; const D = 'right'; const A = 'left'; const L = 'auto'; const P = [j, E, D, A]; const M = 'start'; const k = 'end'; const W = 'viewport'; const B = 'popper'; const H = P.reduce(function (e, t) { return e.concat([t + '-' + M, t + '-' + k]) }, []); const T = [].concat(P, [L]).reduce(function (e, t) { return e.concat([t, t + '-' + M, t + '-' + k]) }, []); const R = ['beforeRead', 'read', 'afterRead', 'beforeMain', 'main', 'afterMain', 'beforeWrite', 'write', 'afterWrite']; function S (e) { const t = new Map(); const n = new Set(); const r = []; function o (e) { n.add(e.name), [].concat(e.requires || [], e.requiresIfExists || []).forEach(function (e) { if (!n.has(e)) { const r = t.get(e); r && o(r) } }), r.push(e) } return e.forEach(function (e) { t.set(e.name, e) }), e.forEach(function (e) { n.has(e.name) || o(e) }), r } function C (e) { return e.split('-')[0] } function q (e, t) { const n = t.getRootNode && t.getRootNode(); if (e.contains(t)) return !0; if (n && o(n)) { let r = t; do { if (r && e.isSameNode(r)) return !0; r = r.parentNode || r.host } while (r) } return !1 } function V (e) { return Object.assign({}, e, { left: e.x, top: e.y, right: e.x + e.width, bottom: e.y + e.height }) } function N (e, r) { return r === W ? V(function (e) { const n = t(e); const r = u(e); const o = n.visualViewport; let i = r.clientWidth; let a = r.clientHeight; let s = 0; let f = 0; return o && (i = o.width, a = o.height, /^((?!chrome|android).)*safari/i.test(navigator.userAgent) || (s = o.offsetLeft, f = o.offsetTop)), { width: i, height: a, x: s + l(e), y: f } }(e)) : n(r) ? (function (e) { const t = f(e); return t.top = t.top + e.clientTop, t.left = t.left + e.clientLeft, t.bottom = t.top + e.clientHeight, t.right = t.left + e.clientWidth, t.width = e.clientWidth, t.height = e.clientHeight, t.x = t.left, t.y = t.top, t }(r)) : V(function (e) { let t; const n = u(e); const r = c(e); const o = (t = e.ownerDocument) == null ? void 0 : t.body; const a = i(n.scrollWidth, n.clientWidth, o ? o.scrollWidth : 0, o ? o.clientWidth : 0); const s = i(n.scrollHeight, n.clientHeight, o ? o.scrollHeight : 0, o ? o.clientHeight : 0); let f = -r.scrollLeft + l(e); const p = -r.scrollTop; return d(o || n).direction === 'rtl' && (f += i(n.clientWidth, o ? o.clientWidth : 0) - a), { width: a, height: s, x: f, y: p } }(u(e))) } function I (e, t, o) { const s = t === 'clippingParents' ? (function (e) { const t = b(g(e)); const o = ['absolute', 'fixed'].indexOf(d(e).position) >= 0 && r(e) ? O(e) : e; return n(o) ? t.filter(function (e) { return n(e) && q(e, o) && p(e) !== 'body' }) : [] }(e)) : [].concat(t); const f = [].concat(s, [o]); const c = f[0]; const u = f.reduce(function (t, n) { const r = N(e, n); return t.top = i(r.top, t.top), t.right = a(r.right, t.right), t.bottom = a(r.bottom, t.bottom), t.left = i(r.left, t.left), t }, N(e, c)); return u.width = u.right - u.left, u.height = u.bottom - u.top, u.x = u.left, u.y = u.top, u } function _ (e) { return e.split('-')[1] } function F (e) { return ['top', 'bottom'].indexOf(e) >= 0 ? 'x' : 'y' } function U (e) { let t; const n = e.reference; const r = e.element; const o = e.placement; const i = o ? C(o) : null; const a = o ? _(o) : null; const s = n.x + n.width / 2 - r.width / 2; const f = n.y + n.height / 2 - r.height / 2; switch (i) { case j:t = { x: s, y: n.y - r.height }; break; case E:t = { x: s, y: n.y + n.height }; break; case D:t = { x: n.x + n.width, y: f }; break; case A:t = { x: n.x - r.width, y: f }; break; default:t = { x: n.x, y: n.y } } const c = i ? F(i) : null; if (c != null) { const p = c === 'y' ? 'height' : 'width'; switch (a) { case M:t[c] = t[c] - (n[p] / 2 - r[p] / 2); break; case k:t[c] = t[c] + (n[p] / 2 - r[p] / 2) } } return t } function z (e) { return Object.assign({}, { top: 0, right: 0, bottom: 0, left: 0 }, e) } function X (e, t) { return t.reduce(function (t, n) { return t[n] = e, t }, {}) } function Y (e, t) { void 0 === t && (t = {}); const r = t; const o = r.placement; const i = void 0 === o ? e.placement : o; const a = r.boundary; const s = void 0 === a ? 'clippingParents' : a; const c = r.rootBoundary; const p = void 0 === c ? W : c; const l = r.elementContext; const d = void 0 === l ? B : l; const h = r.altBoundary; const m = void 0 !== h && h; const v = r.padding; const g = void 0 === v ? 0 : v; const y = z(typeof g !== 'number' ? g : X(g, P)); const b = d === B ? 'reference' : B; const x = e.rects.popper; const w = e.elements[m ? b : d]; const O = I(n(w) ? w : w.contextElement || u(e.elements.popper), s, p); const A = f(e.elements.reference); const L = U({ reference: A, element: x, strategy: 'absolute', placement: i }); const M = V(Object.assign({}, x, L)); const k = d === B ? M : A; const H = { top: O.top - k.top + y.top, bottom: k.bottom - O.bottom + y.bottom, left: O.left - k.left + y.left, right: k.right - O.right + y.right }; const T = e.modifiersData.offset; if (d === B && T) { const R = T[i]; Object.keys(H).forEach(function (e) { const t = [D, E].indexOf(e) >= 0 ? 1 : -1; const n = [j, E].indexOf(e) >= 0 ? 'y' : 'x'; H[e] += R[n] * t }) } return H } const G = { placement: 'bottom', modifiers: [], strategy: 'absolute' }; function J () { for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++)t[n] = arguments[n]; return !t.some(function (e) { return !(e && typeof e.getBoundingClientRect === 'function') }) } function K (e) { void 0 === e && (e = {}); const t = e; const r = t.defaultModifiers; const o = void 0 === r ? [] : r; const i = t.defaultOptions; const a = void 0 === i ? G : i; return function (e, t, r) { void 0 === r && (r = a); let i; let s; let f = { placement: 'bottom', orderedModifiers: [], options: Object.assign({}, G, a), modifiersData: {}, elements: { reference: e, popper: t }, attributes: {}, styles: {} }; let c = []; let p = !1; var u = { state: f, setOptions: function (r) { const i = typeof r === 'function' ? r(f.options) : r; l(), f.options = Object.assign({}, a, f.options, i), f.scrollParents = { reference: n(e) ? b(e) : e.contextElement ? b(e.contextElement) : [], popper: b(t) }; let s; let p; const d = (function (e) { const t = S(e); return R.reduce(function (e, n) { return e.concat(t.filter(function (e) { return e.phase === n })) }, []) }((s = [].concat(o, f.options.modifiers), p = s.reduce(function (e, t) { const n = e[t.name]; return e[t.name] = n ? Object.assign({}, n, t, { options: Object.assign({}, n.options, t.options), data: Object.assign({}, n.data, t.data) }) : t, e }, {}), Object.keys(p).map(function (e) { return p[e] })))); return f.orderedModifiers = d.filter(function (e) { return e.enabled }), f.orderedModifiers.forEach(function (e) { const t = e.name; const n = e.options; const r = void 0 === n ? {} : n; const o = e.effect; if (typeof o === 'function') { const i = o({ state: f, name: t, instance: u, options: r }); const a = function () {}; c.push(i || a) } }), u.update() }, forceUpdate: function () { if (!p) { const e = f.elements; const t = e.reference; const n = e.popper; if (J(t, n)) { f.rects = { reference: m(t, O(n), f.options.strategy === 'fixed'), popper: v(n) }, f.reset = !1, f.placement = f.options.placement, f.orderedModifiers.forEach(function (e) { return f.modifiersData[e.name] = Object.assign({}, e.data) }); for (let r = 0; r < f.orderedModifiers.length; r++) if (!0 !== f.reset) { const o = f.orderedModifiers[r]; const i = o.fn; const a = o.options; const s = void 0 === a ? {} : a; const c = o.name; typeof i === 'function' && (f = i({ state: f, options: s, name: c, instance: u }) || f) } else f.reset = !1, r = -1 } } }, update: (i = function () { return new Promise(function (e) { u.forceUpdate(), e(f) }) }, function () { return s || (s = new Promise(function (e) { Promise.resolve().then(function () { s = void 0, e(i()) }) })), s }), destroy: function () { l(), p = !0 } }; if (!J(e, t)) return u; function l () { c.forEach(function (e) { return e() }), c = [] } return u.setOptions(r).then(function (e) { !p && r.onFirstUpdate && r.onFirstUpdate(e) }), u } } const Q = { passive: !0 }; const Z = { name: 'eventListeners', enabled: !0, phase: 'write', fn: function () {}, effect: function (e) { const n = e.state; const r = e.instance; const o = e.options; const i = o.scroll; const a = void 0 === i || i; const s = o.resize; const f = void 0 === s || s; const c = t(n.elements.popper); const p = [].concat(n.scrollParents.reference, n.scrollParents.popper); return a && p.forEach(function (e) { e.addEventListener('scroll', r.update, Q) }), f && c.addEventListener('resize', r.update, Q), function () { a && p.forEach(function (e) { e.removeEventListener('scroll', r.update, Q) }), f && c.removeEventListener('resize', r.update, Q) } }, data: {} }; const $ = { name: 'popperOffsets', enabled: !0, phase: 'read', fn: function (e) { const t = e.state; const n = e.name; t.modifiersData[n] = U({ reference: t.rects.reference, element: t.rects.popper, strategy: 'absolute', placement: t.placement }) }, data: {} }; const ee = { top: 'auto', right: 'auto', bottom: 'auto', left: 'auto' }; function te (e) { let n; const r = e.popper; const o = e.popperRect; const i = e.placement; const a = e.variation; const f = e.offsets; const c = e.position; const p = e.gpuAcceleration; const l = e.adaptive; const h = e.roundOffsets; const m = e.isFixed; const v = f.x; let g = void 0 === v ? 0 : v; const y = f.y; let b = void 0 === y ? 0 : y; const x = typeof h === 'function' ? h({ x: g, y: b }) : { x: g, y: b }; g = x.x, b = x.y; const w = f.hasOwnProperty('x'); const L = f.hasOwnProperty('y'); let P = A; let M = j; const W = window; if (l) { let B = O(r); let H = 'clientHeight'; let T = 'clientWidth'; if (B === t(r) && d(B = u(r)).position !== 'static' && c === 'absolute' && (H = 'scrollHeight', T = 'scrollWidth'), B = B, i === j || (i === A || i === D) && a === k)M = E, b -= (m && B === W && W.visualViewport ? W.visualViewport.height : B[H]) - o.height, b *= p ? 1 : -1; if (i === A || (i === j || i === E) && a === k)P = D, g -= (m && B === W && W.visualViewport ? W.visualViewport.width : B[T]) - o.width, g *= p ? 1 : -1 } let R; const S = Object.assign({ position: c }, l && ee); const C = !0 === h ? (function (e) { const t = e.x; const n = e.y; const r = window.devicePixelRatio || 1; return { x: s(t * r) / r || 0, y: s(n * r) / r || 0 } }({ x: g, y: b })) : { x: g, y: b }; return g = C.x, b = C.y, p ? Object.assign({}, S, ((R = {})[M] = L ? '0' : '', R[P] = w ? '0' : '', R.transform = (W.devicePixelRatio || 1) <= 1 ? 'translate(' + g + 'px, ' + b + 'px)' : 'translate3d(' + g + 'px, ' + b + 'px, 0)', R)) : Object.assign({}, S, ((n = {})[M] = L ? b + 'px' : '', n[P] = w ? g + 'px' : '', n.transform = '', n)) } const ne = { name: 'computeStyles', enabled: !0, phase: 'beforeWrite', fn: function (e) { const t = e.state; const n = e.options; const r = n.gpuAcceleration; const o = void 0 === r || r; const i = n.adaptive; const a = void 0 === i || i; const s = n.roundOffsets; const f = void 0 === s || s; const c = { placement: C(t.placement), variation: _(t.placement), popper: t.elements.popper, popperRect: t.rects.popper, gpuAcceleration: o, isFixed: t.options.strategy === 'fixed' }; t.modifiersData.popperOffsets != null && (t.styles.popper = Object.assign({}, t.styles.popper, te(Object.assign({}, c, { offsets: t.modifiersData.popperOffsets, position: t.options.strategy, adaptive: a, roundOffsets: f })))), t.modifiersData.arrow != null && (t.styles.arrow = Object.assign({}, t.styles.arrow, te(Object.assign({}, c, { offsets: t.modifiersData.arrow, position: 'absolute', adaptive: !1, roundOffsets: f })))), t.attributes.popper = Object.assign({}, t.attributes.popper, { 'data-popper-placement': t.placement }) }, data: {} }; const re = { name: 'applyStyles', enabled: !0, phase: 'write', fn: function (e) { const t = e.state; Object.keys(t.elements).forEach(function (e) { const n = t.styles[e] || {}; const o = t.attributes[e] || {}; const i = t.elements[e]; r(i) && p(i) && (Object.assign(i.style, n), Object.keys(o).forEach(function (e) { const t = o[e]; !1 === t ? i.removeAttribute(e) : i.setAttribute(e, !0 === t ? '' : t) })) }) }, effect: function (e) { const t = e.state; const n = { popper: { position: t.options.strategy, left: '0', top: '0', margin: '0' }, arrow: { position: 'absolute' }, reference: {} }; return Object.assign(t.elements.popper.style, n.popper), t.styles = n, t.elements.arrow && Object.assign(t.elements.arrow.style, n.arrow), function () { Object.keys(t.elements).forEach(function (e) { const o = t.elements[e]; const i = t.attributes[e] || {}; const a = Object.keys(t.styles.hasOwnProperty(e) ? t.styles[e] : n[e]).reduce(function (e, t) { return e[t] = '', e }, {}); r(o) && p(o) && (Object.assign(o.style, a), Object.keys(i).forEach(function (e) { o.removeAttribute(e) })) }) } }, requires: ['computeStyles'] }; const oe = { name: 'offset', enabled: !0, phase: 'main', requires: ['popperOffsets'], fn: function (e) { const t = e.state; const n = e.options; const r = e.name; const o = n.offset; const i = void 0 === o ? [0, 0] : o; const a = T.reduce(function (e, n) { return e[n] = (function (e, t, n) { const r = C(e); const o = [A, j].indexOf(r) >= 0 ? -1 : 1; const i = "function"===typeof n ? n(Object.assign({}, t, { placement: e })) : n; let a = i[0]; let s = i[1]; return a = a || 0, s = (s || 0) * o, [A, D].indexOf(r) >= 0 ? { x: s, y: a } : { x: a, y: s } }(n, t.rects, i)), e }, {}); const s = a[t.placement]; const f = s.x; const c = s.y; t.modifiersData.popperOffsets != null && (t.modifiersData.popperOffsets.x += f, t.modifiersData.popperOffsets.y += c), t.modifiersData[r] = a } }; const ie = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' }; function ae (e) { return e.replace(/left|right|bottom|top/g, function (e) { return ie[e] }) } const se = { start: 'end', end: 'start' }; function fe (e) { return e.replace(/start|end/g, function (e) { return se[e] }) } function ce (e, t) { void 0 === t && (t = {}); const n = t; const r = n.placement; const o = n.boundary; const i = n.rootBoundary; const a = n.padding; const s = n.flipVariations; const f = n.allowedAutoPlacements; const c = void 0 === f ? T : f; const p = _(r); const u = p ? s ? H : H.filter(function (e) { return _(e) === p }) : P; let l = u.filter(function (e) { return c.indexOf(e) >= 0 }); l.length === 0 && (l = u); const d = l.reduce(function (t, n) { return t[n] = Y(e, { placement: n, boundary: o, rootBoundary: i, padding: a })[C(n)], t }, {}); return Object.keys(d).sort(function (e, t) { return d[e] - d[t] }) } const pe = { name: 'flip', enabled: !0, phase: 'main', fn: function (e) { const t = e.state; const n = e.options; const r = e.name; if (!t.modifiersData[r]._skip) { for (var o = n.mainAxis, i = void 0 === o || o, a = n.altAxis, s = void 0 === a || a, f = n.fallbackPlacements, c = n.padding, p = n.boundary, u = n.rootBoundary, l = n.altBoundary, d = n.flipVariations, h = void 0 === d || d, m = n.allowedAutoPlacements, v = t.options.placement, g = C(v), y = f || (g === v || !h ? [ae(v)] : (function (e) { if (C(e) === L) return []; const t = ae(e); return [fe(e), t, fe(t)] }(v))), b = [v].concat(y).reduce(function (e, n) { return e.concat(C(n) === L ? ce(t, { placement: n, boundary: p, rootBoundary: u, padding: c, flipVariations: h, allowedAutoPlacements: m }) : n) }, []), x = t.rects.reference, w = t.rects.popper, O = new Map(), P = !0, k = b[0], W = 0; W < b.length; W++) { const B = b[W]; const H = C(B); const T = _(B) === M; const R = [j, E].indexOf(H) >= 0; const S = R ? 'width' : 'height'; const q = Y(t, { placement: B, boundary: p, rootBoundary: u, altBoundary: l, padding: c }); let V = R ? T ? D : A : T ? E : j; x[S] > w[S] && (V = ae(V)); const N = ae(V); const I = []; if (i && I.push(q[H] <= 0), s && I.push(q[V] <= 0, q[N] <= 0), I.every(function (e) { return e })) { k = B, P = !1; break }O.set(B, I) } if (P) for (let F = function (e) { const t = b.find(function (t) { const n = O.get(t); if (n) return n.slice(0, e).every(function (e) { return e }) }); if (t) return k = t, 'break' }, U = h ? 3 : 1; U > 0; U--) { if (F(U) === 'break') break }t.placement !== k && (t.modifiersData[r]._skip = !0, t.placement = k, t.reset = !0) } }, requiresIfExists: ['offset'], data: { _skip: !1 } }; function ue (e, t, n) { return i(e, a(t, n)) } const le = { name: 'preventOverflow', enabled: !0, phase: 'main', fn: function (e) { const t = e.state; const n = e.options; const r = e.name; const o = n.mainAxis; const s = void 0 === o || o; const f = n.altAxis; const c = void 0 !== f && f; const p = n.boundary; const u = n.rootBoundary; const l = n.altBoundary; const d = n.padding; const h = n.tether; const m = void 0 === h || h; const g = n.tetherOffset; const y = void 0 === g ? 0 : g; const b = Y(t, { boundary: p, rootBoundary: u, padding: d, altBoundary: l }); const x = C(t.placement); const w = _(t.placement); const L = !w; const P = F(x); const k = P === 'x' ? 'y' : 'x'; const W = t.modifiersData.popperOffsets; const B = t.rects.reference; const H = t.rects.popper; const T = typeof y === 'function' ? y(Object.assign({}, t.rects, { placement: t.placement })) : y; const R = typeof T === 'number' ? { mainAxis: T, altAxis: T } : Object.assign({ mainAxis: 0, altAxis: 0 }, T); const S = t.modifiersData.offset ? t.modifiersData.offset[t.placement] : null; const q = { x: 0, y: 0 }; if (W) { if (s) { let V; const N = P === 'y' ? j : A; const I = P === 'y' ? E : D; const U = P === 'y' ? 'height' : 'width'; const z = W[P]; const X = z + b[N]; const G = z - b[I]; const J = m ? -H[U] / 2 : 0; const K = w === M ? B[U] : H[U]; const Q = w === M ? -H[U] : -B[U]; const Z = t.elements.arrow; const $ = m && Z ? v(Z) : { width: 0, height: 0 }; const ee = t.modifiersData['arrow#persistent'] ? t.modifiersData['arrow#persistent'].padding : { top: 0, right: 0, bottom: 0, left: 0 }; const te = ee[N]; const ne = ee[I]; const re = ue(0, B[U], $[U]); const oe = L ? B[U] / 2 - J - re - te - R.mainAxis : K - re - te - R.mainAxis; const ie = L ? -B[U] / 2 + J + re + ne + R.mainAxis : Q + re + ne + R.mainAxis; const ae = t.elements.arrow && O(t.elements.arrow); const se = ae ? P === 'y' ? ae.clientTop || 0 : ae.clientLeft || 0 : 0; const fe = (V = S == null ? void 0 : S[P]) != null ? V : 0; const ce = z + ie - fe; const pe = ue(m ? a(X, z + oe - fe - se) : X, z, m ? i(G, ce) : G); W[P] = pe, q[P] = pe - z } if (c) { let le; const de = P === 'x' ? j : A; const he = P === 'x' ? E : D; const me = W[k]; const ve = k === 'y' ? 'height' : 'width'; const ge = me + b[de]; const ye = me - b[he]; const be = [j, A].indexOf(x) !== -1; const xe = (le = S == null ? void 0 : S[k]) != null ? le : 0; const we = be ? ge : me - B[ve] - H[ve] - xe + R.altAxis; const Oe = be ? me + B[ve] + H[ve] - xe - R.altAxis : ye; const je = m && be ? (function (e, t, n) { const r = ue(e, t, n); return r > n ? n : r }(we, me, Oe)) : ue(m ? we : ge, me, m ? Oe : ye); W[k] = je, q[k] = je - me }t.modifiersData[r] = q } }, requiresIfExists: ['offset'] }; const de = { name: 'arrow', enabled: !0, phase: 'main', fn: function (e) { let t; const n = e.state; const r = e.name; const o = e.options; const i = n.elements.arrow; const a = n.modifiersData.popperOffsets; const s = C(n.placement); const f = F(s); const c = [A, D].indexOf(s) >= 0 ? 'height' : 'width'; if (i && a) { const p = (function (e, t) { return z(typeof (e = typeof e === 'function' ? e(Object.assign({}, t.rects, { placement: t.placement })) : e) !== 'number' ? e : X(e, P)) }(o.padding, n)); const u = v(i); const l = f === 'y' ? j : A; const d = f === 'y' ? E : D; const h = n.rects.reference[c] + n.rects.reference[f] - a[f] - n.rects.popper[c]; const m = a[f] - n.rects.reference[f]; const g = O(i); const y = g ? f === 'y' ? g.clientHeight || 0 : g.clientWidth || 0 : 0; const b = h / 2 - m / 2; const x = p[l]; const w = y - u[c] - p[d]; const L = y / 2 - u[c] / 2 + b; const M = ue(x, L, w); const k = f; n.modifiersData[r] = ((t = {})[k] = M, t.centerOffset = M - L, t) } }, effect: function (e) { const t = e.state; const n = e.options.element; let r = void 0 === n ? '[data-popper-arrow]' : n; r != null && (typeof r !== 'string' || (r = t.elements.popper.querySelector(r))) && q(t.elements.popper, r) && (t.elements.arrow = r) }, requires: ['popperOffsets'], requiresIfExists: ['preventOverflow'] }; function he (e, t, n) { return void 0 === n && (n = { x: 0, y: 0 }), { top: e.top - t.height - n.y, right: e.right - t.width + n.x, bottom: e.bottom - t.height + n.y, left: e.left - t.width - n.x } } function me (e) { return [j, D, E, A].some(function (t) { return e[t] >= 0 }) } const ve = { name: 'hide', enabled: !0, phase: 'main', requiresIfExists: ['preventOverflow'], fn: function (e) { const t = e.state; const n = e.name; const r = t.rects.reference; const o = t.rects.popper; const i = t.modifiersData.preventOverflow; const a = Y(t, { elementContext: 'reference' }); const s = Y(t, { altBoundary: !0 }); const f = he(a, r); const c = he(s, o, i); const p = me(f); const u = me(c); t.modifiersData[n] = { referenceClippingOffsets: f, popperEscapeOffsets: c, isReferenceHidden: p, hasPopperEscaped: u }, t.attributes.popper = Object.assign({}, t.attributes.popper, { 'data-popper-reference-hidden': p, 'data-popper-escaped': u }) } }; const ge = K({ defaultModifiers: [Z, $, ne, re] }); const ye = [Z, $, ne, re, oe, pe, le, de, ve]; const be = K({ defaultModifiers: ye }); e.applyStyles = re, e.arrow = de, e.computeStyles = ne, e.createPopper = be, e.createPopperLite = ge, e.defaultModifiers = ye, e.detectOverflow = Y, e.eventListeners = Z, e.flip = pe, e.hide = ve, e.offset = oe, e.popperGenerator = K, e.popperOffsets = $, e.preventOverflow = le, Object.defineProperty(e, '__esModule', { value: !0 }) }))
@@ -1 +1 @@
1
- !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@popperjs/core")):"function"==typeof define&&define.amd?define(["@popperjs/core"],e):(t=t||self).tippy=e(t.Popper)}(this,(function(t){"use strict";var e="undefined"!=typeof window&&"undefined"!=typeof document,n=!!e&&!!window.msCrypto,r={passive:!0,capture:!0},o=function(){return document.body};function i(t,e,n){if(Array.isArray(t)){var r=t[e];return null==r?Array.isArray(n)?n[e]:n:r}return t}function a(t,e){var n={}.toString.call(t);return 0===n.indexOf("[object")&&n.indexOf(e+"]")>-1}function s(t,e){return"function"==typeof t?t.apply(void 0,e):t}function u(t,e){return 0===e?t:function(r){clearTimeout(n),n=setTimeout((function(){t(r)}),e)};var n}function p(t,e){var n=Object.assign({},t);return e.forEach((function(t){delete n[t]})),n}function c(t){return[].concat(t)}function f(t,e){-1===t.indexOf(e)&&t.push(e)}function l(t){return t.split("-")[0]}function d(t){return[].slice.call(t)}function v(t){return Object.keys(t).reduce((function(e,n){return void 0!==t[n]&&(e[n]=t[n]),e}),{})}function m(){return document.createElement("div")}function g(t){return["Element","Fragment"].some((function(e){return a(t,e)}))}function h(t){return a(t,"MouseEvent")}function b(t){return!(!t||!t._tippy||t._tippy.reference!==t)}function y(t){return g(t)?[t]:function(t){return a(t,"NodeList")}(t)?d(t):Array.isArray(t)?t:d(document.querySelectorAll(t))}function w(t,e){t.forEach((function(t){t&&(t.style.transitionDuration=e+"ms")}))}function x(t,e){t.forEach((function(t){t&&t.setAttribute("data-state",e)}))}function E(t){var e,n=c(t)[0];return null!=n&&null!=(e=n.ownerDocument)&&e.body?n.ownerDocument:document}function O(t,e,n){var r=e+"EventListener";["transitionend","webkitTransitionEnd"].forEach((function(e){t[r](e,n)}))}function C(t,e){for(var n=e;n;){var r;if(t.contains(n))return!0;n=null==n.getRootNode||null==(r=n.getRootNode())?void 0:r.host}return!1}var T={isTouch:!1},A=0;function L(){T.isTouch||(T.isTouch=!0,window.performance&&document.addEventListener("mousemove",D))}function D(){var t=performance.now();t-A<20&&(T.isTouch=!1,document.removeEventListener("mousemove",D)),A=t}function k(){var t=document.activeElement;if(b(t)){var e=t._tippy;t.blur&&!e.state.isVisible&&t.blur()}}var R=Object.assign({appendTo:o,aria:{content:"auto",expanded:"auto"},delay:0,duration:[300,250],getReferenceClientRect:null,hideOnClick:!0,ignoreAttributes:!1,interactive:!1,interactiveBorder:2,interactiveDebounce:0,moveTransition:"",offset:[0,10],onAfterUpdate:function(){},onBeforeUpdate:function(){},onCreate:function(){},onDestroy:function(){},onHidden:function(){},onHide:function(){},onMount:function(){},onShow:function(){},onShown:function(){},onTrigger:function(){},onUntrigger:function(){},onClickOutside:function(){},placement:"top",plugins:[],popperOptions:{},render:null,showOnCreate:!1,touch:!0,trigger:"mouseenter focus",triggerTarget:null},{animateFill:!1,followCursor:!1,inlinePositioning:!1,sticky:!1},{allowHTML:!1,animation:"fade",arrow:!0,content:"",inertia:!1,maxWidth:350,role:"tooltip",theme:"",zIndex:9999}),P=Object.keys(R);function j(t){var e=(t.plugins||[]).reduce((function(e,n){var r,o=n.name,i=n.defaultValue;o&&(e[o]=void 0!==t[o]?t[o]:null!=(r=R[o])?r:i);return e}),{});return Object.assign({},t,e)}function M(t,e){var n=Object.assign({},e,{content:s(e.content,[t])},e.ignoreAttributes?{}:function(t,e){return(e?Object.keys(j(Object.assign({},R,{plugins:e}))):P).reduce((function(e,n){var r=(t.getAttribute("data-tippy-"+n)||"").trim();if(!r)return e;if("content"===n)e[n]=r;else try{e[n]=JSON.parse(r)}catch(t){e[n]=r}return e}),{})}(t,e.plugins));return n.aria=Object.assign({},R.aria,n.aria),n.aria={expanded:"auto"===n.aria.expanded?e.interactive:n.aria.expanded,content:"auto"===n.aria.content?e.interactive?null:"describedby":n.aria.content},n}function V(t,e){t.innerHTML=e}function I(t){var e=m();return!0===t?e.className="tippy-arrow":(e.className="tippy-svg-arrow",g(t)?e.appendChild(t):V(e,t)),e}function S(t,e){g(e.content)?(V(t,""),t.appendChild(e.content)):"function"!=typeof e.content&&(e.allowHTML?V(t,e.content):t.textContent=e.content)}function B(t){var e=t.firstElementChild,n=d(e.children);return{box:e,content:n.find((function(t){return t.classList.contains("tippy-content")})),arrow:n.find((function(t){return t.classList.contains("tippy-arrow")||t.classList.contains("tippy-svg-arrow")})),backdrop:n.find((function(t){return t.classList.contains("tippy-backdrop")}))}}function N(t){var e=m(),n=m();n.className="tippy-box",n.setAttribute("data-state","hidden"),n.setAttribute("tabindex","-1");var r=m();function o(n,r){var o=B(e),i=o.box,a=o.content,s=o.arrow;r.theme?i.setAttribute("data-theme",r.theme):i.removeAttribute("data-theme"),"string"==typeof r.animation?i.setAttribute("data-animation",r.animation):i.removeAttribute("data-animation"),r.inertia?i.setAttribute("data-inertia",""):i.removeAttribute("data-inertia"),i.style.maxWidth="number"==typeof r.maxWidth?r.maxWidth+"px":r.maxWidth,r.role?i.setAttribute("role",r.role):i.removeAttribute("role"),n.content===r.content&&n.allowHTML===r.allowHTML||S(a,t.props),r.arrow?s?n.arrow!==r.arrow&&(i.removeChild(s),i.appendChild(I(r.arrow))):i.appendChild(I(r.arrow)):s&&i.removeChild(s)}return r.className="tippy-content",r.setAttribute("data-state","hidden"),S(r,t.props),e.appendChild(n),n.appendChild(r),o(t.props,t.props),{popper:e,onUpdate:o}}N.$$tippy=!0;var H=1,U=[],_=[];function z(e,a){var p,g,b,y,A,L,D,k,P=M(e,Object.assign({},R,j(v(a)))),V=!1,I=!1,S=!1,N=!1,z=[],F=u(wt,P.interactiveDebounce),W=H++,X=(k=P.plugins).filter((function(t,e){return k.indexOf(t)===e})),Y={id:W,reference:e,popper:m(),popperInstance:null,props:P,state:{isEnabled:!0,isVisible:!1,isDestroyed:!1,isMounted:!1,isShown:!1},plugins:X,clearDelayTimeouts:function(){clearTimeout(p),clearTimeout(g),cancelAnimationFrame(b)},setProps:function(t){if(Y.state.isDestroyed)return;at("onBeforeUpdate",[Y,t]),bt();var n=Y.props,r=M(e,Object.assign({},n,v(t),{ignoreAttributes:!0}));Y.props=r,ht(),n.interactiveDebounce!==r.interactiveDebounce&&(pt(),F=u(wt,r.interactiveDebounce));n.triggerTarget&&!r.triggerTarget?c(n.triggerTarget).forEach((function(t){t.removeAttribute("aria-expanded")})):r.triggerTarget&&e.removeAttribute("aria-expanded");ut(),it(),J&&J(n,r);Y.popperInstance&&(Ct(),At().forEach((function(t){requestAnimationFrame(t._tippy.popperInstance.forceUpdate)})));at("onAfterUpdate",[Y,t])},setContent:function(t){Y.setProps({content:t})},show:function(){var t=Y.state.isVisible,e=Y.state.isDestroyed,n=!Y.state.isEnabled,r=T.isTouch&&!Y.props.touch,a=i(Y.props.duration,0,R.duration);if(t||e||n||r)return;if(et().hasAttribute("disabled"))return;if(at("onShow",[Y],!1),!1===Y.props.onShow(Y))return;Y.state.isVisible=!0,tt()&&($.style.visibility="visible");it(),dt(),Y.state.isMounted||($.style.transition="none");if(tt()){var u=rt(),p=u.box,c=u.content;w([p,c],0)}L=function(){var t;if(Y.state.isVisible&&!N){if(N=!0,$.offsetHeight,$.style.transition=Y.props.moveTransition,tt()&&Y.props.animation){var e=rt(),n=e.box,r=e.content;w([n,r],a),x([n,r],"visible")}st(),ut(),f(_,Y),null==(t=Y.popperInstance)||t.forceUpdate(),at("onMount",[Y]),Y.props.animation&&tt()&&function(t,e){mt(t,e)}(a,(function(){Y.state.isShown=!0,at("onShown",[Y])}))}},function(){var t,e=Y.props.appendTo,n=et();t=Y.props.interactive&&e===o||"parent"===e?n.parentNode:s(e,[n]);t.contains($)||t.appendChild($);Y.state.isMounted=!0,Ct()}()},hide:function(){var t=!Y.state.isVisible,e=Y.state.isDestroyed,n=!Y.state.isEnabled,r=i(Y.props.duration,1,R.duration);if(t||e||n)return;if(at("onHide",[Y],!1),!1===Y.props.onHide(Y))return;Y.state.isVisible=!1,Y.state.isShown=!1,N=!1,V=!1,tt()&&($.style.visibility="hidden");if(pt(),vt(),it(!0),tt()){var o=rt(),a=o.box,s=o.content;Y.props.animation&&(w([a,s],r),x([a,s],"hidden"))}st(),ut(),Y.props.animation?tt()&&function(t,e){mt(t,(function(){!Y.state.isVisible&&$.parentNode&&$.parentNode.contains($)&&e()}))}(r,Y.unmount):Y.unmount()},hideWithInteractivity:function(t){nt().addEventListener("mousemove",F),f(U,F),F(t)},enable:function(){Y.state.isEnabled=!0},disable:function(){Y.hide(),Y.state.isEnabled=!1},unmount:function(){Y.state.isVisible&&Y.hide();if(!Y.state.isMounted)return;Tt(),At().forEach((function(t){t._tippy.unmount()})),$.parentNode&&$.parentNode.removeChild($);_=_.filter((function(t){return t!==Y})),Y.state.isMounted=!1,at("onHidden",[Y])},destroy:function(){if(Y.state.isDestroyed)return;Y.clearDelayTimeouts(),Y.unmount(),bt(),delete e._tippy,Y.state.isDestroyed=!0,at("onDestroy",[Y])}};if(!P.render)return Y;var q=P.render(Y),$=q.popper,J=q.onUpdate;$.setAttribute("data-tippy-root",""),$.id="tippy-"+Y.id,Y.popper=$,e._tippy=Y,$._tippy=Y;var G=X.map((function(t){return t.fn(Y)})),K=e.hasAttribute("aria-expanded");return ht(),ut(),it(),at("onCreate",[Y]),P.showOnCreate&&Lt(),$.addEventListener("mouseenter",(function(){Y.props.interactive&&Y.state.isVisible&&Y.clearDelayTimeouts()})),$.addEventListener("mouseleave",(function(){Y.props.interactive&&Y.props.trigger.indexOf("mouseenter")>=0&&nt().addEventListener("mousemove",F)})),Y;function Q(){var t=Y.props.touch;return Array.isArray(t)?t:[t,0]}function Z(){return"hold"===Q()[0]}function tt(){var t;return!(null==(t=Y.props.render)||!t.$$tippy)}function et(){return D||e}function nt(){var t=et().parentNode;return t?E(t):document}function rt(){return B($)}function ot(t){return Y.state.isMounted&&!Y.state.isVisible||T.isTouch||y&&"focus"===y.type?0:i(Y.props.delay,t?0:1,R.delay)}function it(t){void 0===t&&(t=!1),$.style.pointerEvents=Y.props.interactive&&!t?"":"none",$.style.zIndex=""+Y.props.zIndex}function at(t,e,n){var r;(void 0===n&&(n=!0),G.forEach((function(n){n[t]&&n[t].apply(n,e)})),n)&&(r=Y.props)[t].apply(r,e)}function st(){var t=Y.props.aria;if(t.content){var n="aria-"+t.content,r=$.id;c(Y.props.triggerTarget||e).forEach((function(t){var e=t.getAttribute(n);if(Y.state.isVisible)t.setAttribute(n,e?e+" "+r:r);else{var o=e&&e.replace(r,"").trim();o?t.setAttribute(n,o):t.removeAttribute(n)}}))}}function ut(){!K&&Y.props.aria.expanded&&c(Y.props.triggerTarget||e).forEach((function(t){Y.props.interactive?t.setAttribute("aria-expanded",Y.state.isVisible&&t===et()?"true":"false"):t.removeAttribute("aria-expanded")}))}function pt(){nt().removeEventListener("mousemove",F),U=U.filter((function(t){return t!==F}))}function ct(t){if(!T.isTouch||!S&&"mousedown"!==t.type){var n=t.composedPath&&t.composedPath()[0]||t.target;if(!Y.props.interactive||!C($,n)){if(c(Y.props.triggerTarget||e).some((function(t){return C(t,n)}))){if(T.isTouch)return;if(Y.state.isVisible&&Y.props.trigger.indexOf("click")>=0)return}else at("onClickOutside",[Y,t]);!0===Y.props.hideOnClick&&(Y.clearDelayTimeouts(),Y.hide(),I=!0,setTimeout((function(){I=!1})),Y.state.isMounted||vt())}}}function ft(){S=!0}function lt(){S=!1}function dt(){var t=nt();t.addEventListener("mousedown",ct,!0),t.addEventListener("touchend",ct,r),t.addEventListener("touchstart",lt,r),t.addEventListener("touchmove",ft,r)}function vt(){var t=nt();t.removeEventListener("mousedown",ct,!0),t.removeEventListener("touchend",ct,r),t.removeEventListener("touchstart",lt,r),t.removeEventListener("touchmove",ft,r)}function mt(t,e){var n=rt().box;function r(t){t.target===n&&(O(n,"remove",r),e())}if(0===t)return e();O(n,"remove",A),O(n,"add",r),A=r}function gt(t,n,r){void 0===r&&(r=!1),c(Y.props.triggerTarget||e).forEach((function(e){e.addEventListener(t,n,r),z.push({node:e,eventType:t,handler:n,options:r})}))}function ht(){var t;Z()&&(gt("touchstart",yt,{passive:!0}),gt("touchend",xt,{passive:!0})),(t=Y.props.trigger,t.split(/\s+/).filter(Boolean)).forEach((function(t){if("manual"!==t)switch(gt(t,yt),t){case"mouseenter":gt("mouseleave",xt);break;case"focus":gt(n?"focusout":"blur",Et);break;case"focusin":gt("focusout",Et)}}))}function bt(){z.forEach((function(t){var e=t.node,n=t.eventType,r=t.handler,o=t.options;e.removeEventListener(n,r,o)})),z=[]}function yt(t){var e,n=!1;if(Y.state.isEnabled&&!Ot(t)&&!I){var r="focus"===(null==(e=y)?void 0:e.type);y=t,D=t.currentTarget,ut(),!Y.state.isVisible&&h(t)&&U.forEach((function(e){return e(t)})),"click"===t.type&&(Y.props.trigger.indexOf("mouseenter")<0||V)&&!1!==Y.props.hideOnClick&&Y.state.isVisible?n=!0:Lt(t),"click"===t.type&&(V=!n),n&&!r&&Dt(t)}}function wt(t){var e=t.target,n=et().contains(e)||$.contains(e);"mousemove"===t.type&&n||function(t,e){var n=e.clientX,r=e.clientY;return t.every((function(t){var e=t.popperRect,o=t.popperState,i=t.props.interactiveBorder,a=l(o.placement),s=o.modifiersData.offset;if(!s)return!0;var u="bottom"===a?s.top.y:0,p="top"===a?s.bottom.y:0,c="right"===a?s.left.x:0,f="left"===a?s.right.x:0,d=e.top-r+u>i,v=r-e.bottom-p>i,m=e.left-n+c>i,g=n-e.right-f>i;return d||v||m||g}))}(At().concat($).map((function(t){var e,n=null==(e=t._tippy.popperInstance)?void 0:e.state;return n?{popperRect:t.getBoundingClientRect(),popperState:n,props:P}:null})).filter(Boolean),t)&&(pt(),Dt(t))}function xt(t){Ot(t)||Y.props.trigger.indexOf("click")>=0&&V||(Y.props.interactive?Y.hideWithInteractivity(t):Dt(t))}function Et(t){Y.props.trigger.indexOf("focusin")<0&&t.target!==et()||Y.props.interactive&&t.relatedTarget&&$.contains(t.relatedTarget)||Dt(t)}function Ot(t){return!!T.isTouch&&Z()!==t.type.indexOf("touch")>=0}function Ct(){Tt();var n=Y.props,r=n.popperOptions,o=n.placement,i=n.offset,a=n.getReferenceClientRect,s=n.moveTransition,u=tt()?B($).arrow:null,p=a?{getBoundingClientRect:a,contextElement:a.contextElement||et()}:e,c=[{name:"offset",options:{offset:i}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5}},{name:"computeStyles",options:{adaptive:!s}},{name:"$$tippy",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(t){var e=t.state;if(tt()){var n=rt().box;["placement","reference-hidden","escaped"].forEach((function(t){"placement"===t?n.setAttribute("data-placement",e.placement):e.attributes.popper["data-popper-"+t]?n.setAttribute("data-"+t,""):n.removeAttribute("data-"+t)})),e.attributes.popper={}}}}];tt()&&u&&c.push({name:"arrow",options:{element:u,padding:3}}),c.push.apply(c,(null==r?void 0:r.modifiers)||[]),Y.popperInstance=t.createPopper(p,$,Object.assign({},r,{placement:o,onFirstUpdate:L,modifiers:c}))}function Tt(){Y.popperInstance&&(Y.popperInstance.destroy(),Y.popperInstance=null)}function At(){return d($.querySelectorAll("[data-tippy-root]"))}function Lt(t){Y.clearDelayTimeouts(),t&&at("onTrigger",[Y,t]),dt();var e=ot(!0),n=Q(),r=n[0],o=n[1];T.isTouch&&"hold"===r&&o&&(e=o),e?p=setTimeout((function(){Y.show()}),e):Y.show()}function Dt(t){if(Y.clearDelayTimeouts(),at("onUntrigger",[Y,t]),Y.state.isVisible){if(!(Y.props.trigger.indexOf("mouseenter")>=0&&Y.props.trigger.indexOf("click")>=0&&["mouseleave","mousemove"].indexOf(t.type)>=0&&V)){var e=ot(!1);e?g=setTimeout((function(){Y.state.isVisible&&Y.hide()}),e):b=requestAnimationFrame((function(){Y.hide()}))}}else vt()}}function F(t,e){void 0===e&&(e={});var n=R.plugins.concat(e.plugins||[]);document.addEventListener("touchstart",L,r),window.addEventListener("blur",k);var o=Object.assign({},e,{plugins:n}),i=y(t).reduce((function(t,e){var n=e&&z(e,o);return n&&t.push(n),t}),[]);return g(t)?i[0]:i}F.defaultProps=R,F.setDefaultProps=function(t){Object.keys(t).forEach((function(e){R[e]=t[e]}))},F.currentInput=T;var W=Object.assign({},t.applyStyles,{effect:function(t){var e=t.state,n={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};Object.assign(e.elements.popper.style,n.popper),e.styles=n,e.elements.arrow&&Object.assign(e.elements.arrow.style,n.arrow)}}),X={mouseover:"mouseenter",focusin:"focus",click:"click"};var Y={name:"animateFill",defaultValue:!1,fn:function(t){var e;if(null==(e=t.props.render)||!e.$$tippy)return{};var n=B(t.popper),r=n.box,o=n.content,i=t.props.animateFill?function(){var t=m();return t.className="tippy-backdrop",x([t],"hidden"),t}():null;return{onCreate:function(){i&&(r.insertBefore(i,r.firstElementChild),r.setAttribute("data-animatefill",""),r.style.overflow="hidden",t.setProps({arrow:!1,animation:"shift-away"}))},onMount:function(){if(i){var t=r.style.transitionDuration,e=Number(t.replace("ms",""));o.style.transitionDelay=Math.round(e/10)+"ms",i.style.transitionDuration=t,x([i],"visible")}},onShow:function(){i&&(i.style.transitionDuration="0ms")},onHide:function(){i&&x([i],"hidden")}}}};var q={clientX:0,clientY:0},$=[];function J(t){var e=t.clientX,n=t.clientY;q={clientX:e,clientY:n}}var G={name:"followCursor",defaultValue:!1,fn:function(t){var e=t.reference,n=E(t.props.triggerTarget||e),r=!1,o=!1,i=!0,a=t.props;function s(){return"initial"===t.props.followCursor&&t.state.isVisible}function u(){n.addEventListener("mousemove",f)}function p(){n.removeEventListener("mousemove",f)}function c(){r=!0,t.setProps({getReferenceClientRect:null}),r=!1}function f(n){var r=!n.target||e.contains(n.target),o=t.props.followCursor,i=n.clientX,a=n.clientY,s=e.getBoundingClientRect(),u=i-s.left,p=a-s.top;!r&&t.props.interactive||t.setProps({getReferenceClientRect:function(){var t=e.getBoundingClientRect(),n=i,r=a;"initial"===o&&(n=t.left+u,r=t.top+p);var s="horizontal"===o?t.top:r,c="vertical"===o?t.right:n,f="horizontal"===o?t.bottom:r,l="vertical"===o?t.left:n;return{width:c-l,height:f-s,top:s,right:c,bottom:f,left:l}}})}function l(){t.props.followCursor&&($.push({instance:t,doc:n}),function(t){t.addEventListener("mousemove",J)}(n))}function d(){0===($=$.filter((function(e){return e.instance!==t}))).filter((function(t){return t.doc===n})).length&&function(t){t.removeEventListener("mousemove",J)}(n)}return{onCreate:l,onDestroy:d,onBeforeUpdate:function(){a=t.props},onAfterUpdate:function(e,n){var i=n.followCursor;r||void 0!==i&&a.followCursor!==i&&(d(),i?(l(),!t.state.isMounted||o||s()||u()):(p(),c()))},onMount:function(){t.props.followCursor&&!o&&(i&&(f(q),i=!1),s()||u())},onTrigger:function(t,e){h(e)&&(q={clientX:e.clientX,clientY:e.clientY}),o="focus"===e.type},onHidden:function(){t.props.followCursor&&(c(),p(),i=!0)}}}};var K={name:"inlinePositioning",defaultValue:!1,fn:function(t){var e,n=t.reference;var r=-1,o=!1,i=[],a={name:"tippyInlinePositioning",enabled:!0,phase:"afterWrite",fn:function(o){var a=o.state;t.props.inlinePositioning&&(-1!==i.indexOf(a.placement)&&(i=[]),e!==a.placement&&-1===i.indexOf(a.placement)&&(i.push(a.placement),t.setProps({getReferenceClientRect:function(){return function(t){return function(t,e,n,r){if(n.length<2||null===t)return e;if(2===n.length&&r>=0&&n[0].left>n[1].right)return n[r]||e;switch(t){case"top":case"bottom":var o=n[0],i=n[n.length-1],a="top"===t,s=o.top,u=i.bottom,p=a?o.left:i.left,c=a?o.right:i.right;return{top:s,bottom:u,left:p,right:c,width:c-p,height:u-s};case"left":case"right":var f=Math.min.apply(Math,n.map((function(t){return t.left}))),l=Math.max.apply(Math,n.map((function(t){return t.right}))),d=n.filter((function(e){return"left"===t?e.left===f:e.right===l})),v=d[0].top,m=d[d.length-1].bottom;return{top:v,bottom:m,left:f,right:l,width:l-f,height:m-v};default:return e}}(l(t),n.getBoundingClientRect(),d(n.getClientRects()),r)}(a.placement)}})),e=a.placement)}};function s(){var e;o||(e=function(t,e){var n;return{popperOptions:Object.assign({},t.popperOptions,{modifiers:[].concat(((null==(n=t.popperOptions)?void 0:n.modifiers)||[]).filter((function(t){return t.name!==e.name})),[e])})}}(t.props,a),o=!0,t.setProps(e),o=!1)}return{onCreate:s,onAfterUpdate:s,onTrigger:function(e,n){if(h(n)){var o=d(t.reference.getClientRects()),i=o.find((function(t){return t.left-2<=n.clientX&&t.right+2>=n.clientX&&t.top-2<=n.clientY&&t.bottom+2>=n.clientY})),a=o.indexOf(i);r=a>-1?a:r}},onHidden:function(){r=-1}}}};var Q={name:"sticky",defaultValue:!1,fn:function(t){var e=t.reference,n=t.popper;function r(e){return!0===t.props.sticky||t.props.sticky===e}var o=null,i=null;function a(){var s=r("reference")?(t.popperInstance?t.popperInstance.state.elements.reference:e).getBoundingClientRect():null,u=r("popper")?n.getBoundingClientRect():null;(s&&Z(o,s)||u&&Z(i,u))&&t.popperInstance&&t.popperInstance.update(),o=s,i=u,t.state.isMounted&&requestAnimationFrame(a)}return{onMount:function(){t.props.sticky&&a()}}}};function Z(t,e){return!t||!e||(t.top!==e.top||t.right!==e.right||t.bottom!==e.bottom||t.left!==e.left)}return e&&function(t){var e=document.createElement("style");e.textContent=t,e.setAttribute("data-tippy-stylesheet","");var n=document.head,r=document.querySelector("head>style,head>link");r?n.insertBefore(e,r):n.appendChild(e)}('.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:"";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}'),F.setDefaultProps({plugins:[Y,G,K,Q],render:N}),F.createSingleton=function(t,e){var n;void 0===e&&(e={});var r,o=t,i=[],a=[],s=e.overrides,u=[],f=!1;function l(){a=o.map((function(t){return c(t.props.triggerTarget||t.reference)})).reduce((function(t,e){return t.concat(e)}),[])}function d(){i=o.map((function(t){return t.reference}))}function v(t){o.forEach((function(e){t?e.enable():e.disable()}))}function g(t){return o.map((function(e){var n=e.setProps;return e.setProps=function(o){n(o),e.reference===r&&t.setProps(o)},function(){e.setProps=n}}))}function h(t,e){var n=a.indexOf(e);if(e!==r){r=e;var u=(s||[]).concat("content").reduce((function(t,e){return t[e]=o[n].props[e],t}),{});t.setProps(Object.assign({},u,{getReferenceClientRect:"function"==typeof u.getReferenceClientRect?u.getReferenceClientRect:function(){var t;return null==(t=i[n])?void 0:t.getBoundingClientRect()}}))}}v(!1),d(),l();var b={fn:function(){return{onDestroy:function(){v(!0)},onHidden:function(){r=null},onClickOutside:function(t){t.props.showOnCreate&&!f&&(f=!0,r=null)},onShow:function(t){t.props.showOnCreate&&!f&&(f=!0,h(t,i[0]))},onTrigger:function(t,e){h(t,e.currentTarget)}}}},y=F(m(),Object.assign({},p(e,["overrides"]),{plugins:[b].concat(e.plugins||[]),triggerTarget:a,popperOptions:Object.assign({},e.popperOptions,{modifiers:[].concat((null==(n=e.popperOptions)?void 0:n.modifiers)||[],[W])})})),w=y.show;y.show=function(t){if(w(),!r&&null==t)return h(y,i[0]);if(!r||null!=t){if("number"==typeof t)return i[t]&&h(y,i[t]);if(o.indexOf(t)>=0){var e=t.reference;return h(y,e)}return i.indexOf(t)>=0?h(y,t):void 0}},y.showNext=function(){var t=i[0];if(!r)return y.show(0);var e=i.indexOf(r);y.show(i[e+1]||t)},y.showPrevious=function(){var t=i[i.length-1];if(!r)return y.show(t);var e=i.indexOf(r),n=i[e-1]||t;y.show(n)};var x=y.setProps;return y.setProps=function(t){s=t.overrides||s,x(t)},y.setInstances=function(t){v(!0),u.forEach((function(t){return t()})),o=t,v(!1),d(),l(),u=g(y),y.setProps({triggerTarget:a})},u=g(y),y},F.delegate=function(t,e){var n=[],o=[],i=!1,a=e.target,s=p(e,["target"]),u=Object.assign({},s,{trigger:"manual",touch:!1}),f=Object.assign({touch:R.touch},s,{showOnCreate:!0}),l=F(t,u);function d(t){if(t.target&&!i){var n=t.target.closest(a);if(n){var r=n.getAttribute("data-tippy-trigger")||e.trigger||R.trigger;if(!n._tippy&&!("touchstart"===t.type&&"boolean"==typeof f.touch||"touchstart"!==t.type&&r.indexOf(X[t.type])<0)){var s=F(n,f);s&&(o=o.concat(s))}}}}function v(t,e,r,o){void 0===o&&(o=!1),t.addEventListener(e,r,o),n.push({node:t,eventType:e,handler:r,options:o})}return c(l).forEach((function(t){var e=t.destroy,a=t.enable,s=t.disable;t.destroy=function(t){void 0===t&&(t=!0),t&&o.forEach((function(t){t.destroy()})),o=[],n.forEach((function(t){var e=t.node,n=t.eventType,r=t.handler,o=t.options;e.removeEventListener(n,r,o)})),n=[],e()},t.enable=function(){a(),o.forEach((function(t){return t.enable()})),i=!1},t.disable=function(){s(),o.forEach((function(t){return t.disable()})),i=!0},function(t){var e=t.reference;v(e,"touchstart",d,r),v(e,"mouseover",d),v(e,"focusin",d),v(e,"click",d)}(t)})),l},F.hideAll=function(t){var e=void 0===t?{}:t,n=e.exclude,r=e.duration;_.forEach((function(t){var e=!1;if(n&&(e=b(n)?t.reference===n:t.popper===n.popper),!e){var o=t.props.duration;t.setProps({duration:r}),t.hide(),t.state.isDestroyed||t.setProps({duration:o})}}))},F.roundArrow='<svg width="16" height="6" xmlns="http://www.w3.org/2000/svg"><path d="M0 6s1.796-.013 4.67-3.615C5.851.9 6.93.006 8 0c1.07-.006 2.148.887 3.343 2.385C14.233 6.005 16 6 16 6H0z"></svg>',F}));
1
+ !(function (t, e) { typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = e(require('@popperjs/core')) : typeof define === 'function' && define.amd ? define(['@popperjs/core'], e) : (t = t || self).tippy = e(t.Popper) }(this, function (t) { 'use strict'; const e = typeof window !== 'undefined' && typeof document !== 'undefined'; const n = !!e && !!window.msCrypto; const r = { passive: !0, capture: !0 }; const o = function () { return document.body }; function i (t, e, n) { if (Array.isArray(t)) { const r = t[e]; return r == null ? Array.isArray(n) ? n[e] : n : r } return t } function a (t, e) { const n = {}.toString.call(t); return n.indexOf('[object') === 0 && n.indexOf(e + ']') > -1 } function s (t, e) { return typeof t === 'function' ? t.apply(void 0, e) : t } function u (t, e) { return e === 0 ? t : function (r) { clearTimeout(n), n = setTimeout(function () { t(r) }, e) }; let n } function p (t, e) { const n = Object.assign({}, t); return e.forEach(function (t) { delete n[t] }), n } function c (t) { return [].concat(t) } function f (t, e) { t.indexOf(e) === -1 && t.push(e) } function l (t) { return t.split('-')[0] } function d (t) { return [].slice.call(t) } function v (t) { return Object.keys(t).reduce(function (e, n) { return void 0 !== t[n] && (e[n] = t[n]), e }, {}) } function m () { return document.createElement('div') } function g (t) { return ['Element', 'Fragment'].some(function (e) { return a(t, e) }) } function h (t) { return a(t, 'MouseEvent') } function b (t) { return !(!t || !t._tippy || t._tippy.reference !== t) } function y (t) { return g(t) ? [t] : (function (t) { return a(t, 'NodeList') }(t)) ? d(t) : Array.isArray(t) ? t : d(document.querySelectorAll(t)) } function w (t, e) { t.forEach(function (t) { t && (t.style.transitionDuration = e + 'ms') }) } function x (t, e) { t.forEach(function (t) { t && t.setAttribute('data-state', e) }) } function E (t) { let e; const n = c(t)[0]; return n != null && (e = n.ownerDocument) != null && e.body ? n.ownerDocument : document } function O (t, e, n) { const r = e + 'EventListener'; ['transitionend', 'webkitTransitionEnd'].forEach(function (e) { t[r](e, n) }) } function C (t, e) { for (let n = e; n;) { var r; if (t.contains(n)) return !0; n = n.getRootNode == null || (r = n.getRootNode()) == null ? void 0 : r.host } return !1 } const T = { isTouch: !1 }; let A = 0; function L () { T.isTouch || (T.isTouch = !0, window.performance && document.addEventListener('mousemove', D)) } function D () { const t = performance.now(); t - A < 20 && (T.isTouch = !1, document.removeEventListener('mousemove', D)), A = t } function k () { const t = document.activeElement; if (b(t)) { const e = t._tippy; t.blur && !e.state.isVisible && t.blur() } } const R = Object.assign({ appendTo: o, aria: { content: 'auto', expanded: 'auto' }, delay: 0, duration: [300, 250], getReferenceClientRect: null, hideOnClick: !0, ignoreAttributes: !1, interactive: !1, interactiveBorder: 2, interactiveDebounce: 0, moveTransition: '', offset: [0, 10], onAfterUpdate: function () {}, onBeforeUpdate: function () {}, onCreate: function () {}, onDestroy: function () {}, onHidden: function () {}, onHide: function () {}, onMount: function () {}, onShow: function () {}, onShown: function () {}, onTrigger: function () {}, onUntrigger: function () {}, onClickOutside: function () {}, placement: 'top', plugins: [], popperOptions: {}, render: null, showOnCreate: !1, touch: !0, trigger: 'mouseenter focus', triggerTarget: null }, { animateFill: !1, followCursor: !1, inlinePositioning: !1, sticky: !1 }, { allowHTML: !1, animation: 'fade', arrow: !0, content: '', inertia: !1, maxWidth: 350, role: 'tooltip', theme: '', zIndex: 9999 }); const P = Object.keys(R); function j (t) { const e = (t.plugins || []).reduce(function (e, n) { let r; const o = n.name; const i = n.defaultValue; o && (e[o] = void 0 !== t[o] ? t[o] : (r = R[o]) != null ? r : i); return e }, {}); return Object.assign({}, t, e) } function M (t, e) { const n = Object.assign({}, e, { content: s(e.content, [t]) }, e.ignoreAttributes ? {} : (function (t, e) { return (e ? Object.keys(j(Object.assign({}, R, { plugins: e }))) : P).reduce(function (e, n) { const r = (t.getAttribute('data-tippy-' + n) || '').trim(); if (!r) return e; if (n === 'content')e[n] = r; else try { e[n] = JSON.parse(r) } catch (t) { e[n] = r } return e }, {}) }(t, e.plugins))); return n.aria = Object.assign({}, R.aria, n.aria), n.aria = { expanded: n.aria.expanded === 'auto' ? e.interactive : n.aria.expanded, content: n.aria.content === 'auto' ? e.interactive ? null : 'describedby' : n.aria.content }, n } function V (t, e) { t.innerHTML = e } function I (t) { const e = m(); return !0 === t ? e.className = 'tippy-arrow' : (e.className = 'tippy-svg-arrow', g(t) ? e.appendChild(t) : V(e, t)), e } function S (t, e) { g(e.content) ? (V(t, ''), t.appendChild(e.content)) : typeof e.content !== 'function' && (e.allowHTML ? V(t, e.content) : t.textContent = e.content) } function B (t) { const e = t.firstElementChild; const n = d(e.children); return { box: e, content: n.find(function (t) { return t.classList.contains('tippy-content') }), arrow: n.find(function (t) { return t.classList.contains('tippy-arrow') || t.classList.contains('tippy-svg-arrow') }), backdrop: n.find(function (t) { return t.classList.contains('tippy-backdrop') }) } } function N (t) { const e = m(); const n = m(); n.className = 'tippy-box', n.setAttribute('data-state', 'hidden'), n.setAttribute('tabindex', '-1'); const r = m(); function o (n, r) { const o = B(e); const i = o.box; const a = o.content; const s = o.arrow; r.theme ? i.setAttribute('data-theme', r.theme) : i.removeAttribute('data-theme'), typeof r.animation === 'string' ? i.setAttribute('data-animation', r.animation) : i.removeAttribute('data-animation'), r.inertia ? i.setAttribute('data-inertia', '') : i.removeAttribute('data-inertia'), i.style.maxWidth = typeof r.maxWidth === 'number' ? r.maxWidth + 'px' : r.maxWidth, r.role ? i.setAttribute('role', r.role) : i.removeAttribute('role'), n.content === r.content && n.allowHTML === r.allowHTML || S(a, t.props), r.arrow ? s ? n.arrow !== r.arrow && (i.removeChild(s), i.appendChild(I(r.arrow))) : i.appendChild(I(r.arrow)) : s && i.removeChild(s) } return r.className = 'tippy-content', r.setAttribute('data-state', 'hidden'), S(r, t.props), e.appendChild(n), n.appendChild(r), o(t.props, t.props), { popper: e, onUpdate: o } }N.$$tippy = !0; let H = 1; let U = []; let _ = []; function z (e, a) { let p; let g; let b; let y; let A; let L; let D; let k; const P = M(e, Object.assign({}, R, j(v(a)))); let V = !1; let I = !1; let S = !1; let N = !1; let z = []; let F = u(wt, P.interactiveDebounce); const W = H++; const X = (k = P.plugins).filter(function (t, e) { return k.indexOf(t) === e }); var Y = { id: W, reference: e, popper: m(), popperInstance: null, props: P, state: { isEnabled: !0, isVisible: !1, isDestroyed: !1, isMounted: !1, isShown: !1 }, plugins: X, clearDelayTimeouts: function () { clearTimeout(p), clearTimeout(g), cancelAnimationFrame(b) }, setProps: function (t) { if (Y.state.isDestroyed) return; at('onBeforeUpdate', [Y, t]), bt(); const n = Y.props; const r = M(e, Object.assign({}, n, v(t), { ignoreAttributes: !0 })); Y.props = r, ht(), n.interactiveDebounce !== r.interactiveDebounce && (pt(), F = u(wt, r.interactiveDebounce)); n.triggerTarget && !r.triggerTarget ? c(n.triggerTarget).forEach(function (t) { t.removeAttribute('aria-expanded') }) : r.triggerTarget && e.removeAttribute('aria-expanded'); ut(), it(), J && J(n, r); Y.popperInstance && (Ct(), At().forEach(function (t) { requestAnimationFrame(t._tippy.popperInstance.forceUpdate) })); at('onAfterUpdate', [Y, t]) }, setContent: function (t) { Y.setProps({ content: t }) }, show: function () { const t = Y.state.isVisible; const e = Y.state.isDestroyed; const n = !Y.state.isEnabled; const r = T.isTouch && !Y.props.touch; const a = i(Y.props.duration, 0, R.duration); if (t || e || n || r) return; if (et().hasAttribute('disabled')) return; if (at('onShow', [Y], !1), !1 === Y.props.onShow(Y)) return; Y.state.isVisible = !0, tt() && ($.style.visibility = 'visible'); it(), dt(), Y.state.isMounted || ($.style.transition = 'none'); if (tt()) { const u = rt(); const p = u.box; const c = u.content; w([p, c], 0) }L = function () { let t; if (Y.state.isVisible && !N) { if (N = !0, $.offsetHeight, $.style.transition = Y.props.moveTransition, tt() && Y.props.animation) { const e = rt(); const n = e.box; const r = e.content; w([n, r], a), x([n, r], 'visible') }st(), ut(), f(_, Y), (t = Y.popperInstance) == null || t.forceUpdate(), at('onMount', [Y]), Y.props.animation && tt() && (function (t, e) { mt(t, e) }(a, function () { Y.state.isShown = !0, at('onShown', [Y]) })) } }, (function () { let t; const e = Y.props.appendTo; const n = et(); t = Y.props.interactive && e === o || e === 'parent' ? n.parentNode : s(e, [n]); t.contains($) || t.appendChild($); Y.state.isMounted = !0, Ct() }()) }, hide: function () { const t = !Y.state.isVisible; const e = Y.state.isDestroyed; const n = !Y.state.isEnabled; const r = i(Y.props.duration, 1, R.duration); if (t || e || n) return; if (at('onHide', [Y], !1), !1 === Y.props.onHide(Y)) return; Y.state.isVisible = !1, Y.state.isShown = !1, N = !1, V = !1, tt() && ($.style.visibility = 'hidden'); if (pt(), vt(), it(!0), tt()) { const o = rt(); const a = o.box; const s = o.content; Y.props.animation && (w([a, s], r), x([a, s], 'hidden')) }st(), ut(), Y.props.animation ? tt() && (function (t, e) { mt(t, function () { !Y.state.isVisible && $.parentNode && $.parentNode.contains($) && e() }) }(r, Y.unmount)) : Y.unmount() }, hideWithInteractivity: function (t) { nt().addEventListener('mousemove', F), f(U, F), F(t) }, enable: function () { Y.state.isEnabled = !0 }, disable: function () { Y.hide(), Y.state.isEnabled = !1 }, unmount: function () { Y.state.isVisible && Y.hide(); if (!Y.state.isMounted) return; Tt(), At().forEach(function (t) { t._tippy.unmount() }), $.parentNode && $.parentNode.removeChild($); _ = _.filter(function (t) { return t !== Y }), Y.state.isMounted = !1, at('onHidden', [Y]) }, destroy: function () { if (Y.state.isDestroyed) return; Y.clearDelayTimeouts(), Y.unmount(), bt(), delete e._tippy, Y.state.isDestroyed = !0, at('onDestroy', [Y]) } }; if (!P.render) return Y; const q = P.render(Y); var $ = q.popper; var J = q.onUpdate; $.setAttribute('data-tippy-root', ''), $.id = 'tippy-' + Y.id, Y.popper = $, e._tippy = Y, $._tippy = Y; const G = X.map(function (t) { return t.fn(Y) }); const K = e.hasAttribute('aria-expanded'); return ht(), ut(), it(), at('onCreate', [Y]), P.showOnCreate && Lt(), $.addEventListener('mouseenter', function () { Y.props.interactive && Y.state.isVisible && Y.clearDelayTimeouts() }), $.addEventListener('mouseleave', function () { Y.props.interactive && Y.props.trigger.indexOf('mouseenter') >= 0 && nt().addEventListener('mousemove', F) }), Y; function Q () { const t = Y.props.touch; return Array.isArray(t) ? t : [t, 0] } function Z () { return Q()[0] === 'hold' } function tt () { let t; return !((t = Y.props.render) == null || !t.$$tippy) } function et () { return D || e } function nt () { const t = et().parentNode; return t ? E(t) : document } function rt () { return B($) } function ot (t) { return Y.state.isMounted && !Y.state.isVisible || T.isTouch || y && y.type === 'focus' ? 0 : i(Y.props.delay, t ? 0 : 1, R.delay) } function it (t) { void 0 === t && (t = !1), $.style.pointerEvents = Y.props.interactive && !t ? '' : 'none', $.style.zIndex = '' + Y.props.zIndex } function at (t, e, n) { let r; (void 0 === n && (n = !0), G.forEach(function (n) { n[t] && n[t].apply(n, e) }), n) && (r = Y.props)[t].apply(r, e) } function st () { const t = Y.props.aria; if (t.content) { const n = 'aria-' + t.content; const r = $.id; c(Y.props.triggerTarget || e).forEach(function (t) { const e = t.getAttribute(n); if (Y.state.isVisible)t.setAttribute(n, e ? e + ' ' + r : r); else { const o = e && e.replace(r, '').trim(); o ? t.setAttribute(n, o) : t.removeAttribute(n) } }) } } function ut () { !K && Y.props.aria.expanded && c(Y.props.triggerTarget || e).forEach(function (t) { Y.props.interactive ? t.setAttribute('aria-expanded', Y.state.isVisible && t === et() ? 'true' : 'false') : t.removeAttribute('aria-expanded') }) } function pt () { nt().removeEventListener('mousemove', F), U = U.filter(function (t) { return t !== F }) } function ct (t) { if (!T.isTouch || !S && t.type !== 'mousedown') { const n = t.composedPath && t.composedPath()[0] || t.target; if (!Y.props.interactive || !C($, n)) { if (c(Y.props.triggerTarget || e).some(function (t) { return C(t, n) })) { if (T.isTouch) return; if (Y.state.isVisible && Y.props.trigger.indexOf('click') >= 0) return } else at('onClickOutside', [Y, t]); !0 === Y.props.hideOnClick && (Y.clearDelayTimeouts(), Y.hide(), I = !0, setTimeout(function () { I = !1 }), Y.state.isMounted || vt()) } } } function ft () { S = !0 } function lt () { S = !1 } function dt () { const t = nt(); t.addEventListener('mousedown', ct, !0), t.addEventListener('touchend', ct, r), t.addEventListener('touchstart', lt, r), t.addEventListener('touchmove', ft, r) } function vt () { const t = nt(); t.removeEventListener('mousedown', ct, !0), t.removeEventListener('touchend', ct, r), t.removeEventListener('touchstart', lt, r), t.removeEventListener('touchmove', ft, r) } function mt (t, e) { const n = rt().box; function r (t) { t.target === n && (O(n, 'remove', r), e()) } if (t === 0) return e(); O(n, 'remove', A), O(n, 'add', r), A = r } function gt (t, n, r) { void 0 === r && (r = !1), c(Y.props.triggerTarget || e).forEach(function (e) { e.addEventListener(t, n, r), z.push({ node: e, eventType: t, handler: n, options: r }) }) } function ht () { let t; Z() && (gt('touchstart', yt, { passive: !0 }), gt('touchend', xt, { passive: !0 })), (t = Y.props.trigger, t.split(/\s+/).filter(Boolean)).forEach(function (t) { if (t !== 'manual') switch (gt(t, yt), t) { case 'mouseenter':gt('mouseleave', xt); break; case 'focus':gt(n ? 'focusout' : 'blur', Et); break; case 'focusin':gt('focusout', Et) } }) } function bt () { z.forEach(function (t) { const e = t.node; const n = t.eventType; const r = t.handler; const o = t.options; e.removeEventListener(n, r, o) }), z = [] } function yt (t) { let e; let n = !1; if (Y.state.isEnabled && !Ot(t) && !I) { const r = ((e = y) == null ? void 0 : e.type) === 'focus'; y = t, D = t.currentTarget, ut(), !Y.state.isVisible && h(t) && U.forEach(function (e) { return e(t) }), t.type === 'click' && (Y.props.trigger.indexOf('mouseenter') < 0 || V) && !1 !== Y.props.hideOnClick && Y.state.isVisible ? n = !0 : Lt(t), t.type === 'click' && (V = !n), n && !r && Dt(t) } } function wt (t) { const e = t.target; const n = et().contains(e) || $.contains(e); t.type === 'mousemove' && n || (function (t, e) { const n = e.clientX; const r = e.clientY; return t.every(function (t) { const e = t.popperRect; const o = t.popperState; const i = t.props.interactiveBorder; const a = l(o.placement); const s = o.modifiersData.offset; if (!s) return !0; const u = a === 'bottom' ? s.top.y : 0; const p = a === 'top' ? s.bottom.y : 0; const c = a === 'right' ? s.left.x : 0; const f = a === 'left' ? s.right.x : 0; const d = e.top - r + u > i; const v = r - e.bottom - p > i; const m = e.left - n + c > i; const g = n - e.right - f > i; return d || v || m || g }) }(At().concat($).map(function (t) { let e; const n = (e = t._tippy.popperInstance) == null ? void 0 : e.state; return n ? { popperRect: t.getBoundingClientRect(), popperState: n, props: P } : null }).filter(Boolean), t)) && (pt(), Dt(t)) } function xt (t) { Ot(t) || Y.props.trigger.indexOf('click') >= 0 && V || (Y.props.interactive ? Y.hideWithInteractivity(t) : Dt(t)) } function Et (t) { Y.props.trigger.indexOf('focusin') < 0 && t.target !== et() || Y.props.interactive && t.relatedTarget && $.contains(t.relatedTarget) || Dt(t) } function Ot (t) { return !!T.isTouch && Z() !== t.type.indexOf('touch') >= 0 } function Ct () { Tt(); const n = Y.props; const r = n.popperOptions; const o = n.placement; const i = n.offset; const a = n.getReferenceClientRect; const s = n.moveTransition; const u = tt() ? B($).arrow : null; const p = a ? { getBoundingClientRect: a, contextElement: a.contextElement || et() } : e; const c = [{ name: 'offset', options: { offset: i } }, { name: 'preventOverflow', options: { padding: { top: 2, bottom: 2, left: 5, right: 5 } } }, { name: 'flip', options: { padding: 5 } }, { name: 'computeStyles', options: { adaptive: !s } }, { name: '$$tippy', enabled: !0, phase: 'beforeWrite', requires: ['computeStyles'], fn: function (t) { const e = t.state; if (tt()) { const n = rt().box; ['placement', 'reference-hidden', 'escaped'].forEach(function (t) { t === 'placement' ? n.setAttribute('data-placement', e.placement) : e.attributes.popper['data-popper-' + t] ? n.setAttribute('data-' + t, '') : n.removeAttribute('data-' + t) }), e.attributes.popper = {} } } }]; tt() && u && c.push({ name: 'arrow', options: { element: u, padding: 3 } }), c.push.apply(c, (r == null ? void 0 : r.modifiers) || []), Y.popperInstance = t.createPopper(p, $, Object.assign({}, r, { placement: o, onFirstUpdate: L, modifiers: c })) } function Tt () { Y.popperInstance && (Y.popperInstance.destroy(), Y.popperInstance = null) } function At () { return d($.querySelectorAll('[data-tippy-root]')) } function Lt (t) { Y.clearDelayTimeouts(), t && at('onTrigger', [Y, t]), dt(); let e = ot(!0); const n = Q(); const r = n[0]; const o = n[1]; T.isTouch && r === 'hold' && o && (e = o), e ? p = setTimeout(function () { Y.show() }, e) : Y.show() } function Dt (t) { if (Y.clearDelayTimeouts(), at('onUntrigger', [Y, t]), Y.state.isVisible) { if (!(Y.props.trigger.indexOf('mouseenter') >= 0 && Y.props.trigger.indexOf('click') >= 0 && ['mouseleave', 'mousemove'].indexOf(t.type) >= 0 && V)) { const e = ot(!1); e ? g = setTimeout(function () { Y.state.isVisible && Y.hide() }, e) : b = requestAnimationFrame(function () { Y.hide() }) } } else vt() } } function F (t, e) { void 0 === e && (e = {}); const n = R.plugins.concat(e.plugins || []); document.addEventListener('touchstart', L, r), window.addEventListener('blur', k); const o = Object.assign({}, e, { plugins: n }); const i = y(t).reduce(function (t, e) { const n = e && z(e, o); return n && t.push(n), t }, []); return g(t) ? i[0] : i }F.defaultProps = R, F.setDefaultProps = function (t) { Object.keys(t).forEach(function (e) { R[e] = t[e] }) }, F.currentInput = T; const W = Object.assign({}, t.applyStyles, { effect: function (t) { const e = t.state; const n = { popper: { position: e.options.strategy, left: '0', top: '0', margin: '0' }, arrow: { position: 'absolute' }, reference: {} }; Object.assign(e.elements.popper.style, n.popper), e.styles = n, e.elements.arrow && Object.assign(e.elements.arrow.style, n.arrow) } }); const X = { mouseover: 'mouseenter', focusin: 'focus', click: 'click' }; const Y = { name: 'animateFill', defaultValue: !1, fn: function (t) { let e; if ((e = t.props.render) == null || !e.$$tippy) return {}; const n = B(t.popper); const r = n.box; const o = n.content; const i = t.props.animateFill ? (function () { const t = m(); return t.className = 'tippy-backdrop', x([t], 'hidden'), t }()) : null; return { onCreate: function () { i && (r.insertBefore(i, r.firstElementChild), r.setAttribute('data-animatefill', ''), r.style.overflow = 'hidden', t.setProps({ arrow: !1, animation: 'shift-away' })) }, onMount: function () { if (i) { const t = r.style.transitionDuration; const e = Number(t.replace('ms', '')); o.style.transitionDelay = Math.round(e / 10) + 'ms', i.style.transitionDuration = t, x([i], 'visible') } }, onShow: function () { i && (i.style.transitionDuration = '0ms') }, onHide: function () { i && x([i], 'hidden') } } } }; let q = { clientX: 0, clientY: 0 }; let $ = []; function J (t) { const e = t.clientX; const n = t.clientY; q = { clientX: e, clientY: n } } const G = { name: 'followCursor', defaultValue: !1, fn: function (t) { const e = t.reference; const n = E(t.props.triggerTarget || e); let r = !1; let o = !1; let i = !0; let a = t.props; function s () { return t.props.followCursor === 'initial' && t.state.isVisible } function u () { n.addEventListener('mousemove', f) } function p () { n.removeEventListener('mousemove', f) } function c () { r = !0, t.setProps({ getReferenceClientRect: null }), r = !1 } function f (n) { const r = !n.target || e.contains(n.target); const o = t.props.followCursor; const i = n.clientX; const a = n.clientY; const s = e.getBoundingClientRect(); const u = i - s.left; const p = a - s.top; !r && t.props.interactive || t.setProps({ getReferenceClientRect: function () { const t = e.getBoundingClientRect(); let n = i; let r = a; o === 'initial' && (n = t.left + u, r = t.top + p); const s = o === 'horizontal' ? t.top : r; const c = o === 'vertical' ? t.right : n; const f = o === 'horizontal' ? t.bottom : r; const l = o === 'vertical' ? t.left : n; return { width: c - l, height: f - s, top: s, right: c, bottom: f, left: l } } }) } function l () { t.props.followCursor && ($.push({ instance: t, doc: n }), (function (t) { t.addEventListener('mousemove', J) }(n))) } function d () { ($ = $.filter(function (e) { return e.instance !== t })).filter(function (t) { return t.doc === n }).length === 0 && (function (t) { t.removeEventListener('mousemove', J) }(n)) } return { onCreate: l, onDestroy: d, onBeforeUpdate: function () { a = t.props }, onAfterUpdate: function (e, n) { const i = n.followCursor; r || void 0 !== i && a.followCursor !== i && (d(), i ? (l(), !t.state.isMounted || o || s() || u()) : (p(), c())) }, onMount: function () { t.props.followCursor && !o && (i && (f(q), i = !1), s() || u()) }, onTrigger: function (t, e) { h(e) && (q = { clientX: e.clientX, clientY: e.clientY }), o = e.type === 'focus' }, onHidden: function () { t.props.followCursor && (c(), p(), i = !0) } } } }; const K = { name: 'inlinePositioning', defaultValue: !1, fn: function (t) { let e; const n = t.reference; let r = -1; let o = !1; let i = []; const a = { name: 'tippyInlinePositioning', enabled: !0, phase: 'afterWrite', fn: function (o) { const a = o.state; t.props.inlinePositioning && (i.indexOf(a.placement) !== -1 && (i = []), e !== a.placement && i.indexOf(a.placement) === -1 && (i.push(a.placement), t.setProps({ getReferenceClientRect: function () { return (function (t) { return (function (t, e, n, r) { if (n.length < 2 || t === null) return e; if (n.length === 2 && r >= 0 && n[0].left > n[1].right) return n[r] || e; switch (t) { case 'top':case 'bottom':var o = n[0]; var i = n[n.length - 1]; var a = t === 'top'; var s = o.top; var u = i.bottom; var p = a ? o.left : i.left; var c = a ? o.right : i.right; return { top: s, bottom: u, left: p, right: c, width: c - p, height: u - s }; case 'left':case 'right':var f = Math.min.apply(Math, n.map(function (t) { return t.left })); var l = Math.max.apply(Math, n.map(function (t) { return t.right })); var d = n.filter(function (e) { return 'left' === t ? e.left === f : e.right === l }); var v = d[0].top; var m = d[d.length - 1].bottom; return { top: v, bottom: m, left: f, right: l, width: l - f, height: m - v }; default:return e } }(l(t), n.getBoundingClientRect(), d(n.getClientRects()), r)) }(a.placement)) } })), e = a.placement) } }; function s () { let e; o || (e = (function (t, e) { let n; return { popperOptions: Object.assign({}, t.popperOptions, { modifiers: [].concat((((n = t.popperOptions) == null ? void 0 : n.modifiers) || []).filter(function (t) { return t.name !== e.name }), [e]) }) } }(t.props, a)), o = !0, t.setProps(e), o = !1) } return { onCreate: s, onAfterUpdate: s, onTrigger: function (e, n) { if (h(n)) { const o = d(t.reference.getClientRects()); const i = o.find(function (t) { return t.left - 2 <= n.clientX && t.right + 2 >= n.clientX && t.top - 2 <= n.clientY && t.bottom + 2 >= n.clientY }); const a = o.indexOf(i); r = a > -1 ? a : r } }, onHidden: function () { r = -1 } } } }; const Q = { name: 'sticky', defaultValue: !1, fn: function (t) { const e = t.reference; const n = t.popper; function r (e) { return !0 === t.props.sticky || t.props.sticky === e } let o = null; let i = null; function a () { const s = r('reference') ? (t.popperInstance ? t.popperInstance.state.elements.reference : e).getBoundingClientRect() : null; const u = r('popper') ? n.getBoundingClientRect() : null; (s && Z(o, s) || u && Z(i, u)) && t.popperInstance && t.popperInstance.update(), o = s, i = u, t.state.isMounted && requestAnimationFrame(a) } return { onMount: function () { t.props.sticky && a() } } } }; function Z (t, e) { return !t || !e || (t.top !== e.top || t.right !== e.right || t.bottom !== e.bottom || t.left !== e.left) } return e && (function (t) { const e = document.createElement('style'); e.textContent = t, e.setAttribute('data-tippy-stylesheet', ''); const n = document.head; const r = document.querySelector('head>style,head>link'); r ? n.insertBefore(e, r) : n.appendChild(e) }('.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:"";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}')), F.setDefaultProps({ plugins: [Y, G, K, Q], render: N }), F.createSingleton = function (t, e) { let n; void 0 === e && (e = {}); let r; let o = t; let i = []; let a = []; let s = e.overrides; let u = []; let f = !1; function l () { a = o.map(function (t) { return c(t.props.triggerTarget || t.reference) }).reduce(function (t, e) { return t.concat(e) }, []) } function d () { i = o.map(function (t) { return t.reference }) } function v (t) { o.forEach(function (e) { t ? e.enable() : e.disable() }) } function g (t) { return o.map(function (e) { const n = e.setProps; return e.setProps = function (o) { n(o), e.reference === r && t.setProps(o) }, function () { e.setProps = n } }) } function h (t, e) { const n = a.indexOf(e); if (e !== r) { r = e; const u = (s || []).concat('content').reduce(function (t, e) { return t[e] = o[n].props[e], t }, {}); t.setProps(Object.assign({}, u, { getReferenceClientRect: typeof u.getReferenceClientRect === 'function' ? u.getReferenceClientRect : function () { let t; return (t = i[n]) == null ? void 0 : t.getBoundingClientRect() } })) } }v(!1), d(), l(); const b = { fn: function () { return { onDestroy: function () { v(!0) }, onHidden: function () { r = null }, onClickOutside: function (t) { t.props.showOnCreate && !f && (f = !0, r = null) }, onShow: function (t) { t.props.showOnCreate && !f && (f = !0, h(t, i[0])) }, onTrigger: function (t, e) { h(t, e.currentTarget) } } } }; const y = F(m(), Object.assign({}, p(e, ['overrides']), { plugins: [b].concat(e.plugins || []), triggerTarget: a, popperOptions: Object.assign({}, e.popperOptions, { modifiers: [].concat(((n = e.popperOptions) == null ? void 0 : n.modifiers) || [], [W]) }) })); const w = y.show; y.show = function (t) { if (w(), !r && t == null) return h(y, i[0]); if (!r || t != null) { if (typeof t === 'number') return i[t] && h(y, i[t]); if (o.indexOf(t) >= 0) { const e = t.reference; return h(y, e) } return i.indexOf(t) >= 0 ? h(y, t) : void 0 } }, y.showNext = function () { const t = i[0]; if (!r) return y.show(0); const e = i.indexOf(r); y.show(i[e + 1] || t) }, y.showPrevious = function () { const t = i[i.length - 1]; if (!r) return y.show(t); const e = i.indexOf(r); const n = i[e - 1] || t; y.show(n) }; const x = y.setProps; return y.setProps = function (t) { s = t.overrides || s, x(t) }, y.setInstances = function (t) { v(!0), u.forEach(function (t) { return t() }), o = t, v(!1), d(), l(), u = g(y), y.setProps({ triggerTarget: a }) }, u = g(y), y }, F.delegate = function (t, e) { let n = []; let o = []; let i = !1; const a = e.target; const s = p(e, ['target']); const u = Object.assign({}, s, { trigger: 'manual', touch: !1 }); const f = Object.assign({ touch: R.touch }, s, { showOnCreate: !0 }); const l = F(t, u); function d (t) { if (t.target && !i) { const n = t.target.closest(a); if (n) { const r = n.getAttribute('data-tippy-trigger') || e.trigger || R.trigger; if (!n._tippy && !(t.type === 'touchstart' && typeof f.touch === 'boolean' || t.type !== 'touchstart' && r.indexOf(X[t.type]) < 0)) { const s = F(n, f); s && (o = o.concat(s)) } } } } function v (t, e, r, o) { void 0 === o && (o = !1), t.addEventListener(e, r, o), n.push({ node: t, eventType: e, handler: r, options: o }) } return c(l).forEach(function (t) { const e = t.destroy; const a = t.enable; const s = t.disable; t.destroy = function (t) { void 0 === t && (t = !0), t && o.forEach(function (t) { t.destroy() }), o = [], n.forEach(function (t) { const e = t.node; const n = t.eventType; const r = t.handler; const o = t.options; e.removeEventListener(n, r, o) }), n = [], e() }, t.enable = function () { a(), o.forEach(function (t) { return t.enable() }), i = !1 }, t.disable = function () { s(), o.forEach(function (t) { return t.disable() }), i = !0 }, (function (t) { const e = t.reference; v(e, 'touchstart', d, r), v(e, 'mouseover', d), v(e, 'focusin', d), v(e, 'click', d) }(t)) }), l }, F.hideAll = function (t) { const e = void 0 === t ? {} : t; const n = e.exclude; const r = e.duration; _.forEach(function (t) { let e = !1; if (n && (e = b(n) ? t.reference === n : t.popper === n.popper), !e) { const o = t.props.duration; t.setProps({ duration: r }), t.hide(), t.state.isDestroyed || t.setProps({ duration: o }) } }) }, F.roundArrow = '<svg width="16" height="6" xmlns="http://www.w3.org/2000/svg"><path d="M0 6s1.796-.013 4.67-3.615C5.851.9 6.93.006 8 0c1.07-.006 2.148.887 3.343 2.385C14.233 6.005 16 6 16 6H0z"></svg>', F }))