p-backlog 0.4.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/README.md +50 -30
  3. package/README.ru.md +50 -30
  4. package/dist/cli.js +670 -265
  5. package/dist/web/assets/{CodeTab-C87LaJFD.js → CodeTab-D3I5lIJJ.js} +1 -1
  6. package/dist/web/assets/CostTab-8f2AC5ER.js +1 -0
  7. package/dist/web/assets/EffectTab-1jObLK9a.js +1 -0
  8. package/dist/web/assets/Figure-BHBCd7Dt.js +1 -0
  9. package/dist/web/assets/OverviewTab-DjNyxzJq.js +1 -0
  10. package/dist/web/assets/QualityTab-W2NdYBhI.js +1 -0
  11. package/dist/web/assets/StatsPage-rJH3k8Ye.js +1 -0
  12. package/dist/web/assets/StatsTabState-BoimPoKm.js +1 -0
  13. package/dist/web/assets/{StatsTable-BXG0IS8p.js → StatsTable-B0tbx68M.js} +1 -1
  14. package/dist/web/assets/{UnavailableRepos-KiTvsm1X.js → UnavailableRepos-SpC6Dzwu.js} +1 -1
  15. package/dist/web/assets/cx-DDl6tKXq.js +58 -0
  16. package/dist/web/assets/{index-AJ1Qzly1.js → index-C8xqRmo-.js} +2 -2
  17. package/dist/web/assets/start-YlC0KTe5.js +38 -0
  18. package/dist/web/assets/use-grain-series-Bx70IZvb.js +55 -0
  19. package/dist/web/assets/value-dot-B7BsbWBD.js +1 -0
  20. package/dist/web/index.html +1 -1
  21. package/package.json +2 -1
  22. package/skill/backlog/SKILL.md +2 -2
  23. package/skill/backlog-en/SKILL.md +2 -2
  24. package/dist/web/assets/ChartTooltip-DWaDSRan.js +0 -55
  25. package/dist/web/assets/CostTab-D4ByOnHX.js +0 -1
  26. package/dist/web/assets/EffectTab-Dq06ghtZ.js +0 -1
  27. package/dist/web/assets/Figure-BC1eGh3_.js +0 -1
  28. package/dist/web/assets/OverviewTab-BBmohHJR.js +0 -1
  29. package/dist/web/assets/QualityTab-Rb7zRcGH.js +0 -1
  30. package/dist/web/assets/StatsPage-Dtyc1gAc.js +0 -1
  31. package/dist/web/assets/StatsTabState-Br-8FgKd.js +0 -1
  32. package/dist/web/assets/cx-CNNf0q6V.js +0 -58
  33. package/dist/web/assets/rolldown-runtime-hePW80VL.js +0 -1
  34. package/dist/web/assets/start-BGXTwsB0.js +0 -38
  35. package/dist/web/assets/value-dot-W-8PsGpd.js +0 -1
  36. /package/dist/web/assets/{ChartTooltip-tQC8-pw2.css → use-grain-series-tQC8-pw2.css} +0 -0
