1(globalThis.webpackChunkschulconnex=globalThis.webpackChunkschulconnex||[]).push([[152],{18426(e,t){function r(e){let t,r=[];for(let n of e.split(",").map(e=>e.trim()))if(/^-?\d+$/.test(n))r.push(parseInt(n,10));else if(t=n.match(/^(-?\d+)(-|\.\.\.?|\u2025|\u2026|\u22EF)(-?\d+)$/)){let[e,n,a,s]=t;if(n&&s){n=parseInt(n),s=parseInt(s);const e=n<s?1:-1;"-"!==a&&".."!==a&&"\u2025"!==a||(s+=e);for(let t=n;t!==s;t+=e)r.push(t)}}return r}t.default=r,e.exports=r},19365(e,t,r){"use strict";r.r(t),r.d(t,{default:()=>u});r(96540);var n=r(34164);const a="tabItem_Ymn6";var s=r(74848);function u({children:e,hidden:t,className:r}){return(0,s.jsx)("div",{role:"tabpanel",className:(0,n.A)(a,r),hidden:t,children:e})}},26058(e,t,r){"use strict";r.d(t,{A:()=>s});var n=r(95293),a=r(6342);function s(){const{prism:e}=(0,a.p)(),{colorMode:t}=(0,n.G)(),r=e.theme,s=e.darkTheme||r;return"dark"===t?s:r}},28453(e,t,r){"use strict";r.d(t,{R:()=>u,x:()=>o});var n=r(96540);const a={},s=n.createContext(a);function u(e){const t=n.useContext(s);return n.useMemo(function(){return"function"==typeof e?e(t):{...t,...e}},[t,e])}function o(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:u(e.components),n.createElement(s.Provider,{value:t},e.children)}},34291(e,t,r){"use strict";r.d(t,{DX:()=>y,J9:()=>p,Li:()=>w,M$:()=>k,Ph:()=>N,_u:()=>g,l8:()=>C,mU:()=>j,wt:()=>h});var n=r(96540),a=r(34164),s=r(18426),u=r.n(s),o=r(89532),c=r(74848);const l=/title=(?<quote>["'])(?<title>.*?)\1/,i=/\{(?<range>[\d,-]+)\}/,d={js:{start:"\\/\\/",end:""},jsBlock:{start:"\\/\\*",end:"\\*\\/"},jsx:{start:"\\{\\s*\\/\\*",end:"\\*\\/\\s*\\}"},bash:{start:"#",end:""},html:{start:"\x3c!--",end:"--\x3e"}},f={...d,lua:{start:"--",end:""},wasm:{start:"\\;\\;",end:""},tex:{start:"%",end:""},vb:{start:"['\u2018\u2019]",end:""},vbnet:{start:"(?:_\\s*)?['\u2018\u2019]",end:""},rem:{start:"[Rr][Ee][Mm]\\b",end:""},f90:{start:"!",end:""},ml:{start:"\\(\\*",end:"\\*\\)"},cobol:{start:"\\*>",end:""}},m=Object.keys(d);function b(e,t){const r=e.map(e=>{const{start:r,end:n}=f[e];return`(?:${r}\\s*(${t.flatMap(e=>[e.line,e.block?.start,e.block?.end].filter(Boolean)).join("|")})\\s*${n})`}).join("|");return new RegExp(`^\\s*(?:${r})\\s*$`)}function h(e){return e?.match(l)?.groups.title??""}function p({showLineNumbers:e,metastring:t}){return"boolean"==typeof e?e?1:void 0:"number"==typeof e?e:function(e){const t=e?.split(" ").find(e=>e.startsWith("showLineNumbers"));if(t){if(t.startsWith("showLineNumbers=")){const e=t.replace("showLineNumbers=","");return parseInt(e,10)}return 1}}(t)}function g(e){return Boolean(e?.includes("showLineNumbers"))}function v(e,t){const{language:r,magicComments:n}=t;if(void 0===r)return{lineClassNames:{},code:e};const a=function(e,t){switch(e){case"js":case"javascript":case"ts":case"typescript":return b(["js","jsBlock"],t);case"jsx":case"tsx":return b(["js","jsBlock","jsx"],t);case"html":return b(["js","jsBlock","html"],t);case"python":case"py":case"bash":return b(["bash"],t);case"markdown":case"md":return b(["html","jsx","bash"],t);case"tex":case"latex":case"matlab":return b(["tex"],t);case"lua":case"haskell":return b(["lua"],t);case"sql":return b(["lua","jsBlock"],t);case"wasm":return b(["wasm"],t);case"vb":case"vba":case"visual-basic":return b(["vb","rem"],t);case"vbnet":return b(["vbnet","rem"],t);case"batch":return b(["rem"],t);case"basic":return b(["rem","f90"],t);case"fsharp":return b(["js","ml"],t);case"ocaml":case"sml":return b(["ml"],t);case"fortran":return b(["f90"],t);case"cobol":return b(["cobol"],t);default:return b(m,t)}}(r,n),s=e.split(/\r?\n/),o=Object.fromEntries(n.map(e=>[e.className,{start:0,range:""}])),c=Object.fromEntries(n.filter(e=>e.line).map(({className:e,line:t})=>[t,e])),l=Object.fromEntries(n.filter(e=>e.block).map(({className:e,block:t})=>[t.start,e])),i=Object.fromEntries(n.filter(e=>e.block).map(({className:e,block:t})=>[t.end,e]));for(let u=0;u<s.length;){const e=s[u].match(a);if(!e){u+=1;continue}const t=e.slice(1).find(e=>void 0!==e);c[t]?o[c[t]].range+=`${u},`:l[t]?o[l[t]].start=u:i[t]&&(o[i[t]].range+=`${o[i[t]].start}-${u-1},`),s.splice(u,1)}const d={};
1return Object.entries(o).forEach(([e,{range:t}])=>{u()(t).forEach(t=>{d[t]??=[],d[t].push(e)})}),{code:s.join("\n"),lineClassNames:d}}function w(e,t){const r=e.replace(/\r?\n$/,"");return function(e,{metastring:t,magicComments:r}){if(t&&i.test(t)){const n=t.match(i).groups.range;if(0===r.length)throw new Error(`A highlight range has been given in code block's metastring (\`\`\` ${t}), but no magic comment config is available. Docusaurus applies the first magic comment entry's className for metastring ranges.`);const a=r[0].className,s=u()(n).filter(e=>e>0).map(e=>[e-1,[a]]);return{lineClassNames:Object.fromEntries(s),code:e}}return null}(r,{...t})??v(r,{...t})}function y(e){if(!e)return;const t=e.split(" ").find(e=>e.startsWith("language-"));return t?.replace(/language-/,"")}function j(e){const t=function(e){return t=e.language??y(e.className)??e.defaultLanguage,t?.toLowerCase()??"text";var t}({language:e.language,defaultLanguage:e.defaultLanguage,className:e.className}),{lineClassNames:r,code:n}=w(e.code,{metastring:e.metastring,magicComments:e.magicComments,language:t}),s=function({className:e,language:t}){return(0,a.A)(e,t&&!e?.includes(`language-${t}`)&&`language-${t}`)}({className:e.className,language:t}),u=h(e.metastring)||e.title,o=p({showLineNumbers:e.showLineNumbers,metastring:e.metastring});return{codeInput:e.code,code:n,className:s,language:t,title:u,lineNumbersStart:o,lineClassNames:r}}function k(e){const t={color:"--prism-color",backgroundColor:"--prism-background-color"},r={};return Object.entries(e.plain).forEach(([e,n])=>{const a=t[e];a&&"string"==typeof n&&(r[a]=n)}),r}const E=(0,n.createContext)(null);function C({metadata:e,wordWrap:t,children:r}){const a=(0,n.useMemo)(()=>({metadata:e,wordWrap:t}),[e,t]);return(0,c.jsx)(E.Provider,{value:a,children:r})}function N(){const e=(0,n.useContext)(E);if(null===e)throw new o.dV("CodeBlockContextProvider");return e}},47751(e,t,r){"use strict";r.d(t,{u:()=>m,v:()=>l});var n=r(96540),a=r(56347),s=r(205),u=r(57485),o=r(70679),c=r(31682);function l(e){return n.Children.toArray(e).filter(e=>"\n"!==e).map(e=>{if(!e||(0,n.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad <Tabs> child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the <Tabs> component should be <TabItem>, and every <TabItem> should have a unique "value" prop.`)})?.filter(Boolean)??[]}function i(e){const{values:t,children:r}=e;return(0,n.useMemo)(()=>{const e=t??function(e){return l(e).map(({props:{value:e,label:t,attributes:r,default:n}})=>({value:e,label:t,attributes:r,default:n}))}(r);return function(e){const t=(0,c.XI)(e,(e,t)=>e.value===t.value);if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map(e=>e.value).join(", ")}" found in <Tabs>. Every value needs to be unique.`)}(e),e},[t,r])}function d({value:e,tabValues:t}){return t.some(t=>t.value===e)}function f({queryString:e=!1,groupId:t}){const r=(0,a.W6)(),s=function({queryString:e=!1,groupId:t}){if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!t)throw new Error('Docusaurus error: The <Tabs> component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return t??null}({queryString:e,groupId:t});return[(0,u.aZ)(s),(0,n.useCallback)(e=>{if(!s)return;const t=new URLSearchParams(r.location.search);t.set(s,e),r.replace({...r.location,search:t.toString()})},[s,r])]}function m(e){const{defaultValue:t,queryString:r=!1,groupId:a}
1=e,u=i(e),[c,l]=(0,n.useState)(()=>function({defaultValue:e,tabValues:t}){if(0===t.length)throw new Error("Docusaurus error: the <Tabs> component requires at least one <TabItem> children component");if(e){if(!d({value:e,tabValues:t}))throw new Error(`Docusaurus error: The <Tabs> has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${t.map(e=>e.value).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const r=t.find(e=>e.default)??t[0];if(!r)throw new Error("Unexpected error: 0 tabValues");return r.value}({defaultValue:t,tabValues:u})),[m,b]=f({queryString:r,groupId:a}),[h,p]=function({groupId:e}){const t=function(e){return e?`docusaurus.tab.${e}`:null}(e),[r,a]=(0,o.Dv)(t);return[r,(0,n.useCallback)(e=>{t&&a.set(e)},[t,a])]}({groupId:a}),g=(()=>{const e=m??h;return d({value:e,tabValues:u})?e:null})();(0,s.A)(()=>{g&&l(g)},[g]);return{selectedValue:c,selectValue:(0,n.useCallback)(e=>{if(!d({value:e,tabValues:u}))throw new Error(`Can't select invalid tab value=${e}`);l(e),b(e),p(e)},[b,p,u]),tabValues:u}}},96591(e,t,r){"use strict";r.d(t,{f:()=>o});var n=r(96540),a=r(89532);const s={attributes:!0,characterData:!0,childList:!0,subtree:!0};function u(e,t){const[r,u]=(0,n.useState)(),o=(0,n.useCallback)(()=>{u(e.current?.closest("[role=tabpanel][hidden]"))},[e,u]);(0,n.useEffect)(()=>{o()},[o]),function(e,t,r=s){const u=(0,a._q)(t),o=(0,a.Be)(r);(0,n.useEffect)(()=>{const t=new MutationObserver(u);return e&&t.observe(e,o),()=>t.disconnect()},[e,u,o])}(r,e=>{e.forEach(e=>{"attributes"===e.type&&"hidden"===e.attributeName&&(t(),o())})},{attributes:!0,characterData:!1,childList:!1,subtree:!1})}function o(){const[e,t]=(0,n.useState)(!1),[r,a]=(0,n.useState)(!1),s=(0,n.useRef)(null),o=(0,n.useCallback)(()=>{const r=s.current.querySelector("code");e?r.removeAttribute("style"):(r.style.whiteSpace="pre-wrap",r.style.overflowWrap="anywhere"),t(e=>!e)},[s,e]),c=(0,n.useCallback)(()=>{const{scrollWidth:e,clientWidth:t}=s.current,r=e>t||s.current.querySelector("code").hasAttribute("style");a(r)},[s]);return u(s,c),(0,n.useEffect)(()=>{c()},[e,c]),(0,n.useEffect)(()=>(window.addEventListener("resize",c,{passive:!0}),()=>{window.removeEventListener("resize",c)}),[c]),{codeBlockRef:s,isEnabled:e,isCodeScrollable:r,toggle:o}}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.