PageSourceSearch

https://aetherlink.app/_next/static/chunks/3664z8il6o9_4.js

js aetherlink.app collected 2026-09-24 10:23:02 UTC 22,741 bytes, 8 lines download raw bytes

1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,867057,650520,e=>{"use strict";var t=e.i(843476),r=e.i(500932),a=e.i(24875),n=e.i(300306);let i=e=>{let t,r,a=(t=e.trim()||"traveler",(r=n.ANNOUNCEMENT_MEDIA_BACKGROUNDS.map(e=>e.value))[(e=>{let t=0;for(let r=0;r<e.length;r++)t=e.charCodeAt(r)+((t<<5)-t);return Math.abs(t)})(t)%r.length]??n.DEFAULT_MEDIA_BACKGROUND);return{variant:a,...(0,n.announcementMediaBackgroundProps)(a)}};e.s(["profileBannerBackgroundProps",0,i,"profileBannerSeed",0,(e,t,r="traveler")=>{let a=e?.sid?.trim()||t?.sid?.trim();if(a)return a;let n=e?.handle?.trim();return n||r}],650520),e.i(393475);var o=e.i(128769);e.s(["ProfileBannerFallback",0,e=>{let n,l,s,u,d=(0,r.c)(9),{seed:c,className:f}=e;d[0]!==c?(n=i(c),d[0]=c,d[1]=n):n=d[1];let p=n;return d[2]!==f?(l=(0,o.cn)("absolute inset-0 overflow-hidden bg-background",f),d[2]=f,d[3]=l):l=d[3],d[4]!==p?(s=(0,t.jsx)(a.ShaderBackground,{className:"absolute inset-0",...p}),d[4]=p,d[5]=s):s=d[5],d[6]!==l||d[7]!==s?(u=(0,t.jsx)("div",{"aria-hidden":!0,className:l,children:s}),d[6]=l,d[7]=s,d[8]=u):u=d[8],u}],867057)},551343,e=>{"use strict";var t=e.i(843476),r=e.i(271645),a=e.i(649980),n=e.i(401186);let i=e=>{let t=e.metadata?.id;return"string"==typeof t&&t.trim()?t.trim():null},o=(0,r.createContext)(null),l="aetherlink-history",s="history",u=e=>{let t=new Date,r=new Date(t.getFullYear(),t.getMonth(),t.getDate()),a=new Date(r);a.setDate(a.getDate()-1);let n=new Date(e.getFullYear(),e.getMonth(),e.getDate());return n.getTime()===r.getTime()?"Today":n.getTime()===a.getTime()?"Yesterday":7>=Math.ceil(Math.abs(r.getTime()-n.getTime())/864e5)?n.toLocaleDateString("en-US",{weekday:"long"}):n.getFullYear()===t.getFullYear()?n.toLocaleDateString("en-US",{month:"long",day:"numeric"}):n.toLocaleDateString("en-US",{month:"long",year:"numeric"})},d=(e,t,r)=>{let a=1===r?t:`${t}s`;return`${({visit:"Viewed",download:"Downloaded",follow:"Followed",saved:"Saved"})[e]} ${r} ${a}`};e.s(["HistoryProvider",0,({children:e})=>{let[i,u]=(0,a.useImmer)({entries:[],paused:!1,isLoading:!0,error:null}),d=(0,r.useRef)(new Map),c=(0,r.useRef)(!1);c.current=i.paused;let f=(0,r.useCallback)(e=>{try{let t=e.transaction(s,"readonly").objectStore(s).index("timestamp"),r=[],a=t.openCursor(null,"prev");a.onsuccess=()=>{let e=a.result;e?(r.push(e.value),e.continue()):u(e=>{e.entries=r,e.isLoading=!1})},a.onerror=()=>{u(e=>{e.error="Failed to load history entries",e.isLoading=!1})}}catch{u(e=>{e.error="Failed to load history entries",e.isLoading=!1})}},[u]);(0,r.useEffect)(()=>{let e="true"===(0,n.readLocalStorageMigrating)("history-paused","aetherlink:history-paused");u(t=>{t.paused=e});let t=indexedDB.open(l,1);t.onupgradeneeded=e=>{let t=e.target.result;if(!t.objectStoreNames.contains(s)){let e=t.createObjectStore(s,{keyPath:"id"});e.createIndex("timestamp","timestamp",{unique:!1}),e.createIndex("type","type",{unique:!1}),e.createIndex("action","action",{unique:!1})}},t.onsuccess=e=>{f(e.target.result)},t.onerror=()=>{u(e=>{e.error="Failed to open history database",e.isLoading=!1})}},[u,f]);let p=(0,r.useCallback)(()=>new Promise((e,t)=>{let r=indexedDB.open(l,1);r.onsuccess=()=>e(r.result),r.onerror=()=>t(r.error)}),[]),m=(0,r.useCallback)(async()=>{try{let e=(await p()).transaction(s,"readonly").objectStore(s).index("timestamp");return new Promise((t,r)=>{let a=e.openCursor(null,"prev");a.onsuccess=()=>{let e=a.result;e?t(e.value):t(null)},a.onerror=()=>r(a.error)})}catch{return null}},[p]),y=(0,r.useCallback)(async e=>{let t;if(c.current)return;let r="string"==typeof(t=e.metadata?.id)&&t.trim()?`${e.type}:${e.action}:${t.trim()}`:`${e.type}:${e.action}:${e.title}:${e.author}`,a=async()=>{try{let t,r,a=await m();if(a&&(t="string"==typeof e.metadata?.id?e.metadata.id:void 0,r="string"==typeof a.metadata?.id?a.metadata.id:void 0,t&&r&&t===r&&a.action===e.action&&a.type===e.type||a.type===e.type&&a.action===e.action&&a.title===e.title&&a.author===e.author)){let t=(await p()).transaction(s,"readwrite"),r=t.objectStore(s),n={...a,title:e.title,author:e.author,thumbnail:e.thumbnail,metadata:e.metadata??a.metadata,timestamp:Date.now()};r.put(n),await new Promise((e,r)=>{t.oncomplete=()=>{u(e=>{let t=e.entries.findIndex(e=>e.id===a.id);-1!==t?e.entries[t]=n:e.entries.unshift(n),e.entries.sort((e,t)=>
1t.timestamp-e.timestamp)}),e()},t.onerror=()=>r(t.error),t.onabort=()=>r(t.error??Error("History update aborted"))});return}let n=(await p()).transaction(s,"readwrite"),i=n.objectStore(s),o={...e,id:crypto.randomUUID(),timestamp:Date.now()};i.add(o),await new Promise((e,t)=>{n.oncomplete=()=>{u(e=>{e.entries.unshift(o),e.entries.sort((e,t)=>t.timestamp-e.timestamp)}),e()},n.onerror=()=>t(n.error),n.onabort=()=>t(n.error??Error("History add aborted"))})}catch{}},n=d.current.get(r),i=n?n.then(a,a):a();d.current.set(r,i);try{await i}finally{d.current.get(r)===i&&d.current.delete(r)}},[u,p,m]),g=(0,r.useCallback)(async e=>{try{(await p()).transaction(s,"readwrite").objectStore(s).delete(e).onsuccess=()=>{u(t=>{t.entries=t.entries.filter(t=>t.id!==e)})}}catch{}},[u,p]),h=(0,r.useCallback)(async()=>{try{(await p()).transaction(s,"readwrite").objectStore(s).clear().onsuccess=()=>{u(e=>{e.entries=[]})}}catch{}},[u,p]),b=(0,r.useCallback)(()=>{let e=!i.paused;(0,n.writeLocalStorageMigrating)("history-paused",String(e),"aetherlink:history-paused"),u(t=>{t.paused=e})},[i.paused,u]),w=(0,r.useMemo)(()=>({entries:i.entries,paused:i.paused,isLoading:i.isLoading,error:i.error,addEntry:y,removeEntry:g,clearAll:h,togglePause:b}),[i.entries,i.paused,i.isLoading,i.error,y,g,h,b]);return(0,t.jsx)(o.Provider,{value:w,children:e})},"groupHistoryEntries",0,e=>{if(0===e.length)return[];let t=new Map;for(let r of e){let e=u(new Date(r.timestamp)),a=t.get(e);a?a.push(r):t.set(e,[r])}let r=[];for(let[e,a]of t){let t=new Map;for(let e of a){let r=`${e.action}-${e.type}`,a=t.get(r);a?a.push(e):t.set(r,[e])}let n=Array.from(t.entries()).map(([e,t])=>{let[r,a]=e.split("-");return{action:r,type:a,items:t,summary:d(r,a,t.length)}});r.push({dateLabel:e,date:new Date(a[0].timestamp),items:n})}return r.sort((e,t)=>t.date.getTime()-e.date.getTime()),r},"historyEntryHref",0,e=>{let t=i(e);if(!t)return null;switch(e.type){case"mod":return`/mods/${t}`;case"guide":return`/guides/${t}`;case"catalog":return`/catalogs/${t}`;case"collection":return`/feed/collections/${t}`;case"user":return`/u/${t}`;default:return null}},"historyEntryTargetId",0,i,"useHistory",0,()=>{let e=(0,r.useContext)(o);if(!e)throw Error("useHistory must be used within HistoryProvider");return e}])},742446,e=>{"use strict";e.s(["profileHref",0,e=>`/u/${e.patreonPaying&&e.handle?e.handle:e.sid}`])},666767,e=>{"use strict";var t=e.i(247167);let r=(e,r)=>{let a,n=(a=t.default.env.NEXT_PUBLIC_CDN_PREFIX?.trim()??"").startsWith("/")?a.slice(1):a;return n?`${n}/${e}/${r}`:`${e}/${r}`},a=(e,t,a)=>{let n=e?.sid||t?.sid;if(n){let t=r(n,"avatar.png"),i=a??e?.updatedAt;return i?`https://cdn.aetherlink.app/${t}?t=${i}`:`https://cdn.aetherlink.app/${t}`}return null};e.s(["getAvatarUrl",0,a,"getAvatarUrlForSid",0,(e,t)=>{let r="string"==typeof e?e.trim():"";return r?a({sid:r,updatedAt:t},{sid:r},t):null},"getBannerUrl",0,(e,t,a)=>{if(e?.hasBanner===!1)return null;let n=e?.sid||t?.sid;if(n){let t=r(n,"banner.png"),i=a??e?.updatedAt;return i?`https://cdn.aetherlink.app/${t}?t=${i}`:`https://cdn.aetherlink.app/${t}`}return null}])},143964,e=>{"use strict";var t=class extends Error{type;constructor({type:e,message:t}){super(t),this.type=e,this.message=t}},r=e.i(271645);async function a(e,{retry:t=0,delay:r=0,signal:n,abortHandler:i}={}){let o=t+1;for(let t=0;t<o;t++){if(t>0&&(n?.aborted||r&&(await new Promise(e=>{let t=setTimeout(()=>{n?.removeEventListener("abort",a),e(void 0)},r),a=()=>{clearTimeout(t),n?.removeEventListener("abort",a),e(void 0)};n?.addEventListener("abort",a)}),n?.aborted)))throw i?.(),Error("Retries aborted.");try{return await e()}catch(e){if(t===o-1)throw e}}throw Error("Unreachable Better Upload code.")}async function n(e){let t=new XMLHttpRequest;await a(()=>new Promise((r,a)=>{let n=o(t,a);e.signal?.aborted&&n(),e.signal?.addEventListener("abort",n),t.onloadend=()=>{e.signal?.removeEventListener("abort",n),4===t.readyState&&t.status>=200&&t.status<300?(e.onProgress?.(1),r()):a(Error("Failed to upload file to S3."))},t.upload.onprogress=t=>{t.lengthComputable&&e.onProgress?.(Math.min(t.loaded/t.total,.99))},t.open("PUT",e.signedUrl,!0),t.setRequestHeader("Content-Type",e.file.type),e.objectCacheControl&&t.setRequestHeader("C
1ache-Control",e.objectCacheControl),Object.entries(e.objectMetadata).forEach(([e,r])=>{t.setRequestHeader(`x-amz-meta-${e}`,r)}),Object.entries(e.headers).forEach(([e,r])=>{t.setRequestHeader(e,r)}),t.send(e.file)}),{retry:e.retry,delay:e.retryDelay,signal:e.signal,abortHandler:()=>{throw t.abort(),Error("Upload aborted.")}})}async function i(e){let t=[],r={},n=e.parts.map(n=>async()=>{let i=new XMLHttpRequest,l=(n.partNumber-1)*e.partSize,s=Math.min(l+n.size,e.file.size),u=e.file.slice(l,s);await a(()=>new Promise((a,l)=>{let s=o(i,l);e.signal?.aborted&&s(),e.signal?.addEventListener("abort",s),i.onloadend=()=>{e.signal?.removeEventListener("abort",s),4===i.readyState&&i.status>=200&&i.status<300?(t.push({etag:i.getResponseHeader("ETag").replace(/"/g,""),number:n.partNumber}),a()):l(Error("Failed to upload part to S3."))},i.upload.onprogress=t=>{if(t.lengthComputable){r[n.partNumber]=t.loaded/t.total;let a=Object.values(r).reduce((e,t)=>e+t,0)/e.parts.length;e.onProgress?.(Math.min(a,.99))}},i.open("PUT",n.signedUrl,!0),i.send(u)}),{retry:e.retry,delay:e.retryDelay,signal:e.signal,abortHandler:()=>{throw i.abort(),Error("Upload aborted.")}})}),i=e.partsBatchSize||n.length;for(let e=0;e<n.length;e+=i)await Promise.all(n.slice(e,e+i).map(e=>e()));let l=`
2<CompleteMultipartUpload>
3  ${t.sort((e,t)=>e.number-t.number).map(e=>`<Part>
4    <ETag>${e.etag}</ETag>
5    <PartNumber>${e.number}</PartNumber>
6  </Part>`).join("")}
7</CompleteMultipartUpload>
8  `;if(!(await a(()=>fetch(e.completeSignedUrl,{method:"POST",body:l,headers:{"Content-Type":"application/xml"},signal:e.signal}),{retry:e.retry,delay:e.retryDelay,signal:e.signal})).ok)throw Error("Failed to complete multipart upload.");e.onProgress?.(1)}function o(e,t){return()=>{e.abort(),t(Error("Upload aborted."))}}async function l(e){let r=Array.from(e.files);if(0===r.length)throw new t({type:"no_files",message:"No files to upload."});try{let o=new Headers(e.headers);o.set("Content-Type","application/json");let l=await a(()=>fetch(e.api||"/api/upload",{method:"POST",body:JSON.stringify({route:e.route,metadata:e.metadata,files:r.map(e=>({name:e.name,size:e.size,type:e.type}))}),headers:o,credentials:e.credentials,signal:e.signal}),{retry:e.retry,delay:e.retryDelay,signal:e.signal});if(!l.ok){let{error:e}=await l.json();throw new t({type:e.type||"unknown",message:e.message||"Failed to obtain pre-signed URLs."})}let s=await l.json(),u="multipart"in s?s.multipart.files:s.files,d=s.metadata,c="multipart"in s?s.multipart.partSize:0;if(!u||0===u.length)throw new t({type:"unknown",message:"No pre-signed URLs returned from server. Check your upload router config."});let f=new Map(u.map(e=>[e.file.objectInfo.key,{skip:e.skip,status:"completed"===e.skip?"complete":"pending",progress:+("completed"===e.skip),raw:r.find(t=>t.name===e.file.name&&t.size===e.file.size&&t.type===e.file.type),...e.file}])),p=r.map(t=>async()=>{let r=u.find(e=>e.file.name===t.name&&e.file.size===t.size&&e.file.type===t.type);if(!r||"completed"===r.skip)return;let a="parts"in r;try{f.set(r.file.objectInfo.key,{...f.get(r.file.objectInfo.key),status:"uploading",progress:0}),e.onFileStateChange?.({file:f.get(r.file.objectInfo.key)}),a?await i({file:t,parts:r.parts,partSize:c,uploadId:r.uploadId,completeSignedUrl:r.completeSignedUrl,partsBatchSize:e.multipartBatchSize,signal:e.signal,retry:e.retry,retryDelay:e.retryDelay,onProgress:t=>{"failed"!==f.get(r.file.objectInfo.key).status&&(f.set(r.file.objectInfo.key,{...f.get(r.file.objectInfo.key),status:1===t?"complete":"uploading",progress:t}),e.onFileStateChange?.({file:f.get(r.file.objectInfo.key)}))}}):await n({file:t,signedUrl:r.signedUrl,headers:r.headers,objectMetadata:r.file.objectInfo.metadata,objectCacheControl:r.file.objectInfo.cacheControl,signal:e.signal,retry:e.retry,retryDelay:e.retryDelay,onProgress:t=>{f.set(r.file.objectInfo.key,{...f.get(r.file.objectInfo.key),status:1===t?"complete":"uploading",progress:t}),e.onFileStateChange?.({file:f.get(r.file.objectInfo.key)})}})}catch(t){a&&await fetch(r.abortSignedUrl,{method:"DELETE"}).catch(()=>{}),f.set(r.file.objectInfo.key,{...f.get(r.file.objectInfo.key),status:"failed",error:{type:e.signal?.aborted?"aborted":"s3_upload",message:e.signal?.aborted?"Upload aborted.":"Failed to upload file to S3."}}),e.onFileStateChange?.({file:f.get(r.file.objectInfo.key)})}});e.onUploadBegin?.({files:Array.from(f.values()),metadata:d}),f.forEach(t=>{e.onFileStateChange?.({file:t})});let m=e.uploadBatchSize||r.length;for(let e=0;e<p.length;e+=m)await Promise.all(p.slice(e,e+m).map(e=>e()));return{files:Array.from(f.values()).filter(e=>"complete"===e.status),failedFiles:Array.from(f.values()).filter(e=>"failed"===e.status),metadata:d}}catch(r){if(e.signal?.aborted)throw new t({type:"aborted",message:"Upload aborted."});if(r instanceof t)throw r;if(r instanceof Error)throw new t({type:"unknown",message:r.message});throw new t({type:"unknown",message:"Failed to upload files."})}}async function s(e){let{files:r,metadata:a}=await l({api:e.api,route:e.route,files:[e.file],metadata:e.metadata,multipartBatchSize:e.multipartBatchSize,signal:e.signal,headers:e.headers,credentials:e.credentials,retry:e.retry,retryDelay:e.retryDelay,onUploadBegin:t=>{e.onUploadBegin?.({file:t.files[0],metadata:t.metadata})},onFileStateChange:e.onFileStateChange}),n=r[0];if(!n)throw new t({type:"unknown",message:"Failed to upload file."});return{file:n,metadata:a}}function u({api:e,route:a,uploadBatchSize:n,multipartBatchSize:i,headers:o,credentials:s,signal:d,retry:c,retryDelay:f,onError:p,onBeforeUpload:m,onUploadBegin:y,onUploadComplete:g,onUploadFail:h,onUploadProgress:b,onUploadSettle:w}){let[v,E]=(0,r.useState)(()=>new Map),[S,k]=(0,r.useState)({}),[U,C]=(0,r.useState)(!1),[j,I]=(0,r.useState)(null),T=(0,r.useMemo)(()=>Array.from(v.values()),[v]),M=(0,r.useMemo)(()=>T.filter(e=>"complete"===e.status),[T]),F=(0,r.useMemo)(()=>T.filter(e=>"failed"===e.status),[T]),D=(0,r.useMemo)(()=>T.length>0&&T.every(e=>"complete"===e.status),[T]),P=(0,r.useMemo)(()=>T.length>0&&T.some(e=>"failed"===e.status),[T]),$=(0,r.useMemo)(()=>T.length>0&&T.every(e=>"complete"===e.status||"failed"===e.status),[T]),L=(0,r.useMemo)(()=>0===T.length?0:T.reduce((e,t)=>
8e+t.progress,0)/T.length,[T]),x=(0,r.useCallback)(async(r,{metadata:u}={})=>{A(),C(!0);let v=Array.from(r);try{if(0===v.length)throw new t({type:"no_files",message:"No files to upload."});let r=v;if(m){let e=await m({files:v});if(Array.isArray(e)){if(0===e.length)throw new t({type:"no_files",message:"No files to upload."});r=e}}let p=await l({api:e,route:a,files:r,metadata:u,uploadBatchSize:n,multipartBatchSize:i,headers:o,credentials:s,signal:d,retry:c,retryDelay:f,onUploadBegin:y,onFileStateChange:({file:e})=>{E(t=>new Map(t).set(e.objectInfo.key,e)),b?.({file:e})}});return p.files.length>0&&await g?.(p),p.failedFiles.length>0&&await h?.({succeededFiles:p.files,failedFiles:p.failedFiles,metadata:p.metadata}),C(!1),k(p.metadata),await w?.(p),p}catch(e){if(C(!1),e instanceof t)throw p?.(e),I(e),await w?.({files:[],failedFiles:[],metadata:{}}),e;if(e instanceof Error){let r=new t({type:"unknown",message:e.message});throw p?.(r),I(r),await w?.({files:[],failedFiles:[],metadata:{}}),r}{let e=new t({type:"unknown",message:"Failed to upload files."});throw p?.(e),I(e),await w?.({files:[],failedFiles:[],metadata:{}}),e}}},[e,a,n,i,o,s,d,p,m,y,g,h,b,w]),B=(0,r.useCallback)(async(e,t={})=>{try{return await x(e,t)}catch(e){return{files:[],failedFiles:[],metadata:{}}}},[x]),A=(0,r.useCallback)(()=>{E(new Map),k({}),C(!1),I(null)},[]),_=(0,r.useMemo)(()=>({uploadAsync:x,upload:B,reset:A,progresses:T,allSucceeded:D,hasFailedFiles:P,uploadedFiles:M,failedFiles:F,isSettled:$,averageProgress:L,isPending:U,isError:!!j,isAborted:d?.aborted??!1,error:j,metadata:S}),[x,B,A,T,D,P,M,F,$,L,U,d?.aborted,j,S]);return{..._,control:_}}e.s(["uploadFile",0,s,"useUploadFile",0,function(e){let{upload:t,uploadAsync:a,reset:n,averageProgress:i,error:o,isError:l,isPending:s,isSettled:d,isAborted:c,allSucceeded:f,metadata:p,uploadedFiles:m}=u({api:e.api,route:e.route,uploadBatchSize:1,multipartBatchSize:e.multipartBatchSize,headers:e.headers,credentials:e.credentials,signal:e.signal,retry:e.retry,retryDelay:e.retryDelay,onError:e.onError,onUploadProgress:e.onUploadProgress,onBeforeUpload:e.onBeforeUpload?async({files:t})=>{let r=await e.onBeforeUpload({file:t[0]});if(r)return[r]}:void 0,onUploadBegin:e.onUploadBegin?({files:t,metadata:r})=>e.onUploadBegin({file:t[0],metadata:r}):void 0,onUploadComplete:e.onUploadComplete?async({files:t,metadata:r})=>{await e.onUploadComplete({file:t[0],metadata:r})}:void 0,onUploadFail:e.onError?async({failedFiles:t})=>{e.onError?.({type:t[0].error.type,message:t[0].error.message})}:void 0,onUploadSettle:e.onUploadSettle?async({files:t,metadata:r})=>{await e.onUploadSettle({file:t[0],metadata:r})}:void 0}),y=m?.[0]??null,g=(0,r.useMemo)(()=>({upload:async(e,r)=>{let a=await t([e],r);return{file:a.files[0],metadata:a.metadata}},uploadAsync:async(e,t)=>{let r=await a([e],t);return{file:r.files[0],metadata:r.metadata}},reset:n,progress:i,error:o,isError:l,isPending:s,isSettled:d,isSuccess:f,isAborted:c,metadata:p,uploadedFile:y}),[t,a,n,i,o,l,s,d,f,c,p,y]);return{...g,control:g}},"useUploadFiles",0,u],143964)},903043,46970,e=>{"use strict";var t=e.i(247167);e.s(["invariant",0,function(e,r,...a){if(void 0!==t.default&&void 0===r)throw Error("invariant requires an error message argument");if(!e){let e;if(void 0===r)e=Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{let t=0;(e=Error(r.replace(/%s/g,function(){return a[t++]}))).name="Invariant Violation"}throw e.framesToPop=1,e}}],903043);let r=(0,e.i(271645).createContext)({dragDropManager:void 0});e.s(["DndContext",0,r],46970)},78333,(e,t,r)=>{var a=0/0,n=/^\s+|\s+$/g,i=/^[-+]0x[0-9a-f]+$/i,o=/^0b[01]+$/i,l=/^0o[0-7]+$/i,s=parseInt,u=e.g&&e.g.Object===Object&&e.g,d="object"==typeof self&&self&&self.Object===Object&&self,c=u||d||Function("return this")(),f=Object.prototype.toString,p=Math.max,m=Math.min,y=function(){return c.Date.now()};function g(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function h(e){if("number"==typeof e)return e;if("symbol"==typeof(t=e)||t&&"object"==typeof t&&"[object Symbol]"==f.call(t))return a;
8if(g(e)){var t,r="function"==typeof e.valueOf?e.valueOf():e;e=g(r)?r+"":r}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(n,"");var u=o.test(e);return u||l.test(e)?s(e.slice(2),u?2:8):i.test(e)?a:+e}t.exports=function(e,t,r){var a,n,i,o,l,s,u=0,d=!1,c=!1,f=!0;if("function"!=typeof e)throw TypeError("Expected a function");function b(t){var r=a,i=n;return a=n=void 0,u=t,o=e.apply(i,r)}function w(e){var r=e-s,a=e-u;return void 0===s||r>=t||r<0||c&&a>=i}function v(){var e,r,a,n=y();if(w(n))return E(n);l=setTimeout(v,(e=n-s,r=n-u,a=t-e,c?m(a,i-r):a))}function E(e){return(l=void 0,f&&a)?b(e):(a=n=void 0,o)}function S(){var e,r=y(),i=w(r);if(a=arguments,n=this,s=r,i){if(void 0===l)return u=e=s,l=setTimeout(v,t),d?b(e):o;if(c)return l=setTimeout(v,t),b(s)}return void 0===l&&(l=setTimeout(v,t)),o}return t=h(t)||0,g(r)&&(d=!!r.leading,i=(c="maxWait"in r)?p(h(r.maxWait)||0,t):i,f="trailing"in r?!!r.trailing:f),S.cancel=function(){void 0!==l&&clearTimeout(l),u=0,a=s=n=l=void 0},S.flush=function(){return void 0===l?o:E(y())},S}},39839,e=>{"use strict";var t=e.i(271645),r=e.i(78333),a="u">typeof window?t.useLayoutEffect:t.useEffect;e.s(["useDebounceCallback",0,function(e,a=500,n){var i;let o,l=(0,t.useRef)();i=()=>{l.current&&l.current.cancel()},(o=(0,t.useRef)(i)).current=i,(0,t.useEffect)(()=>()=>{o.current()},[]);let s=(0,t.useMemo)(()=>{let t=(0,r.default)(e,a,n),i=(...e)=>t(...e);return i.cancel=()=>{t.cancel()},i.isPending=()=>!!l.current,i.flush=()=>t.flush(),i},[e,a,n]);return(0,t.useEffect)(()=>{l.current=(0,r.default)(e,a,n)},[e,a,n]),s},"useIntersectionObserver",0,function({threshold:e=0,root:r=null,rootMargin:a="0%",freezeOnceVisible:n=!1,initialIsIntersecting:i=!1,onChange:o}={}){var l;let[s,u]=(0,t.useState)(null),[d,c]=(0,t.useState)(()=>({isIntersecting:i,entry:void 0})),f=(0,t.useRef)();f.current=o;let p=(null==(l=d.entry)?void 0:l.isIntersecting)&&n;(0,t.useEffect)(()=>{let t;if(!s||!("IntersectionObserver"in window)||p)return;let i=new IntersectionObserver(e=>{let r=Array.isArray(i.thresholds)?i.thresholds:[i.thresholds];e.forEach(e=>{let a=e.isIntersecting&&r.some(t=>e.intersectionRatio>=t);c({isIntersecting:a,entry:e}),f.current&&f.current(a,e),a&&n&&t&&(t(),t=void 0)})},{threshold:e,root:r,rootMargin:a});return i.observe(s),()=>{i.disconnect()}},[s,JSON.stringify(e),r,a,p,n]);let m=(0,t.useRef)(null);(0,t.useEffect)(()=>{var e;s||null==(e=d.entry)||!e.target||n||p||m.current===d.entry.target||(m.current=d.entry.target,c({isIntersecting:i,entry:void 0}))},[s,d.entry,n,p,i]);let y=[u,!!d.isIntersecting,d.entry];return y.ref=y[0],y.isIntersecting=y[1],y.entry=y[2],y},"useInterval",0,function(e,r){let n=(0,t.useRef)(e);a(()=>{n.current=e},[e]),(0,t.useEffect)(()=>{if(null===r)return;let e=setInterval(()=>{n.current()},r);return()=>{clearInterval(e)}},[r])}])},452330,39287,e=>{"use strict";let t=(0,e.i(456420).default)("code-xml",[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]]);e.s(["default",0,t],39287),e.s(["Code2",0,t],452330)},488990,650652,e=>{"use strict";var t=e.i(456420);let r=(0,t.default)("compass",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m16.24 7.76-1.804 5.411a2 2 0 0 1-1.265 1.265L7.76 16.24l1.804-5.411a2 2 0 0 1 1.265-1.265z",key:"9ktpf1"}]]);e.s(["default",0,r],488990);let a=(0,t.default)("smile",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M8 14s1.5 2 4 2 4-2 4-2",key:"1y1vjs"}],["line",{x1:"9",x2:"9.01",y1:"9",y2:"9",key:"yxxnd0"}],["line",{x1:"15",x2:"15.01",y1:"9",y2:"9",key:"1p4y9e"}]]);e.s(["default",0,a],650652)},410123,e=>{"use strict";e.s(["FILE",0,"__NATIVE_FILE__","HTML",0,"__NATIVE_HTML__","TEXT",0,"__NATIVE_TEXT__","URL",0,"__NATIVE_URL__"])}]);

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.