v-code-diff 1.14.0 → 1.14.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.
@@ -8,7 +8,9 @@
8
8
  https://github.com/highlightjs/highlight.js/issues/2277`),z=b,$=A),R===void 0&&(R=!0);const Q={code:$,language:z};ie("before:highlight",Q);const X=Q.result?Q.result:c(Q.language,Q.code,R);return X.code=Q.code,ie("after:highlight",X),X}function c(b,A,R,$){const z=Object.create(null);function Q(y,C){return y.keywords[C]}function X(){if(!O.keywords){G.addText(F);return}let y=0;O.keywordPatternRe.lastIndex=0;let C=O.keywordPatternRe.exec(F),I="";for(;C;){I+=F.substring(y,C.index);const P=q.case_insensitive?C[0].toLowerCase():C[0],K=Q(O,P);if(K){const[ne,kn]=K;if(G.addText(I),I="",z[P]=(z[P]||0)+1,z[P]<=xt&&(me+=kn),ne.startsWith("_"))I+=C[0];else{const Bn=q.classNameAliases[ne]||ne;j(C[0],Bn)}}else I+=C[0];y=O.keywordPatternRe.lastIndex,C=O.keywordPatternRe.exec(F)}I+=F.substring(y),G.addText(I)}function be(){if(F==="")return;let y=null;if(typeof O.subLanguage=="string"){if(!e[O.subLanguage]){G.addText(F);return}y=c(O.subLanguage,F,!0,Ze[O.subLanguage]),Ze[O.subLanguage]=y._top}else y=d(F,O.subLanguage.length?O.subLanguage:null);O.relevance>0&&(me+=y.relevance),G.__addSublanguage(y._emitter,y.language)}function Z(){O.subLanguage!=null?be():X(),F=""}function j(y,C){y!==""&&(G.startScope(C),G.addText(y),G.endScope())}function Ge(y,C){let I=1;const P=C.length-1;for(;I<=P;){if(!y._emit[I]){I++;continue}const K=q.classNameAliases[y[I]]||y[I],ne=C[I];K?j(ne,K):(F=ne,X(),F=""),I++}}function Ke(y,C){return y.scope&&typeof y.scope=="string"&&G.openNode(q.classNameAliases[y.scope]||y.scope),y.beginScope&&(y.beginScope._wrap?(j(F,q.classNameAliases[y.beginScope._wrap]||y.beginScope._wrap),F=""):y.beginScope._multi&&(Ge(y.beginScope,C),F="")),O=Object.create(y,{parent:{value:O}}),O}function We(y,C,I){let P=Jn(y.endRe,I);if(P){if(y["on:end"]){const K=new Xe(y);y["on:end"](C,K),K.isMatchIgnored&&(P=!1)}if(P){for(;y.endsParent&&y.parent;)y=y.parent;return y}}if(y.endsWithParent)return We(y.parent,C,I)}function Cn(y){return O.matcher.regexIndex===0?(F+=y[0],1):(Se=!0,0)}function Ln(y){const C=y[0],I=y.rule,P=new Xe(I),K=[I.__beforeBegin,I["on:begin"]];for(const ne of K)if(ne&&(ne(y,P),P.isMatchIgnored))return Cn(C);return I.skip?F+=C:(I.excludeBegin&&(F+=C),Z(),!I.returnBegin&&!I.excludeBegin&&(F=C)),Ke(I,y),I.returnBegin?0:C.length}function Rn(y){const C=y[0],I=A.substring(y.index),P=We(O,y,I);if(!P)return tn;const K=O;O.endScope&&O.endScope._wrap?(Z(),j(C,O.endScope._wrap)):O.endScope&&O.endScope._multi?(Z(),Ge(O.endScope,y)):K.skip?F+=C:(K.returnEnd||K.excludeEnd||(F+=C),Z(),K.excludeEnd&&(F=C));do O.scope&&G.closeNode(),!O.skip&&!O.subLanguage&&(me+=O.relevance),O=O.parent;while(O!==P.parent);return P.starts&&Ke(P.starts,y),K.returnEnd?0:C.length}function On(){const y=[];for(let C=O;C!==q;C=C.parent)C.scope&&y.unshift(C.scope);y.forEach(C=>G.openNode(C))}let ve={};function Qe(y,C){const I=C&&C[0];if(F+=y,I==null)return Z(),0;if(ve.type==="begin"&&C.type==="end"&&ve.index===C.index&&I===""){if(F+=A.slice(C.index,C.index+1),!g){const P=new Error(`0 width match regex (${b})`);throw P.languageName=b,P.badRule=ve.rule,P}return 1}if(ve=C,C.type==="begin")return Ln(C);if(C.type==="illegal"&&!R){const P=new Error('Illegal lexeme "'+I+'" for mode "'+(O.scope||"<unnamed>")+'"');throw P.mode=O,P}else if(C.type==="end"){const P=Rn(C);if(P!==tn)return P}if(C.type==="illegal"&&I==="")return 1;if(De>1e5&&De>C.index*3)throw new Error("potential infinite loop, way more iterations than matches");return F+=I,I.length}const q=N(b);if(!q)throw le(t.replace("{}",b)),new Error('Unknown language: "'+b+'"');const In=It(q);let Te="",O=$||In;const Ze={},G=new r.__emitter(r);On();let F="",me=0,oe=0,De=0,Se=!1;try{if(q.__emitTokens)q.__emitTokens(A,G);else{for(O.matcher.considerAll();;){De++,Se?Se=!1:O.matcher.considerAll(),O.matcher.lastIndex=oe;const y=O.matcher.exec(A);if(!y)break;const C=A.substring(oe,y.index),I=Qe(C,y);oe=y.index+I}Qe(A.substring(oe))}return G.finalize(),Te=G.toHTML(),{language:b,value:Te,relevance:me,illegal:!1,_emitter:G,_top:O}}catch(y){if(y.message&&y.message.includes("Illegal"))return{language:b,value:Le(A),illegal:!0,relevance:0,_illegalBy:{message:y.message,index:oe,context:A.slice(oe-100,oe+100),mode:y.mode,resultSoFar:Te},_emitter:G};if(g)return{language:b,value:Le(A),illegal:!1,relevance:0,errorRaised:y,_emitter:G,_top:O};throw y}}function f(b){const A={value:Le(b),illegal:!1,relevance:0,_top:i,_emitter:new r.__emitter(r)};return A._emitter.addText(b),A}function d(b,A){A=A||r.languages||Object.keys(e);const R=f(b),$=A.filter(N).filter(B).map(Z=>c(Z,b,!1));$.unshift(R);const z=$.sort((Z,j)=>{if(Z.relevance!==j.relevance)return j.relevance-Z.relevance;if(Z.language&&j.language){if(N(Z.language).supersetOf===j.language)return 1;if(N(j.language).supersetOf===Z.language)return-1}return 0}),[Q,X]=z,be=Q;return be.secondBest=X,be}function h(b,A,R){const $=A&&s[A]||R;b.classList.add("hljs"),b.classList.add(`language-${$}`)}function p(b){let A=null;const R=l(b);if(a(R))return;if(ie("before:highlightElement",{el:b,language:R}),b.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",b);return}if(b.children.length>0&&(r.ignoreUnescapedHTML||(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/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(b)),r.throwUnescapedHTML))throw new $t("One of your code blocks includes unescaped HTML.",b.innerHTML);A=b;const $=A.textContent,z=R?o($,{language:R,ignoreIllegals:!0}):d($);b.innerHTML=z.value,b.dataset.highlighted="yes",h(b,R,z.language),b.result={language:z.language,re:z.relevance,relevance:z.relevance},z.secondBest&&(b.secondBest={language:z.secondBest.language,relevance:z.secondBest.relevance}),ie("after:highlightElement",{el:b,result:z,text:$})}function _(b){r=nn(r,b)}const m=()=>{w(),fe("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function v(){w(),fe("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let E=!1;function w(){if(document.readyState==="loading"){E=!0;return}document.querySelectorAll(r.cssSelector).forEach(p)}function T(){E&&w()}typeof window!="undefined"&&window.addEventListener&&window.addEventListener("DOMContentLoaded",T,!1);function M(b,A){let R=null;try{R=A(n)}catch($){if(le("Language definition for '{}' could not be registered.".replace("{}",b)),g)le($);else throw $;R=i}R.name||(R.name=b),e[b]=R,R.rawDefinition=A.bind(null,n),R.aliases&&L(R.aliases,{languageName:b})}function D(b){delete e[b];for(const A of Object.keys(s))s[A]===b&&delete s[A]}function k(){return Object.keys(e)}function N(b){return b=(b||"").toLowerCase(),e[b]||e[s[b]]}function L(b,{languageName:A}){typeof b=="string"&&(b=[b]),b.forEach(R=>{s[R.toLowerCase()]=A})}function B(b){const A=N(b);return A&&!A.disableAutodetect}function x(b){b["before:highlightBlock"]&&!b["before:highlightElement"]&&(b["before:highlightElement"]=A=>{b["before:highlightBlock"](Object.assign({block:A.el},A))}),b["after:highlightBlock"]&&!b["after:highlightElement"]&&(b["after:highlightElement"]=A=>{b["after:highlightBlock"](Object.assign({block:A.el},A))})}function H(b){x(b),u.push(b)}function W(b){const A=u.indexOf(b);A!==-1&&u.splice(A,1)}function ie(b,A){const R=b;u.forEach(function($){$[R]&&$[R](A)})}function ue(b){return fe("10.7.0","highlightBlock will be removed entirely in v12.0"),fe("10.7.0","Please use highlightElement now."),p(b)}Object.assign(n,{highlight:o,highlightAuto:d,highlightAll:w,highlightElement:p,highlightBlock:ue,configure:_,initHighlighting:m,initHighlightingOnLoad:v,registerLanguage:M,unregisterLanguage:D,listLanguages:k,getLanguage:N,registerAliases:L,autoDetection:B,inherit:nn,addPlugin:H,removePlugin:W}),n.debugMode=function(){g=!1},n.safeMode=function(){g=!0},n.versionString=Bt,n.regex={concat:ce,lookahead:fn,either:Ue,optional:jn,anyNumberOfTimes:Xn};for(const b in Ee)typeof Ee[b]=="object"&&cn(Ee[b]);return Object.assign(n,Ee),n},he=En({});he.newInstance=()=>En({});var Pt=he;he.HighlightJS=he;he.default=he;const Y=Wn(Pt);function Ut(n){const e=n.regex,s=e.concat(/[\p{L}_]/u,e.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),u=/[\p{L}0-9._:-]+/u,g={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},t={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},i=n.inherit(t,{begin:/\(/,end:/\)/}),r=n.inherit(n.APOS_STRING_MODE,{className:"string"}),a=n.inherit(n.QUOTE_STRING_MODE,{className:"string"}),l={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:u,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[g]},{begin:/'/,end:/'/,contains:[g]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[t,a,r,i,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[t,i,a,r]}]}]},n.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},g,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[a]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[l],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[l],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:e.concat(/</,e.lookahead(e.concat(s,e.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:s,relevance:0,starts:l}]},{className:"tag",begin:e.concat(/<\//,e.lookahead(e.concat(s,/>/))),contains:[{className:"name",begin:s,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}const rn="[A-Za-z$_][0-9A-Za-z$_]*",Ft=["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"],zt=["true","false","null","undefined","NaN","Infinity"],wn=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],yn=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],An=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Ht=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Gt=[].concat(An,wn,yn);function Kt(n){const e=n.regex,s=(A,{after:R})=>{const $="</"+A[0].slice(1);return A.input.indexOf($,R)!==-1},u=rn,g={begin:"<>",end:"</>"},t=/<[A-Za-z0-9\\._:-]+\s*\/>/,i={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(A,R)=>{const $=A[0].length+A.index,z=A.input[$];if(z==="<"||z===","){R.ignoreMatch();return}z===">"&&(s(A,{after:$})||R.ignoreMatch());let Q;const X=A.input.substring($);if(Q=X.match(/^\s*=/)){R.ignoreMatch();return}if((Q=X.match(/^\s+extends\s+/))&&Q.index===0){R.ignoreMatch();return}}},r={$pattern:rn,keyword:Ft,literal:zt,built_in:Gt,"variable.language":Ht},a="[0-9](_?[0-9])*",l=`\\.(${a})`,o="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",c={className:"number",variants:[{begin:`(\\b(${o})((${l})|\\.)?|(${l}))[eE][+-]?(${a})\\b`},{begin:`\\b(${o})\\b((${l})\\b|\\.)?|(${l})\\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},f={className:"subst",begin:"\\$\\{",end:"\\}",keywords:r,contains:[]},d={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,f],subLanguage:"xml"}},h={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,f],subLanguage:"css"}},p={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,f],subLanguage:"graphql"}},_={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,f]},v={className:"comment",variants:[n.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:u+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},E=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,d,h,p,_,{match:/\$\d+/},c];f.contains=E.concat({begin:/\{/,end:/\}/,keywords:r,contains:["self"].concat(E)});const w=[].concat(v,f.contains),T=w.concat([{begin:/(\s*)\(/,end:/\)/,keywords:r,contains:["self"].concat(w)}]),M={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:r,contains:T},D={variants:[{match:[/class/,/\s+/,u,/\s+/,/extends/,/\s+/,e.concat(u,"(",e.concat(/\./,u),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,u],scope:{1:"keyword",3:"title.class"}}]},k={relevance:0,match:e.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...wn,...yn]}},N={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},L={variants:[{match:[/function/,/\s+/,u,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[M],illegal:/%/},B={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function x(A){return e.concat("(?!",A.join("|"),")")}const H={match:e.concat(/\b/,x([...An,"super","import"].map(A=>`${A}\\s*\\(`)),u,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},W={begin:e.concat(/\./,e.lookahead(e.concat(u,/(?![0-9A-Za-z$_(])/))),end:u,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},ie={match:[/get|set/,/\s+/,u,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},M]},ue="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",b={match:[/const|var|let/,/\s+/,u,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(ue)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[M]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:r,exports:{PARAMS_CONTAINS:T,CLASS_REFERENCE:k},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),N,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,d,h,p,_,v,{match:/\$\d+/},c,k,{className:"attr",begin:u+e.lookahead(":"),relevance:0},b,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[v,n.REGEXP_MODE,{className:"function",begin:ue,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:r,contains:T}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:g.begin,end:g.end},{match:t},{begin:i.begin,"on:begin":i.isTrulyOpeningTag,end:i.end}],subLanguage:"xml",contains:[{begin:i.begin,end:i.end,skip:!0,contains:["self"]}]}]},L,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[M,n.inherit(n.TITLE_MODE,{begin:u,className:"title.function"})]},{match:/\.\.\./,relevance:0},W,{match:"\\$"+u,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[M]},H,B,D,ie,{match:/\$[(.]/}]}}function Wt(n){const e={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},s={match:/[{}[\],:]/,className:"punctuation",relevance:0},u=["true","false","null"],g={scope:"literal",beginKeywords:u.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:u},contains:[e,s,n.QUOTE_STRING_MODE,g,n.C_NUMBER_MODE,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}function Qt(n){const e="true false yes no null",s="[\\w#;/?:@&=+$,.~*'()[\\]]+",u={className:"attr",variants:[{begin:/\w[\w :()\./-]*:(?=[ \t]|$)/},{begin:/"\w[\w :()\./-]*":(?=[ \t]|$)/},{begin:/'\w[\w :()\./-]*':(?=[ \t]|$)/}]},g={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},t={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[n.BACKSLASH_ESCAPE,g]},i=n.inherit(t,{variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),c={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"},f={end:",",endsWithParent:!0,excludeEnd:!0,keywords:e,relevance:0},d={begin:/\{/,end:/\}/,contains:[f],illegal:"\\n",relevance:0},h={begin:"\\[",end:"\\]",contains:[f],illegal:"\\n",relevance:0},p=[u,{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+!"+s},{className:"type",begin:"!<"+s+">"},{className:"type",begin:"!"+s},{className:"type",begin:"!!"+s},{className:"meta",begin:"&"+n.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+n.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},n.HASH_COMMENT_MODE,{beginKeywords:e,keywords:{literal:e}},c,{className:"number",begin:n.C_NUMBER_RE+"\\b",relevance:0},d,h,t],_=[...p];return _.pop(),_.push(i),f.contains=_,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:p}}function Zt(n){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}function Yt(n){const e=n.regex,s=/[\p{XID_Start}_]\p{XID_Continue}*/u,u=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],r={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:u,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},a={className:"meta",begin:/^(>>>|\.\.\.) /},l={className:"subst",begin:/\{/,end:/\}/,keywords:r,illegal:/#/},o={begin:/\{\{/,relevance:0},c={className:"string",contains:[n.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,a,o,l]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,a,o,l]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[n.BACKSLASH_ESCAPE,o,l]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,o,l]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},f="[0-9](_?[0-9])*",d=`(\\b(${f}))?\\.(${f})|\\b(${f})\\.`,h=`\\b|${u.join("|")}`,p={className:"number",relevance:0,variants:[{begin:`(\\b(${f})|(${d}))[eE][+-]?(${f})[jJ]?(?=${h})`},{begin:`(${d})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${h})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${h})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${h})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${h})`},{begin:`\\b(${f})[jJ](?=${h})`}]},_={className:"comment",begin:e.lookahead(/# type:/),end:/$/,keywords:r,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},m={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:r,contains:["self",a,p,c,n.HASH_COMMENT_MODE]}]};return l.contains=[c,p,a],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:r,illegal:/(<\/|\?)|=>/,contains:[a,p,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},c,_,n.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,s],scope:{1:"keyword",3:"title.function"},contains:[m]},{variants:[{match:[/\bclass/,/\s+/,s,/\s*/,/\(\s*/,s,/\s*\)/]},{match:[/\bclass/,/\s+/,s]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[p,m,c]}]}}var ge="[0-9](_*[0-9])*",we=`\\.(${ge})`,ye="[0-9a-fA-F](_*[0-9a-fA-F])*",sn={className:"number",variants:[{begin:`(\\b(${ge})((${we})|\\.)?|(${we}))[eE][+-]?(${ge})[fFdD]?\\b`},{begin:`\\b(${ge})((${we})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${we})[fFdD]?\\b`},{begin:`\\b(${ge})[fFdD]\\b`},{begin:`\\b0[xX]((${ye})\\.?|(${ye})?\\.(${ye}))[pP][+-]?(${ge})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${ye})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function Nn(n,e,s){return s===-1?"":n.replace(e,u=>Nn(n,e,s-1))}function Vt(n){const e=n.regex,s="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",u=s+Nn("(?:<"+s+"~~~(?:\\s*,\\s*"+s+"~~~)*>)?",/~~~/g,2),a={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits","goto"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},l={className:"meta",begin:"@"+s,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},o={className:"params",begin:/\(/,end:/\)/,keywords:a,relevance:0,contains:[n.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:a,illegal:/<\/|#/,contains:[n.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[n.BACKSLASH_ESCAPE]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,s],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[e.concat(/(?!else)/,s),/\s+/,s,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,s],className:{1:"keyword",3:"title.class"},contains:[o,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+u+"\\s+)",n.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:a,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:a,relevance:0,contains:[l,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,sn,n.C_BLOCK_COMMENT_MODE]},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},sn,l]}}function Xt(n){const e=n.regex,s={},u={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[s]}]};Object.assign(s,{className:"variable",variants:[{begin:e.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},u]});const g={className:"subst",begin:/\$\(/,end:/\)/,contains:[n.BACKSLASH_ESCAPE]},t=n.inherit(n.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),i={begin:/<<-?\s*(?=\w+)/,starts:{contains:[n.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},r={className:"string",begin:/"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,s,g]};g.contains.push(r);const a={match:/\\"/},l={className:"string",begin:/'/,end:/'/},o={match:/\\'/},c={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},n.NUMBER_MODE,s]},f=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],d=n.SHEBANG({binary:`(${f.join("|")})`,relevance:10}),h={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[n.inherit(n.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},p=["if","then","else","elif","fi","for","while","until","in","do","done","case","esac","function","select"],_=["true","false"],m={match:/(\/[a-z._-]+)+/},v=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],E=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],w=["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"],T=["chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"];return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:p,literal:_,built_in:[...v,...E,"set","shopt",...w,...T]},contains:[d,n.SHEBANG(),h,c,t,i,m,r,a,l,o,s]}}function jt(n){const e=n.regex,s=n.COMMENT("--","$"),u={className:"string",variants:[{begin:/'/,end:/'/,contains:[{begin:/''/}]}]},g={begin:/"/,end:/"/,contains:[{begin:/""/}]},t=["true","false","unknown"],i=["double precision","large object","with timezone","without timezone"],r=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],a=["add","asc","collation","desc","final","first","last","view"],l=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],o=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],c=["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"],f=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],d=o,h=[...l,...a].filter(E=>!o.includes(E)),p={className:"variable",begin:/@[a-z0-9][a-z0-9_]*/},_={className:"operator",begin:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},m={begin:e.concat(/\b/,e.either(...d),/\s*\(/),relevance:0,keywords:{built_in:d}};function v(E,{exceptions:w,when:T}={}){const M=T;return w=w||[],E.map(D=>D.match(/\|\d+$/)||w.includes(D)?D:M(D)?`${D}|0`:D)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:v(h,{when:E=>E.length<3}),literal:t,type:r,built_in:c},contains:[{begin:e.either(...f),relevance:0,keywords:{$pattern:/[\w\.]+/,keyword:h.concat(f),literal:t,type:r}},{className:"type",begin:e.either(...i)},m,p,u,g,n.C_NUMBER_MODE,n.C_BLOCK_COMMENT_MODE,s,_]}}Y.registerLanguage("xml",Ut);Y.registerLanguage("javascript",Kt);Y.registerLanguage("json",Wt);Y.registerLanguage("yaml",Qt);Y.registerLanguage("plaintext",Zt);Y.registerLanguage("python",Yt);Y.registerLanguage("java",Vt);Y.registerLanguage("bash",Xt);Y.registerLanguage("sql",jt);var S=(n=>(n.EQUAL="equal",n.DELETE="removed",n.ADD="added",n.EMPTY="empty",n))(S||{});const J="<code-diff-modified>",ee="</code-diff-modified>",qt=1e4,V=1e3,an=J.replace("<","&lt;").replace(">","&gt;"),on=ee.replace("<","&lt;").replace(">","&gt;");function Jt(n){const e={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};return n.replace(/[&<>"']/g,s=>e[s])}function se(n){return n===void 0?S.EQUAL:n.added?S.ADD:n.removed?S.DELETE:S.EQUAL}function Mn(n,e,s="word",u=!1){if(typeof n=="undefined"||typeof e=="undefined")return[n,e];if(!u&&n.length+e.length>qt)return[n,e];const t=(s==="char"?Pn:Fn)(n,e),i=t.filter(a=>se(a)!==S.ADD).map(a=>se(a)===S.DELETE?`${J}${a.value}${ee}`:a.value).join(""),r=t.filter(a=>se(a)!==S.DELETE).map(a=>se(a)===S.ADD?`${J}${a.value}${ee}`:a.value).join("");return[i,r]}function Tn(n,e){if(n===e)return n?[{count:n.replace(/\n$/,"").split(`
