docusaurus/assets/js/6c065aab.7f25e828.js
2024-11-28 15:54:28 +00:00

22 lines
No EOL
23 KiB
JavaScript

"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([["19507"],{34053:function(e,t,n){n.r(t),n.d(t,{metadata:()=>r,contentTitle:()=>d,default:()=>f,assets:()=>h,toc:()=>p,frontMatter:()=>u});var r=JSON.parse('{"id":"api/themes/theme-classic","title":"\uD83D\uDCE6 theme-classic","description":"The classic theme for Docusaurus.","source":"@site/docs/api/themes/theme-classic.mdx","sourceDirName":"api/themes","slug":"/api/themes/@docusaurus/theme-classic","permalink":"/docs/api/themes/@docusaurus/theme-classic","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/themes/theme-classic.mdx","tags":[],"version":"current","lastUpdatedBy":"S\xe9bastien Lorber","lastUpdatedAt":1732809102000,"sidebarPosition":2,"frontMatter":{"sidebar_position":2,"slug":"/api/themes/@docusaurus/theme-classic"},"sidebar":"api","previous":{"title":"Configuration","permalink":"/docs/api/themes/configuration"},"next":{"title":"\uD83D\uDCE6 theme-live-codeblock","permalink":"/docs/api/themes/@docusaurus/theme-live-codeblock"}}'),s=n("24246"),a=n("80980"),o=n("15398"),l=n("58636"),i=n("32240"),c=n("66359");let u={sidebar_position:2,slug:"/api/themes/@docusaurus/theme-classic"},d="\uD83D\uDCE6 theme-classic",h={},p=[{value:"Configuration",id:"configuration",level:2},{value:"Example configuration",id:"ex-config",level:3}];function m(e){let t={a:"a",admonition:"admonition",code:"code",h1:"h1",h2:"h2",h3:"h3",header:"header",p:"p",pre:"pre",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,a.a)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(t.header,{children:(0,s.jsx)(t.h1,{id:"-theme-classic",children:"\uD83D\uDCE6 theme-classic"})}),"\n","\n",(0,s.jsx)(t.p,{children:"The classic theme for Docusaurus."}),"\n",(0,s.jsxs)(t.p,{children:["You can refer to the ",(0,s.jsx)(t.a,{href:"/docs/api/themes/configuration",children:"theme configuration page"})," for more details on the configuration."]}),"\n",(0,s.jsxs)(o.Z,{groupId:"npm2yarn",children:[(0,s.jsx)(l.Z,{value:"npm",children:(0,s.jsx)(t.pre,{children:(0,s.jsx)(t.code,{className:"language-bash",children:"npm install --save @docusaurus/theme-classic\n"})})}),(0,s.jsx)(l.Z,{value:"yarn",label:"Yarn",children:(0,s.jsx)(t.pre,{children:(0,s.jsx)(t.code,{className:"language-bash",children:"yarn add @docusaurus/theme-classic\n"})})}),(0,s.jsx)(l.Z,{value:"pnpm",label:"pnpm",children:(0,s.jsx)(t.pre,{children:(0,s.jsx)(t.code,{className:"language-bash",children:"pnpm add @docusaurus/theme-classic\n"})})})]}),"\n",(0,s.jsx)(t.admonition,{type:"tip",children:(0,s.jsxs)(t.p,{children:["If you have installed ",(0,s.jsx)(t.code,{children:"@docusaurus/preset-classic"}),", you don't need to install it as a dependency."]})}),"\n",(0,s.jsx)(t.h2,{id:"configuration",children:"Configuration"}),"\n",(0,s.jsx)(t.p,{children:"Accepted fields:"}),"\n",(0,s.jsx)(i.Z,{children:(0,s.jsxs)(t.table,{children:[(0,s.jsx)(t.thead,{children:(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.th,{children:"Option"}),(0,s.jsx)(t.th,{children:"Type"}),(0,s.jsx)(t.th,{children:"Default"}),(0,s.jsx)(t.th,{children:"Description"})]})}),(0,s.jsx)(t.tbody,{children:(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"customCss"})}),(0,s.jsx)(t.td,{children:(0,s.jsx)("code",{children:"string[] | string"})}),(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"[]"})}),(0,s.jsxs)(t.td,{children:["Stylesheets to be imported globally as ",(0,s.jsx)(t.a,{href:"/docs/advanced/client#client-modules",children:"client modules"}),". Relative paths are resolved against the site directory."]})]})})]})}),"\n",(0,s.jsx)(t.admonition,{type:"note",children:(0,s.jsxs)(t.p,{children:["Most configuration for the theme is done in ",(0,s.jsx)(t.code,{children:"themeConfig"}),", which can be found in ",(0,s.jsx)(t.a,{href:"/docs/api/themes/configuration",children:"theme configuration"}),"."]})}),"\n",(0,s.jsx)(t.h3,{id:"ex-config",children:"Example configuration"}),"\n",(0,s.jsx)(t.p,{children:"You can configure this theme through preset options or plugin options."}),"\n",(0,s.jsx)(t.admonition,{type:"tip",children:(0,s.jsx)(t.p,{children:"Most Docusaurus users configure this plugin through the preset options."})}),"\n","\n",(0,s.jsx)(c.Z,{pluginName:"@docusaurus/theme-classic",presetOptionName:"theme",code:"{\n customCss: './src/css/custom.css',\n}"})]})}function f(e={}){let{wrapper:t}={...(0,a.a)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(m,{...e})}):m(e)}},58636:function(e,t,n){n.d(t,{Z:()=>o});var r=n("24246");n("27378");var s=n("90496");let a="tabItem_pnkT";function o(e){let{children:t,hidden:n,className:o}=e;return(0,r.jsx)("div",{role:"tabpanel",className:(0,s.Z)(a,o),hidden:n,children:t})}},15398:function(e,t,n){n.d(t,{Z:()=>v});var r=n("24246"),s=n("27378"),a=n("90496"),o=n("54947"),l=n("3620"),i=n("844"),c=n("97486"),u=n("32263"),d=n("16971");function h(e){return s.Children.toArray(e).filter(e=>"\n"!==e).map(e=>{if(!e||s.isValidElement(e)&&function(e){let{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw 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 p(e){let{value:t,tabValues:n}=e;return n.some(e=>e.value===t)}var m=n("71607");let f="tabList_Qoir",b="tabItem_AQgk";function g(e){let{className:t,block:n,selectedValue:s,selectValue:l,tabValues:i}=e,c=[],{blockElementScrollPositionUntilNextRender:u}=(0,o.o5)(),d=e=>{let t=e.currentTarget,n=i[c.indexOf(t)].value;n!==s&&(u(t),l(n))},h=e=>{let t=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":{let n=c.indexOf(e.currentTarget)+1;t=c[n]??c[0];break}case"ArrowLeft":{let n=c.indexOf(e.currentTarget)-1;t=c[n]??c[c.length-1]}}t?.focus()};return(0,r.jsx)("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,a.Z)("tabs",{"tabs--block":n},t),children:i.map(e=>{let{value:t,label:n,attributes:o}=e;return(0,r.jsx)("li",{role:"tab",tabIndex:s===t?0:-1,"aria-selected":s===t,ref:e=>c.push(e),onKeyDown:h,onClick:d,...o,className:(0,a.Z)("tabs__item",b,o?.className,{"tabs__item--active":s===t}),children:n??t},t)})})}function x(e){let{lazy:t,children:n,selectedValue:o}=e,l=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){let e=l.find(e=>e.props.value===o);return e?(0,s.cloneElement)(e,{className:(0,a.Z)("margin-top--md",e.props.className)}):null}return(0,r.jsx)("div",{className:"margin-top--md",children:l.map((e,t)=>(0,s.cloneElement)(e,{key:t,hidden:e.props.value!==o}))})}function j(e){let t=function(e){let{defaultValue:t,queryString:n=!1,groupId:r}=e,a=function(e){let{values:t,children:n}=e;return(0,s.useMemo)(()=>{let e=t??h(n).map(e=>{let{props:{value:t,label:n,attributes:r,default:s}}=e;return{value:t,label:n,attributes:r,default:s}});return!function(e){let t=(0,u.lx)(e,(e,t)=>e.value===t.value);if(t.length>0)throw Error(`Docusaurus error: Duplicate values "${t.map(e=>e.value).join(", ")}" found in <Tabs>. Every value needs to be unique.`)}(e),e},[t,n])}(e),[o,m]=(0,s.useState)(()=>(function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw Error("Docusaurus error: the <Tabs> component requires at least one <TabItem> children component");if(t){if(!p({value:t,tabValues:n}))throw Error(`Docusaurus error: The <Tabs> has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map(e=>e.value).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}let r=n.find(e=>e.default)??n[0];if(!r)throw Error("Unexpected error: 0 tabValues");return r.value})({defaultValue:t,tabValues:a})),[f,b]=function(e){let{queryString:t=!1,groupId:n}=e,r=(0,l.k6)(),a=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw 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 n??null}({queryString:t,groupId:n}),o=(0,c._X)(a);return[o,(0,s.useCallback)(e=>{if(!a)return;let t=new URLSearchParams(r.location.search);t.set(a,e),r.replace({...r.location,search:t.toString()})},[a,r])]}({queryString:n,groupId:r}),[g,x]=function(e){var t;let{groupId:n}=e;let r=(t=n)?`docusaurus.tab.${t}`:null,[a,o]=(0,d.Nk)(r);return[a,(0,s.useCallback)(e=>{if(!!r)o.set(e)},[r,o])]}({groupId:r}),j=(()=>{let e=f??g;return p({value:e,tabValues:a})?e:null})();return(0,i.Z)(()=>{j&&m(j)},[j]),{selectedValue:o,selectValue:(0,s.useCallback)(e=>{if(!p({value:e,tabValues:a}))throw Error(`Can't select invalid tab value=${e}`);m(e),b(e),x(e)},[b,x,a]),tabValues:a}}(e);return(0,r.jsxs)("div",{className:(0,a.Z)("tabs-container",f),children:[(0,r.jsx)(g,{...t,...e}),(0,r.jsx)(x,{...t,...e})]})}function v(e){let t=(0,m.Z)();return(0,r.jsx)(j,{...e,children:h(e.children)},String(t))}},56497:function(e,t,n){n.d(t,{Z:function(){return a}});var r=n(24246);n(27378);var s=n(71607);function a(e){let{children:t,fallback:n}=e;return(0,s.Z)()?(0,r.jsx)(r.Fragment,{children:t?.()}):n??null}},32240:function(e,t,n){n.d(t,{Z:()=>c});var r=n("24246"),s=n("27378"),a=n("96700"),o=n("3620");let l="apiTable_e8hp",i=s.forwardRef(function(e,t){let{name:n,children:l}=e,i=function(e){let t=e;for(;(0,s.isValidElement)(t);)[t]=s.Children.toArray(t.props.children);if("string"!=typeof t)throw Error(`Could not extract APITable row name from JSX tree:
${JSON.stringify(e,null,2)}`);return t}(l),c=n?`${n}-${i}`:i,u=`#${c}`,d=(0,o.k6)();return(0,a.Z)().collectAnchor(c),(0,r.jsx)("tr",{id:c,tabIndex:0,ref:d.location.hash===u?t:void 0,onClick:e=>{let t="TD"===e.target.tagName.toUpperCase(),n=!!window.getSelection()?.toString();t&&!n&&d.push(u)},onKeyDown:e=>{"Enter"===e.key&&d.push(u)},children:l.props.children})});function c(e){let{children:t,name:n}=e;if("table"!==t.type)throw Error("Bad usage of APITable component.\nIt is probably that your Markdown table is malformed.\nMake sure to double-check you have the appropriate number of columns for each table row.");let[a,o]=s.Children.toArray(t.props.children),c=(0,s.useRef)(null);(0,s.useEffect)(()=>{c.current?.focus()},[c]);let u=s.Children.map(o.props.children,e=>(0,r.jsx)(i,{name:n,ref:c,children:e}));return(0,r.jsxs)("table",{className:l,children:[a,(0,r.jsx)("tbody",{children:u})]})}},66359:function(e,t,n){n.d(t,{Z:function(){return d}});var r=n(24246);n(27378);var s=n(35363),a=n(90158),o=n(77827),l=n(15398),i=n(58636),c=n(95998);let u=void 0;function d(e){let{code:t,pluginName:n,presetOptionName:d}=e,h=(0,a.zu)(u).path;return(0,r.jsxs)(l.Z,{groupId:"api-config-ex",children:[(0,r.jsxs)(i.Z,{value:"preset",label:(0,o.I)({message:"Preset options"}),children:[(0,r.jsx)("p",{children:(0,r.jsx)(o.Z,{id:"apiDocs.configTabs.presetOptions.description",values:{presetLink:(0,r.jsx)(s.Z,{to:`${h}/using-plugins#docusauruspreset-classic`,children:(0,r.jsx)(o.Z,{children:"preset options"})})},children:"If you use a preset, configure this plugin through the {presetLink}:"})}),(0,r.jsx)(c.Z,{language:"js",title:"docusaurus.config.js",children:`module.exports = {
presets: [
[
'@docusaurus/preset-classic',
{
// highlight-start
${d}: ${t.replace(/\n/g,"\n ")},
// highlight-end
},
],
],
};`})]}),(0,r.jsxs)(i.Z,{value:"plugin",label:(0,o.I)({message:"Plugin options"}),children:[(0,r.jsx)("p",{children:(0,r.jsx)(o.Z,{children:"If you are using a standalone plugin, provide options directly to the plugin:"})}),(0,r.jsx)(c.Z,{language:"js",title:"docusaurus.config.js",children:`module.exports = {
plugins: [
[
'${n}',
// highlight-start
${t.replace(/\n/g,"\n ")},
// highlight-end
],
],
};`})]})]})}},95998:function(e,t,n){n.d(t,{Z:()=>eo});var r,s={};n.r(s),n.d(s,{ButtonExample:()=>L});var a=n("24246"),o=n("27378"),l=n("90496"),i=n("71607"),c=n("10075"),u=n("77827"),d=n("8156"),h=n("56497"),p=n("85108"),m=n("45245"),f=n("26378");function b(){let{prism:e}=(0,f.L)(),{colorMode:t}=(0,m.I)(),n=e.theme,r=e.darkTheme||n;return"dark"===t?r:n}var g=n("67490");let x="playgroundContainer_6Ior",j="playgroundHeader_Tvsk",v="playgroundEditor_TySg",y="playgroundPreview_mApW";function k(e){let{children:t}=e;return(0,a.jsx)("div",{className:(0,l.Z)(j),children:t})}function w(){return(0,a.jsx)("div",{children:"Loading..."})}function B(){return(0,a.jsx)(h.Z,{fallback:(0,a.jsx)(w,{}),children:()=>(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(g.Z,{fallback:e=>(0,a.jsx)(p.Ac,{...e}),children:(0,a.jsx)(c.i5,{})}),(0,a.jsx)(c.IF,{})]})})}function N(){return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(k,{children:(0,a.jsx)(u.Z,{id:"theme.Playground.result",description:"The result label of the live codeblocks",children:"Result"})}),(0,a.jsx)("div",{className:y,children:(0,a.jsx)(B,{})})]})}function C(){let e=(0,i.Z)();return(0,a.jsx)(c.uz,{className:v},String(e))}function E(){return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(k,{children:(0,a.jsx)(u.Z,{id:"theme.Playground.liveEditor",description:"The live editor label of the live codeblocks",children:"Live Editor"})}),(0,a.jsx)(C,{})]})}let Z=e=>`${e};`;function I(e){let{children:t,transformCode:n,...r}=e,{siteConfig:{themeConfig:s}}=(0,d.Z)(),{liveCodeBlock:{playgroundPosition:o}}=s,l=b(),i=r.metastring?.includes("noInline")??!1;return(0,a.jsx)("div",{className:x,children:(0,a.jsx)(c.nu,{code:t?.replace(/\n$/,""),noInline:i,transformCode:n??Z,theme:l,...r,children:"top"===o?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(N,{}),(0,a.jsx)(E,{})]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(E,{}),(0,a.jsx)(N,{})]})})})}function L(e){return(0,a.jsx)("button",{type:"button",...e,style:{backgroundColor:"white",color:"black",border:"solid red",borderRadius:20,padding:10,cursor:"pointer",...e.style}})}let T={React:o,...o,...s};var _=n("55951"),S=n("6324"),A=n.n(S);let $=/title=(?<quote>["'])(?<title>.*?)\1/,O=/\{(?<range>[\d,-]+)\}/,D={js:{start:"\\/\\/",end:""},jsBlock:{start:"\\/\\*",end:"\\*\\/"},jsx:{start:"\\{\\s*\\/\\*",end:"\\*\\/\\s*\\}"},bash:{start:"#",end:""},html:{start:"\x3c!--",end:"--\x3e"}},M={...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:""}},R=Object.keys(D);function V(e,t){let n=e.map(e=>{let{start:n,end:r}=M[e];return`(?:${n}\\s*(${t.flatMap(e=>[e.line,e.block?.start,e.block?.end].filter(Boolean)).join("|")})\\s*${r})`}).join("|");return RegExp(`^\\s*(?:${n})\\s*$`)}let H="codeBlockContainer_jDV4";function W(e){let{as:t,...n}=e,r=function(e){let t={color:"--prism-color",backgroundColor:"--prism-background-color"},n={};return Object.entries(e.plain).forEach(e=>{let[r,s]=e,a=t[r];a&&"string"==typeof s&&(n[a]=s)}),n}(b());return(0,a.jsx)(t,{...n,style:r,className:(0,l.Z)(n.className,H,_.k.common.codeBlock)})}let q={codeBlockContent:"codeBlockContent_vx7S",codeBlockTitle:"codeBlockTitle_bdru",codeBlock:"codeBlock_Gebt",codeBlockStandalone:"codeBlockStandalone_i_cY",codeBlockLines:"codeBlockLines_FJaf",codeBlockLinesWithNumbering:"codeBlockLinesWithNumbering_FU9Q",buttonGroup:"buttonGroup_cUGO"};function F(e){let{children:t,className:n}=e;return(0,a.jsx)(W,{as:"pre",tabIndex:0,className:(0,l.Z)(q.codeBlockStandalone,"thin-scrollbar",n),children:(0,a.jsx)("code",{className:q.codeBlockLines,children:t})})}var P=n("50923");let z={attributes:!0,characterData:!0,childList:!0,subtree:!0};var U=n("7316");let G={codeLine:"codeLine_qRmp",codeLineNumber:"codeLineNumber_dS_J",codeLineContent:"codeLineContent_XF5l"};function Q(e){let{line:t,classNames:n,showLineNumbers:r,getLineProps:s,getTokenProps:o}=e;1===t.length&&"\n"===t[0].content&&(t[0].content="");let i=s({line:t,className:(0,l.Z)(n,r&&G.codeLine)}),c=t.map((e,t)=>(0,a.jsx)("span",{...o({token:e})},t));return(0,a.jsxs)("span",{...i,children:[r?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("span",{className:G.codeLineNumber}),(0,a.jsx)("span",{className:G.codeLineContent,children:c})]}):c,(0,a.jsx)("br",{})]})}var J=n("44771");function X(e){return(0,a.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,a.jsx)("path",{fill:"currentColor",d:"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"})})}function Y(e){return(0,a.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,a.jsx)("path",{fill:"currentColor",d:"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"})})}let K={copyButtonCopied:"copyButtonCopied_OkN_",copyButtonIcons:"copyButtonIcons_OqsO",copyButtonIcon:"copyButtonIcon_PgCn",copyButtonSuccessIcon:"copyButtonSuccessIcon_bsQG"};function ee(e){let{code:t,className:n}=e,[r,s]=(0,o.useState)(!1),i=(0,o.useRef)(void 0),c=(0,o.useCallback)(()=>{(0,J.Z)(t),s(!0),i.current=window.setTimeout(()=>{s(!1)},1e3)},[t]);return(0,o.useEffect)(()=>()=>window.clearTimeout(i.current),[]),(0,a.jsx)("button",{type:"button","aria-label":r?(0,u.I)({id:"theme.CodeBlock.copied",message:"Copied",description:"The copied button label on code blocks"}):(0,u.I)({id:"theme.CodeBlock.copyButtonAriaLabel",message:"Copy code to clipboard",description:"The ARIA label for copy code blocks button"}),title:(0,u.I)({id:"theme.CodeBlock.copy",message:"Copy",description:"The copy button label on code blocks"}),className:(0,l.Z)("clean-btn",n,K.copyButton,r&&K.copyButtonCopied),onClick:c,children:(0,a.jsxs)("span",{className:K.copyButtonIcons,"aria-hidden":"true",children:[(0,a.jsx)(X,{className:K.copyButtonIcon}),(0,a.jsx)(Y,{className:K.copyButtonSuccessIcon})]})})}function et(e){return(0,a.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,a.jsx)("path",{fill:"currentColor",d:"M4 19h6v-2H4v2zM20 5H4v2h16V5zm-3 6H4v2h13.25c1.1 0 2 .9 2 2s-.9 2-2 2H15v-2l-3 3l3 3v-2h2c2.21 0 4-1.79 4-4s-1.79-4-4-4z"})})}let en={wordWrapButtonIcon:"wordWrapButtonIcon_MQXS",wordWrapButtonEnabled:"wordWrapButtonEnabled_TBIH"};function er(e){let{className:t,onClick:n,isEnabled:r}=e,s=(0,u.I)({id:"theme.CodeBlock.wordWrapToggle",message:"Toggle word wrap",description:"The title attribute for toggle word wrapping button of code block lines"});return(0,a.jsx)("button",{type:"button",onClick:n,className:(0,l.Z)("clean-btn",t,r&&en.wordWrapButtonEnabled),"aria-label":s,title:s,children:(0,a.jsx)(et,{className:en.wordWrapButtonIcon,"aria-hidden":"true"})})}function es(e){var t,n,r;let{children:s,className:i="",metastring:c,title:u,showLineNumbers:d,language:h}=e,{prism:{defaultLanguage:p,magicComments:m}}=(0,f.L)();let g=(t=h??function(e){let t=e.split(" ").find(e=>e.startsWith("language-"));return t?.replace(/language-/,"")}(i)??p,t?.toLowerCase()),x=b(),j=function(){let[e,t]=(0,o.useState)(!1),[n,r]=(0,o.useState)(!1),s=(0,o.useRef)(null),a=(0,o.useCallback)(()=>{let n=s.current.querySelector("code");e?n.removeAttribute("style"):(n.style.whiteSpace="pre-wrap",n.style.overflowWrap="anywhere"),t(e=>!e)},[s,e]),l=(0,o.useCallback)(()=>{let{scrollWidth:e,clientWidth:t}=s.current;r(e>t||s.current.querySelector("code").hasAttribute("style"))},[s]);return!function(e,t){let[n,r]=(0,o.useState)(),s=(0,o.useCallback)(()=>{r(e.current?.closest("[role=tabpanel][hidden]"))},[e,r]);(0,o.useEffect)(()=>{s()},[s]),!function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:z,r=(0,P.zX)(t),s=(0,P.Ql)(n);(0,o.useEffect)(()=>{let t=new MutationObserver(r);return e&&t.observe(e,s),()=>t.disconnect()},[e,r,s])}(n,e=>{e.forEach(e=>{"attributes"===e.type&&"hidden"===e.attributeName&&(t(),s())})},{attributes:!0,characterData:!1,childList:!1,subtree:!1})}(s,l),(0,o.useEffect)(()=>{l()},[e,l]),(0,o.useEffect)(()=>(window.addEventListener("resize",l,{passive:!0}),()=>{window.removeEventListener("resize",l)}),[l]),{codeBlockRef:s,isEnabled:e,isCodeScrollable:n,toggle:a}}();let v=(n=c,(n?.match($)?.groups.title??"")||u),{lineClassNames:y,code:k}=function(e,t){let n=e.replace(/\n$/,""),{language:r,magicComments:s,metastring:a}=t;if(a&&O.test(a)){let e=a.match(O).groups.range;if(0===s.length)throw Error(`A highlight range has been given in code block's metastring (\`\`\` ${a}), but no magic comment config is available. Docusaurus applies the first magic comment entry's className for metastring ranges.`);let t=s[0].className;return{lineClassNames:Object.fromEntries(A()(e).filter(e=>e>0).map(e=>[e-1,[t]])),code:n}}if(void 0===r)return{lineClassNames:{},code:n};let o=function(e,t){switch(e){case"js":case"javascript":case"ts":case"typescript":return V(["js","jsBlock"],t);case"jsx":case"tsx":return V(["js","jsBlock","jsx"],t);case"html":return V(["js","jsBlock","html"],t);case"python":case"py":case"bash":return V(["bash"],t);case"markdown":case"md":return V(["html","jsx","bash"],t);case"tex":case"latex":case"matlab":return V(["tex"],t);case"lua":case"haskell":case"sql":return V(["lua"],t);case"wasm":return V(["wasm"],t);case"vb":case"vba":case"visual-basic":return V(["vb","rem"],t);case"vbnet":return V(["vbnet","rem"],t);case"batch":return V(["rem"],t);case"basic":return V(["rem","f90"],t);case"fsharp":return V(["js","ml"],t);case"ocaml":case"sml":return V(["ml"],t);case"fortran":return V(["f90"],t);case"cobol":return V(["cobol"],t);default:return V(R,t)}}(r,s),l=n.split("\n"),i=Object.fromEntries(s.map(e=>[e.className,{start:0,range:""}])),c=Object.fromEntries(s.filter(e=>e.line).map(e=>{let{className:t,line:n}=e;return[n,t]})),u=Object.fromEntries(s.filter(e=>e.block).map(e=>{let{className:t,block:n}=e;return[n.start,t]})),d=Object.fromEntries(s.filter(e=>e.block).map(e=>{let{className:t,block:n}=e;return[n.end,t]}));for(let e=0;e<l.length;){let t=l[e].match(o);if(!t){e+=1;continue}let n=t.slice(1).find(e=>void 0!==e);c[n]?i[c[n]].range+=`${e},`:u[n]?i[u[n]].start=e:d[n]&&(i[d[n]].range+=`${i[d[n]].start}-${e-1},`),l.splice(e,1)}n=l.join("\n");let h={};return Object.entries(i).forEach(e=>{let[t,{range:n}]=e;A()(n).forEach(e=>{h[e]??=[],h[e].push(t)})}),{lineClassNames:h,code:n}}(s,{metastring:c,language:g,magicComments:m});let w=d??(r=c,!!r?.includes("showLineNumbers"));return(0,a.jsxs)(W,{as:"div",className:(0,l.Z)(i,g&&!i.includes(`language-${g}`)&&`language-${g}`),children:[v&&(0,a.jsx)("div",{className:q.codeBlockTitle,children:v}),(0,a.jsxs)("div",{className:q.codeBlockContent,children:[(0,a.jsx)(U.y$,{theme:x,code:k,language:g??"text",children:e=>{let{className:t,style:n,tokens:r,getLineProps:s,getTokenProps:o}=e;return(0,a.jsx)("pre",{tabIndex:0,ref:j.codeBlockRef,className:(0,l.Z)(t,q.codeBlock,"thin-scrollbar"),style:n,children:(0,a.jsx)("code",{className:(0,l.Z)(q.codeBlockLines,w&&q.codeBlockLinesWithNumbering),children:r.map((e,t)=>(0,a.jsx)(Q,{line:e,getLineProps:s,getTokenProps:o,classNames:y[t],showLineNumbers:w},t))})})}}),(0,a.jsxs)("div",{className:q.buttonGroup,children:[(j.isEnabled||j.isCodeScrollable)&&(0,a.jsx)(er,{className:q.codeButton,onClick:()=>j.toggle(),isEnabled:j.isEnabled}),(0,a.jsx)(ee,{className:q.codeButton,code:k})]})]})]})}let ea=(r=function(e){var t;let{children:n,...r}=e,s=(0,i.Z)();let l=(t=n,o.Children.toArray(t).some(e=>(0,o.isValidElement)(e))?t:Array.isArray(t)?t.join(""):t),c="string"==typeof l?es:F;return(0,a.jsx)(c,{...r,children:l},String(s))},function(e){return e.live?(0,a.jsx)(I,{scope:T,...e}):(0,a.jsx)(r,{...e})});function eo(e){return(0,a.jsx)(ea,{...e})}}}]);