@@ -0,0 +1,58 @@
1
+ import{$ as e,A as t,B as n,C as r,D as i,E as a,F as o,G as s,H as c,I as l,J as u,K as d,L as f,M as p,N as m,O as h,P as g,Q as _,R as v,S as y,T as b,U as x,V as S,W as C,X as w,Y as T,Z as E,_ as D,a as O,at as k,b as A,c as j,d as M,et as ee,f as N,g as te,h as P,i as F,it as ne,j as I,k as re,l as ie,m as ae,n as oe,nt as se,o as ce,p as le,q as ue,r as de,rt as fe,s as L,tt as pe,u as R,v as me,w as he,x as ge,y as _e,z as ve}from"./index-C8xqRmo-.js";var ye=Object.create,be=Object.defineProperty,xe=Object.getOwnPropertyDescriptor,Se=Object.getOwnPropertyNames,Ce=Object.getPrototypeOf,we=Object.prototype.hasOwnProperty,Te=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),Ee=(e,t)=>{let n={};for(var r in e)be(n,r,{get:e[r],enumerable:!0});return t||be(n,Symbol.toStringTag,{value:`Module`}),n},De=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=Se(t),a=0,o=i.length,s;a<o;a++)s=i[a],!we.call(e,s)&&s!==n&&be(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=xe(t,s))||r.enumerable});return e},Oe=(e,t,n)=>(n=e==null?{}:ye(Ce(e)),De(t||!e||!e.__esModule||!we.call(e,`default`)?be(n,`default`,{value:e,enumerable:!0}):n,e));function ke(){let e=this._zod;return e.message??=JSON.stringify(e.def,S,2),e.message}function Ae(e){this._zod.message=e}var je={get:ke,set:Ae,enumerable:!0,configurable:!0},Me={value:void 0,enumerable:!1},Ne=new WeakSet([Object.prototype,Error.prototype]),Pe=(e,t)=>{e.name=`$ZodError`,Me.value=t,Object.defineProperty(e,"issues",Me),Me.value=void 0,Object.defineProperty(e,"message",je);let n=Object.getPrototypeOf(e);Ne.has(n)||(Ne.add(n),Object.defineProperty(n,"toString",{configurable:!0,enumerable:!1,get(){let e=()=>this.message;return Object.defineProperty(this,"toString",{value:e,configurable:!0,writable:!0}),e},set(e){Object.defineProperty(this,"toString",{value:e,configurable:!0,writable:!0})}}))},Fe=R(`$ZodError`,Pe);R(`$ZodError`,Pe,void 0,{Parent:Error});function Ie(e,t,n){return Object.prototype.hasOwnProperty.call(e,t)||(t===`__proto__`?Object.defineProperty(e,t,{value:n(),writable:!0,enumerable:!0,configurable:!0}):e[t]=n()),e[t]}function Le(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?Ie(n,i.path[0],()=>[]).push(t(i)):r.push(t(i));return{formErrors:r,fieldErrors:n}}function Re(e,t=e=>e.message){let n={_errors:[]},r=(e,i=[])=>{for(let a of e.issues)if(a.code===`invalid_union`&&a.errors.length)a.errors.map(e=>r({issues:e},[...i,...a.path]));else if(a.code===`invalid_key`)r({issues:a.issues},[...i,...a.path]);else if(a.code===`invalid_element`)r({issues:a.issues},[...i,...a.path]);else{let e=[...i,...a.path];if(e.length===0)n._errors.push(t(a));else{let r=n,i=0;for(;i<e.length;){let n=e[i],o=i===e.length-1;if(n===`_errors`){o&&r._errors.push(t(a)),i++;continue}Object.prototype.hasOwnProperty.call(r,n)||Object.defineProperty(r,n,{value:{_errors:[]},enumerable:!0,writable:!0,configurable:!0});let s=r[n];o&&s._errors.push(t(a)),r=s,i++}}}};return r(e),n}function ze(e,t){return{callee:t?.callee??e,Err:t?.Err}}var Be=e=>{let t=(n,r,i,a)=>{let o=i?{...i,async:!1}:{async:!1},s=n._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new j;if(s.issues.length){let n=new((a?.Err)??e)(s.issues.map(e=>I(e,o,M())));throw A(n,a?.callee??t),n}return s.value};return t},Ve=e=>{let t=async(n,r,i,a)=>{let o=i?{...i,async:!0}:{async:!0},s=n._zod.run({value:r,issues:[]},o);if(s instanceof Promise&&(s=await s),s.issues.length){let n=new((a?.Err)??e)(s.issues.map(e=>I(e,o,M())));throw A(n,a?.callee??t),n}return s.value};return t},He=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new j;return a.issues.length?Ue(e,a.issues,i):{success:!0,data:a.value}};function Ue(e,t,n){let r;return{success:!1,get error(){return r||(r=new e(t.map(e=>I(e,n,M()))),t=void 0,n=void 0),r},set error(e){r=e,t=void 0,n=void 0}}}var We=e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?Ue(e,a.issues,i):{success:!0,data:a.value}},Ge=Symbol.for(`zod.compile.invalid`),Ke=Symbol.for(`zod.compile.fallback`),qe=((e,t,n)=>{let r=e._zod.bag.validator;if(r!==void 0){if(r(t)!==Ge)return!0;if(r.definite===!0&&n===void 0)return!1}return Je(e,t,n)});function Je(e,t,n){let r=n?{...n,async:!1,abortEarly:!0}:{async:!1,abortEarly:!0},i=e._zod.bag.fallbackRun,a;if(i?(r[Ke]=!0,a=i({value:t,issues:[]},r)):a=e._zod.run({value:t,issues:[]},r),a instanceof Promise)throw new j;return a.issues.length===0}var Ye=async(e,t,n)=>{let r=n?{...n,async:!0,abortEarly:!0}:{async:!0,abortEarly:!0},i=e._zod.run({value:t,issues:[]},r);return i instanceof Promise&&(i=await i),i.issues.length===0},Xe=e=>{let t=Be(e),n=(e,r,i,a)=>{let o=i?{...i,direction:`backward`}:{direction:`backward`};return t(e,r,o,ze(n,a))};return n},Ze=e=>{let t=Be(e),n=(e,r,i,a)=>t(e,r,i,ze(n,a));return n},Qe=e=>{let t=Ve(e),n=async(e,r,i,a)=>{let o=i?{...i,direction:`backward`}:{direction:`backward`};return await t(e,r,o,ze(n,a))};return n},$e=e=>{let t=Ve(e),n=async(e,r,i,a)=>await t(e,r,i,ze(n,a));return n},et=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return He(e)(t,n,i)},tt=e=>(t,n,r)=>He(e)(t,n,r),nt=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return We(e)(t,n,i)},rt=e=>async(t,n,r)=>We(e)(t,n,r),it=/^[cC][0-9a-z]{6,}$/,at=/^[0-9a-z]+$/,ot=/^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$/,st=/^[0-9a-vA-V]{20}$/,ct=/^[A-Za-z0-9]{27}$/,lt=/^[a-zA-Z0-9_-]{21}$/;function ut(e){return RegExp(`^[a-zA-Z0-9_-]{${e}}$`)}var dt=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,ft=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,pt=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,mt=/^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,ht=`^(?=[\\s\\S]*[\\p{Extended_Pictographic}\\p{Regional_Indicator}\\u20E3])[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$`;function gt(){return new RegExp(ht,`u`)}var _t=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,vt=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,yt=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,bt=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,xt=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,St=/^(?:[A-Za-z0-9_-]{4})*(?:[A-Za-z0-9_-]{2,3})?$/,Ct=/^https?$/,wt=/^\+[1-9]\d{6,14}$/,Tt=`(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`;function Et(e){return RegExp(`^${e}$`)}var Dt=Et(Tt);function Ot(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:e.seconds?`${t}:[0-5]\\d(?:\\.\\d+)?`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function kt(e){return RegExp(`^${Ot(e)}$`)}function At(e){let t=[`Z`];e.offset&&t.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let n=`${Ot({precision:e.precision,seconds:!0})}(?:${t.join(`|`)})`,r=e.local?`${n}|${Ot({precision:e.precision})}`:n;return RegExp(`^${Tt}T(?:${r})$`)}var jt=/^[\s\S]{0,}$/,Mt=/^-?\d+$/,Nt=/^-?\d+(?:\.\d+)?$/,Pt=/^(?:true|false)$/i,Ft=/^[^A-Z]*$/,It=/^[^a-z]*$/,z=R(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Lt=e=>{let t=e.value;return!s(t)&&t.length!==void 0},Rt={number:`number`,bigint:`bigint`,object:`date`},zt=R(`$ZodCheckLessThan`,(e,t)=>{z.init(e,t);let n=Rt[typeof t.value];e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:Rt[typeof r.value]??n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Bt=R(`$ZodCheckGreaterThan`,(e,t)=>{z.init(e,t);let n=Rt[typeof t.value];e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:Rt[typeof r.value]??n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Vt=R(`$ZodCheckMultipleOf`,(e,t)=>{z.init(e,t),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?t.value!==BigInt(0)&&n.value%t.value===BigInt(0):p(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Ht=R(`$ZodCheckNumberFormat`,(e,t)=>{z.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=ae[t.format];e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),Ut=R(`$ZodCheckMaxLength`,(e,t)=>{var n;z.init(e,t),(n=e._zod.def).when??(n.when=Lt),e._zod.check=n=>{let i=n.value,a=i.length;if((typeof i==`string`&&a>t.maximum?r(i):a)<=t.maximum)return;let o=g(i);n.issues.push({origin:o,code:`too_big`,maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),Wt=R(`$ZodCheckMinLength`,(e,t)=>{var n;z.init(e,t),(n=e._zod.def).when??(n.when=Lt),e._zod.check=n=>{let i=n.value,a=i.length;if((typeof i==`string`&&a>=t.minimum&&a<t.minimum*2?r(i):a)>=t.minimum)return;let o=g(i);n.issues.push({origin:o,code:`too_small`,minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),Gt=R(`$ZodCheckLengthEquals`,(e,t)=>{var n;z.init(e,t),(n=e._zod.def).when??(n.when=Lt),e._zod.check=n=>{let i=n.value,a=i.length,o=typeof i==`string`&&a>=t.length&&a<=t.length*2?r(i):a;if(o===t.length)return;let s=g(i),c=o>t.length;n.issues.push({origin:s,...c?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Kt=R(`$ZodCheckStringFormat`,(e,t)=>{var n,r;z.init(e,t),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),qt=R(`$ZodCheckRegex`,(e,t)=>{Kt.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Jt=R(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=Ft,Kt.init(e,t)}),Yt=R(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=It,Kt.init(e,t)}),Xt=R(`$ZodCheckIncludes`,(e,t)=>{z.init(e,t);let n=h(t.includes);t.pattern=new RegExp(typeof t.position==`number`?`^.{${t.position},}${n}`:n),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),Zt=R(`$ZodCheckStartsWith`,(e,t)=>{z.init(e,t);let n=RegExp(`^${h(t.prefix)}.*`);t.pattern??=n,e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Qt=R(`$ZodCheckEndsWith`,(e,t)=>{z.init(e,t);let n=RegExp(`.*${h(t.suffix)}$`);t.pattern??=n,e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),$t=R(`$ZodCheckOverwrite`,(e,t)=>{z.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}),en=class{constructor(e=[],t={}){this.content=[],this.indent=0,this.args=e,this.closed=t}indented(e){this.indent+=1;try{e(this)}finally{--this.indent}}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
2
+ `).filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>` `.repeat(this.indent*2)+e);for(let e of r)this.content.push(e)}compile(){let e=Function,t=this?.content??[``];return new e(...Object.keys(this.closed),`return function (${this.args.join(`, `)}) {\n${t.join(`
3
+ `)}\n};`)(...Object.values(this.closed))}},tn={major:4,minor:6,patch:5},B=R(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=tn;let r=e._zod.def.checks,i=e._zod.traits.has(`$ZodCheck`)?[e,...r??[]]:r?.length?[...r]:[];for(let t of i)for(let n of t._zod.onattach)n(e);if(i.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(t,n,r)=>{if(t.memo)return t;let i=P(t),a;for(let o of n){if(o._zod.def.when){if(re(t)||!o._zod.def.when(t))continue}else if(i)continue;let n=t.issues.length,s=o._zod.check(t);if(s instanceof Promise&&r?.async===!1)throw new j;if(a||s instanceof Promise)a=(a??Promise.resolve()).then(async()=>{await s,t.issues.length!==n&&(me(t.issues,n,e),i||=P(t,n))});else{if(t.issues.length===n)continue;me(t.issues,n,e),i||=P(t,n)}}return a?a.then(()=>t):t},n=(n,r,a)=>{if(P(n))return n.aborted=!0,n;let o=t(r,i,a);if(o instanceof Promise){if(a.async===!1)throw new j;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(r,a)=>{if(a.skipChecks)return e._zod.parse(r,a);if(a.direction===`backward`){let t=e._zod.parse({value:r.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,r,a)):n(t,r,a)}let o=e._zod.parse(r,a);if(o instanceof Promise){if(a.async===!1)throw new j;return o.then(e=>t(e,i,a))}return t(o,i,a)}}},{get"~standard"(){return o(this,`~standard`,an(this))},set"~standard"(e){u(this,`~standard`,e)}}),nn=(e,t)=>e.issues.length?{issues:e.issues.map(e=>I(e,t,M()))}:{value:e.value};async function rn(e,t){let n={async:!0};return nn(await e._zod.run({value:t,issues:[]},n),n)}function an(e){return{validate:t=>{let n={async:!1};try{let r=e._zod.run({value:t,issues:[]},n);if(!(r instanceof Promise))return nn(r,n)}catch{}return rn(e,t)},vendor:`zod`,version:1}}var on=R(`$ZodString`,(e,t)=>{B.init(e,t),e._zod.pattern=t.pattern??jt,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),V=R(`$ZodStringFormat`,(e,t)=>{Kt.init(e,t),on.init(e,t)}),sn=R(`$ZodGUID`,(e,t)=>{t.pattern??=ft,V.init(e,t)}),cn=R(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=pt(e)}else t.pattern??=pt();V.init(e,t)}),ln=R(`$ZodEmail`,(e,t)=>{t.pattern??=mt,V.init(e,t)});function un(e){try{return typeof URL<`u`&&typeof URL.canParse==`function`?URL.canParse(e):(new URL(e),!0)}catch{return!1}}function dn(e,t){return!(`normalize`in t)&&!(`hostname`in t)&&!(`protocol`in t)?un(e)||2:fn(e,t)}function fn(e,t){if(!t.normalize&&t.protocol?.source===Ct.source&&!/^https?:\/\//i.test(e))return 1;try{if(typeof URL<`u`){let t=URL;if(typeof t.parse==`function`)return t.parse(e)??2}return new URL(e)}catch{return 2}}var pn=/[\t\n\r]/g;function mn(e){return e.replace(pn,``)}function hn(e,t){return t.lastIndex=0,t.test(e.hostname)}function gn(e,t){return t.lastIndex=0,t.test(e.protocol.endsWith(`:`)?e.protocol.slice(0,-1):e.protocol)}var _n=R(`$ZodURL`,(e,t)=>{V.init(e,t),e._zod.check=n=>{try{let r=n.value.trim(),i=dn(r,t);if(i===1){n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid URL format`,input:n.value,inst:e,continue:!t.abort});return}if(i===2){n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort});return}if(i===!0){n.value=mn(r);return}t.hostname&&!hn(i,t.hostname)&&n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid hostname`,pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort}),t.protocol&&!gn(i,t.protocol)&&n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid protocol`,pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort}),n.value=t.normalize?i.href:mn(r);return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),vn=R(`$ZodEmoji`,(e,t)=>{t.pattern??=gt(),V.init(e,t)}),yn=R(`$ZodNanoID`,(e,t)=>{if(t.length!==void 0&&(!Number.isInteger(t.length)||t.length<1))throw Error(`Invalid nanoid length: ${t.length}`);t.pattern??=t.length===void 0?lt:ut(t.length),V.init(e,t)}),bn=R(`$ZodCUID`,(e,t)=>{t.pattern??=it,V.init(e,t)}),xn=R(`$ZodCUID2`,(e,t)=>{t.pattern??=at,V.init(e,t)}),Sn=R(`$ZodULID`,(e,t)=>{t.pattern??=ot,V.init(e,t)}),Cn=R(`$ZodXID`,(e,t)=>{t.pattern??=st,V.init(e,t)}),wn=R(`$ZodKSUID`,(e,t)=>{t.pattern??=ct,V.init(e,t)}),Tn=R(`$ZodISODateTime`,(e,t)=>{t.pattern??=At(t),V.init(e,t)}),En=R(`$ZodISODate`,(e,t)=>{t.pattern??=Dt,V.init(e,t)}),Dn=R(`$ZodISOTime`,(e,t)=>{t.pattern??=kt(t),V.init(e,t)}),On=R(`$ZodISODuration`,(e,t)=>{t.pattern??=dt,V.init(e,t)}),kn=R(`$ZodIPv4`,(e,t)=>{t.pattern??=_t,V.init(e,t)}),An=/^[0-9a-fA-F:.]+$/;function jn(e){return An.test(e)?un(`http://[${e}]`):!1}var Mn=R(`$ZodIPv6`,(e,t)=>{t.pattern??=vt,V.init(e,t),e._zod.check=n=>{jn(n.value)||n.issues.push({code:`invalid_format`,format:`ipv6`,input:n.value,inst:e,continue:!t.abort})}}),Nn=R(`$ZodCIDRv4`,(e,t)=>{t.pattern??=yt,V.init(e,t)});function Pn(e){let t=e.split(`/`);if(t.length!==2)return!1;let[n,r]=t;if(!r)return!1;let i=Number(r);return`${i}`!==r||i<0||i>128?!1:jn(n)}var Fn=R(`$ZodCIDRv6`,(e,t)=>{t.pattern??=bt,V.init(e,t),e._zod.check=n=>{Pn(n.value)||n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}});function In(e){if(e===``)return!0;if(/\s/.test(e)||e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}var Ln=/^[0-9a-zA-Z+/]*={0,2}$/,Rn=R(`$ZodBase64`,(e,t)=>{t.pattern??=Ln,V.init(e,t),e._zod.check=n=>{In(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}}),zn=/^[A-Za-z0-9_-]*$/;function Bn(e){if(!zn.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return In(t.padEnd(Math.ceil(t.length/4)*4,`=`))}var Vn=R(`$ZodBase64URL`,(e,t)=>{t.pattern??=zn,V.init(e,t),e._zod.check=n=>{Bn(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),Hn=R(`$ZodE164`,(e,t)=>{t.pattern??=wt,V.init(e,t)});function Un(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}var Wn=R(`$ZodJWT`,(e,t)=>{V.init(e,t),e._zod.check=n=>{Un(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),Gn=R(`$ZodNumber`,(e,t)=>{B.init(e,t),e._zod.pattern=Nt,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:String(i):void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),Kn=R(`$ZodNumberFormat`,(e,t)=>{Ht.init(e,t),Gn.init(e,t)}),qn=R(`$ZodBoolean`,(e,t)=>{B.init(e,t),e._zod.pattern=Pt,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),Jn=R(`$ZodUnknown`,(e,t)=>{B.init(e,t),e._zod.parse=e=>e}),Yn=R(`$ZodNever`,(e,t)=>{B.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)});function Xn(e,t,n){e.issues.length&&t.issues.push(..._(n,e.issues)),t.value[n]=e.value}var Zn=R(`$ZodArray`,(e,t)=>{B.init(e,t);let n=N.memoizer;n?.attach(e),e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({expected:`array`,code:`invalid_type`,input:a,inst:e}),r;r.value=n?n.alloc(e,r,Array(a.length),i):Array(a.length);let o=[],s=i?.abortEarly;for(let e=0;e<a.length;e++){let n=a[e],c=t.element._zod.run({value:n,issues:[]},i);if(c instanceof Promise)o.push(c.then(t=>Xn(t,r,e)));else if(Xn(c,r,e),s&&c.issues.length!==0&&P(c))break}return o.length?Promise.all(o).then(()=>r):r}});function Qn(e,t,n,r,i,a){let o=n in r,s=a===`optional`;if(o||!s||i!==`optional`){if(e.issues.length){if(i!==void 0&&s&&!o)return;t.issues.push(..._(n,e.issues))}if(!o&&i===void 0){e.issues.length||t.issues.push({code:`invalid_type`,expected:`nonoptional`,input:void 0,path:[n]});return}e.value===void 0?(o||i===`defaulted`&&!s)&&(t.value[n]=void 0):t.value[n]=e.value}}var $n=[];function er(e){let t=Object.keys(e.shape),n=Object.getOwnPropertySymbols(e.shape),r=n.length?n:$n,i=r.length?[...t,...r]:t;for(let t of i)if(!e.shape?.[t]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${String(t)}": expected a Zod schema`);let a=ue(e.shape);return{...e,allKeys:i,symbolKeys:r,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(a)}}function tr(e,t,n,r,i,a,o){let s=[],c=i.keySet,l=i.catchall._zod,u=l.def.type,d=l.optin,f=l.optout,p=0;for(let i in t){if(o&&n.issues.length!==p){if(P(n,p))break;p=n.issues.length}if(c.has(i))continue;if(i===`__proto__`){u===`never`&&s.push(i);continue}if(u===`never`){s.push(i);continue}let a=l.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>Qn(e,n,i,t,d,f))):Qn(a,n,i,t,d,f)}return s.length&&n.issues.push({code:`unrecognized_keys`,keys:s,input:t,inst:a,continue:!0}),e.length?Promise.all(e).then(()=>n):n}var nr=R(`$ZodObject`,(e,t)=>{B.init(e,t);let n=Object.getOwnPropertyDescriptor(t,`shape`),r=n?.get?n.get.raw:t.shape??{};if(r){let e=()=>{let n={...r};return Object.defineProperty(t,"shape",{value:n}),e.raw=n,n};e.raw=r,Object.defineProperty(t,"shape",{get:e})}let i=_e(()=>er(t));b(e,`propValues`,e=>{let t=e.def.shape,n={};for(let e in t){let r=t[e]._zod;if(r.values){Object.prototype.hasOwnProperty.call(n,e)||D(n,e,new Set);for(let t of r.values)n[e].add(t);r.optin!==void 0&&n[e].add(void 0)}}return n});let a=f,o=t.catchall,s,c=N.memoizer;c?.attach(e),e._zod.parse=(t,n)=>{s??=i.value;let r=t.value;if(!a(r))return t.issues.push({expected:`object`,code:`invalid_type`,input:r,inst:e}),t;t.value=c?c.alloc(e,t,{},n):{};let l=[],u=s.shape,d=n?.abortEarly,f=t.issues.length;for(let e of s.allKeys){if(d&&t.issues.length!==f){if(P(t,f))break;f=t.issues.length}if(e===`__proto__`)continue;let i=u[e],a=i._zod.optin,o=i._zod.optout,s=i._zod.run({value:r[e],issues:[]},n);s instanceof Promise?l.push(s.then(n=>Qn(n,t,e,r,a,o))):Qn(s,t,e,r,a,o)}return o?tr(l,r,t,n,i.value,e,d===!0):l.length?Promise.all(l).then(()=>t):t}}),rr=R(`$ZodObjectJIT`,(e,t)=>{nr.init(e,t);let n=e._zod.parse,r=_e(()=>er(t)),a=N.memoizer,o=t=>{let n=r.value,o=n.symbolKeys,s=new en([`payload`,`ctx`],{shape:t,inst:e,memo:a,syms:o}),c=e=>`shape[${e}]._zod.run({ value: input[${e}], issues: [] }, ctx)`,l=(e,t)=>`
4
+ let ${e}_ab = false;
5
+ for (let i = 0; i < ${e}.issues.length; i++) {
6
+ const iss = ${e}.issues[i];
7
+ iss.path = iss.path ? [${t}, ...iss.path] : [${t}];
8
+ payload.issues.push(iss);
9
+ if (iss.continue !== true) ${e}_ab = true;
10
+ }
11
+ if (${e}_ab && ctx && ctx.abortEarly) {
12
+ payload.value = newResult;
13
+ return payload;
14
+ }`;s.write(`const input = payload.value;`);let u=Object.create(null),d=0;for(let e of n.allKeys)u[e]=`key_${d++}`;s.write(a?`const newResult = memo.alloc(inst, payload, {}, ctx);`:`const newResult = {};`);for(let e of n.allKeys){if(e===`__proto__`)continue;let n=u[e],r=typeof e==`symbol`?`syms[${o.indexOf(e)}]`:i(e),a=`${r} in input`,d=t[e],f=d?._zod?.optin,p=f!==void 0,m=d?._zod?.optout===`optional`;if(s.write(`const ${n} = ${c(r)};`),p&&m){let e=f===`optional`?`${n}_present`:`${n}.value !== undefined || ${n}_present`;s.write(`
15
+ const ${n}_present = ${a};
16
+ if (!${n}.issues.length || ${n}_present) {
17
+ if (${n}.issues.length) {${l(n,r)}
18
+ }
19
+
20
+ if (${e}) {
21
+ newResult[${r}] = ${n}.value;
22
+ }
23
+ }
24
+
25
+ `)}else p?(s.write(`
26
+ if (${n}.issues.length) {${l(n,r)}
27
+ }
28
+ `),f===`defaulted`?s.write(`newResult[${r}] = ${n}.value;`):s.write(`
29
+ if (${n}.value !== undefined || ${a}) {
30
+ newResult[${r}] = ${n}.value;
31
+ }
32
+ `)):s.write(`
33
+ const ${n}_present = ${a};
34
+ if (${n}.issues.length) {${l(n,r)}
35
+ }
36
+ if (!${n}_present && !${n}.issues.length) {
37
+ payload.issues.push({
38
+ code: "invalid_type",
39
+ expected: "nonoptional",
40
+ input: undefined,
41
+ path: [${r}]
42
+ });
43
+ if (ctx && ctx.abortEarly) {
44
+ payload.value = newResult;
45
+ return payload;
46
+ }
47
+ }
48
+
49
+ if (${n}_present) {
50
+ newResult[${r}] = ${n}.value;
51
+ }
52
+
53
+ `)}return s.write(`payload.value = newResult;`),s.write(`return payload;`),s.compile()},s,c=f,l=!N.jitless,u=l&&te.value,d=t.catchall,p;e._zod.parse=(i,a)=>{p??=r.value;let f=i.value;return c(f)?l&&u&&a?.async===!1&&a.jitless!==!0?(s||=o(t.shape),i=s(i,a),d?tr([],f,i,a,p,e,a?.abortEarly===!0):i):n(i,a):(i.issues.push({expected:`object`,code:`invalid_type`,input:f,inst:e}),i)}});function ir(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!P(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>I(e,r,M())))}),t)}var ar=R(`$ZodUnion`,(e,t)=>{B.init(e,t),b(e,`optin`,e=>e.def.options.some(e=>e._zod.optin===`defaulted`)?`defaulted`:e.def.options.some(e=>e._zod.optin!==void 0)?`optional`:void 0),b(e,`optout`,e=>e.def.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),b(e,`values`,e=>{if(e.def.options.every(e=>e._zod.values))return new Set(e.def.options.flatMap(e=>Array.from(e._zod.values)))}),b(e,`pattern`,e=>{if(e.def.options.every(e=>e._zod.pattern)){let t=e.def.options.map(e=>e._zod.pattern);return RegExp(`^(${t.map(e=>ge(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>ir(t,r,e,i)):ir(o,r,e,i)}});function or(e){let t=new Map;for(let n of e.options){let r=n._zod.propValues?.[e.discriminator];if(!r||r.size===0)throw Error(`Invalid discriminated union option at index "${e.options.indexOf(n)}"`);for(let e of r)if(t.has(e)){if(e!==void 0)throw Error(`Duplicate discriminator value "${String(e)}"`);t.set(e,null)}else t.set(e,n)}return t}var sr=R(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,ar.init(e,t);let n=e._zod.parse;b(e,`propValues`,e=>{let t={},n=0;for(let r of e.def.options){let i=r._zod.propValues;if(!i||Object.keys(i).length===0)throw Error(`Invalid discriminated union option at index "${e.def.options.indexOf(r)}"`);i[e.def.discriminator]?.has(void 0)&&n++;for(let[e,n]of Object.entries(i)){Object.prototype.hasOwnProperty.call(t,e)||D(t,e,new Set);for(let r of n)t[e].add(r)}}return!e.def.unionFallback&&n>1&&t[e.def.discriminator]?.delete(void 0),t}),t.options.forEach((e,n)=>{let r=ee(e._zod.def);if(r&&!Object.prototype.hasOwnProperty.call(r,t.discriminator))throw Error(`Invalid discriminated union option at index "${n}"`)});let r=_e(()=>or(t));e._zod.parse=(i,a)=>{let o=i.value;if(!f(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=o?.[t.discriminator],c=r.value.get(s);return c&&(s!==void 0||a.direction!==`backward`)?c._zod.run(i,a):t.unionFallback||a.direction===`backward`?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,options:Array.from(r.value.keys()).filter(e=>r.value.get(e)!==null),input:o,path:[t.discriminator],inst:e}),i)}}),cr=R(`$ZodIntersection`,(e,t)=>{B.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>ur(e,t,n)):ur(e,i,a)}});function lr(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(v(e)&&v(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};Object.prototype.hasOwnProperty.call(i,`__proto__`)&&delete i.__proto__;for(let n of r){if(n===`__proto__`)continue;let r=lr(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=lr(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function ur(e,t,n){let r=new Map,i,a=new Map,o=(e,t)=>{let n;if(e.code===`unrecognized_keys`&&!e.path?.length)i??=e,n=e.keys;else if(e.code===`invalid_key`&&e.origin===`record`&&e.path?.length===1){let t=String(e.path[0]);a.has(t)||a.set(t,e),n=[t]}else return!1;for(let e of n)r.has(e)||r.set(e,{}),r.get(e)[t]=!0;return!0};for(let n of t.issues)o(n,`l`)||e.issues.push(n);for(let t of n.issues)o(t,`r`)||e.issues.push(t);let s=[...r].filter(([,e])=>e.l&&e.r).map(([e])=>e);if(s.length){let t=i?s.filter(e=>i.keys.includes(e)):[];t.length&&e.issues.push({...i,keys:t});for(let n of s)!t.includes(n)&&a.has(n)&&e.issues.push(a.get(n))}let c=lr(t.value,n.value);if(!c.valid){if(P(e))return e;throw Error(`Unmergable intersection. Error path: ${JSON.stringify(c.mergeErrorPath)}`)}return e.value=c.data,e}var dr=R(`$ZodRecord`,(e,t)=>{B.init(e,t);let n=N.memoizer;n?.attach(e),e._zod.parse=(r,i)=>{let a=r.value;if(!v(a))return r.issues.push({expected:`record`,code:`invalid_type`,input:a,inst:e}),r;let o=[],s=t.keyType._zod.values;if(s&&!t.partial){r.value=n?n.alloc(e,r,{},i):{};let c=new Set;for(let n of s)if(typeof n==`string`||typeof n==`number`||typeof n==`symbol`){if(c.add(typeof n==`number`?n.toString():n),n===`__proto__`)continue;let s=t.keyType._zod.run({value:n,issues:[]},i);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(s.issues.length){r.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>I(e,i,M())),input:n,path:[n],inst:e});continue}let l=s.value;if(l===`__proto__`)continue;let u=t.valueType._zod.run({value:a[n],issues:[]},i);u instanceof Promise?o.push(u.then(e=>{e.issues.length&&r.issues.push(..._(n,e.issues)),r.value[l]=e.value})):(u.issues.length&&r.issues.push(..._(n,u.issues)),r.value[l]=u.value)}let l;for(let e in a)if(!c.has(e)){if(t.mode===`loose`){if(e===`__proto__`)continue;r.value[e]=a[e]}else l??=[],l.push(e)}l&&l.length>0&&r.issues.push({code:`unrecognized_keys`,input:a,inst:e,keys:l,continue:!0})}else{r.value=n?n.alloc(e,r,{},i):{};let c;for(let n of Reflect.ownKeys(a)){if(n===`__proto__`||!Object.prototype.propertyIsEnumerable.call(a,n))continue;let l=t.keyType._zod.run({value:n,issues:[]},i);if(l instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof n==`string`&&Nt.test(n)&&l.issues.length){let e=t.keyType._zod.run({value:Number(n),issues:[]},i);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(l=e)}if(l.issues.length){t.mode===`loose`?r.value[n]=a[n]:s?(c??=[],c.push(n)):r.issues.push({code:`invalid_key`,origin:`record`,issues:l.issues.map(e=>I(e,i,M())),input:n,path:[n],inst:e});continue}let u=l.value;if(u===`__proto__`)continue;let d=t.valueType._zod.run({value:a[n],issues:[]},i);d instanceof Promise?o.push(d.then(e=>{e.issues.length&&r.issues.push(..._(n,e.issues)),r.value[u]=e.value})):(d.issues.length&&r.issues.push(..._(n,d.issues)),r.value[u]=d.value)}c&&c.length>0&&r.issues.push({code:`unrecognized_keys`,input:a,inst:e,keys:c,continue:!0})}return o.length?Promise.all(o).then(()=>r):r}}),fr=R(`$ZodEnum`,(t,n)=>{B.init(t,n);let r=m(n.entries),i=new Set(r);t._zod.values=i,b(t,`pattern`,t=>{let n=m(t.def.entries).filter(t=>e.has(typeof t));return RegExp(n.length?`^(${n.map(e=>h(e.toString())).join(`|`)})$`:`^[^\\s\\S]$`)}),t._zod.parse=(e,n)=>{let a=e.value;return i.has(a)||e.issues.push({code:`invalid_value`,values:r,input:a,inst:t}),e}}),pr=R(`$ZodLiteral`,(e,t)=>{B.init(e,t);let n=new Set(t.values);e._zod.values=n,b(e,`pattern`,e=>{let t=e.def.values;return RegExp(t.length?`^(${t.map(e=>typeof e==`string`?h(e):e?h(e.toString()):String(e)).join(`|`)})$`:`^[^\\s\\S]$`)}),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),mr=R(`$ZodTransform`,(e,t)=>{B.init(e,t),e._zod.optin=`optional`,N.memoizer?.guard(e),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new ie(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n));if(i instanceof Promise)throw new j;return n.value=i,n}});function hr(e,t){return e.value=t.issues.length?void 0:t.value,e}var gr=R(`$ZodOptional`,(e,t)=>{B.init(e,t),b(e,`optin`,e=>e.def.innerType._zod.optin===`defaulted`?`defaulted`:`optional`),e._zod.optout=`optional`,b(e,`values`,e=>{let t=e.def.innerType._zod.values;return t?new Set([...t,void 0]):void 0}),b(e,`pattern`,e=>{let t=e.def.innerType._zod.pattern;return t?RegExp(`^(${ge(t.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(e.value===void 0){if(t.innerType._zod.optin!==`defaulted`)return e;let r=t.innerType._zod.run({value:e.value,issues:[]},n);return r instanceof Promise?r.then(t=>hr(e,t)):hr(e,r)}return t.innerType._zod.run(e,n)}}),_r=R(`$ZodExactOptional`,(e,t)=>{gr.init(e,t),b(e,`values`,e=>e.def.innerType._zod.values),b(e,`pattern`,e=>e.def.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),vr=R(`$ZodNullable`,(e,t)=>{B.init(e,t),b(e,`optin`,e=>e.def.innerType._zod.optin),b(e,`optout`,e=>e.def.innerType._zod.optout),b(e,`pattern`,e=>{let t=e.def.innerType._zod.pattern;return t?RegExp(`^(${ge(t.source)}|null)$`):void 0}),b(e,`values`,e=>e.def.innerType._zod.values?new Set([...e.def.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),yr=R(`$ZodDefault`,(e,t)=>{B.init(e,t),e._zod.optin=`defaulted`,b(e,`values`,e=>e.def.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>br(e,t)):br(r,t)}});function br(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var xr=R(`$ZodPrefault`,(e,t)=>{B.init(e,t),e._zod.optin=`defaulted`,b(e,`values`,e=>e.def.innerType._zod.values),e._zod.parse=(e,n)=>(n.direction===`backward`||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),Sr=R(`$ZodNonOptional`,(e,t)=>{B.init(e,t),b(e,`values`,e=>{let t=e.def.innerType._zod.values;return t?new Set([...t].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>Cr(t,e)):Cr(i,e)}});function Cr(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}function wr(e,t,n,r){return t.issues.length?(e.value=n.catchValue({...t,value:e.value,error:{issues:t.issues.map(e=>I(e,r,M()))},input:e.value}),e):(e.value=t.value,t.memo&&(e.memo=!0),e)}var Tr=R(`$ZodCatch`,(e,t)=>{B.init(e,t),b(e,`optin`,e=>e.def.innerType._zod.optin===`defaulted`?`defaulted`:`optional`),b(e,`optout`,e=>e.def.innerType._zod.optout),b(e,`values`,e=>e.def.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run({value:e.value,issues:[]},n);return r instanceof Promise?r.then(r=>wr(e,r,t,n)):wr(e,r,t,n)}}),Er=R(`$ZodPipe`,(e,t)=>{B.init(e,t),b(e,`values`,e=>e.def.in._zod.values),b(e,`optin`,e=>e.def.in._zod.optin),b(e,`optout`,e=>e.def.out._zod.optout),b(e,`propValues`,e=>e.def.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>Dr(e,t.in,n)):Dr(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>Dr(e,t.out,n)):Dr(r,t.out,n)}});function Dr(e,t,n){return e.issues.some(e=>e.code!==`unrecognized_keys`)?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}var Or=R(`$ZodReadonly`,(e,t)=>{B.init(e,t),b(e,`propValues`,e=>e.def.innerType._zod.propValues),b(e,`values`,e=>e.def.innerType._zod.values),b(e,`optin`,e=>e.def.innerType?._zod?.optin),b(e,`optout`,e=>e.def.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(kr):kr(r)}});function kr(e){return e.memo||(e.value=Object.freeze(e.value)),e}var Ar=R(`$ZodCustom`,(e,t)=>{z.init(e,t),B.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>jr(t,n,r,e));jr(i,n,r,e)}});function jr(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(ve(e))}}var Mr=class extends Error{constructor(){super(`Cannot parse a reference cycle that closes through a transform`),this.name=`ZodCyclicError`}},Nr=`~memo`,Pr=[];function Fr(e){return typeof e==`object`&&!!e}function Ir(e){return e.map(e=>e.path?{...e,path:e.path.slice()}:{...e})}var Lr=new WeakMap,Rr=0,zr=1,Br=2;function Vr(e,t,n){let r=Lr.get(e);if(r!==void 0)return r?Br:Rr;if(t.has(e))return Br;t.add(e);let i=Rr,a=e=>{if(i!==Br&&e?._zod){let r=Vr(e,t,n);r>i&&(i=r)}},o=(e,r)=>{let i=Rr;for(let a of Reflect.ownKeys(e)){let o=Object.getOwnPropertyDescriptor(e,a);if(r&&!o.enumerable)continue;let s=o.get?zr:o.value?._zod?Vr(o.value,t,n):Rr;s>i&&(i=s)}return i},s=e=>{e>i&&(i=e)},c=e._zod.def;switch(c.type){case`object`:{let e=ee(c);s(e?o(e,!0):zr),a(c.catchall);break}case`array`:a(c.element);break;case`tuple`:for(let e of c.items)a(e);a(c.rest);break;case`record`:case`map`:a(c.keyType),a(c.valueType);break;case`set`:a(c.valueType);break;case`union`:for(let e of c.options)a(e);break;case`intersection`:a(c.left),a(c.right);break;case`optional`:case`nullable`:case`default`:case`prefault`:case`catch`:case`readonly`:case`nonoptional`:case`promise`:case`success`:a(c.innerType);break;case`pipe`:a(c.in),a(c.out);break;case`function`:a(c.input),a(c.output);break;case`lazy`:{let r=c._cachedInner??(n?e._zod.innerType:void 0);s(r?Vr(r,t,!1):zr);break}case`template_literal`:case`string`:case`number`:case`int`:case`boolean`:case`bigint`:case`symbol`:case`undefined`:case`null`:case`void`:case`never`:case`any`:case`unknown`:case`date`:case`nan`:case`enum`:case`literal`:case`file`:case`transform`:case`custom`:break;default:for(let e in c){let t=Object.getOwnPropertyDescriptor(c,e);if(!t||t.get)continue;let n=t.value;if(n&&typeof n==`object`){if(n._zod)a(n);else if(Array.isArray(n))for(let e of n)a(e)}}}return t.delete(e),Hr(e,i)}function Hr(e,t){return t!==zr&&Lr.set(e,t===Br),t}function Ur(e,t){let n=e.buckets.get(t);return n||(n=new WeakMap,e.buckets.set(t,n)),n}var Wr,Gr=[],Kr={alloc(e,t,n){let r=Wr;if(!r)return n;Wr=void 0;let i={value:n,issues:null};return r.set(t.value,i),Gr.push(i),n},guard(e){var t;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let t=e._zod.parse,n=(e,n)=>{if(n.direction!==`backward`&&Jr(n,e.value))throw new Mr;return t(e,n)};e._zod.parse=n,e._zod.run===t&&(e._zod.run=n)})},attach(e){var t;let n,r=!1,i,a;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let t=e._zod.parse,o=(s,c)=>{if(n===void 0){let i=Vr(e,new Set,!1);if(i===Rr)return e._zod.parse=t,e._zod.run===o&&(e._zod.run=t),t(s,c);i===Br||r?n=!0:r=!0}let l=s.value;if(!Fr(l))return t(s,c);let u=c[Nr];u||(u={buckets:new WeakMap,backEdges:void 0},c[Nr]=u);let d;i===c?d=a:(d=Ur(u,e),i=c,a=d);let f=d.get(l);if(f)return s.value=f.value,f.issues?f.issues.length&&s.issues.push(...Ir(f.issues)):(s.memo=!0,u.backEdges??(u.backEdges=new WeakSet),u.backEdges.add(f.value)),s;Wr=d;let p=Gr.length,m=t(s,c);Wr=void 0;let h=Gr.length>p?Gr.pop():void 0;return m instanceof Promise?m.then(e=>(h&&(h.issues=e.issues.length?Ir(e.issues):Pr),e)):(h&&(h.issues=m.issues.length?Ir(m.issues):Pr),m)};e._zod.parse=o,e._zod.run===t&&(e._zod.run=o)})}};function qr(){return Kr}function Jr(e,t){let n=e[Nr]?.backEdges;return n!==void 0&&Fr(t)&&n.has(t)}var Yr=()=>{let e={string:{unit:`characters`,verb:`to have`},file:{unit:`bytes`,verb:`to have`},array:{unit:`items`,verb:`to have`},set:{unit:`items`,verb:`to have`},map:{unit:`entries`,verb:`to have`}};function t(t){return e[t]??null}let r={regex:`input`,email:`email address`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO datetime`,date:`ISO date`,time:`ISO time`,duration:`ISO duration`,ipv4:`IPv4 address`,ipv6:`IPv6 address`,mac:`MAC address`,cidrv4:`IPv4 range`,cidrv6:`IPv6 range`,base64:`base64-encoded string`,base64url:`base64url-encoded string`,json_string:`JSON string`,e164:`E.164 number`,currency_code:`currency code`,credit_card:`credit card number`,iban:`IBAN`,jwt:`JWT`,template_literal:`input`},i={nan:`NaN`};function a(e,t){return e===`number`&&typeof t==`number`&&!Number.isFinite(t)?String(t):i[e]??e}return e=>{switch(e.code){case`invalid_type`:return`Invalid input: expected ${a(e.expected)}, received ${a(T(e.input),e.input)}`;case`invalid_value`:return e.values.length===1?`Invalid input: expected ${k(e.values[0])}`:`Invalid option: expected one of ${n(e.values,`|`)}`;case`too_big`:{let n=e.exact?`exactly `:e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Too big: expected ${e.origin??`value`} to have ${n}${e.maximum.toString()} ${r.unit??`elements`}`:`Too big: expected ${e.origin??`value`} to be ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.exact?`exactly `:e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Too small: expected ${e.origin} to have ${n}${e.minimum.toString()} ${r.unit}`:`Too small: expected ${e.origin} to be ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Invalid string: must start with "${t.prefix}"`:t.format===`ends_with`?`Invalid string: must end with "${t.suffix}"`:t.format===`includes`?`Invalid string: must include "${t.includes}"`:t.format===`regex`?`Invalid string: must match pattern ${t.pattern}`:`Invalid ${r[t.format]??e.format}`}case`not_multiple_of`:return`Invalid number: must be a multiple of ${e.divisor}`;case`unrecognized_keys`:return`Unrecognized key${e.keys.length>1?`s`:``}: ${n(e.keys,`, `)}`;case`invalid_key`:return`Invalid key in ${e.origin}`;case`invalid_union`:return e.options&&Array.isArray(e.options)&&e.options.length>0?`Invalid discriminator value. Expected ${e.options.map(e=>`'${e}'`).join(` | `)}`:e.inclusive===!1?`Invalid input: more than one option matched`:`Invalid input`;case`invalid_element`:return`Invalid value in ${e.origin}`;default:return`Invalid input`}}};function Xr(){return{localeError:Yr()}}function Zr(e,t,n,r){let i=Math.abs(e),a=i%10,o=i%100;return o>=11&&o<=19?r:a===1?t:a>=2&&a<=4?n:r}var Qr=()=>{let e={string:{unit:{one:`символ`,few:`символа`,many:`символов`},verb:`иметь`},file:{unit:{one:`байт`,few:`байта`,many:`байт`},verb:`иметь`},array:{unit:{one:`элемент`,few:`элемента`,many:`элементов`},verb:`иметь`},set:{unit:{one:`элемент`,few:`элемента`,many:`элементов`},verb:`иметь`},map:{unit:{one:`элемент`,few:`элемента`,many:`элементов`},verb:`иметь`}};function t(t){return e[t]??null}let r={regex:`ввод`,email:`email адрес`,url:`URL`,emoji:`эмодзи`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO дата и время`,date:`ISO дата`,time:`ISO время`,duration:`ISO длительность`,ipv4:`IPv4 адрес`,ipv6:`IPv6 адрес`,mac:`MAC адрес`,cidrv4:`IPv4 диапазон`,cidrv6:`IPv6 диапазон`,base64:`строка в формате base64`,base64url:`строка в формате base64url`,json_string:`JSON строка`,e164:`номер E.164`,credit_card:`номер кредитной карты`,currency_code:`код валюты`,iban:`IBAN`,jwt:`JWT`,template_literal:`ввод`},i={nan:`NaN`,number:`число`,array:`массив`};return e=>{switch(e.code){case`invalid_type`:{let t=i[e.expected]??e.expected,n=T(e.input),r=i[n]??n;return/^[A-Z]/.test(e.expected)?`Неверный ввод: ожидалось instanceof ${e.expected}, получено ${r}`:`Неверный ввод: ожидалось ${t}, получено ${r}`}case`invalid_value`:return e.values.length===1?`Неверный ввод: ожидалось ${k(e.values[0])}`:`Неверный вариант: ожидалось одно из ${n(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);if(r){let t=Zr(Number(e.maximum),r.unit.one,r.unit.few,r.unit.many);return`Слишком большое значение: ожидалось, что ${e.origin??`значение`} будет иметь ${n}${e.maximum.toString()} ${t}`}return`Слишком большое значение: ожидалось, что ${e.origin??`значение`} будет ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);if(r){let t=Zr(Number(e.minimum),r.unit.one,r.unit.few,r.unit.many);return`Слишком маленькое значение: ожидалось, что ${e.origin} будет иметь ${n}${e.minimum.toString()} ${t}`}return`Слишком маленькое значение: ожидалось, что ${e.origin} будет ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Неверная строка: должна начинаться с "${t.prefix}"`:t.format===`ends_with`?`Неверная строка: должна заканчиваться на "${t.suffix}"`:t.format===`includes`?`Неверная строка: должна содержать "${t.includes}"`:t.format===`regex`?`Неверная строка: должна соответствовать шаблону ${t.pattern}`:`Неверный ${r[t.format]??e.format}`}case`not_multiple_of`:return`Неверное число: должно быть кратным ${e.divisor}`;case`unrecognized_keys`:return`Нераспознанн${e.keys.length>1?`ые`:`ый`} ключ${e.keys.length>1?`и`:``}: ${n(e.keys,`, `)}`;case`invalid_key`:return`Неверный ключ в ${e.origin}`;case`invalid_union`:return`Неверные входные данные`;case`invalid_element`:return`Неверное значение в ${e.origin}`;default:return`Неверные входные данные`}}};function $r(){return{localeError:Qr()}}var ei,ti=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];return this._map.set(e,n),n&&typeof n==`object`&&`id`in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function ni(){return new ti}(ei=globalThis).__zod_globalRegistry??(ei.__zod_globalRegistry=ni());var ri=globalThis.__zod_globalRegistry;function ii(e){return e.checks&&=[...e.checks],e}function ai(e,t){return new e(ii({type:`string`,...C(t)}))}function oi(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...C(t)})}function si(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...C(t)})}function ci(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...C(t)})}function li(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...C(t)})}function ui(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...C(t)})}function di(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...C(t)})}function fi(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...C(t)})}function pi(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...C(t)})}function mi(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...C(t)})}function hi(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...C(t)})}function gi(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...C(t)})}function _i(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...C(t)})}function vi(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...C(t)})}function yi(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...C(t)})}function bi(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...C(t)})}function xi(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...C(t)})}function Si(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...C(t)})}function Ci(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...C(t)})}function wi(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...C(t)})}function Ti(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...C(t)})}function Ei(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...C(t)})}function Di(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...C(t)})}function Oi(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...C(t)})}function ki(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...C(t)})}function Ai(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...C(t)})}function ji(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...C(t)})}function Mi(e,t){return new e(ii({type:`number`,checks:[],...C(t)}))}function Ni(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...C(t)})}function Pi(e,t){return new e({type:`boolean`,...C(t)})}function Fi(e){return new e({type:`unknown`})}function Ii(e,t){return new e({type:`never`,...C(t)})}function Li(e,t){return new zt({check:`less_than`,...C(t),value:e,inclusive:!1})}function Ri(e,t){return new zt({check:`less_than`,...C(t),value:e,inclusive:!0})}function zi(e,t){return new Bt({check:`greater_than`,...C(t),value:e,inclusive:!1})}function Bi(e,t){return new Bt({check:`greater_than`,...C(t),value:e,inclusive:!0})}function Vi(e,t){return new Vt({check:`multiple_of`,...C(t),value:e})}function Hi(e,t){return new Ut({check:`max_length`,...C(t),maximum:e})}function Ui(e,t){return new Wt({check:`min_length`,...C(t),minimum:e})}function Wi(e,t){return new Gt({check:`length_equals`,...C(t),length:e})}function Gi(e,t){return new qt({check:`string_format`,format:`regex`,...C(t),pattern:e})}function Ki(e){return new Jt({check:`string_format`,format:`lowercase`,...C(e)})}function qi(e){return new Yt({check:`string_format`,format:`uppercase`,...C(e)})}function Ji(e,t){return new Xt({check:`string_format`,format:`includes`,...C(t),includes:e})}function Yi(e,t){return new Zt({check:`string_format`,format:`starts_with`,...C(t),prefix:e})}function Xi(e,t){return new Qt({check:`string_format`,format:`ends_with`,...C(t),suffix:e})}function Zi(e){return new $t({check:`overwrite`,tx:e})}function Qi(e){return Zi(t=>t.normalize(e))}function $i(){return Zi(e=>e.trim())}function ea(){return Zi(e=>e.toLowerCase())}function ta(){return Zi(e=>e.toUpperCase())}function na(){return Zi(e=>ne(e))}function ra(e,t,n){return new e({type:`array`,element:t,...C(n)})}function ia(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...C(n)})}function aa(e,t){let n=oa(t=>(t.addIssue=e=>{if(typeof e==`string`)t.issues.push(ve(e,t.value,n._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,`input`in r||(r.input=t.value),r.inst??=n,r.continue??=!n._zod.def.abort,t.issues.push(ve(r))}},e(t.value,t)),t);return n}function oa(e,t){let n=new z({check:`custom`,...C(t)});return n._zod.check=e,n}function sa(e,...t){for(let n of t)for(let t of Reflect.ownKeys(n))Object.prototype.propertyIsEnumerable.call(n,t)&&D(e,t,n[t]);return e}function ca(e){let t=e?.target??`draft-2020-12`;return t===`draft-4`&&(t=`draft-04`),t===`draft-7`&&(t=`draft-07`),{processors:e.processors??{},metadataRegistry:e?.metadata??ri,target:t,unrepresentable:e?.unrepresentable??`throw`,override:e?.override??(()=>{}),io:e?.io??`output`,counter:0,seen:new Map,sharedDefsExtractedFor:void 0,sharedEmitDoneFor:void 0,cycles:e?.cycles??`ref`,reused:e?.reused??`inline`,intersections:[],deferred:[],external:e?.external??void 0}}function la(e,t,n,r,i){let a=typeof t.unrepresentable==`function`?t.unrepresentable({zodSchema:e,path:r.path,message:i}):t.unrepresentable;if(a===`any`)return!1;if(a===void 0||a===`throw`)throw Error(i);return Object.assign(n,a),!0}function H(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a)return a.count++,n.schemaPath.includes(e)&&(a.cycle=n.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o),t.sharedDefsExtractedFor=void 0,t.sharedEmitDoneFor=void 0;let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let r={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,r);else{let n=o.schema,a=t.processors[i.type];if(!a)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);a(e,t,n,r)}let a=e._zod.parent;a&&(o.ref||=a,H(a,t,r),t.seen.get(a).isParent=!0)}let c=t.metadataRegistry.get(e);return c&&sa(o.schema,c),t.io===`input`&&U(e)&&(delete o.schema.examples,delete o.schema.default),t.io===`input`&&`_prefault`in o.schema&&((r=o.schema).default??(r.default=o.schema._prefault)),delete o.schema._prefault,t.seen.get(e).schema}function ua(e){return e.replace(/~/g,`~0`).replace(/\//g,`~1`)}function da(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);if(e.external&&e.sharedDefsExtractedFor===e.external)return;let r=new Map;for(let t of e.seen.entries()){let n=e.metadataRegistry.get(t[0])?.id;if(n){let e=r.get(n);if(e&&e!==t[0])throw Error(`Duplicate schema id "${n}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(n,t[0])}}let i=t=>{let r=e.target===`draft-2020-12`?`$defs`:`definitions`;if(e.external){let n=e.external.registry.get(t[0])?.id,i=e.external.uri??(e=>e);if(n)return{ref:i(n)};let a=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${r}/${ua(a)}`}}let i=`#/${r}/`;if(t[1]===n&&!t[1].schema.id)return{ref:`#`};let a=t[1].schema.id??`__schema${e.counter++}`;return{defId:a,ref:i+ua(a)}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(e.cycles===`throw`)for(let t of e.seen.entries()){let e=t[1];if(e.cycle)throw Error(`Cycle detected: #/${e.cycle?.join(`/`)}/<root>
54
+
55
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}r.count>1&&e.reused===`ref`&&a(n)}e.external&&(e.sharedDefsExtractedFor=e.external)}function fa(e){let t=e.anyOf;if(!Array.isArray(t)||t.length===0||e.type!==void 0)return;let n=[];for(let e of t){if(!e||typeof e!=`object`)return;fa(e);let t=Object.keys(e);if(t.length!==1||t[0]!==`type`)return;let r=e.type;for(let e of Array.isArray(r)?r:[r]){if(typeof e!=`string`)return;n.includes(e)||n.push(e)}}delete e.anyOf,e.type=n.length===1?n[0]:n}var pa=new Set([`type`,`properties`,`required`,`additionalProperties`]),ma=[`oneOf`,`anyOf`];function ha(e){let t=e.additionalProperties;return t===void 0||t===!1||typeof t!=`object`||!t?null:Object.keys(t).length?t:null}function ga(e){let t=[];for(let n of e){if(typeof n!=`object`||n.type!==`object`)return null;for(let e in n)if(!pa.has(e))return null;t.push(n)}let n={},r=new Set;for(let e of t){for(let r in e.properties){if(Object.prototype.hasOwnProperty.call(n,r))continue;let e=[];for(let n of t){let t=n.properties?.[r]??ha(n);t!=null&&(e.some(e=>JSON.stringify(e)===JSON.stringify(t))||e.push(t))}let i=e.length===1?e[0]:ga(e)??{allOf:e};D(n,r,i)}for(let t of e.required??[])r.add(t)}let i={type:`object`,properties:n};if(r.size&&(i.required=[...r]),t.every(e=>e.additionalProperties===!1))i.additionalProperties=!1;else{let e=[];for(let n of t){let t=ha(n);t&&!e.some(e=>JSON.stringify(e)===JSON.stringify(t))&&e.push(t)}e.length===1?i.additionalProperties=e[0]:e.length>1&&(i.additionalProperties={allOf:e})}return i}function _a(e){let t=e.allOf;if(!Array.isArray(t)||t.length<2)return;for(let t of pa)if(t in e)return;let n=t.filter(e=>ma.some(t=>Array.isArray(e[t]))),r=null;if(!n.length)r=ga(t);else{let e=n[0],i=ma.find(t=>Array.isArray(e[t]));if(Object.keys(e).length!==1)return;let a=t.filter(t=>t!==e),o=e[i].map(e=>ga([...a,e]));if(o.some(e=>!e))return;r={[i]:o}}r&&(delete e.allOf,sa(e,r))}function va(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):sa(i,s),sa(i,a),t._zod.parent===o)for(let e in i)e!==`$ref`&&e!==`allOf`&&(e in a||delete i[e]);if(s.$ref&&n.def)for(let e in i)e!==`$ref`&&e!==`allOf`&&e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e!==`$ref`&&e!==`allOf`&&e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};if(!e.external||e.sharedEmitDoneFor!==e.external){for(let t of[...e.seen.entries()].reverse())r(t[0]);if(e.target!==`openapi-3.0`)for(let t of e.seen.entries())fa(t[1].def??t[1].schema);for(let t of e.deferred)t();if(e.intersections.length){let t=new Map;for(let n of e.seen.values())for(let e of[n.schema,n.def]){let n=e?.allOf;if(!Array.isArray(n))continue;let r=t.get(n);r?r.push(e):t.set(n,[e])}for(let n of e.intersections)for(let e of t.get(n)??[])_a(e)}}let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}sa(i,n.defId?n.schema:n.def??n.schema);let a=e.metadataRegistry.get(t)?.id;a!==void 0&&i.id===a&&delete i.id;let o=e.external?.defs??{};if(!e.external||e.sharedEmitDoneFor!==e.external)for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(e.def.id===e.defId&&delete e.def.id,D(o,e.defId,e.def))}e.external&&(e.sharedEmitDoneFor=e.external),e.external||Object.keys(o).length>0&&(e.target===`draft-2020-12`?i.$defs=o:i.definitions=o);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,"~standard",{value:{...t[`~standard`],jsonSchema:{input:ba(t,`input`,e.processors),output:ba(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function U(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return U(r.element,n);if(r.type===`set`)return U(r.valueType,n);if(r.type===`lazy`)return U(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type==="default"||r.type===`prefault`||r.type===`catch`)return U(r.innerType,n);if(r.type===`intersection`)return U(r.left,n)||U(r.right,n);if(r.type===`record`||r.type===`map`)return U(r.keyType,n)||U(r.valueType,n);if(r.type===`pipe`)return e._zod.traits.has(`$ZodCodec`)?!0:U(r.in,n)||U(r.out,n);if(r.type===`object`){for(let e in r.shape)if(U(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(U(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(U(e,n))return!0;return!!(r.rest&&U(r.rest,n))}return!1}var ya=(e,t={})=>n=>{let r=ca({...n,processors:t});return H(e,r),da(r,e),va(r,e)},ba=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=ca({...i??{},target:a,io:t,processors:n});return H(e,o),da(o,e),va(o,e)},xa=(e,t,n)=>{(e[t]===void 0||n>e[t])&&(e[t]=n)},Sa=(e,t,n)=>{(e[t]===void 0||n<e[t])&&(e[t]=n)},Ca=(e,t)=>{xa(e,`minimum`,t),Sa(e,`maximum`,t)},wa=(e,t)=>{e.multipleOf??=[],e.multipleOf.includes(t)||e.multipleOf.push(t)},Ta=(e,t)=>{e.patterns??=new Set,e.patterns.add(t)},Ea=(e,t)=>{e.mime=e.mime?e.mime.filter(e=>t.includes(e)):[...t]},Da=(e,t)=>{e.format=t,t.includes(`int`)&&(e.isInt=!0)},Oa=(e,t)=>xa(e,`minimum`,t.minimum),ka=(e,t)=>Sa(e,`maximum`,t.maximum),Aa=e=>(t,n)=>{Da(t,n.format);let[r,i]=e[n.format];xa(t,`minimum`,r),Sa(t,`maximum`,i)},ja={greater_than:(e,t)=>xa(e,t.inclusive?`minimum`:`exclusiveMinimum`,t.value),less_than:(e,t)=>Sa(e,t.inclusive?`maximum`:`exclusiveMaximum`,t.value),multiple_of:(e,t)=>wa(e,t.value),number_format:Aa(ae),bigint_format:Aa(le),min_length:Oa,max_length:ka,length_equals:(e,t)=>Ca(e,t.length),min_size:Oa,max_size:ka,size_equals:(e,t)=>Ca(e,t.size),string_format:(e,t)=>{Da(e,t.format),t.pattern&&Ta(e,t.pattern),(t.format===`base64`||t.format===`base64url`)&&(e.contentEncoding=t.format),(t.local||t.precision===-1)&&(e.laxFormat=!0)},mime_type:(e,t)=>Ea(e,t.mime)};function Ma(e){let t={},n=e._zod.def,r=e._zod.traits.has(`$ZodCheck`)?[e,...n.checks??[]]:n.checks??[];for(let e of r)ja[e._zod.def.check]?.(t,e._zod.def);let i=e._zod.bag;i.minimum!==void 0&&xa(t,`minimum`,i.minimum),i.exclusiveMinimum!==void 0&&xa(t,`exclusiveMinimum`,i.exclusiveMinimum),i.maximum!==void 0&&Sa(t,`maximum`,i.maximum),i.exclusiveMaximum!==void 0&&Sa(t,`exclusiveMaximum`,i.exclusiveMaximum),i.multipleOf!==void 0&&wa(t,i.multipleOf),i.format!==void 0&&(t.format??=i.format,i.format.includes(`int`)&&(t.isInt=!0)),i.mime&&Ea(t,i.mime);for(let e of i.patterns??[])Ta(t,e);return t}var Na={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},Pa=new Map([[Ln,xt],[zn,St]]),Fa=e=>Pa.get(e)??e,Ia=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l,laxFormat:u}=Ma(e);if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=Na[s]??s,i.format===``&&delete i.format,(s===`time`||u)&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c].map(Fa);e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},La=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,multipleOf:s,exclusiveMaximum:c,exclusiveMinimum:l,isInt:u}=Ma(e);i.type=u?`integer`:`number`;let d=typeof l==`number`&&l>=(a??-1/0),f=typeof c==`number`&&c<=(o??1/0),p=t.target===`draft-04`||t.target===`openapi-3.0`;if(d?p?(i.minimum=l,i.exclusiveMinimum=!0):i.exclusiveMinimum=l:typeof a==`number`&&(i.minimum=a),f?p?(i.maximum=c,i.exclusiveMaximum=!0):i.exclusiveMaximum=c:typeof o==`number`&&(i.maximum=o),s){let n=new Set;for(let a of s)Number.isFinite(a)&&a!==0?n.add(Math.abs(a)):la(e,t,i,r,`A multipleOf divisor of ${a} cannot be represented in JSON Schema`);let[a,...o]=n;a!==void 0&&(i.multipleOf=a),o.length&&(i.allOf=[...i.allOf??[],...o.map(e=>({multipleOf:e}))])}},Ra=(e,t,n,r)=>{n.type=`boolean`},za=(e,t,n,r)=>{n.not={}},Ba=(e,t,n,r)=>{let i=e._zod.def,a=m(i.entries);if(a.length===0){n.not={};return}a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},Va=(e,t,n,r)=>{let i=e._zod.def;if(i.values.length===0){n.not={};return}let a=[];for(let o of i.values)if(o===void 0){if(la(e,t,n,r,"Literal `undefined` cannot be represented in JSON Schema"))return}else if(typeof o==`bigint`){if(la(e,t,n,r,`BigInt literals cannot be represented in JSON Schema`))return;a.push(Number(o))}else a.push(o);if(a.length!==0){if(a.length===1){let e=a[0];n.type=e===null?`null`:typeof e,t.target===`draft-04`||t.target===`openapi-3.0`?n.enum=[e]:n.const=e}else a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),a.every(e=>typeof e==`boolean`)&&(n.type=`boolean`),a.every(e=>e===null)&&(n.type=`null`),n.enum=a}},Ha=(e,t,n,r)=>{la(e,t,n,r,`Custom types cannot be represented in JSON Schema`)},Ua=(e,t,n,r)=>{la(e,t,n,r,`Transforms cannot be represented in JSON Schema`)},Wa=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=Ma(e);typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=H(a.element,t,{...r,path:[...r.path,`items`]})};function Ga(e){let t=e._zod.def;return t.type===`pipe`&&t.in._zod.traits.has(`$ZodTransform`)?Ga(t.out):t.type===`catch`?Ga(t.innerType):e._zod.optin}var Ka=(e,t,n,r)=>{let i=n,a=e._zod.def,o=a.shape;if(Object.getOwnPropertySymbols(o).length&&la(e,t,i,r,`Symbol keys cannot be represented in JSON Schema`))return;i.type=`object`,i.properties={};for(let e in o)D(i.properties,e,H(o[e],t,{...r,path:[...r.path,`properties`,e]}));let s=[];for(let e of Object.keys(o)){let n=a.shape[e];(t.io===`input`?Ga(n)===void 0:n._zod.optout===void 0)&&s.push(e)}s.length>0&&(i.required=s),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=H(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},qa=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>H(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},Ja=(e,t,n,r)=>{let i=e._zod.def,a=H(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=H(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1,c=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]];n.allOf=c,t.intersections.push(c)};function Ya(e,t,n){if(t.$ref){if(n.has(t))return t;n.add(t);let r=e.get(t)?.def;if(!r)return t;let i=Ya(e,r,n);return i===r?t:i}for(let r of[`anyOf`,`oneOf`]){let i=t[r];if(!Array.isArray(i))continue;let a=i.map(t=>Ya(e,t,n));a.some((e,t)=>e!==i[t])&&(t={...t,[r]:a})}let r=Array.isArray(t.type)?t.type:[t.type],i=!r.includes(`string`)&&r.some(e=>e===`number`||e===`integer`),a=t.enum??(t.const===void 0?void 0:[t.const]);if(!i&&!a?.some(e=>typeof e==`number`))return t;let{minimum:o,maximum:s,exclusiveMinimum:c,exclusiveMaximum:l,multipleOf:u,format:d,id:f,...p}=t;return p.enum?p.enum=p.enum.map(e=>typeof e==`number`?String(e):e):typeof p.const==`number`&&(p.const=String(p.const)),i?(p.type=`string`,a||(p.pattern=(r.includes(`number`)?Nt:Mt).source),p):p}var Xa=new WeakMap;function Za(e){let t=new Map;for(let n of e.seen.values())n.def&&!t.has(n.schema)&&t.set(n.schema,n);let n=new Map;for(let r of Xa.get(e)??[]){let i=e.seen.get(r),a=(i?.def??i?.schema)?.propertyNames;if(!a||a===!0||n.has(a))continue;let o=Ya(t,a,new Set);o!==a&&n.set(a,o)}if(n.size)for(let t of e.seen.values())for(let e of[t.schema,t.def]){let t=e&&n.get(e.propertyNames);t&&(e.propertyNames=t)}}var Qa=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`;let o=a.keyType,s=Ma(o).patterns;if(a.mode===`loose`&&s&&s.size>0){let e=H(a.valueType,t,{...r,path:[...r.path,`patternProperties`,`*`]});i.patternProperties={};for(let t of s)D(i.patternProperties,Fa(t).source,e)}else{if(t.target===`draft-07`||t.target===`draft-2020-12`){i.propertyNames=H(a.keyType,t,{...r,path:[...r.path,`propertyNames`]});let n=Xa.get(t);n||(n=[],Xa.set(t,n),t.deferred.push(()=>Za(t))),n.push(e)}i.additionalProperties=H(a.valueType,t,{...r,path:[...r.path,`additionalProperties`]})}let c=o._zod.values,l=t.io===`input`&&Ga(a.valueType)!==void 0;if(c&&!a.partial&&!l){let e=[...c].filter(e=>typeof e==`string`||typeof e==`number`);e.length>0&&(i.required=e.map(String))}},$a=(e,t,n,r)=>{let i=e._zod.def,a=H(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},eo=(e,t,n,r)=>{let i=e._zod.def;H(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},to=Symbol();function no(e,t,n,r,i){let a=!1,o=JSON.stringify(e,(e,t)=>typeof t==`bigint`?(a=!0,null):t);return a?(la(t,n,r,i,`BigInt defaults cannot be represented in JSON Schema`),to):JSON.parse(o)}var ro=(e,t,n,r)=>{let i=e._zod.def;H(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o=no(i.defaultValue,e,t,n,r);o!==to&&(n.default=o)},io=(e,t,n,r)=>{let i=e._zod.def;H(i.innerType,t,r);let a=t.seen.get(e);if(a.ref=i.innerType,t.io!==`input`)return;let o=no(i.defaultValue,e,t,n,r);o!==to&&(n._prefault=o)},ao=(e,t,n,r)=>{let i=e._zod.def;H(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{la(e,t,n,r,`Dynamic catch values are not supported in JSON Schema`);return}n.default=o},oo=(e,t,n,r)=>{let i=e._zod.def,a=i.in._zod.traits.has(`$ZodTransform`),o=t.io===`input`?a?i.out:i.in:i.out;H(o,t,r);let s=t.seen.get(e);s.ref=o},so=(e,t,n,r)=>{let i=e._zod.def;H(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},co=(e,t,n,r)=>{let i=e._zod.def;H(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},lo=new WeakSet([Object.prototype,Error.prototype]);function uo(e,t,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,get(){let e=n(this);return Object.defineProperty(this,t,{value:e,configurable:!0,writable:!0}),e},set(e){Object.defineProperty(this,t,{value:e,configurable:!0,writable:!0})}})}var fo=R(`ZodError`,(e,t)=>{Fe.init(e,t),e.name=`ZodError`;let n=Object.getPrototypeOf(e);lo.has(n)||(lo.add(n),uo(n,`format`,e=>t=>Re(e,t)),uo(n,`flatten`,e=>t=>Le(e,t)),uo(n,`addIssue`,e=>t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,S,2)}),uo(n,`addIssues`,e=>t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,S,2)}),Object.defineProperty(n,"isEmpty",{configurable:!0,enumerable:!1,get(){return this.issues.length===0}}))},void 0,{Parent:Error}),po=Be(fo),mo=Ve(fo),ho=He(fo),go=We(fo),_o=Xe(fo),vo=Ze(fo),yo=Qe(fo),bo=$e(fo),xo=et(fo),So=tt(fo),Co=nt(fo),wo=rt(fo);function To(){N.localeError||M(Xr())}function Eo(){N.memoizer||M({memoizer:qr()})}var W=R(`ZodType`,(e,t)=>(To(),B.init(e,t),e.def=t,e.type=t.type,e),{check(...e){let t=this.def;return this.clone(x(t,{checks:[...t.checks??[],...e.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return y(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(Us(e,t))},superRefine(e,t){return this.check(Ws(e,t))},overwrite(e){return this.check(Zi(e))},optional(){return Ts(this)},exactOptional(){return Ds(this)},nullable(){return ks(this)},nullish(){return Ts(ks(this))},nonoptional(e){return Fs(this,e)},array(){return ls(this)},or(e){return ps([this,e])},and(e){return _s(this,e)},transform(e){return zs(this,Cs(e))},default(e){return js(this,e)},prefault(e){return Ns(this,e)},catch(e){return Ls(this,e)},pipe(e){return zs(this,e)},readonly(){return Vs(this)},describe(e){let t=this.clone();return ri.add(t,{description:e}),t},meta(...e){if(e.length===0)return ri.get(this);let t=this.clone();return ri.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e,...t){return t.length===0?e(this):e(this,...t)},get"~standard"(){return o(this,`~standard`,{...an(this),jsonSchema:{input:ba(this,`input`),output:ba(this,`output`)}})},set"~standard"(e){u(this,`~standard`,e)},parse:function e(t,n){return po(this,t,n,{callee:e})},parseAsync:async function e(t,n){return await mo(this,t,n,{callee:e})},safeParse(e,t){return ho(this,e,t)},async safeParseAsync(e,t){return go(this,e,t)},get spa(){return this?.safeParseAsync},set spa(e){u(this,`spa`,e)},validate(e,t){return qe(this,e,t)},validateAsync(e,t){return Ye(this,e,t)},encode:function e(t,n){return _o(this,t,n,{callee:e})},decode:function e(t,n){return vo(this,t,n,{callee:e})},encodeAsync:async function e(t,n){return await yo(this,t,n,{callee:e})},decodeAsync:async function e(t,n){return await bo(this,t,n,{callee:e})},safeEncode(e,t){return xo(this,e,t)},safeDecode(e,t){return So(this,e,t)},async safeEncodeAsync(e,t){return Co(this,e,t)},async safeDecodeAsync(e,t){return wo(this,e,t)},toJSONSchema(e){return ya(this,{})(e)},get description(){return ri.get(this)?.description},get _def(){return this._zod.def}}),Do=R(`_ZodString`,(e,t)=>{on.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ia(e,t,n,r)},a({format:e=>Ma(e).format??null,minLength:e=>Ma(e).minimum??null,maxLength:e=>Ma(e).maximum??null},{regex(...e){return this.check(Gi(...e))},includes(...e){return this.check(Ji(...e))},startsWith(...e){return this.check(Yi(...e))},endsWith(...e){return this.check(Xi(...e))},min(...e){return this.check(Ui(...e))},max(...e){return this.check(Hi(...e))},length(...e){return this.check(Wi(...e))},nonempty(...e){return this.check(Ui(1,...e))},lowercase(e){return this.check(Ki(e))},uppercase(e){return this.check(qi(e))},trim(){return this.check($i())},normalize(...e){return this.check(Qi(...e))},toLowerCase(){return this.check(ea())},toUpperCase(){return this.check(ta())},slugify(){return this.check(na())}})),Oo=R(`ZodString`,(e,t)=>{on.init(e,t),Do.init(e,t)},{email(e){return this.check(oi(No,e))},url(e){return this.check(fi(Io,e))},jwt(e){return this.check(Di(Zo,e))},emoji(e){return this.check(pi(Lo,e))},guid(e){return this.check(si(Po,e))},uuid(e){return this.check(ci(Fo,e))},uuidv4(e){return this.check(li(Fo,e))},uuidv6(e){return this.check(ui(Fo,e))},uuidv7(e){return this.check(di(Fo,e))},nanoid(e){return this.check(mi(Ro,e))},cuid(e){return this.check(hi(zo,e))},cuid2(e){return this.check(gi(Bo,e))},ulid(e){return this.check(_i(Vo,e))},base64(e){return this.check(wi(Jo,e))},base64url(e){return this.check(Ti(Yo,e))},xid(e){return this.check(vi(Ho,e))},ksuid(e){return this.check(yi(Uo,e))},ipv4(e){return this.check(bi(Wo,e))},ipv6(e){return this.check(xi(Go,e))},cidrv4(e){return this.check(Si(Ko,e))},cidrv6(e){return this.check(Ci(qo,e))},e164(e){return this.check(Ei(Xo,e))},datetime(e){return this.check(Oi(ko,e))},date(e){return this.check(ki(Ao,e))},time(e){return this.check(Ai(jo,e))},duration(e){return this.check(ji(Mo,e))}});function G(e){return ai(Oo,e)}var K=R(`ZodStringFormat`,(e,t)=>{V.init(e,t),Do.init(e,t)}),ko=R(`ZodISODateTime`,(e,t)=>{Tn.init(e,t),K.init(e,t)}),Ao=R(`ZodISODate`,(e,t)=>{En.init(e,t),K.init(e,t)}),jo=R(`ZodISOTime`,(e,t)=>{Dn.init(e,t),K.init(e,t)}),Mo=R(`ZodISODuration`,(e,t)=>{On.init(e,t),K.init(e,t)}),No=R(`ZodEmail`,(e,t)=>{ln.init(e,t),K.init(e,t)}),Po=R(`ZodGUID`,(e,t)=>{sn.init(e,t),K.init(e,t)}),Fo=R(`ZodUUID`,(e,t)=>{cn.init(e,t),K.init(e,t)}),Io=R(`ZodURL`,(e,t)=>{_n.init(e,t),K.init(e,t)}),Lo=R(`ZodEmoji`,(e,t)=>{vn.init(e,t),K.init(e,t)}),Ro=R(`ZodNanoID`,(e,t)=>{yn.init(e,t),K.init(e,t)}),zo=R(`ZodCUID`,(e,t)=>{bn.init(e,t),K.init(e,t)}),Bo=R(`ZodCUID2`,(e,t)=>{xn.init(e,t),K.init(e,t)}),Vo=R(`ZodULID`,(e,t)=>{Sn.init(e,t),K.init(e,t)}),Ho=R(`ZodXID`,(e,t)=>{Cn.init(e,t),K.init(e,t)}),Uo=R(`ZodKSUID`,(e,t)=>{wn.init(e,t),K.init(e,t)}),Wo=R(`ZodIPv4`,(e,t)=>{kn.init(e,t),K.init(e,t)}),Go=R(`ZodIPv6`,(e,t)=>{Mn.init(e,t),K.init(e,t)}),Ko=R(`ZodCIDRv4`,(e,t)=>{Nn.init(e,t),K.init(e,t)}),qo=R(`ZodCIDRv6`,(e,t)=>{Fn.init(e,t),K.init(e,t)}),Jo=R(`ZodBase64`,(e,t)=>{Rn.init(e,t),K.init(e,t)}),Yo=R(`ZodBase64URL`,(e,t)=>{Vn.init(e,t),K.init(e,t)}),Xo=R(`ZodE164`,(e,t)=>{Hn.init(e,t),K.init(e,t)}),Zo=R(`ZodJWT`,(e,t)=>{Wn.init(e,t),K.init(e,t)}),Qo=R(`ZodNumber`,(e,t)=>{Gn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>La(e,t,n,r),e.isFinite=!0},a({minValue:e=>{let{minimum:t,exclusiveMinimum:n}=Ma(e);return Math.max(t??-1/0,n??-1/0)},maxValue:e=>{let{maximum:t,exclusiveMaximum:n}=Ma(e);return Math.min(t??1/0,n??1/0)},isInt:e=>{let{isInt:t,multipleOf:n}=Ma(e);return!!t||!!n?.some(Number.isSafeInteger)},format:e=>Ma(e).format??null},{gt(e,t){return this.check(zi(e,t))},gte(e,t){return this.check(Bi(e,t))},min(e,t){return this.check(Bi(e,t))},lt(e,t){return this.check(Li(e,t))},lte(e,t){return this.check(Ri(e,t))},max(e,t){return this.check(Ri(e,t))},int(e){return this.check(ts(e))},safe(e){return this.check(ts(e))},positive(e){return this.check(zi(0,e))},nonnegative(e){return this.check(Bi(0,e))},negative(e){return this.check(Li(0,e))},nonpositive(e){return this.check(Ri(0,e))},multipleOf(e,t){return this.check(Vi(e,t))},step(e,t){return this.check(Vi(e,t))},finite(){return this}}));function $o(e){return Mi(Qo,e)}var es=R(`ZodNumberFormat`,(e,t)=>{Kn.init(e,t),Qo.init(e,t)});function ts(e){return Ni(es,e)}var ns=R(`ZodBoolean`,(e,t)=>{qn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ra(e,t,n,r)});function rs(e){return Pi(ns,e)}var is=R(`ZodUnknown`,(e,t)=>{Jn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function as(){return Fi(is)}var os=R(`ZodNever`,(e,t)=>{Yn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>za(e,t,n,r)});function ss(e){return Ii(os,e)}var cs=R(`ZodArray`,(e,t)=>{Eo(),Zn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Wa(e,t,n,r),e.element=t.element},{min(e,t){return this.check(Ui(e,t))},nonempty(e){return this.check(Ui(1,e))},max(e,t){return this.check(Hi(e,t))},length(e,t){return this.check(Wi(e,t))},unwrap(){return this.element}});function ls(e,t){return ra(cs,e,t)}var us=R(`ZodObject`,(e,t)=>{Eo(),rr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ka(e,t,n,r),l(e,`shape`,e=>e._zod.def.shape,!1)},{keyof(){return J(Object.keys(this._zod.def.shape))},catchall(e){return this.clone(x(this._zod.def,{catchall:e}))},passthrough(){return this.clone(x(this._zod.def,{catchall:as()}))},loose(){return this.clone(x(this._zod.def,{catchall:as()}))},strict(){return this.clone(x(this._zod.def,{catchall:ss()}))},strip(){return this.clone(x(this._zod.def,{catchall:void 0}))},extend(e){return t(this,e)},safeExtend(e){return se(this,e)},merge(e){return c(this,e)},pick(e){return E(this,e)},omit(e){return d(this,e)},partial(...e){return w(ws,this,e[0])},exactPartial(...e){return w(Es,this,e[0],`exactPartial`)},required(...e){return pe(Ps,this,e[0])}});function q(e,t){return new us({type:`object`,shape:e??{},...C(t)})}function ds(e,t){return new us({type:`object`,shape:e,catchall:ss(),...C(t)})}var fs=R(`ZodUnion`,(e,t)=>{ar.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>qa(e,t,n,r),e.options=t.options});function ps(e,t){return new fs({type:`union`,options:e,...C(t)})}var ms=R(`ZodDiscriminatedUnion`,(e,t)=>{fs.init(e,t),sr.init(e,t)});function hs(e,t,n){return new ms({type:`union`,options:t,discriminator:e,...C(n)})}var gs=R(`ZodIntersection`,(e,t)=>{cr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ja(e,t,n,r)});function _s(e,t){return new gs({type:`intersection`,left:e,right:t})}var vs=R(`ZodRecord`,(e,t)=>{Eo(),dr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Qa(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function ys(e,t,n){return!t||!t._zod?new vs({type:`record`,keyType:G(),valueType:e,...C(t)}):new vs({type:`record`,keyType:e,valueType:t,...C(n)})}var bs=R(`ZodEnum`,(e,t)=>{fr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ba(e,t,n,r),e.enum=t.entries,e.options=[...e._zod.values];let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new bs({...t,checks:[],...C(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new bs({...t,checks:[],...C(r),entries:i})}});function J(e,t){return new bs({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...C(t)})}var xs=R(`ZodLiteral`,(e,t)=>{pr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Va(e,t,n,r),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function Y(e,t){return new xs({type:`literal`,values:Array.isArray(e)?e:[e],...C(t)})}var Ss=R(`ZodTransform`,(e,t)=>{Eo(),mr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ua(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new ie(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(ve(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,`input`in t||(t.input=n.value),t.inst??=e,n.issues.push(ve(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function Cs(e){return new Ss({type:`transform`,transform:e})}var ws=R(`ZodOptional`,(e,t)=>{gr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>co(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Ts(e){return new ws({type:`optional`,innerType:e})}var Es=R(`ZodExactOptional`,(e,t)=>{_r.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>co(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Ds(e){return new Es({type:`optional`,innerType:e})}var Os=R(`ZodNullable`,(e,t)=>{vr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>$a(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function ks(e){return new Os({type:`nullable`,innerType:e})}var As=R(`ZodDefault`,(e,t)=>{yr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ro(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function js(e,t){return new As({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():fe(t)}})}var Ms=R(`ZodPrefault`,(e,t)=>{xr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>io(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Ns(e,t){return new Ms({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():fe(t)}})}var Ps=R(`ZodNonOptional`,(e,t)=>{Sr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>eo(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Fs(e,t){return new Ps({type:`nonoptional`,innerType:e,...C(t)})}var Is=R(`ZodCatch`,(e,t)=>{Tr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ao(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Ls(e,t){return new Is({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:he(t)})}var Rs=R(`ZodPipe`,(e,t)=>{Er.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>oo(e,t,n,r),e.in=t.in,e.out=t.out});function zs(e,t){return new Rs({type:`pipe`,in:e,out:t})}var Bs=R(`ZodReadonly`,(e,t)=>{Or.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>so(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Vs(e){return new Bs({type:`readonly`,innerType:e})}var Hs=R(`ZodCustom`,(e,t)=>{Ar.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ha(e,t,n,r)});function Us(e,t={}){return ia(Hs,e,t)}function Ws(e,t){return aa(e,t)}function Gs(e){return Oi(ko,e)}var Ks=Te((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.for(`react.view_transition`),m=Symbol.iterator;function h(e){return typeof e!=`object`||!e?null:(e=m&&e[m]||e[`@@iterator`],typeof e==`function`?e:null)}var g={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},_=Object.assign,v={};function y(e,t,n){this.props=e,this.context=t,this.refs=v,this.updater=n||g}y.prototype.isReactComponent={},y.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},y.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function b(){}b.prototype=y.prototype;function x(e,t,n){this.props=e,this.context=t,this.refs=v,this.updater=n||g}var S=x.prototype=new b;S.constructor=x,_(S,y.prototype),S.isPureReactComponent=!0;var C=Array.isArray;function w(){}var T={H:null,A:null,T:null,S:null},E=Object.prototype.hasOwnProperty;function D(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function O(e,t){return D(e.type,t,e.props)}function k(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function A(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var j=/\/+/g;function M(e,t){return typeof e==`object`&&e&&e.key!=null?A(``+e.key):t.toString(36)}function ee(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(w,w):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function N(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,N(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+M(e,0):a,C(o)?(i=``,c!=null&&(i=c.replace(j,`$&/`)+`/`),N(o,r,i,``,function(e){return e})):o!=null&&(k(o)&&(o=O(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(j,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(C(e))for(var u=0;u<e.length;u++)a=e[u],s=l+M(a,u),c+=N(a,r,i,s,o);else if(u=h(e),typeof u==`function`)for(e=u.call(e),u=0;!(a=e.next()).done;)a=a.value,s=l+M(a,u++),c+=N(a,r,i,s,o);else if(s===`object`){if(typeof e.then==`function`)return N(ee(e),r,i,a,o);throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`)}return c}function te(e,t,n){if(e==null)return e;var r=[],i=0;return N(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function P(e){if(e._status===-1){var t=e._result,n=t();n.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t,n.status===void 0&&(n.status=`fulfilled`,n.value=t))},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t,n.status===void 0&&(n.status=`rejected`,n.reason=t))}),e._status===-1&&(e._status=0,e._result=n)}if(e._status===1)return e._result.default;throw e._result}var F=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)};function ne(e){var t=T.T,n={};n.types=t===null?null:t.types,T.T=n;try{var r=e(),i=T.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(w,F)}catch(e){F(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),T.T=t}}function I(e){var t=T.T;if(t!==null){var n=t.types;n===null?t.types=[e]:n.indexOf(e)===-1&&n.push(e)}else ne(I.bind(null,e))}var re={map:te,forEach:function(e,t,n){te(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return te(e,function(){t++}),t},toArray:function(e){return te(e,function(e){return e})||[]},only:function(e){if(!k(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=f,e.Children=re,e.Component=y,e.Fragment=r,e.Profiler=a,e.PureComponent=x,e.StrictMode=i,e.Suspense=l,e.ViewTransition=p,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=T,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return T.H.useMemoCache(e)}},e.addTransitionType=I,e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=_({},e.props),i=e.key;if(t!=null)for(a in t.key!==void 0&&(i=``+t.key),t)!E.call(t,a)||a===`key`||a===`__self`||a===`__source`||a===`ref`&&t.ref===void 0||(r[a]=t[a]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];r.children=o}return D(e.type,i,r)},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:o,_context:e},e},e.createElement=function(e,t,n){var r,i={},a=null;if(t!=null)for(r in t.key!==void 0&&(a=``+t.key),t)E.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];i.children=s}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return D(e,a,i)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=k,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:P}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=ne,e.unstable_useCacheRefresh=function(){return T.H.useCacheRefresh()},e.use=function(e){return T.H.use(e)},e.useActionState=function(e,t,n){return T.H.useActionState(e,t,n)},e.useCallback=function(e,t){return T.H.useCallback(e,t)},e.useContext=function(e){return T.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return T.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return T.H.useEffect(e,t)},e.useEffectEvent=function(e){return T.H.useEffectEvent(e)},e.useId=function(){return T.H.useId()},e.useImperativeHandle=function(e,t,n){return T.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return T.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return T.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return T.H.useMemo(e,t)},e.useOptimistic=function(e,t){return T.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return T.H.useReducer(e,t,n)},e.useRef=function(e){return T.H.useRef(e)},e.useState=function(e){return T.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return T.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return T.H.useTransition()},e.version=`19.3.0`})),qs=Te(((e,t)=>{t.exports=Ks()})),Js=Te((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),Ys=Te(((e,t)=>{t.exports=Js()})),X=Oe(qs(),1),Xs=Ys(),Zs=X.createContext(void 0),Qs=e=>{let t=X.useContext(Zs);if(e)return e;if(!t)throw Error(`No QueryClient set, use QueryClientProvider to set one`);return t},$s=({client:e,children:t})=>(X.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),(0,Xs.jsx)(Zs.Provider,{value:e,children:t})),ec={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},tc=new class{#e=ec;setTimeoutProvider(e){this.#e=e}setTimeout(e,t){return this.#e.setTimeout(e,t)}clearTimeout(e){this.#e.clearTimeout(e)}setInterval(e,t){return this.#e.setInterval(e,t)}clearInterval(e){this.#e.clearInterval(e)}};function nc(e){setTimeout(e,0)}var rc=typeof window>`u`||`Deno`in globalThis;function ic(){}function ac(e,t){return typeof e==`function`?e(t):e}function oc(e){return typeof e==`number`&&e>=0&&e!==1/0}function sc(e,t){return Math.max(e+(t||0)-Date.now(),0)}function Z(e,t){return typeof e==`function`?e(t):e}function cc(e,t){let{type:n=`all`,exact:r,fetchStatus:i,predicate:a,queryKey:o,stale:s}=e;if(o){if(r){if(t.queryHash!==uc(o,t.options))return!1}else if(!fc(t.queryKey,o))return!1}if(n!==`all`){let e=t.isActive();if(n===`active`&&!e||n===`inactive`&&e)return!1}return!(typeof s==`boolean`&&t.isStale()!==s||i&&i!==t.state.fetchStatus||a&&!a(t))}function lc(e,t){let{exact:n,status:r,predicate:i,mutationKey:a}=e;if(a){if(!t.options.mutationKey)return!1;if(n){if(dc(t.options.mutationKey)!==dc(a))return!1}else if(!fc(t.options.mutationKey,a))return!1}return!(r&&t.state.status!==r||i&&!i(t))}function uc(e,t){return(t?.queryKeyHashFn||dc)(e)}function dc(e){return JSON.stringify(e,(e,t)=>_c(t)?Object.keys(t).sort().reduce((e,n)=>(e[n]=t[n],e),{}):t)}function fc(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(e&&t&&typeof e==`object`&&typeof t==`object`){if(Array.isArray(e)&&Array.isArray(t)){if(t.length>e.length)return!1;for(let n=0;n<t.length;n++)if(!fc(e[n],t[n]))return!1;return!0}let n=Object.keys(t);for(let r of n)if(!fc(e[r],t[r]))return!1;return!0}return!1}var pc=Object.prototype.hasOwnProperty;function mc(e,t,n=0){if(e===t)return e;if(n>500)return t;let r=gc(e)&&gc(t);if(!r&&!(_c(e)&&_c(t)))return t;let i=(r?e:Object.keys(e)).length,a=r?t:Object.keys(t),o=a.length,s=r?Array(o):{},c=0;for(let l=0;l<o;l++){let o=r?l:a[l],u=e[o],d=t[o];if(u===d){s[o]=u,(r?l<i:pc.call(e,o))&&c++;continue}if(u===null||d===null||typeof u!=`object`||typeof d!=`object`){s[o]=d;continue}let f=mc(u,d,n+1);s[o]=f,f===u&&c++}return i===o&&c===i?e:s}function hc(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}function gc(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function _c(e){if(!vc(e))return!1;let t=Object.getPrototypeOf(e),n=t?.constructor;if(n===void 0)return!0;if(typeof n!=`function`)return!1;let r=n.prototype;return!(!vc(r)||!r.hasOwnProperty(`isPrototypeOf`)||t!==Object.prototype)}function vc(e){return Object.prototype.toString.call(e)===`[object Object]`}function yc(e){return new Promise(t=>{tc.setTimeout(t,e)})}function bc(e,t,n){return typeof n.structuralSharing==`function`?n.structuralSharing(e,t):n.structuralSharing===!1?t:mc(e,t)}function xc(e,t,n=0){let r=[...e,t];return n&&r.length>n?r.slice(1):r}function Sc(e,t,n=0){let r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var Cc=Symbol();function wc(e,t){return!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===Cc?()=>Promise.reject(Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function Tc(e,t){return typeof e==`function`?e(...t):!!e}function Ec(e,t,n){let r=!1,i;return Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(i??=t(),r?i:(r=!0,i.aborted?n():i.addEventListener(`abort`,n,{once:!0}),i))}),e}var Dc=()=>rc,Oc=()=>Dc(),kc=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},Ac=new class extends kc{#e;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e();return window.addEventListener(`visibilitychange`,t,!1),()=>{window.removeEventListener(`visibilitychange`,t)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(e=>{typeof e==`boolean`?this.setFocused(e):this.onFocus()})}setFocused(e){this.#e!==e&&(this.#e=e,this.onFocus())}onFocus(){let e=this.isFocused();this.listeners.forEach(t=>{t(e)})}isFocused(){return typeof this.#e==`boolean`?this.#e:globalThis.document?.visibilityState!==`hidden`}},jc=nc;function Mc(){let e=[],t=0,n=e=>{e()},r=e=>{e()},i=jc,a=r=>{t?e.push(r):i(()=>{n(r)})},o=()=>{let t=e;e=[],t.length&&i(()=>{r(()=>{t.forEach(e=>{n(e)})})})};return{batch:e=>{let n;t++;try{n=e()}finally{t--,t||o()}return n},batchCalls:e=>(...t)=>{a(()=>{e(...t)})},schedule:a,setNotifyFunction:e=>{n=e},setBatchNotifyFunction:e=>{r=e},setScheduler:e=>{i=e}}}var Nc=Mc(),Pc=new class extends kc{#e=!0;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e(!0),n=()=>e(!1);return window.addEventListener(`online`,t,!1),window.addEventListener(`offline`,n,!1),()=>{window.removeEventListener(`online`,t),window.removeEventListener(`offline`,n)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(this.setOnline.bind(this))}setOnline(e){this.#e!==e&&(this.#e=e,this.listeners.forEach(t=>{t(e)}))}isOnline(){return this.#e}};function Fc(e){return Math.min(1e3*2**e,3e4)}function Ic(e){return(e??`online`)!==`online`||Pc.isOnline()}var Lc=class extends Error{constructor(e){super(`CancelledError`),this.revert=e?.revert,this.silent=e?.silent}};function Rc(e){let t=!1,n=0,r,i=`pending`,a,o,s=new Promise((e,t)=>{a=e,o=t});s.catch(ic);let c=()=>i!==`pending`,l=t=>{if(!c()){let n=new Lc(t);h(n),e.onCancel?.(n)}},u=()=>{t=!0},d=()=>{t=!1},f=()=>Ac.isFocused()&&(e.networkMode===`always`||Pc.isOnline())&&e.canRun(),p=()=>Ic(e.networkMode)&&e.canRun(),m=e=>{c()||(r?.(),i=`resolved`,a(e))},h=e=>{c()||(r?.(),i=`rejected`,o(e))},g=()=>new Promise(t=>{r=e=>{(c()||f())&&t(e)},e.onPause?.()}).then(()=>{r=void 0,c()||e.onContinue?.()}),_=()=>{if(c())return;let r,i=n===0?e.initialPromise:void 0;try{r=i??e.fn()}catch(e){r=Promise.reject(e)}Promise.resolve(r).then(m).catch(r=>{if(c())return;let i=e.retry??(Oc()?0:3),a=e.retryDelay??Fc,o=typeof a==`function`?a(n,r):a,s=i===!0||typeof i==`number`&&n<i||typeof i==`function`&&i(n,r);if(t||!s){h(r);return}n++,e.onFail?.(n,r),yc(o).then(()=>f()?void 0:g()).then(()=>{t?h(r):_()})})};return{promise:s,status:()=>i,cancel:l,continue:()=>(r?.(),s),cancelRetry:u,continueRetry:d,canStart:p,start:()=>(p()?_():g().then(_),s)}}var zc=class{#e;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),oc(this.gcTime)&&(this.#e=tc.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(Oc()?1/0:3e5))}clearGcTimeout(){this.#e!==void 0&&(tc.clearTimeout(this.#e),this.#e=void 0)}};function Bc(e){return{onFetch:(t,n)=>{let r=t.options,i=t.fetchOptions?.meta?.fetchMore?.direction,a=t.state.data?.pages||[],o=t.state.data?.pageParams||[],s={pages:[],pageParams:[]},c=0,l=async()=>{let n=!1,l=e=>{Ec(e,()=>t.signal,()=>n=!0)},u=wc(t.options,t.fetchOptions),d=async(e,r,i)=>{if(n)return Promise.reject(t.signal.reason);if(r==null&&e.pages.length)return Promise.resolve(e);let a=(()=>{let e={client:t.client,queryKey:t.queryKey,pageParam:r,direction:i?`backward`:`forward`,meta:t.options.meta};return l(e),e})(),o=await u(a),{maxPages:s}=t.options,c=i?Sc:xc;return{pages:c(e.pages,o,s),pageParams:c(e.pageParams,r,s)}};if(i&&a.length){let e=i===`backward`,t=e?Hc:Vc,n={pages:a,pageParams:o};s=await d(n,t(r,n),e)}else{let t=e??a.length;do{let e=c===0?o[0]??r.initialPageParam:Vc(r,s);if(c>0&&e==null)break;s=await d(s,e),c++}while(c<t)}return s};t.fetchFn=t.options.persister?()=>t.options.persister?.(l,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n):l}}}function Vc(e,{pages:t,pageParams:n}){let r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function Hc(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}var Uc=class extends zc{#e;#t;#n;#r;#i;#a;#o;#s;constructor(e){super(),this.#s=!1,this.#o=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.#i=e.client,this.#r=this.#i.getQueryCache(),this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#t=Kc(this.options),this.state=e.state??this.#t,this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return this.#e}get promise(){return this.#a?.promise}setOptions(e){if(this.options={...this.#o,...e},e?._type&&(this.#e=e._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){let e=Kc(this.options);e.data!==void 0&&(this.setState(Gc(e.data,e.dataUpdatedAt)),this.#t=e)}}optionalRemove(){!this.observers.length&&this.state.fetchStatus===`idle`&&this.#r.remove(this)}setData(e,t){let n=bc(this.state.data,e,this.options);return this.#c({data:n,type:`success`,dataUpdatedAt:t?.updatedAt,manual:t?.manual}),n}setState(e){this.#c({type:`setState`,state:e})}cancel(e){let t=this.#a?.promise;return this.#a?.cancel(e),t?t.then(ic).catch(ic):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#t}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(e=>Z(e.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===Cc||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0&&this.observers.some(e=>Z(e.options.staleTime,this)===`static`)}isStale(){return this.getObserversCount()>0?this.observers.some(e=>e.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(e=0){return this.state.data===void 0?!0:e===`static`?!1:this.state.isInvalidated?!0:!sc(this.state.dataUpdatedAt,e)}onFocus(){this.observers.find(e=>e.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#a?.continue()}onOnline(){this.observers.find(e=>e.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#a?.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),this.#r.notify({type:`observerAdded`,query:this,observer:e}))}removeObserver(e){let t=this.observers.indexOf(e);t!==-1&&(this.observers.splice(t,1),this.observers.length||(this.#a&&(this.#s||this.state.fetchStatus===`paused`&&this.state.status===`pending`?this.#a.cancel({revert:!0}):this.#a.cancelRetry()),this.scheduleGc()),this.#r.notify({type:`observerRemoved`,query:this,observer:e}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||this.#c({type:`invalidate`})}async fetch(e,t){if(this.state.fetchStatus!==`idle`&&this.#a?.status()!==`rejected`){if(this.state.data!==void 0&&t?.cancelRefetch)this.cancel({silent:!0});else if(this.#a)return this.#a.continueRetry(),this.#a.promise}if(e&&this.setOptions(e),!this.options.queryFn){let e=this.observers.find(e=>e.options.queryFn);e&&this.setOptions(e.options)}let n=new AbortController,r=e=>{Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(this.#s=!0,n.signal)})},i=()=>{let e=wc(this.options,t),n=(()=>{let e={client:this.#i,queryKey:this.queryKey,meta:this.meta};return r(e),e})();return this.#s=!1,this.options.persister?this.options.persister(e,n,this):e(n)},a=(()=>{let e={fetchOptions:t,options:this.options,queryKey:this.queryKey,client:this.#i,state:this.state,fetchFn:i};return r(e),e})();(this.#e===`infinite`?Bc(this.options.pages):this.options.behavior)?.onFetch(a,this),this.#n=this.state,(this.state.fetchStatus===`idle`||this.state.fetchMeta!==a.fetchOptions?.meta)&&this.#c({type:`fetch`,meta:a.fetchOptions?.meta});let o=this.#a=Rc({initialPromise:t?.initialPromise,fn:a.fetchFn,onCancel:e=>{e instanceof Lc&&e.revert&&this.setState({...this.#n,fetchStatus:`idle`}),n.abort()},onFail:(e,t)=>{this.#c({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#c({type:`pause`})},onContinue:()=>{this.#c({type:`continue`})},retry:a.options.retry,retryDelay:a.options.retryDelay,networkMode:a.options.networkMode,canRun:()=>!0});try{let e=await o.start();if(e===void 0)throw Error(`${this.queryHash} data is undefined`);return this.setData(e),this.#r.config.onSuccess?.(e,this),this.#r.config.onSettled?.(e,this.state.error,this),e}catch(e){if(e instanceof Lc){if(e.silent)return this.#a.promise;if(e.revert){if(this.state.data===void 0)throw e;return this.state.data}}throw this.#c({type:`error`,error:e}),this.#r.config.onError?.(e,this),this.#r.config.onSettled?.(this.state.data,e,this),e}finally{this.#a===o&&(this.#a=void 0),this.scheduleGc()}}#c(e){let t=t=>{switch(e.type){case`failed`:return{...t,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case`pause`:return{...t,fetchStatus:`paused`};case`continue`:return{...t,fetchStatus:`fetching`};case`fetch`:return{...t,...Wc(t.data,this.options),fetchMeta:e.meta??null};case`success`:let n={...t,...Gc(e.data,e.dataUpdatedAt),dataUpdateCount:t.dataUpdateCount+1,...!e.manual&&{fetchStatus:`idle`,fetchFailureCount:0,fetchFailureReason:null}};return this.#n=e.manual?n:void 0,n;case`error`:let r=e.error;return{...t,error:r,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:`idle`,status:`error`,isInvalidated:!0};case`invalidate`:return{...t,isInvalidated:!0};case`setState`:return{...t,...e.state}}};this.state=t(this.state),Nc.batch(()=>{this.observers.slice().forEach(e=>{e.onQueryUpdate()}),this.#r.notify({query:this,type:`updated`,action:e})})}};function Wc(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:Ic(t.networkMode)?`fetching`:`paused`,...e===void 0&&{error:null,status:`pending`}}}function Gc(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:`success`}}function Kc(e){let t=typeof e.initialData==`function`?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt==`function`?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?`success`:`pending`,fetchStatus:`idle`}}var qc=class extends kc{#e;#t=void 0;#n=void 0;#r=void 0;#i;#a;#o;#s;#c;#l;#u;#d;#f;#p=new Set;constructor(e,t){super(),this.options=t,this.#e=e,this.#o=null,this.bindMethods(),this.setOptions(t)}bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#t.addObserver(this),Yc(this.#t,this.options)?this.#m():this.updateResult(),this.#y())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return Xc(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return Xc(this.#t,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#b(),this.#x(),this.#t.removeObserver(this)}setOptions(e){let t=this.options,n=this.#t;if(this.options=this.#e.defaultQueryOptions(e),this.options.enabled!==void 0&&typeof this.options.enabled!=`boolean`&&typeof this.options.enabled!=`function`&&typeof Z(this.options.enabled,this.#t)!=`boolean`)throw Error(`Expected enabled to be a boolean or a callback that returns a boolean`);this.#S(),this.#t.setOptions(this.options),t._defaulted&&!hc(this.options,t)&&this.#e.getQueryCache().notify({type:`observerOptionsUpdated`,query:this.#t,observer:this});let r=this.hasListeners();r&&Zc(this.#t,n,this.options,t)&&this.#m(),this.updateResult(),r&&(this.#t!==n||Z(this.options.enabled,this.#t)!==Z(t.enabled,this.#t)||Z(this.options.staleTime,this.#t)!==Z(t.staleTime,this.#t))&&this.#g();let i=this.#_();r&&(this.#t!==n||Z(this.options.enabled,this.#t)!==Z(t.enabled,this.#t)||i!==this.#f)&&this.#v(i)}getOptimisticResult(e){let t=this.#e.getQueryCache().build(this.#e,e),n=this.createResult(t,e);return hc(this.getCurrentResult(),n)||(this.#r=n,this.#a=this.options,this.#i=this.#t.state),n}getCurrentResult(){return this.#r}trackResult(e,t){return new Proxy(e,{get:(e,n)=>(this.trackProp(n),t?.(n),Reflect.get(e,n))})}trackProp(e){this.#p.add(e)}getCurrentQuery(){return this.#t}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){let t=this.#e.defaultQueryOptions(e),n=this.#e.getQueryCache().build(this.#e,t),r=()=>{},i,a=new Promise(e=>{i=e,r=this.#e.getQueryCache().subscribe(i=>{i.type===`updated`&&i.query.queryHash===n.queryHash&&n.state.data!==void 0&&(r(),e(this.createResult(n,t)))})});return Promise.race([n.fetch().then(()=>{let e=this.createResult(n,t);return i?.(e),e}).finally(()=>{r()}),a])}fetch(e){return this.#m({...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#r))}#m(e){this.#S();let t=this.#t.fetch(this.options,e);return e?.throwOnError||(t=t.catch(ic)),t}#h(e){return!Oc()&&Z(this.options.enabled,this.#t)!==!1&&oc(e)}#g(){this.#b();let e=Z(this.options.staleTime,this.#t);if(this.#r.isStale||!this.#h(e))return;let t=sc(this.#r.dataUpdatedAt,e)+1;this.#u=tc.setTimeout(()=>{this.#r.isStale||this.updateResult()},t)}#_(){return Z(this.options.refetchInterval,this.#t)??!1}#v(e){this.#x(),this.#f=e,this.#f!==0&&this.#h(this.#f)&&(this.#d=tc.setInterval(()=>{(this.options.refetchIntervalInBackground||Ac.isFocused())&&this.#m()},this.#f))}#y(){this.#g(),this.#v(this.#_())}#b(){this.#u!==void 0&&(tc.clearTimeout(this.#u),this.#u=void 0)}#x(){this.#d!==void 0&&(tc.clearInterval(this.#d),this.#d=void 0)}createResult(e,t){let n=this.#t,r=this.options,i=this.#r,a=this.#i,o=this.#a,s=e===n?this.#n:e.state,{state:c}=e,l={...c},u=!1,d;if(t._optimisticResults){let i=this.hasListeners(),a=!i&&Yc(e,t),o=i&&Zc(e,n,t,r);(a||o)&&(l={...l,...Wc(c.data,e.options)}),t._optimisticResults===`isRestoring`&&(l.fetchStatus=`idle`)}let{error:f,errorUpdatedAt:p,status:m}=l;d=l.data;let h=!1;if(t.placeholderData!==void 0&&d===void 0&&m===`pending`){let e;i?.isPlaceholderData&&t.placeholderData===o?.placeholderData?(e=i.data,h=!0):e=typeof t.placeholderData==`function`?t.placeholderData(this.#l?.state.data,this.#l):t.placeholderData,e!==void 0&&(m=`success`,d=bc(i?.data,e,t),u=!0)}if(t.select&&d!==void 0&&!h){if(i&&d===a?.data&&t.select===this.#s)d=this.#c;else try{this.#s=t.select,d=t.select(d),d=bc(i?.data,d,t),this.#c=d,this.#o=null}catch(e){this.#o=e}}else d===void 0&&(this.#o=null);this.#o&&(f=this.#o,d=this.#c,p=Date.now(),m=`error`,u=!1);let g=l.fetchStatus===`fetching`,_=m===`pending`,v=m===`error`,y=_&&g,b=d!==void 0;return{status:m,fetchStatus:l.fetchStatus,isPending:_,isSuccess:m===`success`,isError:v,isInitialLoading:y,isLoading:y,data:d,dataUpdatedAt:l.dataUpdatedAt,error:f,errorUpdatedAt:p,failureCount:l.fetchFailureCount,failureReason:l.fetchFailureReason,errorUpdateCount:l.errorUpdateCount,isFetched:e.isFetched(),isFetchedAfterMount:l.dataUpdateCount>s.dataUpdateCount||l.errorUpdateCount>s.errorUpdateCount,isFetching:g,isRefetching:g&&!_,isLoadingError:v&&!b,isPaused:l.fetchStatus===`paused`,isPlaceholderData:u,isRefetchError:v&&b,isStale:Qc(e,t),refetch:this.refetch,isEnabled:Z(t.enabled,e)!==!1}}updateResult(){let e=this.#r,t=this.createResult(this.#t,this.options);if(this.#i=this.#t.state,this.#a=this.options,this.#i.data!==void 0&&(this.#l=this.#t),hc(t,e))return;this.#r=t;let n=(()=>{if(!e)return!0;let{notifyOnChangeProps:t}=this.options,n=typeof t==`function`?t():t;if(n===`all`||!n&&!this.#p.size)return!0;let r=new Set(n??this.#p);return this.options.throwOnError&&r.add(`error`),Object.keys(this.#r).some(t=>{let n=t;return this.#r[n]!==e[n]&&r.has(n)})})();Nc.batch(()=>{n&&this.listeners.forEach(e=>{e(this.#r)}),this.#e.getQueryCache().notify({query:this.#t,type:`observerResultsUpdated`})})}#S(){let e=this.#e.getQueryCache().build(this.#e,this.options);if(e===this.#t)return;let t=this.#t;this.#t=e,this.#n=e.state,this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#y()}};function Jc(e,t){return Z(t.enabled,e)!==!1&&e.state.data===void 0&&(e.state.status!==`error`||Z(t.retryOnMount,e)!==!1)}function Yc(e,t){return Jc(e,t)||e.state.data!==void 0&&Xc(e,t,t.refetchOnMount)}function Xc(e,t,n){if(Z(t.enabled,e)!==!1&&Z(t.staleTime,e)!==`static`){let r=Z(n,e);return r===`always`||r!==!1&&Qc(e,t)}return!1}function Zc(e,t,n,r){return(e!==t||Z(r.enabled,e)===!1)&&(!n.suspense||e.state.status!==`error`)&&Qc(e,n)}function Qc(e,t){return Z(t.enabled,e)!==!1&&e.isStaleByTime(Z(t.staleTime,e))}var $c=class extends zc{#e;#t;#n;#r;constructor(e){super(),this.#e=e.client,this.mutationId=e.mutationId,this.#n=e.mutationCache,this.#t=[],this.state=e.state||el(),this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options=e,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){this.#t.includes(e)||(this.#t.push(e),this.clearGcTimeout(),this.#n.notify({type:`observerAdded`,mutation:this,observer:e}))}removeObserver(e){this.#t=this.#t.filter(t=>t!==e),this.scheduleGc(),this.#n.notify({type:`observerRemoved`,mutation:this,observer:e})}optionalRemove(){this.#t.length||(this.state.status===`pending`?this.scheduleGc():this.#n.remove(this))}continue(){return this.#r?.continue()??(this.state.status===`pending`?this.execute(this.state.variables):Promise.resolve())}async execute(e){let t=()=>{this.#i({type:`continue`})},n={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey},r=this.#r=Rc({fn:()=>this.options.mutationFn?this.options.mutationFn(e,n):Promise.reject(Error(`No mutationFn found`)),onFail:(e,t)=>{this.#i({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#i({type:`pause`})},onContinue:t,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#n.canRun(this)}),i=this.state.status===`pending`,a=!r.canStart();try{if(i)t();else{this.#i({type:`pending`,variables:e,isPaused:a}),this.#n.config.onMutate&&await this.#n.config.onMutate(e,this,n);let t=await this.options.onMutate?.(e,n);t!==this.state.context&&this.#i({type:`pending`,context:t,variables:e,isPaused:a})}let o=await r.start();return await this.#n.config.onSuccess?.(o,e,this.state.context,this,n),await this.options.onSuccess?.(o,e,this.state.context,n),await this.#n.config.onSettled?.(o,null,this.state.variables,this.state.context,this,n),await this.options.onSettled?.(o,null,e,this.state.context,n),this.#i({type:`success`,data:o}),o}catch(t){try{await this.#n.config.onError?.(t,e,this.state.context,this,n)}catch(e){Promise.reject(e)}try{await this.options.onError?.(t,e,this.state.context,n)}catch(e){Promise.reject(e)}try{await this.#n.config.onSettled?.(void 0,t,this.state.variables,this.state.context,this,n)}catch(e){Promise.reject(e)}try{await this.options.onSettled?.(void 0,t,e,this.state.context,n)}catch(e){Promise.reject(e)}throw this.#i({type:`error`,error:t}),t}finally{this.#r===r&&(this.#r=void 0),this.#n.runNext(this)}}#i(e){let t=t=>{switch(e.type){case`failed`:return{...t,failureCount:e.failureCount,failureReason:e.error};case`pause`:return{...t,isPaused:!0};case`continue`:return{...t,isPaused:!1};case`pending`:return{...t,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:e.isPaused,status:`pending`,variables:e.variables,submittedAt:Date.now()};case`success`:return{...t,data:e.data,failureCount:0,failureReason:null,error:null,status:`success`,isPaused:!1};case`error`:return{...t,data:void 0,error:e.error,failureCount:t.failureCount+1,failureReason:e.error,isPaused:!1,status:`error`}}};this.state=t(this.state),Nc.batch(()=>{this.#t.forEach(t=>{t.onMutationUpdate(e)}),this.#n.notify({mutation:this,type:`updated`,action:e})})}};function el(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:`idle`,variables:void 0,submittedAt:0}}var tl=class extends kc{#e;#t=void 0;#n;#r;constructor(e,t){super(),this.#e=e,this.setOptions(t),this.bindMethods(),this.#i()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(e){let t=this.options;this.options=this.#e.defaultMutationOptions(e),hc(this.options,t)||this.#e.getMutationCache().notify({type:`observerOptionsUpdated`,mutation:this.#n,observer:this}),t?.mutationKey&&this.options.mutationKey&&dc(t.mutationKey)!==dc(this.options.mutationKey)?this.reset():this.#n?.state.status===`pending`&&this.#n.setOptions(this.options)}onSubscribe(){this.listeners.size===1&&this.#n&&(this.#n.addObserver(this),this.#i())}onUnsubscribe(){this.hasListeners()||this.#n?.removeObserver(this)}onMutationUpdate(e){this.#i(),this.#a(e)}getCurrentResult(){return this.#t}reset(){this.#n?.removeObserver(this),this.#n=void 0,this.#i(),this.#a()}mutate(e,t){return this.#r=t,this.#n?.removeObserver(this),this.#n=this.#e.getMutationCache().build(this.#e,this.options),this.#n.addObserver(this),this.#n.execute(e)}#i(){let e=this.#n?.state??el();this.#t={...e,isPending:e.status===`pending`,isSuccess:e.status===`success`,isError:e.status===`error`,isIdle:e.status===`idle`,mutate:this.mutate,reset:this.reset}}#a(e){Nc.batch(()=>{if(this.#r&&this.hasListeners()){let t=this.#t.variables,n=this.#t.context,r={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};if(e?.type===`success`){try{this.#r.onSuccess?.(e.data,t,n,r)}catch(e){Promise.reject(e)}try{this.#r.onSettled?.(e.data,null,t,n,r)}catch(e){Promise.reject(e)}}else if(e?.type===`error`){try{this.#r.onError?.(e.error,t,n,r)}catch(e){Promise.reject(e)}try{this.#r.onSettled?.(void 0,e.error,t,n,r)}catch(e){Promise.reject(e)}}}this.listeners.forEach(e=>{e(this.#t)})})}},nl=X.createContext(!1),rl=()=>X.useContext(nl);nl.Provider;function il(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var al=X.createContext(il()),ol=()=>X.useContext(al),sl=(e,t,n)=>{let r=n?.state.error&&typeof e.throwOnError==`function`?Tc(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||r)&&(t.isReset()||(e.retryOnMount=!1))},cl=e=>{X.useEffect(()=>{e.clearReset()},[e])},ll=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:i})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(i&&e.data===void 0||Tc(n,[e.error,r])),ul=e=>{if(e.suspense){let t=1e3,n=e=>e===`static`?e:Math.max(e??t,t),r=e.staleTime;e.staleTime=typeof r==`function`?(...e)=>n(r(...e)):n(r),typeof e.gcTime==`number`&&(e.gcTime=Math.max(e.gcTime,t))}},dl=(e,t)=>e?.suspense&&t.isPending,fl=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function pl(e,t,n){let r=rl(),i=ol(),a=Qs(n),o=a.defaultQueryOptions(e),s=a.getQueryCache().get(o.queryHash),c=e.subscribed!==!1;o._optimisticResults=r?`isRestoring`:c?`optimistic`:void 0,ul(o),sl(o,i,s),cl(i);let[l]=X.useState(()=>new t(a,o)),u=l.getOptimisticResult(o),d=!r&&c;if(X.useSyncExternalStore(X.useCallback(e=>{let t=d?l.subscribe(Nc.batchCalls(e)):ic;return l.updateResult(),t},[l,d]),()=>l.getCurrentResult(),()=>l.getCurrentResult()),X.useEffect(()=>{l.setOptions(o)},[o,l]),dl(o,u))throw fl(o,l,i);if(ll({result:u,errorResetBoundary:i,throwOnError:o.throwOnError,query:s,suspense:o.suspense}))throw u.error;return o.notifyOnChangeProps?u:l.trackResult(u)}function ml(e,t){return pl(e,qc,t)}function hl(e,t){let n=Qs(t),[r]=X.useState(()=>new tl(n,e));X.useEffect(()=>{r.setOptions(e)},[r,e]);let i=X.useSyncExternalStore(X.useCallback(e=>r.subscribe(Nc.batchCalls(e)),[r]),()=>r.getCurrentResult(),()=>r.getCurrentResult()),a=X.useCallback((...e)=>{r.mutate(e[0],e[1]).catch(ic)},[r]);if(i.error&&Tc(r.options.throwOnError,[i.error]))throw i.error;return{...i,mutate:a,mutateAsync:i.mutate}}var gl=/^(?:[a-z][a-z0-9+.-]*:|[\\/]{2})/i,_l=/^[\\/]{2}/;function vl(e,t){return t+e.replace(/\\/g,`/`)}var yl=`popstate`;function bl(e){return typeof e==`object`&&!!e&&`pathname`in e&&`search`in e&&`hash`in e&&`state`in e&&`key`in e}function xl(e={}){function t(e,t){let n=t.state?.masked,{pathname:r,search:i,hash:a}=n||e.location;return Tl(``,{pathname:r,search:i,hash:a},t.state&&t.state.usr||null,t.state&&t.state.key||`default`,n?{pathname:e.location.pathname,search:e.location.search,hash:e.location.hash}:void 0)}function n(e,t){return typeof t==`string`?t:El(t)}return Ol(t,n,null,e)}function Q(e,t){if(e===!1||e==null)throw Error(t)}function Sl(e,t){if(!e){typeof console<`u`&&console.warn(t);try{throw Error(t)}catch{}}}function Cl(){return Math.random().toString(36).substring(2,10)}function wl(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function Tl(e,t,n=null,r,i){return{pathname:typeof e==`string`?e:e.pathname,search:``,hash:``,...typeof t==`string`?Dl(t):t,state:n,key:t&&t.key||r||Cl(),mask:i}}function El({pathname:e=`/`,search:t=``,hash:n=``}){return t&&t!==`?`&&(e+=t.charAt(0)===`?`?t:`?`+t),n&&n!==`#`&&(e+=n.charAt(0)===`#`?n:`#`+n),e}function Dl(e){let t={};if(e){let n=e.indexOf(`#`);n>=0&&(t.hash=e.substring(n),e=e.substring(0,n));let r=e.indexOf(`?`);r>=0&&(t.search=e.substring(r),e=e.substring(0,r)),e&&(t.pathname=e)}return t}function Ol(e,t,n,r={}){let{window:i=document.defaultView,v5Compat:a=!1}=r,o=i.history,s=`POP`,c=null,l=u();l??(l=0,o.replaceState({...o.state,idx:l},``));function u(){return(o.state||{idx:null}).idx}function d(){s=`POP`;let e=u(),t=e==null?null:e-l;l=e,c&&c({action:s,location:h.location,delta:t})}function f(e,t){s=`PUSH`;let r=bl(e)?e:Tl(h.location,e,t);n&&n(r,e),l=u()+1;let d=wl(r,l),f=h.createHref(r.mask||r);try{o.pushState(d,``,f)}catch(e){if(e instanceof DOMException&&e.name===`DataCloneError`)throw e;i.location.assign(f)}a&&c&&c({action:s,location:h.location,delta:1})}function p(e,t){s=`REPLACE`;let r=bl(e)?e:Tl(h.location,e,t);n&&n(r,e),l=u();let i=wl(r,l),d=h.createHref(r.mask||r);o.replaceState(i,``,d),a&&c&&c({action:s,location:h.location,delta:0})}function m(e){return kl(i,e)}let h={get action(){return s},get location(){return e(i,o)},listen(e){if(c)throw Error(`A history only accepts one active listener`);return i.addEventListener(yl,d),c=e,()=>{i.removeEventListener(yl,d),c=null}},createHref(e){return t(i,e)},createURL:m,encodeLocation(e){let t=m(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:f,replace:p,go(e){return o.go(e)}};return h}function kl(e,t,n=!1){let r=`http://localhost`;e&&(r=e.location.origin===`null`?e.location.href:e.location.origin),Q(r,`No window.location.(origin|href) available to create URL`);let i=typeof t==`string`?t:El(t);return i=i.replace(/ $/,`%20`),!n&&_l.test(i)&&(i=r+i),new URL(i,r)}var Al=class{#e=new Map;constructor(e){if(e)for(let[t,n]of e)this.set(t,n)}get(e){if(this.#e.has(e))return this.#e.get(e);if(e.defaultValue!==void 0)return e.defaultValue;throw Error(`No value found for context`)}set(e,t){this.#e.set(e,t)}},jl=new Set([`lazy`,`caseSensitive`,`path`,`id`,`index`,`children`,`unstable_validateParams`]);function Ml(e){return jl.has(e)}var Nl=new Set([`lazy`,`caseSensitive`,`path`,`id`,`index`,`middleware`,`children`,`unstable_validateParams`]);function Pl(e){return Nl.has(e)}function Fl(e){return e.index===!0}function Il(e){let t={};return e.Component&&Object.assign(t,{element:X.createElement(e.Component),Component:void 0}),e.HydrateFallback&&Object.assign(t,{hydrateFallbackElement:X.createElement(e.HydrateFallback),HydrateFallback:void 0}),e.ErrorBoundary&&Object.assign(t,{errorElement:X.createElement(e.ErrorBoundary),ErrorBoundary:void 0}),t}function Ll(e,t=Il,n=[],r={},i=!1){return e.map((e,a)=>{let o=[...n,String(a)],s=typeof e.id==`string`?e.id:o.join(`-`);if(Q(e.index!==!0||!e.children,`Cannot specify children on an index route`),Q(i||!r[s],`Found a route id collision on id "${s}". Route id's must be globally unique within Data Router usages`),Fl(e)){let n={...e,id:s};return r[s]=Rl(n,t(n)),n}{let n={...e,id:s,children:void 0};return r[s]=Rl(n,t(n)),e.children&&(n.children=Ll(e.children,t,o,r,i)),n}})}function Rl(e,t){return Object.assign(e,{...t,...typeof t.lazy==`object`&&t.lazy!=null?{lazy:{...e.lazy,...t.lazy}}:{}})}function zl(e,t,n=`/`){return Bl(e,t,n,!1)}function Bl(e,t,n,r,i){let a=cu((typeof t==`string`?Dl(t):t).pathname||`/`,n);if(a==null)return null;let o=i??Hl(e),s=null,c=su(a);for(let e=0;s==null&&e<o.length;++e)s=ru(o[e],c,r);return s}function Vl(e,t){let{route:n,pathname:r,params:i}=e;return{id:n.id,pathname:r,params:i,loaderData:t[n.id],handle:n.handle}}function Hl(e){let t=Ul(e);return Gl(t),t}function Ul(e,t=[],n=[],r=``,i=!1){let a=(e,a,o=i,s)=>{let c={relativePath:s===void 0?e.path||``:s,caseSensitive:e.caseSensitive===!0,childrenIndex:a,route:e};if(c.relativePath.startsWith(`/`)){if(!c.relativePath.startsWith(r)&&o)return;Q(c.relativePath.startsWith(r),`Absolute route path "${c.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),c.relativePath=c.relativePath.slice(r.length)}let l=vu([r,c.relativePath]),u=n.concat(c);e.children&&e.children.length>0&&(Q(e.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${l}".`),Ul(e.children,t,u,l,o)),(e.path!=null||e.index)&&t.push({path:l,score:tu(l,e.index),routesMeta:u.map((e,t)=>{let[n,r]=ou(e.relativePath,e.caseSensitive,t===u.length-1);return{...e,matcher:n,compiledParams:r}})})};return e.forEach((e,t)=>{if(e.path===``||!e.path?.includes(`?`))a(e,t);else for(let n of Wl(e.path))a(e,t,!0,n)}),t}function Wl(e){let t=e.split(`/`);if(t.length===0)return[];let[n,...r]=t,i=n.endsWith(`?`),a=n.replace(/\?$/,``);if(r.length===0)return i?[a,``]:[a];let o=Wl(r.join(`/`)),s=[];return s.push(...o.map(e=>e===``?a:[a,e].join(`/`))),i&&s.push(...o),s.map(t=>e.startsWith(`/`)&&t===``?`/`:t)}function Gl(e){e.sort((e,t)=>e.score===t.score?nu(e.routesMeta.map(e=>e.childrenIndex),t.routesMeta.map(e=>e.childrenIndex)):t.score-e.score)}var Kl=/^:[\w-]+$/,ql=/^:[\w-]+/,Jl=3.5,Yl=3,Xl=2,Zl=1,Ql=10,$l=-2,eu=e=>e===`*`;function tu(e,t){let n=e.split(`/`),r=n.length;return n.some(eu)&&(r+=$l),t&&(r+=Xl),n.filter(e=>!eu(e)).reduce((e,t)=>e+(Kl.test(t)?Yl:ql.test(t)?Jl:t===``?Zl:Ql),r)}function nu(e,t){return e.length===t.length&&e.slice(0,-1).every((e,n)=>e===t[n])?e[e.length-1]-t[t.length-1]:0}function ru(e,t,n=!1){let{routesMeta:r}=e,i={},a=`/`,o=[];for(let e=0;e<r.length;++e){let s=r[e],c=e===r.length-1,l=a===`/`?t:t.slice(a.length)||`/`,u={path:s.relativePath,caseSensitive:s.caseSensitive,end:c},d=s.matcher&&s.compiledParams?au(u,l,s.matcher,s.compiledParams):iu(u,l),f=s.route;if(!d&&c&&n&&!r[r.length-1].route.index&&(d=iu({path:s.relativePath,caseSensitive:s.caseSensitive,end:!1},l)),!d)return null;Object.assign(i,d.params),o.push({params:i,pathname:vu([a,d.pathname]),pathnameBase:bu(vu([a,d.pathnameBase])),route:f}),d.pathnameBase!==`/`&&(a=vu([a,d.pathnameBase]))}return o}function iu(e,t){typeof e==`string`&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=ou(e.path,e.caseSensitive,e.end);return au(e,t,n,r)}function au(e,t,n,r){let i=t.match(n);if(!i)return null;let a=i[0],o=yu(a,1),s=i.slice(1);return{params:r.reduce((e,{paramName:t,isOptional:n},r)=>{if(t===`*`){let e=s[r]||``;o=yu(a.slice(0,a.length-e.length),1)}let i=s[r];return e[t]=n&&!i?void 0:(i||``).replace(/%2F/g,`/`),e},{}),pathname:a,pathnameBase:o,pattern:e}}function ou(e,t=!1,n=!0){Sl(e===`*`||!e.endsWith(`*`)||e.endsWith(`/*`),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,`/*`)}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,`/*`)}".`);let r=[],i=`^`+e.replace(/\/*\*?$/,``).replace(/^\/*/,`/`).replace(/[\\.*+^${}|()[\]]/g,`\\$&`).replace(/\/:([\w-]+)(\?)?/g,(e,t,n,i,a)=>{if(r.push({paramName:t,isOptional:n!=null}),n){let t=a.charAt(i+e.length);return t&&t!==`/`?`/([^\\/]*)`:`(?:/([^\\/]*))?`}return`/([^\\/]+)`}).replace(/\/([\w-]+)\?(?=\/|$|\()/g,`(?:/$1)?`);return e.endsWith(`*`)?(r.push({paramName:`*`}),i+=e===`*`||e===`/*`?`(.*)$`:`(?:\\/(.+)|\\/*)$`):n?i+=`\\/*$`:e!==``&&e!==`/`&&(i+=`(?:(?=\\/|$))`),[new RegExp(i,t?void 0:`i`),r]}function su(e){try{return e.split(`/`).map(e=>decodeURIComponent(e).replace(/\//g,`%2F`)).join(`/`)}catch(t){return Sl(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function cu(e,t){if(t===`/`)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith(`/`)?t.length-1:t.length,r=e.charAt(n);return r&&r!==`/`?null:e.slice(n)||`/`}function lu({basename:e,pathname:t}){return t===`/`?e:vu([e,t])}var uu=e=>gl.test(e);function du(e,t=`/`){let{pathname:n,search:r=``,hash:i=``}=typeof e==`string`?Dl(e):e,a;return n?(n=_u(n),a=n.startsWith(`/`)||n.startsWith(`\\`)?fu(n.substring(1),`/`):fu(n,t)):a=t,{pathname:a,search:xu(r),hash:Su(i)}}function fu(e,t){let n=yu(t).split(`/`);return e.split(`/`).forEach(e=>{e===`..`?n.length>1&&n.pop():e!==`.`&&n.push(e)}),n.length>1?n.join(`/`):`/`}function pu(e,t,n,r){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${n}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function mu(e){return e.filter((e,t)=>t===0||e.route.path&&e.route.path.length>0)}function hu(e){let t=mu(e);return t.map((e,n)=>n===t.length-1?e.pathname:e.pathnameBase)}function gu(e,t,n,r=!1){let i;typeof e==`string`?i=Dl(e):(i={...e},Q(!i.pathname||!i.pathname.includes(`?`),pu(`?`,`pathname`,`search`,i)),Q(!i.pathname||!i.pathname.includes(`#`),pu(`#`,`pathname`,`hash`,i)),Q(!i.search||!i.search.includes(`#`),pu(`#`,`search`,`hash`,i)));let a=e===``||i.pathname===``,o=a?`/`:i.pathname,s;if(o==null)s=n;else{let e=t.length-1;if(!r&&o.startsWith(`..`)){let t=o.split(`/`);for(;t[0]===`..`;)t.shift(),--e;i.pathname=t.join(`/`)}s=e>=0?t[e]:`/`}let c=du(i,s),l=o&&o!==`/`&&o.endsWith(`/`),u=(a||o===`.`)&&n.endsWith(`/`);return!c.pathname.endsWith(`/`)&&(l||u)&&(c.pathname+=`/`),c}var _u=e=>e.replace(/[\\/]{2,}/g,`/`),vu=e=>_u(e.join(`/`));function yu(e,t=0){let n=e.length;for(;n>t&&e.charCodeAt(n-1)===47;)n--;return n===e.length?e:e.slice(0,n)}var bu=e=>yu(e).replace(/^\/*/,`/`),xu=e=>!e||e===`?`?``:e.startsWith(`?`)?e:`?`+e,Su=e=>!e||e===`#`?``:e.startsWith(`#`)?e:`#`+e,Cu=[`EvalError`,`RangeError`,`ReferenceError`,`SyntaxError`,`TypeError`,`URIError`],wu=class{status;statusText;data;error;internal;constructor(e,t,n,r=!1){this.status=e,this.statusText=t||``,this.internal=r,n instanceof Error?(this.data=n.toString(),this.error=n):this.data=n}};function Tu(e){return e!=null&&typeof e.status==`number`&&typeof e.statusText==`string`&&typeof e.internal==`boolean`&&`data`in e}function Eu(e){return vu(e.map(e=>e.route.path).filter(Boolean))||`/`}function Du(e,t){let n=new URL(typeof e==`string`||e instanceof URL?e:e.url),r=typeof t==`string`?Dl(t):t;if(n.pathname=r.pathname||`/`,r.search){let e=new URLSearchParams(r.search),t=e.getAll(`index`);e.delete(`index`);for(let n of t.filter(Boolean))e.append(`index`,n);let i=e.toString();n.search=i?`?${i}`:``}else n.search=``;return n.hash=r.hash||``,n}var Ou=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;function ku(e,t){let n=e;if(typeof n!=`string`||!gl.test(n))return{absoluteURL:void 0,isExternal:!1,to:n};let r=n,i=!1;if(Ou)try{let e=new URL(window.location.href),r=_l.test(n)?new URL(vl(n,e.protocol)):new URL(n),a=cu(r.pathname,t);r.origin===e.origin&&a!=null?n=a+r.search+r.hash:i=!0}catch{Sl(!1,`<Link to="${n}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:r,isExternal:i,to:n}}var Au=Symbol(`Uninstrumented`),ju=new WeakMap;function Mu(e,t){let n={lazy:[],"lazy.loader":[],"lazy.action":[],"lazy.middleware":[],middleware:[],loader:[],action:[]};e.forEach(e=>e({id:t.id,index:t.index,path:t.path,instrument(e){e.lazy!=null&&n.lazy.push(e.lazy),e[`lazy.loader`]!=null&&n[`lazy.loader`].push(e[`lazy.loader`]),e[`lazy.action`]!=null&&n[`lazy.action`].push(e[`lazy.action`]),e[`lazy.middleware`]!=null&&n[`lazy.middleware`].push(e[`lazy.middleware`]),e.middleware!=null&&n.middleware.push(e.middleware),e.loader!=null&&n.loader.push(e.loader),e.action!=null&&n.action.push(e.action)}}));let r={};if(typeof t.lazy==`function`&&n.lazy.length>0){let e=t.lazy;r.lazy=async(...t)=>Ru(await zu(n.lazy,void 0,()=>e(...t),Bu))}if(typeof t.lazy==`object`){let e=t.lazy;if(typeof e.middleware==`function`&&n[`lazy.middleware`].length>0){let t=e.middleware;r.lazy=Object.assign(r.lazy||{},{middleware:async(...e)=>Ru(await zu(n[`lazy.middleware`],void 0,()=>t(...e),Bu))})}if(typeof e.loader==`function`&&n[`lazy.loader`].length>0){let t=e.loader;r.lazy=Object.assign(r.lazy||{},{loader:async(...e)=>Ru(await zu(n[`lazy.loader`],void 0,()=>t(...e),Bu))})}if(typeof e.action==`function`&&n[`lazy.action`].length>0){let t=e.action;r.lazy=Object.assign(r.lazy||{},{action:async(...e)=>Ru(await zu(n[`lazy.action`],void 0,()=>t(...e),Bu))})}}if(typeof t.loader==`function`&&n.loader.length>0){let e=Pu(t.loader),i=async(...t)=>Ru(await zu(n.loader,Vu(t[0]),()=>e(...t),Bu));e.hydrate===!0&&(i.hydrate=!0),Fu(i,e),r.loader=i}if(typeof t.action==`function`&&n.action.length>0){let e=Pu(t.action),i=async(...t)=>Ru(await zu(n.action,Vu(t[0]),()=>e(...t),Bu));Fu(i,e),r.action=i}return t.middleware&&t.middleware.length>0&&n.middleware.length>0&&(r.middleware=t.middleware.map(e=>{let t=Pu(e),r=async(...e)=>Ru(await zu(n.middleware,Vu(e[0]),()=>t(...e),Bu));return Fu(r,t),r})),r}function Nu(e,t){let n={navigate:[],fetch:[]};if(t.forEach(e=>e({instrument(e){e.navigate!=null&&n.navigate.push(e.navigate),e.fetch!=null&&n.fetch.push(e.fetch)}})),n.navigate.length>0){let t=Pu(e.navigate),r=async(...r)=>{let[i,a]=r,o,s={to:typeof i==`number`||typeof i==`string`?i:i?El(i):`.`,...Hu(e,a??{})};return Ru(await zu(n.navigate,s,async()=>{if(typeof i==`number`)return await t(...r);let n=Iu(e,e=>{o=e});try{return await t(...r)}finally{n()}},e=>({...Bu(e),meta:o})))};Fu(r,t),e.navigate=r}if(n.fetch.length>0){let t=Pu(e.fetch),r=async(...r)=>{let[i,a,o,s]=r,c;return Ru(await zu(n.fetch,{href:o??`.`,fetcherKey:i,...Hu(e,s??{})},async()=>{let n=Iu(e,e=>{c=e});try{return await t(...r)}finally{n()}},e=>({...Bu(e),meta:c})))};Fu(r,t),e.fetch=r}return e}function Pu(e){return e[Au]??e}function Fu(e,t){e[Au]=t}function Iu(e,t){return ju.set(e,t),()=>{ju.get(e)===t&&ju.delete(e)}}function Lu(e){let t=ju.get(e);return ju.delete(e),t}function Ru(e){if(e.type===`error`)throw e.value;return e.value}async function zu(e,t,n,r,i={result:null,innerResult:null},a=e.length-1){let o=e[a];if(o){let s,c=async()=>(s?console.error(`You cannot call instrumented handlers more than once`):s=zu(e,t,n,r,i,a-1),await s,Q(i.innerResult,`Expected an inner result`),i.innerResult);try{await o(c,t)}catch(e){console.error(`An instrumentation function threw an error:`,e)}s||await c(),await s}else{try{i.result={type:`success`,value:await n()}}catch(e){i.result={type:`error`,value:e}}i.innerResult=r(i.result,t)}return i.result?i.result:(i.result={type:`error`,value:Error(`No result assigned in instrumentation chain.`)},i.innerResult=r(i.result,t),i.result)}function Bu(e){return e.type===`error`&&e.value instanceof Error?{status:`error`,error:e.value}:{status:`success`,error:void 0}}function Vu(e){let{request:t,context:n,params:r}=e;return{...e,request:Uu(t),params:{...r},context:Wu(n)}}function Hu(e,t){return{currentUrl:El(e.state.location),...`formMethod`in t?{formMethod:t.formMethod}:{},...`formEncType`in t?{formEncType:t.formEncType}:{},...`formData`in t?{formData:t.formData}:{},...`body`in t?{body:t.body}:{}}}function Uu(e){return{method:e.method,url:e.url,headers:{get:(...t)=>e.headers.get(...t)}}}function Wu(e){return{get:t=>e.get(t)}}var Gu=class{#e=[];#t=[];#n;constructor(e){this.#n=e}update(e){this.#e=e,this.#t=Hl(e)}match(e,t=!1){return Bl(this.#e,e,this.#n,t,this.#t)}},Ku=new URL(`http://localhost`);function qu(e){if(e.createURL)return e.createURL(`/`);try{return new URL(e.createHref(`/`),Ku)}catch{return Ku}}function Ju(e,t){return e.origin===t.origin&&(e.origin!==`null`||e.protocol===t.protocol&&e.host===t.host)}function Yu(e,t){if(e.startsWith(`//`))return!0;let n=t.protocol.toLowerCase();return e.toLowerCase().startsWith(n)?t.host===``||e.slice(n.length).startsWith(`//`):!1}function Xu(e,t,n,r){let i=null;try{i=e==null?null:new URL(e,n)}catch{}let a=new URL(t,n),o=i!=null&&!Ju(i,n),s=!Ju(a,n);if(r===`reject`){if(o||s)throw Error(`External navigation is not allowed`)}else if(s&&(i==null||!Yu(e,i)||!Ju(i,a)))throw Error(`External navigation is not allowed`)}var Zu=[`POST`,`PUT`,`PATCH`,`DELETE`],Qu=new Set(Zu),$u=[`GET`,...Zu],ed=new Set($u),td=new Set([301,302,303,307,308]),nd=new Set([307,308]),rd={state:`idle`,location:void 0,matches:void 0,historyAction:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},id={state:`idle`,data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},ad={state:`unblocked`,proceed:void 0,reset:void 0,location:void 0},od=`remix-router-transitions`,sd=Symbol(`ResetLoaderData`);function cd(e,t){return e.unstable_routePatternMatching?(Q(void 0,`You must call unstable_preloadRoutePattern() from "react-router/route-pattern" before enabling future.unstable_routePatternMatching.`),new(void 0)(t)):new Gu(t)}var ld=class{#e;#t;#n;constructor(e,t){this.#e=e,this.#n=t,this.#n.update(e)}get stableRoutes(){return this.#e}get activeRoutes(){return this.#t??this.#e}get hasHMRRoutes(){return this.#t!=null}setRoutes(e){this.#e=e,this.#t||this.#n.update(e)}setHmrRoutes(e){this.#t=e,this.#n.update(e)}commitHmrRoutes(){this.#t&&(this.#e=this.#t,this.#t=void 0,this.#n.update(this.#e))}};function ud(e){let t=e.window?e.window:typeof window<`u`?window:void 0,n=t!==void 0&&t.document!==void 0&&t.document.createElement!==void 0;Q(e.routes.length>0,`You must provide a non-empty routes array to createRouter`);let r=e.hydrationRouteProperties||[],i=e.mapRouteProperties,a=i||(()=>({}));if(e.instrumentations){let t=e.instrumentations;a=e=>({...i?.(e),...Mu(t.map(e=>e.route).filter(Boolean),e)})}let o={...e.future},s=e.basename||`/`;s.startsWith(`/`)||(s=`/${s}`);let c=cd(o,s),l={},u=new ld(Ll(e.routes,a,void 0,l),c),d=e.dataStrategy||Dd,f=null,p=new Set,m=null,h=null,g=null,_=null,v=e.hydrationData!=null,y=c.match(e.history.location),b=!1,x=null,S,C;if(y==null&&!e.patchRoutesOnNavigation){let t=Zd(404,{pathname:e.history.location.pathname}),{matches:n,route:r}=Xd(u.activeRoutes);S=!0,C=!S,y=n,x={[r.id]:t}}else if(y&&!e.hydrationData&&Ke(y,e.history.location.pathname).active&&(y=null),!y){S=!1,C=!S,y=[];let t=Ke(null,e.history.location.pathname);t.active&&t.matches&&(b=!0,y=t.matches)}else if(y.some(e=>e.route.lazy))S=!1,C=!S;else if(!y.some(e=>hd(e.route)))S=!0,C=!S;else{let t=e.hydrationData?e.hydrationData.loaderData:null,n=e.hydrationData?e.hydrationData.errors:null,r=y;if(n){let e=y.findIndex(e=>n[e.route.id]!==void 0);r=r.slice(0,e+1)}C=!1,S=!0,r.forEach(e=>{let r=gd(e.route,t,n);C||=r.renderFallback,S&&=!r.shouldLoad})}let w,T={historyAction:e.history.action,location:e.history.location,matches:y,initialized:S,renderFallback:C,navigation:rd,restoreScrollPosition:e.hydrationData==null&&null,preventScrollReset:!1,revalidation:`idle`,loaderData:e.hydrationData&&e.hydrationData.loaderData||{},actionData:e.hydrationData&&e.hydrationData.actionData||null,errors:e.hydrationData&&e.hydrationData.errors||x,fetchers:new Map,blockers:new Map},E=`POP`,D=null,O=!1,k,A=!1,j=new Map,M=null,ee=!1,N=!1,te=new Set,P=new Map,F=0,ne=-1,I=new Map,re=new Set,ie=new Map,ae=new Map,oe=new Set,se=new Map,ce,le=null;function ue(){if(f=e.history.listen(({action:t,location:n,delta:r})=>{if(ce){ce(),ce=void 0;return}Sl(se.size===0||r!=null,"You are trying to use a blocker on a POP navigation to a location that was not created by @remix-run/router. This will fail silently in production. This can happen if you are navigating outside the router via `window.history.pushState`/`window.location.hash` instead of using router navigation APIs. This can also happen if you are using createHashRouter and the user manually changes the URL.");let i=Be({currentLocation:T.location,nextLocation:n,historyAction:t});if(i&&r!=null){let t=new Promise(e=>{ce=e});e.history.go(r*-1),ze(i,{state:`blocked`,location:n,proceed(){ze(i,{state:`proceeding`,proceed:void 0,reset:void 0,location:n}),t.then(()=>e.history.go(r))},reset(){let e=new Map(T.blockers);e.set(i,ad),L({blockers:e})}}),D?.resolve(),D=null;return}return he(t,n)}),n){Sf(t,j);let e=()=>Cf(t,j);t.addEventListener(`pagehide`,e),M=()=>t.removeEventListener(`pagehide`,e)}return T.initialized||he(`POP`,T.location,{initialHydration:!0}),w}function de(){f&&f(),M&&M(),p.clear(),k&&k.abort(),T.fetchers.forEach((e,t)=>je(T.fetchers,t)),T.blockers.forEach((e,t)=>Re(t))}function fe(e){if(p.add(e),m){let{newErrors:t}=m;m=null,e(T,{deletedFetchers:[],newErrors:t,viewTransitionOpts:void 0,flushSync:!1})}return()=>p.delete(e)}function L(e,t={}){e.matches&&=e.matches.map(e=>{let t=l[e.route.id],n=e.route;return n.element!==t.element||n.errorElement!==t.errorElement||n.hydrateFallbackElement!==t.hydrateFallbackElement?{...e,route:t}:e}),T={...T,...e};let n=[],r=[];T.fetchers.forEach((e,t)=>{e.state===`idle`&&(oe.has(t)?n.push(t):r.push(t))}),oe.forEach(e=>{!T.fetchers.has(e)&&!P.has(e)&&n.push(e)}),p.size===0&&(m={newErrors:e.errors??null}),[...p].forEach(r=>r(T,{deletedFetchers:n,newErrors:e.errors??null,viewTransitionOpts:t.viewTransitionOpts,flushSync:t.flushSync===!0})),n.forEach(e=>je(T.fetchers,e)),r.forEach(e=>T.fetchers.delete(e))}function pe(t,n,{flushSync:r}={}){let i=T.actionData!=null&&T.navigation.formMethod!=null&&$(T.navigation.formMethod)&&T.navigation.state===`loading`&&t.state?._isRedirect!==!0,a;a=n.actionData?Object.keys(n.actionData).length>0?n.actionData:null:i?T.actionData:null;let o=n.loaderData?qd(T.loaderData,n.loaderData,n.matches||[],n.errors):T.loaderData,s=T.blockers;s.size>0&&!ee&&(s=new Map(s),s.forEach((e,t)=>s.set(t,ad)));let c=!ee&&Ge(t,n.matches||T.matches),l=O===!0||T.navigation.formMethod!=null&&$(T.navigation.formMethod)&&t.state?._isRedirect!==!0;u.commitHmrRoutes(),ee||E===`POP`||(E===`PUSH`?e.history.push(t,t.state):E===`REPLACE`&&e.history.replace(t,t.state));let d;if(E===`POP`&&!ee&&t!==T.location){let e=j.get(T.location.pathname);e&&e.has(t.pathname)?d={currentLocation:T.location,nextLocation:t}:j.has(t.pathname)&&(d={currentLocation:t,nextLocation:T.location})}else if(A){let e=j.get(T.location.pathname);e?e.add(t.pathname):(e=new Set([t.pathname]),j.set(T.location.pathname,e)),d={currentLocation:T.location,nextLocation:t}}L({...n,actionData:a,loaderData:o,historyAction:E,location:t,initialized:!0,renderFallback:!1,navigation:rd,revalidation:`idle`,restoreScrollPosition:c,preventScrollReset:l,blockers:s},{viewTransitionOpts:d,flushSync:r===!0}),E=`POP`,O=!1,A=!1,ee=!1,N=!1,D?.resolve(),D=null,le?.resolve(),le=null}async function R(t,n){if(D?.resolve(),D=null,typeof t==`number`){D||=wf();let n=D.promise;return e.history.go(t),n}let r=Lu(w),{path:i,submission:a,error:o}=pd(!1,fd(T.location,T.matches,s,t,n?.fromRouteId,n?.relative),n),c;if(n?.mask){let t=typeof n.mask==`string`?Dl(n.mask):{...T.location.mask,...n.mask};if(c={pathname:t.pathname??``,search:t.search??``,hash:t.hash??``},_l.test(c.pathname))throw Error(`External navigation is not allowed`);c.pathname.startsWith(`\\`)&&(c.pathname=c.pathname.replace(/^\\+/,`/`)),Xu(typeof n.mask==`string`?n.mask:El(n.mask),El(c),e.history.createURL(`/`),`reject`)}let l=T.location,u=Tl(l,i,n&&n.state,void 0,c);u={...u,...e.history.encodeLocation(u)},Xu(t==null?e.history.createHref(T.location):typeof t==`string`?t:El(t),e.history.createHref(u.mask||u),e.history.createURL(`/`),`reject`);let d=n&&n.replace!=null?n.replace:void 0,f=`PUSH`;d===!0?f=`REPLACE`:d===!1||a!=null&&$(a.formMethod)&&a.formAction===T.location.pathname+T.location.search&&(f=`REPLACE`);let p=n&&`preventScrollReset`in n?n.preventScrollReset===!0:void 0,m=(n&&n.flushSync)===!0,h=Be({currentLocation:l,nextLocation:u,historyAction:f});if(h){ze(h,{state:`blocked`,location:u,proceed(){ze(h,{state:`proceeding`,proceed:void 0,reset:void 0,location:u}),R(t,n)},reset(){let e=new Map(T.blockers);e.set(h,ad),L({blockers:e})}});return}await he(f,u,{submission:a,pendingError:o,preventScrollReset:p,replace:n&&n.replace,enableViewTransition:n&&n.viewTransition,flushSync:m,callSiteDefaultShouldRevalidate:n&&n.defaultShouldRevalidate,instrumentationNavigateMetaReceiver:r})}function me(){le||=wf(),Ee(),L({revalidation:`loading`});let e=le.promise;return T.navigation.state===`submitting`?e:T.navigation.state===`idle`?(he(T.historyAction,T.location,{startUninterruptedRevalidation:!0}),e):(he(E||T.historyAction,T.navigation.location,{overrideNavigation:T.navigation,enableViewTransition:A===!0}),e)}async function he(t,n,r){k&&k.abort(),k=null,E=t,ee=(r&&r.startUninterruptedRevalidation)===!0,We(T.location,T.matches),O=(r&&r.preventScrollReset)===!0,A=(r&&r.enableViewTransition)===!0;let i=r?.initialHydration&&T.matches&&T.matches.length>0&&!b?T.matches:c.match(n),a=(r&&r.flushSync)===!0;if(i&&T.initialized&&!N&&ef(T.location,n)&&!(r&&r.submission&&$(r.submission.formMethod))){pe(n,{matches:i},{flushSync:a});return}let o=Ke(i,n.pathname);if(o.active&&o.matches&&(i=o.matches),r?.instrumentationNavigateMetaReceiver){let t=hf(e.history,n,i);r.instrumentationNavigateMetaReceiver(t)}if(!i){let{error:e,notFoundMatches:t,route:r}=Ve(n.pathname);pe(n,{matches:t,loaderData:{},errors:{[r.id]:e}},{flushSync:a});return}let s=r&&r.overrideNavigation?{...r.overrideNavigation,matches:i,historyAction:t}:void 0;k=new AbortController;let l=Hd(e.history,n,k.signal,r&&r.submission),u=e.getContext?await e.getContext():new Al,d;if(r&&r.pendingError)d=[Yd(i).route.id,{type:`error`,error:r.pendingError}];else if(r&&r.submission&&$(r.submission.formMethod)){let c=await ge(l,n,r.submission,i,t,u,o.active,r&&r.initialHydration===!0,{replace:r.replace,flushSync:a});if(c.shortCircuited)return;if(c.pendingActionResult){let[e,t]=c.pendingActionResult;if(of(t)&&Tu(t.error)&&t.error.status===404){k=null,pe(n,{matches:c.matches,loaderData:{},errors:{[e]:t.error}});return}}i=c.matches||i,d=c.pendingActionResult,s=_f(n,i,t,r.submission),a=!1,o.active=!1,l=Hd(e.history,l.url,l.signal)}let{shortCircuited:f,matches:p,loaderData:m,errors:h,workingFetchers:g}=await _e(l,n,i,t,u,o.active,s,r&&r.submission,r&&r.fetcherSubmission,r&&r.replace,r&&r.initialHydration===!0,a,d,r&&r.callSiteDefaultShouldRevalidate);f||(k=null,pe(n,{matches:p||i,...Jd(d),loaderData:m,errors:h,...g?{fetchers:g}:{}}))}async function ge(t,n,i,o,c,d,f,p,m={}){if(Ee(),L({navigation:vf(n,o,c,i)},{flushSync:m.flushSync===!0}),f){let e=await qe(o,n.pathname,t.signal);if(e.type===`aborted`)return{shortCircuited:!0};if(e.type===`error`){if(e.partialMatches.length===0){let{matches:t,route:n}=Xd(u.activeRoutes);return{matches:t,pendingActionResult:[n.id,{type:`error`,error:e.error}]}}let t=Yd(e.partialMatches).route.id;return{matches:e.partialMatches,pendingActionResult:[t,{type:`error`,error:e.error}]}}if(e.matches)o=e.matches;else{let{notFoundMatches:e,error:t,route:r}=Ve(n.pathname);return{matches:e,pendingActionResult:[r.id,{type:`error`,error:t}]}}}let h,g=mf(o,n);if(!g.route.action&&!g.route.lazy)h={type:`error`,error:Zd(405,{method:t.method,pathname:n.pathname,routeId:g.route.id})};else{let e=await we(t,n,Nd(a,l,t,n,o,g,p?[]:r,d),d,null);if(h=e[g.route.id],!h){for(let t of o)if(e[t.route.id]){h=e[t.route.id];break}}if(t.signal.aborted)return{shortCircuited:!0}}if(sf(h)){let n;return n=m&&m.replace!=null?m.replace:Vd(h.response.headers.get(`Location`),new URL(t.url),s,e.history)===T.location.pathname+T.location.search,await Ce(t,h,!0,{submission:i,replace:n}),{shortCircuited:!0}}if(of(h)){let e=Yd(o,g.route.id);return(m&&m.replace)!==!0&&(E=`PUSH`),{matches:o,pendingActionResult:[e.route.id,h,g.route.id]}}return{matches:o,pendingActionResult:[g.route.id,h]}}async function _e(t,n,i,o,s,d,f,p,m,h,g,_,v,y){let b=f||_f(n,i,o,p),x=p||m||gf(b),S=!ee&&!g;if(d){if(S){let e=ve(v);L({navigation:b,...e===void 0?{}:{actionData:e}},{flushSync:_})}let e=await qe(i,n.pathname,t.signal);if(e.type===`aborted`)return{shortCircuited:!0};if(e.type===`error`){if(e.partialMatches.length===0){let{matches:t,route:n}=Xd(u.activeRoutes);return{matches:t,loaderData:{},errors:{[n.id]:e.error}}}let t=Yd(e.partialMatches).route.id;return{matches:e.partialMatches,loaderData:{},errors:{[t]:e.error}}}if(e.matches)i=e.matches;else{let{error:e,notFoundMatches:t,route:r}=Ve(n.pathname);return{matches:t,loaderData:{},errors:{[r.id]:e}}}}let{dsMatches:C,revalidatingFetchers:w}=md(t,s,a,l,e.history,T,i,x,n,g?[]:r,g===!0,N,te,oe,ie,re,c,v,y);if(ne=++F,!e.dataStrategy&&!C.some(e=>e.shouldLoad)&&!C.some(e=>e.route.middleware&&e.route.middleware.length>0)&&w.length===0){let e=new Map(T.fetchers),t=Fe(e);return pe(n,{matches:i,loaderData:{},errors:v&&of(v[1])?{[v[0]]:v[1].error}:null,...Jd(v),...t?{fetchers:e}:{}},{flushSync:_}),{shortCircuited:!0}}if(S){let e={};if(!d){e.navigation=b;let t=ve(v);t!==void 0&&(e.actionData=t)}w.length>0&&(e.fetchers=ye(w)),L(e,{flushSync:_})}w.forEach(e=>{Ne(e.key),e.controller&&P.set(e.key,e.controller)});let E=()=>w.forEach(e=>Ne(e.key));k&&k.signal.addEventListener(`abort`,E);let{loaderResults:D,fetcherResults:O}=await Te(C,w,t,n,s);if(t.signal.aborted)return{shortCircuited:!0};k&&k.signal.removeEventListener(`abort`,E),w.forEach(e=>P.delete(e.key));let A=Qd(D);if(A)return await Ce(t,A.result,!0,{replace:h}),{shortCircuited:!0};if(A=Qd(O),A)return re.add(A.key),await Ce(t,A.result,!0,{replace:h}),{shortCircuited:!0};let j=new Map(T.fetchers),{loaderData:M,errors:I}=Kd(T,i,D,v,w,O,j);g&&T.errors&&(I={...T.errors,...I});let ae=Fe(j),se=Ie(ne,j),ce=ae||se||w.length>0;return{matches:i,loaderData:M,errors:I,...ce?{workingFetchers:j}:{}}}function ve(e){if(e&&!of(e[1]))return{[e[0]]:e[1].data};if(T.actionData)return Object.keys(T.actionData).length===0?null:T.actionData}function ye(e){let t=new Map(T.fetchers);return e.forEach(e=>{let n=t.get(e.key),r=yf(void 0,n?n.data:void 0);t.set(e.key,r)}),t}async function be(t,n,r,i){Ne(t);let a=(i&&i.flushSync)===!0,o=Lu(w),l=fd(T.location,T.matches,s,r,n,i?.relative),u=c.match(l),d=Ke(u,l);if(d.active&&d.matches&&(u=d.matches),o&&o(hf(e.history,l,u)),!u){Oe(t,n,Zd(404,{pathname:l}),{flushSync:a});return}let{path:f,submission:p,error:m}=pd(!0,l,i);if(m){Oe(t,n,m,{flushSync:a});return}let h=e.getContext?await e.getContext():new Al,g=(i&&i.preventScrollReset)===!0;if(p&&$(p.formMethod)){await xe(t,n,f,u,h,d.active,a,g,p,i&&i.defaultShouldRevalidate);return}let _={routeId:n,path:f,isDiscovering:d.active};ie.set(t,_),await Se(t,_,u,h,a,g,p)}async function xe(t,n,i,o,s,u,d,f,p,m){Ee(),ie.delete(t),De(t,bf(p,T.fetchers.get(t)),{flushSync:d});let h=new AbortController,g=Hd(e.history,i,h.signal,p);if(u){let e=await qe(o,new URL(g.url).pathname,g.signal,t);if(e.type===`aborted`)return;if(e.type===`error`){Oe(t,n,e.error,{flushSync:d});return}if(e.matches)o=e.matches;else{Oe(t,n,Zd(404,{pathname:i}),{flushSync:d});return}}let _=mf(o,i);if(!_.route.action&&!_.route.lazy){Oe(t,n,Zd(405,{method:p.formMethod,pathname:i,routeId:n}),{flushSync:d});return}P.set(t,h);let v=F,y=Nd(a,l,g,i,o,_,r,s),b=await we(g,i,y,s,t),x=b[_.route.id];if(!x){for(let e of y)if(b[e.route.id]){x=b[e.route.id];break}}if(g.signal.aborted){P.get(t)===h&&P.delete(t);return}if(oe.has(t)){if(sf(x)||of(x)){De(t,xf(void 0));return}}else{if(sf(x)){if(P.delete(t),ne>v){De(t,xf(void 0));return}return re.add(t),De(t,yf(p)),Ce(g,x,!1,{fetcherSubmission:p,preventScrollReset:f})}if(of(x)){Oe(t,n,x.error);return}}let S=T.navigation.location||T.location,C=Hd(e.history,S,h.signal),w=T.navigation.state===`idle`?T.matches:c.match(T.navigation.location);Q(w,`Didn't find any matches after fetcher action`);let D=++F;I.set(t,D);let{dsMatches:O,revalidatingFetchers:A}=md(C,s,a,l,e.history,T,w,p,S,r,!1,N,te,oe,ie,re,c,[_.route.id,x],m),j=yf(p,x.data),M=new Map(T.fetchers);M.set(t,j),A.filter(e=>e.key!==t).forEach(e=>{let t=e.key,n=M.get(t),r=yf(void 0,n?n.data:void 0);M.set(t,r),Ne(t),e.controller&&P.set(t,e.controller)}),L({fetchers:M});let ee=()=>A.forEach(e=>Ne(e.key));h.signal.addEventListener(`abort`,ee);let{loaderResults:ae,fetcherResults:se}=await Te(O,A,C,S,s);if(h.signal.aborted){I.get(t)===D&&I.delete(t);return}h.signal.removeEventListener(`abort`,ee),I.delete(t),P.delete(t),A.forEach(e=>P.delete(e.key));let ce=T.fetchers.has(t),le=e=>{if(!ce)return e;let n=new Map(e.fetchers);return n.set(t,xf(x.data)),{...e,fetchers:n}},ue=Qd(ae);if(ue)return T=le(T),Ce(C,ue.result,!1,{preventScrollReset:f});if(ue=Qd(se),ue)return re.add(ue.key),T=le(T),Ce(C,ue.result,!1,{preventScrollReset:f});let de=new Map(T.fetchers);ce&&de.set(t,xf(x.data));let{loaderData:fe,errors:R}=Kd(T,w,ae,void 0,A,se,de);Ie(D,de),T.navigation.state===`loading`&&D>ne?(Q(E,`Expected pending action`),k&&k.abort(),pe(T.navigation.location,{matches:w,loaderData:fe,errors:R,fetchers:de})):(L({errors:R,loaderData:qd(T.loaderData,fe,w,R),fetchers:de}),N=!1)}async function Se(t,n,i,o,s,c,u){let{routeId:d,path:f}=n,p=T.fetchers.get(t);De(t,yf(u,p?p.data:void 0),{flushSync:s});let m=new AbortController,h=Hd(e.history,f,m.signal);if(n.isDiscovering){let e=await qe(i,new URL(h.url).pathname,h.signal,t);if(e.type===`aborted`)return;if(e.type===`error`){Oe(t,d,e.error,{flushSync:s});return}if(e.matches)i=e.matches,n.isDiscovering=!1;else{Oe(t,d,Zd(404,{pathname:f}),{flushSync:s});return}}let g=mf(i,f);P.set(t,m);let _=F,v=await we(h,f,Nd(a,l,h,f,i,g,r,o),o,t),y=v[g.route.id];if(!y){for(let e of i)if(v[e.route.id]){y=v[e.route.id];break}}if(P.get(t)===m&&P.delete(t),!h.signal.aborted){if(oe.has(t)){De(t,xf(void 0));return}if(sf(y)){if(ne>_){De(t,xf(void 0));return}re.add(t),await Ce(h,y,!1,{preventScrollReset:c});return}if(of(y)){Oe(t,d,y.error);return}De(t,xf(y.data))}}async function Ce(r,i,a,{submission:o,fetcherSubmission:c,preventScrollReset:l,replace:u}={}){a||(D?.resolve(),D=null),i.response.headers.has(`X-Remix-Revalidate`)&&(N=!0);let d=i.response.headers.get(`Location`);Q(d,`Expected a Location header on the redirect Response`);let f=d,p=new URL(r.url);d=Vd(d,p,s,e.history),Xu(f,d,p,`allow-explicit`);let m=Tl(T.location,d,{_isRedirect:!0});if(n){let e=!1;if(i.response.headers.has(`X-Remix-Reload-Document`))e=!0;else if(uu(d)){let n=kl(t,d,!0);e=n.origin!==t.location.origin||cu(n.pathname,s)==null}if(e){u?t.location.replace(d):t.location.assign(d);return}}k=null;let h=u===!0||i.response.headers.has(`X-Remix-Replace`)?`REPLACE`:`PUSH`,{formMethod:g,formAction:_,formEncType:v}=T.navigation;!o&&!c&&g&&_&&v&&(o=gf(T.navigation));let y=o||c;nd.has(i.response.status)&&y&&$(y.formMethod)?await he(h,m,{submission:{...y,formAction:d},preventScrollReset:l||O,enableViewTransition:a?A:void 0}):await he(h,m,{overrideNavigation:_f(m,[],h,o),fetcherSubmission:c,preventScrollReset:l||O,enableViewTransition:a?A:void 0})}async function we(e,t,n,r,i){let a,o={};try{a=await Pd(d,e,t,n,i,r,!1)}catch(e){return n.filter(e=>e.shouldLoad).forEach(t=>{o[t.route.id]={type:`error`,error:e}}),o}if(e.signal.aborted)return o;if(!$(e.method))for(let e of n){if(a[e.route.id]?.type===`error`)break;!a.hasOwnProperty(e.route.id)&&!T.loaderData.hasOwnProperty(e.route.id)&&(!T.errors||!T.errors.hasOwnProperty(e.route.id))&&e.shouldCallHandler()&&(a[e.route.id]={type:`error`,result:Error(`No result returned from dataStrategy for route ${e.route.id}`)})}for(let[t,r]of Object.entries(a))if(af(r)){let i=r.result;o[t]={type:`redirect`,response:Rd(i,e,t,n,s)}}else o[t]=await Ld(r);return o}async function Te(e,t,n,r,i){let a=we(n,r,e,i,null),o=Promise.all(t.map(async e=>{if(e.matches&&e.match&&e.request&&e.controller){let t=(await we(e.request,e.path,e.matches,i,e.key))[e.match.route.id];return{[e.key]:t}}return Promise.resolve({[e.key]:{type:`error`,error:Zd(404,{pathname:e.path})}})}));return{loaderResults:await a,fetcherResults:(await o).reduce((e,t)=>Object.assign(e,t),{})}}function Ee(){N=!0,ie.forEach((e,t)=>{P.has(t)&&te.add(t),Ne(t)})}function De(e,t,n={}){let r=new Map(T.fetchers);r.set(e,t),L({fetchers:r},{flushSync:(n&&n.flushSync)===!0})}function Oe(e,t,n,r={}){let i=Yd(T.matches,t),a=new Map(T.fetchers);je(a,e),L({errors:{[i.route.id]:n},fetchers:a},{flushSync:(r&&r.flushSync)===!0})}function ke(e){return ae.set(e,(ae.get(e)||0)+1),oe.has(e)&&oe.delete(e),T.fetchers.get(e)||id}function Ae(e,t){Ne(e,t?.reason),De(e,xf(null))}function je(e,t){let n=T.fetchers.get(t);P.has(t)&&!(n&&n.state===`loading`&&I.has(t))&&Ne(t),ie.delete(t),I.delete(t),re.delete(t),oe.delete(t),te.delete(t),e.delete(t)}function Me(e){let t=(ae.get(e)||0)-1;t<=0?(ae.delete(e),oe.add(e)):ae.set(e,t),L({fetchers:new Map(T.fetchers)})}function Ne(e,t){let n=P.get(e);n&&(n.abort(t),P.delete(e))}function Pe(e,t){for(let n of e){let e=t.get(n);Q(e,`Expected fetcher: ${n}`);let r=xf(e.data);t.set(n,r)}}function Fe(e){let t=[],n=!1;for(let r of re){let i=e.get(r);Q(i,`Expected fetcher: ${r}`),i.state===`loading`&&(re.delete(r),t.push(r),n=!0)}return Pe(t,e),n}function Ie(e,t){let n=[];for(let[r,i]of I)if(i<e){let e=t.get(r);Q(e,`Expected fetcher: ${r}`),e.state===`loading`&&(Ne(r),I.delete(r),n.push(r))}return Pe(n,t),n.length>0}function Le(e,t){let n=T.blockers.get(e)||ad;return se.get(e)!==t&&se.set(e,t),n}function Re(e){T.blockers.delete(e),se.delete(e)}function ze(e,t){let n=T.blockers.get(e)||ad;Q(n.state===`unblocked`&&t.state===`blocked`||n.state===`blocked`&&t.state===`blocked`||n.state===`blocked`&&t.state===`proceeding`||n.state===`blocked`&&t.state===`unblocked`||n.state===`proceeding`&&t.state===`unblocked`,`Invalid blocker state transition: ${n.state} -> ${t.state}`);let r=new Map(T.blockers);r.set(e,t),L({blockers:r})}function Be({currentLocation:e,nextLocation:t,historyAction:n}){if(se.size===0)return;se.size>1&&Sl(!1,`A router only supports one blocker at a time`);let r=Array.from(se.entries()),[i,a]=r[r.length-1],o=T.blockers.get(i);if(!(o&&o.state===`proceeding`)&&a({currentLocation:e,nextLocation:t,historyAction:n}))return i}function Ve(e){let t=Zd(404,{pathname:e}),n=u.activeRoutes,{matches:r,route:i}=Xd(n);return{notFoundMatches:r,route:i,error:t}}function He(e,t,n){if(h=e,_=t,g=n||null,!v&&T.navigation===rd){v=!0;let e=Ge(T.location,T.matches);e!=null&&L({restoreScrollPosition:e})}return()=>{h=null,_=null,g=null}}function Ue(e,t){return g&&g(e,t.map(e=>Vl(e,T.loaderData)))||e.key}function We(e,t){if(h&&_){let n=Ue(e,t);h[n]=_()}}function Ge(e,t){if(h){let n=Ue(e,t),r=h[n];if(typeof r==`number`)return r}return null}function Ke(t,n){if(e.patchRoutesOnNavigation){if(!t)return{active:!0,matches:c.match(n,!0)||[]};if(Object.keys(t[0].params).length>0)return{active:!0,matches:c.match(n,!0)}}return{active:!1,matches:null}}async function qe(t,n,r,i){if(!e.patchRoutesOnNavigation)return{type:`success`,matches:t};let o=t;for(;;){let t=l;try{await e.patchRoutesOnNavigation({signal:r,path:n,matches:o,fetcherKey:i,patch:(e,n)=>{r.aborted||bd(e,n,u,t,a,!1)}})}catch(e){return{type:`error`,error:e,partialMatches:o}}if(r.aborted)return{type:`aborted`};let s=c.match(n),d=null;if(s&&(Object.keys(s[0].params).length===0||(d=c.match(n,!0),!(d&&o.length<d.length&&Je(o,d.slice(0,o.length))))))return{type:`success`,matches:s};if(d||=c.match(n,!0),!d||Je(o,d))return{type:`success`,matches:null};o=d}}function Je(e,t){return e.length===t.length&&e.every((e,n)=>e.route.id===t[n].route.id)}function Ye(e){l={},u.setHmrRoutes(Ll(e,a,void 0,l))}function Xe(e,t,n=!1){bd(e,t,u,l,a,n),u.hasHMRRoutes||L({})}return w={get basename(){return s},get future(){return o},get state(){return T},get routes(){return u.stableRoutes},match(e){return c.match(e)},get manifest(){return l},get window(){return t},initialize:ue,subscribe:fe,enableScrollRestoration:He,navigate:R,fetch:be,revalidate:me,createHref:t=>e.history.createHref(t),createURL:t=>e.history.createURL(t),encodeLocation:t=>e.history.encodeLocation(t),getFetcher:ke,resetFetcher:Ae,deleteFetcher:Me,dispose:de,getBlocker:Le,deleteBlocker:Re,patchRoutes:Xe,_internalFetchControllers:P,_internalSetRoutes:Ye,_internalSetStateDoNotUseOrYouWillBreakYourApp(e){L(e)}},e.instrumentations&&(w=Nu(w,e.instrumentations.map(e=>e.router).filter(Boolean))),w}function dd(e){return e!=null&&(`formData`in e&&e.formData!=null||`body`in e&&e.body!==void 0)}function fd(e,t,n,r,i,a){let o,s;if(i){o=[];for(let e of t)if(o.push(e),e.route.id===i){s=e;break}}else o=t,s=t[t.length-1];let c=gu(r||`.`,hu(o),cu(e.pathname,n)||e.pathname,a===`path`);if(r??(c.search=e.search,c.hash=e.hash),(r==null||r===``||r===`.`)&&s){let e=pf(c.search);if(s.route.index&&!e)c.search=c.search?c.search.replace(/^\?/,`?index&`):`?index`;else if(!s.route.index&&e){let e=new URLSearchParams(c.search),t=e.getAll(`index`);e.delete(`index`),t.filter(e=>e).forEach(t=>e.append(`index`,t));let n=e.toString();c.search=n?`?${n}`:``}}return n!==`/`&&(c.pathname=lu({basename:n,pathname:c.pathname})),El(c)}function pd(e,t,n){if(!n||!dd(n))return{path:t};if(n.formMethod&&!ff(n.formMethod))return{path:t,error:Zd(405,{method:n.formMethod})};let r=()=>({path:t,error:Zd(400,{type:`invalid-body`})}),i=(n.formMethod||`get`).toUpperCase(),a=$d(t);if(n.body!==void 0){if(n.formEncType===`text/plain`){if(!$(i))return r();let e=typeof n.body==`string`?n.body:n.body instanceof FormData||n.body instanceof URLSearchParams?Array.from(n.body.entries()).reduce((e,[t,n])=>`${e}${t}=${n}\n`,``):String(n.body);return{path:t,submission:{formMethod:i,formAction:a,formEncType:n.formEncType,formData:void 0,json:void 0,text:e}}}if(n.formEncType===`application/json`){if(!$(i))return r();try{let e=typeof n.body==`string`?JSON.parse(n.body):n.body;return{path:t,submission:{formMethod:i,formAction:a,formEncType:n.formEncType,formData:void 0,json:e,text:void 0}}}catch{return r()}}}Q(typeof FormData==`function`,`FormData is not available in this environment`);let o,s;if(n.formData)o=Ud(n.formData),s=n.formData;else if(n.body instanceof FormData)o=Ud(n.body),s=n.body;else if(n.body instanceof URLSearchParams)o=n.body,s=Wd(o);else if(n.body==null)o=new URLSearchParams,s=new FormData;else try{o=new URLSearchParams(n.body),s=Wd(o)}catch{return r()}let c={formMethod:i,formAction:a,formEncType:n&&n.formEncType||`application/x-www-form-urlencoded`,formData:s,json:void 0,text:void 0};if($(c.formMethod))return{path:t,submission:c};let l=Dl(t);return e&&l.search&&pf(l.search)&&o.append(`index`,``),l.search=`?${o}`,{path:El(l),submission:c}}function md(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v){let y=_?of(_[1])?_[1].error:_[1].data:void 0,b=i.createURL(a.location),x=i.createURL(c),S;if(u&&a.errors){let e=Object.keys(a.errors)[0];S=o.findIndex(t=>t.route.id===e)}else if(_&&of(_[1])){let e=_[0];S=o.findIndex(t=>t.route.id===e)-1}let C=_?_[1].statusCode:void 0,w=C&&C>=400,T={currentUrl:b,currentParams:a.matches[0]?.params||{},nextUrl:x,nextParams:o[0].params,...s,actionResult:y,actionStatus:C},E=Eu(o),D=o.map((i,o)=>{let{route:s}=i,f=null;if(S!=null&&o>S)f=!1;else if(s.lazy)f=!0;else if(!hd(s))f=!1;else if(u){let{shouldLoad:e}=gd(s,a.loaderData,a.errors);f=e}else _d(a.loaderData,a.matches[o],i)&&(f=!0);if(f!==null)return Md(n,r,e,c,E,i,l,t,f);let p=!1;typeof v==`boolean`?p=v:w?p=!1:d||b.pathname+b.search===x.pathname+x.search?p=!0:b.search===x.search?vd(a.matches[o],i)&&(p=!0):p=!0;let m={...T,defaultShouldRevalidate:p};return Md(n,r,e,c,E,i,l,t,yd(i,m),m,v)}),O=[];return m.forEach((e,s)=>{if(u||!o.some(t=>t.route.id===e.routeId)||p.has(s)||e.isDiscovering)return;let c=a.fetchers.get(s),m=c&&c.state!==`idle`&&c.data===void 0,_=g.match(e.path);if(!_){O.push({key:s,routeId:e.routeId,path:e.path,matches:null,match:null,request:null,controller:null});return}if(h.has(s))return;let y=mf(_,e.path),b=new AbortController,x=Hd(i,e.path,b.signal),S=null;if(f.has(s))f.delete(s),S=Nd(n,r,x,e.path,_,y,l,t);else if(m)d&&(S=Nd(n,r,x,e.path,_,y,l,t));else{let i;i=typeof v==`boolean`?v:!w&&d;let a={...T,defaultShouldRevalidate:i};yd(y,a)&&(S=Nd(n,r,x,e.path,_,y,l,t,a))}S&&O.push({key:s,routeId:e.routeId,path:e.path,matches:S,match:y,request:x,controller:b})}),{dsMatches:D,revalidatingFetchers:O}}function hd(e){return e.loader!=null||e.middleware!=null&&e.middleware.length>0}function gd(e,t,n){if(e.lazy)return{shouldLoad:!0,renderFallback:!0};if(!hd(e))return{shouldLoad:!1,renderFallback:!1};let r=t!=null&&e.id in t,i=n!=null&&n[e.id]!==void 0;if(!r&&i)return{shouldLoad:!1,renderFallback:!1};if(typeof e.loader==`function`&&e.loader.hydrate===!0)return{shouldLoad:!0,renderFallback:!r};let a=!r&&!i;return{shouldLoad:a,renderFallback:a}}function _d(e,t,n){let r=!t||n.route.id!==t.route.id,i=!e.hasOwnProperty(n.route.id);return r||i}function vd(e,t){let n=e.route.path;return e.pathname!==t.pathname||n!=null&&n.endsWith(`*`)&&e.params[`*`]!==t.params[`*`]}function yd(e,t){if(e.route.shouldRevalidate){let n=e.route.shouldRevalidate(t);if(typeof n==`boolean`)return n}return t.defaultShouldRevalidate}function bd(e,t,n,r,i,a){let o;if(e){let t=r[e];Q(t,`No route found to patch children into: routeId = ${e}`),t.children||=[],o=t.children}else o=n.activeRoutes;let s=[],c=[];if(t.forEach(e=>{let t=o.find(t=>xd(e,t));t?c.push({existingRoute:t,newRoute:e}):s.push(e)}),s.length>0){let t=Ll(s,i,[e||`_`,`patch`,String(o?.length||`0`)],r);o.push(...t)}if(a&&c.length>0)for(let e=0;e<c.length;e++){let{existingRoute:t,newRoute:n}=c[e],r=t,[a]=Ll([n],i,[],{},!0);Object.assign(r,{element:a.element?a.element:r.element,errorElement:a.errorElement?a.errorElement:r.errorElement,hydrateFallbackElement:a.hydrateFallbackElement?a.hydrateFallbackElement:r.hydrateFallbackElement})}n.hasHMRRoutes||n.setRoutes([...n.activeRoutes])}function xd(e,t){return`id`in e&&`id`in t&&e.id===t.id?!0:e.index!==t.index||e.path!==t.path||e.caseSensitive!==t.caseSensitive?!1:(!e.children||e.children.length===0)&&(!t.children||t.children.length===0)?!0:e.children?.every((e,n)=>t.children?.some(t=>xd(e,t)))??!1}var Sd=new WeakMap,Cd=({key:e,route:t,manifest:n,mapRouteProperties:r})=>{let i=n[t.id];if(Q(i,`No route found in manifest`),!i.lazy||typeof i.lazy!=`object`)return;let a=i.lazy[e];if(!a)return;let o=Sd.get(i);o||(o={},Sd.set(i,o));let s=o[e];if(s)return s;let c=(async()=>{let t=Ml(e),n=i[e]!==void 0;if(t)Sl(!t,`Route property `+e+` is not a supported lazy route property. This property will be ignored.`),o[e]=Promise.resolve();else if(n)Sl(!1,`Route "${i.id}" has a static property "${e}" defined. The lazy property will be ignored.`);else{let t=await a();t!=null&&(Object.assign(i,{[e]:t}),Object.assign(i,r(i)))}typeof i.lazy==`object`&&(i.lazy[e]=void 0,Object.values(i.lazy).every(e=>e===void 0)&&(i.lazy=void 0))})();return o[e]=c,c},wd=new WeakMap;function Td(e,t,n,r,i){let a=n[e.id];if(Q(a,`No route found in manifest`),!e.lazy)return{lazyRoutePromise:void 0,lazyHandlerPromise:void 0};if(typeof e.lazy==`function`){let t=wd.get(a);if(t)return{lazyRoutePromise:t,lazyHandlerPromise:t};let n=(async()=>{Q(typeof e.lazy==`function`,`No lazy route function found`);let t=await e.lazy(),n={};for(let e in t){let r=t[e];if(r===void 0)continue;let i=Pl(e),o=a[e]!==void 0;i?Sl(!i,`Route property `+e+` is not a supported property to be returned from a lazy route function. This property will be ignored.`):o?Sl(!o,`Route "${a.id}" has a static property "${e}" defined but its lazy function is also returning a value for this property. The lazy route property "${e}" will be ignored.`):n[e]=r}Object.assign(a,n),Object.assign(a,{...r(a),lazy:void 0})})();return wd.set(a,n),n.catch(()=>{}),{lazyRoutePromise:n,lazyHandlerPromise:n}}let o=Object.keys(e.lazy),s=[],c;for(let a of o){if(i&&i.includes(a))continue;let o=Cd({key:a,route:e,manifest:n,mapRouteProperties:r});o&&(s.push(o),a===t&&(c=o))}let l=s.length>0?Promise.all(s).then(()=>{}):void 0;return l?.catch(()=>{}),c?.catch(()=>{}),{lazyRoutePromise:l,lazyHandlerPromise:c}}async function Ed(e){let t=e.matches.filter(e=>e.shouldLoad),n={};return(await Promise.all(t.map(e=>e.resolve()))).forEach((e,r)=>{n[t[r].route.id]=e}),n}async function Dd(e){return e.matches.some(e=>e.route.middleware)?Od(e,()=>Ed(e)):Ed(e)}function Od(e,t){return kd(e,t,e=>{if(df(e))throw e;return e},nf,n);async function n(t,n,r){if(r)return Object.assign(r.value,{[n]:{type:`error`,result:t}});{let{matches:r}=e,i=Math.min(Math.max(r.findIndex(e=>e.route.id===n),0),Math.max(r.findIndex(e=>e.shouldCallHandler()),0)),a=r[i].route.id;for(let e of r.slice(0,i+1))try{await e._lazyPromises?.route}catch{a=e.route.id;break}return{[Yd(r,a).route.id]:{type:`error`,result:t}}}}}async function kd(e,t,n,r,i){let{matches:a,...o}=e;return await Ad(o,a.flatMap(e=>e.route.middleware?e.route.middleware.map(t=>[e.route.id,t]):[]),t,n,r,i)}async function Ad(e,t,n,r,i,a,o=0){let{request:s}=e;if(s.signal.aborted)throw s.signal.reason??Error(`Request aborted: ${s.method} ${s.url}`);let c=t[o];if(!c)return await n();let[l,u]=c,d,f=async()=>{if(d)throw Error("You may only call `next()` once per middleware");try{return d={value:await Ad(e,t,n,r,i,a,o+1)},d.value}catch(e){return d={value:await a(e,l,d)},d.value}};try{let t=await u(e,f),n=t==null?void 0:r(t);return i(n)?n:d?n??d.value:(d={value:await f()},d.value)}catch(e){return await a(e,l,d)}}function jd(e,t,n,r,i){let a=Cd({key:`middleware`,route:r.route,manifest:t,mapRouteProperties:e}),o=Td(r.route,$(n.method)?`action`:`loader`,t,e,i);return{middleware:a,route:o.lazyRoutePromise,handler:o.lazyHandlerPromise}}function Md(e,t,n,r,i,a,o,s,c,l=null,u){let d=!1,f=jd(e,t,n,a,o);return{...a,_lazyPromises:f,shouldLoad:c,shouldRevalidateArgs:l,shouldCallHandler(e){return d=!0,l?typeof u==`boolean`?yd(a,{...l,defaultShouldRevalidate:u}):typeof e==`boolean`?yd(a,{...l,defaultShouldRevalidate:e}):yd(a,l):c},resolve(e){let{lazy:t,loader:o,middleware:l}=a.route,u=d||c||e&&!$(n.method)&&(t||o),p=l&&l.length>0&&!o&&!t;return u&&($(n.method)||!p)?Fd({request:n,path:r,pattern:i,match:a,lazyHandlerPromise:f?.handler,lazyRoutePromise:f?.route,handlerOverride:e,scopedContext:s}):Promise.resolve({type:`data`,result:void 0})}}}function Nd(e,t,n,r,i,a,o,s,c=null){return i.map(l=>l.route.id===a.route.id?Md(e,t,n,r,Eu(i),l,o,s,!0,c):{...l,shouldLoad:!1,shouldRevalidateArgs:c,shouldCallHandler:()=>!1,_lazyPromises:jd(e,t,n,l,o),resolve:()=>Promise.resolve({type:`data`,result:void 0})})}async function Pd(e,t,n,r,i,a,o){r.some(e=>e._lazyPromises?.middleware)&&await Promise.all(r.map(e=>e._lazyPromises?.middleware));let s={request:t,url:Du(t,n),pattern:Eu(r),params:r[0].params,context:a,matches:r},c=o?()=>{throw Error("You cannot call `runClientMiddleware()` from a static handler `dataStrategy`. Middleware is run outside of `dataStrategy` during SSR in order to bubble up the Response. You can enable middleware via the `respond` API in `query`/`queryRoute`")}:e=>{let t=s;return Od(t,()=>e({...t,fetcherKey:i,runClientMiddleware:()=>{throw Error("Cannot call `runClientMiddleware()` from within an `runClientMiddleware` handler")}}))},l=await e({...s,fetcherKey:i,runClientMiddleware:c});try{await Promise.all(r.flatMap(e=>[e._lazyPromises?.handler,e._lazyPromises?.route]))}catch{}return l}async function Fd({request:e,path:t,pattern:n,match:r,lazyHandlerPromise:i,lazyRoutePromise:a,handlerOverride:o,scopedContext:s}){let c,l,u=$(e.method),d=u?`action`:`loader`,f=i=>{let a,c=new Promise((e,t)=>a=t);l=()=>a(),e.signal.addEventListener(`abort`,l);let u=a=>typeof i==`function`?i({request:e,url:Du(e,t),pattern:n,params:r.params,context:s},...a===void 0?[]:[a]):Promise.reject(Error(`You cannot call the handler for a route which defines a boolean "${d}" [routeId: ${r.route.id}]`)),f=(async()=>{try{return{type:`data`,result:await(o?o(e=>u(e)):u())}}catch(e){return{type:`error`,result:e}}})();return Promise.race([f,c])};try{let t=u?r.route.action:r.route.loader;if(i||a){if(t){let e,[n]=await Promise.all([f(t).catch(t=>{e=t}),i,a]);if(e!==void 0)throw e;c=n}else{await i;let t=u?r.route.action:r.route.loader;if(t)[c]=await Promise.all([f(t),a]);else if(d===`action`){let t=new URL(e.url),n=t.pathname+t.search;throw Zd(405,{method:e.method,pathname:n,routeId:r.route.id})}else return{type:`data`,result:void 0}}}else if(t)c=await f(t);else{let t=new URL(e.url);throw Zd(404,{pathname:t.pathname+t.search})}}catch(e){return{type:`error`,result:e}}finally{l&&e.signal.removeEventListener(`abort`,l)}return c}async function Id(e){let t=e.headers.get(`Content-Type`);return t&&/\bapplication\/json\b/.test(t)?e.body==null?null:e.json():e.text()}async function Ld(e){let{result:t,type:n}=e;if(lf(t)){let e;try{e=await Id(t)}catch(e){return{type:`error`,error:e}}return n===`error`?{type:`error`,error:new wu(t.status,t.statusText,e),statusCode:t.status,headers:t.headers}:{type:`data`,data:e,statusCode:t.status,headers:t.headers}}return n===`error`?cf(t)?t.data instanceof Error?{type:`error`,error:t.data,statusCode:t.init?.status,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:`error`,error:tf(t),statusCode:Tu(t)?t.status:void 0,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:`error`,error:t,statusCode:Tu(t)?t.status:void 0}:cf(t)?{type:`data`,data:t.data,statusCode:t.init?.status,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:`data`,data:t}}function Rd(e,t,n,r,i){let a=e.headers.get(`Location`);if(Q(a,`Redirects returned/thrown from loaders/actions must have a Location header`),!uu(a)){let o=r.slice(0,r.findIndex(e=>e.route.id===n)+1);a=fd(new URL(t.url),o,i,a),e.headers.set(`Location`,a)}return e}var zd=[`about:`,`blob:`,`chrome:`,`chrome-untrusted:`,`content:`,`data:`,`devtools:`,`file:`,`filesystem:`,`javascript:`];function Bd(e){try{return zd.includes(new URL(e).protocol)}catch{return!1}}function Vd(e,t,n,r){if(uu(e)){let r=e,i=_l.test(r)?new URL(vl(r,t.protocol)):new URL(r);if(Bd(i.toString()))throw Error(`Invalid redirect location`);let a=cu(i.pathname,n)!=null;if(i.origin===t.origin&&a)return _u(i.pathname)+i.search+i.hash}try{if(Bd(r.createURL(e).toString()))throw Error(`Invalid redirect location`)}catch{}return e}function Hd(e,t,n,r){let i=e.createURL($d(t)).toString(),a={signal:n};if(r&&$(r.formMethod)){let{formMethod:e,formEncType:t}=r;a.method=e.toUpperCase(),t===`application/json`?(a.headers=new Headers({"Content-Type":t}),a.body=JSON.stringify(r.json)):a.body=t===`text/plain`?r.text:t===`application/x-www-form-urlencoded`&&r.formData?Ud(r.formData):r.formData}return new Request(i,a)}function Ud(e){let t=new URLSearchParams;for(let[n,r]of e.entries())t.append(n,typeof r==`string`?r:r.name);return t}function Wd(e){let t=new FormData;for(let[n,r]of e.entries())t.append(n,r);return t}function Gd(e,t,n,r=!1,i=!1){let a={},o=null,s,c=!1,l={},u=n&&of(n[1])?n[1].error:void 0;return e.forEach(n=>{if(!(n.route.id in t))return;let d=n.route.id,f=t[d];if(Q(!sf(f),`Cannot handle redirect results in processLoaderData`),of(f)){let t=f.error;if(u!==void 0&&(t=u,u=void 0),o||={},i)o[d]=t;else{let n=Yd(e,d);o[n.route.id]??(o[n.route.id]=t)}r||(a[d]=sd),c||(c=!0,s=Tu(f.error)?f.error.status:500),f.headers&&(l[d]=f.headers)}else a[d]=f.data,f.statusCode&&f.statusCode!==200&&!c&&(s=f.statusCode),f.headers&&(l[d]=f.headers)}),u!==void 0&&n&&(o={[n[0]]:u},n[2]&&(a[n[2]]=void 0)),{loaderData:a,errors:o,statusCode:s||200,loaderHeaders:l}}function Kd(e,t,n,r,i,a,o){let{loaderData:s,errors:c}=Gd(t,n,r);return i.filter(e=>!e.matches||e.matches.some(e=>e.shouldLoad)).forEach(t=>{let{key:n,match:r,controller:i}=t;if(i&&i.signal.aborted)return;let s=a[n];if(Q(s,`Did not find corresponding fetcher result`),of(s)){let t=Yd(e.matches,r?.route.id);c&&c[t.route.id]||(c={...c,[t.route.id]:s.error}),o.delete(n)}else if(sf(s))Q(!1,`Unhandled fetcher revalidation redirect`);else{let e=xf(s.data);o.set(n,e)}}),{loaderData:s,errors:c}}function qd(e,t,n,r){let i=Object.entries(t).filter(([,e])=>e!==sd).reduce((e,[t,n])=>(e[t]=n,e),{}),a=0;for(let o of n){let n=o.route.id;if(!t.hasOwnProperty(n)&&e.hasOwnProperty(n)&&o.route.loader&&(i[n]=e[n],a++),r&&r.hasOwnProperty(n))break}return Object.keys(t).length===0&&a===Object.keys(e).length?e:i}function Jd(e){return e?of(e[1])?{actionData:{}}:{actionData:{[e[0]]:e[1].data}}:{}}function Yd(e,t){return(t?e.slice(0,e.findIndex(e=>e.route.id===t)+1):[...e]).reverse().find(e=>e.route.ErrorBoundary!=null||e.route.errorElement!=null)||e[0]}function Xd(e){let t=e.length===1?e[0]:e.find(e=>e.index||!e.path||e.path===`/`)||{id:`__shim-error-route__`};return{matches:[{params:{},pathname:``,pathnameBase:``,route:t}],route:t}}function Zd(e,{pathname:t,routeId:n,method:r,type:i,message:a}={}){let o=`Unknown Server Error`,s=`Unknown @remix-run/router error`;return e===400?(o=`Bad Request`,r&&t&&n?s=`You made a ${r} request to "${t}" but did not provide a \`loader\` for route "${n}", so there is no way to handle the request.`:i===`invalid-body`&&(s=`Unable to encode submission body`)):e===403?(o=`Forbidden`,s=`Route "${n}" does not match URL "${t}"`):e===404?(o=`Not Found`,s=`No route matches URL "${t}"`):e===405&&(o=`Method Not Allowed`,r&&t&&n?s=`You made a ${r.toUpperCase()} request to "${t}" but did not provide an \`action\` for route "${n}", so there is no way to handle the request.`:r&&(s=`Invalid request method "${r.toUpperCase()}"`)),new wu(e||500,o,Error(s),!0)}function Qd(e){let t=Object.entries(e);for(let e=t.length-1;e>=0;e--){let[n,r]=t[e];if(sf(r))return{key:n,result:r}}}function $d(e){return El({...typeof e==`string`?Dl(e):e,hash:``})}function ef(e,t){return e.pathname!==t.pathname||e.search!==t.search?!1:e.hash===``?t.hash!==``:e.hash===t.hash||t.hash!==``}function tf(e){return new wu(e.init?.status??500,e.init?.statusText??`Internal Server Error`,e.data)}function nf(e){return typeof e==`object`&&!!e&&Object.entries(e).every(([e,t])=>typeof e==`string`&&rf(t))}function rf(e){return typeof e==`object`&&!!e&&`type`in e&&`result`in e&&(e.type===`data`||e.type===`error`)}function af(e){return lf(e.result)&&td.has(e.result.status)}function of(e){return e.type===`error`}function sf(e){return(e&&e.type)===`redirect`}function cf(e){return typeof e==`object`&&!!e&&`type`in e&&`data`in e&&`init`in e&&e.type===`DataWithResponseInit`}function lf(e){return e!=null&&typeof e.status==`number`&&typeof e.statusText==`string`&&typeof e.headers==`object`&&e.body!==void 0}function uf(e){return td.has(e)}function df(e){return lf(e)&&uf(e.status)&&e.headers.has(`Location`)}function ff(e){return ed.has(e.toUpperCase())}function $(e){return Qu.has(e.toUpperCase())}function pf(e){return new URLSearchParams(e).getAll(`index`).some(e=>e===``)}function mf(e,t){let n=typeof t==`string`?Dl(t).search:t.search;if(e[e.length-1].route.index&&pf(n||``))return e[e.length-1];let r=mu(e);return r[r.length-1]}function hf(e,t,n){return{url:Du(e.createURL(t),t),pattern:n?Eu(n):``,params:n?.[0]?.params?{...n[0].params}:{}}}function gf(e){let{formMethod:t,formAction:n,formEncType:r,text:i,formData:a,json:o}=e;if(t&&n&&r){if(i!=null)return{formMethod:t,formAction:n,formEncType:r,formData:void 0,json:void 0,text:i};if(a!=null)return{formMethod:t,formAction:n,formEncType:r,formData:a,json:void 0,text:void 0};if(o!==void 0)return{formMethod:t,formAction:n,formEncType:r,formData:void 0,json:o,text:void 0}}}function _f(e,t,n,r){return r?{state:`loading`,location:e,matches:t,historyAction:n,formMethod:r.formMethod,formAction:r.formAction,formEncType:r.formEncType,formData:r.formData,json:r.json,text:r.text}:{state:`loading`,location:e,matches:t,historyAction:n,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0}}function vf(e,t,n,r){return{state:`submitting`,location:e,matches:t,historyAction:n,formMethod:r.formMethod,formAction:r.formAction,formEncType:r.formEncType,formData:r.formData,json:r.json,text:r.text}}function yf(e,t){return e?{state:`loading`,formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t}:{state:`loading`,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:t}}function bf(e,t){return{state:`submitting`,formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t?t.data:void 0}}function xf(e){return{state:`idle`,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:e}}function Sf(e,t){try{let n=e.sessionStorage.getItem(od);if(n){let e=JSON.parse(n);for(let[n,r]of Object.entries(e||{}))r&&Array.isArray(r)&&t.set(n,new Set(r||[]))}}catch{}}function Cf(e,t){if(t.size>0){let n={};for(let[e,r]of t)n[e]=[...r];try{e.sessionStorage.setItem(od,JSON.stringify(n))}catch(e){Sl(!1,`Failed to save applied view transitions in sessionStorage (${e}).`)}}}function wf(){let e,t,n=new Promise((r,i)=>{e=async e=>{r(e);try{await n}catch{}},t=async e=>{i(e);try{await n}catch{}}});return{promise:n,resolve:e,reject:t}}var Tf=X.createContext(null);Tf.displayName=`DataRouter`;var Ef=X.createContext(null);Ef.displayName=`DataRouterState`;var Df=X.createContext(null);Df.displayName=`DataRouterData`;var Of=X.createContext(null);Of.displayName=`DataRouterNavigation`;var kf=X.createContext(!1);function Af(){return X.useContext(kf)}var jf=X.createContext({isTransitioning:!1});jf.displayName=`ViewTransition`;var Mf=X.createContext(null);Mf.displayName=`Fetchers`;var Nf=X.createContext(null);Nf.displayName=`Await`;var Pf=X.createContext(null);Pf.displayName=`Navigation`;var Ff=X.createContext(null);Ff.displayName=`Location`;var If=X.createContext({outlet:null,matches:[],isDataRoute:!1});If.displayName=`Route`;var Lf=X.createContext(!1);Lf.displayName=`IsDataRoute`;var Rf=X.createContext(void 0);Rf.displayName=`RouteId`;var zf=X.createContext(null);zf.displayName=`RouteError`;var Bf=`REACT_ROUTER_ERROR`,Vf=`REDIRECT`,Hf=`ROUTE_ERROR_RESPONSE`;function Uf(e){if(e.startsWith(`${Bf}:${Vf}:{`))try{let t=JSON.parse(e.slice(28));if(typeof t==`object`&&t&&typeof t.status==`number`&&typeof t.statusText==`string`&&typeof t.location==`string`&&typeof t.reloadDocument==`boolean`&&typeof t.replace==`boolean`)return t}catch{}}function Wf(e){if(e.startsWith(`${Bf}:${Hf}:{`))try{let t=JSON.parse(e.slice(40));if(typeof t==`object`&&t&&typeof t.status==`number`&&typeof t.statusText==`string`)return new wu(t.status,t.statusText,t.data)}catch{}}function Gf(e,{relative:t}={}){Q(Kf(),`useHref() may be used only in the context of a <Router> component.`);let{basename:n,navigator:r}=X.useContext(Pf),{hash:i,pathname:a,search:o}=tp(e,{relative:t}),s=a;return n!==`/`&&(s=a===`/`?n:vu([n,a])),r.createHref({pathname:s,search:o,hash:i})}function Kf(){return X.useContext(Ff)!=null}function qf(){return Q(Kf(),`useLocation() may be used only in the context of a <Router> component.`),X.useContext(Ff).location}var Jf=`You should call navigate() in a React.useEffect(), not when your component is first rendered.`;function Yf(){return X.useContext(Lf)?xp():Xf()}function Xf(){Q(Kf(),`useNavigate() may be used only in the context of a <Router> component.`);let e=X.useContext(Tf),{basename:t,navigator:n}=X.useContext(Pf),{matches:r}=X.useContext(If),{pathname:i}=qf(),a=JSON.stringify(hu(r)),o=X.useRef(!1);return X.useLayoutEffect(()=>{o.current=!0}),X.useCallback((r,s={})=>{if(Sl(o.current,Jf),!o.current)return;if(typeof r==`number`){n.go(r);return}let c=gu(r,JSON.parse(a),i,s.relative===`path`);e==null&&t!==`/`&&(c.pathname=c.pathname===`/`?t:vu([t,c.pathname])),Xu(typeof r==`string`?r:El(r),n.createHref(c),qu(n),`reject`),(s.replace?n.replace:n.push)(c,s.state,s)},[t,n,a,i,e])}var Zf=X.createContext(null);function Qf(){return X.useContext(Zf)}function $f(e){let t=X.useContext(If).outlet;return X.useMemo(()=>t&&X.createElement(Zf.Provider,{value:e},t),[t,e])}function ep(){let{matches:e}=X.useContext(If);return e[e.length-1]?.params??{}}function tp(e,{relative:t}={}){let{matches:n}=X.useContext(If),{pathname:r}=qf(),i=JSON.stringify(hu(n));return X.useMemo(()=>gu(e,JSON.parse(i),r,t===`path`),[e,i,r,t])}function np(e,t,n){Q(Kf(),`useRoutes() may be used only in the context of a <Router> component.`);let{navigator:r}=X.useContext(Pf),{matches:i}=X.useContext(If),a=i[i.length-1],o=a?a.params:{};a&&a.pathname;let s=a?a.pathnameBase:`/`;a&&a.route;let c=qf(),l;if(t){let e=typeof t==`string`?Dl(t):t;Q(s===`/`||e.pathname?.startsWith(s),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${s}" but pathname "${e.pathname}" was given in the \`location\` prop.`),l=e}else l=c;let u=l.pathname||`/`,d=u;if(s!==`/`){let e=s.replace(/^\//,``).split(`/`);d=`/`+u.replace(/^\//,``).split(`/`).slice(e.length).join(`/`)}let f;f=n?n.state.matches.length?n.state.matches.map(e=>Object.assign(e,{route:n.manifest[e.route.id]||e.route})):n.router.match(n.state.location):zl(e,{pathname:d});let p=lp(f&&f.map(e=>Object.assign({},e,{params:Object.assign({},o,e.params),pathname:vu([s,r.encodeLocation?r.encodeLocation(e.pathname.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathname]),pathnameBase:e.pathnameBase===`/`?s:vu([s,r.encodeLocation?r.encodeLocation(e.pathnameBase.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathnameBase])})),i,n);return t&&p?X.createElement(Ff.Provider,{value:{location:{pathname:`/`,search:``,hash:``,state:null,key:`default`,mask:void 0,...l},navigationType:`POP`}},p):p}function rp(){let e=vp(),t=Tu(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null;return X.createElement(X.Fragment,null,X.createElement(`h2`,null,`Unexpected Application Error!`),X.createElement(`h3`,{style:{fontStyle:`italic`}},t),n?X.createElement(`pre`,{style:{padding:`0.5rem`,backgroundColor:`rgba(200,200,200, 0.5)`}},n):null,null)}var ip=X.createElement(rp,null),ap=class extends X.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static contextType=kf;static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!==`idle`&&e.revalidation===`idle`?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error===void 0?t.error:e.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error(`React Router caught the following error during render`,e)}render(){let e=this.state.error;if(this.context&&typeof e==`object`&&e&&`digest`in e&&typeof e.digest==`string`){let t=Wf(e.digest);t&&(e=t)}let t=e===void 0?this.props.children:X.createElement(If.Provider,{value:this.props.routeContext},X.createElement(Lf.Provider,{value:this.props.routeContext.isDataRoute},X.createElement(Rf.Provider,{value:this.props.routeContext.matches[this.props.routeContext.matches.length-1]?.route.id},X.createElement(zf.Provider,{value:e,children:this.props.component}))));return this.context?X.createElement(sp,{error:e},t):t}},op=new WeakMap;function sp({children:e,error:t}){let{basename:n,navigator:r}=X.useContext(Pf);if(typeof t==`object`&&t&&`digest`in t&&typeof t.digest==`string`){let e=Uf(t.digest);if(e){let i=op.get(t);if(i)throw i;let a=ku(e.location,n),o=a.absoluteURL||a.to;if(Xu(e.location,o,qu(r),`allow-explicit`),Bd(o))throw Error(`Invalid redirect location`);if(Ou&&!op.get(t)){if(a.isExternal||e.reloadDocument)window.location.href=o;else{let n=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(a.to,{replace:e.replace}));throw op.set(t,n),n}}return X.createElement(`meta`,{httpEquiv:`refresh`,content:`0;url=${o}`})}}return e}function cp({routeContext:e,match:t,children:n}){let r=X.useContext(Tf);return r&&r.static&&r.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=t.route.id),X.createElement(If.Provider,{value:e},X.createElement(Lf.Provider,{value:e.isDataRoute},X.createElement(Rf.Provider,{value:t.route.id},n)))}function lp(e,t=[],n){let r=n?.state;if(e==null){if(!r)return null;if(r.errors)e=r.matches;else if(t.length===0&&!r.initialized&&r.matches.length>0)e=r.matches;else return null}let i=e,a=r?.errors;if(a!=null){let e=i.findIndex(e=>e.route.id&&a?.[e.route.id]!==void 0);Q(e>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(a).join(`,`)}`),i=i.slice(0,Math.min(i.length,e+1))}let o=!1,s=-1;if(n&&r){o=r.renderFallback;for(let e=0;e<i.length;e++){let t=i[e];if((t.route.HydrateFallback||t.route.hydrateFallbackElement)&&(s=e),t.route.id){let{loaderData:e,errors:a}=r,c=t.route.loader&&!e.hasOwnProperty(t.route.id)&&(!a||a[t.route.id]===void 0);if(t.route.lazy||c){n.isStatic&&(o=!0),i=s>=0?i.slice(0,s+1):[i[0]];break}}}}let c=n?.onError,l=r&&c?(e,t)=>{c(e,{location:r.location,params:r.matches?.[0]?.params??{},pattern:Eu(r.matches),errorInfo:t})}:void 0;return i.reduceRight((e,n,c)=>{let u,d=!1,f=null,p=null;r&&(u=a&&n.route.id?a[n.route.id]:void 0,f=n.route.errorElement||ip,o&&(s<0&&c===0?(Cp(`route-fallback`,!1,"No `HydrateFallback` element provided to render during initial hydration"),d=!0,p=null):s===c&&(d=!0,p=n.route.hydrateFallbackElement||null)));let m=t.concat(i.slice(0,c+1)),h=()=>{let t;return t=u?f:d?p:n.route.Component?X.createElement(n.route.Component,null):n.route.element?n.route.element:e,X.createElement(cp,{match:n,routeContext:{outlet:e,matches:m,isDataRoute:r!=null},children:t})};return r&&(n.route.ErrorBoundary||n.route.errorElement||c===0)?X.createElement(ap,{location:r.location,revalidation:r.revalidation,component:f,error:u,children:h(),routeContext:{outlet:null,matches:m,isDataRoute:!0},onError:l}):h()},null)}function up(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function dp(e){let t=X.useContext(Tf);return Q(t,up(e)),t}function fp(e){let t=X.useContext(Ef);return Q(t,up(e)),t}function pp(e){let t=X.useContext(Df);return Q(t,up(e)),t}function mp(e){let t=X.useContext(Of);return Q(t,up(e)),t}function hp(e){let t=X.useContext(Rf);return Q(t,`${e} can only be used on routes that contain a unique "id"`),t}function gp(){let{navigation:e}=mp(`useNavigation`);return X.useMemo(()=>{let{matches:t,historyAction:n,...r}=e;return r},[e])}function _p(){let{matches:e}=fp(`useMatches`),{loaderData:t}=pp(`useMatches`);return X.useMemo(()=>e.map(e=>Vl(e,t)),[e,t])}function vp(){let e=X.useContext(zf),t=pp(`useRouteError`),n=hp(`useRouteError`);return e===void 0?t.errors?.[n]:e}var yp=0;function bp(e){let{router:t,basename:n}=dp(`useBlocker`),r=fp(`useBlocker`),[i,a]=X.useState(``),o=X.useCallback(t=>{if(typeof e!=`function`)return!!e;if(n===`/`)return e(t);let{currentLocation:r,nextLocation:i,historyAction:a}=t;return e({currentLocation:{...r,pathname:cu(r.pathname,n)||r.pathname},nextLocation:{...i,pathname:cu(i.pathname,n)||i.pathname},historyAction:a})},[n,e]);return X.useEffect(()=>{let e=String(++yp);return a(e),()=>t.deleteBlocker(e)},[t]),X.useEffect(()=>{i!==``&&t.getBlocker(i,o)},[t,i,o]),i&&r.blockers.has(i)?r.blockers.get(i):ad}function xp(){let{router:e}=dp(`useNavigate`),t=hp(`useNavigate`),n=X.useRef(!1);return X.useLayoutEffect(()=>{n.current=!0}),X.useCallback(async(r,i={})=>{Sl(n.current,Jf),n.current&&(typeof r==`number`?await e.navigate(r):await e.navigate(r,{fromRouteId:t,...i}))},[e,t])}var Sp={};function Cp(e,t,n){!t&&!Sp[e]&&(Sp[e]=!0,Sl(!1,n))}var wp=/:(\d+)(?:-(\d+))?$/;function Tp(e){return wp.exec(e)?.[0]??``}function Ep(e){return Math.round(e*10)/10}var Dp=[`ru`,`en`];function Op(e){return e===`ru`?`ru-RU`:`en-US`}function kp(e,t){return t.toLocaleString(Op(e))}function Ap(e,t){return t.toLocaleDateString(Op(e),{day:`2-digit`,month:`2-digit`})}function jp(e,t){return new Date(t).toLocaleDateString(Op(e),{day:`2-digit`,month:`2-digit`,year:`2-digit`})}function Mp(e,t){return new Date(t).toLocaleString(Op(e),{day:`2-digit`,month:`2-digit`,year:`numeric`,hour:`2-digit`,minute:`2-digit`})}function Np(e,t){let n=String(Ep(t));return e===`ru`?n.replace(`.`,`,`):n}function Pp(e,t){return t===null?`—`:`$${t.toLocaleString(Op(e),{minimumFractionDigits:2,maximumFractionDigits:2})}`}var Fp=/^\s*[-*+]\s+\[(?<mark>[ xX])\]\s+(?<text>.*)$/,Ip=/^\s{0,3}(?<fence>`{3,}|~{3,})/;function Lp(e){let t=[],n=null;for(let[r,i]of e.split(`
56
+ `).entries()){let e=Ip.exec(i)?.groups?.fence;if(e!==void 0){n===null?n=e:e.startsWith(n)&&(n=null);continue}if(n!==null)continue;let a=Fp.exec(i)?.groups;a&&t.push({line:r,checked:a.mark!==` `,text:a.text??``})}return t}function Rp(e,t){let n=Lp(e).find(e=>e.line===t);if(!n)return e;let r=e.split(`
57
+ `);return r[t]=(r[t]??``).replace(/\[[ xX]\]/,n.checked?`[ ]`:`[x]`),r.join(`
58
+ `)}var zp=new Set([`done`,`cancelled`]);function Bp(e){return zp.has(e)}function Vp(e){let t=new Map,n=new Map,r=new Map,i=new Map;for(let a of e){t.set(a.id,a);for(let e of a.blockedBy)Xp(n,e,a);for(let e of a.related)Xp(r,e,a);a.epic!==void 0&&Xp(i,a.epic,a)}return{byId:t,dependentsOf:n,relatedFrom:r,childrenOf:i}}function Hp(e,t){return Yp(e.blockedBy,t).filter(e=>!Bp(e.status))}function Up(e,t){return Hp(e,t).length>0}function Wp(e,t){return[...new Set([...e.blockedBy,...e.related])].filter(e=>!t.byId.has(e))}function Gp(e,t){return t.dependentsOf.get(e.id)??[]}function Kp(e,t){let n=[...Yp(e.related,t),...t.relatedFrom.get(e.id)??[]];return[...new Map(n.filter(t=>t.id!==e.id).map(e=>[e.id,e])).values()]}function qp(e,t){return t.childrenOf.get(e.id)??[]}function Jp(e,t){if(e.status===`done`)return 100;if(e.type===`epic`){let n=qp(e,t).filter(e=>e.status!==`cancelled`);return n.length===0?null:Zp(n.filter(e=>e.status===`done`).length,n.length)}let n=Lp(e.body);return n.length===0?null:Zp(n.filter(e=>e.checked).length,n.length)}function Yp(e,t){return e.flatMap(e=>t.byId.get(e)??[])}function Xp(e,t,n){let r=e.get(t);r?r.push(n):e.set(t,[n])}function Zp(e,t){return Math.round(e/t*100)}var Qp=864e5;7*Qp;var $p={fixed:`done`,obsolete:`cancelled`,duplicate:`cancelled`,"epic-done":`done`};function em(e){if(Bp(e.status)&&e.closed!==void 0)return new Date(Date.parse(e.closed)+7*Qp)}var tm=/^[A-Z][A-Z0-9]{0,9}-[1-9]\d*$/,nm=/^[A-Z][A-Z0-9]{0,9}$/;function rm(e){if(!tm.test(e))return null;let t=e.lastIndexOf(`-`);return{prefix:e.slice(0,t),number:Number(e.slice(t+1))}}function im(e,t){return`${e}-${t}`}function am(e,t){let n=rm(e),r=rm(t);return!n||!r?e.localeCompare(t):n.prefix===r.prefix?n.number-r.number:n.prefix.localeCompare(r.prefix)}function om(e){return{error:()=>e}}var sm=[`task`,`epic`],cm=[`backlog`,`in-progress`,`blocked`,`done`,`cancelled`],lm=[`low`,`medium`,`high`,`critical`],um=[`bloaters`,`change-preventers`,`couplers`,`data-dealers`,`dispensables`,`functional-abusers`,`lexical-abusers`,`oo-abusers`,`obfuscators`,`bug`],dm=[`fixed`,`obsolete`,`duplicate`,`epic-done`];function fm(e){return e.trim().toLowerCase()}var pm=G().regex(tm,om(`bad-id`)),mm=ls(pm).default([]).transform(e=>[...new Set(e)]),hm=q({id:pm,title:G().trim().min(1,om(`empty-title`)),type:J(sm).default(`task`),status:J(cm).default(`backlog`),priority:J(lm).default(`medium`),category:J(um).optional(),tags:ls(G()).default([]).transform(e=>[...new Set(e.map(fm).filter(Boolean))]),epic:pm.optional(),blockedBy:mm,related:mm,created:Gs({offset:!0}),source:G().optional(),anchor:G().optional(),closed:Gs({offset:!0}).optional(),resolution:J(dm).optional(),reason:G().optional(),verified:Gs({offset:!0}).optional()});q({name:G().trim().min(1,om(`empty-name`)),prefix:G().regex(nm,om(`bad-prefix`)),repos:ls(G()).default([]),issuedUpTo:$o().int().nonnegative().optional(),active:rs().default(!0)});var gm=[`cli`,`web`,`check`,`sweep`],_m=`unknown`;function vm(e){return J([...e,_m]).catch(_m)}function ym(e){return J(e).optional().catch(void 0)}var bm=[`review`,`incidental`],xm=[`source-changed`,`source-missing`,`duplicate`,`no-source`],Sm=[`full`,`changed`],Cm=[`symbol`,`anchor`,`file`];[...Cm];var wm=[`source`,`title`,`symbol`];[...wm];var Tm={at:Gs({offset:!0}),task:G().min(1),via:vm(gm),undo:Y(!0).optional().catch(void 0)},Em=hm.extend({priority:vm(lm),category:vm(um).optional(),resolution:vm(dm).optional()});hs(`kind`,[q({...Tm,kind:Y(`created`),type:J(sm),priority:vm(lm),tags:ls(G()),source:G().optional(),epic:G().optional(),category:vm(um).optional(),found:vm(bm).optional(),origin:q({branch:G().optional(),commit:G().min(1)}).optional()}),q({...Tm,kind:Y(`status`),from:J(cm),to:J(cm),resolution:vm(dm).optional()}),q({...Tm,kind:Y(`priority`),from:vm(lm),to:vm(lm)}),q({...Tm,kind:Y(`deleted`),snapshot:Em}),q({...Tm,kind:Y(`category`),from:vm(um).optional(),to:vm(um).optional()}),q({...Tm,kind:Y(`verified`),source:G().optional()}),q({...Tm,kind:Y(`candidate`),evidence:J(xm),mode:vm(Sm),method:ym(Cm),bySymbol:rs().optional(),byAnchor:rs().optional(),match:ym(wm)}),q({...Tm,kind:Y(`candidate-gone`),evidence:J(xm)}),q({...Tm,kind:Y(`candidate-filtered`),symbol:G()})]),Object.keys(Em.shape);var Dm={number:0,nan:NaN,string:``,boolean:!1,bigint:0n,symbol:Symbol(),function:()=>void 0,undefined:void 0,null:null,array:[],object:{}};function Om(e,{issue:t,receivedType:n}){let r=n===void 0?void 0:km(n),i=e({...t,input:r});return typeof i==`string`?i:i?.message??t.message}function km(e){return e in Dm?Dm[e]:Object.create({constructor:{name:e}})}var Am=Xr().localeError,jm={bloaters:`Bloaters`,"change-preventers":`Change preventers`,couplers:`Couplers`,"data-dealers":`Data dealers`,dispensables:`Dispensables`,"functional-abusers":`Functional abusers`,"lexical-abusers":`Lexical abusers`,"oo-abusers":`OO abusers`,obfuscators:`Obfuscators`,bug:`Bug`},Mm={backlog:`backlog`,"in-progress":`in progress`,blocked:`blocked`,done:`done`,cancelled:`cancelled`},Nm={low:`low`,medium:`medium`,high:`high`,critical:`critical`},Pm={fixed:`fixed`,obsolete:`code gone`,duplicate:`duplicate`,"epic-done":`epic done`},Fm={"source-changed":`code changed`,"source-missing":`file missing`,duplicate:`duplicate`,"no-source":`no source`,total:`Total`},Im={symbol:`by symbol`,anchor:`by source lines`,file:`by file`},Lm={source:`by code location`,title:`by title`,symbol:`by symbol`},Rm={none:`none`,unreadable:`unreadable`,stale:`stale`,fresh:`fresh`},zm={task:[`task`,`tasks`],line:[`line`,`lines`],project:[`project`,`projects`],day:[`day`,`days`],week:[`week`,`weeks`],session:[`session`,`sessions`]};function Bm(e){return Fm[e]}function Vm(e){return Im[e]}function Hm(e){return Lm[e]}function Um(e){return Rm[e]}function Wm(e,t){let[n,r]=zm[t];return F(e,n,r)}function Gm(e){if(e===null)return`—`;if(e<1)return`less than a day`;let t=Math.round(e);return`${t} ${ce(t,`day`,`days`)}`}function Km(e){return e===null?`—`:e<1?`within a day`:`within ${Gm(e)}`}function qm({open:e,weeklyNet:t,weeks:n,until:r}){if(e===0)return`No open tasks`;if(n!==null&&r!==null)return`Debt clears in about ${n} wk. (by ${Ap(`en`,new Date(r))})`;if(t===0)return`Debt is not shrinking`;let i=Ep(-t);return`Debt grows by ${i} ${ce(i,`task`,`tasks`)} a week`}function Jm({windowDays:e,closed:t,created:n}){return`over ${e%7==0?F(e/7,`week`,`weeks`):F(e,`day`,`days`)}: closed ${t}, created ${n}`}function Ym(e){switch(e.kind){case`debt-growing`:return`Debt has grown for ${F(e.params.weeks,`week`,`weeks`)} straight: created ${e.params.created}, closed ${e.params.closed}`;case`urgent-stale`:return`Urgent tasks have been waiting more than ${F(e.params.days,`day`,`days`)}: ${e.params.count}`;case`stuck`:return`Stuck in progress: ${e.params.count}, longest ${e.params.id} — ${Gm(e.params.days)}`;case`noisy-check`:{let{evidence:t,method:n,percent:r,decided:i,windowDays:a}=e.params;return`Check ${n===null?`"${Bm(t)}"`:`"${Bm(t)}" ${Vm(n)}`} is almost always wrong: precision ${r}% on ${i} decided over ${F(a,`day`,`days`)}`}case`low-changed`:return`Code changed for ${F(e.params.count,`task`,`tasks`)} with low priority — re-check when convenient ("clean up the backlog")`;case`stale-low`:return`Tasks with low priority older than ${F(e.params.days,`day`,`days`)}: ${e.params.count} — clean them up (backlog prune)`}}function Xm(e){switch(e.kind){case`bad-id`:return`invalid ID`;case`empty-title`:return`empty title`;case`empty-name`:return`empty project name`;case`bad-prefix`:return`invalid prefix`;case`zod`:return Om(Am,e)}}function Zm(e){switch(e.code){case`self-block`:return`a task cannot block itself`;case`self-related`:return`a task cannot be related to itself`;case`referenced-as-epic`:return`other tasks refer to this task as their epic: ${e.children.join(`, `)}`;case`blocker-cycle`:return`blocker cycle: ${e.cycle.join(` → `)}`;case`resolution-needs-status`:return`resolution ${e.resolution} requires status ${e.status}`;case`reason-without-resolution`:return`reason can only be set together with resolution`;case`epic-self`:return`a task cannot be its own epic`;case`epic-missing`:return`epic ${e.epic} not found`;case`epic-not-epic`:return`${e.epic} is not an epic`;case`epic-foreign-project`:return`epic ${e.epic} belongs to another project — clear the epic or pick one from this project`;case`epic-in-epic`:return`an epic cannot belong to another epic`;case`reference-missing`:return`${e.id} not found`;case`no-frontmatter`:return`file does not start with frontmatter (---)`;case`frontmatter-unclosed`:return`frontmatter is not closed with a --- line`;case`yaml`:return`YAML error: ${e.detail}`;case`schema`:return e.path===``?Xm(e.issue):`${e.path}: ${Xm(e.issue)}`;case`id-mismatch`:return`id ${e.id} does not match the file name ${e.file}.md`;case`prefix-mismatch`:return`prefix of ${e.file} does not match the project prefix ${e.prefix}`;case`id-exhausted`:return`could not allocate an ID in ${e.attempts} attempts`}}function Qm(e){return[...new Set(e.map(Zm))].join(`; `)}function $m(e){return`all tasks of the epic are closed: ${e.join(`, `)}`}function eh(e){switch(e.kind){case`references-removed`:return`${e.taskId}: removed references to missing tasks: ${e.ids.join(`, `)}`;case`epic-closed`:return`${e.taskId}: epic closed — ${$m(e.childIds)}`;case`epic-reopened`:return`${e.taskId}: epic reopened — it has open tasks: ${e.childIds.join(`, `)}`;case`source-moved`:return`${e.taskId}: source moved ${Tp(e.from)} → ${Tp(e.to)}`}}function th(e){switch(e.kind){case`fix-failed`:return`${e.taskId}: could not fix — ${nh(e)}`;case`task-invalid`:return`${e.taskId}: ${Zm(e.problem)}`;case`file-not-parsed`:return`File ${e.path} could not be parsed: ${Qm(e.problems)}`;case`epics-wait-for-files`:return`Epics ${e.epicIds.join(`, `)} are complete but will not close until the unparsed files are fixed`;case`project-without-repos`:return`Project ${e.projectId}: repos has no paths — its tasks' code cannot be checked`;case`project-repos-missing`:return`Project ${e.projectId}: none of the repos paths exist (${e.repos.join(`, `)}) — its tasks' code cannot be checked`;case`project-repo-not-git`:return`Project ${e.projectId}: ${e.repo} is not a git repository — commits and code edits of its tasks are not checked`;case`project-history-unreadable`:return`Project ${e.projectId}: could not read the git history in ${e.repo} — commits and code edits of its tasks were not checked`;case`prefix-shared`:return`Projects ${e.projectIds.join(`, `)} share the prefix ${e.prefix} — their task IDs collide. Change prefix in project.md of one of them`}}function nh(e){switch(e.cause){case`invalid`:return Qm(e.problems);case`changed-during-check`:return`the file changed during the check`;case`gone-during-check`:return`the file disappeared during the check`}}var rh={hookMark:`Backlog`,languageName:`English`,problem:Zm,problems:Qm,schemaIssue:Xm,categoryLabel:e=>e===void 0?`not set`:jm[e],statusLabel:e=>Mm[e],priorityLabel:e=>Nm[e],resolutionLabel:e=>Pm[e],evidenceLabel:Bm,checkMethodLabel:Vm,duplicateMatchLabel:Hm,graphStateLabel:Um,count:Wm,days:Gm,p90:Km,forecast:qm,forecastTail:Jm,signal:Ym,epicDoneReason:$m,fileBusy:(e,t,n)=>`${e} has been locked by another process for more than ${n} s (${t})`,checkFix:eh,checkProblem:th,candidatesRecordFailed:(e,t)=>`Could not record candidates to the ${e} journal: ${t}`},ih=$r().localeError,ah={bloaters:`Разбухшее`,"change-preventers":`Мешает изменениям`,couplers:`Связанность`,"data-dealers":`Работа с данными`,dispensables:`Лишнее`,"functional-abusers":`Императивность`,"lexical-abusers":`Именование`,"oo-abusers":`ООП`,obfuscators:`Запутанность`,bug:`Ошибка`},oh={backlog:`в беклоге`,"in-progress":`в работе`,blocked:`заблокирована`,done:`сделана`,cancelled:`отменена`},sh={low:`низкий`,medium:`средний`,high:`высокий`,critical:`критичный`},ch={fixed:`исправлено`,obsolete:`кода нет`,duplicate:`дубль`,"epic-done":`эпик завершён`},lh={"source-changed":`код изменился`,"source-missing":`файл пропал`,duplicate:`дубль`,"no-source":`нет source`,total:`Всего`},uh={symbol:`по символу`,anchor:`по строкам source`,file:`по файлу`},dh={source:`по месту в коде`,title:`по заголовку`,symbol:`по символу`},fh={none:`нет`,unreadable:`не читается`,stale:`устарел`,fresh:`свежий`},ph={task:[`задача`,`задачи`,`задач`],line:[`строка`,`строки`,`строк`],project:[`проект`,`проекта`,`проектов`],day:[`день`,`дня`,`дней`],week:[`неделя`,`недели`,`недель`],session:[`сессия`,`сессии`,`сессий`]};function mh(e){return lh[e]}function hh(e){return uh[e]}function gh(e){return dh[e]}function _h(e){return fh[e]}function vh(e,t){let[n,r,i]=ph[t];return O(e,n,r,i)}function yh(e){return`${e} ${L(e,`дня`,`дней`,`дней`)}`}function bh(e){return e===null?`—`:e<1?`меньше дня`:`${Math.round(e)} дн.`}function xh(e){return e===null?`—`:e<1?`быстрее суток`:`за ${bh(e)}`}function Sh({open:e,weeklyNet:t,weeks:n,until:r}){if(e===0)return`Открытых задач нет`;if(n!==null&&r!==null)return`Долг разберётся примерно за ${n} нед. (к ${Ap(`ru`,new Date(r))})`;if(t===0)return`Долг не уменьшается`;let i=Ep(-t);return`Долг растёт на ${Np(`ru`,i)} ${L(i,`задача`,`задачи`,`задач`)} в неделю`}function Ch({windowDays:e,closed:t,created:n}){return`за ${e%7==0?O(e/7,`неделю`,`недели`,`недель`):O(e,`день`,`дня`,`дней`)}: закрыто ${t}, создано ${n}`}function wh(e){switch(e.kind){case`debt-growing`:return`Долг растёт ${O(e.params.weeks,`неделю`,`недели`,`недель`)} подряд: создано ${e.params.created}, закрыто ${e.params.closed}`;case`urgent-stale`:return`Срочные задачи ждут дольше ${yh(e.params.days)}: ${e.params.count}`;case`stuck`:return`Застряли в работе: ${e.params.count}, дольше всех ${e.params.id} — ${bh(e.params.days)}`;case`noisy-check`:{let{evidence:t,method:n,percent:r,decided:i,windowDays:a}=e.params;return`Проверка ${n===null?`«${mh(t)}»`:`«${mh(t)}» ${hh(n)}`} почти всегда ошибается: точность ${r}% на ${i} решённых за ${O(a,`день`,`дня`,`дней`)}`}case`low-changed`:return`Код менялся у ${O(e.params.count,`задачи`,`задач`,`задач`)} с низким приоритетом — перепроверьте при случае («почисти беклог»)`;case`stale-low`:return`Задач с низким приоритетом старше ${yh(e.params.days)}: ${e.params.count} — разберите (backlog prune)`}}function Th(e){switch(e.kind){case`bad-id`:return`некорректный ID`;case`empty-title`:return`пустой заголовок`;case`empty-name`:return`пустое имя проекта`;case`bad-prefix`:return`некорректный префикс`;case`zod`:return Om(ih,e)}}function Eh(e){switch(e.code){case`self-block`:return`задача не может блокировать саму себя`;case`self-related`:return`задача не может быть связана сама с собой`;case`referenced-as-epic`:return`на задачу ссылаются как на эпик: ${e.children.join(`, `)}`;case`blocker-cycle`:return`цикл блокеров: ${e.cycle.join(` → `)}`;case`resolution-needs-status`:return`resolution ${e.resolution} требует статус ${e.status}`;case`reason-without-resolution`:return`reason задаётся только вместе с resolution`;case`epic-self`:return`задача не может быть своим эпиком`;case`epic-missing`:return`эпик ${e.epic} не найден`;case`epic-not-epic`:return`${e.epic} не является эпиком`;case`epic-foreign-project`:return`эпик ${e.epic} из другого проекта — снимите эпик или выберите эпик этого проекта`;case`epic-in-epic`:return`эпик не может входить в другой эпик`;case`reference-missing`:return`${e.id} не найдена`;case`no-frontmatter`:return`файл не начинается с frontmatter (---)`;case`frontmatter-unclosed`:return`frontmatter не закрыт строкой ---`;case`yaml`:return`ошибка YAML: ${e.detail}`;case`schema`:return e.path===``?Th(e.issue):`${e.path}: ${Th(e.issue)}`;case`id-mismatch`:return`id ${e.id} не совпадает с именем файла ${e.file}.md`;case`prefix-mismatch`:return`префикс ${e.file} не совпадает с префиксом проекта ${e.prefix}`;case`id-exhausted`:return`не удалось выделить ID за ${e.attempts} попыток`}}function Dh(e){return[...new Set(e.map(Eh))].join(`; `)}function Oh(e){return`все задачи эпика закрыты: ${e.join(`, `)}`}function kh(e){switch(e.kind){case`references-removed`:return`${e.taskId}: убраны ссылки на несуществующие задачи: ${e.ids.join(`, `)}`;case`epic-closed`:return`${e.taskId}: эпик закрыт — ${Oh(e.childIds)}`;case`epic-reopened`:return`${e.taskId}: эпик снова открыт — в нём открытые задачи: ${e.childIds.join(`, `)}`;case`source-moved`:return`${e.taskId}: source сдвинулся ${Tp(e.from)} → ${Tp(e.to)}`}}function Ah(e){switch(e.kind){case`fix-failed`:return`${e.taskId}: не удалось исправить — ${jh(e)}`;case`task-invalid`:return`${e.taskId}: ${Eh(e.problem)}`;case`file-not-parsed`:return`Файл ${e.path} не разобран: ${Dh(e.problems)}`;case`epics-wait-for-files`:return`Эпики ${e.epicIds.join(`, `)} завершены, но не закроются, пока не исправлены неразобранные файлы`;case`project-without-repos`:return`Проект ${e.projectId}: в repos нет путей — код его задач не проверить`;case`project-repos-missing`:return`Проект ${e.projectId}: ни один путь из repos не существует (${e.repos.join(`, `)}) — код его задач не проверить`;case`project-repo-not-git`:return`Проект ${e.projectId}: ${e.repo} — не git-репозиторий, коммиты и правки кода его задач не проверяются`;case`project-history-unreadable`:return`Проект ${e.projectId}: не удалось прочитать историю git в ${e.repo} — коммиты и правки кода его задач не проверены`;case`prefix-shared`:return`У проектов ${e.projectIds.join(`, `)} один префикс ${e.prefix} — ID их задач пересекаются. Смените prefix в project.md одного из них`}}function jh(e){switch(e.cause){case`invalid`:return Dh(e.problems);case`changed-during-check`:return`файл изменился во время проверки`;case`gone-during-check`:return`файл исчез во время проверки`}}var Mh={hookMark:`Беклог`,languageName:`Русский`,problem:Eh,problems:Dh,schemaIssue:Th,categoryLabel:e=>e===void 0?`не указана`:ah[e],statusLabel:e=>oh[e],priorityLabel:e=>sh[e],resolutionLabel:e=>ch[e],evidenceLabel:mh,checkMethodLabel:hh,duplicateMatchLabel:gh,graphStateLabel:_h,count:vh,days:bh,p90:xh,forecast:Sh,forecastTail:Ch,signal:wh,epicDoneReason:Oh,fileBusy:(e,t,n)=>`${e} занят другим процессом дольше ${n} с (${t})`,checkFix:kh,checkProblem:Ah,candidatesRecordFailed:(e,t)=>`Не удалось записать кандидатов в журнал ${e}: ${t}`};function Nh(e){return e===`ru`?Mh:rh}var Ph={skipLink:`Skip to content`,sidebarNav:`Navigation`,brand:`backlog`,sectionsLabel:`Sections`,tasksNav:`Tasks`,statsNav:`Statistics`,signalsHidden:e=>`, alerts: ${e}`,collapseProjects:`Collapse project list`,expandProjects:`Expand project list`,projects:`Projects`,taskWord:e=>ce(e,`task`,`tasks`),checkedSuffix:`\xA0— checked`,languageSwitchLabel:`Interface language`,languageSwitchFailed:`Failed to change the language`,graphNotes:{none:{title:`No code graph`,hint:[{code:`code-review-graph build`},{text:` — check candidates are less precise`}]},stale:{title:`Code graph is stale`,hint:[{code:`code-review-graph watch`},{text:` or the `},{code:`update`},{text:` hook — without them the check can't see symbols`}]},unreadable:{title:`Code graph unreadable`,hint:[{code:`code-review-graph build`},{text:` again — the database is from a different version or path`}]}},checkboxLabel:e=>`Include project ${e} in the “Projects” scope`,setActiveFailed:e=>e?`Failed to include the project`:`Failed to exclude the project`,deleteButtonLabel:e=>`Delete project ${e}`,deleteButtonTitle:`Delete project`,deleteFailed:`Failed to delete the project`,deleteDialogTitle:e=>`Delete project “${e}”?`,deleteDialogDescriptionUnknown:`The project directory will be deleted along with all its tasks; this cannot be undone.`,deleteDialogDescription:e=>`Tasks: ${e}. The project directory will be deleted along with them; this cannot be undone.`,confirmWordLabel:e=>`Type the project id: ${e}`,confirmLabel:`Delete`},Fh={skipLink:`Перейти к содержимому`,sidebarNav:`Навигация`,brand:`беклог`,sectionsLabel:`Разделы`,tasksNav:`Задачи`,statsNav:`Статистика`,signalsHidden:e=>`, тревог: ${e}`,collapseProjects:`Свернуть список проектов`,expandProjects:`Развернуть список проектов`,projects:`Проекты`,taskWord:e=>L(e,`задача`,`задачи`,`задач`),checkedSuffix:`\xA0— с\xA0галочкой`,languageSwitchLabel:`Язык интерфейса`,languageSwitchFailed:`Не удалось изменить язык`,graphNotes:{none:{title:`Без графа кода`,hint:[{code:`code-review-graph build`},{text:` — кандидаты проверки точнее`}]},stale:{title:`Граф кода устарел`,hint:[{code:`code-review-graph watch`},{text:` или хук `},{code:`update`},{text:` — без них проверка не видит символов`}]},unreadable:{title:`Граф кода не читается`,hint:[{code:`code-review-graph build`},{text:` заново — база другой версии или от другого пути`}]}},checkboxLabel:e=>`Учитывать проект ${e} в области «Проекты»`,setActiveFailed:e=>`Не удалось ${e?`учесть`:`исключить`} проект`,deleteButtonLabel:e=>`Удалить проект ${e}`,deleteButtonTitle:`Удалить проект`,deleteFailed:`Не удалось удалить проект`,deleteDialogTitle:e=>`Удалить проект «${e}»?`,deleteDialogDescriptionUnknown:`Каталог проекта удалится со всеми задачами, отменить нельзя.`,deleteDialogDescription:e=>`Задач: ${e}. Каталог проекта удалится вместе с ними, отменить нельзя.`,confirmWordLabel:e=>`Введите id проекта: ${e}`,confirmLabel:`Удалить`},Ih=(e,t)=>`Changed ${e} of ${t}`,Lh={docTitle:e=>`${e} — Backlog`,taskDocTitle:(e,t)=>`${e} · ${t} — Backlog`,projects:`Projects`,autoClosed:`Closed by agent`,autoClosedInProject:e=>`Closed by agent · ${e}`,missingTask:e=>`Task ${e} not found — it may have been deleted after it was closed.`,parseErrorsTitle:`Failed to parse files:`,loadingTasks:`Loading tasks…`,unknownProject:`Project not found.`,hiddenOpenNote:e=>`${e} more open ${ce(e,`task`,`tasks`)} — in projects without the checkbox.`,noTasksInScope:e=>`No tasks in the included projects. ${e}`,noTasksYet:e=>[`No tasks yet. The backlog is filled by the agent: it records tasks with `,e(`backlog new`),` while it works on the code.`],noOpenTasksInScope:e=>`No open tasks in the included projects. ${e}`,noOpenTasks:`No open tasks.`,showAllStatuses:`Show all statuses`,noMatches:`Nothing matches the filters.`,resetFilters:`Reset filters`,taskCount:e=>`${F(e,`task`,`tasks`)} in the list`,status:`Status`,priority:`Priority`,type:`Type`,tags:`Tags`,task:`Task`,created:`Created`,closed:`Closed`,epicAndTags:`Epic and tags`,withoutBlockers:`no blockers`,autoClosedChip:`closed by agent`,searchPlaceholder:`Search by title, description, and ID`,searchLabel:`Search tasks`,tagsSummary:e=>`Tags (${e})`,tagsSummarySelected:(e,t)=>`Tags (${e}), ${t} selected`,findTag:`Find tag`,newBadge:`new`,epicBadge:`epic`,blockedTitle:`Has open blockers`,blockedBadge:`blockers`,epicPrefix:e=>`Epic: ${e}`,epicTitle:(e,t)=>`${e} — ${t}`,resetEpic:`Clear epic`,epics:`Epics`,anyEpic:`Any epic`,noEpic:`No epic`,epicNotFound:`epic not found`,anyEpicLabel:`any`,noEpicLabel:`no epic`,selectTask:e=>`Select ${e}`,selectionKeysHint:e=>`Space on a task selects it, Shift+Space selects a range, ${e} — to the actions on selected`,toActionsHint:e=>`${e} — to the actions`,selectAllVisible:`Select all visible`,selectionActions:`Actions on selected`,selectedCount:e=>`${e} selected`,hiddenByFilter:e=>`(${e} hidden by filter)`,closeAsObsolete:`Close as obsolete`,closeDialogTitle:e=>`Close ${F(e,`task`,`tasks`)} as obsolete?`,closeDialogDescription:e=>`Status becomes “${e}”; the reason is saved to every task.`,closeReason:`Reason`,closeConfirm:e=>`Close ${e}`,epic:`Epic`,removeFromEpic:`Remove from epic`,mixedProjects:`Tasks from different projects`,clearSelection:`Clear selection`,bulkFailed:`Couldn't change the tasks`,batchSummary:{close:(e,t)=>`Closed ${e} of ${t}`,priority:Ih,epic:Ih,restore:(e,t)=>`Restored ${e} of ${t}`},notChanged:e=>`${F(e,`task`,`tasks`)} not changed`,undo:`Undo`,undoFailed:`Couldn't undo`,collapseTags:`collapse`,showMoreTags:e=>`Show ${e} more`},Rh=(e,t)=>`${L(e,`Изменена`,`Изменено`,`Изменено`)} ${e} из ${t}`,zh={docTitle:e=>`${e} — Беклог`,taskDocTitle:(e,t)=>`${e} · ${t} — Беклог`,projects:`Проекты`,autoClosed:`Закрыты агентом`,autoClosedInProject:e=>`Закрыты агентом · ${e}`,missingTask:e=>`Задачи ${e} нет — возможно, её удалили после закрытия.`,parseErrorsTitle:`Не удалось разобрать файлы:`,loadingTasks:`Загружаем задачи…`,unknownProject:`Проект не найден.`,hiddenOpenNote:e=>`Ещё ${O(e,`открытая задача`,`открытые задачи`,`открытых задач`)} — в проектах без галочки.`,noTasksInScope:e=>`В учтённых проектах задач нет. ${e}`,noTasksYet:e=>[`Задач пока нет. Беклог наполняет агент: он записывает задачи командой `,e(`backlog new`),`, пока работает над кодом.`],noOpenTasksInScope:e=>`В учтённых проектах открытых задач нет. ${e}`,noOpenTasks:`Открытых задач нет.`,showAllStatuses:`Показать все статусы`,noMatches:`Под фильтры ничего не подходит.`,resetFilters:`Сбросить фильтры`,taskCount:e=>`В списке ${O(e,`задача`,`задачи`,`задач`)}`,status:`Статус`,priority:`Приоритет`,type:`Тип`,tags:`Теги`,task:`Задача`,created:`Создана`,closed:`Закрыта`,epicAndTags:`Эпик и теги`,withoutBlockers:`без блокеров`,autoClosedChip:`закрыты агентом`,searchPlaceholder:`Поиск по названию, описанию и ID`,searchLabel:`Поиск задач`,tagsSummary:e=>`Теги (${e})`,tagsSummarySelected:(e,t)=>`Теги (${e}), выбрано ${t}`,findTag:`Найти тег`,newBadge:`новая`,epicBadge:`эпик`,blockedTitle:`Есть открытые блокеры`,blockedBadge:`блокеры`,epicPrefix:e=>`Эпик: ${e}`,epicTitle:(e,t)=>`${e} — ${t}`,resetEpic:`Сбросить эпик`,epics:`Эпики`,anyEpic:`Любой эпик`,noEpic:`Без эпика`,epicNotFound:`эпик не найден`,anyEpicLabel:`любой`,noEpicLabel:`без эпика`,selectTask:e=>`Выбрать ${e}`,selectAllVisible:`Выбрать все видимые`,selectionKeysHint:e=>`Пробел на задаче — выбрать её, Shift+Пробел — выбрать диапазон, ${e} — к действиям с выбранными`,toActionsHint:e=>`${e} — к действиям`,selectionActions:`Действия с выбранными`,selectedCount:e=>`Выбрано ${e}`,hiddenByFilter:e=>`(${e} ${L(e,`скрыта`,`скрыты`,`скрыто`)} фильтром)`,closeAsObsolete:`Закрыть как неактуальные`,closeDialogTitle:e=>`Закрыть ${O(e,`задачу`,`задачи`,`задач`)} как неактуальные?`,closeDialogDescription:e=>`Статус станет «${e}», причина запишется в каждую задачу.`,closeReason:`Причина`,closeConfirm:e=>`Закрыть ${e}`,epic:`Эпик`,removeFromEpic:`Вынуть из эпика`,mixedProjects:`Задачи из разных проектов`,clearSelection:`Снять выбор`,bulkFailed:`Не удалось изменить задачи`,batchSummary:{close:(e,t)=>`${L(e,`Закрыта`,`Закрыто`,`Закрыто`)} ${e} из ${t}`,priority:Rh,epic:Rh,restore:(e,t)=>`${L(e,`Возвращена`,`Возвращено`,`Возвращено`)} ${e} из ${t}`},notChanged:e=>`${L(e,`Не изменена`,`Не изменены`,`Не изменено`)} ${e} ${L(e,`задача`,`задачи`,`задач`)}`,undo:`Отменить`,undoFailed:`Не удалось отменить`,collapseTags:`свернуть`,showMoreTags:e=>`Показать ещё ${e}`};function Bh(e){return e.reduce((e,t)=>e+t,0)}function Vh(e,t,n=()=>1){let r=new Map;for(let i of e){let e=t(i);r.set(e,(r.get(e)??0)+n(i))}return r}function Hh(e){return e===null?`—`:`${Math.round(e*100)}%`}function Uh(e){return e>0?`+${e}`:String(e)}function Wh(e){return typeof e==`number`&&e>0}function Gh(e,t){return kp(e,Math.round(t))}function Kh(e,t,n){return n?`≈ ${Gh(e,t)}`:Gh(e,t)}function qh(e){return e===null?`—`:`≈ ${Hh(e)}`}var Jh=F(90,`day`,`days`),Yh=F(12,`week`,`weeks`),Xh={day:`day`,week:`week`,sample:`sample`},Zh=`the estimate appears after 5 fixes`,Qh={week:[`week`,`weeks`],day:[`day`,`days`]},$h={week:`a week`,day:`a day`},eg={week:`in the latest week with decisions`,day:`on the last day with decisions`},tg=(e,t)=>F(t,...Qh[e]),ng=e=>F(e,`task`,`tasks`),rg=e=>F(e,`token`,`tokens`);function ig(e,t){return`${Kh(`en`,e,t)} ${ce(Math.round(e),`line`,`lines`)}`}var ag={docTitle:e=>`${e} — Backlog`,heading:e=>`Statistics · ${e}`,alerts:`Alerts`,tabsLabel:`Statistics sections`,tabs:{overview:`Overview`,code:`Code`,quality:`Quality`,effect:`Effect`,cost:`Cost`},invalidJournalLines:e=>`Could not parse journal lines: ${e}. They are left out of the statistics — check the line format in the project's journal.jsonl.`,unknownJournalLines:e=>`Journal lines with an unknown value: ${e}. A renamed value (category, how found, resolution) is shown as "unknown", but is counted in the breakdowns.`,unparsedTasks:e=>`Could not parse task files: ${e}. The statistics use their last status from the journal; fix the files — backlog check shows the errors.`,noTasks:`No tasks yet.`,projectNotFound:`Project not found.`,loading:`Calculating statistics…`,journalEmpty:`The journal is still empty; everything is built from the dates in the task files.`,journalSince:e=>`The journal has been kept since ${e}; before that, dates come from the task files. Tasks deleted before then are not in the statistics.`,unavailableRepo:e=>`No access to the repository: ${e}. Check the path in repos of project.md and that it is a git repository.`,tableLabel:e=>`Table "${e}"`,noCodeData:`No code data: the projects have no accessible repositories`,folders:`Folders`,projects:`Projects`,chartLabel:(e,t)=>`${e}. Left and right arrows move by ${Xh[t]}`,periodOf:(e,t)=>e===`week`?`week of ${t}`:t,weekTrend:(e,t)=>`${e} ${t} vs last week`,weekTrendSpeech:(e,t)=>`${e} ${t?`less`:`more`} than a week ago — ${t?`better`:`worse`}`,tasksToday:`Tasks today`,createdAndClosed:`created and closed`,thisWeek:`This week`,weekNote:(e,t)=>`created ${e}, closed ${t}`,debtBy:{week:`Debt by week`,day:`Debt by day`},flowCreated:`created`,flowClosed:`closed`,flowOpen:`open`,flowOpenAtEnd:{week:`open at week end`,day:`open at day end`},flowSummary:({grain:e,periodCount:t,created:n,closed:r,openNow:i})=>`${tg(e,t)}: created ${n}, closed ${r}, open now ${i}`,createdBy:{week:`Created by week`,day:`Created by day`},createdTasks:`tasks created`,intakeSummary:(e,t,n)=>{let r=tg(e,t);return n===0?`${r}: no tasks created`:`${r}: created ${n}, on average ${Np(`en`,n/t)} ${$h[e]}`},hotspots:`Where it hurts`,noSourceFolders:`Open tasks have no source`,tags:`Tags`,noTags:`Open tasks have no tags`,openAge:`Age of open tasks`,ageBuckets:{week:`up to 7 days`,month:`7–30 days`,quarter:`30–90 days`,older:`over 90 days`},priorityCounts:{critical:`critical`,high:`high`,medium:`medium`,low:`low`},urgentStale:e=>`Critical and high older than 7 days: ${e}`,closing:`How tasks close`,closingReasons:{done:`done`,cancelled:`cancelled`,unknown:`resolution not recognized`},noiseAndReopens:`Noise and reopens`,duplicatesAmongClosed:`Duplicates among closed`,noSourceAmongCreated:`No source among created`,reopened:`Reopened`,codeNote:`Changes are commits over ${Jh}; lines are at the latest commit.`,churnTitle:`Debt in frequently changed code`,churnHint:`Rank is commits over ${Jh} × weight of the folder's open tasks`,churnEmpty:`No debt lies in code changed over ${Jh}`,commits:e=>F(e,`commit`,`commits`),churnTasks:(e,t)=>`${ng(e)}, weight ${t}`,densityTitle:`Debt density`,perKloc:e=>`${Np(`en`,e)} per 1000 lines`,accuracyTitle:`Check precision`,noCandidates:`The check has not found any candidates yet`,accuracyHint:`Share of check candidates after which the task was closed; the rest were confirmed as still relevant`,accuracyTable:`Check precision for the period`,accuracyHead:[`Evidence`,`Candidates`,`Closed`,`Confirmed`,`Undecided`,`Precision`],splitRow:e=>`└ of them ${e}`,beforeMethodRecorded:`before the method was recorded`,checkedBy:e=>`checked ${e}`,beforeMatchRecorded:`before the match was recorded`,matchedBy:e=>`matched ${e}`,decidedCandidates:`candidates decided`,precision:`precision`,accuracySummary:({grain:e,periodCount:t,decided:n,latestPrecision:r})=>r===null?`${tg(e,t)}: no decided candidates`:`${tg(e,t)}: decided ${n}, precision ${eg[e]} ${r}`,graphTitle:`Code graph`,graphMissing:e=>[`No code graph: the check compares source lines and the whole file. `,e(`code-review-graph build`),` in the project repository enables the check by symbol`],graphHint:`The graph drops the "code changed" candidate when an edit touched another symbol of the same file, so the agent does not have to re-read the task`,filteredTitle:`Filtered out over ${Yh}`,nothingFiltered:`The graph has not filtered out any candidates`,filteredTable:`What happened to the filtered-out candidates`,filteredHead:[`Outcome`,`Candidates`],filteredByGraph:`Filtered out by the graph`,filteredCaught:`└ later became a candidate anyway`,filteredMissed:`└ closed without a check signal — a possible miss`,filteredQuiet:`└ no consequences`,graphByProject:`Code graph by project`,graphHead:[`Project`,`Graph`,`Tasks with source lines`,`Symbol found`],categoriesTitle:`Categories`,categoriesEmpty:`No tasks over ${Yh}`,categoriesHead:[`Category`,`Open`,`Weight`,`Created`,`Closed`],categoryUnknown:`unknown`,originTitle:`Origin`,foundTitle:`How found`,foundHead:[`How found`,`Created`,`Open`,`Fixed`],foundLabels:{review:`in review`,incidental:`incidentally`},foundNotRecorded:`not recorded`,foundUnknown:`unknown`,branchesTitle:`Branches`,branchesEmpty:`Branches appear for tasks recorded with backlog new inside a repository`,branchesHead:[`Branch`,`Created`,`Open`],linesText:ig,codeAndTests:({deferredLines:e,deferredTestLines:t,estimatedLines:n})=>{let r=Wh(n);return`code ${Kh(`en`,e-t,r)}, tests ${Kh(`en`,t,r)}`},keptOut:`Unrelated edits deferred`,keptOutPending:e=>`fixed ${e}; the pending estimate appears after 5 fixes`,keptOutEstimated:(e,t)=>`fixed ${e} + pending ${t}`,noiseWithoutBacklog:`Noise without backlog`,noiseNote:`share of unrelated edits in pull requests`,deferredToBacklog:`Deferred to backlog`,deferredNote:(e,t)=>`fixed ${e}, pending ${t}`,pullRequestLines:`Lines in pull requests`,sinceAdoption:`since the backlog was adopted`,chartScale:e=>`Scale of the "${e}" chart`,chartNames:{flow:`Debt`,intake:`Created`,accuracy:`Check precision`,effect:`Effect`,spend:`Usage`},grainWeek:`week`,grainDay:`day`,effectTitle:`Effectiveness`,byProject:`By project`,projectsHead:[`Project`,`Tasks deferred`,`Lines fixed`,`Pending estimate`,`Lines in pull requests`,`Noise without backlog`],inPullRequests:`in pull requests`,deferredSeries:`deferred to backlog`,codeLines:`code`,testLines:`tests`,deferredTasks:`tasks deferred`,effectSummary:(e,t,n)=>`Since the backlog was adopted: ${F(e,`line`,`lines`)} in pull requests, deferred ${t}, noise without backlog ${n}`,explainerTitle:`How the gain is calculated`,explainerTask:`Every task recorded during work is an edit the agent would have made in the current pull request without the backlog. The gain is the lines that did not get there.`,explainerFixed:`Fixed ones are exact: lines of the commit from the close reason, without lock files, docs and images; a commit for several tasks is split evenly. Tasks closed without a fix and fixed ones without a found commit are not counted.`,explainerPending:`Pending ones are estimated: the median of fixes in the same category (if there are at least 5), otherwise of all fixes.`,explainerTests:`Code and tests: test files are *.test.*, *.spec.*, *_test.*, test_*.py and the test, tests, __tests__, e2e, spec folders. For pending ones, the share of tests in the same fixes.`,explainerNoise:`Noise without backlog = deferred ÷ (lines in pull requests + pending estimate); fixes are already inside pull requests and are not counted twice. The window starts when the backlog was adopted in the project, no earlier than ${Yh} ago.`,now:`Now:`,fixedNow:(e,t)=>`${ng(e)} — ${ig(t,!1)}`,noPending:`nothing pending`,pendingWithoutEstimate:e=>`${ng(e)}, ${Zh}`,pendingEstimated:(e,t,n)=>`${ng(e)} ${ig(t,!0)}, on average ≈ ${Gh(`en`,n)} per task`,estimateLater:Zh,noCommitsSinceAdoption:`no commits since adoption`,scanStarting:`Counting usage from Claude Code transcripts…`,noTranscripts:`No Claude Code transcripts found.`,scanProgress:(e,t)=>`Counting usage from Claude Code transcripts: read ${e} of ${F(t,`file`,`files`)}`,costNote:`Tokens come from Claude Code transcripts: turns started by the backlog Stop hook are exact; output of backlog commands and the skill is estimated by text length. Money is at Claude API prices, a subscription may cost differently. Costs of other agents (Codex, Cursor) are not counted.`,backlogTokens:`Tokens due to the backlog`,backlogTokensNote:(e,t)=>`hook turns ${e}, CLI output and skill ${t}`,apiPrice:`At API prices`,unpricedNote:`excluding models with unknown prices`,hookTurns:`Turns due to the hook`,hookRunsNote:e=>`hook runs ${e}`,cliCalls:`CLI calls`,byModel:`By model`,noModels:`No models yet`,modelsHead:[`Model`,`Tokens`,`At API prices`],fastModel:e=>`${e} (fast mode)`,commandsTitle:`Commands`,noCommands:`No commands yet`,commandsHead:[`Command`,`Runs`,`Average time`,`Average memory`,`Peak memory`],megabytes:e=>e===null?`—`:`${Np(`en`,e)} MB`,milliseconds:e=>`${Gh(`en`,e)} ms`,spendBy:{week:`Usage by week`,day:`Usage by day`},hookTurnTokens:`hook turn tokens`,cliOutputTokens:`CLI output and skill tokens`,hookRuns:`hook runs`,otherCommands:`other commands`,hookTurnsTooltip:`hook turns`,cliOutput:`CLI output and skill`,apiPriceTooltip:`at API prices`,tokens:rg,spendSummary:({grain:e,periodCount:t,hookTokens:n,cliTokens:r,money:i,hookRuns:a,cliRuns:o})=>`Over ${tg(e,t)}: due to the hook ${rg(n)}, CLI output and skill ${r}, ≈ ${i}; hook runs ${a}, other commands ${o}`,serverMemory:`Server memory`,memoryRestartNote:`The history starts over after the server restarts`,memorySummary:(e,t)=>`Now ${e}, peak over the last hour ${t}`,processMemory:`process memory`,jsHeap:`JavaScript heap`},og=O(90,`день`,`дня`,`дней`),sg=O(12,`неделю`,`недели`,`недель`),cg=O(12,`недели`,`недель`,`недель`),lg={day:`дням`,week:`неделям`,sample:`замерам`},ug=`оценка появится после 5 исправлений`,dg={week:[`неделя`,`недели`,`недель`],day:[`день`,`дня`,`дней`]},fg={week:[`неделю`,`недели`,`недель`],day:[`день`,`дня`,`дней`]},pg={week:`в неделю`,day:`в день`},mg={week:`на последней неделе с решениями`,day:`в последний день с решениями`},hg=(e,t)=>O(t,...dg[e]),gg=e=>O(e,`задача`,`задачи`,`задач`),_g=e=>O(e,`токен`,`токена`,`токенов`);function vg(e,t){return`${Kh(`ru`,e,t)} ${L(Math.round(e),`строка`,`строки`,`строк`)}`}var yg={docTitle:e=>`${e} — Беклог`,heading:e=>`Статистика · ${e}`,alerts:`Тревоги`,tabsLabel:`Разделы статистики`,tabs:{overview:`Обзор`,code:`Код`,quality:`Качество`,effect:`Эффект`,cost:`Стоимость`},invalidJournalLines:e=>`Не удалось разобрать строк журнала: ${e}. Они не входят в статистику — проверьте формат строк в journal.jsonl проекта.`,unknownJournalLines:e=>`Строк журнала с неизвестным значением: ${e}. Переименованное значение (категория, «как найдена», резолюция) показано как «неизвестно», но учтено в разбивках.`,unparsedTasks:e=>`Не удалось разобрать файлов задач: ${e}. Для них в статистике — последний статус из журнала; исправьте файлы, команда backlog check покажет ошибки.`,noTasks:`Задач пока нет.`,projectNotFound:`Проект не найден.`,loading:`Считаем статистику…`,journalEmpty:`Журнал ещё пуст; всё построено по датам в файлах задач.`,journalSince:e=>`Журнал ведётся с ${e}; раньше — по датам в файлах задач. Удалённые до этого задачи в статистику не попали.`,unavailableRepo:e=>`Нет доступа к репозиторию: ${e}. Проверьте путь в repos файла project.md и что это git-репозиторий.`,tableLabel:e=>`Таблица «${e}»`,noCodeData:`Нет данных о коде: у проектов нет доступных репозиториев`,folders:`Папки`,projects:`Проекты`,chartLabel:(e,t)=>`${e}. Стрелки влево и вправо — по ${lg[t]}`,periodOf:(e,t)=>e===`week`?`неделя с ${t}`:t,weekTrend:(e,t)=>`${e} ${t} за неделю`,weekTrendSpeech:(e,t)=>`на ${e} ${t?`меньше`:`больше`}, чем неделю назад — ${t?`лучше`:`хуже`}`,tasksToday:`Задачи сегодня`,createdAndClosed:`создано и закрыто`,thisWeek:`За неделю`,weekNote:(e,t)=>`создано ${e}, закрыто ${t}`,debtBy:{week:`Долг по неделям`,day:`Долг по дням`},flowCreated:`создано`,flowClosed:`закрыто`,flowOpen:`открыто`,flowOpenAtEnd:{week:`открыто на конец недели`,day:`открыто на конец дня`},flowSummary:({grain:e,periodCount:t,created:n,closed:r,openNow:i})=>`${hg(e,t)}: создано ${n}, закрыто ${r}, открыто сейчас ${i}`,createdBy:{week:`Создано по неделям`,day:`Создано по дням`},createdTasks:`создано задач`,intakeSummary:(e,t,n)=>{let r=hg(e,t);return n===0?`${r}: задач не создавали`:`${r}: создано ${n}, в среднем ${Np(`ru`,n/t)} ${pg[e]}`},hotspots:`Где болит`,noSourceFolders:`У открытых задач нет source`,tags:`Теги`,noTags:`У открытых задач нет тегов`,openAge:`Возраст открытых`,ageBuckets:{week:`до 7 дней`,month:`7–30 дней`,quarter:`30–90 дней`,older:`больше 90 дней`},priorityCounts:{critical:`критичных`,high:`высоких`,medium:`средних`,low:`низких`},urgentStale:e=>`Критичные и высокие старше 7 дней: ${e}`,closing:`Как закрываются`,closingReasons:{done:`сделано`,cancelled:`отменено`,unknown:`резолюция не распознана`},noiseAndReopens:`Шум и возвраты`,duplicatesAmongClosed:`Дубли среди закрытых`,noSourceAmongCreated:`Без source среди созданных`,reopened:`Возвраты`,codeNote:`Изменения — коммиты за ${og}; строки — на последнем коммите.`,churnTitle:`Долг в часто меняемом коде`,churnHint:`Место в списке — коммиты за ${og} × вес открытых задач папки`,churnEmpty:`Долг не лежит в коде, который меняли за ${og}`,commits:e=>O(e,`коммит`,`коммита`,`коммитов`),churnTasks:(e,t)=>`${gg(e)}, вес ${t}`,densityTitle:`Плотность долга`,perKloc:e=>`${Np(`ru`,e)} на 1000 строк`,accuracyTitle:`Точность проверки`,noCandidates:`Проверка ещё не находила кандидатов`,accuracyHint:`Доля кандидатов проверки, после которых задача закрылась; остальные подтверждены как актуальные`,accuracyTable:`Точность проверки за период`,accuracyHead:[`Улика`,`Кандидатов`,`Закрыто`,`Подтверждено`,`Без решения`,`Точность`],splitRow:e=>`└ из них ${e}`,beforeMethodRecorded:`до записи способа`,checkedBy:e=>`проверено ${e}`,beforeMatchRecorded:`до записи признака`,matchedBy:e=>`совпали ${e}`,decidedCandidates:`решено кандидатов`,precision:`точность`,accuracySummary:({grain:e,periodCount:t,decided:n,latestPrecision:r})=>r===null?`${hg(e,t)}: решённых кандидатов нет`:`${hg(e,t)}: решено ${n}, точность ${mg[e]} ${r}`,graphTitle:`Граф кода`,graphMissing:e=>[`Графа кода нет: проверка сравнивает строки source и файл целиком. `,e(`code-review-graph build`),` в репозитории проекта включит проверку по символу`],graphHint:`Граф убирает кандидата «код изменился», если правка задела другой символ того же файла, — агенту не нужно перечитывать задачу`,filteredTitle:`Отсеяно за ${sg}`,nothingFiltered:`Граф не отсеял ни одного кандидата`,filteredTable:`Что стало с отсеянными кандидатами`,filteredHead:[`Исход`,`Кандидатов`],filteredByGraph:`Отсеяно графом`,filteredCaught:`└ позже всё же стал кандидатом`,filteredMissed:`└ закрыта без сигнала проверки — возможный промах`,filteredQuiet:`└ без последствий`,graphByProject:`Граф кода по проектам`,graphHead:[`Проект`,`Граф`,`Задач со строками source`,`Символ найден`],categoriesTitle:`Категории`,categoriesEmpty:`За ${sg} задач не было`,categoriesHead:[`Категория`,`Открыто`,`Вес`,`Создано`,`Закрыто`],categoryUnknown:`неизвестна`,originTitle:`Происхождение`,foundTitle:`Как найдены`,foundHead:[`Как найдена`,`Создано`,`Открыто`,`Исправлено`],foundLabels:{review:`на ревью`,incidental:`попутно`},foundNotRecorded:`не записано`,foundUnknown:`неизвестно`,branchesTitle:`Ветки`,branchesEmpty:`Ветки появятся у задач, заведённых через backlog new в репозитории`,branchesHead:[`Ветка`,`Создано`,`Открыто`],linesText:vg,codeAndTests:({deferredLines:e,deferredTestLines:t,estimatedLines:n})=>{let r=Wh(n);return`код ${Kh(`ru`,e-t,r)}, тесты ${Kh(`ru`,t,r)}`},keptOut:`Посторонних правок вынесено`,keptOutPending:e=>`исправлено ${e}; оценка ожидающих появится после 5 исправлений`,keptOutEstimated:(e,t)=>`исправлено ${e} + ожидают ${t}`,noiseWithoutBacklog:`Шум без беклога`,noiseNote:`доля посторонних правок в пулреквестах`,deferredToBacklog:`Вынесено в беклог`,deferredNote:(e,t)=>`исправлено ${e}, ожидают ${t}`,pullRequestLines:`Строк в пулреквестах`,sinceAdoption:`с внедрения беклога`,chartScale:e=>`Масштаб графика «${e}»`,chartNames:{flow:`Долг`,intake:`Создано`,accuracy:`Точность проверки`,effect:`Эффект`,spend:`Расход`},grainWeek:`неделя`,grainDay:`день`,effectTitle:`Эффективность`,byProject:`По проектам`,projectsHead:[`Проект`,`Вынесено задач`,`Исправлено строк`,`Оценка ожидающих`,`Строк в пулреквестах`,`Шум без беклога`],inPullRequests:`в пулреквестах`,deferredSeries:`вынесено в беклог`,codeLines:`код`,testLines:`тесты`,deferredTasks:`задач вынесено`,effectSummary:(e,t,n)=>`С внедрения беклога: в пулреквестах ${O(e,`строка`,`строки`,`строк`)}, вынесено ${t}, шум без беклога ${n}`,explainerTitle:`Как считается выигрыш`,explainerTask:`Каждая задача, заведённая по ходу работы, — правка, которую без беклога агент сделал бы в текущем пулреквесте. Выигрыш — строки, которые туда не попали.`,explainerFixed:`Исправленные — точно: строки коммита из причины закрытия, без lock-файлов, документации и картинок; коммит на несколько задач делится поровну. Не считаются задачи, закрытые без исправления, и исправленные без найденного коммита.`,explainerPending:`Ожидающие — оценка: медиана исправлений той же категории (если их не меньше 5), иначе всех исправлений.`,explainerTests:`Код и тесты: тестовые файлы — *.test.*, *.spec.*, *_test.*, test_*.py и каталоги test, tests, __tests__, e2e, spec. Для ожидающих — доля тестов в тех же исправлениях.`,explainerNoise:`Шум без беклога = вынесено ÷ (строк в пулреквестах + оценка ожидающих); исправления уже внутри пулреквестов и не удваиваются. Окно — с внедрения беклога в проекте, не раньше ${cg} назад.`,now:`Сейчас:`,fixedNow:(e,t)=>`${gg(e)} — ${vg(t,!1)}`,noPending:`ожидающих нет`,pendingWithoutEstimate:e=>`${gg(e)}, ${ug}`,pendingEstimated:(e,t,n)=>`${gg(e)} ${vg(t,!0)}, в среднем ≈ ${Gh(`ru`,n)} на задачу`,estimateLater:ug,noCommitsSinceAdoption:`нет коммитов после внедрения`,scanStarting:`Считаем расход по расшифровкам Claude Code…`,noTranscripts:`Расшифровки Claude Code не найдены.`,scanProgress:(e,t)=>`Считаем расход по расшифровкам Claude Code: прочитано ${e} из ${O(t,`файла`,`файлов`,`файлов`)}`,costNote:`Токены из расшифровок Claude Code: ходы, запущенные Stop-хуком беклога, — точно; вывод команд backlog и скилла — оценка по длине текста. Деньги — по ценам Claude API, подписка может стоить иначе. Расходы других агентов (Codex, Cursor) не учитываются.`,backlogTokens:`Токены из-за беклога`,backlogTokensNote:(e,t)=>`ходы хука ${e}, вывод CLI и скилл ${t}`,apiPrice:`По ценам API`,unpricedNote:`без моделей с неизвестной ценой`,hookTurns:`Ходов из-за хука`,hookRunsNote:e=>`запусков хука ${e}`,cliCalls:`Вызовов CLI`,byModel:`По моделям`,noModels:`Моделей пока нет`,modelsHead:[`Модель`,`Токены`,`По ценам API`],fastModel:e=>`${e} (быстрый режим)`,commandsTitle:`Команды`,noCommands:`Команд пока не было`,commandsHead:[`Команда`,`Запусков`,`Среднее время`,`Средняя память`,`Пиковая память`],megabytes:e=>e===null?`—`:`${Np(`ru`,e)} МБ`,milliseconds:e=>`${Gh(`ru`,e)} мс`,spendBy:{week:`Расход по неделям`,day:`Расход по дням`},hookTurnTokens:`токены ходов хука`,cliOutputTokens:`токены вывода CLI и скилла`,hookRuns:`запуски хука`,otherCommands:`другие команды`,hookTurnsTooltip:`ходы хука`,cliOutput:`вывод CLI и скилл`,apiPriceTooltip:`по ценам API`,tokens:_g,spendSummary:({grain:e,periodCount:t,hookTokens:n,cliTokens:r,money:i,hookRuns:a,cliRuns:o})=>`За ${O(t,...fg[e])}: из-за хука ${_g(n)}, вывод CLI и скилл ${r}, ≈ ${i}; запусков хука ${a}, других команд ${o}`,serverMemory:`Память сервера`,memoryRestartNote:`После перезапуска сервера история начинается заново`,memorySummary:(e,t)=>`Сейчас ${e}, максимум за час ${t}`,processMemory:`память процесса`,jsHeap:`куча JavaScript`},bg={ru:{app:oe,layout:Fh,list:zh,task:{cardLabel:e=>`Задача ${e}`,title:`Название задачи`,description:`Описание задачи`,leaveWithDraft:`Уйти без сохранения описания?`,leaveWithFieldEdits:`Уйти, не сохранив правку поля?`,createdLabel:`создана`,closedLabel:`Закрыта`,restoreToBacklog:`Вернуть в беклог`,saving:`Сохраняем…`,saved:`Сохранено`,draftConflict:`Описание изменилось на диске, пока вы его правили. «Сохранить» перезапишет его вашим текстом, «Отмена» покажет актуальное.`,taskConflict:`Задача изменилась на диске, показана актуальная версия. Повторите правку.`,taskGone:e=>`Задачи ${e} больше нет в беклоге: её удалили или перенесли.`,fieldConflict:e=>`Поле «${e}» изменилось на диске, пока вы его правили. В поле остался ваш вариант: выйдите из поля ещё раз, чтобы записать его поверх.`,statusField:`Статус`,priorityField:`Приоритет`,categoryField:`Категория`,typeField:`Тип`,epicField:`Эпик`,epicPlaceholder:`ID эпика`,tagsField:`Теги через запятую`,typeLabels:{task:`задача`,epic:`эпик`},save:`Сохранить`,editDescription:`Редактировать описание`,blockedByLabel:`Блокируется`,relatedLabel:`Связанные`,dependentsLabel:`Блокирует`,referrersLabel:`Ссылаются как на связанную`,epicChildrenLabel:`Задачи эпика`,refNotFound:`не найдена`,removeRef:e=>`Убрать ${e}`,addRefPlaceholder:`ID задачи`,addRefLabel:e=>`Добавить в «${e}»`,addRef:`Добавить`,invalidRefId:e=>`Введите ID задачи, например ${e}`,duplicateRef:e=>`${e} уже в списке`},stats:yg,ui:{cancel:`Отмена`,close:`Закрыть`,progress:`Прогресс`,retry:`Повторить`,retrying:`Повторяем…`,deletionDelayed:`удаление задержано`,deletionDelayedTitle:e=>`должна была удалиться ${e}; проход удаления держит задачу, пока её эпик не закрыт или беклог не исправлен`,deletesToday:`удалится сегодня`,deletesInDays:e=>`удалится через ${e} дн.`,deletesOn:e=>`удалится ${e}`}},en:{app:de,layout:Ph,list:Lh,task:{cardLabel:e=>`Task ${e}`,title:`Task title`,description:`Task description`,leaveWithDraft:`Leave without saving the description?`,leaveWithFieldEdits:`Leave without saving your field edit?`,createdLabel:`created`,closedLabel:`Closed`,restoreToBacklog:`Restore to backlog`,saving:`Saving…`,saved:`Saved`,draftConflict:`The description changed on disk while you were editing it. "Save" overwrites it with your text, "Cancel" shows the current one.`,taskConflict:`The task changed on disk, the current version is shown. Repeat your edit.`,taskGone:e=>`Task ${e} is no longer in the backlog: it was deleted or moved.`,fieldConflict:e=>`"${e}" changed on disk while you were editing it. Your version is still in the field: leave the field once more to write it over.`,statusField:`Status`,priorityField:`Priority`,categoryField:`Category`,typeField:`Type`,epicField:`Epic`,epicPlaceholder:`Epic ID`,tagsField:`Comma-separated tags`,typeLabels:{task:`task`,epic:`epic`},save:`Save`,editDescription:`Edit description`,blockedByLabel:`Blocked by`,relatedLabel:`Related`,dependentsLabel:`Blocks`,referrersLabel:`Referenced as related`,epicChildrenLabel:`Epic tasks`,refNotFound:`not found`,removeRef:e=>`Remove ${e}`,addRefPlaceholder:`Task ID`,addRefLabel:e=>`Add to "${e}"`,addRef:`Add`,invalidRefId:e=>`Enter a task ID, for example ${e}`,duplicateRef:e=>`${e} is already in the list`},stats:ag,ui:{cancel:`Cancel`,close:`Close`,progress:`Progress`,retry:`Retry`,retrying:`Retrying…`,deletionDelayed:`deletion delayed`,deletionDelayedTitle:e=>`was due to be deleted ${e}; the deletion pass holds the task until its epic is closed or the backlog is fixed`,deletesToday:`deletes today`,deletesInDays:e=>`deletes in ${e} d.`,deletesOn:e=>`deletes ${e}`}}},xg=(0,X.createContext)(null),Sg=(0,X.createContext)(null),Cg={ru:{...bg.ru,core:Nh(`ru`)},en:{...bg.en,core:Nh(`en`)}};function wg({language:e,children:t}){return(0,X.useEffect)(()=>{document.documentElement.lang=e},[e]),(0,Xs.jsx)(xg.Provider,{value:e,children:(0,Xs.jsx)(Sg.Provider,{value:Cg[e],children:t})})}function Tg(){let e=(0,X.useContext)(xg);if(e===null)throw Error(`MessagesProvider is not mounted`);return e}function Eg(){let e=(0,X.useContext)(Sg);if(e===null)throw Error(`MessagesProvider is not mounted`);return e}var Dg=q({language:J(Dp)}),Og=ls(pm),kg=ds({title:G().optional(),type:J(sm).optional(),status:J(cm).optional(),priority:J(lm).optional(),tags:ls(G()).optional(),epic:pm.nullable().optional(),blockedBy:Og.optional(),related:Og.optional(),body:G().optional(),category:J(um).nullable().optional()});ds({active:rs()}),ds({confirm:G()}),ds(Dg.shape),ds({version:G().min(1),changes:kg});var Ag=ds({status:J(cm),priority:J(lm),epic:pm.nullable(),resolution:J(dm).nullable(),reason:G().nullable()});ds({tasks:ls(ds({id:pm,version:G().min(1)})).min(1).max(500).refine(e=>new Set(e.map(e=>e.id)).size===e.length),action:hs(`kind`,[ds({kind:Y(`close`),reason:G().transform(e=>e.replace(/\s*\n\s*/g,` `).trim()).pipe(G().min(1))}),ds({kind:Y(`priority`),priority:J(lm)}),ds({kind:Y(`epic`),epic:pm.nullable()}),ds({kind:Y(`restore`),changes:ys(pm,Ag)})])});var jg=5e3,Mg=class extends Error{status;errors;current;constructor(e,t,n){super(t.length>0?t.join(`; `):`backlog api error, status ${e}`),this.status=e,this.errors=t,this.current=n,this.name=`ApiError`}},Ng=0,Pg=new Set([502,504]),Fg=503;function Ig(e){return e instanceof Mg&&e.status===Ng}function Lg(e){let t=async(t,n)=>{let r=await e(t,n).catch(()=>{throw Rg()});if(Pg.has(r.status))throw Rg();let i=await r.json().catch(()=>{throw Rg()});if(r.ok)return i;let{errors:a=[],current:o}=i;throw r.status===Fg&&a.length===0?Rg():new Mg(r.status,a,o)};return{projects:()=>t(`/api/projects`),setProjectActive:(e,n)=>t(zg(e),Bg(`PATCH`,{active:n})),deleteProject:async(e,n)=>{await t(zg(e),Bg(`DELETE`,{confirm:n}))},tasks:()=>t(`/api/tasks`),updateTask:(e,n,r)=>t(`/api/tasks/${e}`,Bg(`PATCH`,{version:n,changes:r})),batchTasks:e=>t(`/api/tasks/batch`,Bg(`POST`,e)),stats:e=>t(Vg(`/api/stats`,e)),codeStats:e=>t(Vg(`/api/stats/code`,e)),effectStats:e=>t(Vg(`/api/stats/effect`,e)),qualityStats:e=>t(Vg(`/api/stats/quality`,e)),signals:e=>t(Vg(`/api/stats/signals`,e)),costStats:e=>t(Vg(`/api/stats/cost`,e)),memorySamples:()=>t(`/api/stats/memory`),settings:()=>t(`/api/settings`),setLanguage:e=>t(`/api/settings`,Bg(`PATCH`,{language:e}))}}function Rg(){return new Mg(Ng,[])}function zg(e){return`/api/projects/${encodeURIComponent(e)}`}function Bg(e,t){return{method:e,body:JSON.stringify(t),headers:{"content-type":`application/json`}}}function Vg(e,t){return t===void 0?e:`${e}?project=${encodeURIComponent(t)}`}var Hg=`p-backlog:events`,Ug=`p-backlog:events`,Wg=[`open`,`change`],Gg=5e3;function Kg(e){if(!(`locks`in navigator)||typeof BroadcastChannel>`u`)return new EventSource(e);let t=new Map,n=(e,n)=>t.get(e)?.forEach(t=>t(new MessageEvent(e,{data:n}))),r=new BroadcastChannel(Ug);r.onmessage=e=>{qg(e.data)&&n(e.data.type,e.data.data)};let i=new AbortController,a,o=()=>new Promise(t=>{if(i.signal.aborted){t();return}let o=new EventSource(e),c=()=>{o.close(),t()};for(let e of Wg)o.addEventListener(e,t=>{n(e,t.data),r.postMessage({type:e,data:t.data})});o.addEventListener(`error`,()=>{o.readyState===EventSource.CLOSED&&(c(),a=setTimeout(s,Gg))}),i.signal.addEventListener(`abort`,c,{once:!0})}),s=()=>{navigator.locks.request(Hg,{signal:i.signal},o).catch(()=>void 0)};return s(),{addEventListener:(e,n)=>t.set(e,(t.get(e)??new Set).add(n)),close:()=>{clearTimeout(a),i.abort(),r.close()}}}function qg(e){return typeof e==`object`&&!!e&&`type`in e&&typeof e.type==`string`&&`data`in e}var Jg=(0,X.createContext)(null),Yg={client:Lg((e,t)=>fetch(e,t)),openEvents:()=>Kg(`/api/events`)};function Xg({api:e,children:t}){return(0,Xs.jsx)(Jg.Provider,{value:e,children:t})}function Zg(){let e=(0,X.useContext)(Jg);if(!e)throw Error(`BacklogApiProvider is not mounted`);return e}var Qg=[`projects`],$g=[`tasks`],e_=[`stats`],t_=[`settings`],n_=6e4,r_=1e4;function i_(){let{client:e}=Zg();return ml({queryKey:t_,queryFn:e.settings})}function a_(){let{client:e}=Zg(),t=Qs();return hl({mutationFn:t=>e.setLanguage(t),onSuccess:e=>(t.setQueryData(t_,e),t.invalidateQueries())})}function o_(){let{client:e}=Zg();return ml({queryKey:Qg,queryFn:e.projects,select:c_})}function s_(){let{client:e}=Zg();return ml({queryKey:$g,queryFn:e.tasks})}function c_(e){return e.projects}function l_(e){return g_(`overview`,e,t=>t.stats(e))}function u_(e){return g_(`code`,e,t=>t.codeStats(e))}function d_(e){return g_(`effect`,e,t=>t.effectStats(e))}function f_(e){return g_(`quality`,e,t=>t.qualityStats(e))}function p_(e){return g_(`signals`,e,t=>t.signals(e))}function m_(e){return g_(`cost`,e,t=>t.costStats(e),{staleTime:0,refetchInterval:e=>{let t=e.state.data?.scan;return t!==void 0&&(!t.listed||t.bytesLeft>0)&&r_}})}function h_(){let{client:e}=Zg();return ml({queryKey:[...e_,`memory`],queryFn:e.memorySamples,refetchInterval:jg})}function g_(e,t,n,r={}){let{client:i}=Zg();return ml({queryKey:[...e_,e,t??`all`],queryFn:()=>n(i),staleTime:n_,...r})}function __(){let{client:e}=Zg(),t=Qs();return hl({mutationFn:({id:t,active:n})=>e.setProjectActive(t,n),onSuccess:()=>b_(t)})}function v_(){let{client:e}=Zg(),t=Qs();return hl({mutationFn:({id:t,confirm:n})=>e.deleteProject(t,n),onSuccess:()=>b_(t)})}var y_=[$g,Qg];function b_(e){for(let t of[...y_,e_])e.invalidateQueries({queryKey:t})}function x_(e){return Promise.all(y_.map(t=>e.invalidateQueries({queryKey:t})))}var S_={id:`task-saves`},C_=class extends Error{taskId;constructor(e){super(`task ${e} is not in the loaded backlog`),this.taskId=e,this.name=`TaskGoneError`}};function w_(){let{client:e}=Zg(),t=Qs();return hl({scope:S_,mutationFn:({id:n,change:r,bodyEdit:i})=>{let a=F_(t,n);if(!a)throw new C_(n);let o=r(a);return i===void 0?e.updateTask(n,a.version,o):A_(e,n,o,i)},onSuccess:e=>I_(t,e),onSettled:()=>x_(t)})}function T_(){let{client:e}=Zg(),t=Qs();return hl({scope:S_,mutationFn:t=>D_(e,t),onSettled:()=>void x_(t)})}var E_=class extends Error{done;rest;failure;constructor(e,t,n){super(n.message),this.done=e,this.rest=t,this.failure=n,this.name=`PartialBatchError`}};async function D_(e,{tasks:t,action:n}){let r=[];for(let i=0;i<t.length;i+=500){let a=t.slice(i,i+500);try{let t=await e.batchTasks(O_(n,a));r.push(...t.results)}catch(e){throw i===0||!(e instanceof Error)?e:new E_({results:r},O_(n,t.slice(i)),e)}}return{results:r}}function O_(e,t){return{tasks:t,action:k_(e,t)}}function k_(e,t){if(e.kind!==`restore`)return e;let n=new Set(t.map(({id:e})=>e));return{kind:`restore`,changes:Object.fromEntries(Object.entries(e.changes).filter(([e])=>n.has(e)))}}async function A_(e,t,n,r){try{return await e.updateTask(t,r.version,n)}catch(i){if(!(i instanceof Mg)||i.current?.body!==r.body)throw i;return await e.updateTask(t,i.current.version,n)}}function j_(){let{openEvents:e}=Zg(),t=Qs();(0,X.useEffect)(()=>{let n=e();if(n)return n.addEventListener(`change`,e=>{let n=N_(e.data);if(n===null)return b_(t);t.invalidateQueries({queryKey:e_});for(let e of y_)M_(t,e,n)}),n.addEventListener(`open`,()=>b_(t)),()=>n.close()},[e,t])}async function M_(e,t,n){await e.getQueryCache().find({queryKey:t,exact:!0})?.promise?.catch(()=>void 0);let r=e.getQueryData(t)?.revision;(r===void 0||r.boot!==n.boot||r.seq<n.seq)&&await e.invalidateQueries({queryKey:t,exact:!0})}function N_(e){if(typeof e!=`string`)return null;try{let t=JSON.parse(e);return P_(t)?t:null}catch{return null}}function P_(e){return typeof e==`object`&&!!e&&`boot`in e&&typeof e.boot==`string`&&`seq`in e&&typeof e.seq==`number`}function F_(e,t){return e.getQueryData($g)?.tasks.find(e=>e.id===t)}function I_(e,t){e.setQueryData($g,e=>e===void 0?e:{...e,tasks:e.tasks.map(e=>e.id===t.id?t:e)})}function L_(...e){return e.filter(Boolean).join(` `)}export{Wp as $,Dl as $t,Wh as A,Ef as At,fm as B,wu as Bt,Ig as C,$o as Cn,ep as Ct,Kh as D,Te as Dn,Tf as Dt,Eg as E,G as En,Nf as Et,Nh as F,jf as Ft,Qp as G,vu as Gt,am as H,Il as Ht,lm as I,Af as It,Vp as J,gu as Jt,$p as K,iu as Kt,um as L,ud as Lt,Uh as M,Ff as Mt,Vh as N,Pf as Nt,Gh as O,Ee as On,Df as Ot,Bh as P,If as Pt,Bp as Q,Q as Qt,cm as R,qu as Rt,Mg as S,rs as Sn,Qf as St,Tg as T,ys as Tn,np as Tt,im as U,hu as Ut,tm as V,Cu as Vt,rm as W,Eu as Wt,qp as X,xl as Xt,Gp as Y,cu as Yt,Up as Z,El as Zt,l_ as _,$s as _n,qf as _t,u_ as a,Nc as an,Mp as at,Xg as b,J as bn,gp as bt,d_ as c,ac as cn,Dp as ct,o_ as d,lc as dn,hp as dt,Sl as en,Kp as et,f_ as f,cc as fn,dp as ft,p_ as g,Cc as gn,Kf as gt,i_ as h,Z as hn,Gf as ht,T_ as i,Pc as in,jp as it,Hh as j,Mf as jt,qh as k,Oe as kn,Of as kt,j_ as l,dc as ln,Op as lt,__ as m,fc as mn,fp as mt,E_ as n,$c as nn,Lp as nt,m_ as o,Ac as on,Ap as ot,a_ as p,ic as pn,pp as pt,em as q,ku as qt,C_ as r,Uc as rn,Rp as rt,v_ as s,kc as sn,Pp as st,L_ as t,gl as tn,Jp as tt,h_ as u,uc as un,bp as ut,s_ as v,Ys as vn,_p as vt,wg as w,q as wn,tp as wt,Yg as x,ls as xn,$f as xt,w_ as y,qs as yn,Yf as yt,sm as z,Xu as zt};