@open-mercato/cezar 0.9.0-pr646.708 → 0.9.0
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.
- package/README.md +1 -17
- package/dist/config.d.ts +0 -14
- package/dist/config.js +0 -39
- package/dist/config.js.map +1 -1
- package/dist/core/claude-ui-mapper.d.ts +0 -9
- package/dist/core/claude-ui-mapper.js +2 -31
- package/dist/core/claude-ui-mapper.js.map +1 -1
- package/dist/core/codex-app-server-runner.js +18 -19
- package/dist/core/codex-app-server-runner.js.map +1 -1
- package/dist/core/opencode-server-runner.js +5 -25
- package/dist/core/opencode-server-runner.js.map +1 -1
- package/dist/core/tool-display.d.ts +1 -2
- package/dist/core/tool-display.js +1 -6
- package/dist/core/tool-display.js.map +1 -1
- package/dist/index.js +4 -40
- package/dist/index.js.map +1 -1
- package/dist/runs/auto-name.js +0 -6
- package/dist/runs/auto-name.js.map +1 -1
- package/dist/runs/store.js +9 -34
- package/dist/runs/store.js.map +1 -1
- package/dist/server/capabilities.d.ts +0 -6
- package/dist/server/capabilities.js +0 -6
- package/dist/server/capabilities.js.map +1 -1
- package/dist/server/server.d.ts +0 -8
- package/dist/server/server.js +7 -146
- package/dist/server/server.js.map +1 -1
- package/dist/server-install/engine.d.ts +0 -5
- package/dist/server-install/engine.js +0 -6
- package/dist/server-install/engine.js.map +1 -1
- package/dist/server-install/platforms/ubuntu-vps.d.ts +2 -11
- package/dist/server-install/platforms/ubuntu-vps.js +10 -123
- package/dist/server-install/platforms/ubuntu-vps.js.map +1 -1
- package/dist/server-install/types.d.ts +0 -39
- package/dist/server-install/types.js +0 -13
- package/dist/server-install/types.js.map +1 -1
- package/dist/skills-remote.d.ts +0 -11
- package/dist/skills-remote.js +2 -31
- package/dist/skills-remote.js.map +1 -1
- package/dist/skills.d.ts +0 -29
- package/dist/skills.js +14 -72
- package/dist/skills.js.map +1 -1
- package/dist/workflows/run.d.ts +10 -50
- package/dist/workflows/run.js +103 -216
- package/dist/workflows/run.js.map +1 -1
- package/dist/workspace/config.d.ts +0 -30
- package/dist/workspace/config.js +0 -5
- package/dist/workspace/config.js.map +1 -1
- package/dist/workspace/projects-cli.d.ts +0 -2
- package/dist/workspace/projects-cli.js +4 -21
- package/dist/workspace/projects-cli.js.map +1 -1
- package/dist/workspace/projects.d.ts +1 -5
- package/dist/workspace/projects.js +8 -5
- package/dist/workspace/projects.js.map +1 -1
- package/dist/workspace/semaphore.d.ts +2 -53
- package/dist/workspace/semaphore.js +5 -93
- package/dist/workspace/semaphore.js.map +1 -1
- package/package.json +1 -1
- package/web/dist/assets/centered-state-zzWBfO_1.js +43 -0
- package/web/dist/assets/command-ylf8-fG0.js +1 -0
- package/web/dist/assets/compare-variants-BcR3zdtB.js +1 -0
- package/web/dist/assets/dialog-BYr_BAil.js +1 -0
- package/web/dist/assets/diff-view-DPCR7gon.js +4 -0
- package/web/dist/assets/{dist-CqH67S8q.js → dist-Cw_CDvC3.js} +1 -1
- package/web/dist/assets/dropdown-menu-C3GD8eLA.js +1 -0
- package/web/dist/assets/git-toolbar-CiMaCi03.js +1 -0
- package/web/dist/assets/github-BJEZbEOp.js +1 -0
- package/web/dist/assets/index-DmW_TYjO.js +16 -0
- package/web/dist/assets/index-Qbs-JRWQ.css +2 -0
- package/web/dist/assets/loader-circle-CGwIVNTv.js +1 -0
- package/web/dist/assets/{project-router-BaWVyqc8.js → project-router-CT8Rt5Eu.js} +1 -1
- package/web/dist/assets/prompt-templates-DW7_d8Ys.js +15 -0
- package/web/dist/assets/repo-git-BkmyKcvN.js +1 -0
- package/web/dist/assets/{run-diff-Cksr4Dk5.js → run-diff-CxIDdRwy.js} +2 -2
- package/web/dist/assets/run-header-8nwDIWWO.js +1 -0
- package/web/dist/assets/skill-empty-hint-Cl3ESoPu.js +1 -0
- package/web/dist/assets/skills-BIpb0mqO.js +1 -0
- package/web/dist/assets/{tab-link-vtgjgL_M.js → tab-link-C_bk_Kvn.js} +1 -1
- package/web/dist/assets/task-changes-D1bJx2uW.js +1 -0
- package/web/dist/assets/task-commits-DlhB21mR.js +1 -0
- package/web/dist/assets/task-files-ChJDOFg5.js +2 -0
- package/web/dist/assets/task-thread-J7ckxJJh.js +9 -0
- package/web/dist/assets/tasks-table--V1pKwuK.js +1 -0
- package/web/dist/assets/use-desktop-CuDnWju1.js +3 -0
- package/web/dist/assets/workflows-BksgdYAQ.js +11 -0
- package/web/dist/assets/x-DgoqYQOJ.js +1 -0
- package/web/dist/index.html +12 -6
- package/dist/core/v1-text-coalescer.d.ts +0 -36
- package/dist/core/v1-text-coalescer.js +0 -72
- package/dist/core/v1-text-coalescer.js.map +0 -1
- package/web/dist/assets/centered-state-CLmJ67EV.js +0 -43
- package/web/dist/assets/commit-list-CSaWuw-x.js +0 -1
- package/web/dist/assets/compare-variants-B5BlnpUb.js +0 -1
- package/web/dist/assets/diff-view-CYKPGL2w.js +0 -6
- package/web/dist/assets/git-toolbar-CDII-3Uv.js +0 -1
- package/web/dist/assets/github-C7SNDPf3.js +0 -1
- package/web/dist/assets/index-CcfkF2Ey.js +0 -30
- package/web/dist/assets/index-DzroxqBG.css +0 -2
- package/web/dist/assets/lib-DPEZDBUN.js +0 -1
- package/web/dist/assets/repo-git-4l-2tm7d.js +0 -1
- package/web/dist/assets/run-header-B3kW2sWC.js +0 -1
- package/web/dist/assets/skill-empty-hint-DTUSp6Vl.js +0 -1
- package/web/dist/assets/skills-D7hPgl4y.js +0 -1
- package/web/dist/assets/task-changes-DvIUGL9a.js +0 -1
- package/web/dist/assets/task-commits-QD2JI3zj.js +0 -1
- package/web/dist/assets/task-files-BE7JDEwK.js +0 -2
- package/web/dist/assets/task-thread-CRjuPhsl.js +0 -9
- package/web/dist/assets/textarea-Bj_LCreg.js +0 -1
- package/web/dist/assets/use-desktop-4e8LLqMG.js +0 -3
- package/web/dist/assets/workflows-bPYx0nbO.js +0 -11
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import{a as e,i as t,o as n,r,s as i,u as a}from"./bundle-mjs-BegPhL5c.js";import{a as o,o as s,r as c,t as l}from"./utils-B8s5qIcK.js";var u=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(){}},d=new class extends u{#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`}},f={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},p=new class{#e=f;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 m(e){setTimeout(e,0)}var h=typeof window>`u`||`Deno`in globalThis;function g(){}function _(e,t){return typeof e==`function`?e(t):e}function v(e){return typeof e==`number`&&e>=0&&e!==1/0}function y(e,t){return Math.max(e+(t||0)-Date.now(),0)}function b(e,t){return typeof e==`function`?e(t):e}function x(e,t){return typeof e==`function`?e(t):e}function S(e,t){let{type:n=`all`,exact:r,fetchStatus:i,predicate:a,queryKey:o,stale:s}=e;if(o){if(r){if(t.queryHash!==w(o,t.options))return!1}else if(!E(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 C(e,t){let{exact:n,status:r,predicate:i,mutationKey:a}=e;if(a){if(!t.options.mutationKey)return!1;if(n){if(T(t.options.mutationKey)!==T(a))return!1}else if(!E(t.options.mutationKey,a))return!1}return!(r&&t.state.status!==r||i&&!i(t))}function w(e,t){return(t?.queryKeyHashFn||T)(e)}function T(e){return JSON.stringify(e,(e,t)=>re(t)?Object.keys(t).sort().reduce((e,n)=>(e[n]=t[n],e),{}):t)}function E(e,t){return e===t?!0:typeof e==typeof t&&e&&t&&typeof e==`object`&&typeof t==`object`?Object.keys(t).every(n=>E(e[n],t[n])):!1}var ee=Object.prototype.hasOwnProperty;function te(e,t,n=0){if(e===t)return e;if(n>500)return t;let r=ne(e)&&ne(t);if(!r&&!(re(e)&&re(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:ee.call(e,o))&&c++;continue}if(u===null||d===null||typeof u!=`object`||typeof d!=`object`){s[o]=d;continue}let f=te(u,d,n+1);s[o]=f,f===u&&c++}return i===o&&c===i?e:s}function D(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 ne(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function re(e){if(!ie(e))return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(!ie(n)||!n.hasOwnProperty(`isPrototypeOf`)||Object.getPrototypeOf(e)!==Object.prototype)}function ie(e){return Object.prototype.toString.call(e)===`[object Object]`}function ae(e){return new Promise(t=>{p.setTimeout(t,e)})}function oe(e,t,n){return typeof n.structuralSharing==`function`?n.structuralSharing(e,t):n.structuralSharing===!1?t:te(e,t)}function se(e,t,n=0){let r=[...e,t];return n&&r.length>n?r.slice(1):r}function ce(e,t,n=0){let r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var le=Symbol();function ue(e,t){return!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===le?()=>Promise.reject(Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function de(e,t){return typeof e==`function`?e(...t):!!e}function fe(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 pe=(()=>{let e=()=>h;return{isServer(){return e()},setIsServer(t){e=t}}})();function me(){let e,t,n=new Promise((n,r)=>{e=n,t=r});n.status=`pending`,n.catch(()=>{});function r(e){Object.assign(n,e),delete n.resolve,delete n.reject}return n.resolve=t=>{r({status:`fulfilled`,value:t}),e(t)},n.reject=e=>{r({status:`rejected`,reason:e}),t(e)},n}var he=m;function ge(){let e=[],t=0,n=e=>{e()},r=e=>{e()},i=he,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 O=ge(),_e=new class extends u{#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 ve(e){return Math.min(1e3*2**e,3e4)}function ye(e){return(e??`online`)!==`online`||_e.isOnline()}var be=class extends Error{constructor(e){super(`CancelledError`),this.revert=e?.revert,this.silent=e?.silent}};function xe(e){let t=!1,n=0,r,i=me(),a=()=>i.status!==`pending`,o=t=>{if(!a()){let n=new be(t);p(n),e.onCancel?.(n)}},s=()=>{t=!0},c=()=>{t=!1},l=()=>d.isFocused()&&(e.networkMode===`always`||_e.isOnline())&&e.canRun(),u=()=>ye(e.networkMode)&&e.canRun(),f=e=>{a()||(r?.(),i.resolve(e))},p=e=>{a()||(r?.(),i.reject(e))},m=()=>new Promise(t=>{r=e=>{(a()||l())&&t(e)},e.onPause?.()}).then(()=>{r=void 0,a()||e.onContinue?.()}),h=()=>{if(a())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(f).catch(r=>{if(a())return;let i=e.retry??(pe.isServer()?0:3),o=e.retryDelay??ve,s=typeof o==`function`?o(n,r):o,c=i===!0||typeof i==`number`&&n<i||typeof i==`function`&&i(n,r);if(t||!c){p(r);return}n++,e.onFail?.(n,r),ae(s).then(()=>l()?void 0:m()).then(()=>{t?p(r):h()})})};return{promise:i,status:()=>i.status,cancel:o,continue:()=>(r?.(),i),cancelRetry:s,continueRetry:c,canStart:u,start:()=>(u()?h():m().then(h),i)}}var Se=class{#e;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),v(this.gcTime)&&(this.#e=p.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(pe.isServer()?1/0:300*1e3))}clearGcTimeout(){this.#e!==void 0&&(p.clearTimeout(this.#e),this.#e=void 0)}};function Ce(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=>{fe(e,()=>t.signal,()=>n=!0)},u=ue(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?ce:se;return{pages:c(e.pages,o,s),pageParams:c(e.pageParams,r,s)}};if(i&&a.length){let e=i===`backward`,t=e?Te:we,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:we(r,s);if(c>0&&e==null)break;s=await d(s,e),c++}while(c<t)}return s};t.options.persister?t.fetchFn=()=>t.options.persister?.(l,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n):t.fetchFn=l}}}function we(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 Te(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}var Ee=class extends Se{#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=ke(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=ke(this.options);e.data!==void 0&&(this.setState(Oe(e.data,e.dataUpdatedAt)),this.#t=e)}}optionalRemove(){!this.observers.length&&this.state.fetchStatus===`idle`&&this.#r.remove(this)}setData(e,t){let n=oe(this.state.data,e,this.options);return this.#l({data:n,type:`success`,dataUpdatedAt:t?.updatedAt,manual:t?.manual}),n}setState(e){this.#l({type:`setState`,state:e})}cancel(e){let t=this.#a?.promise;return this.#a?.cancel(e),t?t.then(g).catch(g):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=>x(e.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===le||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0&&this.observers.some(e=>b(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:!y(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){this.observers.includes(e)&&(this.observers=this.observers.filter(t=>t!==e),this.observers.length||(this.#a&&(this.#s||this.#c()?this.#a.cancel({revert:!0}):this.#a.cancelRetry()),this.scheduleGc()),this.#r.notify({type:`observerRemoved`,query:this,observer:e}))}getObserversCount(){return this.observers.length}#c(){return this.state.fetchStatus===`paused`&&this.state.status===`pending`}invalidate(){this.state.isInvalidated||this.#l({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=ue(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`?Ce(this.options.pages):this.options.behavior)?.onFetch(a,this),this.#n=this.state,(this.state.fetchStatus===`idle`||this.state.fetchMeta!==a.fetchOptions?.meta)&&this.#l({type:`fetch`,meta:a.fetchOptions?.meta}),this.#a=xe({initialPromise:t?.initialPromise,fn:a.fetchFn,onCancel:e=>{e instanceof be&&e.revert&&this.setState({...this.#n,fetchStatus:`idle`}),n.abort()},onFail:(e,t)=>{this.#l({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#l({type:`pause`})},onContinue:()=>{this.#l({type:`continue`})},retry:a.options.retry,retryDelay:a.options.retryDelay,networkMode:a.options.networkMode,canRun:()=>!0});try{let e=await this.#a.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 be){if(e.silent)return this.#a.promise;if(e.revert){if(this.state.data===void 0)throw e;return this.state.data}}throw this.#l({type:`error`,error:e}),this.#r.config.onError?.(e,this),this.#r.config.onSettled?.(this.state.data,e,this),e}finally{this.scheduleGc()}}#l(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,...De(t.data,this.options),fetchMeta:e.meta??null};case`success`:let n={...t,...Oe(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),O.batch(()=>{this.observers.forEach(e=>{e.onQueryUpdate()}),this.#r.notify({query:this,type:`updated`,action:e})})}};function De(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:ye(t.networkMode)?`fetching`:`paused`,...e===void 0&&{error:null,status:`pending`}}}function Oe(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:`success`}}function ke(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 Ae=class extends u{constructor(e,t){super(),this.options=t,this.#e=e,this.#s=null,this.#o=me(),this.bindMethods(),this.setOptions(t)}#e;#t=void 0;#n=void 0;#r=void 0;#i;#a;#o;#s;#c;#l;#u;#d;#f;#p;#m=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#t.addObserver(this),Me(this.#t,this.options)?this.#h():this.updateResult(),this.#y())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return Ne(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return Ne(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 x(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&&!D(this.options,t)&&this.#e.getQueryCache().notify({type:`observerOptionsUpdated`,query:this.#t,observer:this});let r=this.hasListeners();r&&Pe(this.#t,n,this.options,t)&&this.#h(),this.updateResult(),r&&(this.#t!==n||x(this.options.enabled,this.#t)!==x(t.enabled,this.#t)||b(this.options.staleTime,this.#t)!==b(t.staleTime,this.#t))&&this.#g();let i=this.#_();r&&(this.#t!==n||x(this.options.enabled,this.#t)!==x(t.enabled,this.#t)||i!==this.#p)&&this.#v(i)}getOptimisticResult(e){let t=this.#e.getQueryCache().build(this.#e,e),n=this.createResult(t,e);return Ie(this,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),n===`promise`&&(this.trackProp(`data`),!this.options.experimental_prefetchInRender&&this.#o.status===`pending`&&this.#o.reject(Error(`experimental_prefetchInRender feature flag is not enabled`))),Reflect.get(e,n))})}trackProp(e){this.#m.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);return n.fetch().then(()=>this.createResult(n,t))}fetch(e){return this.#h({...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#r))}#h(e){this.#S();let t=this.#t.fetch(this.options,e);return e?.throwOnError||(t=t.catch(g)),t}#g(){this.#b();let e=b(this.options.staleTime,this.#t);if(pe.isServer()||this.#r.isStale||!v(e))return;let t=y(this.#r.dataUpdatedAt,e)+1;this.#d=p.setTimeout(()=>{this.#r.isStale||this.updateResult()},t)}#_(){return(typeof this.options.refetchInterval==`function`?this.options.refetchInterval(this.#t):this.options.refetchInterval)??!1}#v(e){this.#x(),this.#p=e,!(pe.isServer()||x(this.options.enabled,this.#t)===!1||!v(this.#p)||this.#p===0)&&(this.#f=p.setInterval(()=>{(this.options.refetchIntervalInBackground||d.isFocused())&&this.#h()},this.#p))}#y(){this.#g(),this.#v(this.#_())}#b(){this.#d!==void 0&&(p.clearTimeout(this.#d),this.#d=void 0)}#x(){this.#f!==void 0&&(p.clearInterval(this.#f),this.#f=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&&Me(e,t),o=i&&Pe(e,n,t,r);(a||o)&&(l={...l,...De(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.#u?.state.data,this.#u):t.placeholderData,e!==void 0&&(m=`success`,d=oe(i?.data,e,t),u=!0)}if(t.select&&d!==void 0&&!h)if(i&&d===a?.data&&t.select===this.#c)d=this.#l;else try{this.#c=t.select,d=t.select(d),d=oe(i?.data,d,t),this.#l=d,this.#s=null}catch(e){this.#s=e}this.#s&&(f=this.#s,d=this.#l,p=Date.now(),m=`error`);let g=l.fetchStatus===`fetching`,_=m===`pending`,v=m===`error`,y=_&&g,b=d!==void 0,S={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:Fe(e,t),refetch:this.refetch,promise:this.#o,isEnabled:x(t.enabled,e)!==!1};if(this.options.experimental_prefetchInRender){let t=S.data!==void 0,r=S.status===`error`&&!t,i=e=>{r?e.reject(S.error):t&&e.resolve(S.data)},a=()=>{let e=this.#o=S.promise=me();i(e)},o=this.#o;switch(o.status){case`pending`:e.queryHash===n.queryHash&&i(o);break;case`fulfilled`:(r||S.data!==o.value)&&a();break;case`rejected`:(!r||S.error!==o.reason)&&a();break}}return S}updateResult(){let e=this.#r,t=this.createResult(this.#t,this.options);this.#i=this.#t.state,this.#a=this.options,this.#i.data!==void 0&&(this.#u=this.#t),!D(t,e)&&(this.#r=t,this.#C({listeners:(()=>{if(!e)return!0;let{notifyOnChangeProps:t}=this.options,n=typeof t==`function`?t():t;if(n===`all`||!n&&!this.#m.size)return!0;let r=new Set(n??this.#m);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)})})()}))}#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()}#C(e){O.batch(()=>{e.listeners&&this.listeners.forEach(e=>{e(this.#r)}),this.#e.getQueryCache().notify({query:this.#t,type:`observerResultsUpdated`})})}};function je(e,t){return x(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status===`error`&&x(t.retryOnMount,e)===!1)}function Me(e,t){return je(e,t)||e.state.data!==void 0&&Ne(e,t,t.refetchOnMount)}function Ne(e,t,n){if(x(t.enabled,e)!==!1&&b(t.staleTime,e)!==`static`){let r=typeof n==`function`?n(e):n;return r===`always`||r!==!1&&Fe(e,t)}return!1}function Pe(e,t,n,r){return(e!==t||x(r.enabled,e)===!1)&&(!n.suspense||e.state.status!==`error`)&&Fe(e,n)}function Fe(e,t){return x(t.enabled,e)!==!1&&e.isStaleByTime(b(t.staleTime,e))}function Ie(e,t){return!D(e.getCurrentResult(),t)}var Le=class extends Se{#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||Re(),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.execute(this.state.variables)}async execute(e){let t=()=>{this.#i({type:`continue`})},n={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};this.#r=xe({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)});let r=this.state.status===`pending`,i=!this.#r.canStart();try{if(r)t();else{this.#i({type:`pending`,variables:e,isPaused:i}),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:i})}let a=await this.#r.start();return await this.#n.config.onSuccess?.(a,e,this.state.context,this,n),await this.options.onSuccess?.(a,e,this.state.context,n),await this.#n.config.onSettled?.(a,null,this.state.variables,this.state.context,this,n),await this.options.onSettled?.(a,null,e,this.state.context,n),this.#i({type:`success`,data:a}),a}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.#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),O.batch(()=>{this.#t.forEach(t=>{t.onMutationUpdate(e)}),this.#n.notify({mutation:this,type:`updated`,action:e})})}};function Re(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:`idle`,variables:void 0,submittedAt:0}}var ze=class extends u{#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),D(this.options,t)||this.#e.getMutationCache().notify({type:`observerOptionsUpdated`,mutation:this.#n,observer:this}),t?.mutationKey&&this.options.mutationKey&&T(t.mutationKey)!==T(this.options.mutationKey)?this.reset():this.#n?.state.status===`pending`&&this.#n.setOptions(this.options)}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??Re();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){O.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)})})}},k=a(i(),1),A=e(),Be=k.createContext(void 0),j=e=>{let t=k.useContext(Be);if(e)return e;if(!t)throw Error(`No QueryClient set, use QueryClientProvider to set one`);return t},Ve=({client:e,children:t})=>(k.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),(0,A.jsx)(Be.Provider,{value:e,children:t})),He=k.createContext(!1),Ue=()=>k.useContext(He);He.Provider;function We(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var Ge=k.createContext(We()),Ke=()=>k.useContext(Ge),qe=(e,t,n)=>{let r=n?.state.error&&typeof e.throwOnError==`function`?de(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||r)&&(t.isReset()||(e.retryOnMount=!1))},Je=e=>{k.useEffect(()=>{e.clearReset()},[e])},Ye=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:i})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(i&&e.data===void 0||de(n,[e.error,r])),Xe=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))}},Ze=(e,t)=>e.isLoading&&e.isFetching&&!t,Qe=(e,t)=>e?.suspense&&t.isPending,$e=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function et(e,t,n){let r=Ue(),i=Ke(),a=j(n),o=a.defaultQueryOptions(e);a.getDefaultOptions().queries?._experimental_beforeQuery?.(o);let s=a.getQueryCache().get(o.queryHash),c=e.subscribed!==!1;o._optimisticResults=r?`isRestoring`:c?`optimistic`:void 0,Xe(o),qe(o,i,s),Je(i);let l=!a.getQueryCache().get(o.queryHash),[u]=k.useState(()=>new t(a,o)),d=u.getOptimisticResult(o),f=!r&&c;if(k.useSyncExternalStore(k.useCallback(e=>{let t=f?u.subscribe(O.batchCalls(e)):g;return u.updateResult(),t},[u,f]),()=>u.getCurrentResult(),()=>u.getCurrentResult()),k.useEffect(()=>{u.setOptions(o)},[o,u]),Qe(o,d))throw $e(o,u,i);if(Ye({result:d,errorResetBoundary:i,throwOnError:o.throwOnError,query:s,suspense:o.suspense}))throw d.error;return a.getDefaultOptions().queries?._experimental_afterQuery?.(o,d),o.experimental_prefetchInRender&&!pe.isServer()&&Ze(d,r)&&(l?$e(o,u,i):s?.promise)?.catch(g).finally(()=>{u.updateResult()}),o.notifyOnChangeProps?d:u.trackResult(d)}function M(e,t){return et(e,Ae,t)}function N(e,t){let n=j(t),[r]=k.useState(()=>new ze(n,e));k.useEffect(()=>{r.setOptions(e)},[r,e]);let i=k.useSyncExternalStore(k.useCallback(e=>r.subscribe(O.batchCalls(e)),[r]),()=>r.getCurrentResult(),()=>r.getCurrentResult()),a=k.useCallback((e,t)=>{r.mutate(e,t).catch(g)},[r]);if(i.error&&de(r.options.throwOnError,[i.error]))throw i.error;return{...i,mutate:a,mutateAsync:i.mutate}}var tt=/^(?:[a-z][a-z0-9+.-]*:|[\\/]{2})/i,nt=/^[\\/]{2}/;function rt(e,t){return t+e.replace(/\\/g,`/`)}var it=`popstate`;function at(e){return typeof e==`object`&&!!e&&`pathname`in e&&`search`in e&&`hash`in e&&`state`in e&&`key`in e}function ot(e={}){function t(e,t){let n=t.state?.masked,{pathname:r,search:i,hash:a}=n||e.location;return lt(``,{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:ut(t)}return dt(t,n,null,e)}function P(e,t){if(e===!1||e==null)throw Error(t)}function F(e,t){if(!e){typeof console<`u`&&console.warn(t);try{throw Error(t)}catch{}}}function st(){return Math.random().toString(36).substring(2,10)}function ct(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 lt(e,t,n=null,r,i){return{pathname:typeof e==`string`?e:e.pathname,search:``,hash:``,...typeof t==`string`?I(t):t,state:n,key:t&&t.key||r||st(),mask:i}}function ut({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 I(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 dt(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=at(e)?e:lt(h.location,e,t);n&&n(r,e),l=u()+1;let d=ct(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=at(e)?e:lt(h.location,e,t);n&&n(r,e),l=u();let i=ct(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 ft(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(it,d),c=e,()=>{i.removeEventListener(it,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 ft(e,t,n=!1){let r=`http://localhost`;e&&(r=e.location.origin===`null`?e.location.href:e.location.origin),P(r,`No window.location.(origin|href) available to create URL`);let i=typeof t==`string`?t:ut(t);return i=i.replace(/ $/,`%20`),!n&&nt.test(i)&&(i=r+i),new URL(i,r)}function pt(e,t,n=`/`){return mt(e,t,n,!1)}function mt(e,t,n,r,i){let a=L((typeof t==`string`?I(t):t).pathname||`/`,n);if(a==null)return null;let o=i??gt(e),s=null,c=Nt(a);for(let e=0;s==null&&e<o.length;++e)s=kt(o[e],c,r);return s}function ht(e,t){let{route:n,pathname:r,params:i}=e;return{id:n.id,pathname:r,params:i,data:t[n.id],loaderData:t[n.id],handle:n.handle}}function gt(e){let t=_t(e);return yt(t),t}function _t(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;P(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=R([r,c.relativePath]),u=n.concat(c);e.children&&e.children.length>0&&(P(e.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${l}".`),_t(e.children,t,u,l,o)),!(e.path==null&&!e.index)&&t.push({path:l,score:Dt(l,e.index),routesMeta:u.map((e,t)=>{let[n,r]=Mt(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 vt(e.path))a(e,t,!0,n)}),t}function vt(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=vt(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 yt(e){e.sort((e,t)=>e.score===t.score?Ot(e.routesMeta.map(e=>e.childrenIndex),t.routesMeta.map(e=>e.childrenIndex)):t.score-e.score)}var bt=/^:[\w-]+$/,xt=3,St=2,Ct=1,wt=10,Tt=-2,Et=e=>e===`*`;function Dt(e,t){let n=e.split(`/`),r=n.length;return n.some(Et)&&(r+=Tt),t&&(r+=St),n.filter(e=>!Et(e)).reduce((e,t)=>e+(bt.test(t)?xt:t===``?Ct:wt),r)}function Ot(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 kt(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?jt(u,l,s.matcher,s.compiledParams):At(u,l),f=s.route;if(!d&&c&&n&&!r[r.length-1].route.index&&(d=At({path:s.relativePath,caseSensitive:s.caseSensitive,end:!1},l)),!d)return null;Object.assign(i,d.params),o.push({params:i,pathname:R([a,d.pathname]),pathnameBase:Ht(R([a,d.pathnameBase])),route:f}),d.pathnameBase!==`/`&&(a=R([a,d.pathnameBase]))}return o}function At(e,t){typeof e==`string`&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=Mt(e.path,e.caseSensitive,e.end);return jt(e,t,n,r)}function jt(e,t,n,r){let i=t.match(n);if(!i)return null;let a=i[0],o=a.replace(/(.)\/+$/,`$1`),s=i.slice(1);return{params:r.reduce((e,{paramName:t,isOptional:n},r)=>{if(t===`*`){let e=s[r]||``;o=a.slice(0,a.length-e.length).replace(/(.)\/+$/,`$1`)}let i=s[r];return n&&!i?e[t]=void 0:e[t]=(i||``).replace(/%2F/g,`/`),e},{}),pathname:a,pathnameBase:o,pattern:e}}function Mt(e,t=!1,n=!0){F(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)?$2`);return e.endsWith(`*`)?(r.push({paramName:`*`}),i+=e===`*`||e===`/*`?`(.*)$`:`(?:\\/(.+)|\\/*)$`):n?i+=`\\/*$`:e!==``&&e!==`/`&&(i+=`(?:(?=\\/|$))`),[new RegExp(i,t?void 0:`i`),r]}function Nt(e){try{return e.split(`/`).map(e=>decodeURIComponent(e).replace(/\//g,`%2F`)).join(`/`)}catch(t){return F(!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 L(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 Pt(e,t=`/`){let{pathname:n,search:r=``,hash:i=``}=typeof e==`string`?I(e):e,a;return n?(n=Bt(n),a=n.startsWith(`/`)?Ft(n.substring(1),`/`):Ft(n,t)):a=t,{pathname:a,search:Ut(r),hash:Wt(i)}}function Ft(e,t){let n=Vt(t).split(`/`);return e.split(`/`).forEach(e=>{e===`..`?n.length>1&&n.pop():e!==`.`&&n.push(e)}),n.length>1?n.join(`/`):`/`}function It(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 Lt(e){return e.filter((e,t)=>t===0||e.route.path&&e.route.path.length>0)}function Rt(e){let t=Lt(e);return t.map((e,n)=>n===t.length-1?e.pathname:e.pathnameBase)}function zt(e,t,n,r=!1){let i;typeof e==`string`?i=I(e):(i={...e},P(!i.pathname||!i.pathname.includes(`?`),It(`?`,`pathname`,`search`,i)),P(!i.pathname||!i.pathname.includes(`#`),It(`#`,`pathname`,`hash`,i)),P(!i.search||!i.search.includes(`#`),It(`#`,`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=Pt(i,s),l=o&&o!==`/`&&o.endsWith(`/`),u=(a||o===`.`)&&n.endsWith(`/`);return!c.pathname.endsWith(`/`)&&(l||u)&&(c.pathname+=`/`),c}var Bt=e=>e.replace(/[\\/]{2,}/g,`/`),R=e=>Bt(e.join(`/`)),Vt=e=>e.replace(/\/+$/,``),Ht=e=>Vt(e).replace(/^\/*/,`/`),Ut=e=>!e||e===`?`?``:e.startsWith(`?`)?e:`?`+e,Wt=e=>!e||e===`#`?``:e.startsWith(`#`)?e:`#`+e,Gt=class{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 Kt(e){return e!=null&&typeof e.status==`number`&&typeof e.statusText==`string`&&typeof e.internal==`boolean`&&`data`in e}function qt(e){return R(e.map(e=>e.route.path).filter(Boolean))||`/`}var Jt=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;function Yt(e,t){let n=e;if(typeof n!=`string`||!tt.test(n))return{absoluteURL:void 0,isExternal:!1,to:n};let r=n,i=!1;if(Jt)try{let e=new URL(window.location.href),r=nt.test(n)?new URL(rt(n,e.protocol)):new URL(n),a=L(r.pathname,t);r.origin===e.origin&&a!=null?n=a+r.search+r.hash:i=!0}catch{F(!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}}Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);var Xt=[`POST`,`PUT`,`PATCH`,`DELETE`];new Set(Xt);var Zt=[`GET`,...Xt];new Set(Zt);var Qt=[`about:`,`blob:`,`chrome:`,`chrome-untrusted:`,`content:`,`data:`,`devtools:`,`file:`,`filesystem:`,`javascript:`];function $t(e){try{return Qt.includes(new URL(e).protocol)}catch{return!1}}var z=k.createContext(null);z.displayName=`DataRouter`;var en=k.createContext(null);en.displayName=`DataRouterState`;var tn=k.createContext(!1);function nn(){return k.useContext(tn)}var rn=k.createContext({isTransitioning:!1});rn.displayName=`ViewTransition`;var an=k.createContext(new Map);an.displayName=`Fetchers`;var on=k.createContext(null);on.displayName=`Await`;var B=k.createContext(null);B.displayName=`Navigation`;var sn=k.createContext(null);sn.displayName=`Location`;var V=k.createContext({outlet:null,matches:[],isDataRoute:!1});V.displayName=`Route`;var cn=k.createContext(null);cn.displayName=`RouteError`;var ln=`REACT_ROUTER_ERROR`,un=`REDIRECT`,dn=`ROUTE_ERROR_RESPONSE`;function fn(e){if(e.startsWith(`${ln}:${un}:{`))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 pn(e){if(e.startsWith(`${ln}:${dn}:{`))try{let t=JSON.parse(e.slice(40));if(typeof t==`object`&&t&&typeof t.status==`number`&&typeof t.statusText==`string`)return new Gt(t.status,t.statusText,t.data)}catch{}}function mn(e,{relative:t}={}){P(H(),`useHref() may be used only in the context of a <Router> component.`);let{basename:n,navigator:r}=k.useContext(B),{hash:i,pathname:a,search:o}=Sn(e,{relative:t}),s=a;return n!==`/`&&(s=a===`/`?n:R([n,a])),r.createHref({pathname:s,search:o,hash:i})}function H(){return k.useContext(sn)!=null}function U(){return P(H(),`useLocation() may be used only in the context of a <Router> component.`),k.useContext(sn).location}var hn=`You should call navigate() in a React.useEffect(), not when your component is first rendered.`;function gn(e){k.useContext(B).static||k.useLayoutEffect(e)}function _n(){let{isDataRoute:e}=k.useContext(V);return e?Vn():vn()}function vn(){P(H(),`useNavigate() may be used only in the context of a <Router> component.`);let e=k.useContext(z),{basename:t,navigator:n}=k.useContext(B),{matches:r}=k.useContext(V),{pathname:i}=U(),a=JSON.stringify(Rt(r)),o=k.useRef(!1);return gn(()=>{o.current=!0}),k.useCallback((r,s={})=>{if(F(o.current,hn),!o.current)return;if(typeof r==`number`){n.go(r);return}let c=zt(r,JSON.parse(a),i,s.relative===`path`);e==null&&t!==`/`&&(c.pathname=c.pathname===`/`?t:R([t,c.pathname])),(s.replace?n.replace:n.push)(c,s.state,s)},[t,n,a,i,e])}var yn=k.createContext(null);function bn(e){let t=k.useContext(V).outlet;return k.useMemo(()=>t&&k.createElement(yn.Provider,{value:e},t),[t,e])}function xn(){let{matches:e}=k.useContext(V);return e[e.length-1]?.params??{}}function Sn(e,{relative:t}={}){let{matches:n}=k.useContext(V),{pathname:r}=U(),i=JSON.stringify(Rt(n));return k.useMemo(()=>zt(e,JSON.parse(i),r,t===`path`),[e,i,r,t])}function Cn(e,t){return wn(e,t)}function wn(e,t,n){P(H(),`useRoutes() may be used only in the context of a <Router> component.`);let{navigator:r}=k.useContext(B),{matches:i}=k.useContext(V),a=i[i.length-1],o=a?a.params:{},s=a?a.pathname:`/`,c=a?a.pathnameBase:`/`,l=a&&a.route;{let e=l&&l.path||``;Un(s,!l||e.endsWith(`*`)||e.endsWith(`*?`),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${s}" (under <Route path="${e}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
|
|
2
|
-
|
|
3
|
-
Please change the parent <Route path="${e}"> to <Route path="${e===`/`?`*`:`${e}/*`}">.`)}let u=U(),d;if(t){let e=typeof t==`string`?I(t):t;P(c===`/`||e.pathname?.startsWith(c),`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 "${c}" but pathname "${e.pathname}" was given in the \`location\` prop.`),d=e}else d=u;let f=d.pathname||`/`,p=f;if(c!==`/`){let e=c.replace(/^\//,``).split(`/`);p=`/`+f.replace(/^\//,``).split(`/`).slice(e.length).join(`/`)}let m=n&&n.state.matches.length?n.state.matches.map(e=>Object.assign(e,{route:n.manifest[e.route.id]||e.route})):pt(e,{pathname:p});F(l||m!=null,`No routes matched location "${d.pathname}${d.search}${d.hash}" `),F(m==null||m[m.length-1].route.element!==void 0||m[m.length-1].route.Component!==void 0||m[m.length-1].route.lazy!==void 0,`Matched leaf route at location "${d.pathname}${d.search}${d.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let h=jn(m&&m.map(e=>Object.assign({},e,{params:Object.assign({},o,e.params),pathname:R([c,r.encodeLocation?r.encodeLocation(e.pathname.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathname]),pathnameBase:e.pathnameBase===`/`?c:R([c,r.encodeLocation?r.encodeLocation(e.pathnameBase.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathnameBase])})),i,n);return t&&h?k.createElement(sn.Provider,{value:{location:{pathname:`/`,search:``,hash:``,state:null,key:`default`,mask:void 0,...d},navigationType:`POP`}},h):h}function Tn(){let e=Bn(),t=Kt(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,r=`rgba(200,200,200, 0.5)`,i={padding:`0.5rem`,backgroundColor:r},a={padding:`2px 4px`,backgroundColor:r},o=null;return console.error(`Error handled by React Router default ErrorBoundary:`,e),o=k.createElement(k.Fragment,null,k.createElement(`p`,null,`💿 Hey developer 👋`),k.createElement(`p`,null,`You can provide a way better UX than this when your app throws errors by providing your own `,k.createElement(`code`,{style:a},`ErrorBoundary`),` or`,` `,k.createElement(`code`,{style:a},`errorElement`),` prop on your route.`)),k.createElement(k.Fragment,null,k.createElement(`h2`,null,`Unexpected Application Error!`),k.createElement(`h3`,{style:{fontStyle:`italic`}},t),n?k.createElement(`pre`,{style:i},n):null,o)}var En=k.createElement(Tn,null),Dn=class extends k.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}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=pn(e.digest);t&&(e=t)}let t=e===void 0?this.props.children:k.createElement(V.Provider,{value:this.props.routeContext},k.createElement(cn.Provider,{value:e,children:this.props.component}));return this.context?k.createElement(kn,{error:e},t):t}};Dn.contextType=tn;var On=new WeakMap;function kn({children:e,error:t}){let{basename:n}=k.useContext(B);if(typeof t==`object`&&t&&`digest`in t&&typeof t.digest==`string`){let e=fn(t.digest);if(e){let r=On.get(t);if(r)throw r;let i=Yt(e.location,n),a=i.absoluteURL||i.to;if($t(a))throw Error(`Invalid redirect location`);if(Jt&&!On.get(t))if(i.isExternal||e.reloadDocument)window.location.href=a;else{let n=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(i.to,{replace:e.replace}));throw On.set(t,n),n}return k.createElement(`meta`,{httpEquiv:`refresh`,content:`0;url=${a}`})}}return e}function An({routeContext:e,match:t,children:n}){let r=k.useContext(z);return r&&r.static&&r.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=t.route.id),k.createElement(V.Provider,{value:e},n)}function jn(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);P(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:qt(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||En,o&&(s<0&&c===0?(Un(`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?k.createElement(n.route.Component,null):n.route.element?n.route.element:e,k.createElement(An,{match:n,routeContext:{outlet:e,matches:m,isDataRoute:r!=null},children:t})};return r&&(n.route.ErrorBoundary||n.route.errorElement||c===0)?k.createElement(Dn,{location:r.location,revalidation:r.revalidation,component:f,error:u,children:h(),routeContext:{outlet:null,matches:m,isDataRoute:!0},onError:l}):h()},null)}function Mn(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Nn(e){let t=k.useContext(z);return P(t,Mn(e)),t}function Pn(e){let t=k.useContext(en);return P(t,Mn(e)),t}function Fn(e){let t=k.useContext(V);return P(t,Mn(e)),t}function In(e){let t=Fn(e),n=t.matches[t.matches.length-1];return P(n.route.id,`${e} can only be used on routes that contain a unique "id"`),n.route.id}function Ln(){return In(`useRouteId`)}function Rn(){let e=Pn(`useNavigation`);return k.useMemo(()=>{let{matches:t,historyAction:n,...r}=e.navigation;return r},[e.navigation])}function zn(){let{matches:e,loaderData:t}=Pn(`useMatches`);return k.useMemo(()=>e.map(e=>ht(e,t)),[e,t])}function Bn(){let e=k.useContext(cn),t=Pn(`useRouteError`),n=In(`useRouteError`);return e===void 0?t.errors?.[n]:e}function Vn(){let{router:e}=Nn(`useNavigate`),t=In(`useNavigate`),n=k.useRef(!1);return gn(()=>{n.current=!0}),k.useCallback(async(r,i={})=>{F(n.current,hn),n.current&&(typeof r==`number`?await e.navigate(r):await e.navigate(r,{fromRouteId:t,...i}))},[e,t])}var Hn={};function Un(e,t,n){!t&&!Hn[e]&&(Hn[e]=!0,F(!1,n))}k.memo(Wn);function Wn({routes:e,manifest:t,future:n,state:r,isStatic:i,onError:a}){return wn(e,void 0,{manifest:t,state:r,isStatic:i,onError:a,future:n})}function Gn({to:e,replace:t,state:n,relative:r}){P(H(),`<Navigate> may be used only in the context of a <Router> component.`);let{static:i}=k.useContext(B);F(!i,`<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.`);let{matches:a}=k.useContext(V),{pathname:o}=U(),s=_n(),c=zt(e,Rt(a),o,r===`path`),l=JSON.stringify(c);return k.useEffect(()=>{s(JSON.parse(l),{replace:t,state:n,relative:r})},[s,l,r,t,n]),null}function Kn(e){return bn(e.context)}function qn(e){P(!1,`A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.`)}function Jn({basename:e=`/`,children:t=null,location:n,navigationType:r=`POP`,navigator:i,static:a=!1,useTransitions:o}){P(!H(),`You cannot render a <Router> inside another <Router>. You should never have more than one in your app.`);let s=e.replace(/^\/*/,`/`),c=k.useMemo(()=>({basename:s,navigator:i,static:a,useTransitions:o,future:{}}),[s,i,a,o]);typeof n==`string`&&(n=I(n));let{pathname:l=`/`,search:u=``,hash:d=``,state:f=null,key:p=`default`,mask:m}=n,h=k.useMemo(()=>{let e=L(l,s);return e==null?null:{location:{pathname:e,search:u,hash:d,state:f,key:p,mask:m},navigationType:r}},[s,l,u,d,f,p,r,m]);return F(h!=null,`<Router basename="${s}"> is not able to match the URL "${l}${u}${d}" because it does not start with the basename, so the <Router> won't render anything.`),h==null?null:k.createElement(B.Provider,{value:c},k.createElement(sn.Provider,{children:t,value:h}))}function Yn({children:e,location:t}){return Cn(Xn(e),t)}k.Component;function Xn(e,t=[]){let n=[];return k.Children.forEach(e,(e,r)=>{if(!k.isValidElement(e))return;let i=[...t,r];if(e.type===k.Fragment){n.push.apply(n,Xn(e.props.children,i));return}P(e.type===qn,`[${typeof e.type==`string`?e.type:e.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),P(!e.props.index||!e.props.children,`An index route cannot have child routes.`);let a={id:e.props.id||i.join(`-`),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,middleware:e.props.middleware,loader:e.props.loader,action:e.props.action,hydrateFallbackElement:e.props.hydrateFallbackElement,HydrateFallback:e.props.HydrateFallback,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:e.props.hasErrorBoundary===!0||e.props.ErrorBoundary!=null||e.props.errorElement!=null,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(a.children=Xn(e.props.children,i)),n.push(a)}),n}var Zn=`get`,Qn=`application/x-www-form-urlencoded`;function $n(e){return typeof HTMLElement<`u`&&e instanceof HTMLElement}function er(e){return $n(e)&&e.tagName.toLowerCase()===`button`}function tr(e){return $n(e)&&e.tagName.toLowerCase()===`form`}function nr(e){return $n(e)&&e.tagName.toLowerCase()===`input`}function rr(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function ir(e,t){return e.button===0&&(!t||t===`_self`)&&!rr(e)}function ar(e=``){return new URLSearchParams(typeof e==`string`||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,n)=>{let r=e[n];return t.concat(Array.isArray(r)?r.map(e=>[n,e]):[[n,r]])},[]))}function or(e,t){let n=ar(e);return t&&t.forEach((e,r)=>{n.has(r)||t.getAll(r).forEach(e=>{n.append(r,e)})}),n}var sr=null;function cr(){if(sr===null)try{new FormData(document.createElement(`form`),0),sr=!1}catch{sr=!0}return sr}var lr=new Set([`application/x-www-form-urlencoded`,`multipart/form-data`,`text/plain`]);function ur(e){return e!=null&&!lr.has(e)?(F(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${Qn}"`),null):e}function dr(e,t){let n,r,i,a,o;if(tr(e)){let o=e.getAttribute(`action`);r=o?L(o,t):null,n=e.getAttribute(`method`)||Zn,i=ur(e.getAttribute(`enctype`))||Qn,a=new FormData(e)}else if(er(e)||nr(e)&&(e.type===`submit`||e.type===`image`)){let o=e.form;if(o==null)throw Error(`Cannot submit a <button> or <input type="submit"> without a <form>`);let s=e.getAttribute(`formaction`)||o.getAttribute(`action`);if(r=s?L(s,t):null,n=e.getAttribute(`formmethod`)||o.getAttribute(`method`)||Zn,i=ur(e.getAttribute(`formenctype`))||ur(o.getAttribute(`enctype`))||Qn,a=new FormData(o,e),!cr()){let{name:t,type:n,value:r}=e;if(n===`image`){let e=t?`${t}.`:``;a.append(`${e}x`,`0`),a.append(`${e}y`,`0`)}else t&&a.append(t,r)}}else if($n(e))throw Error(`Cannot submit element that is not <form>, <button>, or <input type="submit|image">`);else n=Zn,r=null,i=Qn,o=e;return a&&i===`text/plain`&&(o=a,a=void 0),{action:r,method:n.toLowerCase(),encType:i,formData:a,body:o}}Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);var fr={"&":`\\u0026`,">":`\\u003e`,"<":`\\u003c`,"\u2028":`\\u2028`,"\u2029":`\\u2029`},pr=/[&><\u2028\u2029]/g;function mr(e){return e.replace(pr,e=>fr[e])}function hr(e,t){if(e===!1||e==null)throw Error(t)}function gr(e,t,n,r){let i=typeof e==`string`?new URL(e,typeof window>`u`?`server://singlefetch/`:window.location.origin):e;return n?i.pathname.endsWith(`/`)?i.pathname=`${i.pathname}_.${r}`:i.pathname=`${i.pathname}.${r}`:i.pathname===`/`?i.pathname=`_root.${r}`:t&&L(i.pathname,t)===`/`?i.pathname=`${Vt(t)}/_root.${r}`:i.pathname=`${Vt(i.pathname)}.${r}`,i}async function _r(e,n){if(e.id in n)return n[e.id];try{let r=await t(()=>import(e.module),[]);return n[e.id]=r,r}catch(t){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(t),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function vr(e){return e!=null&&typeof e.page==`string`}function yr(e){return e==null?!1:e.href==null?e.rel===`preload`&&typeof e.imageSrcSet==`string`&&typeof e.imageSizes==`string`:typeof e.rel==`string`&&typeof e.href==`string`}async function br(e,t,n){return Tr((await Promise.all(e.map(async e=>{let r=t.routes[e.route.id];if(r){let e=await _r(r,n);return e.links?e.links():[]}return[]}))).flat(1).filter(yr).filter(e=>e.rel===`stylesheet`||e.rel===`preload`).map(e=>e.rel===`stylesheet`?{...e,rel:`prefetch`,as:`style`}:{...e,rel:`prefetch`}))}function xr(e,t,n,r,i,a){let o=(e,t)=>!n[t]||e.route.id!==n[t].route.id,s=(e,t)=>n[t].pathname!==e.pathname||n[t].route.path?.endsWith(`*`)&&n[t].params[`*`]!==e.params[`*`];return a===`assets`?t.filter((e,t)=>o(e,t)||s(e,t)):a===`data`?t.filter((t,a)=>{let c=r.routes[t.route.id];if(!c||!c.hasLoader)return!1;if(o(t,a)||s(t,a))return!0;if(t.route.shouldRevalidate){let r=t.route.shouldRevalidate({currentUrl:new URL(i.pathname+i.search+i.hash,window.origin),currentParams:n[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:t.params,defaultShouldRevalidate:!0});if(typeof r==`boolean`)return r}return!0}):[]}function Sr(e,t,{includeHydrateFallback:n}={}){return Cr(e.map(e=>{let r=t.routes[e.route.id];if(!r)return[];let i=[r.module];return r.clientActionModule&&(i=i.concat(r.clientActionModule)),r.clientLoaderModule&&(i=i.concat(r.clientLoaderModule)),n&&r.hydrateFallbackModule&&(i=i.concat(r.hydrateFallbackModule)),r.imports&&(i=i.concat(r.imports)),i}).flat(1))}function Cr(e){return[...new Set(e)]}function wr(e){let t={},n=Object.keys(e).sort();for(let r of n)t[r]=e[r];return t}function Tr(e,t){let n=new Set,r=new Set(t);return e.reduce((e,i)=>{if(t&&!vr(i)&&i.as===`script`&&i.href&&r.has(i.href))return e;let a=JSON.stringify(wr(i));return n.has(a)||(n.add(a),e.push({key:a,link:i})),e},[])}function Er(){let e=k.useContext(z);return hr(e,`You must render this element inside a <DataRouterContext.Provider> element`),e}function Dr(){let e=k.useContext(en);return hr(e,`You must render this element inside a <DataRouterStateContext.Provider> element`),e}var Or=k.createContext(void 0);Or.displayName=`FrameworkContext`;function kr(){let e=k.useContext(Or);return hr(e,`You must render this element inside a <HydratedRouter> element`),e}function Ar(e,t){let n=k.useContext(Or),[r,i]=k.useState(!1),[a,o]=k.useState(!1),{onFocus:s,onBlur:c,onMouseEnter:l,onMouseLeave:u,onTouchStart:d}=t,f=k.useRef(null);k.useEffect(()=>{if(e===`render`&&o(!0),e===`viewport`){let e=new IntersectionObserver(e=>{e.forEach(e=>{o(e.isIntersecting)})},{threshold:.5});return f.current&&e.observe(f.current),()=>{e.disconnect()}}},[e]),k.useEffect(()=>{if(r){let e=setTimeout(()=>{o(!0)},100);return()=>{clearTimeout(e)}}},[r]);let p=()=>{i(!0)},m=()=>{i(!1),o(!1)};return n?e===`intent`?[a,f,{onFocus:jr(s,p),onBlur:jr(c,m),onMouseEnter:jr(l,p),onMouseLeave:jr(u,m),onTouchStart:jr(d,p)}]:[a,f,{}]:[!1,f,{}]}function jr(e,t){return n=>{e&&e(n),n.defaultPrevented||t(n)}}function Mr({page:e,...t}){let n=nn(),{nonce:r}=kr(),{router:i}=Er(),a=k.useMemo(()=>pt(i.routes,e,i.basename),[i.routes,e,i.basename]);return a?(t.nonce==null&&r&&(t={...t,nonce:r}),n?k.createElement(Pr,{page:e,matches:a,...t}):k.createElement(Fr,{page:e,matches:a,...t})):null}function Nr(e){let{manifest:t,routeModules:n}=kr(),[r,i]=k.useState([]);return k.useEffect(()=>{let r=!1;return br(e,t,n).then(e=>{r||i(e)}),()=>{r=!0}},[e,t,n]),r}function Pr({page:e,matches:t,...n}){let r=U(),{future:i}=kr(),{basename:a}=Er(),o=k.useMemo(()=>{if(e===r.pathname+r.search+r.hash)return[];let n=gr(e,a,i.v8_trailingSlashAwareDataRequests,`rsc`),o=!1,s=[];for(let e of t)typeof e.route.shouldRevalidate==`function`?o=!0:s.push(e.route.id);return o&&s.length>0&&n.searchParams.set(`_routes`,s.join(`,`)),[n.pathname+n.search]},[a,i.v8_trailingSlashAwareDataRequests,e,r,t]);return k.createElement(k.Fragment,null,o.map(e=>k.createElement(`link`,{key:e,rel:`prefetch`,as:`fetch`,href:e,...n})))}function Fr({page:e,matches:t,...n}){let r=U(),{future:i,manifest:a,routeModules:o}=kr(),{basename:s}=Er(),{loaderData:c,matches:l}=Dr(),u=k.useMemo(()=>xr(e,t,l,a,r,`data`),[e,t,l,a,r]),d=k.useMemo(()=>xr(e,t,l,a,r,`assets`),[e,t,l,a,r]),f=k.useMemo(()=>{if(e===r.pathname+r.search+r.hash)return[];let n=new Set,l=!1;if(t.forEach(e=>{let t=a.routes[e.route.id];!t||!t.hasLoader||(!u.some(t=>t.route.id===e.route.id)&&e.route.id in c&&o[e.route.id]?.shouldRevalidate||t.hasClientLoader?l=!0:n.add(e.route.id))}),n.size===0)return[];let d=gr(e,s,i.v8_trailingSlashAwareDataRequests,`data`);return l&&n.size>0&&d.searchParams.set(`_routes`,t.filter(e=>n.has(e.route.id)).map(e=>e.route.id).join(`,`)),[d.pathname+d.search]},[s,i.v8_trailingSlashAwareDataRequests,c,r,a,u,t,e,o]),p=k.useMemo(()=>Sr(d,a),[d,a]),m=Nr(d);return k.createElement(k.Fragment,null,f.map(e=>k.createElement(`link`,{key:e,rel:`prefetch`,as:`fetch`,href:e,...n})),p.map(e=>k.createElement(`link`,{key:e,rel:`modulepreload`,href:e,...n})),m.map(({key:e,link:t})=>k.createElement(`link`,{key:e,nonce:n.nonce,...t,crossOrigin:t.crossOrigin??n.crossOrigin})))}function Ir(...e){return t=>{e.forEach(e=>{typeof e==`function`?e(t):e!=null&&(e.current=t)})}}k.Component;var Lr=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;try{Lr&&(window.__reactRouterVersion=`7.18.1`)}catch{}function Rr({basename:e,children:t,useTransitions:n,window:r}){let i=k.useRef();i.current??=ot({window:r,v5Compat:!0});let a=i.current,[o,s]=k.useState({action:a.action,location:a.location}),c=k.useCallback(e=>{n===!1?s(e):k.startTransition(()=>s(e))},[n]);return k.useLayoutEffect(()=>a.listen(c),[a,c]),k.createElement(Jn,{basename:e,children:t,location:o.location,navigationType:o.action,navigator:a,useTransitions:n})}function zr({basename:e,children:t,history:n,useTransitions:r}){let[i,a]=k.useState({action:n.action,location:n.location}),o=k.useCallback(e=>{r===!1?a(e):k.startTransition(()=>a(e))},[r]);return k.useLayoutEffect(()=>n.listen(o),[n,o]),k.createElement(Jn,{basename:e,children:t,location:i.location,navigationType:i.action,navigator:n,useTransitions:r})}zr.displayName=`unstable_HistoryRouter`;var Br=k.forwardRef(function({onClick:e,discover:t=`render`,prefetch:n=`none`,relative:r,reloadDocument:i,replace:a,mask:o,state:s,target:c,to:l,preventScrollReset:u,viewTransition:d,defaultShouldRevalidate:f,...p},m){let{basename:h,navigator:g,useTransitions:_}=k.useContext(B),v=typeof l==`string`&&tt.test(l),y=Yt(l,h);l=y.to;let b=mn(l,{relative:r}),x=U(),S=null;if(o){let e=zt(o,[],x.mask?x.mask.pathname:`/`,!0);h!==`/`&&(e.pathname=e.pathname===`/`?h:R([h,e.pathname])),S=g.createHref(e)}let[C,w,T]=Ar(n,p),E=qr(l,{replace:a,mask:o,state:s,target:c,preventScrollReset:u,relative:r,viewTransition:d,defaultShouldRevalidate:f,useTransitions:_});function ee(t){e&&e(t),t.defaultPrevented||E(t)}let te=!(y.isExternal||i),D=k.createElement(`a`,{...p,...T,href:(te?S:void 0)||y.absoluteURL||b,onClick:te?ee:e,ref:Ir(m,w),target:c,"data-discover":!v&&t===`render`?`true`:void 0});return C&&!v?k.createElement(k.Fragment,null,D,k.createElement(Mr,{page:b})):D});Br.displayName=`Link`;var Vr=k.forwardRef(function({"aria-current":e=`page`,caseSensitive:t=!1,className:n=``,end:r=!1,style:i,to:a,viewTransition:o,children:s,...c},l){let u=Sn(a,{relative:c.relative}),d=U(),f=k.useContext(en),{navigator:p,basename:m}=k.useContext(B),h=f!=null&&ii(u)&&o===!0,g=p.encodeLocation?p.encodeLocation(u).pathname:u.pathname,_=d.pathname,v=f&&f.navigation&&f.navigation.location?f.navigation.location.pathname:null;t||(_=_.toLowerCase(),v=v?v.toLowerCase():null,g=g.toLowerCase()),v&&m&&(v=L(v,m)||v);let y=g!==`/`&&g.endsWith(`/`)?g.length-1:g.length,b=_===g||!r&&_.startsWith(g)&&_.charAt(y)===`/`,x=v!=null&&(v===g||!r&&v.startsWith(g)&&v.charAt(g.length)===`/`),S={isActive:b,isPending:x,isTransitioning:h},C=b?e:void 0,w;w=typeof n==`function`?n(S):[n,b?`active`:null,x?`pending`:null,h?`transitioning`:null].filter(Boolean).join(` `);let T=typeof i==`function`?i(S):i;return k.createElement(Br,{...c,"aria-current":C,className:w,ref:l,style:T,to:a,viewTransition:o},typeof s==`function`?s(S):s)});Vr.displayName=`NavLink`;var Hr=k.forwardRef(({discover:e=`render`,fetcherKey:t,navigate:n,reloadDocument:r,replace:i,state:a,method:o=Zn,action:s,onSubmit:c,relative:l,preventScrollReset:u,viewTransition:d,defaultShouldRevalidate:f,...p},m)=>{let{useTransitions:h}=k.useContext(B),g=Zr(),_=Qr(s,{relative:l}),v=o.toLowerCase()===`get`?`get`:`post`,y=typeof s==`string`&&tt.test(s);return k.createElement(`form`,{ref:m,method:v,action:_,onSubmit:r?c:e=>{if(c&&c(e),e.defaultPrevented)return;e.preventDefault();let r=e.nativeEvent.submitter,s=r?.getAttribute(`formmethod`)||o,p=()=>g(r||e.currentTarget,{fetcherKey:t,method:s,navigate:n,replace:i,state:a,relative:l,preventScrollReset:u,viewTransition:d,defaultShouldRevalidate:f});h&&n!==!1?k.startTransition(()=>p()):p()},...p,"data-discover":!y&&e===`render`?`true`:void 0})});Hr.displayName=`Form`;function Ur({getKey:e,storageKey:t,...n}){let r=k.useContext(Or),{basename:i}=k.useContext(B),a=U(),o=zn();ni({getKey:e,storageKey:t});let s=k.useMemo(()=>{if(!r||!e)return null;let t=ti(a,o,i,e);return t===a.key?null:t},[]);if(!r||r.isSpaMode)return null;let c=((e,t)=>{if(!window.history.state||!window.history.state.key){let e=Math.random().toString(32).slice(2);window.history.replaceState({key:e},``)}try{let n=JSON.parse(sessionStorage.getItem(e)||`{}`)[t||window.history.state.key];typeof n==`number`&&window.scrollTo(0,n)}catch(t){console.error(t),sessionStorage.removeItem(e)}}).toString();return n.nonce==null&&r?.nonce&&(n.nonce=r.nonce),k.createElement(`script`,{...n,suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:`(${c})(${mr(JSON.stringify(t||$r))}, ${mr(JSON.stringify(s))})`}})}Ur.displayName=`ScrollRestoration`;function Wr(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Gr(e){let t=k.useContext(z);return P(t,Wr(e)),t}function Kr(e){let t=k.useContext(en);return P(t,Wr(e)),t}function qr(e,{target:t,replace:n,mask:r,state:i,preventScrollReset:a,relative:o,viewTransition:s,defaultShouldRevalidate:c,useTransitions:l}={}){let u=_n(),d=U(),f=Sn(e,{relative:o});return k.useCallback(p=>{if(ir(p,t)){p.preventDefault();let t=n===void 0?ut(d)===ut(f):n,m=()=>u(e,{replace:t,mask:r,state:i,preventScrollReset:a,relative:o,viewTransition:s,defaultShouldRevalidate:c});l?k.startTransition(()=>m()):m()}},[d,u,f,n,r,i,t,e,a,o,s,c,l])}function Jr(e){F(typeof URLSearchParams<`u`,"You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=k.useRef(ar(e)),n=k.useRef(!1),r=U(),i=k.useMemo(()=>or(r.search,n.current?null:t.current),[r.search]),a=_n();return[i,k.useCallback((e,t)=>{let r=ar(typeof e==`function`?e(new URLSearchParams(i)):e);n.current=!0,a(`?`+r,t)},[a,i])]}var Yr=0,Xr=()=>`__${String(++Yr)}__`;function Zr(){let{router:e}=Gr(`useSubmit`),{basename:t}=k.useContext(B),n=Ln(),r=e.fetch,i=e.navigate;return k.useCallback(async(e,a={})=>{let{action:o,method:s,encType:c,formData:l,body:u}=dr(e,t);if(a.navigate===!1){let e=a.fetcherKey||Xr();await r(e,n,a.action||o,{defaultShouldRevalidate:a.defaultShouldRevalidate,preventScrollReset:a.preventScrollReset,formData:l,body:u,formMethod:a.method||s,formEncType:a.encType||c,flushSync:a.flushSync})}else await i(a.action||o,{defaultShouldRevalidate:a.defaultShouldRevalidate,preventScrollReset:a.preventScrollReset,formData:l,body:u,formMethod:a.method||s,formEncType:a.encType||c,replace:a.replace,state:a.state,fromRouteId:n,flushSync:a.flushSync,viewTransition:a.viewTransition})},[r,i,t,n])}function Qr(e,{relative:t}={}){let{basename:n}=k.useContext(B),r=k.useContext(V);P(r,`useFormAction must be used inside a RouteContext`);let[i]=r.matches.slice(-1),a={...Sn(e||`.`,{relative:t})},o=U();if(e==null){a.search=o.search;let e=new URLSearchParams(a.search),t=e.getAll(`index`);if(t.some(e=>e===``)){e.delete(`index`),t.filter(e=>e).forEach(t=>e.append(`index`,t));let n=e.toString();a.search=n?`?${n}`:``}}return(!e||e===`.`)&&i.route.index&&(a.search=a.search?a.search.replace(/^\?/,`?index&`):`?index`),n!==`/`&&(a.pathname=a.pathname===`/`?n:R([n,a.pathname])),ut(a)}var $r=`react-router-scroll-positions`,ei={};function ti(e,t,n,r){let i=null;return r&&(i=r(n===`/`?e:{...e,pathname:L(e.pathname,n)||e.pathname},t)),i??=e.key,i}function ni({getKey:e,storageKey:t}={}){let{router:n}=Gr(`useScrollRestoration`),{restoreScrollPosition:r,preventScrollReset:i}=Kr(`useScrollRestoration`),{basename:a}=k.useContext(B),o=U(),s=zn(),c=Rn();k.useEffect(()=>(window.history.scrollRestoration=`manual`,()=>{window.history.scrollRestoration=`auto`}),[]),ri(k.useCallback(()=>{if(c.state===`idle`){let t=ti(o,s,a,e);ei[t]=window.scrollY}try{sessionStorage.setItem(t||$r,JSON.stringify(ei))}catch(e){F(!1,`Failed to save scroll positions in sessionStorage, <ScrollRestoration /> will not work properly (${e}).`)}window.history.scrollRestoration=`auto`},[c.state,e,a,o,s,t])),typeof document<`u`&&(k.useLayoutEffect(()=>{try{let e=sessionStorage.getItem(t||$r);e&&(ei=JSON.parse(e))}catch{}},[t]),k.useLayoutEffect(()=>{let t=n?.enableScrollRestoration(ei,()=>window.scrollY,e?(t,n)=>ti(t,n,a,e):void 0);return()=>t&&t()},[n,a,e]),k.useLayoutEffect(()=>{if(r!==!1){if(typeof r==`number`){window.scrollTo(0,r);return}try{if(o.hash){let e=document.getElementById(decodeURIComponent(o.hash.slice(1)));if(e){e.scrollIntoView();return}}}catch{F(!1,`"${o.hash.slice(1)}" is not a decodable element ID. The view will not scroll to it.`)}i!==!0&&window.scrollTo(0,0)}},[o,r,i]))}function ri(e,t){let{capture:n}=t||{};k.useEffect(()=>{let t=n==null?void 0:{capture:n};return window.addEventListener(`pagehide`,e,t),()=>{window.removeEventListener(`pagehide`,e,t)}},[e,n])}function ii(e,{relative:t}={}){let n=k.useContext(rn);P(n!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:r}=Gr(`useViewTransitionState`),i=Sn(e,{relative:t});if(!n.isTransitioning)return!1;let a=L(n.currentLocation.pathname,r)||n.currentLocation.pathname,o=L(n.nextLocation.pathname,r)||n.nextLocation.pathname;return At(i.pathname,o)!=null||At(i.pathname,a)!=null}var ai=class extends Error{status;manual;command;exists;constructor(e,t,n={}){super(t,n.cause===void 0?void 0:{cause:n.cause}),this.name=`ApiError`,this.status=e,this.manual=n.manual,this.command=n.command,this.exists=n.exists}};function oi(e){try{return JSON.parse(e)}catch{return}}function si(e){return typeof e==`string`?e:void 0}function ci(e,t,n){let r=oi(n),i=r&&typeof r==`object`?r:{};return new ai(e,si(i.error)??`${e} ${t||`request failed`}`.trim(),{manual:si(i.manual),command:si(i.command),exists:typeof i.exists==`boolean`?i.exists:void 0})}async function li(e,t){try{return await fetch(s(e),t)}catch(t){throw t instanceof DOMException&&t.name===`AbortError`?t:new ai(0,`cannot reach the cezar server (${e})`,{cause:t})}}async function ui(e,t={}){let n=await li(e,t),r=await n.text();if(!n.ok)throw ci(n.status,n.statusText,r);let i=oi(r);if(i===void 0)throw new ai(n.status,`the cezar server answered ${e} with a non-JSON body`);return i}async function di(e,t={}){let n=await li(e,t),r=await n.text();if(!n.ok)throw ci(n.status,n.statusText,r);return r}function W(e,t={}){return ui(e,{method:`GET`,signal:t.signal})}function G(e,t,n){return ui(t,{method:e,...n===void 0?{}:{headers:{"content-type":`application/json`},body:JSON.stringify(n)}})}var K=(e,t=``)=>`/api/runs/${encodeURIComponent(e)}${t}`;function fi(e){return W(`/api/health`,e)}function pi(e){return W(`/api/models?runner=codex`,e)}function mi(e){return W(`/api/launch-key`,e)}function hi(e){return W(`/api/projects`,e)}function gi(e,t){return W(`/api/fs/browse${e===void 0||e===``?``:`?path=${encodeURIComponent(e)}`}`,t)}function _i(e){return W(`/api/runs`,e)}function vi(e,t){return W(`/api/p/${encodeURIComponent(e)}/runs`,t)}function yi(e,t){return W(K(e),t)}function bi(e){return W(`/api/ui-state`,e)}function xi(e){return W(`/api/workflows`,e)}function Si(e){return W(`/api/skills`,e)}function Ci(e){return W(`/api/skills?wait=1`,e)}function wi(){return G(`POST`,`/api/skills/refresh`)}function Ti(e){return W(`/api/skills/importable`,e)}function Ei(e){return W(`/api/skills/importable?wait=1`,e)}function Di(e){return W(`/api/todos`,e)}function Oi(e){return W(`/api/repo`,e)}function ki(e){return W(`/api/config`,e)}function Ai(e={}){return W(`/api/agent-config`,e)}function ji(e,t={}){return W(`/api/agent-config/${encodeURIComponent(e)}`,t)}function Mi(e,t){return G(`PUT`,`/api/agent-config/${encodeURIComponent(e)}`,t)}function Ni(e){return W(`/api/repo/changes`,e)}function Pi(e,t){return W(`/api/repo/commit/${encodeURIComponent(e)}?structured=1`,t)}function Fi(e,t){return W(K(e,`/commits`),t)}function Ii(e,t,n){return W(K(e,`/commit/${encodeURIComponent(t)}`),n)}function Li(e={},t){let n=new URLSearchParams;e.limit!==void 0&&n.set(`limit`,String(e.limit)),e.refresh&&n.set(`refresh`,`1`);let r=n.toString();return W(`/api/github${r?`?${r}`:``}`,t)}function Ri(e,t,n={},r){return W(`/api/github/comments/${e}/${t}${n.refresh?`?refresh=1`:``}`,r)}function zi(e,t){return di(K(e,`/diff`),{method:`GET`,signal:t?.signal})}function Bi(e,t){return di(K(e,`/handoff`),{method:`GET`,signal:t?.signal})}function Vi(e,t){return W(K(e,`/changes`),t)}function Hi(e,t,n){return W(K(e,`/files?path=${encodeURIComponent(t)}`),n)}function Ui(e,t){return s(K(e,`/files?path=${encodeURIComponent(t)}&raw=1`))}function Wi(e,t){return W(`/api/groups/${encodeURIComponent(e)}`,t)}async function Gi(e){let t=`/api/projects`,n=await li(t,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({root:e})}),r=await n.text(),i=oi(r),a=i?.project;if((n.ok||n.status===409)&&a!=null)return i;throw n.ok?new ai(n.status,`the cezar server answered ${t} without a project`):ci(n.status,n.statusText,r)}function Ki(e){return G(`POST`,`/api/projects/checkout`,e)}function qi(e){return G(`DELETE`,`/api/projects/${encodeURIComponent(e)}`)}function Ji(e,t){return G(`PATCH`,`/api/projects/${encodeURIComponent(e)}`,t)}function Yi(e){return G(`POST`,`/api/runs`,e)}function Xi(e){return G(`POST`,K(e,`/cancel`))}function Zi(e,t=!0){return G(`POST`,K(e,`/archive`),{archived:t})}function Qi(){return G(`POST`,`/api/runs/archive-finished`)}function $i(e){return G(`POST`,K(e,`/finish`))}function ea(e,t={}){let n={};return t.text!==void 0&&(n.text=t.text),t.images!==void 0&&(n.images=t.images),t.runner!==void 0&&(n.runner=t.runner),t.model!==void 0&&(n.model=t.model),G(`POST`,K(e,`/continue`),n)}function ta(e){return G(`POST`,K(e,`/pr`))}function na(e,t){return G(`PATCH`,K(e),t)}function ra(e){return G(`DELETE`,K(e))}function ia(e){return G(`DELETE`,`/api/todos/${encodeURIComponent(e)}`)}function aa(e,t={}){let n={};return t.runner!==void 0&&(n.runner=t.runner),t.model!==void 0&&(n.model=t.model),t.prompt!==void 0&&(n.prompt=t.prompt),G(`POST`,`/api/todos/${encodeURIComponent(e)}/start`,Object.keys(n).length>0?n:void 0)}function oa(e,t){return G(`POST`,`/api/groups/${encodeURIComponent(e)}/pick`,{runId:t})}function sa(e){return G(`POST`,K(e,`/open-in-cli`))}function ca(e){return W(`/api/open-targets`,e)}function la(e,t){return G(`POST`,K(e,`/open-in`),{target:t})}function ua(e,t){return G(`POST`,K(e,`/open-in`),{target:`default`,path:t})}function da(e,t){return G(`POST`,K(e,`/git/commit`),{message:t})}function fa(e){return G(`POST`,K(e,`/git/push`))}function pa(e,t){return G(`POST`,K(e,`/messages`),{text:t.text??``,images:t.images??[]})}function ma(e,t,n){return G(`PATCH`,K(e,`/queued-messages/${encodeURIComponent(t)}`),n)}function ha(e,t){return G(`DELETE`,K(e,`/queued-messages/${encodeURIComponent(t)}`))}function ga(e){return G(`POST`,`/api/repo/branch`,e)}function _a(e){return G(`POST`,`/api/plan`,{task:e})}function va(e){return G(`POST`,`/api/workflows`,e)}function ya(e){return G(`POST`,`/api/workflows/parse`,{yaml:e})}function ba(e){return G(`DELETE`,`/api/workflows/${encodeURIComponent(e)}`)}function xa(e){return G(`PUT`,`/api/ui-state`,e)}function Sa(e){return W(`/api/workspace/ui-state`,e)}function Ca(e){return G(`PUT`,`/api/workspace/ui-state`,e)}function wa(e){return W(`/api/workspace/config`,e)}function Ta(e){return G(`PUT`,`/api/workspace/config`,e)}function Ea(e){return G(`PUT`,`/api/config`,e)}function Da(e){return W(`/api/worktrees`,e)}function Oa(){return G(`POST`,`/api/worktrees/reclaim`,{})}function ka(e){return G(`POST`,K(e,`/remove-worktree`))}var q={get health(){return[o(),`health`]},runs:{get all(){return[o(),`runs`]},list:()=>[o(),`runs`,`list`],detail:e=>[o(),`runs`,`detail`,e],diff:e=>[o(),`runs`,`diff`,e],changes:e=>[o(),`runs`,`changes`,e],file:(e,t)=>[o(),`runs`,`files`,e,t],handoff:e=>[o(),`runs`,`handoff`,e],commits:e=>[o(),`runs`,`commits`,e],commit:(e,t)=>[o(),`runs`,`commit`,e,t]},groups:{detail:e=>[o(),`groups`,e]},get todos(){return[o(),`todos`]},get workflows(){return[o(),`workflows`]},get skills(){return[o(),`skills`]},get skillsReady(){return[o(),`skills`,`ready`]},get importableSkills(){return[o(),`skills`,`importable`]},get importableSkillsReady(){return[o(),`skills`,`importable`,`ready`]},get launchKey(){return[o(),`launch-key`]},get repo(){return[o(),`repo`]},get repoChanges(){return[o(),`repo`,`changes`]},repoCommit:e=>[o(),`repo`,`commit`,e],get uiState(){return[o(),`ui-state`]},get config(){return[o(),`config`]},get agentConfig(){return[o(),`agent-config`]},agentConfigFile:e=>[o(),`agent-config`,`file`,e],get worktrees(){return[o(),`worktrees`]},github:(e={})=>[o(),`github`,e.limit??null],githubComments:(e,t)=>[o(),`github`,`comments`,e,t],get openTargets(){return[o(),`open-targets`]}},J={models:e=>[`workspace`,`models`,e],projects:[`workspace`,`projects`],uiState:[`workspace`,`ui-state`],config:[`workspace`,`config`],fsBrowseRoot:[`workspace`,`fs-browse`],fsBrowse:e=>[...J.fsBrowseRoot,e]};function Aa(e=!0){return M({queryKey:J.models(`codex`),queryFn:({signal:e})=>pi({signal:e}),staleTime:300*1e3,enabled:e})}function ja(){return M({queryKey:J.projects,queryFn:({signal:e})=>hi({signal:e})})}function Ma(e){return M({queryKey:J.fsBrowse(e),queryFn:({signal:t})=>gi(e??void 0,{signal:t}),retry:!1})}function Na(){let e=j();return N({mutationFn:e=>Gi(e),onSuccess:()=>e.invalidateQueries({queryKey:J.projects})})}function Pa(){let e=j();return N({mutationFn:e=>qi(e),retry:!1,onSuccess:()=>e.invalidateQueries({queryKey:J.projects})})}function Fa(){let e=j();return N({mutationFn:e=>Ji(e.id,{maxParallel:e.maxParallel}),retry:!1,onSuccess:()=>e.invalidateQueries({queryKey:J.projects})})}function Ia(){let e=j();return N({mutationFn:e=>Ki(e),retry:!1,onSuccess:()=>e.invalidateQueries({queryKey:J.projects})})}function La(){return M({queryKey:q.health,queryFn:({signal:e})=>fi({signal:e}),refetchInterval:5e3})}function Ra(){return M({queryKey:q.openTargets,queryFn:({signal:e})=>ca({signal:e}),staleTime:5*6e4})}function za(){return M({queryKey:q.runs.list(),queryFn:({signal:e})=>_i({signal:e})})}function Ba(e,t=!0,n=!1){return M({queryKey:[n?`default`:e,`runs`,`list`],queryFn:({signal:t})=>vi(e,{signal:t}),enabled:t})}function Va(e){return M({queryKey:q.runs.detail(e??``),queryFn:({signal:t})=>yi(e,{signal:t}),enabled:!!e})}function Ha(e){return M({queryKey:q.runs.diff(e??``),queryFn:({signal:t})=>zi(e,{signal:t}),enabled:!!e})}function Ua(e,t=!1){return M({queryKey:q.runs.changes(e??``),queryFn:({signal:t})=>Vi(e,{signal:t}),enabled:!!e,retry:!1,refetchInterval:t?4e3:!1,refetchOnWindowFocus:!0,staleTime:0})}function Wa(e,t){return M({queryKey:q.runs.file(e??``,t??``),queryFn:({signal:n})=>Hi(e,t,{signal:n}),enabled:!!e&&t!==void 0,retry:!1})}function Ga(e){return M({queryKey:q.groups.detail(e??``),queryFn:({signal:t})=>Wi(e,{signal:t}),enabled:!!e})}function Ka(e,t=!1){return M({queryKey:q.runs.commits(e??``),queryFn:({signal:t})=>Fi(e,{signal:t}),enabled:!!e,retry:!1,refetchInterval:t?5e3:!1})}function qa(e,t){return M({queryKey:q.runs.commit(e??``,t??``),queryFn:({signal:n})=>Ii(e,t,{signal:n}),enabled:!!e&&!!t,retry:!1})}function Ja(e,t=!0){return M({queryKey:q.runs.handoff(e??``),queryFn:({signal:t})=>Bi(e,{signal:t}),enabled:!!e&&t})}function Ya(e=!0){return M({queryKey:q.todos,queryFn:({signal:e})=>Di({signal:e}),enabled:e})}function Xa(){return M({queryKey:q.workflows,queryFn:({signal:e})=>xi({signal:e})})}function Za(e=!0){let t=j(),n=q.skills,r=n[0],i=M({queryKey:n,queryFn:({signal:e})=>Si({signal:e}),enabled:e}),a=M({queryKey:q.skillsReady,queryFn:({signal:e})=>Ci({signal:e}),enabled:e&&i.isSuccess,staleTime:1/0,retry:!1});return(0,k.useEffect)(()=>{Array.isArray(a.data)&&t.setQueryData([r,`skills`],a.data)},[t,a.data,r]),i}function Qa(e=!0){let t=j(),n=q.importableSkills,r=n[0],i=M({queryKey:n,queryFn:({signal:e})=>Ti({signal:e}),enabled:e}),a=M({queryKey:q.importableSkillsReady,queryFn:({signal:e})=>Ei({signal:e}),enabled:e&&i.isSuccess,staleTime:1/0,retry:!1});return(0,k.useEffect)(()=>{Array.isArray(a.data)&&t.setQueryData([r,`skills`,`importable`],a.data)},[t,a.data,r]),i}function $a(){return M({queryKey:q.launchKey,queryFn:({signal:e})=>mi({signal:e}),staleTime:1/0})}function eo(){return M({queryKey:q.repo,queryFn:({signal:e})=>Oi({signal:e})})}function to(){return M({queryKey:q.repoChanges,queryFn:({signal:e})=>Ni({signal:e}),retry:!1})}function no(e){return M({queryKey:q.repoCommit(e??``),queryFn:({signal:t})=>Pi(e,{signal:t}),enabled:!!e,retry:!1})}function ro(){return M({queryKey:q.config,queryFn:({signal:e})=>ki({signal:e})})}function io(){return M({queryKey:q.worktrees,queryFn:({signal:e})=>Da({signal:e})})}function ao(){return M({queryKey:q.uiState,queryFn:({signal:e})=>bi({signal:e})})}function oo(){return M({queryKey:q.agentConfig,queryFn:({signal:e})=>Ai({signal:e})})}function so(e){return M({queryKey:q.agentConfigFile(e??``),queryFn:({signal:t})=>ji(e,{signal:t}),enabled:e!==null})}function co(e){let t=j(),n=q.agentConfig,r=q.agentConfigFile(e);return N({mutationFn:t=>Mi(e,t),onSuccess:e=>{t.setQueryData(r,e),t.invalidateQueries({queryKey:n})}})}function lo(){return M({queryKey:J.uiState,queryFn:({signal:e})=>Sa({signal:e})})}function uo(){return M({queryKey:J.config,queryFn:({signal:e})=>wa({signal:e})})}function fo(e){let t=j();return N({mutationFn:t=>na(e,t),onSuccess:()=>t.invalidateQueries({queryKey:q.runs.all})})}function po(e){let t=j();return N({mutationFn:t=>pa(e,t),onSuccess:()=>t.invalidateQueries({queryKey:q.runs.all})})}function mo(e){let t=j();return N({mutationFn:({msgId:t,message:n})=>ma(e,t,n),onSuccess:()=>t.invalidateQueries({queryKey:q.runs.all})})}function ho(e){let t=j();return N({mutationFn:t=>ha(e,t),onSuccess:()=>t.invalidateQueries({queryKey:q.runs.all})})}function go(e={},t=!0){return M({queryKey:q.github(e),queryFn:({signal:t})=>Li({limit:e.limit},{signal:t}),enabled:t})}function _o(e,t,n=!0){return M({queryKey:q.githubComments(e,t),queryFn:({signal:n})=>Ri(e,t,{},{signal:n}),enabled:n,staleTime:6e4})}var vo=c(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),yo=c(`loader-circle`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]),bo=a(n(),1),xo=e=>typeof e==`boolean`?`${e}`:e===0?`0`:e,So=r,Co=(e,t)=>n=>{if(t?.variants==null)return So(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=xo(t)||xo(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return So(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)};function wo(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function To(...e){return t=>{let n=!1,r=e.map(e=>{let r=wo(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];typeof n==`function`?n():wo(e[t],null)}}}}function Eo(...e){return k.useCallback(To(...e),e)}function Do(e){let t=k.forwardRef((t,n)=>{let{children:r,...i}=t,a=null,o=!1,s=[];Fo(r)&&typeof zo==`function`&&(r=zo(r._payload)),k.Children.forEach(r,e=>{if(No(e)){o=!0;let t=e,n=`child`in t.props?t.props.child:t.props.children;Fo(n)&&typeof zo==`function`&&(n=zo(n._payload)),a=Ao(t,n),s.push(a?.props?.children)}else s.push(e)}),a?a=k.cloneElement(a,void 0,s):!o&&k.Children.count(r)===1&&k.isValidElement(r)&&(a=r);let c=a?Mo(a):void 0,l=Eo(n,c);if(!a){if(r||r===0)throw Error(o?Ro(e):Lo(e));return r}let u=jo(i,a.props??{});return a.type!==k.Fragment&&(u.ref=n?l:c),k.cloneElement(a,u)});return t.displayName=`${e}.Slot`,t}var Oo=Do(`Slot`),ko=Symbol.for(`radix.slottable`),Ao=(e,t)=>{if(`child`in e.props){let t=e.props.child;return k.isValidElement(t)?k.cloneElement(t,void 0,e.props.children(t.props.children)):null}return k.isValidElement(t)?t:null};function jo(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function Mo(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function No(e){return k.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===ko}var Po=Symbol.for(`react.lazy`);function Fo(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===Po&&`_payload`in e&&Io(e._payload)}function Io(e){return typeof e==`object`&&!!e&&`then`in e}var Lo=e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,Ro=e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,zo=k.use,Bo=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=Do(`Primitive.${t}`),r=k.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,A.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function Vo(e,t){e&&bo.flushSync(()=>e.dispatchEvent(t))}function Ho(e,t=[]){let n=[];function r(t,r){let i=k.createContext(r);i.displayName=t+`Context`;let a=n.length;n=[...n,r];let o=t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=k.useMemo(()=>o,Object.values(o));return(0,A.jsx)(s.Provider,{value:c,children:r})};o.displayName=t+`Provider`;function s(n,o,s={}){let{optional:c=!1}=s,l=o?.[e]?.[a]||i,u=k.useContext(l);if(u)return u;if(r!==void 0)return r;if(!c)throw Error(`\`${n}\` must be used within \`${t}\``)}return[o,s]}let i=()=>{let t=n.map(e=>k.createContext(e));return function(n){let r=n?.[e]||t;return k.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])}};return i.scopeName=e,[r,Uo(i,...t)]}function Uo(...e){let t=e[0];if(e.length===1)return t;let n=()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return k.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return n.scopeName=t.scopeName,n}typeof window<`u`&&window.document&&window.document.createElement;function Wo(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),n===!1||!r||!r.defaultPrevented)return t?.(r)}}var Y=globalThis?.document?k.useLayoutEffect:()=>{},Go=k.useInsertionEffect||Y;function Ko({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){let[i,a,o]=qo({defaultProp:t,onChange:n}),s=e!==void 0,c=s?e:i;{let t=k.useRef(e!==void 0);k.useEffect(()=>{let e=t.current;e!==s&&console.warn(`${r} is changing from ${e?`controlled`:`uncontrolled`} to ${s?`controlled`:`uncontrolled`}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),t.current=s},[s,r])}return[c,k.useCallback(t=>{if(s){let n=Jo(t)?t(e):t;n!==e&&o.current?.(n)}else a(t)},[s,e,a,o])]}function qo({defaultProp:e,onChange:t}){let[n,r]=k.useState(e),i=k.useRef(n),a=k.useRef(t);return Go(()=>{a.current=t},[t]),k.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}function Jo(e){return typeof e==`function`}function Yo(e,t){return k.useReducer((e,n)=>t[e][n]??e,e)}var Xo=e=>{let{present:t,children:n}=e,r=Zo(t),i=typeof n==`function`?n({present:r.isPresent}):k.Children.only(n),a=$o(r.ref,ts(i));return typeof n==`function`||r.isPresent?k.cloneElement(i,{ref:a}):null};Xo.displayName=`Presence`;function Zo(e){let[t,n]=k.useState(),r=k.useRef(null),i=k.useRef(e),a=k.useRef(`none`),o=k.useRef(void 0),[s,c]=Yo(e?`mounted`:`unmounted`,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}});return k.useEffect(()=>{s===`mounted`?(a.current=o.current??es(r.current),o.current=void 0):a.current=`none`},[s]),Y(()=>{let t=r.current,n=i.current;if(n!==e){let r=a.current,s=es(t);e?(o.current=s,c(`MOUNT`)):s===`none`||t?.display===`none`?c(`UNMOUNT`):c(n&&r!==s?`ANIMATION_OUT`:`UNMOUNT`),i.current=e}},[e,c]),Y(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,o=a=>{let o=es(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&o&&(c(`ANIMATION_END`),!i.current)){let r=t.style.animationFillMode;t.style.animationFillMode=`forwards`,e=n.setTimeout(()=>{t.style.animationFillMode===`forwards`&&(t.style.animationFillMode=r)})}},s=e=>{e.target===t&&(a.current=es(r.current))};return t.addEventListener(`animationstart`,s),t.addEventListener(`animationcancel`,o),t.addEventListener(`animationend`,o),()=>{n.clearTimeout(e),t.removeEventListener(`animationstart`,s),t.removeEventListener(`animationcancel`,o),t.removeEventListener(`animationend`,o)}}else c(`ANIMATION_END`)},[t,c]),{isPresent:[`mounted`,`unmountSuspended`].includes(s),ref:k.useCallback(e=>{if(e){let t=getComputedStyle(e);r.current=t,o.current=es(t)}else r.current=null;n(e)},[])}}function Qo(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function $o(...e){let t=k.useRef(e);return t.current=e,k.useCallback(e=>{let n=t.current,r=!1,i=n.map(t=>{let n=Qo(t,e);return!r&&typeof n==`function`&&(r=!0),n});if(r)return()=>{for(let e=0;e<i.length;e++){let t=i[e];typeof t==`function`?t():Qo(n[e],null)}}},[])}function es(e){return e?.animationName||`none`}function ts(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var ns=k.useId||(()=>void 0),rs=0;function is(e){let[t,n]=k.useState(ns());return Y(()=>{e||n(e=>e??String(rs++))},[e]),e||(t?`radix-${t}`:``)}function X(e){let t=k.useRef(e);return k.useEffect(()=>{t.current=e}),k.useMemo(()=>((...e)=>t.current?.(...e)),[])}var as=`DismissableLayer`,os=`dismissableLayer.update`,ss=`dismissableLayer.pointerDownOutside`,cs=`dismissableLayer.focusOutside`,ls,us=k.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),ds=k.forwardRef((e,t)=>{let{disableOutsidePointerEvents:n=!1,deferPointerDownOutside:r=!1,onEscapeKeyDown:i,onPointerDownOutside:a,onFocusOutside:o,onInteractOutside:s,onDismiss:c,...l}=e,u=k.useContext(us),[d,f]=k.useState(null),p=d?.ownerDocument??globalThis?.document,[,m]=k.useState({}),h=Eo(t,f),g=Array.from(u.layers),[_]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),v=_?g.indexOf(_):-1,y=d?g.indexOf(d):-1,b=u.layersWithOutsidePointerEventsDisabled.size>0,x=y>=v,S=k.useRef(!1),C=gs(e=>{a?.(e),s?.(e),e.defaultPrevented||c?.()},{ownerDocument:p,deferPointerDownOutside:r,isDeferredPointerDownOutsideRef:S,dismissableSurfaces:u.dismissableSurfaces,shouldHandlePointerDownOutside:k.useCallback(e=>{if(!(e instanceof Node))return!1;let t=[...u.branches].some(t=>t.contains(e));return x&&!t},[u.branches,x])}),w=_s(e=>{if(r&&S.current)return;let t=e.target;[...u.branches].some(e=>e.contains(t))||(o?.(e),s?.(e),e.defaultPrevented||c?.())},p),T=d?y===g.length-1:!1,E=X(e=>{e.key===`Escape`&&(i?.(e),!e.defaultPrevented&&c&&(e.preventDefault(),c()))});return k.useEffect(()=>{if(T)return p.addEventListener(`keydown`,E,{capture:!0}),()=>p.removeEventListener(`keydown`,E,{capture:!0})},[p,T,E]),k.useEffect(()=>{if(d)return n&&(u.layersWithOutsidePointerEventsDisabled.size===0&&(ls=p.body.style.pointerEvents,p.body.style.pointerEvents=`none`),u.layersWithOutsidePointerEventsDisabled.add(d)),u.layers.add(d),vs(),()=>{n&&(u.layersWithOutsidePointerEventsDisabled.delete(d),u.layersWithOutsidePointerEventsDisabled.size===0&&(p.body.style.pointerEvents=ls))}},[d,p,n,u]),k.useEffect(()=>()=>{d&&(u.layers.delete(d),u.layersWithOutsidePointerEventsDisabled.delete(d),vs())},[d,u]),k.useEffect(()=>{let e=()=>m({});return document.addEventListener(os,e),()=>document.removeEventListener(os,e)},[]),(0,A.jsx)(Bo.div,{...l,ref:h,style:{pointerEvents:b?x?`auto`:`none`:void 0,...e.style},onFocusCapture:Wo(e.onFocusCapture,w.onFocusCapture),onBlurCapture:Wo(e.onBlurCapture,w.onBlurCapture),onPointerDownCapture:Wo(e.onPointerDownCapture,C.onPointerDownCapture)})});ds.displayName=as;var fs=`DismissableLayerBranch`,ps=k.forwardRef((e,t)=>{let n=k.useContext(us),r=k.useRef(null),i=Eo(t,r);return k.useEffect(()=>{let e=r.current;if(e)return n.branches.add(e),()=>{n.branches.delete(e)}},[n.branches]),(0,A.jsx)(Bo.div,{...e,ref:i})});ps.displayName=fs;function ms(){let e=k.useContext(us),[t,n]=k.useState(null);return k.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}var hs=()=>!0;function gs(e,t){let{ownerDocument:n=globalThis?.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:i,dismissableSurfaces:a,shouldHandlePointerDownOutside:o=hs}=t,s=X(e),c=k.useRef(!1),l=k.useRef(!1),u=k.useRef(new Map),d=k.useRef(()=>{});return k.useEffect(()=>{function e(){l.current=!1,i.current=!1,u.current.clear()}function t(){return Array.from(u.current.values()).some(Boolean)}function f(e){if(!l.current)return;let t=e.target;t instanceof Node&&[...a].some(e=>e.contains(t))||u.current.set(e.type,!0),e.type===`click`&&window.setTimeout(()=>{l.current&&d.current()},0)}function p(e){l.current&&u.current.set(e.type,!1)}let m=a=>{if(a.target&&!c.current){let f=function(){n.removeEventListener(`click`,d.current);let r=t();e(),r||ys(ss,s,p,{discrete:!0})};if(!o(a.target)){n.removeEventListener(`click`,d.current),e(),c.current=!1;return}let p={originalEvent:a};l.current=!0,i.current=r&&a.button===0,u.current.clear(),!r||a.button!==0?f():(n.removeEventListener(`click`,d.current),d.current=f,n.addEventListener(`click`,d.current,{once:!0}))}else n.removeEventListener(`click`,d.current),e();c.current=!1},h=[`pointerup`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`click`];for(let e of h)n.addEventListener(e,f,!0),n.addEventListener(e,p);let g=window.setTimeout(()=>{n.addEventListener(`pointerdown`,m)},0);return()=>{window.clearTimeout(g),n.removeEventListener(`pointerdown`,m),n.removeEventListener(`click`,d.current);for(let e of h)n.removeEventListener(e,f,!0),n.removeEventListener(e,p)}},[n,s,r,i,a,o]),{onPointerDownCapture:()=>c.current=!0}}function _s(e,t=globalThis?.document){let n=X(e),r=k.useRef(!1);return k.useEffect(()=>{let e=e=>{e.target&&!r.current&&ys(cs,n,{originalEvent:e},{discrete:!1})};return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function vs(){let e=new CustomEvent(os);document.dispatchEvent(e)}function ys(e,t,n,{discrete:r}){let i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?Vo(i,a):i.dispatchEvent(a)}var bs=`focusScope.autoFocusOnMount`,xs=`focusScope.autoFocusOnUnmount`,Ss={bubbles:!1,cancelable:!0},Cs=`FocusScope`,ws=k.forwardRef((e,t)=>{let{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:a,...o}=e,[s,c]=k.useState(null),l=X(i),u=X(a),d=k.useRef(null),f=Eo(t,c),p=k.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;k.useEffect(()=>{if(r){let e=function(e){if(p.paused||!s)return;let t=e.target;s.contains(t)?d.current=t:Z(d.current,{select:!0})},t=function(e){if(p.paused||!s)return;let t=e.relatedTarget;t!==null&&(s.contains(t)||Z(d.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&Z(s)};document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return s&&r.observe(s,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[r,s,p.paused]),k.useEffect(()=>{if(s){js.add(p);let e=document.activeElement;if(!s.contains(e)){let t=new CustomEvent(bs,Ss);s.addEventListener(bs,l),s.dispatchEvent(t),t.defaultPrevented||(Ts(Ps(Ds(s)),{select:!0}),document.activeElement===e&&Z(s))}return()=>{s.removeEventListener(bs,l),setTimeout(()=>{let t=new CustomEvent(xs,Ss);s.addEventListener(xs,u),s.dispatchEvent(t),t.defaultPrevented||Z(e??document.body,{select:!0}),s.removeEventListener(xs,u),js.remove(p)},0)}}},[s,l,u,p]);let m=k.useCallback(e=>{if(!n&&!r||p.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,i=document.activeElement;if(t&&i){let t=e.currentTarget,[r,a]=Es(t);r&&a?!e.shiftKey&&i===a?(e.preventDefault(),n&&Z(r,{select:!0})):e.shiftKey&&i===r&&(e.preventDefault(),n&&Z(a,{select:!0})):i===t&&e.preventDefault()}},[n,r,p.paused]);return(0,A.jsx)(Bo.div,{tabIndex:-1,...o,ref:f,onKeyDown:m})});ws.displayName=Cs;function Ts(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(Z(r,{select:t}),document.activeElement!==n)return}function Es(e){let t=Ds(e);return[Os(t,e),Os(t.reverse(),e)]}function Ds(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function Os(e,t){let n=typeof t.checkVisibility==`function`&&t.checkVisibility({checkVisibilityCSS:!0});for(let r of e)if(!(n?!r.checkVisibility({checkVisibilityCSS:!0}):ks(r,{upTo:t})))return r}function ks(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function As(e){return e instanceof HTMLInputElement&&`select`in e}function Z(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&As(e)&&t&&e.select()}}var js=Ms();function Ms(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=Ns(e,t),e.unshift(t)},remove(t){e=Ns(e,t),e[0]?.resume()}}}function Ns(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function Ps(e){return e.filter(e=>e.tagName!==`A`)}var Fs=`Portal`,Is=k.forwardRef((e,t)=>{let{container:n,...r}=e,[i,a]=k.useState(!1);Y(()=>a(!0),[]);let o=n||i&&globalThis?.document?.body;return o?bo.createPortal((0,A.jsx)(Bo.div,{...r,ref:t}),o):null});Is.displayName=Fs;var Ls=0,Rs=null;function zs(){k.useEffect(()=>{Rs||={start:Bs(),end:Bs()};let{start:e,end:t}=Rs;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement(`afterbegin`,e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement(`beforeend`,t),Ls++,()=>{Ls===1&&(Rs?.start.remove(),Rs?.end.remove(),Rs=null),Ls=Math.max(0,Ls-1)}},[])}function Bs(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}var Q=function(){return Q=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},Q.apply(this,arguments)};function Vs(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function Hs(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var Us=`right-scroll-bar-position`,Ws=`width-before-scroll-bar`,Gs=`with-scroll-bars-hidden`,Ks=`--removed-body-scroll-bar-size`;function qs(e,t){return typeof e==`function`?e(t):e&&(e.current=t),e}function Js(e,t){var n=(0,k.useState)(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(e){var t=n.value;t!==e&&(n.value=e,n.callback(e,t))}}}})[0];return n.callback=t,n.facade}var Ys=typeof window<`u`?k.useLayoutEffect:k.useEffect,Xs=new WeakMap;function Zs(e,t){var n=Js(t||null,function(t){return e.forEach(function(e){return qs(e,t)})});return Ys(function(){var t=Xs.get(n);if(t){var r=new Set(t),i=new Set(e),a=n.current;r.forEach(function(e){i.has(e)||qs(e,null)}),i.forEach(function(e){r.has(e)||qs(e,a)})}Xs.set(n,e)},[e]),n}function Qs(e){return e}function $s(e,t){t===void 0&&(t=Qs);var n=[],r=!1;return{read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var i=t(e,r);return n.push(i),function(){n=n.filter(function(e){return e!==i})}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var i=n;n=[],i.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},o=function(){return Promise.resolve().then(a)};o(),n={push:function(e){t.push(e),o()},filter:function(e){return t=t.filter(e),n}}}}}function ec(e){e===void 0&&(e={});var t=$s(null);return t.options=Q({async:!0,ssr:!1},e),t}var tc=function(e){var t=e.sideCar,n=Vs(e,[`sideCar`]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error(`Sidecar medium not found`);return k.createElement(r,Q({},n))};tc.isSideCarExport=!0;function nc(e,t){return e.useMedium(t),tc}var rc=ec(),ic=function(){},ac=k.forwardRef(function(e,t){var n=k.useRef(null),r=k.useState({onScrollCapture:ic,onWheelCapture:ic,onTouchMoveCapture:ic}),i=r[0],a=r[1],o=e.forwardProps,s=e.children,c=e.className,l=e.removeScrollBar,u=e.enabled,d=e.shards,f=e.sideCar,p=e.noRelative,m=e.noIsolation,h=e.inert,g=e.allowPinchZoom,_=e.as,v=_===void 0?`div`:_,y=e.gapMode,b=Vs(e,[`forwardProps`,`children`,`className`,`removeScrollBar`,`enabled`,`shards`,`sideCar`,`noRelative`,`noIsolation`,`inert`,`allowPinchZoom`,`as`,`gapMode`]),x=f,S=Zs([n,t]),C=Q(Q({},b),i);return k.createElement(k.Fragment,null,u&&k.createElement(x,{sideCar:rc,removeScrollBar:l,shards:d,noRelative:p,noIsolation:m,inert:h,setCallbacks:a,allowPinchZoom:!!g,lockRef:n,gapMode:y}),o?k.cloneElement(k.Children.only(s),Q(Q({},C),{ref:S})):k.createElement(v,Q({},C,{className:c,ref:S}),s))});ac.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},ac.classNames={fullWidth:Ws,zeroRight:Us};var oc,sc=function(){if(oc)return oc;if(typeof __webpack_nonce__<`u`)return __webpack_nonce__};function cc(){if(!document)return null;var e=document.createElement(`style`);e.type=`text/css`;var t=sc();return t&&e.setAttribute(`nonce`,t),e}function lc(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function uc(e){(document.head||document.getElementsByTagName(`head`)[0]).appendChild(e)}var dc=function(){var e=0,t=null;return{add:function(n){e==0&&(t=cc())&&(lc(t,n),uc(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},fc=function(){var e=dc();return function(t,n){k.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},pc=function(){var e=fc();return function(t){var n=t.styles,r=t.dynamic;return e(n,r),null}},mc={left:0,top:0,right:0,gap:0},hc=function(e){return parseInt(e||``,10)||0},gc=function(e){var t=window.getComputedStyle(document.body),n=t[e===`padding`?`paddingLeft`:`marginLeft`],r=t[e===`padding`?`paddingTop`:`marginTop`],i=t[e===`padding`?`paddingRight`:`marginRight`];return[hc(n),hc(r),hc(i)]},_c=function(e){if(e===void 0&&(e=`margin`),typeof window>`u`)return mc;var t=gc(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},vc=pc(),yc=`data-scroll-locked`,bc=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),`
|
|
4
|
-
.${Gs} {
|
|
5
|
-
overflow: hidden ${r};
|
|
6
|
-
padding-right: ${s}px ${r};
|
|
7
|
-
}
|
|
8
|
-
body[${yc}] {
|
|
9
|
-
overflow: hidden ${r};
|
|
10
|
-
overscroll-behavior: contain;
|
|
11
|
-
${[t&&`position: relative ${r};`,n===`margin`&&`
|
|
12
|
-
padding-left: ${i}px;
|
|
13
|
-
padding-top: ${a}px;
|
|
14
|
-
padding-right: ${o}px;
|
|
15
|
-
margin-left:0;
|
|
16
|
-
margin-top:0;
|
|
17
|
-
margin-right: ${s}px ${r};
|
|
18
|
-
`,n===`padding`&&`padding-right: ${s}px ${r};`].filter(Boolean).join(``)}
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
.${Us} {
|
|
22
|
-
right: ${s}px ${r};
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
.${Ws} {
|
|
26
|
-
margin-right: ${s}px ${r};
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
.${Us} .${Us} {
|
|
30
|
-
right: 0 ${r};
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
.${Ws} .${Ws} {
|
|
34
|
-
margin-right: 0 ${r};
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
body[${yc}] {
|
|
38
|
-
${Ks}: ${s}px;
|
|
39
|
-
}
|
|
40
|
-
`},xc=function(){var e=parseInt(document.body.getAttribute(`data-scroll-locked`)||`0`,10);return isFinite(e)?e:0},Sc=function(){k.useEffect(function(){return document.body.setAttribute(yc,(xc()+1).toString()),function(){var e=xc()-1;e<=0?document.body.removeAttribute(yc):document.body.setAttribute(yc,e.toString())}},[])},Cc=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,i=r===void 0?`margin`:r;Sc();var a=k.useMemo(function(){return _c(i)},[i]);return k.createElement(vc,{styles:bc(a,!t,i,n?``:`!important`)})},wc=!1;if(typeof window<`u`)try{var Tc=Object.defineProperty({},"passive",{get:function(){return wc=!0,!0}});window.addEventListener(`test`,Tc,Tc),window.removeEventListener(`test`,Tc,Tc)}catch{wc=!1}var $=wc?{passive:!1}:!1,Ec=function(e){return e.tagName===`TEXTAREA`},Dc=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!==`hidden`&&!(n.overflowY===n.overflowX&&!Ec(e)&&n[t]===`visible`)},Oc=function(e){return Dc(e,`overflowY`)},kc=function(e){return Dc(e,`overflowX`)},Ac=function(e,t){var n=t.ownerDocument,r=t;do{if(typeof ShadowRoot<`u`&&r instanceof ShadowRoot&&(r=r.host),Nc(e,r)){var i=Pc(e,r);if(i[1]>i[2])return!0}r=r.parentNode}while(r&&r!==n.body);return!1},jc=function(e){return[e.scrollTop,e.scrollHeight,e.clientHeight]},Mc=function(e){return[e.scrollLeft,e.scrollWidth,e.clientWidth]},Nc=function(e,t){return e===`v`?Oc(t):kc(t)},Pc=function(e,t){return e===`v`?jc(t):Mc(t)},Fc=function(e,t){return e===`h`&&t===`rtl`?-1:1},Ic=function(e,t,n,r,i){var a=Fc(e,window.getComputedStyle(t).direction),o=a*r,s=n.target,c=t.contains(s),l=!1,u=o>0,d=0,f=0;do{if(!s)break;var p=Pc(e,s),m=p[0],h=p[1]-p[2]-a*m;(m||h)&&Nc(e,s)&&(d+=h,f+=m);var g=s.parentNode;s=g&&g.nodeType===Node.DOCUMENT_FRAGMENT_NODE?g.host:g}while(!c&&s!==document.body||c&&(t.contains(s)||t===s));return(u&&(i&&Math.abs(d)<1||!i&&o>d)||!u&&(i&&Math.abs(f)<1||!i&&-o>f))&&(l=!0),l},Lc=function(e){return`changedTouches`in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},Rc=function(e){return[e.deltaX,e.deltaY]},zc=function(e){return e&&`current`in e?e.current:e},Bc=function(e,t){return e[0]===t[0]&&e[1]===t[1]},Vc=function(e){return`
|
|
41
|
-
.block-interactivity-${e} {pointer-events: none;}
|
|
42
|
-
.allow-interactivity-${e} {pointer-events: all;}
|
|
43
|
-
`},Hc=0,Uc=[];function Wc(e){var t=k.useRef([]),n=k.useRef([0,0]),r=k.useRef(),i=k.useState(Hc++)[0],a=k.useState(pc)[0],o=k.useRef(e);k.useEffect(function(){o.current=e},[e]),k.useEffect(function(){if(e.inert){document.body.classList.add(`block-interactivity-${i}`);var t=Hs([e.lockRef.current],(e.shards||[]).map(zc),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add(`allow-interactivity-${i}`)}),function(){document.body.classList.remove(`block-interactivity-${i}`),t.forEach(function(e){return e.classList.remove(`allow-interactivity-${i}`)})}}},[e.inert,e.lockRef.current,e.shards]);var s=k.useCallback(function(e,t){if(`touches`in e&&e.touches.length===2||e.type===`wheel`&&e.ctrlKey)return!o.current.allowPinchZoom;var i=Lc(e),a=n.current,s=`deltaX`in e?e.deltaX:a[0]-i[0],c=`deltaY`in e?e.deltaY:a[1]-i[1],l,u=e.target,d=Math.abs(s)>Math.abs(c)?`h`:`v`;if(`touches`in e&&d===`h`&&u.type===`range`)return!1;var f=window.getSelection(),p=f&&f.anchorNode;if(p&&(p===u||p.contains(u)))return!1;var m=Ac(d,u);if(!m)return!0;if(m?l=d:(l=d===`v`?`h`:`v`,m=Ac(d,u)),!m)return!1;if(!r.current&&`changedTouches`in e&&(s||c)&&(r.current=l),!l)return!0;var h=r.current||l;return Ic(h,t,e,h===`h`?s:c,!0)},[]),c=k.useCallback(function(e){var n=e;if(!(!Uc.length||Uc[Uc.length-1]!==a)){var r=`deltaY`in n?Rc(n):Lc(n),i=t.current.filter(function(e){return e.name===n.type&&(e.target===n.target||n.target===e.shadowParent)&&Bc(e.delta,r)})[0];if(i&&i.should){n.cancelable&&n.preventDefault();return}if(!i){var c=(o.current.shards||[]).map(zc).filter(Boolean).filter(function(e){return e.contains(n.target)});(c.length>0?s(n,c[0]):!o.current.noIsolation)&&n.cancelable&&n.preventDefault()}}},[]),l=k.useCallback(function(e,n,r,i){var a={name:e,delta:n,target:r,should:i,shadowParent:Gc(r)};t.current.push(a),setTimeout(function(){t.current=t.current.filter(function(e){return e!==a})},1)},[]),u=k.useCallback(function(e){n.current=Lc(e),r.current=void 0},[]),d=k.useCallback(function(t){l(t.type,Rc(t),t.target,s(t,e.lockRef.current))},[]),f=k.useCallback(function(t){l(t.type,Lc(t),t.target,s(t,e.lockRef.current))},[]);k.useEffect(function(){return Uc.push(a),e.setCallbacks({onScrollCapture:d,onWheelCapture:d,onTouchMoveCapture:f}),document.addEventListener(`wheel`,c,$),document.addEventListener(`touchmove`,c,$),document.addEventListener(`touchstart`,u,$),function(){Uc=Uc.filter(function(e){return e!==a}),document.removeEventListener(`wheel`,c,$),document.removeEventListener(`touchmove`,c,$),document.removeEventListener(`touchstart`,u,$)}},[]);var p=e.removeScrollBar,m=e.inert;return k.createElement(k.Fragment,null,m?k.createElement(a,{styles:Vc(i)}):null,p?k.createElement(Cc,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function Gc(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}var Kc=nc(rc,Wc),qc=k.forwardRef(function(e,t){return k.createElement(ac,Q({},e,{ref:t,sideCar:Kc}))});qc.classNames=ac.classNames;var Jc=function(e){return typeof document>`u`?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},Yc=new WeakMap,Xc=new WeakMap,Zc={},Qc=0,$c=function(e){return e&&(e.host||$c(e.parentNode))},el=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=$c(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},tl=function(e,t,n,r){var i=el(t,Array.isArray(e)?e:[e]);Zc[n]||(Zc[n]=new WeakMap);var a=Zc[n],o=[],s=new Set,c=new Set(i),l=function(e){!e||s.has(e)||(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){!e||c.has(e)||Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(Yc.get(e)||0)+1,l=(a.get(e)||0)+1;Yc.set(e,c),a.set(e,l),o.push(e),c===1&&i&&Xc.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),Qc++,function(){o.forEach(function(e){var t=Yc.get(e)-1,i=a.get(e)-1;Yc.set(e,t),a.set(e,i),t||(Xc.has(e)||e.removeAttribute(r),Xc.delete(e)),i||e.removeAttribute(n)}),Qc--,Qc||(Yc=new WeakMap,Yc=new WeakMap,Xc=new WeakMap,Zc={})}},nl=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=t||Jc(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live], script`))),tl(r,i,n,`aria-hidden`)):function(){return null}},rl=Co(`inline-flex shrink-0 items-center justify-center gap-[7px] rounded-md font-semibold whitespace-nowrap transition-[background-color,border-color,opacity,filter] outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,{variants:{variant:{primary:`bg-primary text-primary-foreground hover:brightness-[0.96]`,contrast:`bg-contrast text-contrast-foreground hover:brightness-[0.96]`,outline:`border border-border bg-card hover:bg-muted`,ghost:`text-muted-foreground hover:bg-muted hover:text-foreground`,"danger-ghost":`text-danger hover:bg-danger/10`},size:{default:`h-9 px-3.5 text-[13.5px]`,sm:`h-[30px] rounded-sm px-2.5 text-[12.5px]`,icon:`size-9`,"icon-sm":`size-[30px] rounded-sm`}},defaultVariants:{variant:`primary`,size:`default`}});function il({className:e,variant:t=`primary`,size:n=`default`,asChild:r=!1,...i}){return(0,A.jsx)(r?Oo:`button`,{"data-slot":`button`,"data-variant":t,"data-size":n,className:l(rl({variant:t,size:n,className:e})),...i})}var al=5e3,ol=[],sl=1,cl=new Set;function ll(e){ol=e;for(let e of cl)e()}function ul(e){return cl.add(e),()=>cl.delete(e)}function dl(e,t={}){let n={id:sl++,message:e,tone:t.tone??`default`};ll([...ol,n]),setTimeout(()=>ll(ol.filter(e=>e.id!==n.id)),al)}function fl(){let e=(0,k.useSyncExternalStore)(ul,()=>ol);return e.length===0?null:(0,A.jsx)(`div`,{"data-slot":`toaster`,className:`pointer-events-none fixed inset-x-0 bottom-[calc(16px+env(safe-area-inset-bottom))] z-50 flex flex-col items-center gap-2 px-4`,children:e.map(e=>(0,A.jsx)(`div`,{role:`status`,"data-slot":`toast`,"data-tone":e.tone,className:l(`pointer-events-auto max-w-full rounded-md px-3.5 py-2.5 text-[13px] font-medium shadow-modal`,e.tone===`danger`?`bg-danger text-danger-foreground`:`bg-contrast text-contrast-foreground`),children:e.message},e.id))})}var pl={primary:`border-primary/25 bg-primary/15 text-primary`,neutral:`border-border bg-card text-foreground shadow-xs`,danger:`border-danger/20 bg-danger/15 text-danger`};function ml({icon:e,tone:t=`neutral`,title:n,subtitle:r,children:i,actions:a,backdrop:o=!1,heading:s=`h1`,className:c}){return(0,A.jsxs)(`div`,{"data-slot":`centered-state`,"data-tone":t,className:l(`relative isolate flex min-h-full flex-1 flex-col items-center justify-center px-6 py-12 text-center`,c),children:[o?(0,A.jsx)(_l,{}):null,(0,A.jsxs)(`div`,{className:`flex w-full max-w-md flex-col items-center gap-4`,children:[(0,A.jsx)(`div`,{"data-slot":`centered-state-tile`,className:l(`flex size-[72px] items-center justify-center rounded-[18px] border [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-7`,pl[t]),children:e}),(0,A.jsx)(s,{className:`text-2xl font-semibold text-balance text-foreground`,children:n}),r?(0,A.jsx)(`p`,{className:`text-sm text-pretty text-muted-foreground`,children:r}):null,i?(0,A.jsx)(`div`,{className:`w-full pt-2`,children:i}):null,a?(0,A.jsx)(`div`,{className:`flex items-center justify-center gap-3 pt-2`,children:a}):null]})]})}var hl=[{top:`6%`,left:`14%`,size:2,tone:`violet`,opacity:.5},{top:`11%`,left:`31%`,size:3,tone:`violet`,opacity:.45},{top:`8%`,left:`52%`,size:2,tone:`pending`,opacity:.4},{top:`15%`,left:`71%`,size:2,tone:`violet`,opacity:.5},{top:`9%`,left:`86%`,size:3,tone:`primary`,opacity:.4},{top:`22%`,left:`8%`,size:2,tone:`pending`,opacity:.4},{top:`27%`,left:`24%`,size:2,tone:`primary`,opacity:.35},{top:`20%`,left:`44%`,size:3,tone:`violet`,opacity:.35},{top:`25%`,left:`62%`,size:2,tone:`violet`,opacity:.4},{top:`30%`,left:`79%`,size:2,tone:`primary`,opacity:.35},{top:`36%`,left:`12%`,size:3,tone:`violet`,opacity:.3},{top:`42%`,left:`35%`,size:2,tone:`pending`,opacity:.28},{top:`47%`,left:`58%`,size:2,tone:`primary`,opacity:.28},{top:`52%`,left:`88%`,size:2,tone:`violet`,opacity:.25},{top:`60%`,left:`29%`,size:3,tone:`violet`,opacity:.22}],gl={violet:`bg-violet`,primary:`bg-primary`,pending:`bg-pending`};function _l({className:e}){return(0,A.jsx)(`div`,{"data-slot":`twinkle-backdrop`,"aria-hidden":`true`,className:l(`pointer-events-none absolute inset-0 -z-10 overflow-hidden [mask-image:linear-gradient(to_bottom,black_25%,transparent_88%)]`,e),children:hl.map((e,t)=>(0,A.jsx)(`span`,{className:l(`absolute rounded-[1px] motion-safe:animate-pulse`,e.size===3?`size-[3px]`:`size-0.5`,gl[e.tone]),style:{top:e.top,left:e.left,opacity:e.opacity,animationDuration:`3.5s`,animationDelay:`${t%5*700}ms`}},t))})}export{no as $,aa as $t,q as A,ba as At,La as B,na as Bt,Oo as C,S as Cn,da as Ct,Co as D,le as Dn,ta as Dt,Eo as E,b as En,Yi as Et,mo as F,Hi as Ft,Ba as G,xa as Gt,$a as H,_a as Ht,Ma as I,ua as It,Na as J,Oa as Jt,ja as K,Ta as Kt,go as L,la as Lt,so as M,Li as Mt,Ia as N,Ri as Nt,yo as O,d as On,va as Ot,ro as P,mi as Pt,to as Q,Ui as Qt,_o as R,sa as Rt,Vo as S,C as Sn,Xi as St,To as T,E as Tn,ga as Tt,Ra as U,fa as Ut,Qa as V,oa as Vt,fo as W,Ea as Wt,ho as X,ka as Xt,Pa as Y,wi as Yt,eo as Z,ia as Zt,Ko as _,_e as _n,io as _t,il as a,qn as an,Wa as at,Ho as b,T as bn,Qi as bt,qc as c,U as cn,za as ct,ws as d,Jr as dn,Ya as dt,Rr as en,Va as et,ds as f,N as fn,ao as ft,Xo as g,Ee as gn,lo as gt,is as h,Le as hn,uo as ht,dl as i,Kn as in,Ha as it,oo as j,$i as jt,vo as k,u as kn,ra as kt,zs as l,_n as ln,po as lt,X as m,j as mn,Xa as mt,_l as n,Vr as nn,qa as nt,rl as o,Yn as on,Ja as ot,ms as p,Ve as pn,Fa as pt,co as q,Ca as qt,fl as r,Gn as rn,Ka as rt,nl as s,At as sn,Aa as st,ml as t,Br as tn,Ua as tt,Is as u,xn as un,Za as ut,Y as v,O as vn,J as vt,Do as w,g as wn,ea as wt,Bo as x,w as xn,Zi as xt,Wo as y,_ as yn,ai as yt,Ga as z,ya as zt};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e,s as t,u as n}from"./bundle-mjs-BegPhL5c.js";import{tn as r}from"./centered-state-CLmJ67EV.js";import{t as i}from"./utils-B8s5qIcK.js";import{t as a}from"./lib-DPEZDBUN.js";var o=n(t(),1),s=e(),c=41;function l({slot:e,commits:t,className:n}){let r=t.length>150,l=(0,o.useRef)(null),d=(0,o.useRef)(null),[f,p]=(0,o.useState)(0);(0,o.useLayoutEffect)(()=>{if(!r)return;let e=()=>{let e=l.current,t=d.current;!e||!t||p(Math.max(0,Math.round(e.getBoundingClientRect().top-t.getBoundingClientRect().top+t.scrollTop)))};return e(),window.addEventListener(`resize`,e),()=>window.removeEventListener(`resize`,e)},[r]);let m=t.map(e=>(0,s.jsx)(u,{commit:e},e.sha));return(0,s.jsx)(`div`,{ref:e=>{l.current=e,e&&(d.current=e.closest(`[data-slot="main"]`))},"data-slot":e,"data-virtualized":r,className:i(`flex flex-col divide-y divide-border px-2 py-1 md:px-4`,n),children:r?(0,s.jsx)(a,{scrollRef:d,startMargin:f,itemSize:c,children:m}):m})}function u({commit:e}){return(0,s.jsx)(`div`,{className:`[contain-intrinsic-block-size:auto_41px] [content-visibility:auto]`,children:(0,s.jsxs)(r,{"data-slot":`commit-row`,"data-sha":e.sha,to:e.href,className:`flex min-w-0 items-baseline gap-3 rounded-sm px-2 py-2.5 hover:bg-muted`,children:[(0,s.jsx)(`span`,{className:`shrink-0 font-mono text-[11px] text-muted-foreground`,children:e.shaLabel}),(0,s.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-[13px] font-medium`,children:e.subject}),(0,s.jsxs)(`span`,{className:`hidden shrink-0 text-[11px] text-soft-foreground sm:inline`,children:[e.author,` · `,e.when]})]})})}export{l as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e,s as t,u as n}from"./bundle-mjs-BegPhL5c.js";import{A as r,Vt as i,a,ct as o,fn as s,i as c,k as l,mn as u,t as d,un as f,yt as p,z as m}from"./centered-state-CLmJ67EV.js";import{t as h}from"./utils-B8s5qIcK.js";import{t as g}from"./search-x-BDjaMrzG.js";import{i as _,n as v,r as y,t as b}from"./run-diff-Cksr4Dk5.js";import{c as x,t as S}from"./project-router-BaWVyqc8.js";import{Dt as C,Tt as w,X as T,Y as E,Z as D,_ as O,d as k,f as A,ft as j,g as M,h as N,m as P,nn as F,p as I,qt as L,t as R,u as z,x as B}from"./index-CcfkF2Ey.js";var V=n(t(),1),H=e();function U(){let{groupId:e}=f(),t=m(e),n=u();if((0,V.useEffect)(()=>{e&&n.invalidateQueries({queryKey:r.groups.detail(e)})},[n,e,(o().data??[]).filter(t=>t.groupId===e).map(e=>`${e.id}:${e.status}:${e.archived}`).sort().join(`,`)]),t.isPending)return(0,H.jsx)(E,{});if(t.isError){let e=t.error instanceof p&&t.error.status===404;return(0,H.jsx)(`div`,{"data-route":`compare`,className:`flex min-h-full flex-col`,children:(0,H.jsx)(d,{icon:e?(0,H.jsx)(g,{}):(0,H.jsx)(L,{}),tone:e?`neutral`:`danger`,title:e?`No such variant group`:`Could not load the variants`,subtitle:e?`No runs share this group id. The group may have been deleted, or a winner was already picked and the others removed.`:t.error.message,actions:(0,H.jsx)(a,{asChild:!0,variant:`outline`,children:(0,H.jsx)(S,{to:`/`,children:`Back to tasks`})})})})}return(0,H.jsx)(W,{groupId:e,variants:t.data.runs})}function W({groupId:e,variants:t}){let n=x(),a=u(),[o,d]=(0,V.useState)(null),f=t.every(e=>T.has(e.status)),p=t[0]?j(t[0]):``,m=s({mutationFn:t=>i(e,t),onSuccess:(t,i)=>{a.invalidateQueries({queryKey:r.runs.all}),a.invalidateQueries({queryKey:r.groups.detail(e)}),n(`/tasks/${t.winner?.id??i}`)},onError:e=>c(e.message,{tone:`danger`})});return(0,H.jsxs)(`div`,{"data-route":`compare`,className:`mx-auto flex w-full max-w-6xl flex-col gap-4 px-4 py-5 md:px-6`,children:[(0,H.jsxs)(`header`,{className:`flex flex-col gap-1`,children:[(0,H.jsxs)(`h1`,{className:`flex items-center gap-2 text-xl font-semibold`,children:[(0,H.jsx)(L,{className:`size-5 shrink-0 text-violet`,"aria-hidden":`true`}),(0,H.jsx)(`span`,{className:`min-w-0 truncate`,title:p,children:p})]}),(0,H.jsxs)(`p`,{className:`text-[13px] text-muted-foreground`,children:[t.length,` variants of the same task, each in its own worktree — pick the diff you want to keep. The others are cancelled and archived, their worktrees and branches removed.`]})]}),(0,H.jsx)(`div`,{"data-slot":`compare-columns`,className:h(`grid grid-cols-1 gap-3`,t.length>=3?`md:grid-cols-3`:`md:grid-cols-2`),children:t.map(e=>(0,H.jsx)(G,{variant:e,allTerminal:f,pickPending:m.isPending,onPick:()=>d(e)},e.id))}),(0,H.jsx)(`section`,{"aria-label":`Full diffs`,className:`flex flex-col gap-2`,children:t.map(e=>(0,H.jsx)(K,{variant:e},e.id))}),(0,H.jsx)(z,{open:o!==null,onOpenChange:e=>!e&&d(null),children:(0,H.jsxs)(I,{children:[(0,H.jsxs)(M,{children:[(0,H.jsxs)(O,{children:[`Pick variant `,o?.variant,`?`]}),(0,H.jsxs)(P,{children:[`Variant `,o?.variant,`'s changes go to the review gate. The other`,` `,t.length-1==1?`variant is`:`${t.length-1} variants are`,` `,`cancelled if still open, archived, and their worktrees and branches removed. There is no undo.`]})]}),(0,H.jsxs)(N,{children:[(0,H.jsx)(A,{children:`Keep comparing`}),(0,H.jsxs)(k,{"data-slot":`confirm-pick`,onClick:()=>{o&&m.mutate(o.id),d(null)},children:[(0,H.jsx)(l,{"aria-hidden":`true`}),`Pick variant `,o?.variant]})]})]})})]})}function G({variant:e,allTerminal:t,pickPending:n,onPick:r}){let i=C(e),o=D(e.costUsd);return(0,H.jsxs)(`article`,{"data-slot":`variant-column`,"data-variant":e.variant,className:`flex min-w-0 flex-col gap-3 rounded-lg border border-border bg-card p-3.5 shadow-xs`,children:[(0,H.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,H.jsx)(`span`,{"data-slot":`variant-letter`,"aria-label":`Variant ${e.variant}`,className:`inline-flex size-6 shrink-0 items-center justify-center rounded-full bg-violet/15 font-mono text-xs font-semibold text-violet`,children:e.variant}),(0,H.jsx)(R,{dot:i.tone,pulse:i.pulse,children:i.label}),(0,H.jsxs)(`span`,{className:`ml-auto shrink-0 font-mono text-[11px] text-soft-foreground tabular-nums`,children:[w(e.tokensUsed),o?` · ${o}`:``]})]}),(0,H.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1`,children:[(0,H.jsx)(`span`,{className:`text-[10.5px] font-semibold tracking-[0.04em] text-soft-foreground uppercase`,children:`git diff --stat`}),(0,H.jsx)(`pre`,{"data-slot":`variant-diffstat`,className:`max-h-36 overflow-auto rounded-md bg-muted/60 px-2.5 py-2 font-mono text-[11px] leading-[1.6] whitespace-pre text-muted-foreground`,children:e.diffStat.trimEnd()||`(no changes)`})]}),(0,H.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:[(0,H.jsx)(`span`,{className:`text-[10.5px] font-semibold tracking-[0.04em] text-soft-foreground uppercase`,children:`Progress`}),e.handoffExcerpt?(0,H.jsx)(`div`,{"data-slot":`variant-progress`,className:`max-h-28 min-w-0 overflow-hidden text-[12.5px] text-muted-foreground [mask-image:linear-gradient(to_bottom,black_75%,transparent)]`,children:(0,H.jsx)(B,{children:e.handoffExcerpt})}):(0,H.jsx)(`p`,{"data-slot":`variant-progress`,className:`text-xs text-soft-foreground`,children:`(no progress notes)`})]}),(0,H.jsxs)(a,{"data-slot":`variant-pick`,title:t?`Keep variant ${e.variant}'s changes and archive the others`:`Every variant must finish before you can pick`,disabled:!t||n,onClick:r,children:[(0,H.jsx)(l,{"aria-hidden":`true`}),`Pick this one`]})]})}function K({variant:e}){let[t,n]=(0,V.useState)(!1);return(0,H.jsxs)(v,{open:t,onOpenChange:n,"data-slot":`variant-diff`,"data-variant":e.variant,className:`min-w-0 overflow-hidden rounded-lg border border-border bg-card`,children:[(0,H.jsxs)(_,{className:`flex w-full items-center gap-2 px-3.5 py-2.5 text-left text-[13px] font-medium hover:bg-muted/50`,children:[(0,H.jsx)(F,{className:h(`size-3.5 shrink-0 text-soft-foreground transition-transform`,t&&`rotate-90`),"aria-hidden":`true`}),`Variant `,e.variant,` — full diff`]}),(0,H.jsx)(y,{children:(0,H.jsx)(`div`,{className:`border-t border-border/50 px-3 py-3`,children:(0,H.jsx)(b,{runId:e.id})})})]})}export{U as CompareVariantsRoute};
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import{a as e,s as t,u as n}from"./bundle-mjs-BegPhL5c.js";import{t as r}from"./utils-B8s5qIcK.js";import{C as i,S as a,et as o,nn as s,w as c}from"./index-CcfkF2Ey.js";import{t as l}from"./lib-DPEZDBUN.js";import{n as u,t as d}from"./image-preview-DEhW0TFz.js";var f=n(t(),1),p=44;function m(e){if(e.binary===!0||e.patch===``)return 1;let t=e.patch.split(`
|
|
2
|
-
`),n=t.findIndex(e=>e.startsWith(`@@`));return n===-1?t.length:t.length-n}function h(e){return m(e)*20+p}function g(e){return e.reduce((e,t)=>e+m(t),0)}function _(e,t){let n=new URLSearchParams(e).get(`diff`);return n===`flat`||n===`virtual`?n:t>1500?`virtual`:`flat`}function v(e){return`${e.oldPath??``}→${e.path}`}function y(e){let t=0;for(let n of e.split(`
|
|
3
|
-
`))n.length>t&&(t=n.length);return t}var b=/[A-Za-z0-9_]+|\s+|[^\sA-Za-z0-9_]+/g,x=300,S=.3;function C(e,t){if(e===t)return null;let n=e.match(b)??[],r=t.match(b)??[];if(n.length===0||r.length===0||n.length>x||r.length>x)return null;let i=r.length+1,a=new Uint16Array((n.length+1)*i);for(let e=1;e<=n.length;e++)for(let t=1;t<=r.length;t++)a[e*i+t]=n[e-1]===r[t-1]?(a[(e-1)*i+(t-1)]??0)+1:Math.max(a[(e-1)*i+t]??0,a[e*i+(t-1)]??0);if((a[n.length*i+r.length]??0)/Math.max(n.length,r.length)<S)return null;let o=Array(n.length).fill(!1),s=Array(r.length).fill(!1),c=n.length,l=r.length;for(;c>0&&l>0;)n[c-1]===r[l-1]?(o[c-1]=!0,s[l-1]=!0,c--,l--):(a[(c-1)*i+l]??0)>=(a[c*i+(l-1)]??0)?c--:l--;return{del:w(n,o),add:w(r,s)}}function w(e,t){let n=[];return e.forEach((e,r)=>{let i=!(t[r]??!1),a=n[n.length-1];a&&a.changed===i?a.text+=e:n.push({text:e,changed:i})}),n}function T(e,t,n){if(!t||t.length===0)return e?e.map(e=>({text:e.content,color:e.color,changed:!1})):n===``?[]:[{text:n,changed:!1}];if(!e||e.length===0)return t.map(e=>({text:e.text,changed:e.changed}));let r=[],i=0,a=0,o=0,s=0;for(;i<e.length&&o<t.length;){let n=e[i],c=t[o],l=n.content.length-a,u=c.text.length-s,d=Math.min(l,u);d>0&&(r.push({text:n.content.slice(a,a+d),color:n.color,changed:c.changed}),a+=d,s+=d),n.content.length-a<=0&&(i++,a=0),c.text.length-s<=0&&(o++,s=0)}for(;i<e.length;){let t=e[i],n=t.content.slice(a);n!==``&&r.push({text:n,color:t.color,changed:!1}),i++,a=0}return r}var E=/^@@ -(\d+)(?:,(\d+))? \+(\d+)(?:,(\d+))? @@/,D=`… (patch truncated)`;function O(e){let t=[],n=!1,r=null,i=0,a=0,o=e.split(`
|
|
4
|
-
`);o.at(-1)===``&&o.pop();for(let e of o){let o=E.exec(e);if(o){r={header:e,oldStart:Number(o[1]),oldCount:o[2]===void 0?1:Number(o[2]),newStart:Number(o[3]),newCount:o[4]===void 0?1:Number(o[4]),lines:[]},i=r.oldStart,a=r.newStart,t.push(r);continue}if(e.includes(D)){n=!0,r=null;continue}r&&(e.startsWith(`+`)?r.lines.push({kind:`add`,text:e.slice(1),newLine:a++}):e.startsWith(`-`)?r.lines.push({kind:`del`,text:e.slice(1),oldLine:i++}):e.startsWith(`\\`)||r.lines.push({kind:`context`,text:e.slice(1),oldLine:i++,newLine:a++}))}return{hunks:t,truncated:n}}function k(e,t=!1){let n=[],r=e[0];if(!r)return n;r.newStart>1&&n.push({beforeHunk:0,count:r.newStart-1,oldStart:1,newStart:1});for(let t=1;t<e.length;t++){let r=e[t-1],i=e[t],a=r.oldStart+r.oldCount,o=r.newStart+r.newCount,s=i.newStart-o;s>0&&n.push({beforeHunk:t,count:s,oldStart:a,newStart:o})}if(t){let t=e[e.length-1];n.push({beforeHunk:e.length,oldStart:t.oldStart+t.oldCount,newStart:t.newStart+t.newCount})}return n}function A(e,t){let n=e.count===void 0?t.length:e.newStart+e.count-1,r=e.oldStart-e.newStart,i=[];for(let a=e.newStart;a<=Math.min(n,t.length);a++)i.push({kind:`context`,text:t[a-1]??``,oldLine:a+r,newLine:a});return i}function j(e,t){let n=Array(e.length),r=Array(t.length),i=Math.min(e.length,t.length);for(let a=0;a<i;a++){let i=C(e[a].text,t[a].text);i&&(n[a]=i.del,r[a]=i.add)}return{dels:e,adds:t,delSpans:n,addSpans:r}}function M(e,t,n){let r=0;for(;r<e.lines.length;){let i=e.lines[r];if(i.kind===`del`||i.kind===`add`){let t=[],i=[];for(;r<e.lines.length&&e.lines[r].kind===`del`;)t.push(e.lines[r++]);for(;r<e.lines.length&&e.lines[r].kind===`add`;)i.push(e.lines[r++]);n(j(t,i))}else t(i),r++}}function N(e,t=[],n){let r=new Map(t.map(e=>[e.beforeHunk,e])),i=[],a=e=>{let t=r.get(e);if(!t)return;let a=n?.get(e);if(a)for(let e of a)i.push({type:`line`,cell:{line:e}});else i.push({type:`gap`,gap:t})};return e.forEach((e,t)=>{a(t),i.push({type:`hunk`,hunk:e}),M(e,e=>i.push({type:`line`,cell:{line:e}}),e=>{e.dels.forEach((t,n)=>i.push({type:`line`,cell:{line:t,spans:e.delSpans[n]}})),e.adds.forEach((t,n)=>i.push({type:`line`,cell:{line:t,spans:e.addSpans[n]}}))})}),a(e.length),i}function P(e,t=[],n){let r=new Map(t.map(e=>[e.beforeHunk,e])),i=[],a=e=>{let t=r.get(e);if(!t)return;let a=n?.get(e);if(a)for(let e of a)i.push({type:`pair`,left:{line:e},right:{line:e}});else i.push({type:`gap`,gap:t})};return e.forEach((e,t)=>{a(t),i.push({type:`hunk`,hunk:e}),M(e,e=>i.push({type:`pair`,left:{line:e},right:{line:e}}),e=>{let t=Math.max(e.dels.length,e.adds.length);for(let n=0;n<t;n++){let t=e.dels[n],r=e.adds[n];i.push({type:`pair`,...t?{left:{line:t,spans:e.delSpans[n]}}:{},...r?{right:{line:r,spans:e.addSpans[n]}}:{}})}})}),a(e.length),i}var F=e(),I=1500,L=new Map;function R(e,t){if(e){for(let n of e.querySelectorAll(`[data-slot="diff-file"]`))if(n.dataset.path===t)return n}}function z({files:e,mode:t=`unified`,wrap:n=!1,loadFileText:i,imageSrc:a,onOpenInApp:s,viewRef:c,className:l}){let u=(0,f.useMemo)(()=>({adds:e.reduce((e,t)=>e+t.adds,0),dels:e.reduce((e,t)=>e+t.dels,0),files:e.length}),[e]),[d,p]=(0,f.useState)(()=>new Set),[m,y]=(0,f.useState)(()=>new Map),b=(0,f.useCallback)(e=>{p(t=>{let n=new Set(t);return n.delete(e)||n.add(e),n})},[]),x=(0,f.useCallback)(async(e,t)=>{if(!i)return;let n=await i(e.path);if(n===null)return;let r=A(t,n.split(`
|
|
5
|
-
`));y(n=>{let i=v(e);return new Map(n).set(i,new Map(n.get(i)??L).set(t.beforeHunk,r))})},[i]),S=(0,f.useMemo)(()=>g(e),[e]),[C]=(0,f.useState)(()=>typeof window>`u`?``:window.location.search),w=_(C,S),T=(0,f.useRef)(null),E=(0,f.useRef)(null),D=(0,f.useRef)(null);(0,f.useImperativeHandle)(c,()=>({scrollToPath:t=>{let n=e.findIndex(e=>e.path===t);if(n===-1)return;let r=E.current;r?r.scrollToIndex(n,{align:`start`}):R(D.current,t)?.scrollIntoView({block:`start`,behavior:`smooth`})}}),[e]);let O=e=>{let r=v(e);return(0,F.jsx)(H,{file:e,open:!d.has(r),onToggle:()=>b(r),expanded:m.get(r)??L,onExpand:t=>void x(e,t),mode:t,wrap:n,canExpand:i!==void 0,imageSrc:a,onOpenInApp:s})};return(0,F.jsxs)(`div`,{ref:e=>{D.current=e,e&&(T.current=e.closest(`[data-slot="main"]`))},"data-slot":`diff`,"data-mode":t,className:r(`flex min-w-0 flex-col`,l),children:[(0,F.jsxs)(`p`,{"data-slot":`diff-totals`,className:`flex items-center gap-2 px-1 pb-3 text-xs text-muted-foreground`,children:[(0,F.jsxs)(`span`,{children:[u.files,` `,u.files===1?`file`:`files`,` changed`]}),(0,F.jsx)(o,{stat:u})]}),w===`virtual`?(0,F.jsx)(B,{files:e,handleRef:E,scrollElRef:T,card:O}):(0,F.jsx)(`div`,{"data-slot":`diff-files`,"data-virtualized":`false`,children:e.map(e=>(0,F.jsx)(`div`,{"data-slot":`diff-file-slot`,style:{containIntrinsicBlockSize:`auto ${h(e)}px`},className:`pb-3 [content-visibility:auto]`,children:O(e)},v(e)))})]})}function B({files:e,handleRef:t,scrollElRef:n,card:r}){let i=(0,f.useRef)(null),[a,o]=(0,f.useState)(0);return(0,f.useLayoutEffect)(()=>{let e=()=>{let e=i.current,t=n.current;!e||!t||o(Math.max(0,Math.round(e.getBoundingClientRect().top-t.getBoundingClientRect().top+t.scrollTop)))};return e(),window.addEventListener(`resize`,e),()=>window.removeEventListener(`resize`,e)},[n]),(0,F.jsx)(`div`,{ref:e=>{i.current=e,e&&(n.current=e.closest(`[data-slot="main"]`))},"data-slot":`diff-files`,"data-virtualized":`true`,children:(0,F.jsx)(l,{ref:t,scrollRef:n,startMargin:a,children:e.map(e=>(0,F.jsx)(`div`,{"data-slot":`diff-file-slot`,className:`pb-3`,children:r(e)},v(e)))})})}var V={added:`added`,deleted:`deleted`,renamed:`renamed`,copied:`copied`};function H({file:e,open:t,onToggle:n,expanded:i,onExpand:a,mode:c,wrap:l,canExpand:u,imageSrc:d,onOpenInApp:f}){let p=V[e.status];return(0,F.jsxs)(`section`,{"data-slot":`diff-file`,"data-path":e.path,className:`min-w-0 overflow-clip rounded-md border border-border bg-card`,children:[(0,F.jsx)(`header`,{className:`sticky top-[var(--diff-sticky-top,0px)] z-10 rounded-t-md border-b border-border/50 bg-card`,children:(0,F.jsxs)(`button`,{type:`button`,"data-slot":`diff-file-header`,"aria-expanded":t,onClick:n,className:`flex w-full items-center gap-2 px-3 py-2 text-left hover:bg-muted/50`,children:[(0,F.jsx)(s,{className:r(`size-3.5 shrink-0 text-soft-foreground transition-transform`,t&&`rotate-90`),"aria-hidden":`true`}),(0,F.jsx)(`span`,{"data-slot":`diff-file-path`,className:`min-w-0 truncate font-mono text-xs font-medium`,children:e.oldPath?(0,F.jsxs)(F.Fragment,{children:[(0,F.jsxs)(`span`,{className:`text-soft-foreground`,children:[e.oldPath,` → `]}),e.path]}):e.path}),p?(0,F.jsx)(`span`,{className:`shrink-0 rounded-sm bg-muted px-1.5 py-px text-[10px] font-medium text-muted-foreground`,children:p}):null,e.image?(0,F.jsx)(`span`,{className:`shrink-0 rounded-sm bg-muted px-1.5 py-px text-[10px] font-medium text-muted-foreground`,children:`image`}):e.binary?(0,F.jsx)(`span`,{className:`shrink-0 rounded-sm bg-muted px-1.5 py-px text-[10px] font-medium text-muted-foreground`,children:`binary`}):null,(0,F.jsx)(`span`,{className:`ml-auto shrink-0`,children:(0,F.jsx)(o,{stat:{adds:e.adds,dels:e.dels,files:1},className:`text-[11px]`})})]})}),t?(0,F.jsx)(U,{file:e,expanded:i,onExpand:a,mode:c,wrap:l,canExpand:u,imageSrc:d,onOpenInApp:f}):null]})}function U({file:e,expanded:t,onExpand:n,mode:i,wrap:a,canExpand:o,imageSrc:s,onOpenInApp:c}){let l=(0,f.useMemo)(()=>O(e.patch),[e.patch]),p=o&&e.status!==`added`&&e.status!==`deleted`,m=(0,f.useMemo)(()=>k(l.hunks,p),[l.hunks,p]),h=(0,f.useMemo)(()=>{let e=[];l.hunks.forEach((n,r)=>{let i=t.get(r);i&&e.push(...i),e.push(...n.lines)});let n=t.get(l.hunks.length);return n&&e.push(...n),e},[l.hunks,t]),g=(0,f.useMemo)(()=>new Map(h.map((e,t)=>[e,t])),[h]),_=W(e.path,h),v=(0,f.useMemo)(()=>i===`unified`?N(l.hunks,m,t):null,[i,l.hunks,m,t]),b=(0,f.useMemo)(()=>i===`split`?P(l.hunks,m,t):null,[i,l.hunks,m,t]),x=(0,f.useMemo)(()=>i===`unified`&&!a?{minInlineSize:`calc(${y(e.patch)}ch + 7rem)`}:void 0,[i,a,e.patch]);if(u(e))return(0,F.jsx)(d,{file:e,imageSrc:s,onOpenInApp:c});if(e.binary)return(0,F.jsx)(G,{children:`Binary file — no text diff.`});if(l.hunks.length===0)return(0,F.jsx)(G,{children:l.truncated?`Patch truncated by the server.`:`No content changes (metadata only).`});let S=e=>{if(!_)return null;let t=g.get(e);return t===void 0?null:_[t]??null};return(0,F.jsxs)(`div`,{"data-slot":`diff-file-body`,"data-wrap":a||void 0,className:r(`py-1 font-mono text-xs leading-[1.7]`,!a&&`overflow-x-auto`),children:[(0,F.jsxs)(`div`,{"data-slot":`diff-rows`,style:x,className:`[&>*]:[contain-intrinsic-block-size:auto_20px] [&>*]:[content-visibility:auto]`,children:[v?v.map((e,t)=>(0,F.jsx)(Q,{row:e,wrap:a,tokensFor:S,onExpand:p?n:void 0},t)):null,b?b.map((e,t)=>(0,F.jsx)(ee,{row:e,wrap:a,tokensFor:S,onExpand:p?n:void 0},t)):null]}),l.truncated?(0,F.jsx)(G,{children:`Patch truncated by the server — counts above remain exact.`}):null]})}function W(e,t){let n=(0,f.useMemo)(()=>t.length>I?null:t.map(e=>e.text).join(`
|
|
6
|
-
`),[t]),r=(0,f.useMemo)(()=>c(e),[e]),[o,s]=(0,f.useState)(null);return(0,f.useEffect)(()=>{if(n===null||r===null)return;let e=!1;return a(n,r).then(t=>{e||s({text:n,tokens:t.tokens})}),()=>{e=!0}},[n,r]),n===null||r===null?null:o?.text===n?o.tokens:i(n,r)?.tokens??null}function G({children:e}){return(0,F.jsx)(`p`,{className:`px-4 py-2.5 text-xs text-soft-foreground`,children:e})}var K={add:`bg-diff-add`,del:`bg-diff-del`,context:void 0},q={add:`+`,del:`−`,context:` `};function J({hunk:e}){return(0,F.jsx)(`div`,{"data-slot":`diff-hunk`,className:`bg-muted/40 px-4 py-0.5 whitespace-pre text-soft-foreground`,children:e.header})}function Y({gap:e,onExpand:t}){let n=e.count===void 0?`⋯ unchanged lines to end of file`:`⋯ ${e.count} unchanged ${e.count===1?`line`:`lines`}`;return t?(0,F.jsxs)(`button`,{type:`button`,"data-slot":`diff-gap`,onClick:()=>t(e),className:`block w-full border-y border-border/40 bg-muted/20 px-4 py-0.5 text-left text-[11px] text-soft-foreground hover:bg-muted/50 hover:text-foreground`,children:[n,` — expand`]}):(0,F.jsx)(`div`,{"data-slot":`diff-gap`,className:`border-y border-border/40 bg-muted/20 px-4 py-0.5 text-[11px] text-soft-foreground`,children:n})}function X({cell:e,tokens:t,wrap:n}){let i=T(t,e.spans,e.line.text),a=e.line.kind===`add`?`bg-diff-add-strong`:`bg-diff-del-strong`;return(0,F.jsxs)(`span`,{className:r(`min-w-0 flex-1 pr-4`,n?`break-words whitespace-pre-wrap`:`whitespace-pre`),children:[i.map((t,n)=>(0,F.jsx)(`span`,{"data-word":t.changed?e.line.kind:void 0,style:t.color===void 0?void 0:{color:t.color},className:t.changed?r(`rounded-[2px]`,a):void 0,children:t.text},n)),e.line.text===``?` `:``]})}function Z({value:e}){return(0,F.jsx)(`span`,{className:`w-10 shrink-0 pr-2 text-right text-soft-foreground/70 tabular-nums select-none`,children:e??``})}function Q({row:e,wrap:t,tokensFor:n,onExpand:i}){if(e.type===`hunk`)return(0,F.jsx)(J,{hunk:e.hunk});if(e.type===`gap`)return(0,F.jsx)(Y,{gap:e.gap,onExpand:i});let{line:a}=e.cell;return(0,F.jsxs)(`div`,{"data-slot":`diff-line`,"data-line":a.kind,className:r(`flex`,K[a.kind]),children:[(0,F.jsx)(Z,{value:a.oldLine}),(0,F.jsx)(Z,{value:a.newLine}),(0,F.jsx)(`span`,{className:`w-4 shrink-0 text-soft-foreground select-none`,children:q[a.kind]}),(0,F.jsx)(X,{cell:e.cell,tokens:n(a),wrap:t})]})}function ee({row:e,wrap:t,tokensFor:n,onExpand:r}){return e.type===`hunk`?(0,F.jsx)(J,{hunk:e.hunk}):e.type===`gap`?(0,F.jsx)(Y,{gap:e.gap,onExpand:r}):(0,F.jsxs)(`div`,{"data-slot":`diff-pair`,className:`grid grid-cols-2`,children:[(0,F.jsx)($,{cell:e.left,side:`old`,tokensFor:n,wrap:t}),(0,F.jsx)($,{cell:e.right,side:`new`,tokensFor:n,wrap:t})]})}function $({cell:e,side:t,tokensFor:n,wrap:i}){if(!e)return(0,F.jsx)(`div`,{"data-slot":`diff-cell-empty`,className:r(`bg-muted/20`,t===`new`&&`border-l border-border/40`)});let{line:a}=e;return(0,F.jsxs)(`div`,{"data-slot":`diff-cell`,"data-line":a.kind,className:r(`flex min-w-0`,K[a.kind],t===`new`&&`border-l border-border/40`),children:[(0,F.jsx)(Z,{value:t===`old`?a.oldLine:a.newLine}),(0,F.jsx)(`span`,{className:`w-4 shrink-0 text-soft-foreground select-none`,children:q[a.kind]}),(0,F.jsx)(X,{cell:e,tokens:n(a),wrap:i})]})}export{z as DiffView};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e,s as t,u as n}from"./bundle-mjs-BegPhL5c.js";import{a as r}from"./centered-state-CLmJ67EV.js";import{n as i,r as a,t as o}from"./utils-B8s5qIcK.js";import{t as s}from"./ellipsis-vertical-CNnSLn5a.js";import{n as c}from"./tab-link-vtgjgL_M.js";import{t as l}from"./file-D4GBh1ao.js";import{a as u,i as d,r as f}from"./use-desktop-4e8LLqMG.js";import{t as p}from"./git-pull-request-DnR8Xh4_.js";import{t as m}from"./square-terminal-Ckjjn0vb.js";import{t as h}from"./upload-CDdyPPo_.js";import{$t as g,ct as _,dt as v,et as y,nn as b,ot as x,st as S}from"./index-CcfkF2Ey.js";var C=a(`file-diff`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M9 10h6`,key:`9gxzsh`}],[`path`,{d:`M12 13V7`,key:`h0r20n`}],[`path`,{d:`M9 17h6`,key:`r8uit2`}]]),w=n(t(),1),T=e();function E({root:e,selected:t,onSelect:n}){return(0,T.jsx)(`nav`,{"data-slot":`changes-tree`,"aria-label":`Changed files`,className:`min-w-0 text-[13px]`,children:(0,T.jsxs)(`ul`,{className:`flex flex-col gap-px`,children:[e.dirs.map(e=>(0,T.jsx)(O,{dir:e,depth:0,selected:t,onSelect:n},e.path)),e.files.map(e=>(0,T.jsx)(A,{file:e,depth:0,selected:t,onSelect:n},e.path))]})})}function D({adds:e,dels:t}){return(0,T.jsxs)(`span`,{className:`ml-auto shrink-0 pl-2 font-mono text-[11px] font-medium tabular-nums`,children:[e>0?(0,T.jsxs)(`span`,{className:`text-success`,children:[`+`,e]}):null,e>0&&t>0?` `:null,t>0?(0,T.jsxs)(`span`,{className:`text-danger`,children:[`−`,t]}):null]})}function O({dir:e,depth:t,selected:n,onSelect:r}){let[i,a]=(0,w.useState)(!0);return(0,T.jsxs)(`li`,{children:[(0,T.jsxs)(`button`,{type:`button`,"data-slot":`tree-dir`,"data-path":e.path,"data-state":i?`open`:`closed`,"aria-expanded":i,onClick:()=>a(e=>!e),className:`flex w-full min-w-0 items-center gap-1.5 rounded-sm px-1.5 py-1 text-left text-muted-foreground hover:bg-muted hover:text-foreground`,style:{paddingLeft:`${6+t*14}px`},children:[(0,T.jsx)(b,{"aria-hidden":`true`,className:o(`size-3.5 shrink-0 transition-transform`,i&&`rotate-90`)}),(0,T.jsx)(g,{"aria-hidden":`true`,className:`size-3.5 shrink-0`}),(0,T.jsx)(`span`,{className:`min-w-0 truncate font-medium`,children:e.name}),(0,T.jsx)(D,{adds:e.adds,dels:e.dels})]}),i?(0,T.jsxs)(`ul`,{className:`flex flex-col gap-px`,children:[e.dirs.map(e=>(0,T.jsx)(O,{dir:e,depth:t+1,selected:n,onSelect:r},e.path)),e.files.map(e=>(0,T.jsx)(A,{file:e,depth:t+1,selected:n,onSelect:r},e.path))]}):null]})}var k={added:`text-success`,deleted:`text-danger`};function A({file:e,depth:t,selected:n,onSelect:r}){let i=n===e.path;return(0,T.jsx)(`li`,{children:(0,T.jsxs)(`button`,{type:`button`,"data-slot":`tree-file`,"data-path":e.path,"aria-current":i?`true`:void 0,onClick:()=>r(e.path),className:o(`flex w-full min-w-0 items-center gap-1.5 rounded-sm px-1.5 py-1 text-left hover:bg-muted`,i?`bg-muted font-medium text-foreground`:`text-muted-foreground hover:text-foreground`),style:{paddingLeft:`${24+t*14}px`},children:[(0,T.jsx)(l,{"aria-hidden":`true`,className:o(`size-3.5 shrink-0`,k[e.status])}),(0,T.jsx)(`span`,{className:`min-w-0 truncate`,children:e.name}),(0,T.jsx)(D,{adds:e.adds,dels:e.dels})]})})}function j(e,t){return{kind:`dir`,name:e,path:t,dirs:[],files:[],adds:0,dels:0,fileCount:0}}function M(e){let t=e;for(;t.files.length===0&&t.dirs.length===1;){let e=t.dirs[0];t={...e,name:`${t.name}/${e.name}`}}return{...t,dirs:t.dirs.map(M)}}var N=(e,t)=>e.name.localeCompare(t.name);function P(e){let t=j(``,``),n=new Map([[``,t]]),r=e=>{let t=n.get(e);if(t)return t;let i=e.lastIndexOf(`/`),a=r(i===-1?``:e.slice(0,i)),o=j(i===-1?e:e.slice(i+1),e);return a.dirs.push(o),n.set(e,o),o};for(let t of e){let e=t.path.lastIndexOf(`/`);r(e===-1?``:t.path.slice(0,e)).files.push({kind:`file`,name:e===-1?t.path:t.path.slice(e+1),path:t.path,status:t.status,adds:t.adds,dels:t.dels,binary:t.binary})}let i=e=>{e.dirs.forEach(i),e.adds=e.files.reduce((e,t)=>e+t.adds,0)+e.dirs.reduce((e,t)=>e+t.adds,0),e.dels=e.files.reduce((e,t)=>e+t.dels,0)+e.dirs.reduce((e,t)=>e+t.dels,0),e.fileCount=e.files.length+e.dirs.reduce((e,t)=>e+t.fileCount,0),e.dirs.sort(N),e.files.sort(N)};return i(t),{...t,dirs:t.dirs.map(M)}}function F({bar:e,branch:t,stat:n,mode:i,wrap:a,onModeChange:o,onWrapChange:c,onAction:l}){return(0,T.jsxs)(`div`,{"data-slot":`git-toolbar`,className:`flex flex-wrap items-center gap-x-2.5 gap-y-1.5 border-b border-border px-4 py-2 md:px-6`,children:[t?(0,T.jsx)(f,{branch:t}):null,n?(0,T.jsx)(R,{stat:n}):null,(0,T.jsxs)(`span`,{className:`ml-auto flex items-center gap-1`,children:[(0,T.jsx)(`span`,{className:`hidden items-center gap-1 md:flex`,children:(0,T.jsx)(d,{mode:i,wrap:a,onModeChange:o,onWrapChange:c})}),e.secondary.map(e=>(0,T.jsx)(L,{action:e,variant:`outline`,onAction:l},e.id)),(0,T.jsx)(L,{action:e.primary,variant:`primary`,onAction:l}),e.menu.length>0?(0,T.jsxs)(x,{children:[(0,T.jsx)(v,{asChild:!0,children:(0,T.jsx)(r,{variant:`ghost`,size:`icon-sm`,"aria-label":`More git actions`,children:(0,T.jsx)(s,{"aria-hidden":`true`})})}),(0,T.jsx)(S,{align:`end`,"data-slot":`git-toolbar-menu`,children:e.menu.map(e=>(0,T.jsxs)(_,{disabled:!e.enabled,title:e.reason,onSelect:()=>l(e.id),children:[I[e.id],e.label]},e.id))})]}):null]})]})}var I={commit:(0,T.jsx)(u,{"aria-hidden":`true`}),push:(0,T.jsx)(h,{"aria-hidden":`true`}),"create-pr":(0,T.jsx)(p,{"aria-hidden":`true`}),"view-pr":(0,T.jsx)(c,{"aria-hidden":`true`}),"open-terminal":(0,T.jsx)(m,{"aria-hidden":`true`})};function L({action:e,variant:t,onAction:n}){return e.id===`view-pr`?i(e.href)?(0,T.jsx)(r,{asChild:!0,variant:t,size:`sm`,"data-action":e.id,children:(0,T.jsxs)(`a`,{href:e.href,target:`_blank`,rel:`noopener noreferrer`,children:[I[e.id],e.label]})}):(0,T.jsxs)(r,{variant:t,size:`sm`,"data-action":e.id,disabled:!0,title:`View PR unavailable — the recorded PR link is not an http(s) URL`,children:[I[e.id],e.label]}):(0,T.jsxs)(r,{variant:t,size:`sm`,"data-action":e.id,disabled:!e.enabled,title:e.enabled?void 0:e.reason,onClick:()=>n(e.id),children:[I[e.id],e.label]})}function R({stat:e}){return(0,T.jsx)(`span`,{"data-slot":`changes-stat`,children:(0,T.jsx)(y,{stat:{adds:z(e.adds),dels:z(e.dels),files:e.files}})})}function z(e){let[t,n]=(0,w.useState)(e),r=(0,w.useRef)(e);return(0,w.useEffect)(()=>{let t=r.current;if(t===e)return;if(typeof window.matchMedia==`function`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches||typeof requestAnimationFrame!=`function`){r.current=e,n(e);return}let i=performance.now(),a=0,o=s=>{let c=Math.min(1,(s-i)/350),l=1-(1-c)**3;n(Math.round(t+(e-t)*l)),c<1?a=requestAnimationFrame(o):r.current=e};return a=requestAnimationFrame(o),()=>{cancelAnimationFrame(a),r.current=e,n(e)}},[e]),t}export{C as a,E as i,F as n,P as r,R as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e,s as t,u as n}from"./bundle-mjs-BegPhL5c.js";import{A as r,Et as i,Gt as a,L as o,Mt as s,Nt as c,R as l,a as u,bn as d,fn as f,ft as p,i as m,k as h,mn as ee,mt as te,t as g,un as ne,ut as _}from"./centered-state-CLmJ67EV.js";import{n as v,r as y,t as b}from"./utils-B8s5qIcK.js";import{t as x}from"./arrow-left-CnSdp92h.js";import{n as S,t as C}from"./tab-link-vtgjgL_M.js";import{t as w}from"./git-pull-request-DnR8Xh4_.js";import{t as T}from"./refresh-cw-BT8E96Tm.js";import{t as re}from"./triangle-alert-Uy8rokUh.js";import{n as E,t as ie}from"./textarea-Bj_LCreg.js";import{r as D,t as O}from"./project-router-BaWVyqc8.js";import{A as k,At as A,Ct as j,D as ae,E as oe,Et as M,F as N,Ft as P,Gt as F,H as I,J as se,Kt as ce,L as le,M as L,Mt as R,N as z,Nt as B,O as V,Ot as H,P as U,R as W,St as ue,Ut as G,Wt as de,Yt as K,_t as q,bt as fe,en as pe,ht as me,j as he,jt as J,k as ge,kt as Y,rn as _e,x as ve,xt as ye,y as be,yt as xe,z as Se}from"./index-CcfkF2Ey.js";var Ce=y(`circle-dot`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}]]),we=y(`message-square`,[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}]]),Te=y(`tag`,[[`path`,{d:`M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z`,key:`vktsd0`}],[`circle`,{cx:`7.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`kqv944`}]]),X=n(t(),1),Z=e();function Q({className:e,...t}){return(0,Z.jsx)(`div`,{"data-slot":`skeleton`,className:b(`animate-pulse rounded-md bg-accent`,e),...t})}function $(e){return`${e.kind===`pr`?`Address GitHub pull request`:`Fix GitHub issue`} #${e.number}: ${e.title}\n\n${e.url}`}function Ee(e,t=[]){let n=$(e);return e.body?.trim()&&(n+=`\n\n---\n\n${e.body.trim()}`),t.length&&(n+=De(t)),n}function De(e){return`\n\nUse these skills where relevant: ${e.join(`, `)}.`}function Oe(e,t){return e.replace(/\{\{\s*number\s*\}\}/gi,()=>`#${t.number}`).replace(/\{\{\s*title\s*\}\}/gi,()=>t.title).replace(/\{\{\s*url\s*\}\}/gi,()=>t.url)}function ke(e,t){if(e.includes(t.url))return!0;let n=t.kind===`pr`?String.raw`(?:pull\s+request|pr)`:String.raw`issue`;return new RegExp(String.raw`\b${n}\s*#?\s*${t.number}\b`,`i`).test(e)}function Ae(e,t,n){let r=(n??``).trim();if(!r)return Ee(e,t);let i=$(e),a=r.startsWith(i)?i+Oe(r.slice(i.length),e):Oe(r,e),o=ke(a,e)?a:`${i}\n\n${a}`;return t.length?o+De(t):o}function je(e){let t=[];for(let n of e.slice(0,8)){let e=new Set(t.map(e=>e.id)),r=n;for(let t=2;e.has(r);t++)r=`${n}-${t}`;t.push({id:r,name:n,skill:n,prompt:`{{task}}`})}return t}function Me(e,t,n,r,i={}){return t?{...i,workflow:t,task:Ae(e,n,r)}:n.length?{...i,steps:je(n),task:Ae(e,[],r)}:{...i,workflow:`quick-task`,task:Ae(e,[],r)}}function Ne(e){let t=new Set;for(let n of e)for(let e of n.labels)t.add(e);return[...t].sort((e,t)=>e.toLowerCase().localeCompare(t.toLowerCase()))}function Pe(e,t={}){let n=(t.query??``).trim().toLowerCase(),r=t.labels??[],i=n.replace(/^#/,``),a=i!==``&&/^\d+$/.test(i);return e.filter(e=>r.length>0&&!r.every(t=>e.labels.includes(t))?!1:n===``?!0:a?String(e.number).includes(i):`#${e.number} ${e.title} ${e.author} ${e.body}`.toLowerCase().includes(n))}function Fe(e){if(!e||!/^[0-9a-fA-F]{6}$/.test(e))return{borderColor:`var(--border)`,color:`var(--muted-foreground)`};let t=`#${e}`;return{backgroundColor:`${t}22`,borderColor:`${t}66`,color:`color-mix(in srgb, ${t} 50%, var(--foreground))`}}var Ie={workflow:null,skills:[]},Le=`cez-followup-selection`;function Re(e){let t=e&&typeof e==`object`?e:{};return{workflow:typeof t.workflow==`string`?t.workflow:null,skills:Array.isArray(t.skills)?t.skills.filter(e=>typeof e==`string`):[]}}function ze(){try{let e=localStorage.getItem(Le);return e?Re(JSON.parse(e)):{...Ie}}catch{return{...Ie}}}function Be(e){try{localStorage.setItem(Le,JSON.stringify(e))}catch{}}var Ve=`cez-followup-prompt:`;function He(e){try{return localStorage.getItem(Ve+e)??``}catch{return``}}function Ue(e,t){try{t===``?localStorage.removeItem(Ve+e):localStorage.setItem(Ve+e,t)}catch{}}function We({item:e,workflows:t,skills:n,workflow:o,onWorkflowChange:s,selectedSkills:c,onSkillsChange:l,engine:d,onEngineChange:te,queuedRunId:g,onQueued:ne}){let _=ee(),v=p(),y=c.filter(e=>n.some(t=>t.name===e)),[b]=(0,X.useState)(()=>$(e)),[x,S]=(0,X.useState)(()=>He(e.url)||b),C=Se(d),w=(0,X.useRef)(null);(0,X.useEffect)(()=>{Ue(e.url,x===b?``:x)},[e.url,x,b]);let T=(0,X.useMemo)(()=>k(v.data?.promptTemplates),[v.data?.promptTemplates]),re=e=>{let t=w.current,n=x===b?x.length:t?.selectionStart??x.length,r=ge(x,n,e);S(r.text),requestAnimationFrame(()=>{w.current?.focus(),w.current?.setSelectionRange(r.caret,r.caret)})},D=V(T,y),A=(0,X.useRef)(x);A.current=x;let j=(0,X.useRef)(``);(0,X.useEffect)(()=>{let e=he(A.current,j.current,D,b);j.current=e.applied,e.text!==A.current&&S(e.text)},[D,b]);let M=f({mutationFn:()=>i(Me(e,o,y,x,W(C))),onSuccess:t=>{let n=`runs`in t?t.runs[0]:t;n&&ne(e.url,n.id),y.length>0&&v.data!==void 0&&a({skillUsage:y.reduce((e,t)=>me(e,t),v.data.skillUsage)}).then(()=>_.invalidateQueries({queryKey:r.uiState})).catch(()=>{}),Ue(e.url,``),S(b),j.current=``,_.invalidateQueries({queryKey:r.runs.all})},onError:e=>m(e.message,{tone:`danger`})}),N=e=>{oe({key:e.key,shiftKey:e.shiftKey,metaKey:e.metaKey,ctrlKey:e.ctrlKey,altKey:e.altKey,repeat:e.repeat,isComposing:e.nativeEvent.isComposing})&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),M.isPending||M.mutate())},P=e=>l(c.includes(e)?c.filter(t=>t!==e):[...c,e]);return(0,Z.jsxs)(`section`,{"data-slot":`gh-hand`,className:`mt-7 rounded-lg border border-border bg-card p-4`,children:[(0,Z.jsxs)(`h3`,{className:`flex items-center gap-1.5 text-[11px] font-semibold tracking-[.04em] text-soft-foreground uppercase`,children:[(0,Z.jsx)(G,{"aria-hidden":`true`,className:`size-3.5 text-violet`}),`Hand this to the agent`]}),(0,Z.jsxs)(`div`,{className:`mt-3 flex flex-wrap items-center gap-2`,children:[(0,Z.jsx)(Ge,{workflows:t,value:o,onChange:s}),(0,Z.jsx)(Ke,{skills:n,skillUsage:v.data?.skillUsage,selected:y,onToggle:P}),(0,Z.jsx)(le,{pick:d,onChange:te,disabled:M.isPending}),(0,Z.jsx)(L,{templates:T,onInsert:re})]}),y.length>0?(0,Z.jsx)(`div`,{"data-slot":`gh-skill-chips`,className:`mt-2.5 flex flex-wrap gap-1.5`,children:y.map(e=>(0,Z.jsxs)(`button`,{type:`button`,"data-slot":`gh-skill-chip`,"data-skill":e,onClick:()=>P(e),title:`Remove this skill`,className:`inline-flex items-center gap-1 rounded-full border border-border bg-muted px-2 py-px font-mono text-[11px] font-medium text-foreground transition-colors hover:bg-danger/10 hover:text-danger`,children:[e,(0,Z.jsx)(E,{"aria-hidden":`true`,className:`size-3`})]},e))}):null,(0,Z.jsx)(ie,{ref:w,"data-slot":`gh-custom-prompt`,"aria-label":`Custom prompt`,"aria-keyshortcuts":`Control+Enter Meta+Enter`,value:x,onChange:e=>S(e.target.value),onKeyDown:N,placeholder:`Instructions for the agent… (#${e.number} and its link are always sent)`,className:`mt-3 min-h-20 text-[13px]`}),(0,Z.jsxs)(`div`,{className:`mt-4 flex flex-wrap items-center gap-2.5`,children:[(0,Z.jsxs)(u,{variant:`contrast`,"data-action":`gh-run`,disabled:M.isPending,onClick:()=>M.mutate(),children:[(0,Z.jsx)(K,{"aria-hidden":`true`,className:`size-3.5`}),`Run agent on this `,e.kind===`pr`?`PR`:`issue`]}),(0,Z.jsx)(`kbd`,{"aria-hidden":`true`,className:`rounded-[5px] border border-b-2 border-border bg-card px-[5px] py-px font-mono text-[10.5px] font-medium text-muted-foreground`,children:ae()}),g?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(`span`,{"data-slot":`gh-queued`,className:`flex items-center gap-1 text-xs font-medium text-success`,children:[(0,Z.jsx)(h,{"aria-hidden":`true`,className:`size-3.5`}),`queued`]}),(0,Z.jsx)(O,{to:`/tasks/${g}`,"data-slot":`gh-view-run`,className:`text-xs font-semibold text-violet hover:underline`,children:`View task →`})]}):null]})]})}function Ge({workflows:e,value:t,onChange:n}){let[r,i]=(0,X.useState)(!1),[a,o]=(0,X.useState)(``),s=(0,X.useRef)(null),c=ue(e,a);return(0,Z.jsxs)(z,{open:r,onOpenChange:e=>{i(e),e||o(``)},children:[(0,Z.jsx)(N,{asChild:!0,children:(0,Z.jsxs)(`button`,{type:`button`,"data-slot":`gh-workflow-trigger`,"aria-label":`Choose a workflow`,className:b(I,t&&`border-foreground/60 font-mono text-[11.5px] font-semibold text-foreground`),children:[(0,Z.jsx)(de,{"aria-hidden":`true`,className:`size-3 shrink-0 text-violet`}),(0,Z.jsx)(`span`,{className:`max-w-44 truncate`,children:t??`workflow`}),(0,Z.jsx)(_e,{"aria-hidden":`true`,className:`size-2.5 shrink-0 text-soft-foreground`})]})}),(0,Z.jsx)(U,{align:`start`,sideOffset:8,className:`w-[320px] max-w-[calc(100vw-2rem)] p-0`,children:(0,Z.jsxs)(H,{shouldFilter:!1,children:[(0,Z.jsx)(J,{placeholder:`search workflows…`,value:a,onValueChange:o,onInput:()=>s.current?.scrollTo(0,0)}),(0,Z.jsxs)(B,{ref:s,"data-slot":`gh-workflow-menu`,className:`max-h-[min(16rem,calc(var(--radix-popover-content-available-height)-3rem))]`,children:[c.length===0?(0,Z.jsx)(Y,{children:`Nothing matches.`}):null,(0,Z.jsx)(A,{children:c.map(e=>{let r=t===e.name;return(0,Z.jsxs)(R,{value:`workflow ${e.name}`,keywords:j(e.name,e.description),"data-slot":`gh-workflow-option`,"data-workflow":e.name,onSelect:()=>{n(r?null:e.name),i(!1)},children:[(0,Z.jsx)(`span`,{className:`shrink-0 font-mono text-xs`,children:e.name}),e.description?(0,Z.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs text-soft-foreground`,children:e.description}):null,r?(0,Z.jsx)(h,{"aria-hidden":`true`,className:`ml-auto size-3.5 shrink-0 text-primary`}):null]},e.name)})})]})]})})]})}function Ke({skills:e,skillUsage:t,selected:n,onToggle:r}){let[i,a]=(0,X.useState)(!1),[o,s]=(0,X.useState)(``),[c,l]=(0,X.useState)(null),u=(0,X.useRef)(null),{mostUsed:d,project:f,global:p}=fe(ye(e,o,t),t),m=(e,t)=>{let i=n.includes(e.name);return(0,Z.jsxs)(R,{value:`skill ${e.name} ${e.path}`,keywords:j(e.name,e.description),"data-slot":`gh-skill-option`,"data-skill":e.name,"data-selected":i?`true`:void 0,onSelect:()=>r(e.name),children:[(0,Z.jsx)(`span`,{className:b(`shrink-0 font-mono text-xs`,t&&`font-semibold`),children:e.name}),e.description?(0,Z.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs text-soft-foreground`,children:e.description}):null,(0,Z.jsx)(`button`,{type:`button`,"data-slot":`gh-skill-view`,"aria-label":`View skill ${e.name}`,title:`View skill`,onClick:t=>{t.preventDefault(),t.stopPropagation(),l(e)},className:`ml-auto shrink-0 rounded-sm p-0.5 text-soft-foreground transition-colors hover:text-foreground`,children:(0,Z.jsx)(pe,{"aria-hidden":`true`,className:`size-3.5`})}),i?(0,Z.jsx)(h,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-primary`}):null]},e.path)};return e.length===0?null:(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(be,{skill:c,onClose:()=>l(null)}),(0,Z.jsxs)(z,{open:i,onOpenChange:e=>{a(e),e||s(``)},children:[(0,Z.jsx)(N,{asChild:!0,children:(0,Z.jsxs)(`button`,{type:`button`,"data-slot":`gh-skills-trigger`,"aria-label":`Choose skills`,className:b(I,n.length>0&&`border-foreground/60 font-semibold text-foreground`),children:[(0,Z.jsx)(F,{"aria-hidden":`true`,className:`size-3 shrink-0 text-violet`}),`skills`,n.length>0?` · ${n.length}`:``,(0,Z.jsx)(_e,{"aria-hidden":`true`,className:`size-2.5 shrink-0 text-soft-foreground`})]})}),(0,Z.jsx)(U,{align:`start`,sideOffset:8,className:`w-[336px] max-w-[calc(100vw-2rem)] p-0`,children:(0,Z.jsxs)(H,{shouldFilter:!1,children:[(0,Z.jsx)(J,{placeholder:`search skills…`,value:o,onValueChange:s,onInput:()=>u.current?.scrollTo(0,0)}),(0,Z.jsxs)(B,{ref:u,"data-slot":`gh-skill-menu`,className:`max-h-[min(16rem,calc(var(--radix-popover-content-available-height)-3rem))]`,children:[d.length===0&&f.length===0&&p.length===0?(0,Z.jsx)(Y,{children:`Nothing matches.`}):null,d.length>0?(0,Z.jsx)(A,{heading:`Most used`,children:d.map(e=>m(e,q(e)))}):null,f.length>0?(0,Z.jsx)(A,{heading:`Project skills`,children:f.map(e=>m(e,!0))}):null,p.length>0?(0,Z.jsx)(A,{heading:`Global`,children:p.map(e=>m(e,!1))}):null]})]})})]})]})}var qe=30,Je=1e3;function Ye(){return p().data?.githubView===`prs`?(0,Z.jsx)(D,{to:`/github/prs`,replace:!0}):(0,Z.jsx)(Xe,{view:`issues`})}function Xe({view:e}){let{n:t}=ne(),n=o(),i=o({limit:Je},n.data?.available===!0),l=i.data?.available?i.data:n.data,h=i.data?.available===!0,v=ee(),y=e=>{v.setQueryData(r.uiState,t=>({...t,githubView:e})),a({githubView:e}).then(e=>v.setQueryData(r.uiState,e)).catch(e=>{m(e instanceof Error?e.message:String(e),{tone:`danger`}),v.invalidateQueries({queryKey:r.uiState})})},x=(0,X.useRef)(null),S=f({mutationFn:()=>s({refresh:!0}),onSuccess:e=>{v.setQueryData(r.github({}),e),v.invalidateQueries({queryKey:r.github({limit:Je})});let t=x.current;if(!t){v.removeQueries({queryKey:[`github`,`comments`]});return}let n=r.githubComments(t.kind,t.number);c(t.kind,t.number,{refresh:!0}).then(e=>v.setQueryData(n,e)).catch(()=>{}),v.removeQueries({queryKey:[`github`,`comments`],predicate:e=>e.queryHash!==d(n)})},onError:e=>m(e.message,{tone:`danger`})}),E=te(),ie=_(),D=p(),[O,k]=(0,X.useState)(()=>ze().workflow),[A,j]=(0,X.useState)(()=>ze().skills),[ae,oe]=(0,X.useState)({runner:null,model:null});(0,X.useEffect)(()=>{Be({workflow:O,skills:[...A]})},[O,A]);let N=E.data?.workflows;(0,X.useEffect)(()=>{N&&O!==null&&!N.some(e=>e.name===O)&&k(null)},[N,O]);let F=ie.data,I=D.data?.skillUsage,le=(0,X.useMemo)(()=>xe(F??[],I),[F,I]),[L,R]=(0,X.useState)(new Map),[z,B]=(0,X.useState)(``),[V,H]=(0,X.useState)([]);if(!l)return n.isError?(0,Z.jsx)(`div`,{"data-route":`github`,className:`flex min-h-full flex-col`,children:(0,Z.jsx)(g,{icon:(0,Z.jsx)(re,{}),tone:`danger`,title:`Could not load GitHub`,subtitle:n.error.message})}):(0,Z.jsx)(se,{});if(x.current=null,!l.available)return(0,Z.jsx)(`div`,{"data-route":`github`,className:`flex min-h-full flex-col`,children:(0,Z.jsx)(g,{icon:(0,Z.jsx)(P,{}),tone:`neutral`,title:`GitHub is unavailable here`,subtitle:l.reason??`unknown reason`,actions:(0,Z.jsx)(u,{variant:`outline`,"data-action":`gh-retry`,disabled:S.isPending,onClick:()=>S.mutate(),children:`Try again`}),children:(0,Z.jsxs)(`p`,{className:`text-xs leading-relaxed text-soft-foreground`,children:[`The tab needs the `,(0,Z.jsx)(`span`,{className:`font-mono`,children:`gh`}),` CLI, logged in (`,(0,Z.jsx)(`span`,{className:`font-mono`,children:`gh auth login`}),`), and a repo with a GitHub remote. Everything else in cezar works without it.`]})})});let U=e===`issues`?l.issues:l.prs,W=l.labelColors??{},ue=Ne(U),G=Pe(U,{query:z,labels:V}),de=z.trim()!==``||V.length>0,K=t===void 0?null:Number.parseInt(t,10),q=K===null?G[0]??null:U.find(e=>e.number===K)??null;x.current=q?{kind:q.kind,number:q.number}:null;let fe=e===`issues`?`/github`:`/github/prs`;return(0,Z.jsxs)(`div`,{"data-route":`github`,className:`flex h-full min-h-0 items-stretch`,children:[(0,Z.jsxs)(`section`,{"data-slot":`gh-list`,className:b(`w-full min-h-0 flex-col overflow-y-auto overscroll-contain border-border md:flex md:w-[360px] md:shrink-0 md:border-r`,t===void 0?`flex`:`hidden`),children:[(0,Z.jsxs)(`header`,{"data-slot":`gh-header`,className:`sticky top-0 z-10 border-b border-border bg-background/95 px-4 pt-3 backdrop-blur`,children:[(0,Z.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2.5`,children:[(0,Z.jsx)(`h1`,{className:`text-lg font-semibold`,children:`GitHub`}),l.repo?(0,Z.jsx)(`span`,{"data-slot":`gh-repo`,className:`min-w-0 truncate font-mono text-[11px] text-soft-foreground`,children:l.repo}):null,(0,Z.jsxs)(`button`,{type:`button`,"data-slot":`gh-refresh`,title:`Refresh from GitHub`,disabled:S.isPending,onClick:()=>S.mutate(),className:`ml-auto flex shrink-0 items-center gap-1 rounded-full border border-border px-1.5 py-px text-[10px] font-medium text-soft-foreground transition-colors hover:bg-muted hover:text-foreground disabled:opacity-55`,children:[(0,Z.jsx)(T,{"aria-hidden":`true`,className:b(`size-[9px]`,S.isPending&&`motion-safe:animate-spin`)}),l.syncedAt?`synced ${M(l.syncedAt)} ago`:`refresh`]})]}),(0,Z.jsxs)(`div`,{"data-slot":`gh-tabs`,className:`mt-2.5 flex items-end gap-1`,children:[(0,Z.jsxs)(C,{to:`/github`,active:e===`issues`,onClick:()=>y(`issues`),children:[`Issues · `,Ze(l.issues.length,h)]}),(0,Z.jsxs)(C,{to:`/github/prs`,active:e===`prs`,onClick:()=>y(`prs`),children:[`Pull requests · `,Ze(l.prs.length,h)]})]}),(0,Z.jsxs)(`div`,{className:`mt-2.5 flex items-center gap-2 pb-3`,children:[(0,Z.jsxs)(`div`,{className:`relative min-w-0 flex-1`,children:[(0,Z.jsx)(ce,{"aria-hidden":`true`,className:`pointer-events-none absolute top-1/2 left-2 size-3.5 -translate-y-1/2 text-soft-foreground`}),(0,Z.jsx)(`input`,{type:`search`,"data-slot":`gh-search`,"aria-label":`Search ${e}`,placeholder:`Search #id, title, author…`,value:z,onChange:e=>B(e.target.value),className:`w-full rounded-md border border-input bg-card py-1 pr-2 pl-7 text-[13px] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50`})]}),(0,Z.jsx)($e,{options:ue,colors:W,selected:V,onChange:H})]})]}),G.length===0?(0,Z.jsx)(`p`,{className:`px-4 py-4 text-sm text-soft-foreground`,children:de?`No ${e===`issues`?`issues`:`pull requests`} match your filter.`:`No open ${e===`issues`?`issues`:`pull requests`}.`}):(0,Z.jsx)(`ul`,{"data-slot":`gh-rows`,className:`flex flex-col gap-0.5 px-2 py-2`,children:G.map(t=>(0,Z.jsx)(Qe,{item:t,view:e,colors:W,active:q?.url===t.url,queued:L.has(t.url)},t.url))})]}),(0,Z.jsx)(`section`,{"data-slot":`gh-detail`,className:b(`min-w-0 min-h-0 flex-1 flex-col overflow-y-auto overscroll-contain`,t===void 0?`hidden md:flex`:`flex`),children:q?(0,Z.jsx)(tt,{item:q,listPath:fe,colors:W,children:(0,Z.jsx)(We,{item:q,workflows:E.data?.workflows??[],skills:le,workflow:O,onWorkflowChange:k,selectedSkills:A,onSkillsChange:j,engine:ae,onEngineChange:oe,queuedRunId:L.get(q.url)??null,onQueued:(e,t)=>R(n=>new Map(n).set(e,t))},q.url)}):(0,Z.jsx)(g,{icon:e===`issues`?(0,Z.jsx)(Ce,{}):(0,Z.jsx)(w,{}),tone:`neutral`,heading:`h2`,title:K===null?`Nothing selected`:`Not in the open list`,subtitle:K===null?`No open ${e===`issues`?`issues`:`pull requests`} to show.`:`#${K} is not among the open ${e===`issues`?`issues`:`pull requests`} — it may be closed, or still outside the fetched batch.`})})]})}function Ze(e,t){return`${e}${!t&&e>=qe?`+`:``}`}function Qe({item:e,view:t,colors:n,active:r,queued:i}){let a=e.kind===`issue`?Ce:w;return(0,Z.jsx)(`li`,{children:(0,Z.jsxs)(O,{to:`${t===`issues`?`/github/issues`:`/github/prs`}/${e.number}`,draggable:!0,onDragStart:t=>{try{t.dataTransfer.setData(`text/plain`,Ee(e)),t.dataTransfer.effectAllowed=`copy`}catch{}},"data-slot":`gh-row`,"data-number":e.number,"aria-current":r?`page`:void 0,title:`Drag into the composer to prefill a task`,className:b(`flex flex-col gap-1 rounded-md px-2.5 py-2 transition-colors hover:bg-muted`,r&&`bg-muted`),children:[(0,Z.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Z.jsx)(a,{"aria-hidden":`true`,className:b(`size-3.5 shrink-0`,e.kind===`issue`?`text-success`:`text-violet`)}),(0,Z.jsx)(`span`,{className:b(`min-w-0 truncate text-[13px] font-medium`,r&&`font-semibold`),children:e.title})]}),(0,Z.jsxs)(`span`,{className:`flex items-center gap-2 pl-[22px] font-mono text-[10.5px] text-muted-foreground`,children:[(0,Z.jsxs)(`span`,{children:[`#`,e.number]}),(0,Z.jsx)(`span`,{className:`min-w-0 truncate`,children:e.author}),(0,Z.jsx)(`span`,{children:M(e.createdAt)}),(0,Z.jsx)(ht,{count:e.comments}),e.checks?(0,Z.jsx)(_t,{checks:e.checks}):null,i?(0,Z.jsx)(`span`,{"data-slot":`gh-queued-flag`,className:`font-sans font-medium text-violet`,children:`↗ run queued`}):null]}),e.labels.length>0?(0,Z.jsx)(`span`,{className:`flex flex-wrap gap-1 pl-[22px]`,children:e.labels.map(e=>(0,Z.jsx)(et,{label:e,color:n[e]},e))}):null]})})}function $e({options:e,colors:t,selected:n,onChange:r}){let[i,a]=(0,X.useState)(!1),o=e=>r(n.includes(e)?n.filter(t=>t!==e):[...n,e]);return(0,Z.jsxs)(z,{open:i,onOpenChange:a,children:[(0,Z.jsx)(N,{asChild:!0,children:(0,Z.jsxs)(`button`,{type:`button`,"data-slot":`gh-label-filter`,disabled:e.length===0,className:b(`flex shrink-0 items-center gap-1 rounded-md border border-input bg-card px-2 py-1 text-[12px] font-medium text-muted-foreground transition-colors hover:text-foreground disabled:opacity-50`,n.length>0&&`border-primary/60 text-foreground`),children:[(0,Z.jsx)(Te,{"aria-hidden":`true`,className:`size-3.5`}),n.length>0?`Labels · ${n.length}`:`Labels`]})}),(0,Z.jsx)(U,{align:`end`,sideOffset:6,className:`w-60 p-0`,children:(0,Z.jsxs)(H,{children:[(0,Z.jsx)(J,{placeholder:`Filter labels…`}),(0,Z.jsxs)(B,{className:`max-h-[min(16rem,calc(var(--radix-popover-content-available-height)-3rem))]`,children:[(0,Z.jsx)(Y,{children:`No labels.`}),n.length>0?(0,Z.jsxs)(R,{value:`__clear__`,onSelect:()=>r([]),className:`text-soft-foreground`,children:[`Clear `,n.length,` filter`,n.length>1?`s`:``]}):null,e.map(e=>{let r=n.includes(e);return(0,Z.jsxs)(R,{value:e,onSelect:()=>o(e),children:[(0,Z.jsx)(`span`,{"aria-hidden":`true`,className:`size-2.5 shrink-0 rounded-full border`,style:Fe(t[e])}),(0,Z.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e}),r?(0,Z.jsx)(h,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-primary`}):null]},e)})]})]})})]})}function et({label:e,color:t}){return(0,Z.jsx)(`span`,{"data-slot":`gh-label`,"data-label":e,style:Fe(t),className:`rounded-full border px-1.5 py-px text-[10px] font-medium`,children:e})}function tt({item:e,listPath:t,colors:n,children:r}){let i=e.kind===`pr`?`pull request`:`issue`,a=e.kind===`pr`&&!!(e.additions||e.deletions);return(0,Z.jsxs)(`article`,{"data-slot":`gh-detail-inner`,className:`min-w-0 px-4 py-4 md:px-7 md:py-5`,children:[(0,Z.jsxs)(O,{to:t,"data-slot":`gh-back`,className:`mb-3 inline-flex items-center gap-1.5 text-xs font-medium text-muted-foreground hover:text-foreground md:hidden`,children:[(0,Z.jsx)(x,{"aria-hidden":`true`,className:`size-3.5`}),`Back to the list`]}),(0,Z.jsxs)(`p`,{"data-slot":`gh-meta`,className:`flex flex-wrap items-center gap-x-1.5 font-mono text-[10.5px] text-soft-foreground`,children:[(0,Z.jsxs)(`span`,{children:[`#`,e.number]}),`·`,(0,Z.jsx)(`span`,{children:i}),`·`,(0,Z.jsxs)(`span`,{children:[`opened by `,e.author]}),`·`,(0,Z.jsxs)(`span`,{children:[M(e.createdAt),` ago`]}),e.comments?(0,Z.jsxs)(Z.Fragment,{children:[`·`,(0,Z.jsx)(ht,{count:e.comments})]}):null,a?(0,Z.jsxs)(Z.Fragment,{children:[`·`,(0,Z.jsxs)(`span`,{"data-slot":`gh-diffstat`,children:[(0,Z.jsxs)(`span`,{className:`text-success`,children:[`+`,e.additions??0]}),` `,(0,Z.jsxs)(`span`,{className:`text-danger`,children:[`−`,e.deletions??0]})]})]}):null,`·`,v(e.url)?(0,Z.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,"data-slot":`gh-open-link`,className:`inline-flex items-center gap-0.5 text-muted-foreground hover:text-foreground hover:underline`,children:[`open on GitHub`,(0,Z.jsx)(S,{"aria-hidden":`true`,className:`size-2.5`})]}):(0,Z.jsx)(`span`,{"data-slot":`gh-open-link`,className:`text-muted-foreground`,children:`open on GitHub`})]}),(0,Z.jsx)(`h2`,{className:`mt-2 text-xl leading-snug font-semibold`,children:e.title}),e.labels.length>0||e.checks?(0,Z.jsxs)(`div`,{className:`mt-3 flex flex-wrap items-center gap-1.5`,children:[e.labels.map(e=>(0,Z.jsx)(et,{label:e,color:n[e]},e)),e.checks?(0,Z.jsx)(gt,{checks:e.checks,url:e.url}):null]}):null,(0,Z.jsx)(`div`,{"data-slot":`gh-body`,className:`mt-5 text-sm`,children:e.body?(0,Z.jsx)(ve,{children:e.body}):(0,Z.jsx)(`p`,{className:`text-soft-foreground`,children:`(no description)`})}),(0,Z.jsx)(nt,{item:e,colors:n}),r]})}function nt({item:e,colors:t}){let n=l(e.kind,e.number),r=n.data,i=(0,X.useMemo)(()=>{let e=[...(r?.comments??[]).map(e=>({row:`comment`,comment:e})),...(r?.events??[]).map(e=>({row:`event`,event:e}))],t=e=>{let t=Date.parse(rt(e));return Number.isNaN(t)?-1/0:t};return e.sort((e,n)=>t(e)-t(n))},[r?.comments,r?.events]);return n.isPending?(0,Z.jsxs)(`section`,{"data-slot":`gh-thread-loading`,className:`mt-6 border-t border-border pt-5`,children:[(0,Z.jsx)(Q,{className:`mb-3 h-3 w-24`}),(0,Z.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,Z.jsx)(Q,{className:`h-14 w-full`}),(0,Z.jsx)(Q,{className:`h-14 w-full`})]})]}):!r||!r.available?(0,Z.jsxs)(`section`,{"data-slot":`gh-thread-error`,className:`mt-6 border-t border-border pt-5 text-xs text-soft-foreground`,children:[(0,Z.jsxs)(`span`,{children:[`Couldn’t load comments — `,r?.reason??(n.error instanceof Error?n.error.message:`could not load comments`),`. `]}),(0,Z.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-0.5 text-muted-foreground hover:text-foreground hover:underline`,children:[`open on GitHub`,(0,Z.jsx)(S,{"aria-hidden":`true`,className:`size-2.5`})]})]}):i.length===0?null:(0,Z.jsxs)(`section`,{"data-slot":`gh-thread`,className:`mt-6 border-t border-border pt-5`,children:[(0,Z.jsxs)(`h3`,{"data-slot":`gh-thread-header`,className:`mb-4 text-[11px] font-semibold tracking-wide text-soft-foreground uppercase`,children:[`Activity · `,r.comments.length,` comment`,r.comments.length===1?``:`s`]}),(0,Z.jsx)(`ul`,{className:`flex flex-col gap-5`,children:it(i).map(e=>e.group===`commits`?(0,Z.jsx)(at,{commits:e.commits,colors:t},e.commits[0].id):e.entry.row===`comment`?(0,Z.jsx)(dt,{comment:e.entry.comment},`${e.entry.comment.kind}-${e.entry.comment.id}`):(0,Z.jsx)(st,{event:e.entry.event,colors:t},e.entry.event.id))}),r.truncated?(0,Z.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,"data-slot":`gh-thread-truncated`,className:`mt-4 inline-flex items-center gap-0.5 text-xs text-soft-foreground hover:text-foreground hover:underline`,children:[`thread truncated — open on GitHub`,(0,Z.jsx)(S,{"aria-hidden":`true`,className:`size-2.5`})]}):null]})}var rt=e=>e.row===`comment`?e.comment.createdAt:e.event.createdAt;function it(e){let t=[],n=[],r=()=>{n.length!==0&&(n.length===1?t.push({group:`single`,entry:{row:`event`,event:n[0]}}):t.push({group:`commits`,commits:n}),n=[])};for(let i of e){if(i.row===`event`&&i.event.kind===`committed`&&i.row===`event`){let e=n[n.length-1];e&&e.actor!==i.event.actor&&r(),n.push(i.event);continue}r(),t.push({group:`single`,entry:i})}return r(),t}function at({commits:e,colors:t}){let[n,r]=(0,X.useState)(!1),i=e[0]?.actor??`?`;return n?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`li`,{"data-slot":`gh-commit-group`,"data-open":`true`,className:`min-w-0`,children:(0,Z.jsxs)(`button`,{type:`button`,"aria-expanded":!0,onClick:()=>r(!1),className:`flex items-center gap-1.5 font-mono text-[11px] text-soft-foreground hover:text-foreground`,children:[(0,Z.jsx)(`span`,{"aria-hidden":`true`,children:ot.committed}),(0,Z.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:i}),(0,Z.jsxs)(`span`,{children:[`added `,e.length,` commits`]})]})}),e.map(e=>(0,Z.jsx)(st,{event:e,colors:t},e.id))]}):(0,Z.jsx)(`li`,{"data-slot":`gh-commit-group`,"data-open":`false`,className:`min-w-0`,children:(0,Z.jsxs)(`button`,{type:`button`,"aria-expanded":!1,onClick:()=>r(!0),className:`flex items-center gap-1.5 font-mono text-[11px] text-soft-foreground hover:text-foreground`,children:[(0,Z.jsx)(`span`,{"aria-hidden":`true`,children:ot.committed}),(0,Z.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:i}),(0,Z.jsxs)(`span`,{children:[`added `,e.length,` commits`]}),(0,Z.jsx)(`span`,{className:`shrink-0`,children:M(e[e.length-1].createdAt)})]})})}var ot={committed:`⚙`,labeled:`◆`,unlabeled:`◇`,assigned:`◍`,unassigned:`◌`,merged:`⑃`,closed:`⊘`,reopened:`⊙`,head_ref_force_pushed:`↻`,"cross-referenced":`↗`,renamed:`✎`};function st({event:e,colors:t}){return(0,Z.jsxs)(`li`,{"data-slot":`gh-event-row`,"data-kind":e.kind,className:b(`flex min-w-0 items-center gap-1.5 font-mono text-[11px] text-soft-foreground`,e.kind===`merged`&&`text-accent-foreground`),children:[(0,Z.jsx)(`span`,{"aria-hidden":`true`,className:`shrink-0`,children:ot[e.kind]}),(0,Z.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:e.actor}),(0,Z.jsx)(ct,{event:e,colors:t}),(0,Z.jsx)(`span`,{className:`shrink-0`,children:M(e.createdAt)}),e.url?(0,Z.jsx)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,"aria-label":`open ${e.kind} on GitHub`,className:`ml-auto shrink-0 text-muted-foreground hover:text-foreground`,children:(0,Z.jsx)(S,{"aria-hidden":`true`,className:`size-2.5`})}):null]})}function ct({event:e,colors:t}){switch(e.kind){case`committed`:return(0,Z.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,children:[(0,Z.jsx)(`span`,{className:`shrink-0`,children:`committed`}),e.sha?(0,Z.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:e.sha.slice(0,7)}):null,e.message?(0,Z.jsx)(`span`,{className:`truncate font-sans text-foreground`,children:e.message}):null,(0,Z.jsx)(lt,{checks:e.checks})]});case`labeled`:case`unlabeled`:return(0,Z.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,children:[(0,Z.jsx)(`span`,{className:`shrink-0`,children:e.kind===`labeled`?`added the`:`removed the`}),e.label?(0,Z.jsx)(`span`,{"data-slot":`gh-event-label`,style:Fe(e.label.color??t[e.label.name]),className:`max-w-[12rem] truncate rounded-full border px-1.5 py-px font-sans text-[10px]`,children:e.label.name}):null,(0,Z.jsx)(`span`,{className:`shrink-0`,children:`label`})]});case`assigned`:case`unassigned`:return(0,Z.jsxs)(`span`,{className:`truncate`,children:[e.kind===`assigned`?`assigned`:`unassigned`,` `,e.subject??`someone`]});case`merged`:return(0,Z.jsx)(`span`,{children:`merged this`});case`closed`:return(0,Z.jsx)(`span`,{children:`closed this`});case`reopened`:return(0,Z.jsx)(`span`,{children:`reopened this`});case`head_ref_force_pushed`:return(0,Z.jsx)(`span`,{children:`force-pushed`});case`renamed`:return(0,Z.jsxs)(`span`,{className:`truncate`,children:[`renamed this to `,e.subject??`—`]});case`cross-referenced`:return(0,Z.jsxs)(`span`,{className:`truncate`,children:[`referenced this in `,e.refNumber?`#${e.refNumber}`:`another thread`,e.refTitle?` ${e.refTitle}`:``]})}}function lt({checks:e}){return e?(0,Z.jsx)(`span`,{"data-slot":`gh-commit-checks`,"data-checks":e,"aria-label":`checks ${e}`,className:b(`shrink-0`,mt[e]),children:pt[e]}):null}var ut={approved:{label:`approved`,tone:`border-success/40 text-success`},changes_requested:{label:`changes requested`,tone:`border-danger/40 text-danger`},commented:{label:`commented`,tone:`border-border text-muted-foreground`},dismissed:{label:`dismissed`,tone:`border-border text-muted-foreground`}};function dt({comment:e}){let t=e.reviewState?ut[e.reviewState]:null;return(0,Z.jsxs)(`li`,{"data-slot":`gh-thread-entry`,"data-kind":e.kind,className:`min-w-0`,children:[(0,Z.jsxs)(`div`,{className:`mb-1.5 flex items-center gap-1.5 font-mono text-[11px] text-soft-foreground`,children:[(0,Z.jsx)(ft,{url:e.avatarUrl,login:e.author}),(0,Z.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:e.author}),(0,Z.jsx)(`span`,{children:M(e.createdAt)}),t?(0,Z.jsx)(`span`,{"data-slot":`gh-review-chip`,"data-review-state":e.reviewState,className:b(`rounded-full border px-1.5 py-px font-sans text-[10px] font-medium`,t.tone),children:t.label}):null,(0,Z.jsx)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,"aria-label":`open comment on GitHub`,className:`ml-auto shrink-0 text-muted-foreground hover:text-foreground`,children:(0,Z.jsx)(S,{"aria-hidden":`true`,className:`size-2.5`})})]}),(0,Z.jsx)(`div`,{"data-slot":`gh-thread-body`,className:`text-sm`,children:e.body?(0,Z.jsx)(ve,{children:e.body}):(0,Z.jsx)(`p`,{className:`text-soft-foreground`,children:`(no body)`})})]})}function ft({url:e,login:t}){let[n,r]=(0,X.useState)(!1);return e&&!n?(0,Z.jsx)(`img`,{src:e,alt:``,width:16,height:16,loading:`lazy`,onError:()=>r(!0),"data-slot":`gh-avatar`,className:`size-4 shrink-0 rounded-full`}):(0,Z.jsx)(`span`,{"data-slot":`gh-avatar-fallback`,"aria-hidden":`true`,className:`flex size-4 shrink-0 items-center justify-center rounded-full bg-muted text-[8px] font-semibold text-muted-foreground uppercase`,children:t.slice(0,1)||`?`})}var pt={passing:`✓`,failing:`✗`,pending:`○`},mt={passing:`text-success`,failing:`text-danger`,pending:`text-muted-foreground`};function ht({count:e}){return e?(0,Z.jsxs)(`span`,{"data-slot":`gh-comment-count`,"data-count":e,"aria-label":`${e} comment${e===1?``:`s`}`,className:`inline-flex shrink-0 items-center gap-0.5`,children:[(0,Z.jsx)(we,{"aria-hidden":`true`,className:`size-3`}),e]}):null}function gt({checks:e,url:t}){let n=b(`text-[11px] font-medium`,mt[e],t&&`hover:underline`),r=`${pt[e]} checks ${e}`;return t?(0,Z.jsx)(`a`,{href:`${t}/checks`,target:`_blank`,rel:`noopener noreferrer`,"data-slot":`gh-checks`,"data-checks":e,className:n,children:r}):(0,Z.jsx)(`span`,{"data-slot":`gh-checks`,"data-checks":e,className:n,children:r})}function _t({checks:e}){return(0,Z.jsx)(`span`,{"data-slot":`gh-row-checks`,"data-checks":e,title:`checks ${e}`,"aria-label":`checks ${e}`,className:b(`shrink-0 font-sans text-[11px] font-semibold`,mt[e]),children:pt[e]})}export{Ye as GithubIndexRoute,Xe as GithubRoute};
|