1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5177],{2479:(e,t,r)=>{r.d(t,{_:()=>u});var n=r(14232),l=r(12303);function u(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:l.D0,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:l.D0;(0,n.useEffect)(()=>{let n=n=>{if(!n)return;let l=document.getElementById(n);if(l){let n=e?t:r,u=l.offsetTop-n;window.scrollTo({top:u,behavior:"smooth"})}},l=()=>{window.location.hash&&n(window.location.hash.slice(1))};if("complete"!==document.readyState)return window.addEventListener("load",l),()=>{window.removeEventListener("load",l)};l()},[e,t,r])}},31424:(e,t,r)=>{r.d(t,{A:()=>a});var n=r(14232);function l(e,t=0,r={}){let n;"object"!=typeof r&&(r={});let{leading:u=!1,trailing:i=!0,maxWait:c}=r,o=[,,];u&&(o[0]="leading"),i&&(o[1]="trailing");let a=null,s=function(e,t,{signal:r,edges:n}={}){let l,u=null,i=null!=n&&n.includes("leading"),c=null==n||n.includes("trailing"),o=()=>{null!==u&&(e.apply(l,u),l=void 0,u=null)},a=()=>{c&&o(),f()},s=null,d=()=>{null!=s&&clearTimeout(s),s=setTimeout(()=>{s=null,a()},t)},h=()=>{null!==s&&(clearTimeout(s),s=null)},f=()=>{h(),l=void 0,u=null},g=function(...e){if(r?.aborted)return;l=this,u=e;let t=null==s;d(),i&&t&&o()};return g.schedule=d,g.cancel=f,g.flush=()=>{o()},r?.addEventListener("abort",f,{once:!0}),g}(function(...t){n=e.apply(this,t),a=null},t,{edges:o}),d=function(...t){return null!=c&&(null===a&&(a=Date.now()),Date.now()-a>=c)?(n=e.apply(this,t),a=Date.now(),s.cancel(),s.schedule()):s.apply(this,t),n};return d.cancel=s.cancel,d.flush=()=>(s.flush(),n),d}let u=(e,t,r,n)=>{switch(t){case"debounce":return l(e,r,n);case"throttle":return function(e,t=0,r={}){let{leading:n=!0,trailing:u=!0}=r;return l(e,t,{leading:n,maxWait:t,trailing:u})}(e,r,n);default:return e}},i=e=>{let t=n.useRef(e);return n.useEffect(()=>{t.current=e}),n.useMemo(()=>(...e)=>{var r;return null===(r=t.current)||void 0===r?void 0:r.call(t,...e)},[])},c=e=>{let[t,r]=n.useState((null==e?void 0:e.current)||null);return e&&setTimeout(()=>{e.current!==t&&r(e.current)},0),{refProxy:n.useMemo(()=>new Proxy(e=>{e!==t&&r(e)},{get:(e,r)=>"current"===r?t:e[r],set:(e,t,n)=>("current"===t?r(n):e[t]=n,!0)}),[t]),refElement:t,setRefElement:r}},o=(e,t)=>{var r,n;let l=null===(r=e.borderBoxSize)||void 0===r?void 0:r[0],u=null===(n=e.contentBoxSize)||void 0===n?void 0:n[0];return"border-box"===t&&l?{width:l.inlineSize,height:l.blockSize}:"content-box"===t&&u?{width:u.inlineSize,height:u.blockSize}:{width:e.contentRect.width,height:e.contentRect.height}};function a({skipOnMount:e=!1,refreshMode:t,refreshRate:r=1e3,refreshOptions:l,handleWidth:s=!0,handleHeight:d=!0,targetRef:h,observerOptions:f,onResize:g,disableRerender:v=!1}={}){let p=(0,n.useRef)(e),w=i(g),[b,m]=(0,n.useState)({width:void 0,height:void 0}),E=(0,n.useRef)({width:void 0,height:void 0}),{refProxy:S,refElement:k}=c(h),{box:y}=f||{},_=(0,n.useCallback)(e=>{if(!s&&!d)return;if(p.current){p.current=!1;return}let t=(e,t)=>s&&e.width!==t.width||d&&e.height!==t.height;e.forEach(e=>{let r=o(e,y);v?t(E.current,r)&&(E.current.width=r.width,E.current.height=r.height,null==w||w({width:r.width,height:r.height,entry:e})):m(n=>t(n,r)?(null==w||w({width:r.width,height:r.height,entry:e}),r):n)})},[s,d,p,y,v]),x=(0,n.useCallback)(u(_,t,r,l),[_,t,r,l]);return(0,n.useEffect)(()=>{let e;if(k)try{(e=new window.ResizeObserver(x)).observe(k,f)}catch(e){console.warn("ResizeObserver not supported or failed to initialize:",e)}else(b.width||b.height)&&(null==w||w({width:null,height:null,entry:null}),E.current.width=void 0,E.current.height=void 0,v||m({width:void 0,height:void 0}));return()=>{var t,r;null===(t=null==e?void 0:e.disconnect)||void 0===t||t.call(e),null===(r=x.cancel)||void 0===r||r.call(x)}},[x,k]),Object.assign({ref:S},v?E.current:b)}},35177:(e,t,r)=>{r.d(t,{K:()=>p,m:()=>w});var n=r(48590),l=r(91314),u=r(14232),i=r(39225),c=r(2479),o=r(93533),a=r(80501);let s=e=>{let{chapters:t,currentArticleSlug:r,previousLabel:n,nextLabel:l}=e;for(let e=0;e<t.length;e++){let u=t[e].resource_articles;for(let i=0;i<u.length;i++)if(u[i].slug===r){let r=t[e-1],c=t[e+1],o=u[i-1],a=u[i+1];return{previous:o?{slug:o.slug,title:o.title,label:n}:r?{title:r.title,slug:r.resource_articles.slice(-1)[0].slug,label:n}:void 0,next:a?{slug:a.slug,title:a.title,label:l}:c?{title:c.title,slug:c.resource_articles[0].slug,label:l}:void 0}}}throw Error("could not find navigation for resource page article ".concat(r,".\n Did
1you forget to put it into a resource chapter?"))},d=e=>e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,""),h=e=>{let t="",r=e.nextElementSibling;for(;r&&"H1"!==r.tagName;)t+=r.outerHTML,r=r.nextElementSibling;return t},f=e=>{let t=[],r=e.previousElementSibling;for(;r;)t.unshift(r.outerHTML),r=r.previousElementSibling;return t.join("")},g=e=>{let t=e.match(/<ol\b[^>]*>[\s\S]*?<\/ol>/);if(!t)return e.replace(/<a\b[^>]*>/g,e=>e.includes('target="_blank"')?e:e.replace(">",' target="_blank">'));let r="",n=t[0];return e.replace(n,"TABLE_OF_CONTENT").replace(/<a\b[^>]*>/g,e=>e.includes('target="_blank"')?e:e.replace(">",' target="_blank">')).replace("TABLE_OF_CONTENT",n)},v=e=>{let t,r=g(e),n=new DOMParser().parseFromString(r,"text/html").querySelectorAll("h1"),l=[];return n.forEach((e,r)=>{0===r&&(t=f(e));let n=e.textContent,u={title:n,content:h(e),slug:d(n)};l.push(u)}),{articleSections:l,articleIntro:t}},p=e=>e.filter(e=>e.resource_articles.length>0),w=e=>{var t,r;let{locale:h,content:f,slug:g,resourceChapters:w,previous_button_label:b,next_button_label:m}=e,E=(0,l.u)(),[S,k]=(0,u.useState)(w),[y,_]=(0,u.useState)(),[x,T]=(0,u.useState)(""),{articleSections:R,articleIntro:D}=(0,u.useMemo)(()=>v(f),[f]),[C,L]=(0,u.useState)(null!==(r=null===(t=R[0])||void 0===t?void 0:t.slug)&&void 0!==r?r:""),{previous:A,next:M}=s({chapters:p(w),currentArticleSlug:g,previousLabel:b,nextLabel:m});(0,n.I)(a.Z9,{variables:{locale:h,searchText:x},onCompleted:e=>{k(p(e.resourceChapters))},client:o.A});let z=function(e,t,r){var n=this,l=(0,u.useRef)(null),i=(0,u.useRef)(0),c=(0,u.useRef)(null),o=(0,u.useRef)([]),a=(0,u.useRef)(),s=(0,u.useRef)(),d=(0,u.useRef)(e),h=(0,u.useRef)(!0);(0,u.useEffect)(function(){d.current=e},[e]);var f=!t&&0!==t&&"undefined"!=typeof window;if("function"!=typeof e)throw TypeError("Expected a function");t=+t||0;var g=!!(r=r||{}).leading,v=!("trailing"in r)||!!r.trailing,p="maxWait"in r,w=p?Math.max(+r.maxWait||0,t):null;return(0,u.useEffect)(function(){return h.current=!0,function(){h.current=!1}},[]),(0,u.useMemo)(function(){var e=function(e){var t=o.current,r=a.current;return o.current=a.current=null,i.current=e,s.current=d.current.apply(r,t)},r=function(e,t){f&&cancelAnimationFrame(c.current),c.current=f?requestAnimationFrame(e):setTimeout(e,t)},u=function(e){if(!h.current)return!1;var r=e-l.current;return!l.current||r>=t||r<0||p&&e-i.current>=w},b=function(t){return c.current=null,v&&o.current?e(t):(o.current=a.current=null,s.current)},m=function e(){var n=Date.now();if(u(n))return b(n);if(h.current){var c=t-(n-l.current);r(e,p?Math.min(c,w-(n-i.current)):c)}},E=function(){var d=Date.now(),f=u(d);if(o.current=[].slice.call(arguments),a.current=n,l.current=d,f){if(!c.current&&h.current)return i.current=l.current,r(m,t),g?e(l.current):s.current;if(p)return r(m,t),e(l.current)}return c.current||r(m,t),s.current};return E.cancel=function(){c.current&&(f?cancelAnimationFrame(c.current):clearTimeout(c.current)),i.current=0,o.current=l.current=a.current=c.current=null},E.isPending=function(){return!!c.current},E.flush=function(){return c.current?b(Date.now()):s.current},E},[g,p,t,w,v,f])}(T,500),O=(0,u.useCallback)(e=>{z(e)},[z]),F=(0,i.G)();return(0,c._)(F,-340,-260),(0,u.useEffect)(()=>{let e=()=>{let e=document.querySelectorAll(".article-section-heading"),t=window.outerWidth<parseFloat(E.breakpointDesktopHd),r=t?200:100,n=t?80:40;e.forEach(e=>{let t=e.getBoundingClientRect();t.top>=n&&t.top<=r&&L(d(e.textContent))})};return window.addEventListener("scroll",e),()=>{window.removeEventListener("scroll",e)}},[E.breakpointDesktopHd]),{chapters:S,expandedChapter:y,setExpandedChapter:_,scrolledToSectionSlug:C,articleSections:R,articleIntro:D,previous:A,next:M,onSearchHandler:O}}},39225:(e,t,r)=>{r.d(t,{G:()=>i});var n=r(91314),l=r(14232),u=r(31424);function i(){let e=(0,n.u)(),[t,r]=(0,l.useState)({current:null});(0,l.useEffect)(()=>{r({current:document.body})},[]);let{width:i}=(0,u.A)({targetRef:t});return(0,l.useMemo)(()=>i>=parseInt(e.breakpointDesktop),[e.breakpointDesktop,i])}}}]);
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.