9
9
  `).length,value:n}]:[];const s=n.endsWith(`
10
10
  `),u=e.endsWith(`
11
- `);s!==u&&(s?n=n.slice(0,-1):e=e.slice(0,-1));let g;if(n.length+e.length>=1e5&&n.includes(`
11
+ `);s!==u&&(s?n=n.slice(0,-1):e=e.slice(0,-1)),n&&(n+=`
12
+ `),e&&(e+=`
13
+ `);let g;if(n.length+e.length>=1e5&&n.includes(`
12
14
  `)&&e.includes(`
13
15
  `)){const t=n?n.replace(/\n$/,"").split(`
14
16
  `):[],i=e?e.replace(/\n$/,"").split(`
@@ -4671,7 +4671,9 @@ function Cn(n, e) {
4671
4671
  const s = n.endsWith(`
4672
4672
  `), u = e.endsWith(`
4673
4673
  `);
4674
- s !== u && (s ? n = n.slice(0, -1) : e = e.slice(0, -1));
4674
+ s !== u && (s ? n = n.slice(0, -1) : e = e.slice(0, -1)), n && (n += `
4675
+ `), e && (e += `
4676
+ `);
4675
4677
  let g;
4676
4678
  if (n.length + e.length >= 1e5 && n.includes(`
4677
4679
  `) && e.includes(`
@@ -8,7 +8,9 @@
8
8
  https://github.com/highlightjs/highlight.js/issues/2277`),z=b,x=A),R===void 0&&(R=!0);const Q={code:x,language:z};ae("before:highlight",Q);const q=Q.result?Q.result:c(Q.language,Q.code,R);return q.code=Q.code,ae("after:highlight",q),q}function c(b,A,R,x){const z=Object.create(null);function Q(w,C){return w.keywords[C]}function q(){if(!O.keywords){G.addText(F);return}let w=0;O.keywordPatternRe.lastIndex=0;let C=O.keywordPatternRe.exec(F),I="";for(;C;){I+=F.substring(w,C.index);const U=ne.case_insensitive?C[0].toLowerCase():C[0],K=Q(O,U);if(K){const[te,Pi]=K;if(G.addText(I),I="",z[U]=(z[U]||0)+1,z[U]<=St&&(Te+=Pi),te.startsWith("_"))I+=C[0];else{const Ui=ne.classNameAliases[te]||te;ee(C[0],Ui)}}else I+=C[0];w=O.keywordPatternRe.lastIndex,C=O.keywordPatternRe.exec(F)}I+=F.substring(w),G.addText(I)}function Ae(){if(F==="")return;let w=null;if(typeof O.subLanguage=="string"){if(!e[O.subLanguage]){G.addText(F);return}w=c(O.subLanguage,F,!0,Dn[O.subLanguage]),Dn[O.subLanguage]=w._top}else w=d(F,O.subLanguage.length?O.subLanguage:null);O.relevance>0&&(Te+=w.relevance),G.__addSublanguage(w._emitter,w.language)}function Y(){O.subLanguage!=null?Ae():q(),F=""}function ee(w,C){w!==""&&(G.startScope(C),G.addText(w),G.endScope())}function An(w,C){let I=1;const U=C.length-1;for(;I<=U;){if(!w._emit[I]){I++;continue}const K=ne.classNameAliases[w[I]]||w[I],te=C[I];K?ee(te,K):(F=te,q(),F=""),I++}}function Nn(w,C){return w.scope&&typeof w.scope=="string"&&G.openNode(ne.classNameAliases[w.scope]||w.scope),w.beginScope&&(w.beginScope._wrap?(ee(F,ne.classNameAliases[w.beginScope._wrap]||w.beginScope._wrap),F=""):w.beginScope._multi&&(An(w.beginScope,C),F="")),O=Object.create(w,{parent:{value:O}}),O}function Tn(w,C,I){let U=Wn(w.endRe,I);if(U){if(w["on:end"]){const K=new Qe(w);w["on:end"](C,K),K.isMatchIgnored&&(U=!1)}if(U){for(;w.endsParent&&w.parent;)w=w.parent;return w}}if(w.endsWithParent)return Tn(w.parent,C,I)}function Ii(w){return O.matcher.regexIndex===0?(F+=w[0],1):(ze=!0,0)}function ki(w){const C=w[0],I=w.rule,U=new Qe(I),K=[I.__beforeBegin,I["on:begin"]];for(const te of K)if(te&&(te(w,U),U.isMatchIgnored))return Ii(C);return I.skip?F+=C:(I.excludeBegin&&(F+=C),Y(),!I.returnBegin&&!I.excludeBegin&&(F=C)),Nn(I,w),I.returnBegin?0:C.length}function Bi(w){const C=w[0],I=A.substring(w.index),U=Tn(O,w,I);if(!U)return cn;const K=O;O.endScope&&O.endScope._wrap?(Y(),ee(C,O.endScope._wrap)):O.endScope&&O.endScope._multi?(Y(),An(O.endScope,w)):K.skip?F+=C:(K.returnEnd||K.excludeEnd||(F+=C),Y(),K.excludeEnd&&(F=C));do O.scope&&G.closeNode(),!O.skip&&!O.subLanguage&&(Te+=O.relevance),O=O.parent;while(O!==U.parent);return U.starts&&Nn(U.starts,w),K.returnEnd?0:C.length}function $i(){const w=[];for(let C=O;C!==ne;C=C.parent)C.scope&&w.unshift(C.scope);w.forEach(C=>G.openNode(C))}let Ne={};function Mn(w,C){const I=C&&C[0];if(F+=w,I==null)return Y(),0;if(Ne.type==="begin"&&C.type==="end"&&Ne.index===C.index&&I===""){if(F+=A.slice(C.index,C.index+1),!g){const U=new Error(`0 width match regex (${b})`);throw U.languageName=b,U.badRule=Ne.rule,U}return 1}if(Ne=C,C.type==="begin")return ki(C);if(C.type==="illegal"&&!R){const U=new Error('Illegal lexeme "'+I+'" for mode "'+(O.scope||"<unnamed>")+'"');throw U.mode=O,U}else if(C.type==="end"){const U=Bi(C);if(U!==cn)return U}if(C.type==="illegal"&&I==="")return 1;if(Fe>1e5&&Fe>C.index*3)throw new Error("potential infinite loop, way more iterations than matches");return F+=I,I.length}const ne=N(b);if(!ne)throw le(t.replace("{}",b)),new Error('Unknown language: "'+b+'"');const xi=Nt(ne);let Ue="",O=x||xi;const Dn={},G=new r.__emitter(r);$i();let F="",Te=0,ce=0,Fe=0,ze=!1;try{if(ne.__emitTokens)ne.__emitTokens(A,G);else{for(O.matcher.considerAll();;){Fe++,ze?ze=!1:O.matcher.considerAll(),O.matcher.lastIndex=ce;const w=O.matcher.exec(A);if(!w)break;const C=A.substring(ce,w.index),I=Mn(C,w);ce=w.index+I}Mn(A.substring(ce))}return G.finalize(),Ue=G.toHTML(),{language:b,value:Ue,relevance:Te,illegal:!1,_emitter:G,_top:O}}catch(w){if(w.message&&w.message.includes("Illegal"))return{language:b,value:Be(A),illegal:!0,relevance:0,_illegalBy:{message:w.message,index:ce,context:A.slice(ce-100,ce+100),mode:w.mode,resultSoFar:Ue},_emitter:G};if(g)return{language:b,value:Be(A),illegal:!1,relevance:0,errorRaised:w,_emitter:G,_top:O};throw w}}function f(b){const A={value:Be(b),illegal:!1,relevance:0,_top:i,_emitter:new r.__emitter(r)};return A._emitter.addText(b),A}function d(b,A){A=A||r.languages||Object.keys(e);const R=f(b),x=A.filter(N).filter($).map(Y=>c(Y,b,!1));x.unshift(R);const z=x.sort((Y,ee)=>{if(Y.relevance!==ee.relevance)return ee.relevance-Y.relevance;if(Y.language&&ee.language){if(N(Y.language).supersetOf===ee.language)return 1;if(N(ee.language).supersetOf===Y.language)return-1}return 0}),[Q,q]=z,Ae=Q;return Ae.secondBest=q,Ae}function h(b,A,R){const x=A&&s[A]||R;b.classList.add("hljs"),b.classList.add(`language-${x}`)}function p(b){let A=null;const R=l(b);if(a(R))return;if(ae("before:highlightElement",{el:b,language:R}),b.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",b);return}if(b.children.length>0&&(r.ignoreUnescapedHTML||(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/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(b)),r.throwUnescapedHTML))throw new Dt("One of your code blocks includes unescaped HTML.",b.innerHTML);A=b;const x=A.textContent,z=R?o(x,{language:R,ignoreIllegals:!0}):d(x);b.innerHTML=z.value,b.dataset.highlighted="yes",h(b,R,z.language),b.result={language:z.language,re:z.relevance,relevance:z.relevance},z.secondBest&&(b.secondBest={language:z.secondBest.language,relevance:z.secondBest.relevance}),ae("after:highlightElement",{el:b,result:z,text:x})}function _(b){r=ln(r,b)}const m=()=>{y(),ue("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function v(){y(),ue("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let E=!1;function y(){if(document.readyState==="loading"){E=!0;return}document.querySelectorAll(r.cssSelector).forEach(p)}function D(){E&&y()}typeof window!="undefined"&&window.addEventListener&&window.addEventListener("DOMContentLoaded",D,!1);function T(b,A){let R=null;try{R=A(n)}catch(x){if(le("Language definition for '{}' could not be registered.".replace("{}",b)),g)le(x);else throw x;R=i}R.name||(R.name=b),e[b]=R,R.rawDefinition=A.bind(null,n),R.aliases&&L(R.aliases,{languageName:b})}function S(b){delete e[b];for(const A of Object.keys(s))s[A]===b&&delete s[A]}function k(){return Object.keys(e)}function N(b){return b=(b||"").toLowerCase(),e[b]||e[s[b]]}function L(b,{languageName:A}){typeof b=="string"&&(b=[b]),b.forEach(R=>{s[R.toLowerCase()]=A})}function $(b){const A=N(b);return A&&!A.disableAutodetect}function P(b){b["before:highlightBlock"]&&!b["before:highlightElement"]&&(b["before:highlightElement"]=A=>{b["before:highlightBlock"](Object.assign({block:A.el},A))}),b["after:highlightBlock"]&&!b["after:highlightElement"]&&(b["after:highlightElement"]=A=>{b["after:highlightBlock"](Object.assign({block:A.el},A))})}function H(b){P(b),u.push(b)}function W(b){const A=u.indexOf(b);A!==-1&&u.splice(A,1)}function ae(b,A){const R=b;u.forEach(function(x){x[R]&&x[R](A)})}function he(b){return ue("10.7.0","highlightBlock will be removed entirely in v12.0"),ue("10.7.0","Please use highlightElement now."),p(b)}Object.assign(n,{highlight:o,highlightAuto:d,highlightAll:y,highlightElement:p,highlightBlock:he,configure:_,initHighlighting:m,initHighlightingOnLoad:v,registerLanguage:T,unregisterLanguage:S,listLanguages:k,getLanguage:N,registerAliases:L,autoDetection:$,inherit:ln,addPlugin:H,removePlugin:W}),n.debugMode=function(){g=!1},n.safeMode=function(){g=!0},n.versionString=Mt,n.regex={concat:oe,lookahead:je,either:Oe,optional:Gn,anyNumberOfTimes:Hn};for(const b in me)typeof me[b]=="object"&&We(me[b]);return Object.assign(n,me),n},fe=un({});fe.newInstance=()=>un({});var Ct=fe;fe.HighlightJS=fe,fe.default=fe;const X=xn(Ct);function Lt(n){const e=n.regex,s=e.concat(/[\p{L}_]/u,e.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),u=/[\p{L}0-9._:-]+/u,g={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},t={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},i=n.inherit(t,{begin:/\(/,end:/\)/}),r=n.inherit(n.APOS_STRING_MODE,{className:"string"}),a=n.inherit(n.QUOTE_STRING_MODE,{className:"string"}),l={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:u,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[g]},{begin:/'/,end:/'/,contains:[g]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[t,a,r,i,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[t,i,a,r]}]}]},n.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},g,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[a]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[l],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[l],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:e.concat(/</,e.lookahead(e.concat(s,e.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:s,relevance:0,starts:l}]},{className:"tag",begin:e.concat(/<\//,e.lookahead(e.concat(s,/>/))),contains:[{className:"name",begin:s,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}const fn="[A-Za-z$_][0-9A-Za-z$_]*",Rt=["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"],Ot=["true","false","null","undefined","NaN","Infinity"],gn=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],hn=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],dn=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],It=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],kt=[].concat(dn,gn,hn);function Bt(n){const e=n.regex,s=(A,{after:R})=>{const x="</"+A[0].slice(1);return A.input.indexOf(x,R)!==-1},u=fn,g={begin:"<>",end:"</>"},t=/<[A-Za-z0-9\\._:-]+\s*\/>/,i={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(A,R)=>{const x=A[0].length+A.index,z=A.input[x];if(z==="<"||z===","){R.ignoreMatch();return}z===">"&&(s(A,{after:x})||R.ignoreMatch());let Q;const q=A.input.substring(x);if(Q=q.match(/^\s*=/)){R.ignoreMatch();return}if((Q=q.match(/^\s+extends\s+/))&&Q.index===0){R.ignoreMatch();return}}},r={$pattern:fn,keyword:Rt,literal:Ot,built_in:kt,"variable.language":It},a="[0-9](_?[0-9])*",l=`\\.(${a})`,o="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",c={className:"number",variants:[{begin:`(\\b(${o})((${l})|\\.)?|(${l}))[eE][+-]?(${a})\\b`},{begin:`\\b(${o})\\b((${l})\\b|\\.)?|(${l})\\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},f={className:"subst",begin:"\\$\\{",end:"\\}",keywords:r,contains:[]},d={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,f],subLanguage:"xml"}},h={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,f],subLanguage:"css"}},p={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,f],subLanguage:"graphql"}},_={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,f]},v={className:"comment",variants:[n.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:u+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},E=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,d,h,p,_,{match:/\$\d+/},c];f.contains=E.concat({begin:/\{/,end:/\}/,keywords:r,contains:["self"].concat(E)});const y=[].concat(v,f.contains),D=y.concat([{begin:/(\s*)\(/,end:/\)/,keywords:r,contains:["self"].concat(y)}]),T={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:r,contains:D},S={variants:[{match:[/class/,/\s+/,u,/\s+/,/extends/,/\s+/,e.concat(u,"(",e.concat(/\./,u),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,u],scope:{1:"keyword",3:"title.class"}}]},k={relevance:0,match:e.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...gn,...hn]}},N={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},L={variants:[{match:[/function/,/\s+/,u,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[T],illegal:/%/},$={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function P(A){return e.concat("(?!",A.join("|"),")")}const H={match:e.concat(/\b/,P([...dn,"super","import"].map(A=>`${A}\\s*\\(`)),u,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},W={begin:e.concat(/\./,e.lookahead(e.concat(u,/(?![0-9A-Za-z$_(])/))),end:u,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},ae={match:[/get|set/,/\s+/,u,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},T]},he="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",b={match:[/const|var|let/,/\s+/,u,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(he)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[T]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:r,exports:{PARAMS_CONTAINS:D,CLASS_REFERENCE:k},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),N,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,d,h,p,_,v,{match:/\$\d+/},c,k,{className:"attr",begin:u+e.lookahead(":"),relevance:0},b,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[v,n.REGEXP_MODE,{className:"function",begin:he,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:r,contains:D}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:g.begin,end:g.end},{match:t},{begin:i.begin,"on:begin":i.isTrulyOpeningTag,end:i.end}],subLanguage:"xml",contains:[{begin:i.begin,end:i.end,skip:!0,contains:["self"]}]}]},L,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[T,n.inherit(n.TITLE_MODE,{begin:u,className:"title.function"})]},{match:/\.\.\./,relevance:0},W,{match:"\\$"+u,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[T]},H,$,S,ae,{match:/\$[(.]/}]}}function $t(n){const e={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},s={match:/[{}[\],:]/,className:"punctuation",relevance:0},u=["true","false","null"],g={scope:"literal",beginKeywords:u.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:u},contains:[e,s,n.QUOTE_STRING_MODE,g,n.C_NUMBER_MODE,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}function xt(n){const e="true false yes no null",s="[\\w#;/?:@&=+$,.~*'()[\\]]+",u={className:"attr",variants:[{begin:/\w[\w :()\./-]*:(?=[ \t]|$)/},{begin:/"\w[\w :()\./-]*":(?=[ \t]|$)/},{begin:/'\w[\w :()\./-]*':(?=[ \t]|$)/}]},g={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},t={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[n.BACKSLASH_ESCAPE,g]},i=n.inherit(t,{variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),c={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"},f={end:",",endsWithParent:!0,excludeEnd:!0,keywords:e,relevance:0},d={begin:/\{/,end:/\}/,contains:[f],illegal:"\\n",relevance:0},h={begin:"\\[",end:"\\]",contains:[f],illegal:"\\n",relevance:0},p=[u,{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+!"+s},{className:"type",begin:"!<"+s+">"},{className:"type",begin:"!"+s},{className:"type",begin:"!!"+s},{className:"meta",begin:"&"+n.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+n.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},n.HASH_COMMENT_MODE,{beginKeywords:e,keywords:{literal:e}},c,{className:"number",begin:n.C_NUMBER_RE+"\\b",relevance:0},d,h,t],_=[...p];return _.pop(),_.push(i),f.contains=_,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:p}}function Pt(n){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}function Ut(n){const e=n.regex,s=/[\p{XID_Start}_]\p{XID_Continue}*/u,u=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],r={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:u,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},a={className:"meta",begin:/^(>>>|\.\.\.) /},l={className:"subst",begin:/\{/,end:/\}/,keywords:r,illegal:/#/},o={begin:/\{\{/,relevance:0},c={className:"string",contains:[n.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,a,o,l]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,a,o,l]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[n.BACKSLASH_ESCAPE,o,l]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,o,l]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},f="[0-9](_?[0-9])*",d=`(\\b(${f}))?\\.(${f})|\\b(${f})\\.`,h=`\\b|${u.join("|")}`,p={className:"number",relevance:0,variants:[{begin:`(\\b(${f})|(${d}))[eE][+-]?(${f})[jJ]?(?=${h})`},{begin:`(${d})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${h})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${h})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${h})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${h})`},{begin:`\\b(${f})[jJ](?=${h})`}]},_={className:"comment",begin:e.lookahead(/# type:/),end:/$/,keywords:r,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},m={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:r,contains:["self",a,p,c,n.HASH_COMMENT_MODE]}]};return l.contains=[c,p,a],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:r,illegal:/(<\/|\?)|=>/,contains:[a,p,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},c,_,n.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,s],scope:{1:"keyword",3:"title.function"},contains:[m]},{variants:[{match:[/\bclass/,/\s+/,s,/\s*/,/\(\s*/,s,/\s*\)/]},{match:[/\bclass/,/\s+/,s]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[p,m,c]}]}}var ge="[0-9](_*[0-9])*",ye=`\\.(${ge})`,we="[0-9a-fA-F](_*[0-9a-fA-F])*",pn={className:"number",variants:[{begin:`(\\b(${ge})((${ye})|\\.)?|(${ye}))[eE][+-]?(${ge})[fFdD]?\\b`},{begin:`\\b(${ge})((${ye})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${ye})[fFdD]?\\b`},{begin:`\\b(${ge})[fFdD]\\b`},{begin:`\\b0[xX]((${we})\\.?|(${we})?\\.(${we}))[pP][+-]?(${ge})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${we})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function _n(n,e,s){return s===-1?"":n.replace(e,u=>_n(n,e,s-1))}function Ft(n){const e=n.regex,s="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",u=s+_n("(?:<"+s+"~~~(?:\\s*,\\s*"+s+"~~~)*>)?",/~~~/g,2),a={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits","goto"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},l={className:"meta",begin:"@"+s,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},o={className:"params",begin:/\(/,end:/\)/,keywords:a,relevance:0,contains:[n.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:a,illegal:/<\/|#/,contains:[n.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[n.BACKSLASH_ESCAPE]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,s],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[e.concat(/(?!else)/,s),/\s+/,s,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,s],className:{1:"keyword",3:"title.class"},contains:[o,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+u+"\\s+)",n.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:a,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:a,relevance:0,contains:[l,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,pn,n.C_BLOCK_COMMENT_MODE]},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},pn,l]}}function zt(n){const e=n.regex,s={},u={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[s]}]};Object.assign(s,{className:"variable",variants:[{begin:e.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},u]});const g={className:"subst",begin:/\$\(/,end:/\)/,contains:[n.BACKSLASH_ESCAPE]},t=n.inherit(n.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),i={begin:/<<-?\s*(?=\w+)/,starts:{contains:[n.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},r={className:"string",begin:/"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,s,g]};g.contains.push(r);const a={match:/\\"/},l={className:"string",begin:/'/,end:/'/},o={match:/\\'/},c={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},n.NUMBER_MODE,s]},f=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],d=n.SHEBANG({binary:`(${f.join("|")})`,relevance:10}),h={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[n.inherit(n.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},p=["if","then","else","elif","fi","for","while","until","in","do","done","case","esac","function","select"],_=["true","false"],m={match:/(\/[a-z._-]+)+/},v=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],E=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],y=["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"],D=["chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"];return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:p,literal:_,built_in:[...v,...E,"set","shopt",...y,...D]},contains:[d,n.SHEBANG(),h,c,t,i,m,r,a,l,o,s]}}function Ht(n){const e=n.regex,s=n.COMMENT("--","$"),u={className:"string",variants:[{begin:/'/,end:/'/,contains:[{begin:/''/}]}]},g={begin:/"/,end:/"/,contains:[{begin:/""/}]},t=["true","false","unknown"],i=["double precision","large object","with timezone","without timezone"],r=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],a=["add","asc","collation","desc","final","first","last","view"],l=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],o=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],c=["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"],f=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],d=o,h=[...l,...a].filter(E=>!o.includes(E)),p={className:"variable",begin:/@[a-z0-9][a-z0-9_]*/},_={className:"operator",begin:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},m={begin:e.concat(/\b/,e.either(...d),/\s*\(/),relevance:0,keywords:{built_in:d}};function v(E,{exceptions:y,when:D}={}){const T=D;return y=y||[],E.map(S=>S.match(/\|\d+$/)||y.includes(S)?S:T(S)?`${S}|0`:S)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:v(h,{when:E=>E.length<3}),literal:t,type:r,built_in:c},contains:[{begin:e.either(...f),relevance:0,keywords:{$pattern:/[\w\.]+/,keyword:h.concat(f),literal:t,type:r}},{className:"type",begin:e.either(...i)},m,p,u,g,n.C_NUMBER_MODE,n.C_BLOCK_COMMENT_MODE,s,_]}}X.registerLanguage("xml",Lt),X.registerLanguage("javascript",Bt),X.registerLanguage("json",$t),X.registerLanguage("yaml",xt),X.registerLanguage("plaintext",Pt),X.registerLanguage("python",Ut),X.registerLanguage("java",Ft),X.registerLanguage("bash",zt),X.registerLanguage("sql",Ht);var M=(n=>(n.EQUAL="equal",n.DELETE="removed",n.ADD="added",n.EMPTY="empty",n))(M||{});const J="<code-diff-modified>",V="</code-diff-modified>",Gt=1e4,j=1e3,bn=J.replace("<","&lt;").replace(">","&gt;"),vn=V.replace("<","&lt;").replace(">","&gt;");function Kt(n){const e={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};return n.replace(/[&<>"']/g,s=>e[s])}function re(n){return n===void 0?M.EQUAL:n.added?M.ADD:n.removed?M.DELETE:M.EQUAL}function mn(n,e,s="word",u=!1){if(typeof n=="undefined"||typeof e=="undefined")return[n,e];if(!u&&n.length+e.length>Gt)return[n,e];const t=(s==="char"?Ln:On)(n,e),i=t.filter(a=>re(a)!==M.ADD).map(a=>re(a)===M.DELETE?`${J}${a.value}${V}`:a.value).join(""),r=t.filter(a=>re(a)!==M.DELETE).map(a=>re(a)===M.ADD?`${J}${a.value}${V}`:a.value).join("");return[i,r]}function En(n,e){if(n===e)return n?[{count:n.replace(/\n$/,"").split(`
9
9
  `).length,value:n}]:[];const s=n.endsWith(`
10
10
  `),u=e.endsWith(`
11
- `);s!==u&&(s?n=n.slice(0,-1):e=e.slice(0,-1));let g;if(n.length+e.length>=1e5&&n.includes(`
11
+ `);s!==u&&(s?n=n.slice(0,-1):e=e.slice(0,-1)),n&&(n+=`
12
+ `),e&&(e+=`
13
+ `);let g;if(n.length+e.length>=1e5&&n.includes(`
12
14
  `)&&e.includes(`
13
15
  `)){const t=n?n.replace(/\n$/,"").split(`
14
16
  `):[],i=e?e.replace(/\n$/,"").split(`
package/dist/v3/index.cjs CHANGED
@@ -8,7 +8,9 @@
8
8
  https://github.com/highlightjs/highlight.js/issues/2277`),x=E,P=M),k===void 0&&(k=!0);const W={code:P,language:x};re("before:highlight",W);const X=W.result?W.result:o(W.language,W.code,k);return X.code=W.code,re("after:highlight",X),X}function o(E,M,k,P){const x=Object.create(null);function W(A,C){return A.keywords[C]}function X(){if(!O.keywords){V.addText(H);return}let A=0;O.keywordPatternRe.lastIndex=0;let C=O.keywordPatternRe.exec(H),I="";for(;C;){I+=H.substring(A,C.index);const z=q.case_insensitive?C[0].toLowerCase():C[0],G=W(O,z);if(G){const[ne,$n]=G;if(V.addText(I),I="",x[z]=(x[z]||0)+1,x[z]<=zt&&(me+=$n),ne.startsWith("_"))I+=C[0];else{const Pn=q.classNameAliases[ne]||ne;j(C[0],Pn)}}else I+=C[0];A=O.keywordPatternRe.lastIndex,C=O.keywordPatternRe.exec(H)}I+=H.substring(A),V.addText(I)}function _e(){if(H==="")return;let A=null;if(typeof O.subLanguage=="string"){if(!t[O.subLanguage]){V.addText(H);return}A=o(O.subLanguage,H,!0,Qe[O.subLanguage]),Qe[O.subLanguage]=A._top}else A=d(H,O.subLanguage.length?O.subLanguage:null);O.relevance>0&&(me+=A.relevance),V.__addSublanguage(A._emitter,A.language)}function Q(){O.subLanguage!=null?_e():X(),H=""}function j(A,C){A!==""&&(V.startScope(C),V.addText(A),V.endScope())}function Ve(A,C){let I=1;const z=C.length-1;for(;I<=z;){if(!A._emit[I]){I++;continue}const G=q.classNameAliases[A[I]]||A[I],ne=C[I];G?j(ne,G):(H=ne,X(),H=""),I++}}function Ge(A,C){return A.scope&&typeof A.scope=="string"&&V.openNode(q.classNameAliases[A.scope]||A.scope),A.beginScope&&(A.beginScope._wrap?(j(H,q.classNameAliases[A.beginScope._wrap]||A.beginScope._wrap),H=""):A.beginScope._multi&&(Ve(A.beginScope,C),H="")),O=Object.create(A,{parent:{value:O}}),O}function Ke(A,C,I){let z=nt(A.endRe,I);if(z){if(A["on:end"]){const G=new Xe(A);A["on:end"](C,G),G.isMatchIgnored&&(z=!1)}if(z){for(;A.endsParent&&A.parent;)A=A.parent;return A}}if(A.endsWithParent)return Ke(A.parent,C,I)}function Rn(A){return O.matcher.regexIndex===0?(H+=A[0],1):(Te=!0,0)}function kn(A){const C=A[0],I=A.rule,z=new Xe(I),G=[I.__beforeBegin,I["on:begin"]];for(const ne of G)if(ne&&(ne(A,z),z.isMatchIgnored))return Rn(C);return I.skip?H+=C:(I.excludeBegin&&(H+=C),Q(),!I.returnBegin&&!I.excludeBegin&&(H=C)),Ge(I,A),I.returnBegin?0:C.length}function On(A){const C=A[0],I=M.substring(A.index),z=Ke(O,A,I);if(!z)return tn;const G=O;O.endScope&&O.endScope._wrap?(Q(),j(C,O.endScope._wrap)):O.endScope&&O.endScope._multi?(Q(),Ve(O.endScope,A)):G.skip?H+=C:(G.returnEnd||G.excludeEnd||(H+=C),Q(),G.excludeEnd&&(H=C));do O.scope&&V.closeNode(),!O.skip&&!O.subLanguage&&(me+=O.relevance),O=O.parent;while(O!==z.parent);return z.starts&&Ge(z.starts,A),G.returnEnd?0:C.length}function In(){const A=[];for(let C=O;C!==q;C=C.parent)C.scope&&A.unshift(C.scope);A.forEach(C=>V.openNode(C))}let be={};function We(A,C){const I=C&&C[0];if(H+=A,I==null)return Q(),0;if(be.type==="begin"&&C.type==="end"&&be.index===C.index&&I===""){if(H+=M.slice(C.index,C.index+1),!h){const z=new Error(`0 width match regex (${E})`);throw z.languageName=E,z.badRule=be.rule,z}return 1}if(be=C,C.type==="begin")return kn(C);if(C.type==="illegal"&&!k){const z=new Error('Illegal lexeme "'+I+'" for mode "'+(O.scope||"<unnamed>")+'"');throw z.mode=O,z}else if(C.type==="end"){const z=On(C);if(z!==tn)return z}if(C.type==="illegal"&&I==="")return 1;if(Se>1e5&&Se>C.index*3)throw new Error("potential infinite loop, way more iterations than matches");return H+=I,I.length}const q=S(E);if(!q)throw oe(n.replace("{}",E)),new Error('Unknown language: "'+E+'"');const Bn=Bt(q);let Me="",O=P||Bn;const Qe={},V=new i.__emitter(i);In();let H="",me=0,ae=0,Se=0,Te=!1;try{if(q.__emitTokens)q.__emitTokens(M,V);else{for(O.matcher.considerAll();;){Se++,Te?Te=!1:O.matcher.considerAll(),O.matcher.lastIndex=ae;const A=O.matcher.exec(M);if(!A)break;const C=M.substring(ae,A.index),I=We(C,A);ae=A.index+I}We(M.substring(ae))}return V.finalize(),Me=V.toHTML(),{language:E,value:Me,relevance:me,illegal:!1,_emitter:V,_top:O}}catch(A){if(A.message&&A.message.includes("Illegal"))return{language:E,value:Le(M),illegal:!0,relevance:0,_illegalBy:{message:A.message,index:ae,context:M.slice(ae-100,ae+100),mode:A.mode,resultSoFar:Me},_emitter:V};if(h)return{language:E,value:Le(M),illegal:!1,relevance:0,errorRaised:A,_emitter:V,_top:O};throw A}}function f(E){const M={value:Le(E),illegal:!1,relevance:0,_top:r,_emitter:new i.__emitter(i)};return M._emitter.addText(E),M}function d(E,M){M=M||i.languages||Object.keys(t);const k=f(E),P=M.filter(S).filter($).map(Q=>o(Q,E,!1));P.unshift(k);const x=P.sort((Q,j)=>{if(Q.relevance!==j.relevance)return j.relevance-Q.relevance;if(Q.language&&j.language){if(S(Q.language).supersetOf===j.language)return 1;if(S(j.language).supersetOf===Q.language)return-1}return 0}),[W,X]=x,_e=W;return _e.secondBest=X,_e}function _(E,M,k){const P=M&&c[M]||k;E.classList.add("hljs"),E.classList.add(`language-${P}`)}function p(E){let M=null;const k=l(E);if(s(k))return;if(re("before:highlightElement",{el:E,language:k}),E.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",E);return}if(E.children.length>0&&(i.ignoreUnescapedHTML||(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/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(E)),i.throwUnescapedHTML))throw new Ut("One of your code blocks includes unescaped HTML.",E.innerHTML);M=E;const P=M.textContent,x=k?a(P,{language:k,ignoreIllegals:!0}):d(P);E.innerHTML=x.value,E.dataset.highlighted="yes",_(E,k,x.language),E.result={language:x.language,re:x.relevance,relevance:x.relevance},x.secondBest&&(E.secondBest={language:x.secondBest.language,relevance:x.secondBest.relevance}),re("after:highlightElement",{el:E,result:x,text:P})}function b(E){i=nn(i,E)}const m=()=>{w(),ue("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function v(){w(),ue("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let y=!1;function w(){if(document.readyState==="loading"){y=!0;return}document.querySelectorAll(i.cssSelector).forEach(p)}function D(){y&&w()}typeof window!="undefined"&&window.addEventListener&&window.addEventListener("DOMContentLoaded",D,!1);function T(E,M){let k=null;try{k=M(e)}catch(P){if(oe("Language definition for '{}' could not be registered.".replace("{}",E)),h)oe(P);else throw P;k=r}k.name||(k.name=E),t[E]=k,k.rawDefinition=M.bind(null,e),k.aliases&&R(k.aliases,{languageName:E})}function L(E){delete t[E];for(const M of Object.keys(c))c[M]===E&&delete c[M]}function B(){return Object.keys(t)}function S(E){return E=(E||"").toLowerCase(),t[E]||t[c[E]]}function R(E,{languageName:M}){typeof E=="string"&&(E=[E]),E.forEach(k=>{c[k.toLowerCase()]=M})}function $(E){const M=S(E);return M&&!M.disableAutodetect}function U(E){E["before:highlightBlock"]&&!E["before:highlightElement"]&&(E["before:highlightElement"]=M=>{E["before:highlightBlock"](Object.assign({block:M.el},M))}),E["after:highlightBlock"]&&!E["after:highlightElement"]&&(E["after:highlightElement"]=M=>{E["after:highlightBlock"](Object.assign({block:M.el},M))})}function F(E){U(E),g.push(E)}function K(E){const M=g.indexOf(E);M!==-1&&g.splice(M,1)}function re(E,M){const k=E;g.forEach(function(P){P[k]&&P[k](M)})}function ce(E){return ue("10.7.0","highlightBlock will be removed entirely in v12.0"),ue("10.7.0","Please use highlightElement now."),p(E)}Object.assign(e,{highlight:a,highlightAuto:d,highlightAll:w,highlightElement:p,highlightBlock:ce,configure:b,initHighlighting:m,initHighlightingOnLoad:v,registerLanguage:T,unregisterLanguage:L,listLanguages:B,getLanguage:S,registerAliases:R,autoDetection:$,inherit:nn,addPlugin:F,removePlugin:K}),e.debugMode=function(){h=!1},e.safeMode=function(){h=!0},e.versionString=Pt,e.regex={concat:le,lookahead:hn,either:Ue,optional:Jn,anyNumberOfTimes:qn};for(const E in Ee)typeof Ee[E]=="object"&&fn(Ee[E]);return Object.assign(e,Ee),e},ge=wn({});ge.newInstance=()=>wn({});var Ht=ge;ge.HighlightJS=ge;ge.default=ge;const Z=Qn(Ht);function xt(e){const t=e.regex,c=t.concat(/[\p{L}_]/u,t.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),g=/[\p{L}0-9._:-]+/u,h={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},n={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},r=e.inherit(n,{begin:/\(/,end:/\)/}),i=e.inherit(e.APOS_STRING_MODE,{className:"string"}),s=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),l={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:g,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[h]},{begin:/'/,end:/'/,contains:[h]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[n,s,i,r,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[n,r,s,i]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},h,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[s]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[l],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[l],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:t.concat(/</,t.lookahead(t.concat(c,t.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:c,relevance:0,starts:l}]},{className:"tag",begin:t.concat(/<\//,t.lookahead(t.concat(c,/>/))),contains:[{className:"name",begin:c,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}const rn="[A-Za-z$_][0-9A-Za-z$_]*",Ft=["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"],Vt=["true","false","null","undefined","NaN","Infinity"],Nn=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],An=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],Mn=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Gt=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Kt=[].concat(Mn,Nn,An);function Wt(e){const t=e.regex,c=(M,{after:k})=>{const P="</"+M[0].slice(1);return M.input.indexOf(P,k)!==-1},g=rn,h={begin:"<>",end:"</>"},n=/<[A-Za-z0-9\\._:-]+\s*\/>/,r={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(M,k)=>{const P=M[0].length+M.index,x=M.input[P];if(x==="<"||x===","){k.ignoreMatch();return}x===">"&&(c(M,{after:P})||k.ignoreMatch());let W;const X=M.input.substring(P);if(W=X.match(/^\s*=/)){k.ignoreMatch();return}if((W=X.match(/^\s+extends\s+/))&&W.index===0){k.ignoreMatch();return}}},i={$pattern:rn,keyword:Ft,literal:Vt,built_in:Kt,"variable.language":Gt},s="[0-9](_?[0-9])*",l=`\\.(${s})`,a="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",o={className:"number",variants:[{begin:`(\\b(${a})((${l})|\\.)?|(${l}))[eE][+-]?(${s})\\b`},{begin:`\\b(${a})\\b((${l})\\b|\\.)?|(${l})\\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},f={className:"subst",begin:"\\$\\{",end:"\\}",keywords:i,contains:[]},d={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"xml"}},_={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"css"}},p={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"graphql"}},b={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,f]},v={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:g+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},y=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,d,_,p,b,{match:/\$\d+/},o];f.contains=y.concat({begin:/\{/,end:/\}/,keywords:i,contains:["self"].concat(y)});const w=[].concat(v,f.contains),D=w.concat([{begin:/(\s*)\(/,end:/\)/,keywords:i,contains:["self"].concat(w)}]),T={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:D},L={variants:[{match:[/class/,/\s+/,g,/\s+/,/extends/,/\s+/,t.concat(g,"(",t.concat(/\./,g),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,g],scope:{1:"keyword",3:"title.class"}}]},B={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...Nn,...An]}},S={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},R={variants:[{match:[/function/,/\s+/,g,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[T],illegal:/%/},$={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function U(M){return t.concat("(?!",M.join("|"),")")}const F={match:t.concat(/\b/,U([...Mn,"super","import"].map(M=>`${M}\\s*\\(`)),g,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},K={begin:t.concat(/\./,t.lookahead(t.concat(g,/(?![0-9A-Za-z$_(])/))),end:g,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},re={match:[/get|set/,/\s+/,g,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},T]},ce="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",E={match:[/const|var|let/,/\s+/,g,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(ce)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[T]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:i,exports:{PARAMS_CONTAINS:D,CLASS_REFERENCE:B},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),S,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,d,_,p,b,v,{match:/\$\d+/},o,B,{className:"attr",begin:g+t.lookahead(":"),relevance:0},E,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[v,e.REGEXP_MODE,{className:"function",begin:ce,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:D}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:h.begin,end:h.end},{match:n},{begin:r.begin,"on:begin":r.isTrulyOpeningTag,end:r.end}],subLanguage:"xml",contains:[{begin:r.begin,end:r.end,skip:!0,contains:["self"]}]}]},R,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[T,e.inherit(e.TITLE_MODE,{begin:g,className:"title.function"})]},{match:/\.\.\./,relevance:0},K,{match:"\\$"+g,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[T]},F,$,L,re,{match:/\$[(.]/}]}}function Qt(e){const t={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},c={match:/[{}[\],:]/,className:"punctuation",relevance:0},g=["true","false","null"],h={scope:"literal",beginKeywords:g.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:g},contains:[t,c,e.QUOTE_STRING_MODE,h,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}function Zt(e){const t="true false yes no null",c="[\\w#;/?:@&=+$,.~*'()[\\]]+",g={className:"attr",variants:[{begin:/\w[\w :()\./-]*:(?=[ \t]|$)/},{begin:/"\w[\w :()\./-]*":(?=[ \t]|$)/},{begin:/'\w[\w :()\./-]*':(?=[ \t]|$)/}]},h={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},n={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,h]},r=e.inherit(n,{variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),o={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"},f={end:",",endsWithParent:!0,excludeEnd:!0,keywords:t,relevance:0},d={begin:/\{/,end:/\}/,contains:[f],illegal:"\\n",relevance:0},_={begin:"\\[",end:"\\]",contains:[f],illegal:"\\n",relevance:0},p=[g,{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+!"+c},{className:"type",begin:"!<"+c+">"},{className:"type",begin:"!"+c},{className:"type",begin:"!!"+c},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:t,keywords:{literal:t}},o,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},d,_,n],b=[...p];return b.pop(),b.push(r),f.contains=b,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:p}}function Yt(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}function Xt(e){const t=e.regex,c=/[\p{XID_Start}_]\p{XID_Continue}*/u,g=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],i={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:g,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},s={className:"meta",begin:/^(>>>|\.\.\.) /},l={className:"subst",begin:/\{/,end:/\}/,keywords:i,illegal:/#/},a={begin:/\{\{/,relevance:0},o={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,s],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,s],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,s,a,l]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,s,a,l]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,a,l]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,a,l]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},f="[0-9](_?[0-9])*",d=`(\\b(${f}))?\\.(${f})|\\b(${f})\\.`,_=`\\b|${g.join("|")}`,p={className:"number",relevance:0,variants:[{begin:`(\\b(${f})|(${d}))[eE][+-]?(${f})[jJ]?(?=${_})`},{begin:`(${d})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${_})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${_})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${_})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${_})`},{begin:`\\b(${f})[jJ](?=${_})`}]},b={className:"comment",begin:t.lookahead(/# type:/),end:/$/,keywords:i,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},m={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:["self",s,p,o,e.HASH_COMMENT_MODE]}]};return l.contains=[o,p,s],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:i,illegal:/(<\/|\?)|=>/,contains:[s,p,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},o,b,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,c],scope:{1:"keyword",3:"title.function"},contains:[m]},{variants:[{match:[/\bclass/,/\s+/,c,/\s*/,/\(\s*/,c,/\s*\)/]},{match:[/\bclass/,/\s+/,c]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[p,m,o]}]}}var fe="[0-9](_*[0-9])*",ve=`\\.(${fe})`,ye="[0-9a-fA-F](_*[0-9a-fA-F])*",sn={className:"number",variants:[{begin:`(\\b(${fe})((${ve})|\\.)?|(${ve}))[eE][+-]?(${fe})[fFdD]?\\b`},{begin:`\\b(${fe})((${ve})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${ve})[fFdD]?\\b`},{begin:`\\b(${fe})[fFdD]\\b`},{begin:`\\b0[xX]((${ye})\\.?|(${ye})?\\.(${ye}))[pP][+-]?(${fe})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${ye})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function Sn(e,t,c){return c===-1?"":e.replace(t,g=>Sn(e,t,c-1))}function jt(e){const t=e.regex,c="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",g=c+Sn("(?:<"+c+"~~~(?:\\s*,\\s*"+c+"~~~)*>)?",/~~~/g,2),s={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits","goto"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},l={className:"meta",begin:"@"+c,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},a={className:"params",begin:/\(/,end:/\)/,keywords:s,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:s,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[e.BACKSLASH_ESCAPE]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,c],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[t.concat(/(?!else)/,c),/\s+/,c,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,c],className:{1:"keyword",3:"title.class"},contains:[a,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+g+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:s,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:s,relevance:0,contains:[l,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,sn,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},sn,l]}}function qt(e){const t=e.regex,c={},g={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[c]}]};Object.assign(c,{className:"variable",variants:[{begin:t.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},g]});const h={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},n=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),r={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,c,h]};h.contains.push(i);const s={match:/\\"/},l={className:"string",begin:/'/,end:/'/},a={match:/\\'/},o={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,c]},f=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],d=e.SHEBANG({binary:`(${f.join("|")})`,relevance:10}),_={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},p=["if","then","else","elif","fi","for","while","until","in","do","done","case","esac","function","select"],b=["true","false"],m={match:/(\/[a-z._-]+)+/},v=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],y=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],w=["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"],D=["chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"];return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:p,literal:b,built_in:[...v,...y,"set","shopt",...w,...D]},contains:[d,e.SHEBANG(),_,o,n,r,m,i,s,l,a,c]}}function Jt(e){const t=e.regex,c=e.COMMENT("--","$"),g={className:"string",variants:[{begin:/'/,end:/'/,contains:[{begin:/''/}]}]},h={begin:/"/,end:/"/,contains:[{begin:/""/}]},n=["true","false","unknown"],r=["double precision","large object","with timezone","without timezone"],i=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],s=["add","asc","collation","desc","final","first","last","view"],l=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],a=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],o=["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"],f=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],d=a,_=[...l,...s].filter(y=>!a.includes(y)),p={className:"variable",begin:/@[a-z0-9][a-z0-9_]*/},b={className:"operator",begin:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},m={begin:t.concat(/\b/,t.either(...d),/\s*\(/),relevance:0,keywords:{built_in:d}};function v(y,{exceptions:w,when:D}={}){const T=D;return w=w||[],y.map(L=>L.match(/\|\d+$/)||w.includes(L)?L:T(L)?`${L}|0`:L)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:v(_,{when:y=>y.length<3}),literal:n,type:i,built_in:o},contains:[{begin:t.either(...f),relevance:0,keywords:{$pattern:/[\w\.]+/,keyword:_.concat(f),literal:n,type:i}},{className:"type",begin:t.either(...r)},m,p,g,h,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,c,b]}}Z.registerLanguage("xml",xt);Z.registerLanguage("javascript",Wt);Z.registerLanguage("json",Qt);Z.registerLanguage("yaml",Zt);Z.registerLanguage("plaintext",Yt);Z.registerLanguage("python",Xt);Z.registerLanguage("java",jt);Z.registerLanguage("bash",qt);Z.registerLanguage("sql",Jt);var N=(e=>(e.EQUAL="equal",e.DELETE="removed",e.ADD="added",e.EMPTY="empty",e))(N||{});const J="<code-diff-modified>",ee="</code-diff-modified>",er=1e4,Y=1e3,an=J.replace("<","&lt;").replace(">","&gt;"),on=ee.replace("<","&lt;").replace(">","&gt;");function nr(e){const t={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};return e.replace(/[&<>"']/g,c=>t[c])}function se(e){return e===void 0?N.EQUAL:e.added?N.ADD:e.removed?N.DELETE:N.EQUAL}function Tn(e,t,c="word",g=!1){if(typeof e=="undefined"||typeof t=="undefined")return[e,t];if(!g&&e.length+t.length>er)return[e,t];const n=(c==="char"?Hn:Fn)(e,t),r=n.filter(s=>se(s)!==N.ADD).map(s=>se(s)===N.DELETE?`${J}${s.value}${ee}`:s.value).join(""),i=n.filter(s=>se(s)!==N.DELETE).map(s=>se(s)===N.ADD?`${J}${s.value}${ee}`:s.value).join("");return[r,i]}function Dn(e,t){if(e===t)return e?[{count:e.replace(/\n$/,"").split(`
9
9
  `).length,value:e}]:[];const c=e.endsWith(`
10
10
  `),g=t.endsWith(`
11
- `);c!==g&&(c?e=e.slice(0,-1):t=t.slice(0,-1));let h;if(e.length+t.length>=1e5&&e.includes(`
11
+ `);c!==g&&(c?e=e.slice(0,-1):t=t.slice(0,-1)),e&&(e+=`
12
+ `),t&&(t+=`
13
+ `);let h;if(e.length+t.length>=1e5&&e.includes(`
12
14
  `)&&t.includes(`
13
15
  `)){const n=e?e.replace(/\n$/,"").split(`
14
16
  `):[],r=t?t.replace(/\n$/,"").split(`