1"use strict";(self.webpackChunkblog=self.webpackChunkblog||[]).push([[2138],{550:(e,t,r)=>{r.r(t),r.d(t,{default:()=>N});var s=r(6672),a=r(4169),n=r(9016),l=r(6563),c=r(7165),o=r(6972),u=r(916),i=r(3526),h=r(5291),d=r(5716),m=r(5012);const g=function(){const e=(0,d.A)(),t=(0,h.W6)(),r=(0,h.zy)(),{siteConfig:{baseUrl:s}}=(0,a.A)(),n=e?new URLSearchParams(r.search):null,l=n?.get("q")||"",c=n?.get("ctx")||"",o=n?.get("version")||"",u=e=>{const t=new URLSearchParams(r.search);return e?t.set("q",e):t.delete("q"),t};return{searchValue:l,searchContext:c&&Array.isArray(m.Hg)&&m.Hg.some((e=>"string"==typeof e?e===c:e.path===c))?c:"",searchVersion:o,updateSearchPath:e=>{const r=u(e);t.replace({search:r.toString()})},updateSearchContext:e=>{const s=new URLSearchParams(r.search);s.set("ctx",e),t.replace({search:s.toString()})},generateSearchPageLink:e=>{const t=u(e);return`${s}search?${t.toString()}`}}};var p=r(5530),f=r(9644),x=r(7238),y=r(873),j=r(949),S=r(4503),w=r(605);const v="searchContextInput_oV_a",A="searchQueryInput_jIOd",C="searchResultItem_ENqx",b="searchResultItemPath_r7wM",P="searchResultItemSummary_xvOX",_="searchQueryColumn__LHM",R="searchContextColumn_ydSa";var T=r(4688),$=r(3420);function F(){const{siteConfig:{baseUrl:e},i18n:{currentLocale:t}}=(0,a.A)(),{selectMessage:r}=(0,u.W)(),{searchValue:n,searchContext:c,searchVersion:h,updateSearchPath:d,updateSearchContext:f}=g(),[x,y]=(0,s.useState)(n),[j,w]=(0,s.useState)(),C=`${e}${h}`,b=(0,s.useMemo)((()=>x?(0,o.T)({id:"theme.SearchPage.existingResultsTitle",message:'Search results for "{query}"',description:"The search page title for non-empty query"},{query:x}):(0,o.T)({id:"theme.SearchPage.emptyResultsTitle",message:"Search the documentation",description:"The search page title for empty query"})),[x]);(0,s.useEffect)((()=>{d(x),x?(async()=>{const e=await(0,p.w)(C,c,x,100);w(e)})():w(void 0)}),[x,C,c]);const P=(0,s.useCallback)((e=>{y(e.target.value)}),[]);(0,s.useEffect)((()=>{n&&n!==x&&y(n)}),[n]);const[F,N]=(0,s.useState)(!1);return(0,s.useEffect)((()=>{!async function(){(!Array.isArray(m.Hg)||c||m.dz)&&await(0,p.k)(C,c),N(!0)}()}),[c,C]),(0,$.jsxs)(s.Fragment,{children:[(0,$.jsxs)(l.A,{children:[(0,$.jsx)("meta",{property:"robots",content:"noindex, follow"}),(0,$.jsx)("title",{children:b})]}),(0,$.jsxs)("div",{className:"container margin-vert--lg",children:[(0,$.jsx)("h1",{children:b}),(0,$.jsxs)("div",{className:"row",children:[(0,$.jsx)("div",{className:(0,i.A)("col",{[_]:Array.isArray(m.Hg),"col--9":Array.isArray(m.Hg),"col--12":!Array.isArray(m.Hg)}),children:(0,$.jsx)("input",{type:"search",name:"q",className:A,"aria-label":"Search",onChange:P,value:x,autoComplete:"off",autoFocus:!0})}),Array.isArray(m.Hg)?(0,$.jsx)("div",{className:(0,i.A)("col","col--3","padding-left--none",R),children:(0,$.jsxs)("select",{name:"search-context",className:v,id:"context-selector",value:c,onChange:e=>f(e.target.value),children:[m.dz&&(0,$.jsx)("option",{value:"",children:(0,o.T)({id:"theme.SearchPage.searchContext.everywhere",message:"Everywhere"})}),m.Hg.map((e=>{const{label:r,path:s}=(0,T.p)(e,t);return(0,$.jsx)("option",{value:s,children:r},s)}))]})}):null]}),!F&&x&&(0,$.jsx)("div",{children:(0,$.jsx)(S.A,{})}),j&&(j.length>0?(0,$.jsx)("p",{children:r(j.length,(0,o.T)({id:"theme.SearchPage.documentsFound.plurals",message:"1 document found|{count} documents found",description:'Pluralized label for "{count} documents found". Use as much plural forms (separated by "|") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)'},{count:j.length}))}):(0,$.jsx)("p",{children:(0,o.T)({id:"theme.SearchPage.noResultsText",message:"No documents were found",description:"The paragraph for empty search result"})})),(0,$.jsx)("section",{children:j&&j.map((e=>(0,$.jsx)(H,{searchResult:e},e.document.i)))})]})]})}function H({searchResult:{document:e,type:t,page:r,tokens:s,metadata:a}}){const n=t===f.i.Title,l=t===f.i.Keywords,o=t===f.i.Description,u=o||l,i=n||u,h=t===f.i.Content,d=(n?e.b:r.b).slice(),g=h||u?e.s:e.t;i||d.push(r.t);let p="";if(m.CU&&s.length>0){const e=new URLSearchParams;for(const t of s)e.append("_highlight",t);p=`?${e.toString()}`}return(0,$.jsxs)("article",{className:C,children:[(0,$.jsx)("h2",{children:(0,$.jsx)(c.A,{to:e.u+p+(e.h||""),dangerouslySetInnerHTML:{__html:h||u?(0,x.Z)(g,s):(0,y.C)(g,(0,j.g)(a,"t"),s,100)}})}),d.length>0&&(0,$.jsx)("p",{className:b,children:(0,w.$)(d)}),(h||o)&&(0,$.jsx)("p",{className:P,dangerouslySetInnerHTML:{__html:(0,y.C)(e.t,(0,j.g)(a,"t"),s,100)}})]})}const N=function(){return(0,$.jsx)(n.A,{children:(0,$.jsx)(F,{})})}},916:(e,t,r)=>{r.d(t,{W:()=>u});
1var s=r(6672),a=r(4169);const n=["zero","one","two","few","many","other"];function l(e){return n.filter((t=>e.includes(t)))}const c={locale:"en",pluralForms:l(["one","other"]),select:e=>1===e?"one":"other"};function o(){const{i18n:{currentLocale:e}}=(0,a.A)();return(0,s.useMemo)((()=>{try{return function(e){const t=new Intl.PluralRules(e);return{locale:e,pluralForms:l(t.resolvedOptions().pluralCategories),select:e=>t.select(e)}}(e)}catch(t){return console.error(`Failed to use Intl.PluralRules for locale "${e}".\nDocusaurus will fallback to the default (English) implementation.\nError: ${t.message}\n`),c}}),[e])}function u(){const e=o();return{selectMessage:(t,r)=>function(e,t,r){const s=e.split("|");if(1===s.length)return s[0];s.length>r.pluralForms.length&&console.error(`For locale=${r.locale}, a maximum of ${r.pluralForms.length} plural forms are expected (${r.pluralForms.join(",")}), but the message contains ${s.length}: ${e}`);const a=r.select(t),n=r.pluralForms.indexOf(a);return s[Math.min(n,s.length-1)]}(r,t,e)}}}}]);
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.