1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9206],{19015:function(e,t,r){r.d(t,{t:function(){return n}});function n(e,t){return e===t||null!==e&&null!==t&&"string"!=typeof e&&"string"!=typeof t&&e.length===t.length&&e.every((e,r)=>e===t[r])}},42054:function(e,t,r){r.d(t,{a:function(){return f},c:function(){return u},i:function(){return p},l:function(){return s},n:function(){return d},o:function(){return a},r:function(){return h},s:function(){return o}});var n=r(2265);let l=function(){try{let e="nuqs-localStorage-test";if("undefined"==typeof localStorage)return!1;localStorage.setItem(e,e);let t=localStorage.getItem(e)===e;return localStorage.removeItem(e),t&&(localStorage.getItem("debug")||"").includes("nuqs")}catch{return!1}}();function u(e,...t){if(!l)return;let r=function(e,...t){return e.replace(/%[sfdO]/g,e=>{let r=t.shift();return"%O"===e&&r?JSON.stringify(r).replace(/"([^"]+)":/g,"$1:"):String(r)})}(e,...t);performance.mark(r);try{console.log(e,...t)}catch{console.log(r)}}function s(e,...t){l&&console.warn(e,...t)}let i={303:"Multiple adapter contexts detected. This might happen in monorepos.",404:"nuqs requires an adapter to work with your framework.",409:"Multiple versions of the library are loaded. This may lead to unexpected behavior. Currently using `%s`, but `%s` (via the %s adapter) was about to load on top.",414:"Max safe URL length exceeded. Some browsers may not be able to accept this URL. Consider limiting the amount of state stored in the URL.",422:"Invalid options combination: `limitUrlUpdates: debounce` should be used in SSR scenarios, with `shallow: false`",429:"URL update rate-limited by the browser. Consider increasing `throttleMs` for key(s) `%s`. %O",500:"Empty search params cache. Search params can't be accessed in Layouts.",501:"Search params cache already populated. Have you called `parse` twice?"};function o(e){return`[nuqs] ${i[e]} 2 See https://nuqs.dev/NUQS-${e}`}function a(e){if(0===e.size)return"";let t=[];for(let[r,n]of e.entries()){let e=r.replace(/#/g,"%23").replace(/&/g,"%26").replace(/\+/g,"%2B").replace(/=/g,"%3D").replace(/\?/g,"%3F");t.push(`${e}=${n.replace(/%/g,"%25").replace(/\+/g,"%2B").replace(/ /g,"+").replace(/#/g,"%23").replace(/&/g,"%26").replace(/"/g,"%22").replace(/'/g,"%27").replace(/`/g,"%60").replace(/</g,"%3C").replace(/>/g,"%3E").replace(/[\x00-\x1F]/g,e=>encodeURIComponent(e))}`)}return"?"+t.join("&")}let c=(0,n.createContext)({useAdapter(){throw Error(o(404))}});function d(e){return({children:t,defaultOptions:r,processUrlSearchParams:l,...u})=>(0,n.createElement)(c.Provider,{...u,value:{useAdapter:e,defaultOptions:r,processUrlSearchParams:l}},t)}function h(e){let t=(0,n.useContext)(c);if(!("useAdapter"in t))throw Error(o(404));return t.useAdapter(e)}c.displayName="NuqsAdapterContext",l&&"undefined"!=typeof window&&(window.__NuqsAdapterContext&&window.__NuqsAdapterContext!==c&&console.error(o(303)),window.__NuqsAdapterContext=c);let p=()=>(0,n.useContext)(c).defaultOptions,f=()=>(0,n.useContext)(c).processUrlSearchParams},53593:function(e,t,r){r.d(t,{i:function(){return s},n:function(){return h},r:function(){return i},s:function(){return u},t:function(){return f}});var n=r(42054),l=r(2265);let u={method:"throttle",timeMs:function(){if("undefined"==typeof window||!window.GestureEvent)return 50;try{let e=navigator.userAgent?.match(/version\/([\d\.]+) safari/i);return parseFloat(e[1])>=17?120:320}catch{return 320}}()};function s(e){return null===e||Array.isArray(e)&&0===e.length}function i(){let e=new Map;return{on(t,r){let n=e.get(t)||[];return n.push(r),e.set(t,n),()=>this.off(t,r)},off(t,r){let n=e.get(t);n&&e.set(t,n.filter(e=>e!==r))},emit(t,r){e.get(t)?.forEach(e=>e(r))}}}function o(e,t,r){let n=setTimeout(function(){e(),r.removeEventListener("abort",l)},t);function l(){clearTimeout(n),r.removeEventListener("abort",l)}r.addEventListener("abort",l)}function a(){let e=Promise;if(Promise.hasOwnProperty("withResolvers"))return Promise.withResolvers();let t=()=>{},r=()=>{};return{promise:new e((e,n)=>{t=e,r=n}),resolve:t,reject:r}}function c(){return new URLSearchParams(location.search)}var d=class{updateMap=new Map;options={history:"replace",scroll:!1,shallow:!0};timeMs=u.timeMs;transitions=new Set;resolvers=null;controller=null;lastFlushedAt=0;resetQueueOnNextPush=!1;push({key:e,query:t,options:r},l=u.timeMs){this.resetQueueOnNextPush&&(this.reset(),this.resetQueueOnNextPush=!1),(0,n.c)("[nuqs gtq] Enqueueing %s=%s %O",e,t,r),this.updateMap.set(e,t),"push"===r.history&&(this.options.history="push"),r.scroll&&(this.options.scroll=!0),!1===r.
2shallow&&(this.options.shallow=!1),r.startTransition&&this.transitions.add(r.startTransition),(!Number.isFinite(this.timeMs)||l>this.timeMs)&&(this.timeMs=l)}getQueuedQuery(e){return this.updateMap.get(e)}getPendingPromise({getSearchParamsSnapshot:e=c}){return this.resolvers?.promise??Promise.resolve(e())}flush({getSearchParamsSnapshot:e=c,rateLimitFactor:t=1,...r},l){if(this.controller??=new AbortController,!Number.isFinite(this.timeMs))return(0,n.c)("[nuqs gtq] Skipping flush due to throttleMs=Infinity"),Promise.resolve(e());if(this.resolvers)return this.resolvers.promise;this.resolvers=a();let u=()=>{this.lastFlushedAt=performance.now();let[t,n]=this.applyPendingUpdates({...r,autoResetQueueOnUpdate:r.autoResetQueueOnUpdate??!0,getSearchParamsSnapshot:e},l);null===n?(this.resolvers.resolve(t),this.resetQueueOnNextPush=!0):this.resolvers.reject(t),this.resolvers=null};return o(()=>{let e=performance.now()-this.lastFlushedAt,r=this.timeMs,l=t*Math.max(0,r-e);(0,n.c)("[nuqs gtq] Scheduling flush in %f ms. Throttled at %f ms (x%f)",l,r,t),0===l?u():o(u,l,this.controller.signal)},0,this.controller.signal),this.resolvers.promise}abort(){return this.controller?.abort(),this.controller=new AbortController,this.resolvers?.resolve(new URLSearchParams),this.resolvers=null,this.reset()}reset(){let e=Array.from(this.updateMap.keys());return(0,n.c)("[nuqs gtq] Resetting queue %s",JSON.stringify(Object.fromEntries(this.updateMap))),this.updateMap.clear(),this.transitions.clear(),this.options={history:"replace",scroll:!1,shallow:!0},this.timeMs=u.timeMs,e}applyPendingUpdates(e,t){let{updateUrl:r,getSearchParamsSnapshot:l}=e,u=l();if((0,n.c)("[nuqs gtq] Applying %d pending update(s) on top of %s",this.updateMap.size,u.toString()),0===this.updateMap.size)return[u,null];let s=Array.from(this.updateMap.entries()),i={...this.options},o=Array.from(this.transitions);for(let[t,r]of(e.autoResetQueueOnUpdate&&this.reset(),(0,n.c)("[nuqs gtq] Flushing queue %O with options %O",s,i),s))null===r?u.delete(t):u=function(e,t,r){if("string"==typeof e)r.set(t,e);else{for(let n of(r.delete(t),e))r.append(t,n);r.has(t)||r.set(t,"")}return r}(r,t,u);t&&(u=t(u));try{return!function(e,t){let r=t;for(let t=e.length-1;t>=0;t--){let n=e[t];if(!n)continue;let l=r;r=()=>n(l)}r()}(o,()=>{r(u,i)}),[u,null]}catch(e){return console.error((0,n.s)(429),s.map(([e])=>e).join(),e),[u,e]}}};let h=new d;var p=class{callback;resolvers=a();controller=new AbortController;queuedValue=void 0;constructor(e){this.callback=e}abort(){this.controller.abort(),this.queuedValue=void 0}push(e,t){return this.queuedValue=e,this.controller.abort(),this.controller=new AbortController,o(()=>{let t=this.resolvers;try{(0,n.c)("[nuqs dq] Flushing debounce queue",e);let r=this.callback(e);(0,n.c)("[nuqs dq] Reset debounce queue %O",this.queuedValue),this.queuedValue=void 0,this.resolvers=a(),r.then(e=>t.resolve(e)).catch(e=>t.reject(e))}catch(e){this.queuedValue=void 0,t.reject(e)}},t,this.controller.signal),this.resolvers.promise}};let f=new class{throttleQueue;queues=new Map;queuedQuerySync=i();constructor(e=new d){this.throttleQueue=e}useQueuedQueries(e){return function(e,t,r){let n=(0,l.useCallback)(()=>{let t=Object.fromEntries(e.map(e=>[e,r(e)]));return[JSON.stringify(t),t]},[e.join(","),r]),u=(0,l.useRef)(null);return null===u.current&&(u.current=n()),(0,l.useSyncExternalStore)((0,l.useCallback)(r=>{let n=e.map(e=>t(e,r));return()=>n.forEach(e=>e())},[e.join(","),t]),()=>{let[e,t]=n();return u.current[0]===e?u.current[1]:(u.current=[e,t],t)},()=>u.current[1])}(e,(e,t)=>this.queuedQuerySync.on(e,t),e=>this.getQueuedQuery(e))}push(e,t,r,l){if(!Number.isFinite(t))return Promise.resolve((r.getSearchParamsSnapshot??c)());let u=e.key;if(!this.queues.has(u)){(0,n.c)("[nuqs dqc] Creating debounce queue for `%s`",u);let e=new p(e=>(this.throttleQueue.push(e),this.throttleQueue.flush(r,l).finally(()=>{this.queues.get(e.key)?.queuedValue===void 0&&((0,n.c)("[nuqs dqc] Cleaning up empty queue for `%s`",e.key),this.queues.delete(e.key)),this.queuedQuerySync.emit(e.key)})));this.queues.set(u,e)}(0,n.c)("[nuqs dqc] Enqueueing debounce update %O",e);let s=this.queues.get(u).push(e,t);return this.queuedQuerySync.emit(u),s}abort(e){let t=this.queues.get(e);return t?((0,n.c)("[nuqs dqc] Aborting debounce queue %s=%s",e,t.queuedValue?.query),this.queues.delete(e),t.abort(),this.queuedQuerySync.emit(e),e=>(e.then(t.resolvers.resolve,t.resolvers.reject),e)):e=>e}abortAll(){for(let[e,t]of this.queues.entries())(0,n.c)("[nuqs dqc] Aborting debounce queue %s=%s",e,t.queuedValue?.query),t.abort(),t.resolvers.resolve(new URLSearchParams),this.queuedQuerySync.emit(e);this.queues.clear()}getQueuedQuery(e){let t=this.queues.get(e)?.queuedValue?.query;return void 0!==t?t:this.throttleQueue.getQueuedQuery(e)}}(h)},49206:function(e,t,r){r.d(t,{XI:function(){return y},parseAsBoolean:function(){return f},parseAsInteger:function(){return p},parseAsString:function(){return h},v1:function(){return O}});var n=r(59950),l=r(72371),u=r(79861),s=r(53593),i=r(42054),o=r(19015),a=r(2265);function c(e,t,r){try{return e(t)}catch(e){return(0,i.l)("[nuqs] Error while parsing value `%s`: %O"+(r?" (for key `%s`)":""),t,e,r),null}}function d(e){function t(t){if(void 0===t)return null;let r="";if(Array.isArray(t)){if(void 0===t[0])return null;r=t[0]}return"string"==typeof t&&(r=t),c(e.parse,r)}return(0,l._)((0,n._)({type:"single",eq:(e,t)=>
2e===t},e),{parseServerSide:t,withDefault(e){return(0,l._)((0,n._)({},this),{defaultValue:e,parseServerSide(r){var n;return null!==(n=t(r))&&void 0!==n?n:e}})},withOptions(e){return(0,n._)({},this,e)}})}let h=d({parse:e=>e,serialize:String}),p=d({parse:e=>{let t=parseInt(e);return t==t?t:null},serialize:e=>""+Math.round(e)});d({parse:e=>{let t=parseInt(e);return t==t?t-1:null},serialize:e=>""+Math.round(e+1)}),d({parse:e=>{let t=parseInt(e,16);return t==t?t:null},serialize:e=>{let t=Math.round(e).toString(16);return(1&t.length?"0":"")+t}}),d({parse:e=>{let t=parseFloat(e);return t==t?t:null},serialize:String});let f=d({parse:e=>"true"===e.toLowerCase(),serialize:String});function v(e,t){return e.valueOf()===t.valueOf()}d({parse:e=>{let t=parseInt(e);return t==t?new Date(t):null},serialize:e=>""+e.valueOf(),eq:v}),d({parse:e=>{let t=new Date(e);return t.valueOf()==t.valueOf()?t:null},serialize:e=>e.toISOString(),eq:v}),d({parse:e=>{let t=new Date(e.slice(0,10));return t.valueOf()==t.valueOf()?t:null},serialize:e=>e.toISOString().slice(0,10),eq:v});let m=(0,s.r)(),g={};function y(e){var t,r,u;let o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},c=(0,a.useId)(),d=(0,i.i)(),h=(0,i.a)(),{history:p="replace",scroll:f=null!==(t=null==d?void 0:d.scroll)&&void 0!==t&&t,shallow:v=null===(r=null==d?void 0:d.shallow)||void 0===r||r,throttleMs:y=s.s.timeMs,limitUrlUpdates:O=null==d?void 0:d.limitUrlUpdates,clearOnDefault:w=null===(u=null==d?void 0:d.clearOnDefault)||void 0===u||u,startTransition:S,urlKeys:M=g}=o,j=Object.keys(e).join(","),k=(0,a.useMemo)(()=>Object.fromEntries(Object.keys(e).map(e=>{var t;return[e,null!==(t=M[e])&&void 0!==t?t:e]})),[j,JSON.stringify(M)]),U=(0,i.r)(Object.values(k)),A=U.searchParams,Q=(0,a.useRef)({}),C=(0,a.useMemo)(()=>Object.fromEntries(Object.keys(e).map(t=>{var r;return[t,null!==(r=e[t].defaultValue)&&void 0!==r?r:null]})),[Object.values(e).map(e=>{let{defaultValue:t}=e;return t}).join(",")]),P=s.t.useQueuedQueries(Object.values(k)),[E,R]=(0,a.useState)(()=>q(e,M,null!=A?A:new URLSearchParams,P).state),x=(0,a.useRef)(E);if((0,i.c)("[nuq+ %s `%s`] render - state: %O, iSP: %s",c,j,E,A),Object.keys(Q.current).join("&")!==Object.values(k).join("&")){let{state:t,hasChanged:r}=q(e,M,A,P,Q.current,x.current);r&&((0,i.c)("[nuq+ %s `%s`] State changed: %O",c,j,{state:t,initialSearchParams:A,queuedQueries:P,queryRef:Q.current,stateRef:x.current}),x.current=t,R(t)),Q.current=Object.fromEntries(Object.entries(k).map(t=>{var r,n;let[l,u]=t;return[u,(null===(r=e[l])||void 0===r?void 0:r.type)==="multi"?null==A?void 0:A.getAll(u):null!==(n=null==A?void 0:A.get(u))&&void 0!==n?n:null]}))}(0,a.useEffect)(()=>{let{state:t,hasChanged:r}=q(e,M,A,P,Q.current,x.current);r&&((0,i.c)("[nuq+ %s `%s`] State changed: %O",c,j,{state:t,initialSearchParams:A,queuedQueries:P,queryRef:Q.current,stateRef:x.current}),x.current=t,R(t))},[Object.values(k).map(e=>"".concat(e,"=").concat(null==A?void 0:A.getAll(e))).join("&"),JSON.stringify(P)]),(0,a.useEffect)(()=>{let t=Object.keys(e).reduce((t,r)=>(t[r]=t=>{let{state:u,query:s}=t;R(t=>{var o,a,d;let{defaultValue:h}=e[r],p=k[r],f=null!==(o=null!=u?u:h)&&void 0!==o?o:null;return Object.is(null!==(d=null!==(a=t[r])&&void 0!==a?a:h)&&void 0!==d?d:null,f)?((0,i.c)("[nuq+ %s `%s`] Cross-hook key sync %s: %O (default: %O). no change, skipping, resolved: %O",c,j,p,u,h,x.current),t):(x.current=(0,l._)((0,n._)({},x.current),{[r]:f}),Q.current[p]=s,(0,i.c)("[nuq+ %s `%s`] Cross-hook key sync %s: %O (default: %O). updateInternalState, resolved: %O",c,j,p,u,h,x.current),x.current)})},t),{});for(let r of Object.keys(e)){let e=k[r];(0,i.c)("[nuq+ %s `%s`] Subscribing to sync for `%s`",c,e,j),m.on(e,t[r])}return()=>{for(let r of Object.keys(e)){let e=k[r];(0,i.c)("[nuq+ %s `%s`] Unsubscribing to sync for `%s`",c,e,j),m.off(e,t[r])}}},[j,k]);let N=(0,a.useCallback)(function(t){var r,n,l,u,o,a,d,g,q,M,A,Q,P,E,R,N,_,I,z,L,V,F,T,D,J,$,B;let G;let H=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},X=Object.fromEntries(Object.keys(e).map(e=>[e,null])),K="function"==typeof t?null!==(r=t(b(x.current,C)))&&void 0!==r?r:X:null!=t?t:X;(0,i.c)("[nuq+ %s `%s`] setState: %O",c,j,K);let W=0,Y=!1,Z=[];for(let[t,r]of Object.entries(K)){let c=e[t],b=k[t];if(!c||void 0===r)continue;(null!==(o=null!==(u=H.clearOnDefault)&&void 0!==u?u:c.clearOnDefault)&&void 0!==o?o:w)&&null!==r&&void 0!==c.defaultValue&&(null!==(a=c.eq)&&void 0!==a?a:(e,t)=>e===t)(r,c.defaultValue)&&(r=null);
2let j=null===r?null:(null!==(d=c.serialize)&&void 0!==d?d:String)(r);m.emit(b,{state:r,query:j});let C={key:b,query:j,options:{history:null!==(q=null!==(g=H.history)&&void 0!==g?g:c.history)&&void 0!==q?q:p,shallow:null!==(A=null!==(M=H.shallow)&&void 0!==M?M:c.shallow)&&void 0!==A?A:v,scroll:null!==(P=null!==(Q=H.scroll)&&void 0!==Q?Q:c.scroll)&&void 0!==P?P:f,startTransition:null!==(R=null!==(E=H.startTransition)&&void 0!==E?E:c.startTransition)&&void 0!==R?R:S}};if((null==H?void 0:null===(n=H.limitUrlUpdates)||void 0===n?void 0:n.method)==="debounce"||(null==O?void 0:O.method)==="debounce"||(null===(l=c.limitUrlUpdates)||void 0===l?void 0:l.method)==="debounce"){!0===C.options.shallow&&console.warn((0,i.s)(422));let e=null!==(L=null!==(z=null!==(I=null==H?void 0:null===(N=H.limitUrlUpdates)||void 0===N?void 0:N.timeMs)&&void 0!==I?I:null==O?void 0:O.timeMs)&&void 0!==z?z:null===(_=c.limitUrlUpdates)||void 0===_?void 0:_.timeMs)&&void 0!==L?L:s.s.timeMs,t=s.t.push(C,e,U,h);W<e&&(G=t,W=e)}else{let e=null!==(B=null!==($=null!==(J=null!==(D=null!==(T=null==H?void 0:null===(V=H.limitUrlUpdates)||void 0===V?void 0:V.timeMs)&&void 0!==T?T:null==c?void 0:null===(F=c.limitUrlUpdates)||void 0===F?void 0:F.timeMs)&&void 0!==D?D:null==O?void 0:O.timeMs)&&void 0!==J?J:H.throttleMs)&&void 0!==$?$:c.throttleMs)&&void 0!==B?B:y;Z.push(s.t.abort(b)),s.n.push(C,e),Y=!0}}let ee=Z.reduce((e,t)=>t(e),Y?s.n.flush(U,h):s.n.getPendingPromise(U));return null!=G?G:ee},[j,p,v,f,y,null==O?void 0:O.method,null==O?void 0:O.timeMs,S,k,U.updateUrl,U.getSearchParamsSnapshot,U.rateLimitFactor,h,C]);return[(0,a.useMemo)(()=>b(E,C),[E,C]),N]}function q(e,t,r,n,l,u){let i=!1,a=Object.entries(e).reduce((e,a)=>{var d,h,p,f,v;let[m,g]=a,y=null!==(d=null==t?void 0:t[m])&&void 0!==d?d:m,q=n[y],b="multi"===g.type?[]:null,O=void 0===q?null!==(h="multi"===g.type?null==r?void 0:r.getAll(y):null==r?void 0:r.get(y))&&void 0!==h?h:b:q;return l&&u&&(0,o.t)(null!==(p=l[y])&&void 0!==p?p:b,O)?e[m]=null!==(f=u[m])&&void 0!==f?f:null:(i=!0,e[m]=null!==(v=(0,s.i)(O)?null:c(g.parse,O,y))&&void 0!==v?v:null,l&&(l[y]=O)),e},{});if(!i){let t=Object.keys(e),r=Object.keys(null!=u?u:{});i=t.length!==r.length||t.some(e=>!r.includes(e))}return{state:a,hasChanged:i}}function b(e,t){return Object.fromEntries(Object.keys(e).map(r=>{var n,l;return[r,null!==(l=null!==(n=e[r])&&void 0!==n?n:t[r])&&void 0!==l?l:null]}))}function O(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{parse:r,type:n,serialize:l,eq:s,defaultValue:i}=t,[{[e]:o},c]=y({[e]:{parse:null!=r?r:e=>e,type:n,serialize:l,eq:s,defaultValue:i}},(0,u._)(t,["parse","type","serialize","eq","defaultValue"]));return[o,(0,a.useCallback)(function(t){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return c(r=>({[e]:"function"==typeof t?t(r[e]):t}),r)},[e,c])]}}}]);
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.