cctally 1.103.0 → 1.105.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.
Files changed (66) hide show
  1. package/CHANGELOG.md +94 -0
  2. package/README.md +6 -6
  3. package/bin/_cctally_alerts.py +104 -10
  4. package/bin/_cctally_cache.py +193 -71
  5. package/bin/_cctally_config.py +62 -2
  6. package/bin/_cctally_core.py +62 -1
  7. package/bin/_cctally_dashboard.py +694 -70
  8. package/bin/_cctally_dashboard_conversation.py +400 -6
  9. package/bin/_cctally_dashboard_envelope.py +336 -14
  10. package/bin/_cctally_dashboard_perf.py +93 -0
  11. package/bin/_cctally_dashboard_share.py +56 -25
  12. package/bin/_cctally_dashboard_sources.py +988 -94
  13. package/bin/_cctally_db.py +30 -3
  14. package/bin/_cctally_diagnosis_sources.py +699 -186
  15. package/bin/_cctally_doctor.py +77 -0
  16. package/bin/_cctally_forecast.py +932 -51
  17. package/bin/_cctally_journal.py +430 -24
  18. package/bin/_cctally_parser.py +66 -0
  19. package/bin/_cctally_project.py +535 -10
  20. package/bin/_cctally_quota.py +28 -0
  21. package/bin/_cctally_quota_calibration.py +146 -0
  22. package/bin/_cctally_quota_model.py +2142 -0
  23. package/bin/_cctally_record.py +204 -30
  24. package/bin/_cctally_share.py +16 -8
  25. package/bin/_cctally_statusline.py +34 -0
  26. package/bin/_cctally_tui.py +531 -115
  27. package/bin/_lib_codex_conversation_query.py +258 -12
  28. package/bin/_lib_codex_hooks.py +26 -0
  29. package/bin/_lib_conversation_query.py +145 -15
  30. package/bin/_lib_dashboard_json.py +105 -0
  31. package/bin/_lib_dashboard_settings_contract.py +2 -0
  32. package/bin/_lib_diagnosis.py +21 -2
  33. package/bin/_lib_doctor.py +215 -1
  34. package/bin/_lib_forecast.py +337 -43
  35. package/bin/_lib_ingest_frontier.py +889 -0
  36. package/bin/_lib_meter_rate_change.py +360 -0
  37. package/bin/_lib_perf.py +22 -0
  38. package/bin/_lib_pricing.py +30 -3
  39. package/bin/_lib_quota_calibration.py +311 -0
  40. package/bin/_lib_quota_copy.py +157 -0
  41. package/bin/_lib_quota_model.py +2520 -0
  42. package/bin/_lib_rate_change_delivery.py +119 -0
  43. package/bin/_lib_record.py +50 -0
  44. package/bin/_lib_rederive.py +10 -0
  45. package/bin/_lib_render.py +6 -0
  46. package/bin/_lib_retained_size.py +187 -0
  47. package/bin/_lib_share_templates.py +37 -5
  48. package/bin/_lib_snapshot_cache.py +504 -17
  49. package/bin/_lib_statusline.py +200 -2
  50. package/bin/_lib_tick_stats.py +28 -4
  51. package/bin/_lib_view_models.py +30 -12
  52. package/bin/cctally +32 -0
  53. package/dashboard/static/assets/ConversationsView-DA4j7Yso.js +72 -0
  54. package/dashboard/static/assets/DoctorModal-D4PbVnbE.js +1 -0
  55. package/dashboard/static/assets/ModalRoot-D4oSPxPp.js +1 -0
  56. package/dashboard/static/assets/ProjectsDrillPanel-DkPlB9JH.js +1 -0
  57. package/dashboard/static/assets/SourceDetailModal-BE7FONsS.js +1 -0
  58. package/dashboard/static/assets/UpdateModal-BJuI8glf.js +7 -0
  59. package/dashboard/static/assets/index-klO46NcU.css +1 -0
  60. package/dashboard/static/assets/index-w_bINkJ8.js +13 -0
  61. package/dashboard/static/assets/outlineNavigation-zDVm6Hdd.js +9 -0
  62. package/dashboard/static/assets/useKeymap-CJ-Pi17D.js +1 -0
  63. package/dashboard/static/dashboard.html +3 -2
  64. package/package.json +10 -1
  65. package/dashboard/static/assets/index-Di2hljvB.css +0 -1
  66. package/dashboard/static/assets/index-XYCIWjVG.js +0 -97
@@ -0,0 +1,13 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ConversationsView-DA4j7Yso.js","assets/useKeymap-CJ-Pi17D.js","assets/outlineNavigation-zDVm6Hdd.js","assets/ModalRoot-D4oSPxPp.js","assets/ProjectsDrillPanel-DkPlB9JH.js","assets/SourceDetailModal-BE7FONsS.js","assets/UpdateModal-BJuI8glf.js","assets/DoctorModal-D4PbVnbE.js"])))=>i.map(i=>d[i]);
2
+ import{$ as e,A as t,At as n,B as r,C as i,Ct as a,D as o,E as s,Et as c,F as l,G as u,H as d,I as f,J as p,K as m,L as h,M as g,Nt as _,O as v,Ot as y,P as b,Q as x,R as S,S as C,St as w,T,U as E,V as D,W as ee,X as O,Y as k,Z as A,_ as j,_t as M,a as N,b as te,bt as ne,c as P,d as F,dt as re,et as I,f as L,g as ie,gt as ae,h as R,ht as oe,i as z,j as se,jt as ce,k as le,kt as ue,l as de,m as fe,n as pe,o as me,ot as he,p as ge,pt as _e,q as ve,r as ye,rt as B,s as be,t as xe,u as Se,ut as Ce,v as we,w as Te,wt as Ee,x as De,xt as Oe,y as V,yt as ke,z as Ae}from"./useKeymap-CJ-Pi17D.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var je=ce((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=typeof setTimeout==`function`?setTimeout:null,_=typeof clearTimeout==`function`?clearTimeout:null,v=typeof setImmediate<`u`?setImmediate:null;typeof navigator<`u`&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function y(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function b(e){if(h=!1,y(e),!m)if(n(c)!==null)m=!0,j(x);else{var t=n(l);t!==null&&M(b,t.startTime-e)}}function x(t,i){m=!1,h&&(h=!1,_(w),w=-1),p=!0;var a=f;try{for(y(i),d=n(c);d!==null&&(!(d.expirationTime>i)||t&&!D());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=i);i=e.unstable_now(),typeof s==`function`?d.callback=s:d===n(c)&&r(c),y(i)}else r(c);d=n(c)}if(d!==null)var u=!0;else{var g=n(l);g!==null&&M(b,g.startTime-i),u=!1}return u}finally{d=null,f=a,p=!1}}var S=!1,C=null,w=-1,T=5,E=-1;function D(){return!(e.unstable_now()-E<T)}function ee(){if(C!==null){var t=e.unstable_now();E=t;var n=!0;try{n=C(!0,t)}finally{n?O():(S=!1,C=null)}}else S=!1}var O;if(typeof v==`function`)O=function(){v(ee)};else if(typeof MessageChannel<`u`){var k=new MessageChannel,A=k.port2;k.port1.onmessage=ee,O=function(){A.postMessage(null)}}else O=function(){g(ee,0)};function j(e){C=e,S||(S=!0,O())}function M(t,n){w=g(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_continueExecution=function(){m||p||(m=!0,j(x))},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):T=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_getFirstCallbackNode=function(){return n(c)},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(_(w),w=-1):h=!0,M(b,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,j(x))),r},e.unstable_shouldYield=D,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),Me=ce(((e,t)=>{t.exports=je()})),Ne=ce((e=>{var t=n(),r=Me();function i(e){for(var t=`https://reactjs.org/docs/error-decoder.html?invariant=`+e,n=1;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n]);return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}var a=new Set,o={};function s(e,t){c(e,t),c(e+`Capture`,t)}function c(e,t){for(o[e]=t,e=0;e<t.length;e++)a.add(t[e])}var l=!(typeof window>`u`||window.document===void 0||window.document.createElement===void 0),u=Object.prototype.hasOwnProperty,d=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,f={},p={};function m(e){return u.call(p,e)?!0:u.call(f,e)?!1:d.test(e)?p[e]=!0:(f[e]=!0,!1)}function h(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case`function`:case`symbol`:return!0;case`boolean`:return r?!1:n===null?(e=e.toLowerCase().slice(0,5),e!==`data-`&&e!==`aria-`):!n.acceptsBooleans;default:return!1}}function g(e,t,n,r){if(t==null||h(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function _(e,t,n,r,i,a,o){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=a,this.removeEmptyString=o}var v={};`children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style`.split(` `).forEach(function(e){v[e]=new _(e,0,!1,e,null,!1,!1)}),[[`acceptCharset`,`accept-charset`],[`className`,`class`],[`htmlFor`,`for`],[`httpEquiv`,`http-equiv`]].forEach(function(e){var t=e[0];v[t]=new _(t,1,!1,e[1],null,!1,!1)}),[`contentEditable`,`draggable`,`spellCheck`,`value`].forEach(function(e){v[e]=new _(e,2,!1,e.toLowerCase(),null,!1,!1)}),[`autoReverse`,`externalResourcesRequired`,`focusable`,`preserveAlpha`].forEach(function(e){v[e]=new _(e,2,!1,e,null,!1,!1)}),`allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope`.split(` `).forEach(function(e){v[e]=new _(e,3,!1,e.toLowerCase(),null,!1,!1)}),[`checked`,`multiple`,`muted`,`selected`].forEach(function(e){v[e]=new _(e,3,!0,e,null,!1,!1)}),[`capture`,`download`].forEach(function(e){v[e]=new _(e,4,!1,e,null,!1,!1)}),[`cols`,`rows`,`size`,`span`].forEach(function(e){v[e]=new _(e,6,!1,e,null,!1,!1)}),[`rowSpan`,`start`].forEach(function(e){v[e]=new _(e,5,!1,e.toLowerCase(),null,!1,!1)});var y=/[\-:]([a-z])/g;function b(e){return e[1].toUpperCase()}`accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height`.split(` `).forEach(function(e){var t=e.replace(y,b);v[t]=new _(t,1,!1,e,null,!1,!1)}),`xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type`.split(` `).forEach(function(e){var t=e.replace(y,b);v[t]=new _(t,1,!1,e,`http://www.w3.org/1999/xlink`,!1,!1)}),[`xml:base`,`xml:lang`,`xml:space`].forEach(function(e){var t=e.replace(y,b);v[t]=new _(t,1,!1,e,`http://www.w3.org/XML/1998/namespace`,!1,!1)}),[`tabIndex`,`crossOrigin`].forEach(function(e){v[e]=new _(e,1,!1,e.toLowerCase(),null,!1,!1)}),v.xlinkHref=new _(`xlinkHref`,1,!1,`xlink:href`,`http://www.w3.org/1999/xlink`,!0,!1),[`src`,`href`,`action`,`formAction`].forEach(function(e){v[e]=new _(e,1,!1,e.toLowerCase(),null,!0,!0)});function x(e,t,n,r){var i=v.hasOwnProperty(t)?v[t]:null;(i===null?r||!(2<t.length)||t[0]!==`o`&&t[0]!==`O`||t[1]!==`n`&&t[1]!==`N`:i.type!==0)&&(g(t,n,i,r)&&(n=null),r||i===null?m(t)&&(n===null?e.removeAttribute(t):e.setAttribute(t,``+n)):i.mustUseProperty?e[i.propertyName]=n===null?i.type===3?!1:``:n:(t=i.attributeName,r=i.attributeNamespace,n===null?e.removeAttribute(t):(i=i.type,n=i===3||i===4&&!0===n?``:``+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}var S=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,C=Symbol.for(`react.element`),w=Symbol.for(`react.portal`),T=Symbol.for(`react.fragment`),E=Symbol.for(`react.strict_mode`),D=Symbol.for(`react.profiler`),ee=Symbol.for(`react.provider`),O=Symbol.for(`react.context`),k=Symbol.for(`react.forward_ref`),A=Symbol.for(`react.suspense`),j=Symbol.for(`react.suspense_list`),M=Symbol.for(`react.memo`),N=Symbol.for(`react.lazy`),te=Symbol.for(`react.offscreen`),ne=Symbol.iterator;function P(e){return typeof e!=`object`||!e?null:(e=ne&&e[ne]||e[`@@iterator`],typeof e==`function`?e:null)}var F=Object.assign,re;function I(e){if(re===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);re=t&&t[1]||``}return`
3
+ `+re+e}var L=!1;function ie(e,t){if(!e||L)return``;L=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(t,[])}catch(e){var r=e}Reflect.construct(e,[],t)}else{try{t.call()}catch(e){r=e}e.call(t.prototype)}else{try{throw Error()}catch(e){r=e}e()}}catch(t){if(t&&r&&typeof t.stack==`string`){for(var i=t.stack.split(`
4
+ `),a=r.stack.split(`
5
+ `),o=i.length-1,s=a.length-1;1<=o&&0<=s&&i[o]!==a[s];)s--;for(;1<=o&&0<=s;o--,s--)if(i[o]!==a[s]){if(o!==1||s!==1)do if(o--,s--,0>s||i[o]!==a[s]){var c=`
6
+ `+i[o].replace(` at new `,` at `);return e.displayName&&c.includes(`<anonymous>`)&&(c=c.replace(`<anonymous>`,e.displayName)),c}while(1<=o&&0<=s);break}}}finally{L=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:``)?I(e):``}function ae(e){switch(e.tag){case 5:return I(e.type);case 16:return I(`Lazy`);case 13:return I(`Suspense`);case 19:return I(`SuspenseList`);case 0:case 2:case 15:return e=ie(e.type,!1),e;case 11:return e=ie(e.type.render,!1),e;case 1:return e=ie(e.type,!0),e;default:return``}}function R(e){if(e==null)return null;if(typeof e==`function`)return e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case T:return`Fragment`;case w:return`Portal`;case D:return`Profiler`;case E:return`StrictMode`;case A:return`Suspense`;case j:return`SuspenseList`}if(typeof e==`object`)switch(e.$$typeof){case O:return(e.displayName||`Context`)+`.Consumer`;case ee:return(e._context.displayName||`Context`)+`.Provider`;case k:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case M:return t=e.displayName||null,t===null?R(e.type)||`Memo`:t;case N:t=e._payload,e=e._init;try{return R(e(t))}catch{}}return null}function oe(e){var t=e.type;switch(e.tag){case 24:return`Cache`;case 9:return(t.displayName||`Context`)+`.Consumer`;case 10:return(t._context.displayName||`Context`)+`.Provider`;case 18:return`DehydratedFragment`;case 11:return e=t.render,e=e.displayName||e.name||``,t.displayName||(e===``?`ForwardRef`:`ForwardRef(`+e+`)`);case 7:return`Fragment`;case 5:return t;case 4:return`Portal`;case 3:return`Root`;case 6:return`Text`;case 16:return R(t);case 8:return t===E?`StrictMode`:`Mode`;case 22:return`Offscreen`;case 12:return`Profiler`;case 21:return`Scope`;case 13:return`Suspense`;case 19:return`SuspenseList`;case 25:return`TracingMarker`;case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t==`function`)return t.displayName||t.name||null;if(typeof t==`string`)return t}return null}function z(e){switch(typeof e){case`boolean`:case`number`:case`string`:case`undefined`:return e;case`object`:return e;default:return``}}function se(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()===`input`&&(t===`checkbox`||t===`radio`)}function ce(e){var t=se(e)?`checked`:`value`,n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=``+e[t];if(!e.hasOwnProperty(t)&&n!==void 0&&typeof n.get==`function`&&typeof n.set==`function`){var i=n.get,a=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(e){r=``+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(e){r=``+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function le(e){e._valueTracker||=ce(e)}function ue(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r=``;return e&&(r=se(e)?e.checked?`true`:`false`:e.value),e=r,e===n?!1:(t.setValue(e),!0)}function de(e){if(e||=typeof document<`u`?document:void 0,e===void 0)return null;try{return e.activeElement||e.body}catch{return e.body}}function fe(e,t){var n=t.checked;return F({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function pe(e,t){var n=t.defaultValue==null?``:t.defaultValue,r=t.checked==null?t.defaultChecked:t.checked;n=z(t.value==null?n:t.value),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type===`checkbox`||t.type===`radio`?t.checked!=null:t.value!=null}}function me(e,t){t=t.checked,t!=null&&x(e,`checked`,t,!1)}function he(e,t){me(e,t);var n=z(t.value),r=t.type;if(n!=null)r===`number`?(n===0&&e.value===``||e.value!=n)&&(e.value=``+n):e.value!==``+n&&(e.value=``+n);else if(r===`submit`||r===`reset`){e.removeAttribute(`value`);return}t.hasOwnProperty(`value`)?_e(e,t.type,n):t.hasOwnProperty(`defaultValue`)&&_e(e,t.type,z(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function ge(e,t,n){if(t.hasOwnProperty(`value`)||t.hasOwnProperty(`defaultValue`)){var r=t.type;if(!(r!==`submit`&&r!==`reset`||t.value!==void 0&&t.value!==null))return;t=``+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==``&&(e.name=``),e.defaultChecked=!!e._wrapperState.initialChecked,n!==``&&(e.name=n)}function _e(e,t,n){(t!==`number`||de(e.ownerDocument)!==e)&&(n==null?e.defaultValue=``+e._wrapperState.initialValue:e.defaultValue!==``+n&&(e.defaultValue=``+n))}var ve=Array.isArray;function ye(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i<n.length;i++)t[`$`+n[i]]=!0;for(n=0;n<e.length;n++)i=t.hasOwnProperty(`$`+e[n].value),e[n].selected!==i&&(e[n].selected=i),i&&r&&(e[n].defaultSelected=!0)}else{for(n=``+z(n),t=null,i=0;i<e.length;i++){if(e[i].value===n){e[i].selected=!0,r&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function B(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(i(91));return F({},t,{value:void 0,defaultValue:void 0,children:``+e._wrapperState.initialValue})}function be(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(i(92));if(ve(n)){if(1<n.length)throw Error(i(93));n=n[0]}t=n}t??=``,n=t}e._wrapperState={initialValue:z(n)}}function xe(e,t){var n=z(t.value),r=z(t.defaultValue);n!=null&&(n=``+n,n!==e.value&&(e.value=n),t.defaultValue==null&&e.defaultValue!==n&&(e.defaultValue=n)),r!=null&&(e.defaultValue=``+r)}function Se(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==``&&t!==null&&(e.value=t)}function Ce(e){switch(e){case`svg`:return`http://www.w3.org/2000/svg`;case`math`:return`http://www.w3.org/1998/Math/MathML`;default:return`http://www.w3.org/1999/xhtml`}}function we(e,t){return e==null||e===`http://www.w3.org/1999/xhtml`?Ce(t):e===`http://www.w3.org/2000/svg`&&t===`foreignObject`?`http://www.w3.org/1999/xhtml`:e}var Te,Ee=function(e){return typeof MSApp<`u`&&MSApp.execUnsafeLocalFunction?function(t,n,r,i){MSApp.execUnsafeLocalFunction(function(){return e(t,n,r,i)})}:e}(function(e,t){if(e.namespaceURI!==`http://www.w3.org/2000/svg`||`innerHTML`in e)e.innerHTML=t;else{for(Te||=document.createElement(`div`),Te.innerHTML=`<svg>`+t.valueOf().toString()+`</svg>`,t=Te.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function De(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Oe={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},V=[`Webkit`,`ms`,`Moz`,`O`];Object.keys(Oe).forEach(function(e){V.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Oe[t]=Oe[e]})});function ke(e,t,n){return t==null||typeof t==`boolean`||t===``?``:n||typeof t!=`number`||t===0||Oe.hasOwnProperty(e)&&Oe[e]?(``+t).trim():t+`px`}function Ae(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var r=n.indexOf(`--`)===0,i=ke(n,t[n],r);n===`float`&&(n=`cssFloat`),r?e.setProperty(n,i):e[n]=i}}var je=F({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function Ne(e,t){if(t){if(je[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(i(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(i(60));if(typeof t.dangerouslySetInnerHTML!=`object`||!(`__html`in t.dangerouslySetInnerHTML))throw Error(i(61))}if(t.style!=null&&typeof t.style!=`object`)throw Error(i(62))}}function H(e,t){if(e.indexOf(`-`)===-1)return typeof t.is==`string`;switch(e){case`annotation-xml`:case`color-profile`:case`font-face`:case`font-face-src`:case`font-face-uri`:case`font-face-format`:case`font-face-name`:case`missing-glyph`:return!1;default:return!0}}var Pe=null;function U(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var W=null,Fe=null,Ie=null;function Le(e){if(e=Pi(e)){if(typeof W!=`function`)throw Error(i(280));var t=e.stateNode;t&&(t=Ii(t),W(e.stateNode,e.type,t))}}function Re(e){Fe?Ie?Ie.push(e):Ie=[e]:Fe=e}function ze(){if(Fe){var e=Fe,t=Ie;if(Ie=Fe=null,Le(e),t)for(e=0;e<t.length;e++)Le(t[e])}}function Be(e,t){return e(t)}function Ve(){}var He=!1;function Ue(e,t,n){if(He)return e(t,n);He=!0;try{return Be(e,t,n)}finally{He=!1,(Fe!==null||Ie!==null)&&(Ve(),ze())}}function We(e,t){var n=e.stateNode;if(n===null)return null;var r=Ii(n);if(r===null)return null;n=r[t];a:switch(t){case`onClick`:case`onClickCapture`:case`onDoubleClick`:case`onDoubleClickCapture`:case`onMouseDown`:case`onMouseDownCapture`:case`onMouseMove`:case`onMouseMoveCapture`:case`onMouseUp`:case`onMouseUpCapture`:case`onMouseEnter`:(r=!r.disabled)||(e=e.type,r=!(e===`button`||e===`input`||e===`select`||e===`textarea`)),e=!r;break a;default:e=!1}if(e)return null;if(n&&typeof n!=`function`)throw Error(i(231,t,typeof n));return n}var Ge=!1;if(l)try{var Ke={};Object.defineProperty(Ke,"passive",{get:function(){Ge=!0}}),window.addEventListener(`test`,Ke,Ke),window.removeEventListener(`test`,Ke,Ke)}catch{Ge=!1}function qe(e,t,n,r,i,a,o,s,c){var l=Array.prototype.slice.call(arguments,3);try{t.apply(n,l)}catch(e){this.onError(e)}}var Je=!1,Ye=null,Xe=!1,Ze=null,Qe={onError:function(e){Je=!0,Ye=e}};function $e(e,t,n,r,i,a,o,s,c){Je=!1,Ye=null,qe.apply(Qe,arguments)}function et(e,t,n,r,a,o,s,c,l){if($e.apply(this,arguments),Je){if(Je){var u=Ye;Je=!1,Ye=null}else throw Error(i(198));Xe||(Xe=!0,Ze=u)}}function tt(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function nt(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function rt(e){if(tt(e)!==e)throw Error(i(188))}function it(e){var t=e.alternate;if(!t){if(t=tt(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var o=a.alternate;if(o===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===o.child){for(o=a.child;o;){if(o===n)return rt(a),e;if(o===r)return rt(a),t;o=o.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=o;else{for(var s=!1,c=a.child;c;){if(c===n){s=!0,n=a,r=o;break}if(c===r){s=!0,r=a,n=o;break}c=c.sibling}if(!s){for(c=o.child;c;){if(c===n){s=!0,n=o,r=a;break}if(c===r){s=!0,r=o,n=a;break}c=c.sibling}if(!s)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function at(e){return e=it(e),e===null?null:G(e)}function G(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=G(e);if(t!==null)return t;e=e.sibling}return null}var ot=r.unstable_scheduleCallback,st=r.unstable_cancelCallback,ct=r.unstable_shouldYield,lt=r.unstable_requestPaint,K=r.unstable_now,ut=r.unstable_getCurrentPriorityLevel,dt=r.unstable_ImmediatePriority,ft=r.unstable_UserBlockingPriority,pt=r.unstable_NormalPriority,mt=r.unstable_LowPriority,ht=r.unstable_IdlePriority,gt=null,_t=null;function vt(e){if(_t&&typeof _t.onCommitFiberRoot==`function`)try{_t.onCommitFiberRoot(gt,e,void 0,(e.current.flags&128)==128)}catch{}}var yt=Math.clz32?Math.clz32:St,bt=Math.log,xt=Math.LN2;function St(e){return e>>>=0,e===0?32:31-(bt(e)/xt|0)|0}var Ct=64,wt=4194304;function Tt(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Et(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,i=e.suspendedLanes,a=e.pingedLanes,o=n&268435455;if(o!==0){var s=o&~i;s===0?(a&=o,a!==0&&(r=Tt(a))):r=Tt(s)}else o=n&~i,o===0?a!==0&&(r=Tt(a)):r=Tt(o);if(r===0)return 0;if(t!==0&&t!==r&&(t&i)===0&&(i=r&-r,a=t&-t,i>=a||i===16&&a&4194240))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0<t;)n=31-yt(t),i=1<<n,r|=e[n],t&=~i;return r}function Dt(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Ot(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes;0<a;){var o=31-yt(a),s=1<<o,c=i[o];c===-1?((s&n)===0||(s&r)!==0)&&(i[o]=Dt(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}}function kt(e){return e=e.pendingLanes&-1073741825,e===0?e&1073741824?1073741824:0:e}function At(){var e=Ct;return Ct<<=1,!(Ct&4194240)&&(Ct=64),e}function jt(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Mt(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-yt(t),e[t]=n}function Nt(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0<n;){var i=31-yt(n),a=1<<i;t[i]=0,r[i]=-1,e[i]=-1,n&=~a}}function Pt(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-yt(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}var q=0;function Ft(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var It,Lt,Rt,zt,Bt,Vt=!1,Ht=[],Ut=null,Wt=null,Gt=null,Kt=new Map,qt=new Map,Jt=[],Yt=`mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit`.split(` `);function Xt(e,t){switch(e){case`focusin`:case`focusout`:Ut=null;break;case`dragenter`:case`dragleave`:Wt=null;break;case`mouseover`:case`mouseout`:Gt=null;break;case`pointerover`:case`pointerout`:Kt.delete(t.pointerId);break;case`gotpointercapture`:case`lostpointercapture`:qt.delete(t.pointerId)}}function Zt(e,t,n,r,i,a){return e===null||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[i]},t!==null&&(t=Pi(t),t!==null&&Lt(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function Qt(e,t,n,r,i){switch(t){case`focusin`:return Ut=Zt(Ut,e,t,n,r,i),!0;case`dragenter`:return Wt=Zt(Wt,e,t,n,r,i),!0;case`mouseover`:return Gt=Zt(Gt,e,t,n,r,i),!0;case`pointerover`:var a=i.pointerId;return Kt.set(a,Zt(Kt.get(a)||null,e,t,n,r,i)),!0;case`gotpointercapture`:return a=i.pointerId,qt.set(a,Zt(qt.get(a)||null,e,t,n,r,i)),!0}return!1}function $t(e){var t=Ni(e.target);if(t!==null){var n=tt(t);if(n!==null){if(t=n.tag,t===13){if(t=nt(n),t!==null){e.blockedOn=t,Bt(e.priority,function(){Rt(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function en(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=fn(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);Pe=r,n.target.dispatchEvent(r),Pe=null}else return t=Pi(n),t!==null&&Lt(t),e.blockedOn=n,!1;t.shift()}return!0}function tn(e,t,n){en(e)&&n.delete(t)}function nn(){Vt=!1,Ut!==null&&en(Ut)&&(Ut=null),Wt!==null&&en(Wt)&&(Wt=null),Gt!==null&&en(Gt)&&(Gt=null),Kt.forEach(tn),qt.forEach(tn)}function rn(e,t){e.blockedOn===t&&(e.blockedOn=null,Vt||(Vt=!0,r.unstable_scheduleCallback(r.unstable_NormalPriority,nn)))}function an(e){function t(t){return rn(t,e)}if(0<Ht.length){rn(Ht[0],e);for(var n=1;n<Ht.length;n++){var r=Ht[n];r.blockedOn===e&&(r.blockedOn=null)}}for(Ut!==null&&rn(Ut,e),Wt!==null&&rn(Wt,e),Gt!==null&&rn(Gt,e),Kt.forEach(t),qt.forEach(t),n=0;n<Jt.length;n++)r=Jt[n],r.blockedOn===e&&(r.blockedOn=null);for(;0<Jt.length&&(n=Jt[0],n.blockedOn===null);)$t(n),n.blockedOn===null&&Jt.shift()}var on=S.ReactCurrentBatchConfig,sn=!0;function cn(e,t,n,r){var i=q,a=on.transition;on.transition=null;try{q=1,un(e,t,n,r)}finally{q=i,on.transition=a}}function ln(e,t,n,r){var i=q,a=on.transition;on.transition=null;try{q=4,un(e,t,n,r)}finally{q=i,on.transition=a}}function un(e,t,n,r){if(sn){var i=fn(e,t,n,r);if(i===null)ai(e,t,r,dn,n),Xt(e,r);else if(Qt(i,e,t,n,r))r.stopPropagation();else if(Xt(e,r),t&4&&-1<Yt.indexOf(e)){for(;i!==null;){var a=Pi(i);if(a!==null&&It(a),a=fn(e,t,n,r),a===null&&ai(e,t,r,dn,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else ai(e,t,r,null,n)}}var dn=null;function fn(e,t,n,r){if(dn=null,e=U(r),e=Ni(e),e!==null)if(t=tt(e),t===null)e=null;else if(n=t.tag,n===13){if(e=nt(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return dn=e,null}function pn(e){switch(e){case`cancel`:case`click`:case`close`:case`contextmenu`:case`copy`:case`cut`:case`auxclick`:case`dblclick`:case`dragend`:case`dragstart`:case`drop`:case`focusin`:case`focusout`:case`input`:case`invalid`:case`keydown`:case`keypress`:case`keyup`:case`mousedown`:case`mouseup`:case`paste`:case`pause`:case`play`:case`pointercancel`:case`pointerdown`:case`pointerup`:case`ratechange`:case`reset`:case`resize`:case`seeked`:case`submit`:case`touchcancel`:case`touchend`:case`touchstart`:case`volumechange`:case`change`:case`selectionchange`:case`textInput`:case`compositionstart`:case`compositionend`:case`compositionupdate`:case`beforeblur`:case`afterblur`:case`beforeinput`:case`blur`:case`fullscreenchange`:case`focus`:case`hashchange`:case`popstate`:case`select`:case`selectstart`:return 1;case`drag`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`mousemove`:case`mouseout`:case`mouseover`:case`pointermove`:case`pointerout`:case`pointerover`:case`scroll`:case`toggle`:case`touchmove`:case`wheel`:case`mouseenter`:case`mouseleave`:case`pointerenter`:case`pointerleave`:return 4;case`message`:switch(ut()){case dt:return 1;case ft:return 4;case pt:case mt:return 16;case ht:return 536870912;default:return 16}default:return 16}}var mn=null,hn=null,gn=null;function _n(){if(gn)return gn;var e,t=hn,n=t.length,r,i=`value`in mn?mn.value:mn.textContent,a=i.length;for(e=0;e<n&&t[e]===i[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===i[a-r];r++);return gn=i.slice(e,1<r?1-r:void 0)}function vn(e){var t=e.keyCode;return`charCode`in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function yn(){return!0}function bn(){return!1}function xn(e){function t(t,n,r,i,a){for(var o in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=i,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(o)&&(t=e[o],this[o]=t?t(i):i[o]);return this.isDefaultPrevented=(i.defaultPrevented==null?!1===i.returnValue:i.defaultPrevented)?yn:bn,this.isPropagationStopped=bn,this}return F(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():typeof e.returnValue!=`unknown`&&(e.returnValue=!1),this.isDefaultPrevented=yn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():typeof e.cancelBubble!=`unknown`&&(e.cancelBubble=!0),this.isPropagationStopped=yn)},persist:function(){},isPersistent:yn}),t}var Sn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Cn=xn(Sn),wn=F({},Sn,{view:0,detail:0}),Tn=xn(wn),En,Dn,On,kn=F({},wn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Bn,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return`movementX`in e?e.movementX:(e!==On&&(On&&e.type===`mousemove`?(En=e.screenX-On.screenX,Dn=e.screenY-On.screenY):Dn=En=0,On=e),En)},movementY:function(e){return`movementY`in e?e.movementY:Dn}}),An=xn(kn),jn=xn(F({},kn,{dataTransfer:0})),Mn=xn(F({},wn,{relatedTarget:0})),Nn=xn(F({},Sn,{animationName:0,elapsedTime:0,pseudoElement:0})),Pn=xn(F({},Sn,{clipboardData:function(e){return`clipboardData`in e?e.clipboardData:window.clipboardData}})),Fn=xn(F({},Sn,{data:0})),In={Esc:`Escape`,Spacebar:` `,Left:`ArrowLeft`,Up:`ArrowUp`,Right:`ArrowRight`,Down:`ArrowDown`,Del:`Delete`,Win:`OS`,Menu:`ContextMenu`,Apps:`ContextMenu`,Scroll:`ScrollLock`,MozPrintableKey:`Unidentified`},Ln={8:`Backspace`,9:`Tab`,12:`Clear`,13:`Enter`,16:`Shift`,17:`Control`,18:`Alt`,19:`Pause`,20:`CapsLock`,27:`Escape`,32:` `,33:`PageUp`,34:`PageDown`,35:`End`,36:`Home`,37:`ArrowLeft`,38:`ArrowUp`,39:`ArrowRight`,40:`ArrowDown`,45:`Insert`,46:`Delete`,112:`F1`,113:`F2`,114:`F3`,115:`F4`,116:`F5`,117:`F6`,118:`F7`,119:`F8`,120:`F9`,121:`F10`,122:`F11`,123:`F12`,144:`NumLock`,145:`ScrollLock`,224:`Meta`},Rn={Alt:`altKey`,Control:`ctrlKey`,Meta:`metaKey`,Shift:`shiftKey`};function zn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Rn[e])?!!t[e]:!1}function Bn(){return zn}var Vn=xn(F({},wn,{key:function(e){if(e.key){var t=In[e.key]||e.key;if(t!==`Unidentified`)return t}return e.type===`keypress`?(e=vn(e),e===13?`Enter`:String.fromCharCode(e)):e.type===`keydown`||e.type===`keyup`?Ln[e.keyCode]||`Unidentified`:``},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Bn,charCode:function(e){return e.type===`keypress`?vn(e):0},keyCode:function(e){return e.type===`keydown`||e.type===`keyup`?e.keyCode:0},which:function(e){return e.type===`keypress`?vn(e):e.type===`keydown`||e.type===`keyup`?e.keyCode:0}})),Hn=xn(F({},kn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Un=xn(F({},wn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Bn})),Wn=xn(F({},Sn,{propertyName:0,elapsedTime:0,pseudoElement:0})),Gn=xn(F({},kn,{deltaX:function(e){return`deltaX`in e?e.deltaX:`wheelDeltaX`in e?-e.wheelDeltaX:0},deltaY:function(e){return`deltaY`in e?e.deltaY:`wheelDeltaY`in e?-e.wheelDeltaY:`wheelDelta`in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0})),Kn=[9,13,27,32],qn=l&&`CompositionEvent`in window,Jn=null;l&&`documentMode`in document&&(Jn=document.documentMode);var Yn=l&&`TextEvent`in window&&!Jn,Xn=l&&(!qn||Jn&&8<Jn&&11>=Jn),Zn=` `,Qn=!1;function $n(e,t){switch(e){case`keyup`:return Kn.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function er(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var tr=!1;function nr(e,t){switch(e){case`compositionend`:return er(t);case`keypress`:return t.which===32?(Qn=!0,Zn):null;case`textInput`:return e=t.data,e===Zn&&Qn?null:e;default:return null}}function rr(e,t){if(tr)return e===`compositionend`||!qn&&$n(e,t)?(e=_n(),gn=hn=mn=null,tr=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case`compositionend`:return Xn&&t.locale!==`ko`?null:t.data;default:return null}}var ir={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function ar(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t===`input`?!!ir[e.type]:t===`textarea`}function or(e,t,n,r){Re(r),t=si(t,`onChange`),0<t.length&&(n=new Cn(`onChange`,`change`,null,n,r),e.push({event:n,listeners:t}))}var sr=null,cr=null;function lr(e){ei(e,0)}function ur(e){if(ue(Fi(e)))return e}function dr(e,t){if(e===`change`)return t}var fr=!1;if(l){var pr;if(l){var mr=`oninput`in document;if(!mr){var hr=document.createElement(`div`);hr.setAttribute(`oninput`,`return;`),mr=typeof hr.oninput==`function`}pr=mr}else pr=!1;fr=pr&&(!document.documentMode||9<document.documentMode)}function gr(){sr&&(sr.detachEvent(`onpropertychange`,_r),cr=sr=null)}function _r(e){if(e.propertyName===`value`&&ur(cr)){var t=[];or(t,cr,e,U(e)),Ue(lr,t)}}function vr(e,t,n){e===`focusin`?(gr(),sr=t,cr=n,sr.attachEvent(`onpropertychange`,_r)):e===`focusout`&&gr()}function yr(e){if(e===`selectionchange`||e===`keyup`||e===`keydown`)return ur(cr)}function br(e,t){if(e===`click`)return ur(t)}function xr(e,t){if(e===`input`||e===`change`)return ur(t)}function Sr(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var Cr=typeof Object.is==`function`?Object.is:Sr;function wr(e,t){if(Cr(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var i=n[r];if(!u.call(t,i)||!Cr(e[i],t[i]))return!1}return!0}function Tr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Er(e,t){var n=Tr(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=Tr(n)}}function Dr(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Dr(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Or(){for(var e=window,t=de();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=de(e.document)}return t}function kr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}function Ar(e){var t=Or(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Dr(n.ownerDocument.documentElement,n)){if(r!==null&&kr(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),`selectionStart`in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var i=n.textContent.length,a=Math.min(r.start,i);r=r.end===void 0?a:Math.min(r.end,i),!e.extend&&a>r&&(i=r,r=a,a=i),i=Er(n,a);var o=Er(n,r);i&&o&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==o.node||e.focusOffset!==o.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),a>r?(e.addRange(t),e.extend(o.node,o.offset)):(t.setEnd(o.node,o.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus==`function`&&n.focus(),n=0;n<t.length;n++)e=t[n],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var jr=l&&`documentMode`in document&&11>=document.documentMode,Mr=null,Nr=null,Pr=null,Fr=!1;function Ir(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Fr||Mr==null||Mr!==de(r)||(r=Mr,`selectionStart`in r&&kr(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Pr&&wr(Pr,r)||(Pr=r,r=si(Nr,`onSelect`),0<r.length&&(t=new Cn(`onSelect`,`select`,null,t,n),e.push({event:t,listeners:r}),t.target=Mr)))}function Lr(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n[`Webkit`+e]=`webkit`+t,n[`Moz`+e]=`moz`+t,n}var Rr={animationend:Lr(`Animation`,`AnimationEnd`),animationiteration:Lr(`Animation`,`AnimationIteration`),animationstart:Lr(`Animation`,`AnimationStart`),transitionend:Lr(`Transition`,`TransitionEnd`)},zr={},Br={};l&&(Br=document.createElement(`div`).style,`AnimationEvent`in window||(delete Rr.animationend.animation,delete Rr.animationiteration.animation,delete Rr.animationstart.animation),`TransitionEvent`in window||delete Rr.transitionend.transition);function Vr(e){if(zr[e])return zr[e];if(!Rr[e])return e;var t=Rr[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in Br)return zr[e]=t[n];return e}var Hr=Vr(`animationend`),Ur=Vr(`animationiteration`),Wr=Vr(`animationstart`),Gr=Vr(`transitionend`),Kr=new Map,qr=`abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel`.split(` `);function Jr(e,t){Kr.set(e,t),s(t,[e])}for(var Yr=0;Yr<qr.length;Yr++){var Xr=qr[Yr];Jr(Xr.toLowerCase(),`on`+(Xr[0].toUpperCase()+Xr.slice(1)))}Jr(Hr,`onAnimationEnd`),Jr(Ur,`onAnimationIteration`),Jr(Wr,`onAnimationStart`),Jr(`dblclick`,`onDoubleClick`),Jr(`focusin`,`onFocus`),Jr(`focusout`,`onBlur`),Jr(Gr,`onTransitionEnd`),c(`onMouseEnter`,[`mouseout`,`mouseover`]),c(`onMouseLeave`,[`mouseout`,`mouseover`]),c(`onPointerEnter`,[`pointerout`,`pointerover`]),c(`onPointerLeave`,[`pointerout`,`pointerover`]),s(`onChange`,`change click focusin focusout input keydown keyup selectionchange`.split(` `)),s(`onSelect`,`focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange`.split(` `)),s(`onBeforeInput`,[`compositionend`,`keypress`,`textInput`,`paste`]),s(`onCompositionEnd`,`compositionend focusout keydown keypress keyup mousedown`.split(` `)),s(`onCompositionStart`,`compositionstart focusout keydown keypress keyup mousedown`.split(` `)),s(`onCompositionUpdate`,`compositionupdate focusout keydown keypress keyup mousedown`.split(` `));var Zr=`abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting`.split(` `),Qr=new Set(`cancel close invalid load scroll toggle`.split(` `).concat(Zr));function $r(e,t,n){var r=e.type||`unknown-event`;e.currentTarget=n,et(r,t,void 0,e),e.currentTarget=null}function ei(e,t){t=(t&4)!=0;for(var n=0;n<e.length;n++){var r=e[n],i=r.event;r=r.listeners;a:{var a=void 0;if(t)for(var o=r.length-1;0<=o;o--){var s=r[o],c=s.instance,l=s.currentTarget;if(s=s.listener,c!==a&&i.isPropagationStopped())break a;$r(i,s,l),a=c}else for(o=0;o<r.length;o++){if(s=r[o],c=s.instance,l=s.currentTarget,s=s.listener,c!==a&&i.isPropagationStopped())break a;$r(i,s,l),a=c}}}if(Xe)throw e=Ze,Xe=!1,Ze=null,e}function J(e,t){var n=t[Ai];n===void 0&&(n=t[Ai]=new Set);var r=e+`__bubble`;n.has(r)||(ii(t,e,2,!1),n.add(r))}function ti(e,t,n){var r=0;t&&(r|=4),ii(n,e,r,t)}var ni=`_reactListening`+Math.random().toString(36).slice(2);function ri(e){if(!e[ni]){e[ni]=!0,a.forEach(function(t){t!==`selectionchange`&&(Qr.has(t)||ti(t,!1,e),ti(t,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[ni]||(t[ni]=!0,ti(`selectionchange`,!1,t))}}function ii(e,t,n,r){switch(pn(t)){case 1:var i=cn;break;case 4:i=ln;break;default:i=un}n=i.bind(null,t,n,e),i=void 0,!Ge||t!==`touchstart`&&t!==`touchmove`&&t!==`wheel`||(i=!0),r?i===void 0?e.addEventListener(t,n,!0):e.addEventListener(t,n,{capture:!0,passive:i}):i===void 0?e.addEventListener(t,n,!1):e.addEventListener(t,n,{passive:i})}function ai(e,t,n,r,i){var a=r;if(!(t&1)&&!(t&2)&&r!==null)a:for(;;){if(r===null)return;var o=r.tag;if(o===3||o===4){var s=r.stateNode.containerInfo;if(s===i||s.nodeType===8&&s.parentNode===i)break;if(o===4)for(o=r.return;o!==null;){var c=o.tag;if((c===3||c===4)&&(c=o.stateNode.containerInfo,c===i||c.nodeType===8&&c.parentNode===i))return;o=o.return}for(;s!==null;){if(o=Ni(s),o===null)return;if(c=o.tag,c===5||c===6){r=a=o;continue a}s=s.parentNode}}r=r.return}Ue(function(){var r=a,i=U(n),o=[];a:{var s=Kr.get(e);if(s!==void 0){var c=Cn,l=e;switch(e){case`keypress`:if(vn(n)===0)break a;case`keydown`:case`keyup`:c=Vn;break;case`focusin`:l=`focus`,c=Mn;break;case`focusout`:l=`blur`,c=Mn;break;case`beforeblur`:case`afterblur`:c=Mn;break;case`click`:if(n.button===2)break a;case`auxclick`:case`dblclick`:case`mousedown`:case`mousemove`:case`mouseup`:case`mouseout`:case`mouseover`:case`contextmenu`:c=An;break;case`drag`:case`dragend`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`dragstart`:case`drop`:c=jn;break;case`touchcancel`:case`touchend`:case`touchmove`:case`touchstart`:c=Un;break;case Hr:case Ur:case Wr:c=Nn;break;case Gr:c=Wn;break;case`scroll`:c=Tn;break;case`wheel`:c=Gn;break;case`copy`:case`cut`:case`paste`:c=Pn;break;case`gotpointercapture`:case`lostpointercapture`:case`pointercancel`:case`pointerdown`:case`pointermove`:case`pointerout`:case`pointerover`:case`pointerup`:c=Hn}var u=(t&4)!=0,d=!u&&e===`scroll`,f=u?s===null?null:s+`Capture`:s;u=[];for(var p=r,m;p!==null;){m=p;var h=m.stateNode;if(m.tag===5&&h!==null&&(m=h,f!==null&&(h=We(p,f),h!=null&&u.push(oi(p,h,m)))),d)break;p=p.return}0<u.length&&(s=new c(s,l,null,n,i),o.push({event:s,listeners:u}))}}if(!(t&7)){a:{if(s=e===`mouseover`||e===`pointerover`,c=e===`mouseout`||e===`pointerout`,s&&n!==Pe&&(l=n.relatedTarget||n.fromElement)&&(Ni(l)||l[ki]))break a;if((c||s)&&(s=i.window===i?i:(s=i.ownerDocument)?s.defaultView||s.parentWindow:window,c?(l=n.relatedTarget||n.toElement,c=r,l=l?Ni(l):null,l!==null&&(d=tt(l),l!==d||l.tag!==5&&l.tag!==6)&&(l=null)):(c=null,l=r),c!==l)){if(u=An,h=`onMouseLeave`,f=`onMouseEnter`,p=`mouse`,(e===`pointerout`||e===`pointerover`)&&(u=Hn,h=`onPointerLeave`,f=`onPointerEnter`,p=`pointer`),d=c==null?s:Fi(c),m=l==null?s:Fi(l),s=new u(h,p+`leave`,c,n,i),s.target=d,s.relatedTarget=m,h=null,Ni(i)===r&&(u=new u(f,p+`enter`,l,n,i),u.target=m,u.relatedTarget=d,h=u),d=h,c&&l)b:{for(u=c,f=l,p=0,m=u;m;m=ci(m))p++;for(m=0,h=f;h;h=ci(h))m++;for(;0<p-m;)u=ci(u),p--;for(;0<m-p;)f=ci(f),m--;for(;p--;){if(u===f||f!==null&&u===f.alternate)break b;u=ci(u),f=ci(f)}u=null}else u=null;c!==null&&li(o,s,c,u,!1),l!==null&&d!==null&&li(o,d,l,u,!0)}}a:{if(s=r?Fi(r):window,c=s.nodeName&&s.nodeName.toLowerCase(),c===`select`||c===`input`&&s.type===`file`)var g=dr;else if(ar(s))if(fr)g=xr;else{g=yr;var _=vr}else (c=s.nodeName)&&c.toLowerCase()===`input`&&(s.type===`checkbox`||s.type===`radio`)&&(g=br);if(g&&=g(e,r)){or(o,g,n,i);break a}_&&_(e,s,r),e===`focusout`&&(_=s._wrapperState)&&_.controlled&&s.type===`number`&&_e(s,`number`,s.value)}switch(_=r?Fi(r):window,e){case`focusin`:(ar(_)||_.contentEditable===`true`)&&(Mr=_,Nr=r,Pr=null);break;case`focusout`:Pr=Nr=Mr=null;break;case`mousedown`:Fr=!0;break;case`contextmenu`:case`mouseup`:case`dragend`:Fr=!1,Ir(o,n,i);break;case`selectionchange`:if(jr)break;case`keydown`:case`keyup`:Ir(o,n,i)}var v;if(qn)b:{switch(e){case`compositionstart`:var y=`onCompositionStart`;break b;case`compositionend`:y=`onCompositionEnd`;break b;case`compositionupdate`:y=`onCompositionUpdate`;break b}y=void 0}else tr?$n(e,n)&&(y=`onCompositionEnd`):e===`keydown`&&n.keyCode===229&&(y=`onCompositionStart`);y&&(Xn&&n.locale!==`ko`&&(tr||y!==`onCompositionStart`?y===`onCompositionEnd`&&tr&&(v=_n()):(mn=i,hn=`value`in mn?mn.value:mn.textContent,tr=!0)),_=si(r,y),0<_.length&&(y=new Fn(y,e,null,n,i),o.push({event:y,listeners:_}),v?y.data=v:(v=er(n),v!==null&&(y.data=v)))),(v=Yn?nr(e,n):rr(e,n))&&(r=si(r,`onBeforeInput`),0<r.length&&(i=new Fn(`onBeforeInput`,`beforeinput`,null,n,i),o.push({event:i,listeners:r}),i.data=v))}ei(o,t)})}function oi(e,t,n){return{instance:e,listener:t,currentTarget:n}}function si(e,t){for(var n=t+`Capture`,r=[];e!==null;){var i=e,a=i.stateNode;i.tag===5&&a!==null&&(i=a,a=We(e,n),a!=null&&r.unshift(oi(e,a,i)),a=We(e,t),a!=null&&r.push(oi(e,a,i))),e=e.return}return r}function ci(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function li(e,t,n,r,i){for(var a=t._reactName,o=[];n!==null&&n!==r;){var s=n,c=s.alternate,l=s.stateNode;if(c!==null&&c===r)break;s.tag===5&&l!==null&&(s=l,i?(c=We(n,a),c!=null&&o.unshift(oi(n,c,s))):i||(c=We(n,a),c!=null&&o.push(oi(n,c,s)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var ui=/\r\n?/g,di=/\u0000|\uFFFD/g;function fi(e){return(typeof e==`string`?e:``+e).replace(ui,`
7
+ `).replace(di,``)}function pi(e,t,n){if(t=fi(t),fi(e)!==t&&n)throw Error(i(425))}function mi(){}var hi=null,gi=null;function _i(e,t){return e===`textarea`||e===`noscript`||typeof t.children==`string`||typeof t.children==`number`||typeof t.dangerouslySetInnerHTML==`object`&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var vi=typeof setTimeout==`function`?setTimeout:void 0,yi=typeof clearTimeout==`function`?clearTimeout:void 0,bi=typeof Promise==`function`?Promise:void 0,xi=typeof queueMicrotask==`function`?queueMicrotask:bi===void 0?vi:function(e){return bi.resolve(null).then(e).catch(Si)};function Si(e){setTimeout(function(){throw e})}function Ci(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8)if(n=i.data,n===`/$`){if(r===0){e.removeChild(i),an(t);return}r--}else n!==`$`&&n!==`$?`&&n!==`$!`||r++;n=i}while(n);an(t)}function wi(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t===`$`||t===`$!`||t===`$?`)break;if(t===`/$`)return null}}return e}function Ti(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`$`||n===`$!`||n===`$?`){if(t===0)return e;t--}else n===`/$`&&t++}e=e.previousSibling}return null}var Ei=Math.random().toString(36).slice(2),Di=`__reactFiber$`+Ei,Oi=`__reactProps$`+Ei,ki=`__reactContainer$`+Ei,Ai=`__reactEvents$`+Ei,ji=`__reactListeners$`+Ei,Mi=`__reactHandles$`+Ei;function Ni(e){var t=e[Di];if(t)return t;for(var n=e.parentNode;n;){if(t=n[ki]||n[Di]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=Ti(e);e!==null;){if(n=e[Di])return n;e=Ti(e)}return t}e=n,n=e.parentNode}return null}function Pi(e){return e=e[Di]||e[ki],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function Fi(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(i(33))}function Ii(e){return e[Oi]||null}var Li=[],Ri=-1;function zi(e){return{current:e}}function Y(e){0>Ri||(e.current=Li[Ri],Li[Ri]=null,Ri--)}function X(e,t){Ri++,Li[Ri]=e.current,e.current=t}var Bi={},Vi=zi(Bi),Hi=zi(!1),Ui=Bi;function Wi(e,t){var n=e.type.contextTypes;if(!n)return Bi;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i={},a;for(a in n)i[a]=t[a];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function Gi(e){return e=e.childContextTypes,e!=null}function Ki(){Y(Hi),Y(Vi)}function qi(e,t,n){if(Vi.current!==Bi)throw Error(i(168));X(Vi,t),X(Hi,n)}function Ji(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!=`function`)return n;for(var a in r=r.getChildContext(),r)if(!(a in t))throw Error(i(108,oe(e)||`Unknown`,a));return F({},n,r)}function Yi(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Bi,Ui=Vi.current,X(Vi,e),X(Hi,Hi.current),!0}function Xi(e,t,n){var r=e.stateNode;if(!r)throw Error(i(169));n?(e=Ji(e,t,Ui),r.__reactInternalMemoizedMergedChildContext=e,Y(Hi),Y(Vi),X(Vi,e)):Y(Hi),X(Hi,n)}var Zi=null,Qi=!1,$i=!1;function ea(e){Zi===null?Zi=[e]:Zi.push(e)}function ta(e){Qi=!0,ea(e)}function na(){if(!$i&&Zi!==null){$i=!0;var e=0,t=q;try{var n=Zi;for(q=1;e<n.length;e++){var r=n[e];do r=r(!0);while(r!==null)}Zi=null,Qi=!1}catch(t){throw Zi!==null&&(Zi=Zi.slice(e+1)),ot(dt,na),t}finally{q=t,$i=!1}}return null}var ra=[],ia=0,aa=null,oa=0,sa=[],ca=0,la=null,ua=1,da=``;function fa(e,t){ra[ia++]=oa,ra[ia++]=aa,aa=e,oa=t}function pa(e,t,n){sa[ca++]=ua,sa[ca++]=da,sa[ca++]=la,la=e;var r=ua;e=da;var i=32-yt(r)-1;r&=~(1<<i),n+=1;var a=32-yt(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,ua=1<<32-yt(t)+i|n<<i|r,da=a+e}else ua=1<<a|n<<i|r,da=e}function ma(e){e.return!==null&&(fa(e,1),pa(e,1,0))}function ha(e){for(;e===aa;)aa=ra[--ia],ra[ia]=null,oa=ra[--ia],ra[ia]=null;for(;e===la;)la=sa[--ca],sa[ca]=null,da=sa[--ca],sa[ca]=null,ua=sa[--ca],sa[ca]=null}var ga=null,_a=null,va=!1,ya=null;function ba(e,t){var n=ql(5,null,null,0);n.elementType=`DELETED`,n.stateNode=t,n.return=e,t=e.deletions,t===null?(e.deletions=[n],e.flags|=16):t.push(n)}function xa(e,t){switch(e.tag){case 5:var n=e.type;return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t===null?!1:(e.stateNode=t,ga=e,_a=wi(t.firstChild),!0);case 6:return t=e.pendingProps===``||t.nodeType!==3?null:t,t===null?!1:(e.stateNode=t,ga=e,_a=null,!0);case 13:return t=t.nodeType===8?t:null,t===null?!1:(n=la===null?null:{id:ua,overflow:da},e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},n=ql(18,null,null,0),n.stateNode=t,n.return=e,e.child=n,ga=e,_a=null,!0);default:return!1}}function Sa(e){return(e.mode&1)!=0&&(e.flags&128)==0}function Ca(e){if(va){var t=_a;if(t){var n=t;if(!xa(e,t)){if(Sa(e))throw Error(i(418));t=wi(n.nextSibling);var r=ga;t&&xa(e,t)?ba(r,n):(e.flags=e.flags&-4097|2,va=!1,ga=e)}}else{if(Sa(e))throw Error(i(418));e.flags=e.flags&-4097|2,va=!1,ga=e}}}function wa(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;ga=e}function Ta(e){if(e!==ga)return!1;if(!va)return wa(e),va=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!==`head`&&t!==`body`&&!_i(e.type,e.memoizedProps)),t&&=_a){if(Sa(e))throw Ea(),Error(i(418));for(;t;)ba(e,t),t=wi(t.nextSibling)}if(wa(e),e.tag===13){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));a:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`/$`){if(t===0){_a=wi(e.nextSibling);break a}t--}else n!==`$`&&n!==`$!`&&n!==`$?`||t++}e=e.nextSibling}_a=null}}else _a=ga?wi(e.stateNode.nextSibling):null;return!0}function Ea(){for(var e=_a;e;)e=wi(e.nextSibling)}function Da(){_a=ga=null,va=!1}function Oa(e){ya===null?ya=[e]:ya.push(e)}var ka=S.ReactCurrentBatchConfig;function Aa(e,t,n){if(e=n.ref,e!==null&&typeof e!=`function`&&typeof e!=`object`){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(i(309));var r=n.stateNode}if(!r)throw Error(i(147,e));var a=r,o=``+e;return t!==null&&t.ref!==null&&typeof t.ref==`function`&&t.ref._stringRef===o?t.ref:(t=function(e){var t=a.refs;e===null?delete t[o]:t[o]=e},t._stringRef=o,t)}if(typeof e!=`string`)throw Error(i(284));if(!n._owner)throw Error(i(290,e))}return e}function ja(e,t){throw e=Object.prototype.toString.call(t),Error(i(31,e===`[object Object]`?`object with keys {`+Object.keys(t).join(`, `)+`}`:e))}function Ma(e){var t=e._init;return t(e._payload)}function Na(e){function t(t,n){if(e){var r=t.deletions;r===null?(t.deletions=[n],t.flags|=16):r.push(n)}}function n(n,r){if(!e)return null;for(;r!==null;)t(n,r),r=r.sibling;return null}function r(e,t){for(e=new Map;t!==null;)t.key===null?e.set(t.index,t):e.set(t.key,t),t=t.sibling;return e}function a(e,t){return e=Xl(e,t),e.index=0,e.sibling=null,e}function o(t,n,r){return t.index=r,e?(r=t.alternate,r===null?(t.flags|=2,n):(r=r.index,r<n?(t.flags|=2,n):r)):(t.flags|=1048576,n)}function s(t){return e&&t.alternate===null&&(t.flags|=2),t}function c(e,t,n,r){return t===null||t.tag!==6?(t=eu(n,e.mode,r),t.return=e,t):(t=a(t,n),t.return=e,t)}function l(e,t,n,r){var i=n.type;return i===T?d(e,t,n.props.children,r,n.key):t!==null&&(t.elementType===i||typeof i==`object`&&i&&i.$$typeof===N&&Ma(i)===t.type)?(r=a(t,n.props),r.ref=Aa(e,t,n),r.return=e,r):(r=Zl(n.type,n.key,n.props,null,e.mode,r),r.ref=Aa(e,t,n),r.return=e,r)}function u(e,t,n,r){return t===null||t.tag!==4||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?(t=tu(n,e.mode,r),t.return=e,t):(t=a(t,n.children||[]),t.return=e,t)}function d(e,t,n,r,i){return t===null||t.tag!==7?(t=Ql(n,e.mode,r,i),t.return=e,t):(t=a(t,n),t.return=e,t)}function f(e,t,n){if(typeof t==`string`&&t!==``||typeof t==`number`)return t=eu(``+t,e.mode,n),t.return=e,t;if(typeof t==`object`&&t){switch(t.$$typeof){case C:return n=Zl(t.type,t.key,t.props,null,e.mode,n),n.ref=Aa(e,null,t),n.return=e,n;case w:return t=tu(t,e.mode,n),t.return=e,t;case N:var r=t._init;return f(e,r(t._payload),n)}if(ve(t)||P(t))return t=Ql(t,e.mode,n,null),t.return=e,t;ja(e,t)}return null}function p(e,t,n,r){var i=t===null?null:t.key;if(typeof n==`string`&&n!==``||typeof n==`number`)return i===null?c(e,t,``+n,r):null;if(typeof n==`object`&&n){switch(n.$$typeof){case C:return n.key===i?l(e,t,n,r):null;case w:return n.key===i?u(e,t,n,r):null;case N:return i=n._init,p(e,t,i(n._payload),r)}if(ve(n)||P(n))return i===null?d(e,t,n,r,null):null;ja(e,n)}return null}function m(e,t,n,r,i){if(typeof r==`string`&&r!==``||typeof r==`number`)return e=e.get(n)||null,c(t,e,``+r,i);if(typeof r==`object`&&r){switch(r.$$typeof){case C:return e=e.get(r.key===null?n:r.key)||null,l(t,e,r,i);case w:return e=e.get(r.key===null?n:r.key)||null,u(t,e,r,i);case N:var a=r._init;return m(e,t,n,a(r._payload),i)}if(ve(r)||P(r))return e=e.get(n)||null,d(t,e,r,i,null);ja(t,r)}return null}function h(i,a,s,c){for(var l=null,u=null,d=a,h=a=0,g=null;d!==null&&h<s.length;h++){d.index>h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),a=o(_,a,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),va&&fa(i,h),l;if(d===null){for(;h<s.length;h++)d=f(i,s[h],c),d!==null&&(a=o(d,a,h),u===null?l=d:u.sibling=d,u=d);return va&&fa(i,h),l}for(d=r(i,d);h<s.length;h++)g=m(d,i,h,s[h],c),g!==null&&(e&&g.alternate!==null&&d.delete(g.key===null?h:g.key),a=o(g,a,h),u===null?l=g:u.sibling=g,u=g);return e&&d.forEach(function(e){return t(i,e)}),va&&fa(i,h),l}function g(a,s,c,l){var u=P(c);if(typeof u!=`function`)throw Error(i(150));if(c=u.call(c),c==null)throw Error(i(151));for(var d=u=null,h=s,g=s=0,_=null,v=c.next();h!==null&&!v.done;g++,v=c.next()){h.index>g?(_=h,h=null):_=h.sibling;var y=p(a,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(a,h),s=o(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(a,h),va&&fa(a,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(a,v.value,l),v!==null&&(s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return va&&fa(a,g),u}for(h=r(a,h);!v.done;g++,v=c.next())v=m(h,a,g,v.value,l),v!==null&&(e&&v.alternate!==null&&h.delete(v.key===null?g:v.key),s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(a,e)}),va&&fa(a,g),u}function _(e,r,i,o){if(typeof i==`object`&&i&&i.type===T&&i.key===null&&(i=i.props.children),typeof i==`object`&&i){switch(i.$$typeof){case C:a:{for(var c=i.key,l=r;l!==null;){if(l.key===c){if(c=i.type,c===T){if(l.tag===7){n(e,l.sibling),r=a(l,i.props.children),r.return=e,e=r;break a}}else if(l.elementType===c||typeof c==`object`&&c&&c.$$typeof===N&&Ma(c)===l.type){n(e,l.sibling),r=a(l,i.props),r.ref=Aa(e,l,i),r.return=e,e=r;break a}n(e,l);break}else t(e,l);l=l.sibling}i.type===T?(r=Ql(i.props.children,e.mode,o,i.key),r.return=e,e=r):(o=Zl(i.type,i.key,i.props,null,e.mode,o),o.ref=Aa(e,r,i),o.return=e,e=o)}return s(e);case w:a:{for(l=i.key;r!==null;){if(r.key===l)if(r.tag===4&&r.stateNode.containerInfo===i.containerInfo&&r.stateNode.implementation===i.implementation){n(e,r.sibling),r=a(r,i.children||[]),r.return=e,e=r;break a}else{n(e,r);break}else t(e,r);r=r.sibling}r=tu(i,e.mode,o),r.return=e,e=r}return s(e);case N:return l=i._init,_(e,r,l(i._payload),o)}if(ve(i))return h(e,r,i,o);if(P(i))return g(e,r,i,o);ja(e,i)}return typeof i==`string`&&i!==``||typeof i==`number`?(i=``+i,r!==null&&r.tag===6?(n(e,r.sibling),r=a(r,i),r.return=e,e=r):(n(e,r),r=eu(i,e.mode,o),r.return=e,e=r),s(e)):n(e,r)}return _}var Pa=Na(!0),Fa=Na(!1),Ia=zi(null),La=null,Ra=null,za=null;function Ba(){za=Ra=La=null}function Va(e){var t=Ia.current;Y(Ia),e._currentValue=t}function Ha(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)===t?r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t):(e.childLanes|=t,r!==null&&(r.childLanes|=t)),e===n)break;e=e.return}}function Ua(e,t){La=e,za=Ra=null,e=e.dependencies,e!==null&&e.firstContext!==null&&((e.lanes&t)!==0&&(Ns=!0),e.firstContext=null)}function Wa(e){var t=e._currentValue;if(za!==e)if(e={context:e,memoizedValue:t,next:null},Ra===null){if(La===null)throw Error(i(308));Ra=e,La.dependencies={lanes:0,firstContext:e}}else Ra=Ra.next=e;return t}var Ga=null;function Ka(e){Ga===null?Ga=[e]:Ga.push(e)}function qa(e,t,n,r){var i=t.interleaved;return i===null?(n.next=n,Ka(t)):(n.next=i.next,i.next=n),t.interleaved=n,Ja(e,r)}function Ja(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var Ya=!1;function Xa(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Za(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Qa(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function $a(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,Q&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,Ja(e,n)}return i=r.interleaved,i===null?(t.next=t,Ka(r)):(t.next=i.next,i.next=t),r.interleaved=t,Ja(e,n)}function eo(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194240)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Pt(e,n)}}function to(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function no(e,t,n,r){var i=e.updateQueue;Ya=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane,p=s.eventTime;if((r&f)===f){u!==null&&(u=u.next={eventTime:p,lane:0,tag:s.tag,payload:s.payload,callback:s.callback,next:null});a:{var m=e,h=s;switch(f=t,p=n,h.tag){case 1:if(m=h.payload,typeof m==`function`){d=m.call(p,d,f);break a}d=m;break a;case 3:m.flags=m.flags&-65537|128;case 0:if(m=h.payload,f=typeof m==`function`?m.call(p,d,f):m,f==null)break a;d=F({},d,f);break a;case 2:Ya=!0}}s.callback!==null&&s.lane!==0&&(e.flags|=64,f=i.effects,f===null?i.effects=[s]:f.push(s))}else p={eventTime:p,lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=p,c=d):u=u.next=p,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;f=s,s=f.next,f.next=null,i.lastBaseUpdate=f,i.shared.pending=null}}while(1);if(u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,t=i.shared.interleaved,t!==null){i=t;do o|=i.lane,i=i.next;while(i!==t)}else a===null&&(i.shared.lanes=0);Yc|=o,e.lanes=o,e.memoizedState=d}}function ro(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var r=e[t],a=r.callback;if(a!==null){if(r.callback=null,r=n,typeof a!=`function`)throw Error(i(191,a));a.call(r)}}}var io={},ao=zi(io),oo=zi(io),so=zi(io);function co(e){if(e===io)throw Error(i(174));return e}function lo(e,t){switch(X(so,t),X(oo,e),X(ao,io),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:we(null,``);break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=we(t,e)}Y(ao),X(ao,t)}function uo(){Y(ao),Y(oo),Y(so)}function fo(e){co(so.current);var t=co(ao.current),n=we(t,e.type);t!==n&&(X(oo,e),X(ao,n))}function po(e){oo.current===e&&(Y(ao),Y(oo))}var mo=zi(0);function ho(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data===`$?`||n.data===`$!`))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var go=[];function _o(){for(var e=0;e<go.length;e++)go[e]._workInProgressVersionPrimary=null;go.length=0}var vo=S.ReactCurrentDispatcher,yo=S.ReactCurrentBatchConfig,bo=0,xo=null,So=null,Co=null,wo=!1,To=!1,Eo=0,Do=0;function Oo(){throw Error(i(321))}function ko(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!Cr(e[n],t[n]))return!1;return!0}function Ao(e,t,n,r,a,o){if(bo=o,xo=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,vo.current=e===null||e.memoizedState===null?ps:ms,e=n(r,a),To){o=0;do{if(To=!1,Eo=0,25<=o)throw Error(i(301));o+=1,Co=So=null,t.updateQueue=null,vo.current=hs,e=n(r,a)}while(To)}if(vo.current=fs,t=So!==null&&So.next!==null,bo=0,Co=So=xo=null,wo=!1,t)throw Error(i(300));return e}function jo(){var e=Eo!==0;return Eo=0,e}function Mo(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Co===null?xo.memoizedState=Co=e:Co=Co.next=e,Co}function No(){if(So===null){var e=xo.alternate;e=e===null?null:e.memoizedState}else e=So.next;var t=Co===null?xo.memoizedState:Co.next;if(t!==null)Co=t,So=e;else{if(e===null)throw Error(i(310));So=e,e={memoizedState:So.memoizedState,baseState:So.baseState,baseQueue:So.baseQueue,queue:So.queue,next:null},Co===null?xo.memoizedState=Co=e:Co=Co.next=e}return Co}function Po(e,t){return typeof t==`function`?t(e):t}function Fo(e){var t=No(),n=t.queue;if(n===null)throw Error(i(311));n.lastRenderedReducer=e;var r=So,a=r.baseQueue,o=n.pending;if(o!==null){if(a!==null){var s=a.next;a.next=o.next,o.next=s}r.baseQueue=a=o,n.pending=null}if(a!==null){o=a.next,r=r.baseState;var c=s=null,l=null,u=o;do{var d=u.lane;if((bo&d)===d)l!==null&&(l=l.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),r=u.hasEagerState?u.eagerState:e(r,u.action);else{var f={lane:d,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};l===null?(c=l=f,s=r):l=l.next=f,xo.lanes|=d,Yc|=d}u=u.next}while(u!==null&&u!==o);l===null?s=r:l.next=c,Cr(r,t.memoizedState)||(Ns=!0),t.memoizedState=r,t.baseState=s,t.baseQueue=l,n.lastRenderedState=r}if(e=n.interleaved,e!==null){a=e;do o=a.lane,xo.lanes|=o,Yc|=o,a=a.next;while(a!==e)}else a===null&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function Io(e){var t=No(),n=t.queue;if(n===null)throw Error(i(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,o=t.memoizedState;if(a!==null){n.pending=null;var s=a=a.next;do o=e(o,s.action),s=s.next;while(s!==a);Cr(o,t.memoizedState)||(Ns=!0),t.memoizedState=o,t.baseQueue===null&&(t.baseState=o),n.lastRenderedState=o}return[o,r]}function Lo(){}function Ro(e,t){var n=xo,r=No(),a=t(),o=!Cr(r.memoizedState,a);if(o&&(r.memoizedState=a,Ns=!0),r=r.queue,Xo(Vo.bind(null,n,r,e),[e]),r.getSnapshot!==t||o||Co!==null&&Co.memoizedState.tag&1){if(n.flags|=2048,Go(9,Bo.bind(null,n,r,a,t),void 0,null),Hc===null)throw Error(i(349));bo&30||zo(n,t,a)}return a}function zo(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=xo.updateQueue,t===null?(t={lastEffect:null,stores:null},xo.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function Bo(e,t,n,r){t.value=n,t.getSnapshot=r,Ho(t)&&Uo(e)}function Vo(e,t,n){return n(function(){Ho(t)&&Uo(e)})}function Ho(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!Cr(e,n)}catch{return!0}}function Uo(e){var t=Ja(e,1);t!==null&&hl(t,e,1,-1)}function Wo(e){var t=Mo();return typeof e==`function`&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Po,lastRenderedState:e},t.queue=e,e=e.dispatch=cs.bind(null,xo,e),[t.memoizedState,e]}function Go(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},t=xo.updateQueue,t===null?(t={lastEffect:null,stores:null},xo.updateQueue=t,t.lastEffect=e.next=e):(n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e)),e}function Ko(){return No().memoizedState}function qo(e,t,n,r){var i=Mo();xo.flags|=e,i.memoizedState=Go(1|t,n,void 0,r===void 0?null:r)}function Jo(e,t,n,r){var i=No();r=r===void 0?null:r;var a=void 0;if(So!==null){var o=So.memoizedState;if(a=o.destroy,r!==null&&ko(r,o.deps)){i.memoizedState=Go(t,n,a,r);return}}xo.flags|=e,i.memoizedState=Go(1|t,n,a,r)}function Yo(e,t){return qo(8390656,8,e,t)}function Xo(e,t){return Jo(2048,8,e,t)}function Zo(e,t){return Jo(4,2,e,t)}function Qo(e,t){return Jo(4,4,e,t)}function $o(e,t){if(typeof t==`function`)return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function es(e,t,n){return n=n==null?null:n.concat([e]),Jo(4,4,$o.bind(null,t,e),n)}function ts(){}function ns(e,t){var n=No();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&ko(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function rs(e,t){var n=No();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&ko(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function is(e,t,n){return bo&21?(Cr(n,t)||(n=At(),xo.lanes|=n,Yc|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,Ns=!0),e.memoizedState=n)}function as(e,t){var n=q;q=n!==0&&4>n?n:4,e(!0);var r=yo.transition;yo.transition={};try{e(!1),t()}finally{q=n,yo.transition=r}}function os(){return No().memoizedState}function ss(e,t,n){var r=ml(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},ls(e))us(t,n);else if(n=qa(e,t,n,r),n!==null){var i=pl();hl(n,e,r,i),ds(n,t,r)}}function cs(e,t,n){var r=ml(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(ls(e))us(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,Cr(s,o)){var c=t.interleaved;c===null?(i.next=i,Ka(t)):(i.next=c.next,c.next=i),t.interleaved=i;return}}catch{}n=qa(e,t,i,r),n!==null&&(i=pl(),hl(n,e,r,i),ds(n,t,r))}}function ls(e){var t=e.alternate;return e===xo||t!==null&&t===xo}function us(e,t){To=wo=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function ds(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Pt(e,n)}}var fs={readContext:Wa,useCallback:Oo,useContext:Oo,useEffect:Oo,useImperativeHandle:Oo,useInsertionEffect:Oo,useLayoutEffect:Oo,useMemo:Oo,useReducer:Oo,useRef:Oo,useState:Oo,useDebugValue:Oo,useDeferredValue:Oo,useTransition:Oo,useMutableSource:Oo,useSyncExternalStore:Oo,useId:Oo,unstable_isNewReconciler:!1},ps={readContext:Wa,useCallback:function(e,t){return Mo().memoizedState=[e,t===void 0?null:t],e},useContext:Wa,useEffect:Yo,useImperativeHandle:function(e,t,n){return n=n==null?null:n.concat([e]),qo(4194308,4,$o.bind(null,t,e),n)},useLayoutEffect:function(e,t){return qo(4194308,4,e,t)},useInsertionEffect:function(e,t){return qo(4,2,e,t)},useMemo:function(e,t){var n=Mo();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Mo();return t=n===void 0?t:n(t),r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=ss.bind(null,xo,e),[r.memoizedState,e]},useRef:function(e){var t=Mo();return e={current:e},t.memoizedState=e},useState:Wo,useDebugValue:ts,useDeferredValue:function(e){return Mo().memoizedState=e},useTransition:function(){var e=Wo(!1),t=e[0];return e=as.bind(null,e[1]),Mo().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=xo,a=Mo();if(va){if(n===void 0)throw Error(i(407));n=n()}else{if(n=t(),Hc===null)throw Error(i(349));bo&30||zo(r,t,n)}a.memoizedState=n;var o={value:n,getSnapshot:t};return a.queue=o,Yo(Vo.bind(null,r,o,e),[e]),r.flags|=2048,Go(9,Bo.bind(null,r,o,n,t),void 0,null),n},useId:function(){var e=Mo(),t=Hc.identifierPrefix;if(va){var n=da,r=ua;n=(r&~(1<<32-yt(r)-1)).toString(32)+n,t=`:`+t+`R`+n,n=Eo++,0<n&&(t+=`H`+n.toString(32)),t+=`:`}else n=Do++,t=`:`+t+`r`+n.toString(32)+`:`;return e.memoizedState=t},unstable_isNewReconciler:!1},ms={readContext:Wa,useCallback:ns,useContext:Wa,useEffect:Xo,useImperativeHandle:es,useInsertionEffect:Zo,useLayoutEffect:Qo,useMemo:rs,useReducer:Fo,useRef:Ko,useState:function(){return Fo(Po)},useDebugValue:ts,useDeferredValue:function(e){return is(No(),So.memoizedState,e)},useTransition:function(){return[Fo(Po)[0],No().memoizedState]},useMutableSource:Lo,useSyncExternalStore:Ro,useId:os,unstable_isNewReconciler:!1},hs={readContext:Wa,useCallback:ns,useContext:Wa,useEffect:Xo,useImperativeHandle:es,useInsertionEffect:Zo,useLayoutEffect:Qo,useMemo:rs,useReducer:Io,useRef:Ko,useState:function(){return Io(Po)},useDebugValue:ts,useDeferredValue:function(e){var t=No();return So===null?t.memoizedState=e:is(t,So.memoizedState,e)},useTransition:function(){return[Io(Po)[0],No().memoizedState]},useMutableSource:Lo,useSyncExternalStore:Ro,useId:os,unstable_isNewReconciler:!1};function gs(e,t){if(e&&e.defaultProps){for(var n in t=F({},t),e=e.defaultProps,e)t[n]===void 0&&(t[n]=e[n]);return t}return t}function _s(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:F({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var vs={isMounted:function(e){return(e=e._reactInternals)?tt(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=pl(),i=ml(e),a=Qa(r,i);a.payload=t,n!=null&&(a.callback=n),t=$a(e,a,i),t!==null&&(hl(t,e,i,r),eo(t,e,i))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=pl(),i=ml(e),a=Qa(r,i);a.tag=1,a.payload=t,n!=null&&(a.callback=n),t=$a(e,a,i),t!==null&&(hl(t,e,i,r),eo(t,e,i))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=pl(),r=ml(e),i=Qa(n,r);i.tag=2,t!=null&&(i.callback=t),t=$a(e,i,r),t!==null&&(hl(t,e,r,n),eo(t,e,r))}};function ys(e,t,n,r,i,a,o){return e=e.stateNode,typeof e.shouldComponentUpdate==`function`?e.shouldComponentUpdate(r,a,o):t.prototype&&t.prototype.isPureReactComponent?!wr(n,r)||!wr(i,a):!0}function bs(e,t,n){var r=!1,i=Bi,a=t.contextType;return typeof a==`object`&&a?a=Wa(a):(i=Gi(t)?Ui:Vi.current,r=t.contextTypes,a=(r=r!=null)?Wi(e,i):Bi),t=new t(n,a),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=vs,e.stateNode=t,t._reactInternals=e,r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=i,e.__reactInternalMemoizedMaskedChildContext=a),t}function xs(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps==`function`&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps==`function`&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&vs.enqueueReplaceState(t,t.state,null)}function Ss(e,t,n,r){var i=e.stateNode;i.props=n,i.state=e.memoizedState,i.refs={},Xa(e);var a=t.contextType;typeof a==`object`&&a?i.context=Wa(a):(a=Gi(t)?Ui:Vi.current,i.context=Wi(e,a)),i.state=e.memoizedState,a=t.getDerivedStateFromProps,typeof a==`function`&&(_s(e,t,a,n),i.state=e.memoizedState),typeof t.getDerivedStateFromProps==`function`||typeof i.getSnapshotBeforeUpdate==`function`||typeof i.UNSAFE_componentWillMount!=`function`&&typeof i.componentWillMount!=`function`||(t=i.state,typeof i.componentWillMount==`function`&&i.componentWillMount(),typeof i.UNSAFE_componentWillMount==`function`&&i.UNSAFE_componentWillMount(),t!==i.state&&vs.enqueueReplaceState(i,i.state,null),no(e,n,i,r),i.state=e.memoizedState),typeof i.componentDidMount==`function`&&(e.flags|=4194308)}function Cs(e,t){try{var n=``,r=t;do n+=ae(r),r=r.return;while(r);var i=n}catch(e){i=`
8
+ Error generating stack: `+e.message+`
9
+ `+e.stack}return{value:e,source:t,stack:i,digest:null}}function ws(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function Ts(e,t){try{console.error(t.value)}catch(e){setTimeout(function(){throw e})}}var Es=typeof WeakMap==`function`?WeakMap:Map;function Ds(e,t,n){n=Qa(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){rl||(rl=!0,il=r),Ts(e,t)},n}function Os(e,t,n){n=Qa(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r==`function`){var i=t.value;n.payload=function(){return r(i)},n.callback=function(){Ts(e,t)}}var a=e.stateNode;return a!==null&&typeof a.componentDidCatch==`function`&&(n.callback=function(){Ts(e,t),typeof r!=`function`&&(al===null?al=new Set([this]):al.add(this));var n=t.stack;this.componentDidCatch(t.value,{componentStack:n===null?``:n})}),n}function ks(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Es;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(i.add(n),e=Bl.bind(null,e,t,n),t.then(e,e))}function As(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t===null?!0:t.dehydrated!==null),t)return e;e=e.return}while(e!==null);return null}function js(e,t,n,r,i){return e.mode&1?(e.flags|=65536,e.lanes=i,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=Qa(-1,1),t.tag=2,$a(n,t,1))),n.lanes|=1),e)}var Ms=S.ReactCurrentOwner,Ns=!1;function Ps(e,t,n,r){t.child=e===null?Fa(t,null,n,r):Pa(t,e.child,n,r)}function Fs(e,t,n,r,i){n=n.render;var a=t.ref;return Ua(t,i),r=Ao(e,t,n,r,a,i),n=jo(),e!==null&&!Ns?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,tc(e,t,i)):(va&&n&&ma(t),t.flags|=1,Ps(e,t,r,i),t.child)}function Is(e,t,n,r,i){if(e===null){var a=n.type;return typeof a==`function`&&!Jl(a)&&a.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=a,Ls(e,t,a,r,i)):(e=Zl(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,(e.lanes&i)===0){var o=a.memoizedProps;if(n=n.compare,n=n===null?wr:n,n(o,r)&&e.ref===t.ref)return tc(e,t,i)}return t.flags|=1,e=Xl(a,r),e.ref=t.ref,e.return=t,t.child=e}function Ls(e,t,n,r,i){if(e!==null){var a=e.memoizedProps;if(wr(a,r)&&e.ref===t.ref)if(Ns=!1,t.pendingProps=r=a,(e.lanes&i)!==0)e.flags&131072&&(Ns=!0);else return t.lanes=e.lanes,tc(e,t,i)}return Bs(e,t,n,r,i)}function Rs(e,t,n){var r=t.pendingProps,i=r.children,a=e===null?null:e.memoizedState;if(r.mode===`hidden`)if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},X(Kc,Gc),Gc|=n;else{if(!(n&1073741824))return e=a===null?n:a.baseLanes|n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,X(Kc,Gc),Gc|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=a===null?n:a.baseLanes,X(Kc,Gc),Gc|=r}else a===null?r=n:(r=a.baseLanes|n,t.memoizedState=null),X(Kc,Gc),Gc|=r;return Ps(e,t,i,n),t.child}function zs(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Bs(e,t,n,r,i){var a=Gi(n)?Ui:Vi.current;return a=Wi(t,a),Ua(t,i),n=Ao(e,t,n,r,a,i),r=jo(),e!==null&&!Ns?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,tc(e,t,i)):(va&&r&&ma(t),t.flags|=1,Ps(e,t,n,i),t.child)}function Vs(e,t,n,r,i){if(Gi(n)){var a=!0;Yi(t)}else a=!1;if(Ua(t,i),t.stateNode===null)ec(e,t),bs(t,n,r),Ss(t,n,r,i),r=!0;else if(e===null){var o=t.stateNode,s=t.memoizedProps;o.props=s;var c=o.context,l=n.contextType;typeof l==`object`&&l?l=Wa(l):(l=Gi(n)?Ui:Vi.current,l=Wi(t,l));var u=n.getDerivedStateFromProps,d=typeof u==`function`||typeof o.getSnapshotBeforeUpdate==`function`;d||typeof o.UNSAFE_componentWillReceiveProps!=`function`&&typeof o.componentWillReceiveProps!=`function`||(s!==r||c!==l)&&xs(t,o,r,l),Ya=!1;var f=t.memoizedState;o.state=f,no(t,r,o,i),c=t.memoizedState,s!==r||f!==c||Hi.current||Ya?(typeof u==`function`&&(_s(t,n,u,r),c=t.memoizedState),(s=Ya||ys(t,n,s,r,f,c,l))?(d||typeof o.UNSAFE_componentWillMount!=`function`&&typeof o.componentWillMount!=`function`||(typeof o.componentWillMount==`function`&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount==`function`&&o.UNSAFE_componentWillMount()),typeof o.componentDidMount==`function`&&(t.flags|=4194308)):(typeof o.componentDidMount==`function`&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=c),o.props=r,o.state=c,o.context=l,r=s):(typeof o.componentDidMount==`function`&&(t.flags|=4194308),r=!1)}else{o=t.stateNode,Za(e,t),s=t.memoizedProps,l=t.type===t.elementType?s:gs(t.type,s),o.props=l,d=t.pendingProps,f=o.context,c=n.contextType,typeof c==`object`&&c?c=Wa(c):(c=Gi(n)?Ui:Vi.current,c=Wi(t,c));var p=n.getDerivedStateFromProps;(u=typeof p==`function`||typeof o.getSnapshotBeforeUpdate==`function`)||typeof o.UNSAFE_componentWillReceiveProps!=`function`&&typeof o.componentWillReceiveProps!=`function`||(s!==d||f!==c)&&xs(t,o,r,c),Ya=!1,f=t.memoizedState,o.state=f,no(t,r,o,i);var m=t.memoizedState;s!==d||f!==m||Hi.current||Ya?(typeof p==`function`&&(_s(t,n,p,r),m=t.memoizedState),(l=Ya||ys(t,n,l,r,f,m,c)||!1)?(u||typeof o.UNSAFE_componentWillUpdate!=`function`&&typeof o.componentWillUpdate!=`function`||(typeof o.componentWillUpdate==`function`&&o.componentWillUpdate(r,m,c),typeof o.UNSAFE_componentWillUpdate==`function`&&o.UNSAFE_componentWillUpdate(r,m,c)),typeof o.componentDidUpdate==`function`&&(t.flags|=4),typeof o.getSnapshotBeforeUpdate==`function`&&(t.flags|=1024)):(typeof o.componentDidUpdate!=`function`||s===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!=`function`||s===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=m),o.props=r,o.state=m,o.context=c,r=l):(typeof o.componentDidUpdate!=`function`||s===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!=`function`||s===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),r=!1)}return Hs(e,t,n,r,a,i)}function Hs(e,t,n,r,i,a){zs(e,t);var o=(t.flags&128)!=0;if(!r&&!o)return i&&Xi(t,n,!1),tc(e,t,a);r=t.stateNode,Ms.current=t;var s=o&&typeof n.getDerivedStateFromError!=`function`?null:r.render();return t.flags|=1,e!==null&&o?(t.child=Pa(t,e.child,null,a),t.child=Pa(t,null,s,a)):Ps(e,t,s,a),t.memoizedState=r.state,i&&Xi(t,n,!0),t.child}function Us(e){var t=e.stateNode;t.pendingContext?qi(e,t.pendingContext,t.pendingContext!==t.context):t.context&&qi(e,t.context,!1),lo(e,t.containerInfo)}function Ws(e,t,n,r,i){return Da(),Oa(i),t.flags|=256,Ps(e,t,n,r),t.child}var Gs={dehydrated:null,treeContext:null,retryLane:0};function Ks(e){return{baseLanes:e,cachePool:null,transitions:null}}function qs(e,t,n){var r=t.pendingProps,i=mo.current,a=!1,o=(t.flags&128)!=0,s;if((s=o)||(s=e!==null&&e.memoizedState===null?!1:(i&2)!=0),s?(a=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(i|=1),X(mo,i&1),e===null)return Ca(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data===`$!`?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(o=r.children,e=r.fallback,a?(r=t.mode,a=t.child,o={mode:`hidden`,children:o},!(r&1)&&a!==null?(a.childLanes=0,a.pendingProps=o):a=$l(o,r,0,null),e=Ql(e,r,n,null),a.return=t,e.return=t,a.sibling=e,t.child=a,t.child.memoizedState=Ks(n),t.memoizedState=Gs,e):Js(t,o));if(i=e.memoizedState,i!==null&&(s=i.dehydrated,s!==null))return Xs(e,t,o,r,s,i,n);if(a){a=r.fallback,o=t.mode,i=e.child,s=i.sibling;var c={mode:`hidden`,children:r.children};return!(o&1)&&t.child!==i?(r=t.child,r.childLanes=0,r.pendingProps=c,t.deletions=null):(r=Xl(i,c),r.subtreeFlags=i.subtreeFlags&14680064),s===null?(a=Ql(a,o,n,null),a.flags|=2):a=Xl(s,a),a.return=t,r.return=t,r.sibling=a,t.child=r,r=a,a=t.child,o=e.child.memoizedState,o=o===null?Ks(n):{baseLanes:o.baseLanes|n,cachePool:null,transitions:o.transitions},a.memoizedState=o,a.childLanes=e.childLanes&~n,t.memoizedState=Gs,r}return a=e.child,e=a.sibling,r=Xl(a,{mode:`visible`,children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function Js(e,t){return t=$l({mode:`visible`,children:t},e.mode,0,null),t.return=e,e.child=t}function Ys(e,t,n,r){return r!==null&&Oa(r),Pa(t,e.child,null,n),e=Js(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function Xs(e,t,n,r,a,o,s){if(n)return t.flags&256?(t.flags&=-257,r=ws(Error(i(422))),Ys(e,t,s,r)):t.memoizedState===null?(o=r.fallback,a=t.mode,r=$l({mode:`visible`,children:r.children},a,0,null),o=Ql(o,a,s,null),o.flags|=2,r.return=t,o.return=t,r.sibling=o,t.child=r,t.mode&1&&Pa(t,e.child,null,s),t.child.memoizedState=Ks(s),t.memoizedState=Gs,o):(t.child=e.child,t.flags|=128,null);if(!(t.mode&1))return Ys(e,t,s,null);if(a.data===`$!`){if(r=a.nextSibling&&a.nextSibling.dataset,r)var c=r.dgst;return r=c,o=Error(i(419)),r=ws(o,r,void 0),Ys(e,t,s,r)}if(c=(s&e.childLanes)!==0,Ns||c){if(r=Hc,r!==null){switch(s&-s){case 4:a=2;break;case 16:a=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:a=32;break;case 536870912:a=268435456;break;default:a=0}a=(a&(r.suspendedLanes|s))===0?a:0,a!==0&&a!==o.retryLane&&(o.retryLane=a,Ja(e,a),hl(r,e,a,-1))}return kl(),r=ws(Error(i(421))),Ys(e,t,s,r)}return a.data===`$?`?(t.flags|=128,t.child=e.child,t=Hl.bind(null,e),a._reactRetry=t,null):(e=o.treeContext,_a=wi(a.nextSibling),ga=t,va=!0,ya=null,e!==null&&(sa[ca++]=ua,sa[ca++]=da,sa[ca++]=la,ua=e.id,da=e.overflow,la=t),t=Js(t,r.children),t.flags|=4096,t)}function Zs(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Ha(e.return,t,n)}function Qs(e,t,n,r,i){var a=e.memoizedState;a===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i}:(a.isBackwards=t,a.rendering=null,a.renderingStartTime=0,a.last=r,a.tail=n,a.tailMode=i)}function $s(e,t,n){var r=t.pendingProps,i=r.revealOrder,a=r.tail;if(Ps(e,t,r.children,n),r=mo.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)a:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Zs(e,n,t);else if(e.tag===19)Zs(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break a;for(;e.sibling===null;){if(e.return===null||e.return===t)break a;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(X(mo,r),!(t.mode&1))t.memoizedState=null;else switch(i){case`forwards`:for(n=t.child,i=null;n!==null;)e=n.alternate,e!==null&&ho(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),Qs(t,!1,i,n,a);break;case`backwards`:for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&ho(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}Qs(t,!0,n,null,a);break;case`together`:Qs(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function ec(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function tc(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Yc|=t.lanes,(n&t.childLanes)===0)return null;if(e!==null&&t.child!==e.child)throw Error(i(153));if(t.child!==null){for(e=t.child,n=Xl(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Xl(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function nc(e,t,n){switch(t.tag){case 3:Us(t),Da();break;case 5:fo(t);break;case 1:Gi(t.type)&&Yi(t);break;case 4:lo(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,i=t.memoizedProps.value;X(Ia,r._currentValue),r._currentValue=i;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated===null?(n&t.child.childLanes)===0?(X(mo,mo.current&1),e=tc(e,t,n),e===null?null:e.sibling):qs(e,t,n):(X(mo,mo.current&1),t.flags|=128,null);X(mo,mo.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return $s(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),X(mo,mo.current),r)break;return null;case 22:case 23:return t.lanes=0,Rs(e,t,n)}return tc(e,t,n)}var rc=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},ic=function(e,t,n,r){var i=e.memoizedProps;if(i!==r){e=t.stateNode,co(ao.current);var a=null;switch(n){case`input`:i=fe(e,i),r=fe(e,r),a=[];break;case`select`:i=F({},i,{value:void 0}),r=F({},r,{value:void 0}),a=[];break;case`textarea`:i=B(e,i),r=B(e,r),a=[];break;default:typeof i.onClick!=`function`&&typeof r.onClick==`function`&&(e.onclick=mi)}Ne(n,r);var s;for(u in n=null,i)if(!r.hasOwnProperty(u)&&i.hasOwnProperty(u)&&i[u]!=null)if(u===`style`){var c=i[u];for(s in c)c.hasOwnProperty(s)&&(n||={},n[s]=``)}else u!==`dangerouslySetInnerHTML`&&u!==`children`&&u!==`suppressContentEditableWarning`&&u!==`suppressHydrationWarning`&&u!==`autoFocus`&&(o.hasOwnProperty(u)?a||=[]:(a||=[]).push(u,null));for(u in r){var l=r[u];if(c=i?.[u],r.hasOwnProperty(u)&&l!==c&&(l!=null||c!=null))if(u===`style`)if(c){for(s in c)!c.hasOwnProperty(s)||l&&l.hasOwnProperty(s)||(n||={},n[s]=``);for(s in l)l.hasOwnProperty(s)&&c[s]!==l[s]&&(n||={},n[s]=l[s])}else n||(a||=[],a.push(u,n)),n=l;else u===`dangerouslySetInnerHTML`?(l=l?l.__html:void 0,c=c?c.__html:void 0,l!=null&&c!==l&&(a||=[]).push(u,l)):u===`children`?typeof l!=`string`&&typeof l!=`number`||(a||=[]).push(u,``+l):u!==`suppressContentEditableWarning`&&u!==`suppressHydrationWarning`&&(o.hasOwnProperty(u)?(l!=null&&u===`onScroll`&&J(`scroll`,e),a||c===l||(a=[])):(a||=[]).push(u,l))}n&&(a||=[]).push(`style`,n);var u=a;(t.updateQueue=u)&&(t.flags|=4)}},ac=function(e,t,n,r){n!==r&&(t.flags|=4)};function oc(e,t){if(!va)switch(e.tailMode){case`hidden`:t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case`collapsed`:n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function sc(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&14680064,r|=i.flags&14680064,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function cc(e,t,n){var r=t.pendingProps;switch(ha(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return sc(t),null;case 1:return Gi(t.type)&&Ki(),sc(t),null;case 3:return r=t.stateNode,uo(),Y(Hi),Y(Vi),_o(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(Ta(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,ya!==null&&(yl(ya),ya=null))),sc(t),null;case 5:po(t);var a=co(so.current);if(n=t.type,e!==null&&t.stateNode!=null)ic(e,t,n,r,a),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(i(166));return sc(t),null}if(e=co(ao.current),Ta(t)){r=t.stateNode,n=t.type;var s=t.memoizedProps;switch(r[Di]=t,r[Oi]=s,e=(t.mode&1)!=0,n){case`dialog`:J(`cancel`,r),J(`close`,r);break;case`iframe`:case`object`:case`embed`:J(`load`,r);break;case`video`:case`audio`:for(a=0;a<Zr.length;a++)J(Zr[a],r);break;case`source`:J(`error`,r);break;case`img`:case`image`:case`link`:J(`error`,r),J(`load`,r);break;case`details`:J(`toggle`,r);break;case`input`:pe(r,s),J(`invalid`,r);break;case`select`:r._wrapperState={wasMultiple:!!s.multiple},J(`invalid`,r);break;case`textarea`:be(r,s),J(`invalid`,r)}for(var c in Ne(n,s),a=null,s)if(s.hasOwnProperty(c)){var l=s[c];c===`children`?typeof l==`string`?r.textContent!==l&&(!0!==s.suppressHydrationWarning&&pi(r.textContent,l,e),a=[`children`,l]):typeof l==`number`&&r.textContent!==``+l&&(!0!==s.suppressHydrationWarning&&pi(r.textContent,l,e),a=[`children`,``+l]):o.hasOwnProperty(c)&&l!=null&&c===`onScroll`&&J(`scroll`,r)}switch(n){case`input`:le(r),ge(r,s,!0);break;case`textarea`:le(r),Se(r);break;case`select`:case`option`:break;default:typeof s.onClick==`function`&&(r.onclick=mi)}r=a,t.updateQueue=r,r!==null&&(t.flags|=4)}else{c=a.nodeType===9?a:a.ownerDocument,e===`http://www.w3.org/1999/xhtml`&&(e=Ce(n)),e===`http://www.w3.org/1999/xhtml`?n===`script`?(e=c.createElement(`div`),e.innerHTML=`<script><\/script>`,e=e.removeChild(e.firstChild)):typeof r.is==`string`?e=c.createElement(n,{is:r.is}):(e=c.createElement(n),n===`select`&&(c=e,r.multiple?c.multiple=!0:r.size&&(c.size=r.size))):e=c.createElementNS(e,n),e[Di]=t,e[Oi]=r,rc(e,t,!1,!1),t.stateNode=e;a:{switch(c=H(n,r),n){case`dialog`:J(`cancel`,e),J(`close`,e),a=r;break;case`iframe`:case`object`:case`embed`:J(`load`,e),a=r;break;case`video`:case`audio`:for(a=0;a<Zr.length;a++)J(Zr[a],e);a=r;break;case`source`:J(`error`,e),a=r;break;case`img`:case`image`:case`link`:J(`error`,e),J(`load`,e),a=r;break;case`details`:J(`toggle`,e),a=r;break;case`input`:pe(e,r),a=fe(e,r),J(`invalid`,e);break;case`option`:a=r;break;case`select`:e._wrapperState={wasMultiple:!!r.multiple},a=F({},r,{value:void 0}),J(`invalid`,e);break;case`textarea`:be(e,r),a=B(e,r),J(`invalid`,e);break;default:a=r}for(s in Ne(n,a),l=a,l)if(l.hasOwnProperty(s)){var u=l[s];s===`style`?Ae(e,u):s===`dangerouslySetInnerHTML`?(u=u?u.__html:void 0,u!=null&&Ee(e,u)):s===`children`?typeof u==`string`?(n!==`textarea`||u!==``)&&De(e,u):typeof u==`number`&&De(e,``+u):s!==`suppressContentEditableWarning`&&s!==`suppressHydrationWarning`&&s!==`autoFocus`&&(o.hasOwnProperty(s)?u!=null&&s===`onScroll`&&J(`scroll`,e):u!=null&&x(e,s,u,c))}switch(n){case`input`:le(e),ge(e,r,!1);break;case`textarea`:le(e),Se(e);break;case`option`:r.value!=null&&e.setAttribute(`value`,``+z(r.value));break;case`select`:e.multiple=!!r.multiple,s=r.value,s==null?r.defaultValue!=null&&ye(e,!!r.multiple,r.defaultValue,!0):ye(e,!!r.multiple,s,!1);break;default:typeof a.onClick==`function`&&(e.onclick=mi)}switch(n){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}}r&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}return sc(t),null;case 6:if(e&&t.stateNode!=null)ac(e,t,e.memoizedProps,r);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(i(166));if(n=co(so.current),co(ao.current),Ta(t)){if(r=t.stateNode,n=t.memoizedProps,r[Di]=t,(s=r.nodeValue!==n)&&(e=ga,e!==null))switch(e.tag){case 3:pi(r.nodeValue,n,(e.mode&1)!=0);break;case 5:!0!==e.memoizedProps.suppressHydrationWarning&&pi(r.nodeValue,n,(e.mode&1)!=0)}s&&(t.flags|=4)}else r=(n.nodeType===9?n:n.ownerDocument).createTextNode(r),r[Di]=t,t.stateNode=r}return sc(t),null;case 13:if(Y(mo),r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(va&&_a!==null&&t.mode&1&&!(t.flags&128))Ea(),Da(),t.flags|=98560,s=!1;else if(s=Ta(t),r!==null&&r.dehydrated!==null){if(e===null){if(!s)throw Error(i(318));if(s=t.memoizedState,s=s===null?null:s.dehydrated,!s)throw Error(i(317));s[Di]=t}else Da(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;sc(t),s=!1}else ya!==null&&(yl(ya),ya=null),s=!0;if(!s)return t.flags&65536?t:null}return t.flags&128?(t.lanes=n,t):(r=r!==null,r!==(e!==null&&e.memoizedState!==null)&&r&&(t.child.flags|=8192,t.mode&1&&(e===null||mo.current&1?qc===0&&(qc=3):kl())),t.updateQueue!==null&&(t.flags|=4),sc(t),null);case 4:return uo(),e===null&&ri(t.stateNode.containerInfo),sc(t),null;case 10:return Va(t.type._context),sc(t),null;case 17:return Gi(t.type)&&Ki(),sc(t),null;case 19:if(Y(mo),s=t.memoizedState,s===null)return sc(t),null;if(r=(t.flags&128)!=0,c=s.rendering,c===null)if(r)oc(s,!1);else{if(qc!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(c=ho(e),c!==null){for(t.flags|=128,oc(s,!1),r=c.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;n!==null;)s=n,e=r,s.flags&=14680066,c=s.alternate,c===null?(s.childLanes=0,s.lanes=e,s.child=null,s.subtreeFlags=0,s.memoizedProps=null,s.memoizedState=null,s.updateQueue=null,s.dependencies=null,s.stateNode=null):(s.childLanes=c.childLanes,s.lanes=c.lanes,s.child=c.child,s.subtreeFlags=0,s.deletions=null,s.memoizedProps=c.memoizedProps,s.memoizedState=c.memoizedState,s.updateQueue=c.updateQueue,s.type=c.type,e=c.dependencies,s.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return X(mo,mo.current&1|2),t.child}e=e.sibling}s.tail!==null&&K()>tl&&(t.flags|=128,r=!0,oc(s,!1),t.lanes=4194304)}else{if(!r)if(e=ho(c),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),oc(s,!0),s.tail===null&&s.tailMode===`hidden`&&!c.alternate&&!va)return sc(t),null}else 2*K()-s.renderingStartTime>tl&&n!==1073741824&&(t.flags|=128,r=!0,oc(s,!1),t.lanes=4194304);s.isBackwards?(c.sibling=t.child,t.child=c):(n=s.last,n===null?t.child=c:n.sibling=c,s.last=c)}return s.tail===null?(sc(t),null):(t=s.tail,s.rendering=t,s.tail=t.sibling,s.renderingStartTime=K(),t.sibling=null,n=mo.current,X(mo,r?n&1|2:n&1),t);case 22:case 23:return Tl(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?Gc&1073741824&&(sc(t),t.subtreeFlags&6&&(t.flags|=8192)):sc(t),null;case 24:return null;case 25:return null}throw Error(i(156,t.tag))}function lc(e,t){switch(ha(t),t.tag){case 1:return Gi(t.type)&&Ki(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return uo(),Y(Hi),Y(Vi),_o(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return po(t),null;case 13:if(Y(mo),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(i(340));Da()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Y(mo),null;case 4:return uo(),null;case 10:return Va(t.type._context),null;case 22:case 23:return Tl(),null;case 24:return null;default:return null}}var uc=!1,dc=!1,fc=typeof WeakSet==`function`?WeakSet:Set,Z=null;function pc(e,t){var n=e.ref;if(n!==null)if(typeof n==`function`)try{n(null)}catch(n){zl(e,t,n)}else n.current=null}function mc(e,t,n){try{n()}catch(n){zl(e,t,n)}}var hc=!1;function gc(e,t){if(hi=sn,e=Or(),kr(e)){if(`selectionStart`in e)var n={start:e.selectionStart,end:e.selectionEnd};else a:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var a=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break a}var s=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==n||a!==0&&f.nodeType!==3||(c=s+a),f!==o||r!==0&&f.nodeType!==3||(l=s+r),f.nodeType===3&&(s+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===n&&++u===a&&(c=s),p===o&&++d===r&&(l=s),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}n=c===-1||l===-1?null:{start:c,end:l}}else n=null}n||={start:0,end:0}}else n=null;for(gi={focusedElem:e,selectionRange:n},sn=!1,Z=t;Z!==null;)if(t=Z,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,Z=e;else for(;Z!==null;){t=Z;try{var h=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(h!==null){var g=h.memoizedProps,_=h.memoizedState,v=t.stateNode;v.__reactInternalSnapshotBeforeUpdate=v.getSnapshotBeforeUpdate(t.elementType===t.type?g:gs(t.type,g),_)}break;case 3:var y=t.stateNode.containerInfo;y.nodeType===1?y.textContent=``:y.nodeType===9&&y.documentElement&&y.removeChild(y.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(i(163))}}catch(e){zl(t,t.return,e)}if(e=t.sibling,e!==null){e.return=t.return,Z=e;break}Z=t.return}return h=hc,hc=!1,h}function _c(e,t,n){var r=t.updateQueue;if(r=r===null?null:r.lastEffect,r!==null){var i=r=r.next;do{if((i.tag&e)===e){var a=i.destroy;i.destroy=void 0,a!==void 0&&mc(t,n,a)}i=i.next}while(i!==r)}}function vc(e,t){if(t=t.updateQueue,t=t===null?null:t.lastEffect,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function yc(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t==`function`?t(e):t.current=e}}function bc(e){var t=e.alternate;t!==null&&(e.alternate=null,bc(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Di],delete t[Oi],delete t[Ai],delete t[ji],delete t[Mi])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function xc(e){return e.tag===5||e.tag===3||e.tag===4}function Sc(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||xc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Cc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=mi));else if(r!==4&&(e=e.child,e!==null))for(Cc(e,t,n),e=e.sibling;e!==null;)Cc(e,t,n),e=e.sibling}function wc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(wc(e,t,n),e=e.sibling;e!==null;)wc(e,t,n),e=e.sibling}var Tc=null,Ec=!1;function Dc(e,t,n){for(n=n.child;n!==null;)Oc(e,t,n),n=n.sibling}function Oc(e,t,n){if(_t&&typeof _t.onCommitFiberUnmount==`function`)try{_t.onCommitFiberUnmount(gt,n)}catch{}switch(n.tag){case 5:dc||pc(n,t);case 6:var r=Tc,i=Ec;Tc=null,Dc(e,t,n),Tc=r,Ec=i,Tc!==null&&(Ec?(e=Tc,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):Tc.removeChild(n.stateNode));break;case 18:Tc!==null&&(Ec?(e=Tc,n=n.stateNode,e.nodeType===8?Ci(e.parentNode,n):e.nodeType===1&&Ci(e,n),an(e)):Ci(Tc,n.stateNode));break;case 4:r=Tc,i=Ec,Tc=n.stateNode.containerInfo,Ec=!0,Dc(e,t,n),Tc=r,Ec=i;break;case 0:case 11:case 14:case 15:if(!dc&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var a=i,o=a.destroy;a=a.tag,o!==void 0&&(a&2||a&4)&&mc(n,t,o),i=i.next}while(i!==r)}Dc(e,t,n);break;case 1:if(!dc&&(pc(n,t),r=n.stateNode,typeof r.componentWillUnmount==`function`))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(e){zl(n,t,e)}Dc(e,t,n);break;case 21:Dc(e,t,n);break;case 22:n.mode&1?(dc=(r=dc)||n.memoizedState!==null,Dc(e,t,n),dc=r):Dc(e,t,n);break;default:Dc(e,t,n)}}function kc(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new fc),t.forEach(function(t){var r=Ul.bind(null,e,t);n.has(t)||(n.add(t),t.then(r,r))})}}function Ac(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var a=n[r];try{var o=e,s=t,c=s;a:for(;c!==null;){switch(c.tag){case 5:Tc=c.stateNode,Ec=!1;break a;case 3:Tc=c.stateNode.containerInfo,Ec=!0;break a;case 4:Tc=c.stateNode.containerInfo,Ec=!0;break a}c=c.return}if(Tc===null)throw Error(i(160));Oc(o,s,a),Tc=null,Ec=!1;var l=a.alternate;l!==null&&(l.return=null),a.return=null}catch(e){zl(a,t,e)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)jc(t,e),t=t.sibling}function jc(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(Ac(t,e),Mc(e),r&4){try{_c(3,e,e.return),vc(3,e)}catch(t){zl(e,e.return,t)}try{_c(5,e,e.return)}catch(t){zl(e,e.return,t)}}break;case 1:Ac(t,e),Mc(e),r&512&&n!==null&&pc(n,n.return);break;case 5:if(Ac(t,e),Mc(e),r&512&&n!==null&&pc(n,n.return),e.flags&32){var a=e.stateNode;try{De(a,``)}catch(t){zl(e,e.return,t)}}if(r&4&&(a=e.stateNode,a!=null)){var o=e.memoizedProps,s=n===null?o:n.memoizedProps,c=e.type,l=e.updateQueue;if(e.updateQueue=null,l!==null)try{c===`input`&&o.type===`radio`&&o.name!=null&&me(a,o),H(c,s);var u=H(c,o);for(s=0;s<l.length;s+=2){var d=l[s],f=l[s+1];d===`style`?Ae(a,f):d===`dangerouslySetInnerHTML`?Ee(a,f):d===`children`?De(a,f):x(a,d,f,u)}switch(c){case`input`:he(a,o);break;case`textarea`:xe(a,o);break;case`select`:var p=a._wrapperState.wasMultiple;a._wrapperState.wasMultiple=!!o.multiple;var m=o.value;m==null?p!==!!o.multiple&&(o.defaultValue==null?ye(a,!!o.multiple,o.multiple?[]:``,!1):ye(a,!!o.multiple,o.defaultValue,!0)):ye(a,!!o.multiple,m,!1)}a[Oi]=o}catch(t){zl(e,e.return,t)}}break;case 6:if(Ac(t,e),Mc(e),r&4){if(e.stateNode===null)throw Error(i(162));a=e.stateNode,o=e.memoizedProps;try{a.nodeValue=o}catch(t){zl(e,e.return,t)}}break;case 3:if(Ac(t,e),Mc(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{an(t.containerInfo)}catch(t){zl(e,e.return,t)}break;case 4:Ac(t,e),Mc(e);break;case 13:Ac(t,e),Mc(e),a=e.child,a.flags&8192&&(o=a.memoizedState!==null,a.stateNode.isHidden=o,!o||a.alternate!==null&&a.alternate.memoizedState!==null||(el=K())),r&4&&kc(e);break;case 22:if(d=n!==null&&n.memoizedState!==null,e.mode&1?(dc=(u=dc)||d,Ac(t,e),dc=u):Ac(t,e),Mc(e),r&8192){if(u=e.memoizedState!==null,(e.stateNode.isHidden=u)&&!d&&e.mode&1)for(Z=e,d=e.child;d!==null;){for(f=Z=d;Z!==null;){switch(p=Z,m=p.child,p.tag){case 0:case 11:case 14:case 15:_c(4,p,p.return);break;case 1:pc(p,p.return);var h=p.stateNode;if(typeof h.componentWillUnmount==`function`){r=p,n=p.return;try{t=r,h.props=t.memoizedProps,h.state=t.memoizedState,h.componentWillUnmount()}catch(e){zl(r,n,e)}}break;case 5:pc(p,p.return);break;case 22:if(p.memoizedState!==null){Ic(f);continue}}m===null?Ic(f):(m.return=p,Z=m)}d=d.sibling}a:for(d=null,f=e;;){if(f.tag===5){if(d===null){d=f;try{a=f.stateNode,u?(o=a.style,typeof o.setProperty==`function`?o.setProperty(`display`,`none`,`important`):o.display=`none`):(c=f.stateNode,l=f.memoizedProps.style,s=l!=null&&l.hasOwnProperty(`display`)?l.display:null,c.style.display=ke(`display`,s))}catch(t){zl(e,e.return,t)}}}else if(f.tag===6){if(d===null)try{f.stateNode.nodeValue=u?``:f.memoizedProps}catch(t){zl(e,e.return,t)}}else if((f.tag!==22&&f.tag!==23||f.memoizedState===null||f===e)&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===e)break a;for(;f.sibling===null;){if(f.return===null||f.return===e)break a;d===f&&(d=null),f=f.return}d===f&&(d=null),f.sibling.return=f.return,f=f.sibling}}break;case 19:Ac(t,e),Mc(e),r&4&&kc(e);break;case 21:break;default:Ac(t,e),Mc(e)}}function Mc(e){var t=e.flags;if(t&2){try{a:{for(var n=e.return;n!==null;){if(xc(n)){var r=n;break a}n=n.return}throw Error(i(160))}switch(r.tag){case 5:var a=r.stateNode;r.flags&32&&(De(a,``),r.flags&=-33),wc(e,Sc(e),a);break;case 3:case 4:var o=r.stateNode.containerInfo;Cc(e,Sc(e),o);break;default:throw Error(i(161))}}catch(t){zl(e,e.return,t)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function Nc(e,t,n){Z=e,Pc(e,t,n)}function Pc(e,t,n){for(var r=(e.mode&1)!=0;Z!==null;){var i=Z,a=i.child;if(i.tag===22&&r){var o=i.memoizedState!==null||uc;if(!o){var s=i.alternate,c=s!==null&&s.memoizedState!==null||dc;s=uc;var l=dc;if(uc=o,(dc=c)&&!l)for(Z=i;Z!==null;)o=Z,c=o.child,o.tag===22&&o.memoizedState!==null||c===null?Lc(i):(c.return=o,Z=c);for(;a!==null;)Z=a,Pc(a,t,n),a=a.sibling;Z=i,uc=s,dc=l}Fc(e,t,n)}else i.subtreeFlags&8772&&a!==null?(a.return=i,Z=a):Fc(e,t,n)}}function Fc(e){for(;Z!==null;){var t=Z;if(t.flags&8772){var n=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:dc||vc(5,t);break;case 1:var r=t.stateNode;if(t.flags&4&&!dc)if(n===null)r.componentDidMount();else{var a=t.elementType===t.type?n.memoizedProps:gs(t.type,n.memoizedProps);r.componentDidUpdate(a,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var o=t.updateQueue;o!==null&&ro(t,o,r);break;case 3:var s=t.updateQueue;if(s!==null){if(n=null,t.child!==null)switch(t.child.tag){case 5:n=t.child.stateNode;break;case 1:n=t.child.stateNode}ro(t,s,n)}break;case 5:var c=t.stateNode;if(n===null&&t.flags&4){n=c;var l=t.memoizedProps;switch(t.type){case`button`:case`input`:case`select`:case`textarea`:l.autoFocus&&n.focus();break;case`img`:l.src&&(n.src=l.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var u=t.alternate;if(u!==null){var d=u.memoizedState;if(d!==null){var f=d.dehydrated;f!==null&&an(f)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(i(163))}dc||t.flags&512&&yc(t)}catch(e){zl(t,t.return,e)}}if(t===e){Z=null;break}if(n=t.sibling,n!==null){n.return=t.return,Z=n;break}Z=t.return}}function Ic(e){for(;Z!==null;){var t=Z;if(t===e){Z=null;break}var n=t.sibling;if(n!==null){n.return=t.return,Z=n;break}Z=t.return}}function Lc(e){for(;Z!==null;){var t=Z;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{vc(4,t)}catch(e){zl(t,n,e)}break;case 1:var r=t.stateNode;if(typeof r.componentDidMount==`function`){var i=t.return;try{r.componentDidMount()}catch(e){zl(t,i,e)}}var a=t.return;try{yc(t)}catch(e){zl(t,a,e)}break;case 5:var o=t.return;try{yc(t)}catch(e){zl(t,o,e)}}}catch(e){zl(t,t.return,e)}if(t===e){Z=null;break}var s=t.sibling;if(s!==null){s.return=t.return,Z=s;break}Z=t.return}}var Rc=Math.ceil,zc=S.ReactCurrentDispatcher,Bc=S.ReactCurrentOwner,Vc=S.ReactCurrentBatchConfig,Q=0,Hc=null,Uc=null,Wc=0,Gc=0,Kc=zi(0),qc=0,Jc=null,Yc=0,Xc=0,Zc=0,Qc=null,$c=null,el=0,tl=1/0,nl=null,rl=!1,il=null,al=null,ol=!1,sl=null,cl=0,ll=0,ul=null,dl=-1,fl=0;function pl(){return Q&6?K():dl===-1?dl=K():dl}function ml(e){return e.mode&1?Q&2&&Wc!==0?Wc&-Wc:ka.transition===null?(e=q,e===0?(e=window.event,e=e===void 0?16:pn(e.type),e):e):(fl===0&&(fl=At()),fl):1}function hl(e,t,n,r){if(50<ll)throw ll=0,ul=null,Error(i(185));Mt(e,n,r),(!(Q&2)||e!==Hc)&&(e===Hc&&(!(Q&2)&&(Xc|=n),qc===4&&xl(e,Wc)),gl(e,r),n===1&&Q===0&&!(t.mode&1)&&(tl=K()+500,Qi&&na()))}function gl(e,t){var n=e.callbackNode;Ot(e,t);var r=Et(e,e===Hc?Wc:0);if(r===0)n!==null&&st(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(n!=null&&st(n),t===1)e.tag===0?ta(Sl.bind(null,e)):ea(Sl.bind(null,e)),xi(function(){!(Q&6)&&na()}),n=null;else{switch(Ft(r)){case 1:n=dt;break;case 4:n=ft;break;case 16:n=pt;break;case 536870912:n=ht;break;default:n=pt}n=Gl(n,_l.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function _l(e,t){if(dl=-1,fl=0,Q&6)throw Error(i(327));var n=e.callbackNode;if(Ll()&&e.callbackNode!==n)return null;var r=Et(e,e===Hc?Wc:0);if(r===0)return null;if(r&30||(r&e.expiredLanes)!==0||t)t=Al(e,r);else{t=r;var a=Q;Q|=2;var o=Ol();(Hc!==e||Wc!==t)&&(nl=null,tl=K()+500,El(e,t));do try{Ml();break}catch(t){Dl(e,t)}while(1);Ba(),zc.current=o,Q=a,Uc===null?(Hc=null,Wc=0,t=qc):t=0}if(t!==0){if(t===2&&(a=kt(e),a!==0&&(r=a,t=vl(e,a))),t===1)throw n=Jc,El(e,0),xl(e,r),gl(e,K()),n;if(t===6)xl(e,r);else{if(a=e.current.alternate,!(r&30)&&!bl(a)&&(t=Al(e,r),t===2&&(o=kt(e),o!==0&&(r=o,t=vl(e,o))),t===1))throw n=Jc,El(e,0),xl(e,r),gl(e,K()),n;switch(e.finishedWork=a,e.finishedLanes=r,t){case 0:case 1:throw Error(i(345));case 2:Fl(e,$c,nl);break;case 3:if(xl(e,r),(r&130023424)===r&&(t=el+500-K(),10<t)){if(Et(e,0)!==0)break;if(a=e.suspendedLanes,(a&r)!==r){pl(),e.pingedLanes|=e.suspendedLanes&a;break}e.timeoutHandle=vi(Fl.bind(null,e,$c,nl),t);break}Fl(e,$c,nl);break;case 4:if(xl(e,r),(r&4194240)===r)break;for(t=e.eventTimes,a=-1;0<r;){var s=31-yt(r);o=1<<s,s=t[s],s>a&&(a=s),r&=~o}if(r=a,r=K()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Rc(r/1960))-r,10<r){e.timeoutHandle=vi(Fl.bind(null,e,$c,nl),r);break}Fl(e,$c,nl);break;case 5:Fl(e,$c,nl);break;default:throw Error(i(329))}}}return gl(e,K()),e.callbackNode===n?_l.bind(null,e):null}function vl(e,t){var n=Qc;return e.current.memoizedState.isDehydrated&&(El(e,t).flags|=256),e=Al(e,t),e!==2&&(t=$c,$c=n,t!==null&&yl(t)),e}function yl(e){$c===null?$c=e:$c.push.apply($c,e)}function bl(e){for(var t=e;;){if(t.flags&16384){var n=t.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var r=0;r<n.length;r++){var i=n[r],a=i.getSnapshot;i=i.value;try{if(!Cr(a(),i))return!1}catch{return!1}}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function xl(e,t){for(t&=~Zc,t&=~Xc,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-yt(t),r=1<<n;e[n]=-1,t&=~r}}function Sl(e){if(Q&6)throw Error(i(327));Ll();var t=Et(e,0);if(!(t&1))return gl(e,K()),null;var n=Al(e,t);if(e.tag!==0&&n===2){var r=kt(e);r!==0&&(t=r,n=vl(e,r))}if(n===1)throw n=Jc,El(e,0),xl(e,t),gl(e,K()),n;if(n===6)throw Error(i(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,Fl(e,$c,nl),gl(e,K()),null}function Cl(e,t){var n=Q;Q|=1;try{return e(t)}finally{Q=n,Q===0&&(tl=K()+500,Qi&&na())}}function wl(e){sl!==null&&sl.tag===0&&!(Q&6)&&Ll();var t=Q;Q|=1;var n=Vc.transition,r=q;try{if(Vc.transition=null,q=1,e)return e()}finally{q=r,Vc.transition=n,Q=t,!(Q&6)&&na()}}function Tl(){Gc=Kc.current,Y(Kc)}function El(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,yi(n)),Uc!==null)for(n=Uc.return;n!==null;){var r=n;switch(ha(r),r.tag){case 1:r=r.type.childContextTypes,r!=null&&Ki();break;case 3:uo(),Y(Hi),Y(Vi),_o();break;case 5:po(r);break;case 4:uo();break;case 13:Y(mo);break;case 19:Y(mo);break;case 10:Va(r.type._context);break;case 22:case 23:Tl()}n=n.return}if(Hc=e,Uc=e=Xl(e.current,null),Wc=Gc=t,qc=0,Jc=null,Zc=Xc=Yc=0,$c=Qc=null,Ga!==null){for(t=0;t<Ga.length;t++)if(n=Ga[t],r=n.interleaved,r!==null){n.interleaved=null;var i=r.next,a=n.pending;if(a!==null){var o=a.next;a.next=i,r.next=o}n.pending=r}Ga=null}return e}function Dl(e,t){do{var n=Uc;try{if(Ba(),vo.current=fs,wo){for(var r=xo.memoizedState;r!==null;){var a=r.queue;a!==null&&(a.pending=null),r=r.next}wo=!1}if(bo=0,Co=So=xo=null,To=!1,Eo=0,Bc.current=null,n===null||n.return===null){qc=1,Jc=t,Uc=null;break}a:{var o=e,s=n.return,c=n,l=t;if(t=Wc,c.flags|=32768,typeof l==`object`&&l&&typeof l.then==`function`){var u=l,d=c,f=d.tag;if(!(d.mode&1)&&(f===0||f===11||f===15)){var p=d.alternate;p?(d.updateQueue=p.updateQueue,d.memoizedState=p.memoizedState,d.lanes=p.lanes):(d.updateQueue=null,d.memoizedState=null)}var m=As(s);if(m!==null){m.flags&=-257,js(m,s,c,o,t),m.mode&1&&ks(o,u,t),t=m,l=u;var h=t.updateQueue;if(h===null){var g=new Set;g.add(l),t.updateQueue=g}else h.add(l);break a}else{if(!(t&1)){ks(o,u,t),kl();break a}l=Error(i(426))}}else if(va&&c.mode&1){var _=As(s);if(_!==null){!(_.flags&65536)&&(_.flags|=256),js(_,s,c,o,t),Oa(Cs(l,c));break a}}o=l=Cs(l,c),qc!==4&&(qc=2),Qc===null?Qc=[o]:Qc.push(o),o=s;do{switch(o.tag){case 3:o.flags|=65536,t&=-t,o.lanes|=t;var v=Ds(o,l,t);to(o,v);break a;case 1:c=l;var y=o.type,b=o.stateNode;if(!(o.flags&128)&&(typeof y.getDerivedStateFromError==`function`||b!==null&&typeof b.componentDidCatch==`function`&&(al===null||!al.has(b)))){o.flags|=65536,t&=-t,o.lanes|=t;var x=Os(o,c,t);to(o,x);break a}}o=o.return}while(o!==null)}Pl(n)}catch(e){t=e,Uc===n&&n!==null&&(Uc=n=n.return);continue}break}while(1)}function Ol(){var e=zc.current;return zc.current=fs,e===null?fs:e}function kl(){(qc===0||qc===3||qc===2)&&(qc=4),Hc===null||!(Yc&268435455)&&!(Xc&268435455)||xl(Hc,Wc)}function Al(e,t){var n=Q;Q|=2;var r=Ol();(Hc!==e||Wc!==t)&&(nl=null,El(e,t));do try{jl();break}catch(t){Dl(e,t)}while(1);if(Ba(),Q=n,zc.current=r,Uc!==null)throw Error(i(261));return Hc=null,Wc=0,qc}function jl(){for(;Uc!==null;)Nl(Uc)}function Ml(){for(;Uc!==null&&!ct();)Nl(Uc)}function Nl(e){var t=Wl(e.alternate,e,Gc);e.memoizedProps=e.pendingProps,t===null?Pl(e):Uc=t,Bc.current=null}function Pl(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&32768){if(n=lc(n,t),n!==null){n.flags&=32767,Uc=n;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{qc=6,Uc=null;return}}else if(n=cc(n,t,Gc),n!==null){Uc=n;return}if(t=t.sibling,t!==null){Uc=t;return}Uc=t=e}while(t!==null);qc===0&&(qc=5)}function Fl(e,t,n){var r=q,i=Vc.transition;try{Vc.transition=null,q=1,Il(e,t,n,r)}finally{Vc.transition=i,q=r}return null}function Il(e,t,n,r){do Ll();while(sl!==null);if(Q&6)throw Error(i(327));n=e.finishedWork;var a=e.finishedLanes;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(i(177));e.callbackNode=null,e.callbackPriority=0;var o=n.lanes|n.childLanes;if(Nt(e,o),e===Hc&&(Uc=Hc=null,Wc=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||ol||(ol=!0,Gl(pt,function(){return Ll(),null})),o=(n.flags&15990)!=0,n.subtreeFlags&15990||o){o=Vc.transition,Vc.transition=null;var s=q;q=1;var c=Q;Q|=4,Bc.current=null,gc(e,n),jc(n,e),Ar(gi),sn=!!hi,gi=hi=null,e.current=n,Nc(n,e,a),lt(),Q=c,q=s,Vc.transition=o}else e.current=n;if(ol&&(ol=!1,sl=e,cl=a),o=e.pendingLanes,o===0&&(al=null),vt(n.stateNode,r),gl(e,K()),t!==null)for(r=e.onRecoverableError,n=0;n<t.length;n++)a=t[n],r(a.value,{componentStack:a.stack,digest:a.digest});if(rl)throw rl=!1,e=il,il=null,e;return cl&1&&e.tag!==0&&Ll(),o=e.pendingLanes,o&1?e===ul?ll++:(ll=0,ul=e):ll=0,na(),null}function Ll(){if(sl!==null){var e=Ft(cl),t=Vc.transition,n=q;try{if(Vc.transition=null,q=16>e?16:e,sl===null)var r=!1;else{if(e=sl,sl=null,cl=0,Q&6)throw Error(i(331));var a=Q;for(Q|=4,Z=e.current;Z!==null;){var o=Z,s=o.child;if(Z.flags&16){var c=o.deletions;if(c!==null){for(var l=0;l<c.length;l++){var u=c[l];for(Z=u;Z!==null;){var d=Z;switch(d.tag){case 0:case 11:case 15:_c(8,d,o)}var f=d.child;if(f!==null)f.return=d,Z=f;else for(;Z!==null;){d=Z;var p=d.sibling,m=d.return;if(bc(d),d===u){Z=null;break}if(p!==null){p.return=m,Z=p;break}Z=m}}}var h=o.alternate;if(h!==null){var g=h.child;if(g!==null){h.child=null;do{var _=g.sibling;g.sibling=null,g=_}while(g!==null)}}Z=o}}if(o.subtreeFlags&2064&&s!==null)s.return=o,Z=s;else b:for(;Z!==null;){if(o=Z,o.flags&2048)switch(o.tag){case 0:case 11:case 15:_c(9,o,o.return)}var v=o.sibling;if(v!==null){v.return=o.return,Z=v;break b}Z=o.return}}var y=e.current;for(Z=y;Z!==null;){s=Z;var b=s.child;if(s.subtreeFlags&2064&&b!==null)b.return=s,Z=b;else b:for(s=y;Z!==null;){if(c=Z,c.flags&2048)try{switch(c.tag){case 0:case 11:case 15:vc(9,c)}}catch(e){zl(c,c.return,e)}if(c===s){Z=null;break b}var x=c.sibling;if(x!==null){x.return=c.return,Z=x;break b}Z=c.return}}if(Q=a,na(),_t&&typeof _t.onPostCommitFiberRoot==`function`)try{_t.onPostCommitFiberRoot(gt,e)}catch{}r=!0}return r}finally{q=n,Vc.transition=t}}return!1}function Rl(e,t,n){t=Cs(n,t),t=Ds(e,t,1),e=$a(e,t,1),t=pl(),e!==null&&(Mt(e,1,t),gl(e,t))}function zl(e,t,n){if(e.tag===3)Rl(e,e,n);else for(;t!==null;){if(t.tag===3){Rl(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(al===null||!al.has(r))){e=Cs(n,e),e=Os(t,e,1),t=$a(t,e,1),e=pl(),t!==null&&(Mt(t,1,e),gl(t,e));break}}t=t.return}}function Bl(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),t=pl(),e.pingedLanes|=e.suspendedLanes&n,Hc===e&&(Wc&n)===n&&(qc===4||qc===3&&(Wc&130023424)===Wc&&500>K()-el?El(e,0):Zc|=n),gl(e,t)}function Vl(e,t){t===0&&(e.mode&1?(t=wt,wt<<=1,!(wt&130023424)&&(wt=4194304)):t=1);var n=pl();e=Ja(e,t),e!==null&&(Mt(e,t,n),gl(e,n))}function Hl(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Vl(e,n)}function Ul(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(i(314))}r!==null&&r.delete(t),Vl(e,n)}var Wl=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Hi.current)Ns=!0;else{if((e.lanes&n)===0&&!(t.flags&128))return Ns=!1,nc(e,t,n);Ns=!!(e.flags&131072)}else Ns=!1,va&&t.flags&1048576&&pa(t,oa,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;ec(e,t),e=t.pendingProps;var a=Wi(t,Vi.current);Ua(t,n),a=Ao(null,t,r,e,a,n);var o=jo();return t.flags|=1,typeof a==`object`&&a&&typeof a.render==`function`&&a.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Gi(r)?(o=!0,Yi(t)):o=!1,t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,Xa(t),a.updater=vs,t.stateNode=a,a._reactInternals=t,Ss(t,r,e,n),t=Hs(null,t,r,!0,o,n)):(t.tag=0,va&&o&&ma(t),Ps(null,t,a,n),t=t.child),t;case 16:r=t.elementType;a:{switch(ec(e,t),e=t.pendingProps,a=r._init,r=a(r._payload),t.type=r,a=t.tag=Yl(r),e=gs(r,e),a){case 0:t=Bs(null,t,r,e,n);break a;case 1:t=Vs(null,t,r,e,n);break a;case 11:t=Fs(null,t,r,e,n);break a;case 14:t=Is(null,t,r,gs(r.type,e),n);break a}throw Error(i(306,r,``))}return t;case 0:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:gs(r,a),Bs(e,t,r,a,n);case 1:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:gs(r,a),Vs(e,t,r,a,n);case 3:a:{if(Us(t),e===null)throw Error(i(387));r=t.pendingProps,o=t.memoizedState,a=o.element,Za(e,t),no(t,r,null,n);var s=t.memoizedState;if(r=s.element,o.isDehydrated)if(o={element:r,isDehydrated:!1,cache:s.cache,pendingSuspenseBoundaries:s.pendingSuspenseBoundaries,transitions:s.transitions},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){a=Cs(Error(i(423)),t),t=Ws(e,t,r,n,a);break a}else if(r!==a){a=Cs(Error(i(424)),t),t=Ws(e,t,r,n,a);break a}else for(_a=wi(t.stateNode.containerInfo.firstChild),ga=t,va=!0,ya=null,n=Fa(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(Da(),r===a){t=tc(e,t,n);break a}Ps(e,t,r,n)}t=t.child}return t;case 5:return fo(t),e===null&&Ca(t),r=t.type,a=t.pendingProps,o=e===null?null:e.memoizedProps,s=a.children,_i(r,a)?s=null:o!==null&&_i(r,o)&&(t.flags|=32),zs(e,t),Ps(e,t,s,n),t.child;case 6:return e===null&&Ca(t),null;case 13:return qs(e,t,n);case 4:return lo(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Pa(t,null,r,n):Ps(e,t,r,n),t.child;case 11:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:gs(r,a),Fs(e,t,r,a,n);case 7:return Ps(e,t,t.pendingProps,n),t.child;case 8:return Ps(e,t,t.pendingProps.children,n),t.child;case 12:return Ps(e,t,t.pendingProps.children,n),t.child;case 10:a:{if(r=t.type._context,a=t.pendingProps,o=t.memoizedProps,s=a.value,X(Ia,r._currentValue),r._currentValue=s,o!==null)if(Cr(o.value,s)){if(o.children===a.children&&!Hi.current){t=tc(e,t,n);break a}}else for(o=t.child,o!==null&&(o.return=t);o!==null;){var c=o.dependencies;if(c!==null){s=o.child;for(var l=c.firstContext;l!==null;){if(l.context===r){if(o.tag===1){l=Qa(-1,n&-n),l.tag=2;var u=o.updateQueue;if(u!==null){u=u.shared;var d=u.pending;d===null?l.next=l:(l.next=d.next,d.next=l),u.pending=l}}o.lanes|=n,l=o.alternate,l!==null&&(l.lanes|=n),Ha(o.return,n,t),c.lanes|=n;break}l=l.next}}else if(o.tag===10)s=o.type===t.type?null:o.child;else if(o.tag===18){if(s=o.return,s===null)throw Error(i(341));s.lanes|=n,c=s.alternate,c!==null&&(c.lanes|=n),Ha(s,n,t),s=o.sibling}else s=o.child;if(s!==null)s.return=o;else for(s=o;s!==null;){if(s===t){s=null;break}if(o=s.sibling,o!==null){o.return=s.return,s=o;break}s=s.return}o=s}Ps(e,t,a.children,n),t=t.child}return t;case 9:return a=t.type,r=t.pendingProps.children,Ua(t,n),a=Wa(a),r=r(a),t.flags|=1,Ps(e,t,r,n),t.child;case 14:return r=t.type,a=gs(r,t.pendingProps),a=gs(r.type,a),Is(e,t,r,a,n);case 15:return Ls(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:gs(r,a),ec(e,t),t.tag=1,Gi(r)?(e=!0,Yi(t)):e=!1,Ua(t,n),bs(t,r,a),Ss(t,r,a,n),Hs(null,t,r,!0,e,n);case 19:return $s(e,t,n);case 22:return Rs(e,t,n)}throw Error(i(156,t.tag))};function Gl(e,t){return ot(e,t)}function Kl(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function ql(e,t,n,r){return new Kl(e,t,n,r)}function Jl(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Yl(e){if(typeof e==`function`)return+!!Jl(e);if(e!=null){if(e=e.$$typeof,e===k)return 11;if(e===M)return 14}return 2}function Xl(e,t){var n=e.alternate;return n===null?(n=ql(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Zl(e,t,n,r,a,o){var s=2;if(r=e,typeof e==`function`)Jl(e)&&(s=1);else if(typeof e==`string`)s=5;else a:switch(e){case T:return Ql(n.children,a,o,t);case E:s=8,a|=8;break;case D:return e=ql(12,n,t,a|2),e.elementType=D,e.lanes=o,e;case A:return e=ql(13,n,t,a),e.elementType=A,e.lanes=o,e;case j:return e=ql(19,n,t,a),e.elementType=j,e.lanes=o,e;case te:return $l(n,a,o,t);default:if(typeof e==`object`&&e)switch(e.$$typeof){case ee:s=10;break a;case O:s=9;break a;case k:s=11;break a;case M:s=14;break a;case N:s=16,r=null;break a}throw Error(i(130,e==null?e:typeof e,``))}return t=ql(s,n,t,a),t.elementType=e,t.type=r,t.lanes=o,t}function Ql(e,t,n,r){return e=ql(7,e,r,t),e.lanes=n,e}function $l(e,t,n,r){return e=ql(22,e,r,t),e.elementType=te,e.lanes=n,e.stateNode={isHidden:!1},e}function eu(e,t,n){return e=ql(6,e,null,t),e.lanes=n,e}function tu(e,t,n){return t=ql(4,e.children===null?[]:e.children,e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function nu(e,t,n,r,i){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=jt(0),this.expirationTimes=jt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=jt(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function ru(e,t,n,r,i,a,o,s,c){return e=new nu(e,t,n,s,c),t===1?(t=1,!0===a&&(t|=8)):t=0,a=ql(3,null,null,t),e.current=a,a.stateNode=e,a.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Xa(a),e}function iu(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:w,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}function au(e){if(!e)return Bi;e=e._reactInternals;a:{if(tt(e)!==e||e.tag!==1)throw Error(i(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break a;case 1:if(Gi(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break a}}t=t.return}while(t!==null);throw Error(i(171))}if(e.tag===1){var n=e.type;if(Gi(n))return Ji(e,n,t)}return t}function ou(e,t,n,r,i,a,o,s,c){return e=ru(n,r,!0,e,i,a,o,s,c),e.context=au(null),n=e.current,r=pl(),i=ml(n),a=Qa(r,i),a.callback=t??null,$a(n,a,i),e.current.lanes=i,Mt(e,i,r),gl(e,r),e}function su(e,t,n,r){var i=t.current,a=pl(),o=ml(i);return n=au(n),t.context===null?t.context=n:t.pendingContext=n,t=Qa(a,o),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),e=$a(i,t,o),e!==null&&(hl(e,i,o,a),eo(e,i,o)),o}function cu(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function lu(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function uu(e,t){lu(e,t),(e=e.alternate)&&lu(e,t)}function du(){return null}var fu=typeof reportError==`function`?reportError:function(e){console.error(e)};function pu(e){this._internalRoot=e}mu.prototype.render=pu.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(i(409));su(e,t,null,null)},mu.prototype.unmount=pu.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;wl(function(){su(null,e,null,null)}),t[ki]=null}};function mu(e){this._internalRoot=e}mu.prototype.unstable_scheduleHydration=function(e){if(e){var t=zt();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Jt.length&&t!==0&&t<Jt[n].priority;n++);Jt.splice(n,0,e),n===0&&$t(e)}};function hu(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function gu(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==` react-mount-point-unstable `))}function _u(){}function vu(e,t,n,r,i){if(i){if(typeof r==`function`){var a=r;r=function(){var e=cu(o);a.call(e)}}var o=ou(t,r,e,0,null,!1,!1,``,_u);return e._reactRootContainer=o,e[ki]=o.current,ri(e.nodeType===8?e.parentNode:e),wl(),o}for(;i=e.lastChild;)e.removeChild(i);if(typeof r==`function`){var s=r;r=function(){var e=cu(c);s.call(e)}}var c=ru(e,0,!1,null,null,!1,!1,``,_u);return e._reactRootContainer=c,e[ki]=c.current,ri(e.nodeType===8?e.parentNode:e),wl(function(){su(t,c,n,r)}),c}function yu(e,t,n,r,i){var a=n._reactRootContainer;if(a){var o=a;if(typeof i==`function`){var s=i;i=function(){var e=cu(o);s.call(e)}}su(t,o,e,i)}else o=vu(n,t,e,i,r);return cu(o)}It=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=Tt(t.pendingLanes);n!==0&&(Pt(t,n|1),gl(t,K()),!(Q&6)&&(tl=K()+500,na()))}break;case 13:wl(function(){var t=Ja(e,1);t!==null&&hl(t,e,1,pl())}),uu(e,1)}},Lt=function(e){if(e.tag===13){var t=Ja(e,134217728);t!==null&&hl(t,e,134217728,pl()),uu(e,134217728)}},Rt=function(e){if(e.tag===13){var t=ml(e),n=Ja(e,t);n!==null&&hl(n,e,t,pl()),uu(e,t)}},zt=function(){return q},Bt=function(e,t){var n=q;try{return q=e,t()}finally{q=n}},W=function(e,t,n){switch(t){case`input`:if(he(e,n),t=n.name,n.type===`radio`&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll(`input[name=`+JSON.stringify(``+t)+`][type="radio"]`),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=Ii(r);if(!a)throw Error(i(90));ue(r),he(r,a)}}}break;case`textarea`:xe(e,n);break;case`select`:t=n.value,t!=null&&ye(e,!!n.multiple,t,!1)}},Be=Cl,Ve=wl;var bu={usingClientEntryPoint:!1,Events:[Pi,Fi,Ii,Re,ze,Cl]},xu={findFiberByHostInstance:Ni,bundleType:0,version:`18.3.1`,rendererPackageName:`react-dom`},Su={bundleType:xu.bundleType,version:xu.version,rendererPackageName:xu.rendererPackageName,rendererConfig:xu.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:S.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=at(e),e===null?null:e.stateNode},findFiberByHostInstance:xu.findFiberByHostInstance||du,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:`18.3.1-next-f1338f8080-20240426`};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`){var Cu=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Cu.isDisabled&&Cu.supportsFiber)try{gt=Cu.inject(Su),_t=Cu}catch{}}e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=bu,e.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!hu(t))throw Error(i(200));return iu(e,t,null,n)},e.createRoot=function(e,t){if(!hu(e))throw Error(i(299));var n=!1,r=``,a=fu;return t!=null&&(!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onRecoverableError!==void 0&&(a=t.onRecoverableError)),t=ru(e,1,!1,null,null,n,!1,r,a),e[ki]=t.current,ri(e.nodeType===8?e.parentNode:e),new pu(t)},e.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render==`function`?Error(i(188)):(e=Object.keys(e).join(`,`),Error(i(268,e)));return e=at(t),e=e===null?null:e.stateNode,e},e.flushSync=function(e){return wl(e)},e.hydrate=function(e,t,n){if(!gu(t))throw Error(i(200));return yu(null,e,t,!0,n)},e.hydrateRoot=function(e,t,n){if(!hu(e))throw Error(i(405));var r=n!=null&&n.hydratedSources||null,a=!1,o=``,s=fu;if(n!=null&&(!0===n.unstable_strictMode&&(a=!0),n.identifierPrefix!==void 0&&(o=n.identifierPrefix),n.onRecoverableError!==void 0&&(s=n.onRecoverableError)),t=ou(t,null,e,1,n??null,a,!1,o,s),e[ki]=t.current,ri(e),r)for(e=0;e<r.length;e++)n=r[e],a=n._getVersion,a=a(n._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[n,a]:t.mutableSourceEagerHydrationData.push(n,a);return new mu(t)},e.render=function(e,t,n){if(!gu(t))throw Error(i(200));return yu(null,e,t,!1,n)},e.unmountComponentAtNode=function(e){if(!gu(e))throw Error(i(40));return e._reactRootContainer?(wl(function(){yu(null,null,e,!1,function(){e._reactRootContainer=null,e[ki]=null})}),!0):!1},e.unstable_batchedUpdates=Cl,e.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!gu(n))throw Error(i(200));if(e==null||e._reactInternals===void 0)throw Error(i(38));return yu(e,t,n,!1,r)},e.version=`18.3.1-next-f1338f8080-20240426`})),H=ce(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=Ne()})),Pe=ce((e=>{var t=H();e.createRoot=t.createRoot,e.hydrateRoot=t.hydrateRoot}))(),U=_(n(),1),W=N(),Fe=320;function Ie(){return L().basket}function Le(){let e=(0,U.useSyncExternalStore)(V,Ie).items.length,[t,n]=(0,U.useState)(!1),r=(0,U.useRef)(e);if((0,U.useEffect)(()=>{if(e>r.current){n(!0);let t=setTimeout(()=>n(!1),Fe);return r.current=e,()=>clearTimeout(t)}r.current=e},[e]),e===0)return null;let i=e===1?`section`:`sections`;return(0,W.jsxs)(`button`,{type:`button`,className:`basket-chip${t?` basket-chip-pulse`:``}`,"aria-label":`Open basket (${e} ${i}). Click to compose.`,title:`Basket — ${e} ${i}. Click to compose.`,onClick:()=>P(D()),children:[(0,W.jsxs)(`svg`,{className:`basket-chip-icon`,width:`14`,height:`14`,viewBox:`0 0 14 14`,"aria-hidden":`true`,focusable:`false`,children:[(0,W.jsx)(`rect`,{x:`2.75`,y:`2`,width:`8.5`,height:`10.5`,rx:`1`,fill:`none`,stroke:`currentColor`,strokeWidth:`1`}),(0,W.jsx)(`rect`,{x:`4.5`,y:`0.75`,width:`5`,height:`2.5`,rx:`0.5`,fill:`none`,stroke:`currentColor`,strokeWidth:`1`})]}),(0,W.jsx)(`span`,{className:`basket-chip-count`,children:e})]})}var Re={ok:`OK`,warn:`WARN`,fail:`FAIL`};function ze(){let e=(0,U.useSyncExternalStore)(V,()=>L().doctor);if(!e)return null;let{severity:t,counts:n,generated_at:r}=e,i;i=n.fail>0?`${n.fail} fail`:t===`warn`&&n.warn>0?`${n.warn} warn`:`OK`;let a=`Doctor diagnostic: ${Re[t]} — ${n.ok} OK, ${n.warn} warn, ${n.fail} fail`,o=`Doctor · ${Re[t]} (click for report)`;try{let e=new Date(r).toLocaleTimeString();o=`Doctor · ${Re[t]} · checked ${e} (click for report)`}catch{}return(0,W.jsxs)(`button`,{type:`button`,className:`doctor-chip doctor-chip--${t}`,title:o,"aria-label":a,onClick:()=>P({type:`OPEN_DOCTOR_MODAL`}),children:[(0,W.jsx)(`span`,{className:`doctor-chip-label`,children:`Doctor`}),(0,W.jsx)(`span`,{className:`doctor-chip-status`,children:i})]})}function Be(){return(0,U.useSyncExternalStore)(V,()=>L().snapshot)}var Ve=`/api/update/status`,He=`/api/update`,Ue=`/api/update/dismiss`;function We(e,t=null){return e===`brew`?`brew update --quiet && brew upgrade cctally`:e===`npm`?`npm install -g cctally@${t??`latest`}`:null}function Ge(e){return!e||!e.includes(`-`)?null:`You're on prerelease ${e}; this banner suggests stable.\nTo track prereleases, manage manually: npm install -g cctally@next`}function Ke(e,t,n){let r=n===`beta`?`beta`:`stable`;if(!e||typeof e!=`object`)return null;let i=e;if(typeof i._error==`string`)return{current_version:null,latest_version:null,available:!1,method:`unknown`,update_command:null,release_notes_url:null,check_status:`unavailable`,checked_at_utc:null,prerelease_note:null,configured_channel:r};let a=typeof i.current_version==`string`?i.current_version:null,o=typeof i.latest_version==`string`?i.latest_version:null,s=i.install,c=s&&typeof s==`object`?s:{},l=typeof c.method==`string`?c.method:`unknown`,u=l===`brew`||l===`npm`?l:`unknown`,d=typeof i.check_status==`string`?i.check_status:null,f=d&&[`ok`,`rate_limited`,`fetch_failed`,`parse_failed`,`unavailable`].includes(d)?d:null,p=typeof i.checked_at_utc==`string`?i.checked_at_utc:null,m=typeof i.latest_version_url==`string`?i.latest_version_url:null;return{current_version:a,latest_version:o,available:Je(a,o,t),method:u,update_command:u===`npm`&&r===`beta`&&o?We(`npm`,o):We(u,null),release_notes_url:m,check_status:f,checked_at_utc:p,prerelease_note:Ge(a),configured_channel:r}}function qe(e){if(!e||typeof e!=`object`)return{skipped_versions:[],remind_after:null};let t=e,n=Array.isArray(t.skipped_versions)?t.skipped_versions.filter(e=>typeof e==`string`):[],r=null;if(t.remind_after&&typeof t.remind_after==`object`){let e=t.remind_after;typeof e.version==`string`&&typeof e.until_utc==`string`&&(r={version:e.version,until_utc:e.until_utc})}return{skipped_versions:n,remind_after:r}}function Je(e,t,n){if(!e||!t||!Ye(t,e)||n.skipped_versions.includes(t))return!1;let r=n.remind_after;if(r&&r.version&&r.until_utc)try{if(!Ye(t,r.version)){let e=Date.parse(r.until_utc);if(Number.isFinite(e)&&Date.now()<e)return!1}}catch{}return!0}function Ye(e,t){let n=e=>{let[t,n=``]=e.split(`-`,2),r=t.split(`.`).map(e=>parseInt(e,10));for(;r.length<3;)r.push(0);return[r[0]||0,r[1]||0,r[2]||0,n]},[r,i,a,o]=n(e),[s,c,l,u]=n(t);return r===s?i===c?a===l?!o&&u?!0:o&&!u?!1:o>u:a>l:i>c:r>s}async function Xe(){try{let e=await fetch(Ve);if(!e.ok)return;let t=await e.json(),n=qe(t?.suppress),r=Ke(t?.state,n,t?.configured_channel);P({type:`SET_UPDATE_STATE`,state:r,suppress:n}),L().update.status===`success`&&r?.current_version&&r.current_version===r.latest_version&&(P({type:`CLOSE_UPDATE_MODAL`}),P({type:`RESET_UPDATE_RUN`}))}catch{}}async function Ze(){P({type:`RESET_UPDATE_RUN`}),P({type:`SET_UPDATE_STATUS`,status:`running`,errorMessage:null}),P({type:`SET_UPDATE_RUN_ID`,runId:null,startedAt:Date.now()});try{let e=await fetch(He,{method:`POST`,headers:{"Content-Type":`application/json`},body:`{}`}),t=await e.json().catch(()=>({}));if(e.status===202&&typeof t.run_id==`string`){P({type:`SET_UPDATE_RUN_ID`,runId:t.run_id});return}if(e.status===409&&typeof t.run_id_in_progress==`string`){P({type:`SET_UPDATE_RUN_ID`,runId:t.run_id_in_progress});return}P({type:`SET_UPDATE_STATUS`,status:`failed`,errorMessage:typeof t.error==`string`?t.error:`failed to start update (HTTP ${e.status})`})}catch(e){P({type:`SET_UPDATE_STATUS`,status:`failed`,errorMessage:`network error: `+e.message})}}async function Qe(e){if(e){try{if((await fetch(Ue,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({action:`skip`,version:e})})).ok){let t=L().update;t.state&&P({type:`SET_UPDATE_STATE`,state:{...t.state,available:!1},suppress:{...t.suppress,skipped_versions:t.suppress.skipped_versions.includes(e)?t.suppress.skipped_versions:[...t.suppress.skipped_versions,e]}}),P({type:`CLOSE_UPDATE_MODAL`})}}catch{}await Xe()}}async function $e(e){try{if((await fetch(Ue,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({action:`remind`,days:e})})).ok){let e=L().update;e.state&&P({type:`SET_UPDATE_STATE`,state:{...e.state,available:!1},suppress:e.suppress}),P({type:`CLOSE_UPDATE_MODAL`})}}catch{}await Xe()}var et={refreshState:Xe,start:Ze,skip:Qe,remind:$e,open:()=>P({type:`OPEN_UPDATE_MODAL`}),close:()=>P({type:`CLOSE_UPDATE_MODAL`})};function tt(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function nt(e){return typeof e==`number`&&Number.isSafeInteger(e)&&e>0}function rt(e){if(!tt(e)||e.envelope_version!==2||typeof e.generated_at!=`string`||!/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?Z$/.test(e.generated_at)||!Number.isFinite(Date.parse(e.generated_at)))return!1;let t=e=>e==null||tt(e);return tt(e.header)&&t(e.current_week)&&t(e.forecast)&&t(e.trend)&&tt(e.weekly)&&Array.isArray(e.weekly.rows)&&tt(e.monthly)&&Array.isArray(e.monthly.rows)&&tt(e.blocks)&&Array.isArray(e.blocks.rows)&&tt(e.daily)&&Array.isArray(e.daily.rows)&&tt(e.sessions)&&Array.isArray(e.sessions.rows)&&t(e.projects)&&tt(e.display)&&Array.isArray(e.alerts)&&tt(e.alerts_settings)}function it(e){return!tt(e)||e.version!==1||!nt(e.generation)?!1:e.type===`ready`||e.type===`stream_error`?!0:e.type===`snapshot`&&nt(e.deliveryGeneration)&&rt(e.snapshot)}var at=1e3;function G(e){let t=null,n=!1,r=0,i=()=>{if(n||t!=null)return;r+=1;let i=r;try{let a=new EventSource(`/api/events`);t=a,a.addEventListener(`update`,o=>{if(!(n||t!==a||r!==i))try{let t=JSON.parse(o.data);if(!rt(t))throw Error(`invalid dashboard envelope`);e.onSnapshot(t)}catch{console.error(`Dashboard stream frame was rejected.`),e.onError()}}),a.onerror=()=>{!n&&t===a&&r===i&&e.onError()},e.onReady()}catch{t=null,e.onError()}},a=()=>{r+=1,t?.close(),t=null};function o(e){e.persisted?a():c()}function s(e){e.persisted&&i()}function c(){n||(n=!0,typeof window<`u`&&(window.removeEventListener(`pagehide`,o),window.removeEventListener(`pageshow`,s)),r+=1,t?.close(),t=null)}return i(),typeof window<`u`&&(window.addEventListener(`pagehide`,o),window.addEventListener(`pageshow`,s)),{suspend:a,resume:i,close:c}}function ot(e){if(typeof SharedWorker>`u`)return G(e);let t=null,n=null,r=null,i=!1,a=!0,o=1,s=!1,c=!1,l=null,u=()=>{l!=null&&clearTimeout(l),l=null},d=e=>({version:1,type:e,generation:o}),f=()=>{if(u(),n!=null){try{n.postMessage(d(`unsubscribe`))}catch{}n.onmessage=null,n.onmessageerror=null;try{n.close()}catch{}}t!=null&&(t.onerror=null),n=null,t=null},p=()=>{if(!(i||r!=null)){if(c){e.onError();return}o+=1,f(),r=G(e)}},m=()=>{u(),l=setTimeout(()=>{l=null,!(i||r!=null||s)&&(c?e.onError():p())},at)},h=()=>{console.error(`Dashboard SharedWorker message was rejected.`),c?e.onError():p()};try{t=new SharedWorker(new URL(`/static/assets/dashboardStream.shared-worker-1XTMV3nr.js`,``+import.meta.url),{type:`module`,name:`cctally-dashboard-stream-v1`}),n=t.port,n.onmessage=t=>{if(i||r!=null)return;if(!it(t.data)){h();return}let n=t.data;if(n.generation===o){if(n.type===`ready`){s=!0,u(),e.onReady();return}if(n.type===`stream_error`){c?e.onError():p();return}if(!s){h();return}e.onSnapshot(n.snapshot)&&(c=!0)}},n.onmessageerror=p,t.onerror=p,n.start(),n.postMessage(d(`subscribe`)),m()}catch(t){console.warn(`SharedWorker dashboard stream unavailable; using a direct stream.`,t),f(),r=G(e)}function g(){i||!a||(a=!1,r?.suspend(),n!=null&&(o+=1,s=!1,u(),n.postMessage(d(`suspend`))))}function _(){if(!(i||a)){if(a=!0,r!=null){r.resume();return}n!=null&&(o+=1,s=!1,n.postMessage(d(`resume`)),m())}}function v(e){e.persisted?g():b()}function y(e){e.persisted&&_()}function b(){i||(i=!0,typeof window<`u`&&(window.removeEventListener(`pagehide`,v),window.removeEventListener(`pageshow`,y)),r?.close(),o+=1,f())}return typeof window<`u`&&(window.addEventListener(`pagehide`,v),window.addEventListener(`pageshow`,y)),{suspend:g,resume:_,close:b}}var st=null,ct=`disconnected`,lt=!1,K=null,ut=0,dt=!1,ft=new Set,pt=!0,mt=3e4,ht=null,gt=null,_t=1e4,vt=`The dashboard’s update stream is open but has sent no data. Reload the page, and close other dashboard tabs if you have several open.`,yt=null;function bt(){return ct}function xt(){return ct===`disconnected`}function St(){return lt}function Ct(){return K}function wt(){Tt(),yt=setTimeout(()=>{yt=null,!(L().snapshot!=null||lt)&&(lt=!0,K=vt,Dt())},_t)}function Tt(){yt!=null&&(clearTimeout(yt),yt=null)}function Et(e){return ft.add(e),()=>{ft.delete(e)}}function Dt(){ft.forEach(e=>{try{e()}catch(e){console.error(`status subscriber error:`,e)}})}function Ot(e){ct!==e&&(ct=e,Dt())}function kt(e={}){st&&=(st.close(),null),Ot(`disconnected`),lt=!1,K=null,dt=!1,ut+=1,pt=!0,Dt(),fe(),Mt(e),!(typeof document<`u`&&document.visibilityState===`hidden`)&&Pt(e)}function At(){st&&(st.suspend(),Ot(`suspended`),Tt(),pt=!0)}function jt(e){if(!(typeof document>`u`)){if(document.visibilityState===`hidden`){if(ht!=null)return;ht=setTimeout(()=>{ht=null,At()},mt);return}ht!=null&&(clearTimeout(ht),ht=null),ct===`suspended`&&st!=null?(Ot(`resuming`),st.resume()):st??Pt(e)}}function Mt(e){typeof document>`u`||(Nt(),gt=()=>jt(e),document.addEventListener(`visibilitychange`,gt))}function Nt(){ht!=null&&(clearTimeout(ht),ht=null),gt!=null&&typeof document<`u`&&document.removeEventListener(`visibilitychange`,gt),gt=null}function Pt(e){let t=ut,n=!1;st=ot({onReady:()=>{t===ut&&wt()},onSnapshot:r=>{if(t!==ut||!De(r))return!1;n=!1,Tt(),lt&&(lt=!1,K=null,Dt()),Ft(r),It(r),Lt(r),Rt(r);let i=!1;return dt||(dt=!0,e.onConnect?.(),i=!0),ct!==`connected`&&(Ot(`connected`),i||e.onConnect?.()),!0},onError:()=>{t===ut&&(L().snapshot==null&&!lt&&(lt=!0,Dt()),ct!==`disconnected`&&(Ot(`disconnected`),pt=!0),n||(n=!0,pt=!0,e.onDisconnect?.()))}})}var q={enabled:!1,weekly_thresholds:[90,95],five_hour_thresholds:[90,95],budget_thresholds:[],budget_enabled:!1,weekly_usd:null,projected_weekly_enabled:!1,projected_budget_enabled:!1,project_alerts_enabled:!1,codex_budget_configured:!1,codex_budget_alerts_enabled:!1,codex_projected_enabled:!1};function Ft(e){P({type:`INGEST_SOURCE_ALERTS`,rows:Oe(e),rateChanges:e.meter_rate_changes??[],alertsSettings:e.alerts_settings??q,isFirstTick:pt}),pt=!1}function It(e){if(!e.update)return;let t=qe(e.update.suppress);P({type:`SET_UPDATE_STATE`,state:Ke(e.update.state,t,e.update.configured_channel),suppress:t})}function Lt(e){e.doctor&&P({type:`SET_DOCTOR_AGGREGATE`,doctor:e.doctor})}function Rt(e){P({type:`INGEST_DASHBOARD_PREFS`,prefs:e.dashboard_prefs??{}})}function zt(){return{state:(0,U.useSyncExternalStore)(Et,()=>bt()),disconnected:(0,U.useSyncExternalStore)(Et,()=>xt()),bootstrapError:(0,U.useSyncExternalStore)(Et,()=>St()),bootstrapMessage:(0,U.useSyncExternalStore)(Et,()=>Ct())}}var Bt={"":0,fresh:1,aging:2,stale:3};function Vt(e,t){return Bt[e]>=Bt[t]?e:t}function Ht(e){return Number.isFinite(e)&&e>0?Math.floor(e):0}function Ut(e){let t=Ht(e);if(t<60)return`${t}s`;if(t<3600)return`${Math.floor(t/60)}m`;if(t<86400){let e=Math.floor(t/3600),n=Math.floor(t%3600/60);return n===0?`${e}h`:`${e}h ${n}m`}let n=Math.floor(t/86400),r=Math.floor(t%86400/3600);return r===0?`${n}d`:`${n}d ${r}h`}function Wt(e){return`${Ut(e)} ago`}function Gt(e){let t=Ht(e),n=t<300?`fresh`:t<1800?`aging`:`stale`;return{text:Wt(t),bucket:n}}function Kt(e){return e?` sync-chip--${e}`:``}function qt({id:e=`sync-chip`}={}){let t=Be(),{disconnected:n,state:r}=zt(),i=(0,U.useSyncExternalStore)(V,()=>L().snapshotObservedAtMs),a=(0,U.useSyncExternalStore)(V,()=>L().syncErrorFloorUntil),o=(0,U.useSyncExternalStore)(V,()=>L().syncBusy),s=(0,U.useSyncExternalStore)(V,()=>L().syncSuccessFlashUntil),c=(0,U.useSyncExternalStore)(V,()=>L().syncBusyNoticeUntil),l=(0,U.useSyncExternalStore)(V,()=>L().outstandingSyncId),[u,d]=(0,U.useState)(`sync paused`),[f,p]=(0,U.useState)(``),[m,h]=(0,U.useState)(``),g=(0,U.useRef)(0),[,_]=(0,U.useState)(0),[,v]=(0,U.useState)(0),[,y]=(0,U.useState)(0),b=Date.now(),x=b<a,S=b<s,C=b<c,w=l!=null,T=O(t),E=l!=null&&T.requested_id>=l&&T.started_id>=l,D=T.rebuilding,ee=de(t?.sync_age_s??null,i,b),k=Vt(m,!n&&t&&!t.last_sync_error&&ee!=null?Gt(ee).bucket:``);if((0,U.useEffect)(()=>{if(!(x||S)){if(n){d(`disconnected`),p(`var(--accent-red)`),h(``);return}if(t){if(t.last_sync_error){h(``);return}if(t.sync_age_s==null){d(`sync paused`),p(``),h(``),g.current=0;return}p(``),g.current=de(t.sync_age_s,i,Date.now())??0;{let e=Gt(g.current);d(`synced ${e.text}`),h(e.bucket)}}}},[t,n,x,i,S]),(0,U.useEffect)(()=>{let e=window.setInterval(()=>{if(n||Date.now()<L().syncErrorFloorUntil||!t||t.sync_age_s==null||t.last_sync_error)return;g.current=de(t.sync_age_s,i,Date.now())??g.current;let e=Gt(g.current);d(`synced ${e.text}`),h(e.bucket)},1e3);return()=>window.clearInterval(e)},[t,n,i]),(0,U.useEffect)(()=>{if(!x)return;let e=a-Date.now();if(e<=0)return;let t=window.setTimeout(()=>_(e=>e+1),e);return()=>window.clearTimeout(t)},[a,x]),(0,U.useEffect)(()=>{if(!S)return;let e=s-Date.now();if(e<=0)return;let t=window.setTimeout(()=>v(e=>e+1),e);return()=>window.clearTimeout(t)},[s,S]),(0,U.useEffect)(()=>{if(!C)return;let e=c-Date.now();if(e<=0)return;let t=window.setTimeout(()=>y(e=>e+1),e);return()=>window.clearTimeout(t)},[c,C]),o)return(0,W.jsx)(`span`,{className:`sync-chip mute syncing`+Kt(k),id:e,"aria-busy":`true`,"aria-live":`polite`,children:`syncing…`});if(w&&!n)return(0,W.jsx)(`span`,{className:`sync-chip mute syncing`+Kt(k),id:e,"aria-busy":`true`,"aria-live":`polite`,children:E?`syncing…`:`queued…`});if(x)return(0,W.jsx)(`span`,{className:`sync-chip mute sync-error`,id:e,"aria-live":`polite`,style:{color:`var(--accent-red)`},children:`⚠ sync request failed`});if(S)return(0,W.jsx)(`span`,{className:`sync-chip mute sync-success`,id:e,"aria-live":`polite`,children:`✓ updated`});if(C)return(0,W.jsx)(`span`,{className:`sync-chip mute sync-busy-notice`,id:e,"aria-live":`polite`,"aria-label":`Refresh busy. Another rebuild is still running. Try again.`,title:`Another rebuild is still running. Try again.`,children:`refresh busy`});if(r===`suspended`)return(0,W.jsx)(`span`,{className:`sync-chip mute`,id:e,"aria-live":`polite`,children:`Updates paused while hidden`});if(r===`resuming`)return(0,W.jsx)(`span`,{className:`sync-chip mute`,id:e,"aria-live":`polite`,children:`Resuming updates…`});if(!n&&t?.last_sync_error){let n=t.sync_failure??null,r=n?[n.detail,n.action].filter(Boolean).join(` `):void 0;return(0,W.jsx)(`span`,{className:`sync-chip mute sync-error`,id:e,"aria-live":`polite`,"aria-label":r,title:r,style:{color:`var(--accent-red)`},children:n?.label??`⚠ server sync error`})}if(D&&!n)return(0,W.jsx)(`span`,{className:`sync-chip mute syncing`+Kt(k),id:e,"aria-busy":`true`,children:`syncing…`});let A=n?`disconnected`:t==null||t.sync_age_s==null?`sync paused`:u,j=A===`disconnected`||A===`sync paused`;return(0,W.jsx)(`span`,{className:`sync-chip mute`+Kt(k)+(n?` sync-error`:``),id:e,"aria-live":j?`polite`:void 0,style:{color:f},children:A})}var Jt=[{value:`claude`,label:`Claude`},{value:`codex`,label:`Codex`},{value:`all`,label:`All`}];function Yt(){let e=(0,U.useSyncExternalStore)(V,()=>L().activeSource),t=(0,U.useSyncExternalStore)(V,()=>L().view),n=Be(),r=(0,U.useRef)([]),[i,a]=(0,U.useState)(``);if(t!==`dashboard`)return null;let o=e=>n?.sources?.[e]?.availability,s=e=>{let t=Jt[e];P({type:`SET_ACTIVE_SOURCE`,source:t.value}),r.current[e]?.focus(),a(`${t.label} source selected`)},c=(e,t)=>{let n;switch(e.key){case`ArrowRight`:case`ArrowDown`:n=(t+1)%Jt.length;break;case`ArrowLeft`:case`ArrowUp`:n=(t-1+Jt.length)%Jt.length;break;case`Home`:n=0;break;case`End`:n=Jt.length-1;break;default:return}e.preventDefault(),s(n)};return(0,W.jsxs)(`div`,{className:`source-switcher`,role:`radiogroup`,"aria-label":`Data source`,children:[Jt.map((t,n)=>{let i=t.value===e,a=o(t.value);return(0,W.jsx)(`button`,{ref:e=>{r.current[n]=e},type:`button`,role:`radio`,"aria-checked":i,"aria-label":a!=null&&a!==`ok`?`${t.label} (${a})`:t.label,tabIndex:i?0:-1,className:`source-seg${i?` is-active`:``}`,"data-source":t.value,onClick:()=>s(n),onKeyDown:e=>c(e,n),children:t.label},t.value)}),(0,W.jsx)(`div`,{className:`sr-only`,role:`status`,"aria-live":`polite`,"data-testid":`source-switcher-live`,children:i})]})}var Xt={claude:`hero and alerts only`,codex:`filters every panel`},Zt={claude:`Claude accounts`,codex:`Codex accounts`};function Qt(e){let t=[{key:`all`,label:`All accounts`,hint:null,dimmed:!1}];for(let n of e)t.push({key:n.accountKey,label:n.label,hint:n.weeklyPercent==null?null:`${Math.round(n.weeklyPercent)}%`,dimmed:n.unattributed===!0});return t}function $t({provider:e,selection:n,labelled:r}){let i=Be(),a=(0,U.useSyncExternalStore)(V,()=>L().accountFocus),o=(0,U.useRef)([]),[s,c]=(0,U.useState)(``),l=(0,U.useRef)(null),u=f(i?.sources?.[e]??null),d=u==null?null:b(i,n,e,a),p=u==null?null:d??`all`,m=p==null?null:p===`all`?`All accounts`:u?.find(e=>e.accountKey===p)?.label??`All accounts`;if((0,U.useEffect)(()=>{if(p==null){l.current=null;return}if(l.current==null){l.current=p;return}l.current!==p&&(l.current=p,c(p===`all`?`All accounts selected`:`${m} account selected`))},[p,m]),u==null)return null;let h=Qt(u),g=`account-focus-${e}-label`,_=r=>{let i=h[r];P({type:`SET_ACCOUNT_FOCUS`,source:e,slot:t(n),account:i.key}),o.current[r]?.focus()},v=(e,t)=>{let n;switch(e.key){case`ArrowRight`:case`ArrowDown`:n=(t+1)%h.length;break;case`ArrowLeft`:case`ArrowUp`:n=(t-1+h.length)%h.length;break;case`Home`:n=0;break;case`End`:n=h.length-1;break;default:return}e.preventDefault(),_(n)};return(0,W.jsxs)(`div`,{className:`account-chip-row`,role:`radiogroup`,...r?{"aria-labelledby":g}:{"aria-label":`Account focus`},"data-testid":`account-chip-row`,"data-provider":e,children:[r&&(0,W.jsxs)(`span`,{className:`account-chip-rowlabel`,id:g,children:[(0,W.jsx)(`span`,{className:`account-chip-rowprovider`,children:Zt[e]}),` `,(0,W.jsx)(`span`,{className:`account-chip-rowqualifier`,"data-testid":`account-chip-qualifier-${e}`,children:Xt[e]})]}),h.map((e,t)=>{let n=e.key===p;return(0,W.jsxs)(`button`,{ref:e=>{o.current[t]=e},type:`button`,role:`radio`,"aria-checked":n,"aria-label":e.hint==null?e.label:`${e.label}, ${e.hint} weekly`,tabIndex:n?0:-1,className:`account-chip${n?` is-active`:``}${e.dimmed?` is-dimmed`:``}`,"data-account":e.key,onClick:()=>_(t),onKeyDown:e=>v(e,t),children:[(0,W.jsx)(`span`,{className:`account-chip-label`,children:e.label}),e.hint!=null&&(0,W.jsx)(`span`,{className:`account-chip-hint`,children:e.hint})]},e.key)}),(0,W.jsx)(`div`,{className:`sr-only`,role:`status`,"aria-live":`polite`,"data-testid":`account-chip-live`,children:s})]})}function en(){let e=Be(),t=(0,U.useSyncExternalStore)(V,()=>L().activeSource);if((0,U.useSyncExternalStore)(V,()=>L().view)!==`dashboard`)return null;let n=le(e,t);return n.length===0?null:t===`all`?(0,W.jsx)(`div`,{className:`account-chip-rows`,"data-testid":`account-chip-rows`,children:n.map(e=>(0,W.jsx)($t,{provider:e,selection:`all`,labelled:!0},e))}):(0,W.jsx)($t,{provider:n[0],selection:t,labelled:!1})}var tn=new Set([`hero`,`daily`,`weekly`,`monthly`,`sessions`,`projects`,`quota`,`budget`,`forensics`,`alerts`]);function nn(e){return e!=null&&e.length>0?e[0]:null}function rn(e){let t=e.domain;return t==null||t===`ingest`||t===`read_model`||!tn.has(t)}function an(e){return e==null?null:e.find(rn)??nn(e)}function on(e,t){return e==null?null:e.find(rn)??e.find(e=>e.domain===t)??null}function sn(e){return typeof e==`object`&&e?e:void 0}function cn(e,t){let n=e.domain_freshness?.[t];return n===`fresh`||n===`stale`?n:e.freshness}var ln=[`claude`,`codex`];function un(e){let t=e?.data??null,n=t?.combined??null;if(n==null){let n=t?.combined_unavailable;return{value:null,legs:null,contributors:[],qualifications:[],unavailable:n==null?dn(e):{code:n.code,message:n.message}}}let r=n.legs;return{value:{costUsd:n.cost_usd,totalTokens:n.total_tokens},legs:r,contributors:ln.filter(e=>r?.[e]?.state===`current`),qualifications:n.qualifications??[],unavailable:null}}function dn(e){if(e==null)return null;let t=on(e.warnings,`hero`);return t==null?null:{code:t.code,message:t.message}}function fn(e){return e.length===2?`COMBINED · CURRENT CYCLES`:e.length===1?e[0]===`claude`?`CLAUDE · CURRENT CYCLE`:`CODEX · CURRENT CYCLE`:`CURRENT CYCLES · NO DATA`}function pn(e,t){let n=e.entry;if(n==null)return t===`claude`&&e.env!=null&&!e.hydrating?{mode:`render`,noSuccessYet:!1}:{mode:e.hydrating?`skeleton`:`hidden`,noSuccessYet:!1};if(s(n))return{mode:`skeleton`,noSuccessYet:!1};let r=n.capabilities?.sessions?.status,i=n.last_success_at==null,a=on(n.warnings,`sessions`);return r===`deferred`||r===`not_applicable`?{mode:`hidden`,noSuccessYet:!1}:n.availability===`unavailable`||r===`unavailable`?{mode:`degraded`,warning:a,noSuccessYet:i}:sn(n.data)?.sessions===void 0?{mode:`hidden`,noSuccessYet:!1}:n.availability===`partial`&&(cn(n,`sessions`)===`stale`||a!=null)?{mode:`degraded`,warning:a,noSuccessYet:i}:r!==`supported`&&r!==`derived`?{mode:`degraded`,warning:null,noSuccessYet:i}:{mode:`render`,noSuccessYet:!1}}function mn(e){if(e.selection!==`all`)return pn(e,e.selection);let t=[`claude`,`codex`].map(t=>pn(o(e.env,t),t));return t.some(e=>e.mode===`render`||e.mode===`degraded`)?{mode:`render`,noSuccessYet:!1}:{mode:t.some(e=>e.mode===`skeleton`)?`skeleton`:`hidden`,noSuccessYet:!1}}function hn(){let e=(0,U.useSyncExternalStore)(V,()=>L().activeSource),t=(0,U.useSyncExternalStore)(V,()=>L().view),n=Be();if(t!==`dashboard`)return null;let r=o(n,e),i=r.entry;if(r.hydrating||i==null)return null;let a=i.last_success_at==null,s=i.availability===`partial`||i.availability===`unavailable`,c=an(i.warnings),l=i.freshness===`stale`,u=e===`all`?un(i).unavailable:null,d,f;d=a?`no successful snapshot yet`:s&&c?_n(c.domain,c.code):u==null?s?`degraded`:l?`stale`:`fresh`:`Combined withheld`,f=(s&&c?c.message:null)??u?.message??c?.message??d;let p=vn(d);return(0,W.jsxs)(`span`,{className:`source-status-chip`+(s?` is-degraded`:``)+(l&&!s?` is-stale`:``),"data-testid":`source-status-chip`,"data-source":e,title:f,"aria-label":`${e} source status: ${f}`,children:[(0,W.jsx)(`span`,{className:`source-status-label source-status-label--full`,"aria-hidden":`true`,children:d}),(0,W.jsx)(`span`,{className:`source-status-label source-status-label--compact`,"aria-hidden":`true`,children:p})]})}var gn={hero:`Hero unavailable`,daily:`Daily unavailable`,weekly:`Weekly unavailable`,monthly:`Monthly unavailable`,sessions:`Sessions unavailable`,projects:`Projects unavailable`,quota:`Quota unavailable`,budget:`Budget unavailable`,forensics:`Forensics unavailable`,alerts:`Alerts unavailable`};function _n(e,t){return e===`projects`&&t===`codex_metadata_incomplete`?`Projects partial`:e==null?`Source degraded`:gn[e]??`Source degraded`}function vn(e){return e===`no successful snapshot yet`?`No snapshot`:e===`Source degraded`||e===`degraded`?`Degraded`:e===`Projects partial`?`Partial`:e===`Combined withheld`?`Withheld`:e.endsWith(` unavailable`)?`Unavailable`:e}function yn(){let e=(0,U.useSyncExternalStore)(V,()=>L().update).state;if(!e||!e.available||!e.latest_version)return null;let t=e.current_version??`?`,n=e.latest_version,r=e.configured_channel===`beta`;return(0,W.jsxs)(`button`,{type:`button`,className:`badge-update`,title:`Update available · ${t} → ${n}${r?` (beta)`:``} · click to view`,"aria-label":`Update available${r?` (beta channel)`:``}, current version ${t}, latest ${n}`,onClick:()=>et.open(),children:[(0,W.jsx)(`span`,{className:`badge-update-arrow`,"aria-hidden":`true`,children:`↑`}),(0,W.jsxs)(`span`,{className:`badge-update-version`,children:[`v`,n]}),r&&(0,W.jsx)(`span`,{className:`badge-update-channel`,children:`beta`})]})}function bn(e){return e?.transcriptsEnabled===!0}function xn(){let e=(0,U.useSyncExternalStore)(V,()=>L().view);return bn(Be())?(0,W.jsxs)(`div`,{className:`view-switcher`,role:`group`,"aria-label":`Workspace`,children:[(0,W.jsx)(`button`,{type:`button`,"aria-pressed":e===`dashboard`,className:`view-seg${e===`dashboard`?` is-active`:``}`,onClick:()=>P({type:`SET_VIEW`,view:`dashboard`}),children:`Dashboard`}),(0,W.jsx)(`button`,{type:`button`,"aria-pressed":e===`conversations`,className:`view-seg${e===`conversations`?` is-active`:``}`,onClick:()=>P({type:`SET_VIEW`,view:`conversations`}),children:`Conversations`})]}):null}async function Sn(){if(L().syncBusy)return;let e=Date.now();P({type:`SET_SYNC_BUSY`,busy:!0});let t=!1;try{let e=await fetch(`/api/sync`,{method:`POST`,headers:{"Content-Type":`application/json`},body:`{}`});if(e.status===202){let t=await e.json().catch(()=>({}));typeof t.request_id==`number`&&Number.isFinite(t.request_id)&&t.request_id>0&&typeof t.server_epoch==`string`&&t.server_epoch!==``&&P({type:`REGISTER_SYNC_REQUEST`,id:t.request_id,epoch:t.server_epoch});return}if(e.ok){if(e.status===200){let t=A((await e.json().catch(()=>({}))).warnings),n=t.filter(k);if(n.length>0){console.error(`/api/sync warnings:`,n.join(`, `)),P({type:`SET_SYNC_ERROR_FLOOR`,untilMs:Date.now()+ve});return}if(t.some(e=>u.has(e))){P({type:`SET_SYNC_BUSY_NOTICE`,untilMs:Date.now()+m});return}}t=!0;return}console.error(`/api/sync failed: ${e.status}`),P({type:`SET_SYNC_ERROR_FLOOR`,untilMs:Date.now()+ve})}catch(e){console.error(`/api/sync failed:`,e),P({type:`SET_SYNC_ERROR_FLOOR`,untilMs:Date.now()+ve})}finally{let n=Date.now()-e;n<300&&await new Promise(e=>setTimeout(e,300-n)),t&&P({type:`SET_SYNC_SUCCESS_FLASH`,untilMs:Date.now()+p}),P({type:`SET_SYNC_BUSY`,busy:!1})}}function Cn(e){document.dispatchEvent(new KeyboardEvent(`keydown`,{key:e}))}function wn(e,t,n,r){if(e===`all`)return null;if(e===`codex`){let e=o(t,`codex`).entry?.data;if(e?.hero==null||e?.quota==null)return null;let n=Te(e.hero,e.quota);if(n.length===0)return null;let r=n[0];return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`topbar-condensed-pct`,children:B.pct1(r.current.current_percent)}),(0,W.jsx)(`span`,{className:`topbar-condensed-sep`,"aria-hidden":`true`,children:` · `}),(0,W.jsx)(`span`,{className:`topbar-condensed-reset`,children:r.label})]})}return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`topbar-condensed-pct`,children:B.pct1(n?.used_pct)}),(0,W.jsx)(`span`,{className:`topbar-condensed-sep`,"aria-hidden":`true`,children:` · `}),(0,W.jsxs)(`span`,{className:`topbar-condensed-reset`,children:[`resets `,B.ddhh(r?.reset_in_sec)]})]})}function Tn(){let e=(0,U.useSyncExternalStore)(V,()=>L().update).state?.current_version??null,t=(0,U.useSyncExternalStore)(V,()=>L().view),n=(0,U.useSyncExternalStore)(V,()=>L().heroScrolled),r=(0,U.useSyncExternalStore)(V,()=>L().activeSource),i=Be(),a=i?.header,o=wn(r,i,a,i?.current_week??null),s=t===`dashboard`&&n&&o!=null;return(0,W.jsxs)(`header`,{className:`topbar${s?` is-scrolled`:``}`,"data-view":t,children:[(0,W.jsx)(`h1`,{className:`sr-only`,children:`cctally dashboard`}),(0,W.jsxs)(`div`,{className:`stat topbar-brand`,children:[(0,W.jsx)(`span`,{className:`brand-name`,children:`cctally`}),e?(0,W.jsxs)(`span`,{className:`brand-version`,children:[`v`,e]}):null,(0,W.jsx)(yn,{}),i?.channel===`preview`?(0,W.jsx)(`span`,{className:`preview-badge`,title:`Preview channel — running against a real data snapshot, not your live prod dashboard`,children:`PREVIEW`}):null]}),(0,W.jsx)(xn,{}),(0,W.jsx)(Yt,{}),(0,W.jsx)(en,{}),t===`dashboard`?(0,W.jsx)(`button`,{type:`button`,className:`topbar-explain`,onClick:()=>Cn(`e`),children:`Explain`}):null,s&&(0,W.jsx)(`div`,{className:`topbar-condensed`,"data-testid":`topbar-condensed`,"data-source":r,children:o}),(0,W.jsxs)(`div`,{className:`topbar-actions`,children:[(0,W.jsx)(hn,{}),(0,W.jsx)(ze,{}),(0,W.jsx)(Le,{}),(0,W.jsx)(`button`,{type:`button`,className:`topbar-icon-btn topbar-settings`,"aria-label":`Open settings`,onClick:()=>Cn(`s`),children:(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#settings`})})}),(0,W.jsx)(`button`,{type:`button`,className:`topbar-icon-btn topbar-help`,"aria-label":`Open help`,onClick:()=>Cn(`?`),children:(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#help-circle`})})}),(0,W.jsxs)(`button`,{type:`button`,className:`topbar-sync`,onClick:()=>Sn(),title:`Sync now (r)`,"aria-label":`Sync now`,children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#refresh`})}),(0,W.jsx)(qt,{})]})]})]})}function En(e){return(0,U.useSyncExternalStore)(V,()=>F(void 0,e))}function Dn(e){return e===`all`?`codex`:e}function On(e,t){let n=(0,U.useSyncExternalStore)(V,()=>L().snapshot),r=(0,U.useSyncExternalStore)(V,()=>L().activeSource),i=e??r,a=t??(i===`all`?null:i);return v(n,i,(0,U.useSyncExternalStore)(V,()=>a==null?`all`:h(L().accountFocus,i,a)),a)}var kn=`(max-width: 640px)`,An=`(min-width: 1101px)`,jn=`(min-width: 900px)`,Mn=`(min-width: 1200px)`,Nn=`(max-width: 880px)`;function Pn(){let[e,t]=(0,U.useState)(()=>typeof window>`u`||!window.matchMedia?!1:window.matchMedia(kn).matches);return(0,U.useEffect)(()=>{if(typeof window>`u`||!window.matchMedia)return;let e=window.matchMedia(kn),n=e=>{t(e.matches)};return e.addEventListener(`change`,n),t(e.matches),()=>{e.removeEventListener(`change`,n)}},[]),e}var Fn={tz:`local`,resolvedTz:`Etc/UTC`,offsetLabel:`UTC`,offsetSeconds:0,pinned:!1};function In(){let e=Be();return e?.display?{tz:e.display.tz,resolvedTz:e.display.resolved_tz,offsetLabel:e.display.offset_label,offsetSeconds:e.display.offset_seconds,pinned:e.display.pinned??!1}:Fn}var Ln={capped:{label:`OVER`,cls:`over`,warn:!0,accent:`accent-red`,glyph:`⛔`},cap:{label:`WARN`,cls:`warn`,warn:!0,accent:`accent-amber`,glyph:`⚠`},ok:{label:`OK`,cls:`good`,warn:!1,accent:`accent-green`,glyph:`✓`}};function Rn(e){return e==null?null:Ln[e]??null}var zn=900,Bn=3600;function Vn(e){return e==null||e<=zn?`fresh`:e<=Bn?`aging`:`stale`}var Hn=`button, a, input, select, textarea, [role="button"], [data-card-region-ignore]`;function Un(e){let t=e;return!!(t&&typeof t.closest==`function`&&t.closest(Hn))}function Wn(e){return t=>{Un(t.target)||e()}}var Gn=[`#5b8def`,`#e0913b`,`#3fa66a`,`#b569d6`,`#d15b7f`,`#3fb6b0`];function Kn(e,t){if(e==null)return null;let n=Date.parse(e);if(Number.isNaN(n))return null;let r=Math.max(0,Math.round((n-t)/1e3));return r===0?`resets now`:`resets in ${Ut(r)}`}function qn(e){return e==null?`—`:`${Math.round(e)}%`}function Jn({card:e,color:t,focused:n}){let r=e.unattributed===!0,i=Date.now(),a=r?null:Kn(e.resetsAt,i);return(0,W.jsxs)(`div`,{className:`account-hero-card${r?` is-dimmed`:``}${n?` is-focused`:``}`,"data-testid":`account-hero-card`,"data-account":e.accountKey,style:{"--account-color":t},children:[(0,W.jsxs)(`div`,{className:`account-hero-card-head`,children:[(0,W.jsx)(`span`,{className:`account-hero-card-label`,children:e.label}),e.plan!=null&&(0,W.jsx)(`span`,{className:`account-hero-card-plan`,children:e.plan}),e.cycleFreshness===`stale`&&(0,W.jsx)(`span`,{className:`chip chip-stale account-hero-card-freshness`,"data-testid":`account-cycle-stale`,title:`Quota evidence for ${e.label} is stale`,"aria-label":`Quota evidence for ${e.label} is stale`,children:`stale`}),e.active&&(0,W.jsx)(`span`,{className:`account-hero-card-active`,title:`Active account`,children:`●`})]}),!r&&(0,W.jsxs)(`div`,{className:`account-hero-card-bars`,children:[(0,W.jsxs)(`div`,{className:`account-hero-bar`,"data-metric":`weekly`,children:[(0,W.jsx)(`span`,{className:`account-hero-bar-label`,children:`Weekly`}),(0,W.jsx)(`div`,{className:`account-hero-bar-track`,children:(0,W.jsx)(`div`,{className:`account-hero-bar-fill`,style:{width:`${Math.min(100,e.weeklyPercent??0)}%`}})}),(0,W.jsx)(`span`,{className:`account-hero-bar-value`,children:qn(e.weeklyPercent)})]}),(0,W.jsxs)(`div`,{className:`account-hero-bar`,"data-metric":`five-hour`,children:[(0,W.jsx)(`span`,{className:`account-hero-bar-label`,children:`5h`}),(0,W.jsx)(`div`,{className:`account-hero-bar-track`,children:(0,W.jsx)(`div`,{className:`account-hero-bar-fill`,style:{width:`${Math.min(100,e.fiveHourPercent??0)}%`}})}),(0,W.jsx)(`span`,{className:`account-hero-bar-value`,children:qn(e.fiveHourPercent)})]})]}),(0,W.jsxs)(`div`,{className:`account-hero-card-foot`,children:[(0,W.jsxs)(`span`,{className:`account-hero-card-spend`,children:[`$`,e.spendUsd.toFixed(2)]}),a!=null&&(0,W.jsx)(`span`,{className:`account-hero-card-reset`,children:a}),e.spendWindow!=null&&(0,W.jsx)(`span`,{className:`account-hero-card-window`,"data-testid":`account-card-window`,children:he(e.spendWindow)}),r&&(0,W.jsx)(`span`,{className:`account-hero-card-note`,children:`totals only`})]})]})}function Yn(){let e=Be(),t=On(),n=(0,U.useSyncExternalStore)(V,()=>L().activeSource),r=(0,U.useSyncExternalStore)(V,()=>L().accountFocus),i=n===`all`,a=(i?[`claude`,`codex`]:[n]).flatMap(t=>{let n=f(e?.sources?.[t]??null);return n==null?[]:[{source:t,accounts:n}]});if(a.length===0)return null;let o=a[0].source,s=!i&&t.isEmpty&&t.card!=null?`No ${o===`codex`?`Codex`:`Claude`} activity recorded for ${t.card.label}.`:null;return(0,W.jsxs)(`div`,{className:`account-hero-cards`,"data-testid":`account-hero-cards`,children:[a.map(t=>{let a=b(e,n,t.source,r),o=i||a==null?t.accounts:t.accounts.filter(e=>e.accountKey===a);return(0,W.jsxs)(`div`,{className:`account-hero-provider-group`,"data-source":t.source,children:[i&&(0,W.jsxs)(`p`,{className:`account-hero-caption`,"data-testid":`account-hero-caption`,children:[t.source===`claude`?`Claude`:`Codex`,` accounts — each has its own quota cycle.`]}),(0,W.jsx)(`div`,{className:`account-hero-card-row`,children:o.map(e=>{let n=t.accounts.findIndex(t=>t.accountKey===e.accountKey);return(0,W.jsx)(Jn,{card:e,color:Gn[(n<0?0:n)%Gn.length],focused:a===e.accountKey},e.accountKey)})})]},t.source)}),s!=null&&(0,W.jsx)(`p`,{className:`account-hero-empty`,"data-testid":`account-hero-empty`,role:`status`,children:s})]})}var Xn=`Codex quota evidence is stale — this spend is current, but the forecast is paused until Codex reports again.`,Zn=`Spent this week`;function Qn(e){let t=e?.find(e=>e.spendWindow!=null)?.spendWindow;return t==null?null:`Includes accounts with no live cycle, counted over the ${he(t)}.`}function $n(e){let t=e?.find(e=>e.spendWindow!=null)?.spendWindow;return t==null?null:`Incl. no-cycle accounts · ${he(t)}`}function er(e){if(!e||e.files<=0)return null;let t=e.files===1?`session`:`sessions`;return`Codex history is still loading (${e.files} ${t} left) — totals will rise as it finishes.`}function tr(e){if(!e||e.files<=0)return null;let t=e.files===1?`session`:`sessions`;return`+${e.files} ${t} still loading`}function nr(e){return!e||e.files<=0?null:`+${e.files} more`}function rr(...e){let t=e.filter(e=>!!e);return t.length?t.join(` `):null}var ir={all:`Combined usage summary`,claude:`Claude week usage summary`,codex:`Codex cycle usage summary`};function ar({amount:e,dimWhenBlank:t=!1}){let n=B.usd0(e);return(0,W.jsx)(`div`,{className:e==null&&t?`hs-big is-blank`:`hs-big`,style:{"--hs-chars":n.length},children:n})}function or(){let e=En(),t=(0,U.useSyncExternalStore)(V,()=>L().activeSource),n=e?.header,r=(e?.current_week??null)?.freshness??null,i=Rn(n?.forecast_verdict??null),a=Vn(r?.age_seconds),o=In(),s={tz:o.resolvedTz,offsetLabel:o.offsetLabel},c=(0,U.useRef)(null),l=Pn();(0,U.useEffect)(()=>{if(!l)return;let e=c.current;if(!e||typeof IntersectionObserver>`u`)return;let t=new IntersectionObserver(e=>{let t=e[0];t&&P({type:`SET_HERO_SCROLLED`,scrolled:!t.isIntersecting})},{threshold:0,rootMargin:`-64px 0px 0px 0px`});return t.observe(e),()=>{t.disconnect(),P({type:`SET_HERO_SCROLLED`,scrolled:!1})}},[l]);let u=()=>P({type:`OPEN_MODAL`,kind:`current-week`}),d=(0,W.jsx)(sr,{source:t,env:e,ctx:s,verdict:i,heroLabel:a});return(0,W.jsxs)(`section`,{ref:c,className:`hero-strip`,role:`region`,tabIndex:0,"aria-label":ir[t],"data-hero-strip":``,"data-source":t,onClick:Wn(u),onKeyDown:e=>{e.target===e.currentTarget&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),u())},children:[(0,W.jsx)(`h2`,{className:`sr-only`,children:ir[t]}),d,(0,W.jsx)(Yn,{})]})}function sr({source:e,env:t,ctx:n,verdict:r,heroLabel:i}){let a=t?.header,s=t?.current_week??null,c=On(e,`claude`),l=On(e,`codex`),u=lr(t);if(e===`claude`){let e=o(t,`claude`).entry,l=f(e),d=c.requestedKey==null?null:l?.find(e=>e.accountKey===c.requestedKey)??null,p=l!=null&&d==null,m=ur(d?.resetsAt,u),h=l?.reduce((e,t)=>e+t.spendUsd,0)??null;return(0,W.jsx)(hr,{weekLabel:l==null?a?.week_label:null,usedPct:d==null?p?null:a?.used_pct:d.weeklyPercent,fiveHourPct:d==null?p?null:a?.five_hour_pct:d.fiveHourPercent,resetInSec:d==null?p?null:s?.reset_in_sec:m,spentUsd:d==null?p?h:s?.spent_usd:d.spendUsd,dollarPerPct:l==null?a?.dollar_per_pct:null,forecastPct:l==null?a?.forecast_pct:null,vsLastWeekDelta:l==null&&a?.dollar_per_pct!=null?a?.vs_last_week_delta:null,freshness:l==null?s?.freshness??null:null,ctx:n,verdict:l==null?r:null,heroLabel:i,showFiveHour:!p&&(d?.fiveHourPercent!=null||l==null),perAccountNote:p?`per account`:null,withheldUsedPct:d!=null&&d.weeklyPercent==null})}let d=o(t,`codex`).entry,p=d?.data,m=p?.hero.cycle,h=f(d)!=null,g=e===`codex`&&l.scopesSupported&&l.accountKey==null||e===`all`&&h&&l.accountKey==null?null:l.accountKey==null?p?.quota??null:l.scope?.quota??null,_=p?.hero&&g?Te(p.hero,g):[],v=[..._].sort((e,t)=>{let n=e.current.resets_at===m?.resets_at;if(n!==(t.current.resets_at===m?.resets_at))return n?-1:1;let r=e.windowMinutes===10080;return r===(t.windowMinutes===10080)?t.current.current_percent-e.current.current_percent||Date.parse(t.current.captured_at)-Date.parse(e.current.captured_at):r?-1:1})[0],y=_.find(e=>e.windowMinutes===300),b=d?.capabilities?.hero?.status===`unavailable`||p?.hero?.cost_usd==null,x=p?.hero?.cycle_freshness===`stale`,S=er(p?.ingest_backlog),C=tr(p?.ingest_backlog),w=nr(p?.ingest_backlog),T=on(d?.warnings,`hero`),E=g?.histories.find(e=>e.key===v?.key)?.forecast,D=ur(v?.current.resets_at,u),ee=v?Date.parse(v.current.captured_at):NaN,O=Number.isFinite(ee)?Math.max(0,(Date.now()-ee)/1e3):null,k=Vn(O),A=v?.current.current_percent??null,j=b?null:p?.hero.cost_usd,M=j!=null&&A!=null&&A>0?j/A:null,N=p?.hero.cycle?.start_at?Date.parse(p.hero.cycle.start_at):NaN,te=p?.periods.weekly.rows.filter(e=>{let t=e.end_at?Date.parse(e.end_at):NaN;return e.dollar_per_pct!=null&&Number.isFinite(N)&&Number.isFinite(t)&&t<=N}).sort((e,t)=>Date.parse(t.end_at??``)-Date.parse(e.end_at??``))[0]?.dollar_per_pct??null,ne=M!=null&&te!=null?M-te:null,P=E?.status===`ok`?E.projected_percent:null,F=P==null?null:Rn(P>=100?`capped`:P>=90?`cap`:`ok`),re=v&&O!=null?{...v.current,label:k,age_seconds:O}:null,I=m?B.dateShort(m.start_at,n):null,L=m?B.dateShort(m.resets_at,n):null,ie=I&&L?`${I}–${L}`:I??L;if(e===`codex`){let e=l.scopesSupported&&l.accountKey==null,t=e?Qn(f(d)):null,r=e?$n(f(d)):null,i=e?null:l.card?.spendWindow??null;return(0,W.jsx)(hr,{weekLabel:e?null:ie,usedPct:e?null:A,fiveHourPct:e?null:y?.current.current_percent,resetInSec:e?null:D,spentUsd:j,dollarPerPct:e?null:M,forecastPct:e?null:P,vsLastWeekDelta:e?null:ne,freshness:e?null:re,ctx:n,verdict:e?null:F,heroLabel:k,showFiveHour:!e&&y!=null,unavailableReason:!e&&b?T?.message??`Cycle accounting unavailable`:null,spentNote:rr(e||!x?null:Xn,t,S),spentNoteLabel:rr(t,C),spentNoteCompactLabel:r==null&&w==null?null:rr(r??t,w??C),spentLabel:i==null?void 0:`SPENT · ${he(i).toUpperCase()}`,spentLabelSpoken:i==null?void 0:`Spent over the ${he(i)}`,perAccountNote:e?`per account`:null})}let ae=o(t,`all`).entry,R=un(ae??null),oe=R.value!=null,z=oe?null:R.unavailable,se=R.legs?.claude??null,ce=R.legs?.codex??null,le=se?.scope===`account_cycles`||ce?.scope===`account_cycles`,ue=oe?le?`COMBINED · ACCOUNT CYCLES`:fn(R.contributors):`COMBINED · CURRENT CYCLES`,de=oe&&R.contributors.length>0?R.value:null,fe=h&&l.accountKey==null,pe=l.accountKey==null?null:l.card?.spendUsd??null,me=o(t,`claude`).entry,ge=f(me),_e=c.requestedKey==null?null:ge?.find(e=>e.accountKey===c.requestedKey)??null,ve=ge!=null&&_e==null,ye=_e?.spendUsd??null,be=_e==null?ve?null:a?.used_pct??null:_e.weeklyPercent,xe=ge!=null&&be==null,Se=_e==null?se?.state===`current`?dr(se.period,u):s?.reset_in_sec??null:ur(_e.resetsAt,u),Ce=l.accountKey==null&&ce?.state===`current`?dr(ce.period,u):D;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`hero-zone hero-usage`,"data-testid":`shared-hero-usage`,children:[(0,W.jsxs)(`div`,{className:`hu-block`,"data-provider-block":`claude`,children:[(0,W.jsxs)(`div`,{className:`hu-label`,children:[`CLAUDE · WEEK`,ve?(0,W.jsx)(`span`,{className:`hu-week`,children:` · per account`}):null]}),(0,W.jsx)(`div`,{className:xe?`hu-num is-blank`:`hu-num`,children:B.pct1(be)}),(0,W.jsx)(fr,{provider:`claude`,perAccount:ve,resetInSec:Se})]}),(0,W.jsxs)(`div`,{className:`hu-block`,"data-provider-block":`codex`,children:[(0,W.jsxs)(`div`,{className:`hu-label`,children:[`CODEX · 7-DAY CYCLE`,fe?(0,W.jsx)(`span`,{className:`hu-week`,children:` · per account`}):null]}),(0,W.jsx)(`div`,{className:fe?`hu-num is-blank`:`hu-num`,children:fe?`—`:B.pct1(v?.current.current_percent)}),(0,W.jsx)(fr,{provider:`codex`,perAccount:fe,resetInSec:Ce})]})]}),(0,W.jsxs)(`div`,{className:`hero-zone hero-spent`,"data-testid":`shared-hero-spent`,title:z?.message,children:[(0,W.jsx)(`div`,{className:`hs-label`,"data-testid":`hero-combined-heading`,children:ue}),(0,W.jsx)(ar,{amount:de?.costUsd,dimWhenBlank:!0}),(0,W.jsx)(`div`,{className:`hs-sub`,children:z==null?de==null?oe?(0,W.jsx)(`span`,{"data-testid":`hero-combined-no-data`,children:`no accounting in either current cycle`}):null:de.totalTokens==null?null:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{children:B.tokens(de.totalTokens)}),` total tokens`]}):(0,W.jsx)(`span`,{className:`panel-degraded-chip`,"data-testid":`shared-hero-warning`,title:z.message,"aria-label":`Combined total withheld: ${z.message}`,children:`Combined withheld`})}),z==null?null:(0,W.jsx)(`div`,{className:`hs-sub hero-combined-reason`,"data-testid":`hero-combined-reason`,children:z.message}),R.qualifications.length>0?(0,W.jsx)(`div`,{className:`hs-sub hero-combined-qualifications`,children:R.qualifications.map(e=>(0,W.jsx)(`span`,{className:`chip hero-combined-qualification`,"data-testid":`hero-combined-qualification`,"data-code":e.code,title:e.message,"aria-label":e.message,children:mr(e)},e.code+(e.provider??``)))}):null]}),(0,W.jsxs)(`div`,{className:`hero-zone hero-support`,"data-testid":`shared-hero-support`,children:[(0,W.jsxs)(`div`,{className:`sup-row`,children:[(0,W.jsxs)(`span`,{className:`sup-l`,children:[`Claude · `,se?.scope===`account_cycles`?`account cycles`:`week to date`]}),(0,W.jsx)(`span`,{className:`sup-v`,"data-testid":`hero-leg-claude`,children:(0,W.jsx)(pr,{leg:se,perAccount:ve,provider:`claude`,focusedCostUsd:ye})})]}),(0,W.jsxs)(`div`,{className:`sup-row`,children:[(0,W.jsxs)(`span`,{className:`sup-l`,children:[`Codex · `,ce?.scope===`account_cycles`?`account cycles`:`cycle to date`]}),(0,W.jsx)(`span`,{className:`sup-v`,"data-testid":`hero-leg-codex`,children:(0,W.jsx)(pr,{leg:ce,perAccount:fe,provider:`codex`,focusedCostUsd:pe})})]})]})]})}var cr={claude:`Claude`,codex:`Codex`};function lr(e){let t=Date.parse(e?.generated_at??``);return Number.isFinite(t)?t:Date.now()}function ur(e,t){if(e==null)return null;let n=Date.parse(e);return Number.isFinite(n)?Math.max(0,(n-t)/1e3):null}function dr(e,t){if(e==null)return null;let n=ur(e.end_at,t);return n!=null&&n>0?n:null}function fr({provider:e,perAccount:t,resetInSec:n}){let r=cr[e];return t?(0,W.jsxs)(`div`,{className:`hu-reset hu-reset--per-account`,"data-testid":`hero-${e}-reset`,title:`Each ${r} account has its own quota cycle — independent resets are never blended.`,children:[r,` reset `,(0,W.jsx)(`span`,{children:`per account`})]}):n==null?null:(0,W.jsxs)(`div`,{className:`hu-reset`,"data-testid":`hero-${e}-reset`,children:[r,` resets in `,(0,W.jsx)(`span`,{children:B.ddhh(n)})]})}function pr({leg:e,perAccount:t,provider:n,focusedCostUsd:r=null}){if(r!=null)return(0,W.jsx)(W.Fragment,{children:B.usd2(r)});if(e?.scope===`account_cycles`){let t=e.accounts?.length??0;return(0,W.jsxs)(W.Fragment,{children:[B.usd2(e.cost_usd),` · `,t,` `,t===1?`account`:`accounts`]})}return t?(0,W.jsx)(`span`,{className:`hero-per-account-value`,"data-testid":`hero-per-account-value`,title:`Each ${cr[n]} account has its own cycle — independent spend is shown per account below.`,children:`per account`}):e==null||e.state===`empty`?(0,W.jsx)(`span`,{className:`hero-leg-no-data`,children:`no data`}):(0,W.jsx)(W.Fragment,{children:B.usd2(e.cost_usd)})}function mr(e){return e.code===`codex_ingest_backlog`?`Codex still loading`:e.code===`provider_empty`?`${e.provider?cr[e.provider]:`A provider`} no data`:`Qualified`}function hr({weekLabel:e,usedPct:t,fiveHourPct:n,resetInSec:r,spentUsd:i,dollarPerPct:a,forecastPct:o,vsLastWeekDelta:s,ctx:c,verdict:l,heroLabel:u,freshness:d,showFiveHour:f,unavailableReason:p=null,spentNote:m=null,spentNoteLabel:h=null,spentNoteCompactLabel:g=null,spentLabel:_=`SPENT THIS WEEK`,spentLabelSpoken:v=Zn,perAccountNote:y=null,withheldUsedPct:b=!1}){let x=y==null?null:(0,W.jsx)(`span`,{className:`hero-per-account-value`,"data-testid":`hero-per-account-value`,title:`Each account has its own quota cycle — independent percentages are never blended.`,children:y});return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`hero-zone hero-usage`,children:[(0,W.jsxs)(`div`,{className:`hu-block`,children:[(0,W.jsxs)(`div`,{className:`hu-label`,children:[`WEEK USAGE`,e?(0,W.jsxs)(`span`,{className:`hu-week`,children:[` · `,e]}):null]}),(0,W.jsx)(`div`,{className:`hu-num${t==null&&(y!=null||b)?` is-blank`:``}`,children:B.pct1(t)})]}),f&&(0,W.jsxs)(`div`,{className:`hu-block`,"data-testid":`hero-five-hour`,children:[(0,W.jsx)(`div`,{className:`hu-label`,children:`5-HOUR`}),(0,W.jsx)(`div`,{className:`hu-num hu-num--sm`,children:B.pct0(n)})]}),y==null?(0,W.jsxs)(`div`,{className:`hu-reset`,children:[`resets in `,(0,W.jsx)(`span`,{children:B.ddhh(r)})]}):(0,W.jsxs)(`div`,{className:`hu-reset hu-reset--per-account`,"data-testid":`hero-per-account-note`,title:`Each account has its own quota cycle — independent percentages are never blended.`,children:[`usage + reset `,(0,W.jsx)(`span`,{children:y})]})]}),(0,W.jsxs)(`div`,{className:`hero-zone hero-spent`,title:p??m??void 0,role:`group`,"aria-label":(()=>{let e=p??m;return e?`${v}. ${e}`:v===Zn?void 0:v})(),children:[(0,W.jsx)(`div`,{className:`hs-label`,children:_}),(0,W.jsx)(ar,{amount:i}),(0,W.jsx)(`div`,{className:`hs-sub`,children:x==null?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{children:B.usd2(a)}),` / 1% used`]}):(0,W.jsxs)(W.Fragment,{children:[`$ / 1% used `,x]})}),p==null&&h!=null?(0,W.jsxs)(`div`,{className:`hs-sub`,"data-testid":`hero-spent-note`,"aria-hidden":`true`,children:[(0,W.jsx)(`span`,{className:g==null?`hero-spent-note-text`:`hero-spent-note-text hero-ingest-backlog-label-full`,children:h}),g==null?null:(0,W.jsx)(`span`,{className:`hero-ingest-backlog-label-compact`,children:g})]}):null]}),(0,W.jsxs)(`div`,{className:`hero-zone hero-support`,children:[(0,W.jsxs)(`div`,{className:`sup-row`,children:[(0,W.jsx)(`span`,{className:`sup-l`,children:`Forecast @ reset`}),(0,W.jsx)(`span`,{className:`sup-v${l?` is-${l.cls}`:``}`,children:x??B.pct0(o)})]}),(()=>{let e=s;if(e==null)return(0,W.jsxs)(`div`,{className:`sup-row`,"data-metric":`vs-last-week`,children:[(0,W.jsx)(`span`,{className:`sup-l`,children:`$/1% vs last week`}),(0,W.jsx)(`span`,{className:`sup-v`,children:x??`—`})]});let t=Math.abs(e)<.02,n=e<0,r=t?`minus`:n?`trending-down`:`trending-up`,i=t?`var(--text-dim)`:n?`var(--accent-green)`:`var(--accent-red)`,a=t?`flat`:n?`down`:`up`,o=B.usd2(Math.abs(e));return(0,W.jsxs)(`div`,{className:`sup-row`,"data-metric":`vs-last-week`,"aria-label":t?`$/1% flat versus last week`:`$/1% ${a} ${o} versus last week`,children:[(0,W.jsx)(`span`,{className:`sup-l`,children:`$/1% vs last week`}),(0,W.jsxs)(`span`,{className:`sup-v`,children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,style:{color:i},children:(0,W.jsx)(`use`,{href:`/static/icons.svg#${r}`})}),(0,W.jsx)(`span`,{children:t?`flat`:o})]})]})})(),d&&(0,W.jsxs)(`div`,{className:`sup-row`,children:[(0,W.jsx)(`span`,{className:`sup-l`,children:`Snapshot`}),(0,W.jsxs)(`span`,{className:`sup-v sup-fresh chip-${u}`,"data-freshness":u,title:`Captured ${B.datetimeShort(d.captured_at,c)}`+(u===`stale`?` · stale`:``),children:[u===`stale`?`⚠ stale · `:``,Wt(d.age_seconds)]})]})]})]})}function gr(){let e=(L().snapshot?.sessions?.rows??[])[0]?.session_id;e&&P({type:`OPEN_MODAL`,kind:`session`,sessionId:e})}function _r(){let e=L().snapshot?.blocks?.rows??[];e.length!==0&&P({type:`OPEN_MODAL`,kind:`block`,blockStartAt:(e.find(e=>e.is_active)??e[0]).start_at})}function vr(e){let{searchMatches:t,searchIndex:n}=L();if(t.length===0)return;let r=t.length;P({type:`SET_SEARCH_MATCHES`,matches:t,index:((n<0?0:n)+e+r)%r})}var yr=`Can't close this tab — use your browser to close it.`;function br(){try{window.close()}catch{}window.setTimeout(()=>{window.closed||P({type:`SHOW_STATUS_TOAST`,text:yr})},100)}function xr(){return(0,W.jsxs)(`footer`,{className:`footer`,children:[(0,W.jsxs)(`span`,{className:`kb`,children:[(0,W.jsx)(`kbd`,{children:`↑/↓`}),` scroll`]}),(0,W.jsxs)(`span`,{className:`kb`,children:[(0,W.jsx)(`kbd`,{className:`accent-green`,children:`tab`}),` next panel`]}),(0,W.jsxs)(`button`,{className:`kb-btn`,id:`footer-r`,type:`button`,onClick:()=>Sn(),children:[(0,W.jsx)(`kbd`,{className:`accent-purple`,children:`r`}),` refresh`]}),(0,W.jsxs)(`button`,{className:`kb-btn`,id:`footer-s`,type:`button`,onClick:()=>document.dispatchEvent(new KeyboardEvent(`keydown`,{key:`s`})),children:[(0,W.jsx)(`kbd`,{children:`s`}),` settings`]}),(0,W.jsxs)(`button`,{className:`kb-btn`,id:`footer-help`,type:`button`,onClick:()=>document.dispatchEvent(new KeyboardEvent(`keydown`,{key:`?`})),children:[(0,W.jsx)(`kbd`,{className:`accent-amber`,children:`?`}),` help`]}),(0,W.jsxs)(`button`,{className:`kb-btn`,id:`footer-q`,type:`button`,onClick:()=>br(),children:[(0,W.jsx)(`kbd`,{children:`q`}),` quit`]})]})}var Sr=[],Cr=[`a[href]`,`button:not([disabled])`,`input:not([disabled]):not([type="hidden"])`,`select:not([disabled])`,`textarea:not([disabled])`,`summary`,`[tabindex]:not([tabindex="-1"])`].join(`,`);function wr(e){if(e.hasAttribute(`hidden`)||e.getAttribute(`aria-hidden`)===`true`||e.closest(`[hidden],[aria-hidden="true"],[inert]`))return!0;let t=typeof window<`u`&&typeof window.getComputedStyle==`function`?window.getComputedStyle(e):null;return!!(t&&(t.display===`none`||t.visibility===`hidden`))}function Tr(e){return Array.from(e.querySelectorAll(Cr)).filter(e=>!e.hasAttribute(`disabled`)&&!wr(e))}function Er(e,{active:t,trapEnabled:n=!0,triggerId:r,initialFocus:i=`first`}){let a=(0,U.useRef)({});(0,U.useEffect)(()=>{if(!t)return;let n=(r?document.getElementById(r):null)??document.activeElement,a=e.current;return a&&(i===`container`?a.focus():i===`heading`?(a.querySelector(`[data-modal-heading], #modal-title, h2`)??Tr(a)[0]??a).focus():(Tr(a)[0]??a).focus()),()=>{if(n&&typeof n.focus==`function`&&document.contains(n))n.focus();else{let e=document.activeElement;e&&typeof e.blur==`function`&&e.blur(),document.body.focus()}}},[t,r,i]),(0,U.useEffect)(()=>{if(!t||!n)return;let e={token:a.current};return Sr.push(e),()=>{let t=Sr.indexOf(e);t!==-1&&Sr.splice(t,1)}},[t,n,e]),(0,U.useEffect)(()=>{if(!t||!n)return;function r(t){if(t.key!==`Tab`)return;let n=e.current;if(!n||Sr[Sr.length-1]?.token!==a.current)return;let r=Tr(n);if(r.length===0){t.preventDefault(),n.focus();return}let i=r[0],o=r[r.length-1],s=document.activeElement;if(!s||!n.contains(s)){t.preventDefault(),(t.shiftKey?o:i).focus();return}(s?r.indexOf(s):-1)===-1?(t.preventDefault(),(t.shiftKey?o:i).focus()):t.shiftKey&&s===i?(t.preventDefault(),o.focus()):!t.shiftKey&&s===o&&(t.preventDefault(),i.focus())}return document.addEventListener(`keydown`,r,!0),()=>document.removeEventListener(`keydown`,r,!0)},[t,n])}var Dr=0,Or=``,kr=``;function Ar(e){(0,U.useEffect)(()=>{if(e){if(Dr===0){let e=document.documentElement;Or=e.style.overflow,kr=document.body.style.overflow,e.style.overflow=`hidden`,document.body.style.overflow=`hidden`}return Dr+=1,()=>{--Dr,Dr===0&&(document.documentElement.style.overflow=Or,document.body.style.overflow=kr)}}},[e])}function jr(){return(0,W.jsx)(`span`,{className:`panel-grip`,"aria-hidden":`true`,"data-card-region-ignore":!0,children:`⋮⋮`})}var Mr={claude:new Set([`current-week`,`trend`,`weekly`,`daily`,`monthly`,`blocks`,`forecast`,`sessions`,`projects`]),codex:new Set([`current-week`,`trend`,`weekly`,`daily`,`monthly`,`blocks`,`forecast`,`sessions`,`projects`]),all:new Set([`current-week`,`trend`,`weekly`,`daily`,`monthly`,`blocks`,`forecast`,`sessions`,`projects`])};function Nr(e,t){return Mr[e].has(t)}var Pr={claude:`Claude`,codex:`Codex`,all:`All`};function Fr({panel:e,panelLabel:t,onClick:n,triggerId:r,dataTestId:i}){return Nr((0,U.useSyncExternalStore)(V,()=>L().activeSource),e)?(0,W.jsx)(`button`,{type:`button`,className:`share-icon`,"data-share-panel":e,"aria-label":`Share ${t} report`,onClick:e=>{e.stopPropagation(),n()},title:`Share (Shift+S)`,...r?{id:r}:{},...i?{"data-testid":i}:{},children:(0,W.jsxs)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 14 14`,"aria-hidden":`true`,children:[(0,W.jsx)(`path`,{d:`M3 7h6m0 0L6.5 4.5M9 7L6.5 9.5`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`}),(0,W.jsx)(`rect`,{x:`0.75`,y:`0.75`,width:`12.5`,height:`12.5`,rx:`1.5`,fill:`none`,stroke:`currentColor`,strokeWidth:`1`})]})}):null}function Ir({label:e,onOpen:t,disabled:n=!1}){let r=e=>{e.stopPropagation(),!n&&t()},i=`${e}: nothing to open yet`;return(0,W.jsx)(`button`,{type:`button`,className:`panel-expand`,"aria-label":n?i:`Open ${e}`,title:n?i:`Expand`,onClick:r,disabled:n,children:(0,W.jsx)(`span`,{"aria-hidden":`true`,children:`⤢`})})}function Lr(e){let t=e.trim();return t.replace(/^claude-/i,``).replace(/-\d{8}$/,``)||t}var Rr=137.50776405003785,zr=[.48,.56],Br=[.14,.18],Vr=96,Hr=`#f8fafc`,Ur=`#090b10`;function Wr(e){return e?.trim()?e.trim().toLowerCase().replace(/\[[^\]]+\]$/,``).replace(/-\d{8}$/,``):``}function Gr(e){let t=2166136261;for(let n=0;n<e.length;n+=1)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return t>>>0}function Kr(e){return Math.min(1,Math.max(0,e))}function qr(e){return e<=.0031308?12.92*e:1.055*e**(1/2.4)-.055}function Jr(e){return e<=.04045?e/12.92:((e+.055)/1.055)**2.4}function Yr(e){return Math.round(Kr(e)*255).toString(16).padStart(2,`0`)}function Xr(e,t,n){let r=n*Math.PI/180,i=t*Math.cos(r),a=t*Math.sin(r),o=e+.3963377774*i+.2158037573*a,s=e-.1055613458*i-.0638541728*a,c=e-.0894841775*i-1.291485548*a,l=o**3,u=s**3,d=c**3,f=qr(4.0767416621*l-3.3077115913*u+.2309699292*d),p=qr(-1.2684380046*l+2.6097574011*u-.3413193965*d),m=qr(-.0041960863*l-.7034186147*u+1.707614701*d);return`#${Yr(f)}${Yr(p)}${Yr(m)}`}function Zr(e){if(!/^#[0-9a-f]{6}$/i.test(e))throw Error(`Expected a six-digit hex color, got ${e}`);return[1,3,5].map(t=>Number.parseInt(e.slice(t,t+2),16)/255)}function Qr(e){let[t,n,r]=Zr(e).map(Jr),i=Math.cbrt(.4122214708*t+.5363325363*n+.0514459929*r),a=Math.cbrt(.2119034982*t+.6806995451*n+.1073969566*r),o=Math.cbrt(.0883024619*t+.2817188376*n+.6299787005*r);return{l:.2104542553*i+.793617785*a-.0040720468*o,a:1.9779984951*i-2.428592205*a+.4505937099*o,b:.0259040371*i+.7827717662*a-.808675766*o}}function $r(e,t){let n=Qr(e),r=Qr(t);return Math.hypot(n.l-r.l,n.a-r.a,n.b-r.b)}function ei(e){let[t,n,r]=Zr(e).map(Jr);return .2126*t+.7152*n+.0722*r}function J(e,t){let n=ei(e),r=ei(t),i=Math.max(n,r),a=Math.min(n,r);return(i+.05)/(a+.05)}function ti(e){let t=Gr(e)%360,n=[],r=new Set;for(let e=0;e<Vr;e+=1){let i=(t+e*Rr)%360,a=zr[e%zr.length],o=Br[Math.floor(e/zr.length)%Br.length],s=Xr(a,o,i);r.has(s)||(r.add(s),n.push(s))}return n}function ni(e){return J(e,Hr)>=J(e,Ur)?Hr:Ur}function ri(){let e=new Map;return{styleFor(t){let n=Wr(t);if(!n)return;let r=e.get(n);if(r)return r;let i=[...e.values()].map(e=>e.backgroundColor),a=ti(n),o=a[0],s=-1;if(i.length>0)for(let e of a){let t=Math.min(...i.map(t=>$r(e,t)));t>s&&(o=e,s=t)}let c={backgroundColor:o,color:ni(o)};return e.set(n,c),c}}}function ii(e){return e?e.includes(`opus`)?`opus`:e.includes(`sonnet`)?`sonnet`:e.includes(`haiku`)?`haiku`:e.includes(`fable`)?`fable`:`other`:`other`}var ai=ri();function oi(e){return ai.styleFor(e)}function si(e,t=2){let n=new Set,r=[];for(let t of e){let e=Wr(t);if(!e||n.has(e))continue;n.add(e);let i=ii(t),a=Lr(t).replace(/\[[^\]]+\]$/,``),o=a.length>12?`${a.slice(0,12)}…`:a;r.push({cls:i,label:o,full:a,model:t})}return{chips:r.slice(0,t),extra:Math.max(0,r.length-t)}}var ci={weekly:12,monthly:8},li=30;function ui(e){return e===`claude`?`Claude`:`Codex`}function di(e,t){return e?.sources?.[t]??null}function fi(e,t,n,r,i,a){let o=di(e,t),s=o?.warnings.find(e=>e.domain==null||r.includes(e.domain)||e.domain===`ingest`||e.domain===`read_model`),c=r.find(e=>{let t=o?.capabilities[e]?.status;return t===`unavailable`||t===`deferred`}),l=o==null?void 0:i.find(e=>cn(o,e)===`stale`);if(n==null){let e=o?.availability===`empty`?`empty`:`unavailable`;return{source:t,label:ui(t),status:e,reason:s?.message??(c?o?.capabilities[c]?.semantics:null)??a,value:null}}return s!=null||l!=null||c!=null?{source:t,label:ui(t),status:`degraded`,reason:s?.message??(l==null?o?.capabilities[c]?.semantics??a:o?.domain_freshness==null?`${ui(t)} data is stale.`:`${ui(t)} ${l} data is stale.`),value:n}:{source:t,label:ui(t),status:`available`,reason:null,value:n}}function pi(e){return e===`all`?[`claude`,`codex`]:[e]}var mi={state:`withheld`,code:`rows_absent`};function hi(e){return e.provider==null?{state:`withheld`,code:e.code}:{state:`withheld`,code:e.code,provider:e.provider}}function gi(e,t){let n=e?.sources?.all?.data?.aggregates,r=n?.[t];return n==null||r==null||typeof r.state!=`string`?{withheld:mi}:r.state===`withheld`?{withheld:hi(r)}:{available:r.qualifications??[]}}function _i(e){return e?.sources?.all?.data?.aggregates?.range??null}function vi(e,t){if(t===`claude`)return{selection:t,claude:e?.sources?.claude?.data??null,codex:null,hydrating:e==null||!!e.hydrating,warnings:e?.sources?.claude?.warnings??[]};if(t===`codex`){let n=e?.sources?.codex;return{selection:t,claude:null,codex:n?.data??null,hydrating:e==null||n?.data==null&&n?.last_success_at==null&&(n?.warnings.length??0)===0,warnings:n?.warnings??[]}}let n=e?.sources?.all,r=n?.data??null;return{selection:t,claude:r?.providers?.claude??e?.sources?.claude?.data??null,codex:r?.providers?.codex??e?.sources?.codex?.data??null,hydrating:e==null||r==null&&n?.last_success_at==null&&(n?.warnings.length??0)===0,warnings:n?.warnings??[]}}function yi(e,t){return e>0?[{model:t,display:t===`claude`?`Claude`:`Codex`,chip:t===`claude`?`opus`:`other`,cost_usd:e,cost_pct:100}]:[]}function bi(e,t,n=!1){return(t??[]).flatMap(t=>{let r=t.modelName?.trim(),i=t.cost;return!r||i==null||!Number.isFinite(i)?[]:[{model:r,display:n?r.replace(/^gpt-/i,``):r,chip:ii(r),cost_usd:i,cost_pct:e>0?i/e*100:0}]})}function xi(e,t,n){let r=bi(e.cost_usd,e.model_breakdowns,!0),i=r.length>0?r:yi(e.cost_usd,`codex`),a=[...new Set((e.account_keys??[]).flatMap(e=>{let t=n.get(e);return t==null?[]:[t]}))];return{source:`codex`,label:e.label,cost_usd:e.cost_usd,total_tokens:e.total_tokens,input_tokens:e.input_tokens,output_tokens:e.output_tokens+e.reasoning_output_tokens,cache_creation_tokens:0,cache_read_tokens:e.cached_input_tokens,used_pct:e.used_pct??null,dollar_per_pct:e.dollar_per_pct??null,delta_cost_pct:null,is_current:t===0,models:i,week_start_at:e.start_at,week_end_at:e.end_at,codex_tokens:{input_tokens:e.input_tokens,cached_input_tokens:e.cached_input_tokens,output_tokens:e.output_tokens,reasoning_output_tokens:e.reasoning_output_tokens,total_tokens:e.total_tokens},...a.length>0?{account_labels:a}:{}}}function Si(e,t,n){let r=vi(e,t),i=new Map((r.codex?.accounts??[]).map(e=>[e.accountKey,e.label])),a=(t===`claude`?e?.[n]?.rows??[]:r.claude?.periods?.[n]?.rows??[]).map(e=>({...e,source:`claude`})),o=[...r.codex?.periods?.[n]?.rows??[]].sort((e,t)=>t.label.localeCompare(e.label)).map((e,t)=>xi(e,t,i)).map((e,t,n)=>({...e,delta_cost_pct:n[t+1]?.cost_usd?(e.cost_usd-n[t+1].cost_usd)/n[t+1].cost_usd:null}));if(t===`all`){let e=ci[n];return[...a.slice(0,e),...o.slice(0,e)]}return(t===`codex`?o:a).slice(0,ci[n])}function Ci(e){return/^\d{4}-\d{2}-\d{2}$/.test(e)?e:/^\d{2}-\d{2}$/.test(e)?`${new Date().getFullYear()}-${e}`:e}function wi(e){let t=e.map(e=>e.cost_usd).filter(e=>e>0).sort((e,t)=>e-t);return e.map(e=>{let n=t.length===0||e.cost_usd<=0?0:Math.min(5,Math.max(1,Math.ceil((t.indexOf(e.cost_usd)+1)/t.length*5)));return{...e,intensity_bucket:n}})}function Ti(e){let t=Ci(e.label),n=bi(e.cost_usd,e.model_breakdowns,!0);return{source:`codex`,date:t,label:/^\d{4}-\d{2}-\d{2}$/.test(t)?t.slice(5):e.label,cost_usd:e.cost_usd,is_today:!1,intensity_bucket:0,models:n.length>0?n:yi(e.cost_usd,`codex`),input_tokens:e.input_tokens,output_tokens:e.output_tokens+e.reasoning_output_tokens,cache_creation_tokens:0,cache_read_tokens:e.cached_input_tokens,total_tokens:e.total_tokens,cache_hit_pct:e.input_tokens>0?e.cached_input_tokens/e.input_tokens*100:null,codex_tokens:{input_tokens:e.input_tokens,cached_input_tokens:e.cached_input_tokens,output_tokens:e.output_tokens,reasoning_output_tokens:e.reasoning_output_tokens,total_tokens:e.total_tokens}}}function Ei(e,t=e.source){return{source:t,date:e.date,label:e.label,cost_usd:0,is_today:e.is_today,intensity_bucket:0,models:[],input_tokens:0,output_tokens:0,cache_creation_tokens:0,cache_read_tokens:0,total_tokens:0,cache_hit_pct:null,codex_tokens:t===`codex`?{input_tokens:0,cached_input_tokens:0,output_tokens:0,reasoning_output_tokens:0,total_tokens:0}:void 0}}function Di(e,t,n){if(t.length===0)return e;let r=new Map(e.map(e=>[e.date,e])),i=new Set(t.map(e=>e.date)),a=t.map(e=>{let t=r.get(e.date);return t==null?Ei(e,n):{...t,label:e.label,is_today:e.is_today}}),o=e.filter(e=>!i.has(e.date));return[...a,...o].sort((e,t)=>t.date.localeCompare(e.date))}function Oi(e,t){let n=vi(e,t),r=[...n.codex?.periods?.daily?.rows??[]].sort((e,t)=>t.label.localeCompare(e.label)).map(Ti);if(t===`claude`)return{state:`available`,range:null,qualifications:[],rows:(e?.daily?.rows??[]).slice(0,li)};if(t===`codex`)return{state:`available`,range:null,qualifications:[],rows:wi(Di(r,e?.daily?.rows??[],`codex`)).slice(0,li)};let i=gi(e,`daily`);if(`withheld`in i)return i.withheld;let a=n.claude?.periods.daily_aggregate?.rows,o=n.codex?.periods?.daily?.rows;if(a==null||o==null)return mi;let s=a,c=new Map;for(let e of[...a,...r]){let t=c.get(e.date);if(!t){c.set(e.date,{...e,models:[...e.models]});continue}let n=t.cost_usd+e.cost_usd;c.set(e.date,{...t,source:`all`,cost_usd:n,input_tokens:t.input_tokens+e.input_tokens,output_tokens:t.output_tokens+e.output_tokens,cache_creation_tokens:t.cache_creation_tokens+e.cache_creation_tokens,cache_read_tokens:t.cache_read_tokens+e.cache_read_tokens,total_tokens:t.total_tokens+e.total_tokens,cache_hit_pct:null,codex_tokens:void 0,models:[]})}let l=[...c.values()].sort((e,t)=>t.date.localeCompare(e.date));return{state:`available`,range:_i(e),qualifications:i.available,rows:wi(Di(l,s)).slice(0,li)}}function ki(e,t){if(t==null||t===``)return{claude:null,codex:null};let n=vi(e,`all`),r=(n.claude?.periods.daily_aggregate?.rows??[]).find(e=>e.date===t)??null,i=(n.codex?.periods.daily.rows??[]).map(Ti).find(e=>e.date===t)??null;return{claude:r==null?null:{...r,source:`claude`},codex:i}}function Ai(e,t){let n=e.slice().reverse();return n.map((e,r)=>({source:t,label:e.label,used_pct:e.used_pct,dollar_per_pct:e.dollar_per_pct,delta:e.dollar_per_pct!=null&&n[r-1]?.dollar_per_pct!=null?e.dollar_per_pct-n[r-1].dollar_per_pct:null,is_current:e.is_current,cost_usd:e.cost_usd,...e.account_labels?{account_labels:e.account_labels}:{}}))}function ji(e,t,n){return{source:e,label:ui(e),rows:t.map(t=>({...t,source:e})),historyRows:n.map(t=>({...t,source:e}))}}function Mi(e,t){if(t===`claude`){let n=e?.trend?.weeks??[];return{rows:n,sections:[ji(`claude`,n,e?.trend?.history??n)],title:`$/1% Trend`,chartLabel:`$/1% trend:`,valueLabel:`$/1%`,source:t}}if(t===`all`){let n=e?.trend?.weeks??Ai(Si(e,`claude`,`weekly`),`claude`),r=e?.trend?.history??n,i=Ai(Si(e,`codex`,`weekly`),`codex`);return{rows:[],sections:[ji(`claude`,n,r),ji(`codex`,i,i)],title:`$/1% Trend`,chartLabel:`$/1% trend:`,valueLabel:`$/1%`,source:t}}let n=Ai(Si(e,`codex`,`weekly`),`codex`);return{rows:n,sections:[ji(`codex`,n,n)],title:`$/1% Trend`,chartLabel:`$/1% trend:`,valueLabel:`$/1%`,source:t}}function Ni(e){return new Set((e?.summary.active??[]).map(e=>e.key))}function Pi(e,t){if(t===`claude`){let t=e?.forecast??e?.sources?.claude?.data?.hero.forecast??null;return{projected:t?.week_avg_projection_pct??null,recent:t?.recent_24h_projection_pct??null,primaryLabel:`Projected @ reset`,recentLabel:`Recent-24h`,foot:[{label:`Budget ≤100%`,value:t?.budget_100_per_day_usd==null?`—`:`$${t.budget_100_per_day_usd.toFixed(2)}/day`},{label:`Budget ≤90%`,value:t?.budget_90_per_day_usd==null?`—`:`$${t.budget_90_per_day_usd.toFixed(2)}/day`}],verdict:t?.verdict??null}}let n=vi(e,t).codex,r=(n?.quota.histories??[]).filter(e=>!e.model_scoped),i=r.find(e=>e.window_minutes===10080)??r[0],a=i?.forecast,o=i!=null&&Ni(n?.quota).has(i.key),s=o&&a?.status===`ok`?a.projected_percent:null;return{projected:s,recent:o?a?.current_percent??null:null,primaryLabel:`Projected @ reset`,recentLabel:i?.label??`Current quota`,foot:[{label:`Confidence`,value:o&&a?.confidence||`unavailable`}],verdict:s==null?null:s>=100?`capped`:s>=90?`cap`:`ok`}}function Fi(e){let t=e?.sources?.codex?.data??null,n=t?.accounts;if(n==null||n.length===0)return null;let r=(t?.quota.histories??[]).filter(e=>!e.model_scoped),i=t?.account_scopes;return n.map(e=>{let t=r.filter(t=>t.account_key===e.accountKey),n=t.find(e=>e.window_minutes===10080)??t[0],a=n?.forecast,o=n!=null&&Ni(i?.[e.accountKey]?.quota).has(n.key),s=o&&a?.status===`ok`?a.projected_percent:null;return{accountKey:e.accountKey,label:e.label,unattributed:e.unattributed===!0,projected:s,current:o?a?.current_percent??n?.current_percent??null:null,confidence:o?a?.confidence??null:null,status:o?a?.status??null:null,verdict:s==null?null:s>=100?`capped`:s>=90?`cap`:`ok`}})}function Ii(e){if(e==null)return{state:`not_configured`,disposition:`provider_budget_unset`};let t=e.status;if(t!=null)return{state:`configured`,status:t};let n=e.status_unavailable;if(n!=null)return{state:`unavailable`,reason:n.code,unavailable:n};let r=e.not_configured;return r==null?{state:`not_configured`,disposition:`provider_budget_unset`}:{state:`not_configured`,disposition:r.disposition,...r.account_key==null?{}:{accountKey:r.account_key},...r.configured_accounts==null?{}:{configuredAccounts:r.configured_accounts}}}function Li(e,t){let n=vi(e,t);return{selection:t,sections:pi(t).map(t=>{let r=t===`claude`?n.claude:n.codex;return fi(e,t,r==null?null:Ii(r.budget),[`budget`],[],`${ui(t)} budget is unavailable.`)})}}function Ri(e,t){return{selection:t,sections:pi(t).map(t=>{let n=Pi(e,t),r=((t===`codex`?vi(e,t).codex:null)?.quota.histories??[]).filter(e=>!e.model_scoped),i=r.find(e=>e.window_minutes===10080)?.forecast??r[0]?.forecast,a=fi(e,t,(t===`claude`?(e?.forecast??e?.sources?.claude?.data?.hero.forecast)!=null:r.some(e=>e.forecast!=null))?n:null,t===`claude`?[`hero`,`quota`,`budget`]:[`quota`,`budget`],t===`claude`?[`hero`,`quota`]:[`quota`],`${ui(t)} forecast is unavailable.`);if(t===`codex`&&a.value!=null&&i?.status!==`ok`){let e=i?.status===`stale`?`Codex forecast is stale.`:i?.status===`insufficient-history`?`Codex forecast needs more history.`:`Codex forecast is unavailable.`;return{...a,status:`degraded`,reason:e}}return a})}}function zi(e){return e.codex?.projects.rows.map(e=>({key:e.key,source:`codex`,label:e.label,cost:e.cost_usd,pct:null,sessionsCount:e.session_count,firstSeenAt:e.first_seen,lastSeenAt:e.last_seen,drillable:!0}))??[]}function Y(e){let t=e.reduce((e,t)=>e+t.cost,0);return e.slice().sort((e,t)=>t.cost-e.cost).map(e=>({...e,pct:t>0?e.cost/t*100:null}))}function X(e,t){let n=vi(e,t);if(t===`claude`)return e?.projects==null?{state:`unavailable`}:{state:`available`,range:null,qualifications:[],rows:(e.projects.current_week.rows??[]).map(e=>({key:e.key,source:`claude`,label:e.key,cost:e.cost_usd??0,pct:e.attributed_pct??null,sessionsCount:e.sessions_count??0,firstSeenAt:null,lastSeenAt:null,drillable:!0}))};if(t===`codex`)return n.codex?.projects==null?{state:`unavailable`}:{state:`available`,range:_i(e),qualifications:[],rows:Y(zi(n))};let r=gi(e,`projects`);if(`withheld`in r)return r.withheld;let i=n.claude?.projects.aggregate?.rows,a=n.codex?.projects;if(i==null||a==null)return mi;let o=i.map(e=>({key:e.key,source:`claude`,label:e.label,cost:e.cost_usd,pct:null,sessionsCount:e.sessions_count,firstSeenAt:null,lastSeenAt:null,drillable:e.drillable===!0}));return{state:`available`,range:_i(e),qualifications:r.available,rows:Y([...o,...zi(n)])}}function Bi(e){return{key:e.key,source:`codex`,accountKey:e.account_key??null,start_at:e.start_at,end_at:e.end_at,anchor:`recorded`,is_active:e.is_active,cost_usd:e.cost_usd,models:bi(e.cost_usd,e.model_breakdowns),label:e.label,value:e.cost_usd,valueLabel:`$${e.cost_usd.toFixed(2)}`}}function Vi(e,t){let n=vi(e,t),r=((t===`claude`?e?.blocks?.rows:n.claude?.quota.blocks)??[]).map((e,t)=>({...e,key:`key`in e&&typeof e.key==`string`?e.key:`claude:${e.start_at}:${t}`,source:`claude`,value:e.cost_usd,valueLabel:`$${e.cost_usd.toFixed(2)}`})),i=(n.codex?.quota.blocks??[]).filter(e=>e.window_minutes===300).map(Bi);return t===`claude`?r:t===`codex`?i:[...r,...i].sort((e,t)=>{let n=Date.parse(e.start_at),r=Date.parse(t.start_at),i=(Number.isNaN(r)?0:r)-(Number.isNaN(n)?0:n);return i===0?e.source===t.source?e.key<t.key?-1:+(e.key>t.key):e.source<t.source?-1:1:i})}function Hi(e){return[`claude`,`codex`].map(t=>{let n=e.filter(e=>e.source===t);return{source:t,label:ui(t),count:n.length,cost:n.reduce((e,t)=>e+t.value,0)}})}function Ui(e){let t=null,n=null,r=1/0,i=-1/0;for(let a of e){let e=Date.parse(a.start_at),o=Date.parse(a.end_at);!Number.isNaN(e)&&e<r&&(r=e,t=a.start_at),!Number.isNaN(o)&&o>i&&(i=o,n=a.end_at)}return t==null||n==null?null:{startAt:t,endAt:n}}function Wi(e,t){return{selection:t,sections:pi(t).map(t=>{let n=fi(e,t,t===`claude`?e?.cache_report??null:vi(e,t).codex?.cache_report??null,[`forensics`],[`sessions`],`${ui(t)} cache report is unavailable.`);return n.value?.is_empty&&n.status===`available`?{...n,status:`empty`,value:null,reason:`No ${ui(t)} cache activity is available for this window.`}:n})}}function Gi({source:e}){return(0,W.jsx)(`span`,{className:`source-chip source-chip--${e}`,"data-source":e,children:e===`claude`?`Claude`:`Codex`})}function Ki({gate:e}){let t=e.noSuccessYet?`no successful snapshot yet`:e.warning?.message??`degraded`,n=e.noSuccessYet?`no snapshot`:`partial`;return(0,W.jsx)(`span`,{className:`panel-degraded-chip`,role:`status`,title:t,"aria-label":`Degraded: ${t}`,children:n})}var qi=10080*60*1e3,Ji=10080*60*1e3,Yi=300*60*1e3;function Xi(e,t){return{available:!1,withheldReason:e,provider:null,accountKey:null,accountScope:null,costBasis:null,...t,windowStartMs:null,windowEndMs:null,windowGranularity:`instant`}}function Zi(e,t,n,r=`instant`){return{available:!0,withheldReason:null,provider:null,accountKey:null,accountScope:null,costBasis:null,...n,windowStartMs:e,windowEndMs:t,windowGranularity:r}}function Qi(e){if(typeof e!=`string`||e.trim()===``)return null;let t=e.trim(),n=/^\d{4}-\d{2}-\d{2}[T ]\d{2}:\d{2}(:\d{2}(\.\d+)?)?$/.test(t),r=Date.parse(n?`${t}Z`:t);return Number.isFinite(r)?r:null}function $i(e){if(typeof e!=`string`||!/^\d{4}-\d{2}-\d{2}$/.test(e.trim()))return null;let t=Date.parse(`${e.trim()}T00:00:00Z`);return Number.isFinite(t)?t:null}function ea(e){return typeof e!=`number`||!Number.isFinite(e)?null:Math.trunc(e)*1e3}function ta(e){let t=new Date(e),n=t.getUTCFullYear()+ +(t.getUTCMonth()===11),r=(t.getUTCMonth()+1)%12;for(let e=t.getUTCDate();e>1;--e){let i=Date.UTC(n,r,e,t.getUTCHours(),t.getUTCMinutes(),t.getUTCSeconds(),t.getUTCMilliseconds());if(new Date(i).getUTCMonth()===r)return i}return Date.UTC(n,r,1,t.getUTCHours(),t.getUTCMinutes(),t.getUTCSeconds(),t.getUTCMilliseconds())}function na(e,t){return t==null?null:e===`subscription-week`?t+qi:e===`calendar-week`?t+Ji:e===`calendar-month`?ta(t):null}function ra(e){if(e==null)return null;let t=String(e).trim();return t===``?null:t}function ia(e){return e===`*`?`vendor_wide`:`account`}function aa(e,t){let n=Qi(e.week_start_at),r=`instant`;n??(n=$i(e.week_start_date),r=`day`);let i={provider:`claude`,accountKey:t,accountScope:ia(t),costBasis:`cumulative_cost_usd`};return n==null?Xi(`the weekly alert retains no week start, so its window cannot be derived`,i):Zi(n,n+qi,i,r)}function oa(e,t){let n={provider:`claude`,accountKey:t,accountScope:ia(t),costBasis:`block_cost_usd`},r=Qi(e.block_start_at);if(r!=null)return Zi(r,r+Yi,n);let i=ea(e.five_hour_window_key);return i==null?Xi(`the five-hour alert retains no block start, so its window cannot be derived`,n):Zi(i-Yi,i,n)}function sa(e,t,n,r){let i=e.period??r??void 0,a=Qi(e.period_start_at)??Qi(e.week_start_at),o={provider:n,accountKey:t,accountScope:ia(t),costBasis:`spent_usd`};if(a==null)return Xi(`the budget alert retains no period start, so its window cannot be derived`,o);let s=na(i,a);return s==null?Xi(`the budget alert names no derivable period (got ${JSON.stringify(i??null)})`,o):Zi(a,s,o)}function ca(e,t){let n=e.period??`subscription-week`,r=Qi(e.week_start_at)??Qi(e.period_start_at),i={provider:`claude`,accountKey:t,accountScope:`vendor_wide`,costBasis:`spent_usd`};if(r==null)return Xi(`the project-budget alert retains no window start, so its window cannot be derived`,i);let a=na(n,r);return a==null?Xi(`the project-budget alert names no derivable period (got ${JSON.stringify(n)})`,i):Zi(r,a,i)}function la(e,t){let n=e.metric,r={provider:n===`codex_budget_usd`?`codex`:`claude`,accountKey:t,accountScope:ia(t),costBasis:n===`weekly_pct`?null:`projected_value`},i=Qi(e.week_start_at)??Qi(e.period_start_at);if(i==null)return Xi(`the projected alert retains no period start, so its window cannot be derived`,r);let a=na(e.period??(n===`weekly_pct`?`subscription-week`:void 0),i);return a==null?Xi(`the projected alert retains no period for metric ${JSON.stringify(n??null)}, so its window length is unknown`,r):Zi(i,a,r)}var ua={weekly:aa,five_hour:oa,budget:(e,t)=>sa(e,t,`claude`,`subscription-week`),codex_budget:(e,t)=>sa(e,t,`codex`,null),project_budget:ca,projected:la};function da(e,t,n){let r=t??{},i=ua[e];return i==null?Xi(`unknown alert axis: ${JSON.stringify(e)}`,{}):i(r,ra(n))}function fa(e){return da(e.axis,e.context,e.accountKey)}function pa(e,t){if(!e.available||e.windowStartMs==null||e.windowEndMs==null)return!1;let n=t.getTime();return n>=e.windowStartMs&&n<e.windowEndMs}function ma(e){let t=Qi(e?.generated_at);return t==null?new Date:new Date(t)}var ha=`The window this alert describes has closed. The dashboard can only show the live one, so it is not opened here.`,ga=`This alert recorded no five-hour block start, so the dashboard cannot tell which block to open.`,_a=`This alert is stamped vendor-wide across accounts, so it cannot be narrowed to one account’s projects.`,va=`The dashboard publishes no calendar-week view, so this budget period cannot be opened.`,ya=`The live week on this dashboard is not the week this alert describes, so it is not opened here.`,ba=`This alert retains no project identity, so its project cannot be opened.`,xa=`Explain this window`;function Sa(e){return{available:!1,withheldReason:e,target:null,explainTarget:null}}function Ca(e){return{available:!0,withheldReason:null,explainTarget:null,target:{...e,accountKey:null,windowStartAt:null,windowEndAt:null,alertFiredAt:null}}}function wa(e,t){return!e.available||e.windowStartMs==null||e.windowEndMs==null?null:{source:t,modal:`explain`,label:xa,accountKey:null,windowStartAt:null,windowEndAt:null,alertFiredAt:null}}function Ta(e){return Qi(e?.current_week?.reset_at_utc??null)}function Ea(e,t,n,r){let i=Ta(t);return i!=null&&e.windowEndMs!=null&&Math.abs(i-e.windowEndMs)>6e4?Sa(ya):Ca({source:n,modal:`current-week`,label:r})}function Da(e,t,n,r){let i=n.context.period??(r===`claude`?`subscription-week`:void 0);return i===`subscription-week`?Ea(e,t,r,r===`codex`?`Open this cycle`:`Open this week`):i===`calendar-month`?Ca({source:r,modal:`monthly`,label:`Open this month`}):Sa(va)}function Oa(e,t,n){let r=fa(e);return ka(Ma(e,t,n,r),e,r)}function ka(e,t,n){let r=e=>e==null?null:{...e,accountKey:n.accountKey===`*`?null:n.accountKey,windowStartAt:Aa(n.windowStartMs),windowEndAt:Aa(n.windowEndMs),alertFiredAt:ja(t)};return{...e,target:r(e.target),explainTarget:e.available?null:r(wa(n,Na(t,n)))}}function Aa(e){return e==null?null:new Date(e).toISOString()}function ja(e){let t=e.alerted_at;return typeof t==`string`&&t.trim()!==``?t:null}function Ma(e,t,n,r){if(!r.available)return Sa(r.withheldReason??`The window this alert describes has closed. The dashboard can only show the live one, so it is not opened here.`);if(e.axis===`five_hour`){let t=e.context.block_start_at;return typeof t!=`string`||t.trim()===``?Sa(ga):Ca({source:`claude`,modal:`block`,blockStartAt:t,label:`Open this block`})}if(!pa(r,n))return Sa(ha);if(e.axis===`weekly`)return Ea(r,t,`claude`,`Open this week`);if(e.axis===`budget`)return Da(r,t,e,`claude`);if(e.axis===`codex_budget`)return Da(r,t,e,`codex`);if(e.axis===`projected`)return Ca({source:r.provider??`claude`,modal:`forecast`,label:`Open the forecast`});if(e.accountKey===`*`)return Sa(_a);let i=e.context.project_key;return typeof i!=`string`||i.trim()===``?Sa(ba):Ca({source:`claude`,modal:`projects`,projectKey:i,label:`Open this project`})}function Na(e,t){return e.axis===`codex_budget`?`codex`:t.provider??`claude`}function Pa(e,t){return t===e.source?null:e.source}function Fa(e){let t=Pa(e,L().activeSource);t!=null&&P({type:`SET_ACTIVE_SOURCE`,source:t}),P({type:`OPEN_MODAL`,kind:e.modal,...e.blockStartAt==null?{}:{blockStartAt:e.blockStartAt},...e.projectKey==null?{}:{projectKey:e.projectKey},accountKey:e.accountKey,windowStartAt:e.windowStartAt,windowEndAt:e.windowEndAt,alertFiredAt:e.alertFiredAt})}var Ia={claude:`cctally budget set <amount>`,codex:`cctally budget set <amount> --vendor codex`},La=`No budget set.`,Ra=`No provider-wide budget set.`,za=`No budget set for this account.`,Ba={ok:`good`,warn:`warn`,over:`over`};function Va({source:e,disposition:t,accountKey:n,configuredAccounts:r}){if(t===`account_budgets_only`)return(0,W.jsxs)(`div`,{className:`budget-empty`,"data-testid":`budget-empty-${e}`,children:[(0,W.jsx)(`p`,{className:`budget-empty-copy`,children:Ra}),(0,W.jsx)(`p`,{className:`budget-empty-hint`,children:`Per-account budgets are configured — see the account cards.`})]});if(t===`account_budget_unset`&&n!=null){let t={...r??{},[n]:30},i=`cctally config set budget.codex.accounts '${JSON.stringify(t)}'`;return(0,W.jsxs)(`div`,{className:`budget-empty`,"data-testid":`budget-empty-${e}`,children:[(0,W.jsx)(`p`,{className:`budget-empty-copy`,children:za}),(0,W.jsx)(`p`,{className:`budget-empty-hint`,children:`Edit the per-account budget map for this key:`}),(0,W.jsx)(`p`,{className:`budget-empty-hint`,children:(0,W.jsx)(`code`,{className:`budget-empty-cmd`,children:i})})]})}return t===`provider_budget_unset`?(0,W.jsxs)(`div`,{className:`budget-empty`,"data-testid":`budget-empty-${e}`,children:[(0,W.jsx)(`p`,{className:`budget-empty-copy`,children:La}),(0,W.jsx)(`p`,{className:`budget-empty-hint`,children:(0,W.jsx)(`code`,{className:`budget-empty-cmd`,children:Ia[e]})})]}):(0,W.jsx)(`div`,{className:`budget-empty`,"data-testid":`budget-empty-${e}`,children:(0,W.jsx)(`p`,{className:`budget-empty-copy`,children:`No budget status to show.`})})}function Ha({source:e,presentation:t,detailed:n}){let{reason:r,unavailable:i}=t,a=r===`period_unresolved`?`Budget period not resolved yet, so no status is published.`:r===`budget_compute_failed`?`Budget status could not be computed.`:`Budget status is unavailable.`,o=i.budget_usd,s=i.period;return(0,W.jsxs)(`div`,{className:`budget-empty`,"data-testid":`budget-unavailable-${e}`,children:[o!=null&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`budget-figures`,children:[(0,W.jsx)(`span`,{className:`budget-target is-lone`,"data-testid":`budget-target-${e}`,children:n?B.usd2(o):B.usd0(o)}),(0,W.jsx)(`span`,{className:`budget-of`,children:`configured`}),s!=null&&(0,W.jsx)(`span`,{className:`budget-period-chip`,"data-testid":`budget-period-${e}`,children:s})]}),(0,W.jsx)(`div`,{className:`budget-window-unresolved`,"data-testid":`budget-window-${e}`,children:`window unresolved`})]}),(0,W.jsx)(`p`,{className:`budget-empty-copy`,children:a}),i.message!==``&&(0,W.jsx)(`p`,{className:`budget-empty-hint`,"data-testid":`budget-message-${e}`,children:i.message}),(0,W.jsx)(`p`,{className:`budget-empty-hint`,"data-testid":`budget-reason-${e}`,children:r})]})}function Ua({source:e,status:t,env:n}){if(t.verdict!==`warn`&&t.verdict!==`over`)return null;let r=Oa({id:``,axis:e===`codex`?`codex_budget`:`budget`,threshold:0,crossed_at:``,alerted_at:``,context:{period:t.period,period_start_at:t.window_start_at}},n,ma(n));if(!r.available||r.target==null){let t=r.explainTarget;return(0,W.jsxs)(`span`,{className:`alert-row-unresolved`,children:[(0,W.jsx)(`span`,{className:`alert-row-withheld`,"data-testid":`budget-withheld-${e}`,children:r.withheldReason}),t==null?null:(0,W.jsx)(`button`,{type:`button`,className:`alert-row-explain`,"data-testid":`budget-explain-window-${e}`,onClick:e=>{e.stopPropagation(),Fa(t)},children:t.label})]})}let i=r.target;return(0,W.jsx)(`button`,{type:`button`,className:`alert-row-open budget-explain`,"data-testid":`budget-explain-${e}`,onClick:e=>{e.stopPropagation(),Fa(i)},children:i.label})}function Wa({source:e,presentation:t,detailed:n,ctx:r,env:i}){let a=t.status,o=Ba[a.verdict]??`good`,s=Math.min(100,Math.max(0,a.consumption_pct));return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`budget-figures`,children:[(0,W.jsx)(`span`,{className:`budget-spend`,"data-testid":`budget-spend-${e}`,children:n?B.usd2(a.spent_usd):B.usd0(a.spent_usd)}),(0,W.jsx)(`span`,{className:`budget-of`,children:`of`}),(0,W.jsx)(`span`,{className:`budget-target`,"data-testid":`budget-target-${e}`,children:n?B.usd2(a.budget_usd):B.usd0(a.budget_usd)}),(0,W.jsx)(`span`,{className:`budget-period-chip`,"data-testid":`budget-period-${e}`,children:a.period})]}),(0,W.jsx)(`div`,{className:`budget-bar is-${o}`,role:`presentation`,children:(0,W.jsx)(`div`,{className:`budget-bar-fill`,style:{width:`${s}%`}})}),(0,W.jsxs)(`div`,{className:`budget-verdict-line`,children:[(0,W.jsx)(`span`,{className:`budget-consumption`,"data-testid":`budget-consumption-${e}`,children:n?B.pct1(a.consumption_pct):B.pct0(a.consumption_pct)}),(0,W.jsx)(`span`,{className:`budget-verdict-chip is-${o}`,"data-testid":`budget-verdict-${e}`,children:a.verdict}),a.low_confidence&&(0,W.jsx)(`span`,{className:`budget-lowconf`,"data-testid":`budget-lowconf-${e}`,children:`low confidence`}),(0,W.jsx)(Ua,{source:e,status:a,env:i})]}),(0,W.jsxs)(`div`,{className:`fc-budget-foot budget-foot`,children:[(0,W.jsxs)(`div`,{className:`fc-foot-line`,children:[(0,W.jsx)(`span`,{className:`fc-foot-k`,children:`Budget pace`}),(0,W.jsx)(`span`,{className:`fc-foot-v`,"data-testid":`budget-pace-${e}`,children:B.usd2PerDay(a.pace.daily_usd)})]}),n&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`fc-foot-line`,children:[(0,W.jsx)(`span`,{className:`fc-foot-k`,children:`Remaining`}),(0,W.jsx)(`span`,{className:`fc-foot-v`,children:B.usd2Accounting(a.remaining_usd)})]}),(0,W.jsxs)(`div`,{className:`fc-foot-line`,children:[(0,W.jsx)(`span`,{className:`fc-foot-k`,children:`Projection`}),(0,W.jsx)(`span`,{className:`fc-foot-v`,"data-testid":`budget-projection-${e}`,children:a.pace.projected_low_usd==null||a.pace.projected_high_usd==null?`—`:`${B.usd2(a.pace.projected_low_usd)} – ${B.usd2(a.pace.projected_high_usd)}`})]}),(0,W.jsxs)(`div`,{className:`fc-foot-line`,children:[(0,W.jsx)(`span`,{className:`fc-foot-k`,children:`Recent-24h`}),(0,W.jsx)(`span`,{className:`fc-foot-v`,children:B.usd2(a.recent_24h_usd)})]}),(0,W.jsxs)(`div`,{className:`fc-foot-line`,children:[(0,W.jsx)(`span`,{className:`fc-foot-k`,children:`Alert thresholds`}),(0,W.jsx)(`span`,{className:`fc-foot-v`,"data-testid":`budget-thresholds-${e}`,children:a.alert_thresholds.length===0?`—`:a.alert_thresholds.map(e=>`${e}%`).join(` · `)})]}),(0,W.jsxs)(`div`,{className:`fc-foot-line`,children:[(0,W.jsx)(`span`,{className:`fc-foot-k`,children:`Period`}),(0,W.jsxs)(`span`,{className:`fc-foot-v`,"data-testid":`budget-window-${e}`,children:[B.datetimeShort(a.window_start_at,r),` → `,B.datetimeShort(a.window_end_at,r)]})]})]})]})]})}function Ga({section:e,surface:t,ctx:n,env:r=null}){let i=`budget-${t}-${e.source}-heading`,a=e.value;return(0,W.jsxs)(`div`,{className:`source-provider-section provider-summary-card budget-provider-summary`,"data-budget-section":e.source,"data-surface":t,role:`region`,"aria-labelledby":i,children:[(0,W.jsxs)(`div`,{className:`source-provider-head`,children:[(0,W.jsxs)(`h3`,{className:`sr-only`,id:i,children:[e.label,` budget`]}),(0,W.jsx)(Gi,{source:e.source}),(0,W.jsx)(`strong`,{className:`budget-block-title`,children:`Budget`}),e.status!==`available`&&a==null&&(0,W.jsx)(`span`,{className:`provider-section-status`,children:e.status})]}),a==null?(0,W.jsx)(`div`,{className:`provider-section-reason`,children:e.reason}):a.state===`configured`?(0,W.jsx)(Wa,{source:e.source,presentation:a,detailed:t===`modal`,ctx:n,env:r}):a.state===`not_configured`?(0,W.jsx)(Va,{source:e.source,disposition:a.disposition,accountKey:a.accountKey,configuredAccounts:a.configuredAccounts}):(0,W.jsx)(Ha,{source:e.source,presentation:a,detailed:t===`modal`}),a!=null&&e.reason!=null&&(0,W.jsx)(`div`,{className:`provider-section-reason`,children:e.reason})]})}function Ka({env:e,selection:t,surface:n}){let r=In(),i={tz:r.resolvedTz,offsetLabel:r.offsetLabel};return(0,W.jsx)(W.Fragment,{children:Li(e,t).sections.map(t=>(0,W.jsx)(Ga,{section:t,surface:n,ctx:i,env:e},t.source))})}function qa(e){let t=(e??``).trim();return t?t.replace(/-/g,` `):``}function Ja(e,t){return e?.short?e.short:qa(t)}function Ya(e,t){return e?.long?e.long:qa(t)}function Xa(e,t){return e?.short?e.short:qa(t)}function Za(e,t){return e?.long?e.long:qa(t)}function Qa(e,t){if(e==null||t==null||!Number.isFinite(e)||!Number.isFinite(t)||e<=0||t<=0)return null;let n=(t-e)/e*100,r=n<0?`less`:`more`;return`each meter point now covers ${Math.abs(n).toFixed(0)}% ${r} usage`}function $a(e){let t=e?.forecast?.quota??null;return t==null||t.basis==null?null:t.basis===`withheld`?{label:`Basis`,value:Ja(t.code_presentation,t.code)||`withheld`}:{label:`Basis`,value:Xa(t.basis_presentation,t.basis)}}function eo(){return(0,W.jsx)(`span`,{className:`hero-per-account-value`,"data-testid":`forecast-per-account`,title:`Each Codex account has its own quota cycle — independent forecasts are never blended.`,children:`per account`})}function to({section:e,perAccount:t,env:n}){let r=e.value==null,i=e.value??Pi(n,e.source),a=t||r?null:Rn(i.verdict),o=a?.cls??`good`,s=t?i.foot.filter(e=>e.label!==`Confidence`):i.foot;return(0,W.jsxs)(`div`,{className:`source-provider-section provider-summary-card forecast-provider-summary`,"data-provider-section":e.source,role:`region`,"aria-labelledby":`forecast-panel-${e.source}-heading`,children:[(0,W.jsxs)(`div`,{className:`source-provider-head`,children:[(0,W.jsxs)(`h3`,{className:`sr-only`,id:`forecast-panel-${e.source}-heading`,children:[e.label,` forecast`]}),(0,W.jsx)(Gi,{source:e.source}),e.status!==`available`&&!t&&!r&&(0,W.jsx)(`span`,{className:`provider-section-status`,children:e.status})]}),(0,W.jsxs)(`div`,{className:`provider-summary-kpis`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`span`,{className:`provider-summary-label`,children:i.primaryLabel}),(0,W.jsx)(`strong`,{className:`provider-summary-value is-${o}`,children:t?(0,W.jsx)(eo,{}):o===`over`&&i.projected!=null?`≥100%`:B.pct1(i.projected)})]}),(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`span`,{className:`provider-summary-label`,children:t?`Current quota`:i.recentLabel}),(0,W.jsx)(`strong`,{className:`provider-summary-value`,children:t?(0,W.jsx)(eo,{}):B.pct1(i.recent)})]})]}),a&&(0,W.jsxs)(`span`,{className:`fc-verdict-chip is-${o}`,children:[(0,W.jsx)(`span`,{className:`fc-verdict-glyph`,"aria-hidden":`true`,children:a.glyph}),` `,a.label]}),e.reason&&!t&&(0,W.jsx)(`div`,{className:`provider-section-reason`,children:e.reason}),s.length>0&&(0,W.jsx)(`div`,{className:`fc-budget-foot`,children:s.map(e=>(0,W.jsxs)(`div`,{className:`fc-foot-line`,children:[(0,W.jsx)(`span`,{className:`fc-foot-k`,children:e.label}),(0,W.jsx)(`span`,{className:`fc-foot-v`,children:e.value})]},e.label))})]})}function no(){let e=En(),t=(0,U.useSyncExternalStore)(V,()=>L().activeSource),n=On(t,Dn(t)),r=Ri(e,t),i=t===`all`?f(e?.sources?.codex??null)!=null&&n.accountKey==null:n.scopesSupported&&n.accountKey==null;if(t===`all`)return(0,W.jsxs)(`section`,{className:`panel accent-purple fc-tile`,id:`panel-forecast`,role:`region`,"aria-label":`Forecast panel · Claude and Codex`,"data-panel-kind":`forecast`,"data-source":`all`,onClick:Wn(()=>P({type:`OPEN_MODAL`,kind:`forecast`})),children:[(0,W.jsxs)(`div`,{className:`panel-header`,children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#crystal-ball`})}),(0,W.jsxs)(`h2`,{children:[`Forecast `,(0,W.jsx)(`span`,{className:`sub`,children:`by provider`})]}),(0,W.jsxs)(`div`,{className:`panel-header-actions`,children:[(0,W.jsx)(Fr,{panel:`forecast`,panelLabel:`Forecast`,triggerId:`forecast-panel`,onClick:()=>P(d(`forecast`,`forecast-panel`))}),(0,W.jsx)(Ir,{label:`Forecast`,onOpen:()=>P({type:`OPEN_MODAL`,kind:`forecast`})}),(0,W.jsx)(jr,{})]})]}),(0,W.jsxs)(`div`,{className:`panel-body source-all-sections provider-composition provider-composition--panel`,children:[r.sections.map(t=>(0,W.jsx)(to,{section:t,env:e,perAccount:t.source===`codex`&&i},t.source)),(0,W.jsx)(Ka,{env:e,selection:`all`,surface:`panel`})]})]});let a=Pi(e,t),o=r.sections[0]??null,s=o==null||o.value==null,c=t===`codex`&&i,l=c?null:Rn(a.verdict),u=l?.cls??`good`,p=!!l?.warn,m=u===`over`&&a.projected!=null?`≥100%`:B.pct1(a.projected),h=$a(e),g=e?.forecast?.quota?.rate_change??null,_=g?.active===!0;return(0,W.jsxs)(`section`,{className:`panel accent-purple fc-tile fc-esc-${u}${p?` fc-accent-edge`:``}`,id:`panel-forecast`,role:`region`,"aria-label":`Forecast panel`,"data-panel-kind":`forecast`,"data-source":t,onClick:Wn(()=>P({type:`OPEN_MODAL`,kind:`forecast`})),children:[(0,W.jsxs)(`div`,{className:`panel-header`,children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#crystal-ball`})}),(0,W.jsx)(`h2`,{children:`Forecast`}),(0,W.jsxs)(`div`,{className:`panel-header-actions`,children:[(0,W.jsx)(Fr,{panel:`forecast`,panelLabel:`Forecast`,triggerId:`forecast-panel`,onClick:()=>P(d(`forecast`,`forecast-panel`))}),(0,W.jsx)(Ir,{label:`Forecast`,onOpen:()=>P({type:`OPEN_MODAL`,kind:`forecast`})}),(0,W.jsx)(jr,{})]})]}),(0,W.jsxs)(`div`,{className:`panel-body fc-body`,children:[(0,W.jsxs)(`div`,{className:`fc-hero`,children:[(0,W.jsx)(`div`,{className:`fc-eyebrow`,children:a.primaryLabel}),(0,W.jsx)(`div`,{className:`fc-num is-${u}${c?` is-blank`:``}`,children:c?(0,W.jsx)(eo,{}):m}),(l||o!=null&&o.status!==`available`&&!c&&!s||_)&&(0,W.jsxs)(`div`,{className:`fc-chiprow`,children:[l&&(0,W.jsxs)(`span`,{className:`fc-verdict-chip is-${u}`,children:[(0,W.jsx)(`span`,{className:`fc-verdict-glyph`,"aria-hidden":`true`,children:l.glyph}),` `,l.label]}),o!=null&&o.status!==`available`&&!c&&!s&&(0,W.jsx)(`span`,{className:`provider-section-status`,children:o.status}),_&&(0,W.jsx)(`span`,{className:`fc-rate-chip severity-${g?.severity??`warn`}`,"data-testid":`fc-rate-change-chip`,title:`The provider changed how much work one meter point buys. Open this panel for the detail.`,children:`Δ rate`})]})]}),o?.reason&&!c&&(0,W.jsx)(`div`,{className:`provider-section-reason`,children:o.reason}),(0,W.jsx)(`div`,{className:`fc-pace is-${u}`,role:`presentation`,children:(0,W.jsx)(`div`,{className:`fc-pace-fill`,style:{width:`${c?0:Math.min(100,Math.max(0,a.projected??0))}%`}})}),(0,W.jsxs)(`div`,{className:`fc-scroll`,children:[(0,W.jsxs)(`div`,{className:`fc-budget-foot`,children:[(0,W.jsxs)(`div`,{className:`fc-foot-line`,children:[(0,W.jsx)(`span`,{className:`fc-foot-k`,children:c?`Current quota`:a.recentLabel}),(0,W.jsx)(`span`,{className:`fc-foot-v`,children:c?(0,W.jsx)(eo,{}):B.pct1(a.recent)})]}),(c?a.foot.filter(e=>e.label!==`Confidence`):a.foot).map(e=>(0,W.jsxs)(`div`,{className:`fc-foot-line`,children:[(0,W.jsx)(`span`,{className:`fc-foot-k`,children:e.label}),(0,W.jsx)(`span`,{className:`fc-foot-v`,children:e.value})]},e.label)),h&&!c&&(0,W.jsxs)(`div`,{className:`fc-foot-line`,"data-testid":`fc-basis-line`,children:[(0,W.jsx)(`span`,{className:`fc-foot-k`,children:h.label}),(0,W.jsx)(`span`,{className:`fc-foot-v`,children:h.value})]})]}),(0,W.jsx)(`div`,{className:`fc-budget-block`,children:(0,W.jsx)(Ka,{env:e,selection:t,surface:`panel`})})]})]})]})}var ro=`No $/1% for this week — the rate was not measured.`;function io({data:e}){let t=e.map(e=>e.dollar_per_pct==null),n=e.map(e=>e.spark_height??0),r=n.filter((e,n)=>!t[n]),i=Math.max(1,...r);return(0,W.jsx)(W.Fragment,{children:n.map((r,a)=>{let o=a===n.length-1;if(t[a])return(0,W.jsx)(`div`,{className:`bar is-withheld`,title:ro},e[a].label+`|`+a);let s={height:`${Math.max(6,r/i*100)}%`};return o&&(s.background=`color-mix(in srgb, var(--accent-purple) 70%, white 30%)`),(0,W.jsx)(`div`,{className:`bar`,style:s},e[a].label+`|`+a)})})}function ao(e,t){return!e||!t?`↕`:t===`asc`?`▲`:`▼`}function oo(e,t){return!e||!t?`none`:t===`asc`?`ascending`:`descending`}function so({columns:e,override:t,onChange:n,accentVar:r,grid:i}){let a=e=>n(ee(t,e)),o=e=>t=>{t.stopPropagation(),a(e)},s=e=>t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),t.stopPropagation(),a(e))};return(0,W.jsx)(`thead`,{role:i?`rowgroup`:void 0,children:(0,W.jsx)(`tr`,{role:i?`row`:void 0,children:e.map(e=>{if(e.sortable===!1)return(0,W.jsx)(`th`,{className:[`th-static`,e.className??``,e.numeric?`num`:``].filter(Boolean).join(` `),role:i?`columnheader`:void 0,"data-col":e.id,title:e.title,children:e.label},e.id);let n=t?.column===e.id,a=n?t.direction:null,c=[`th-sortable`,e.className??``,e.numeric?`num`:``,n?`is-sorted`:``].filter(Boolean).join(` `),l=r&&n?{"--th-accent":`var(${r})`}:void 0;return(0,W.jsx)(`th`,{className:c,role:`columnheader`,"aria-sort":oo(n,a),tabIndex:0,"data-col":e.id,title:e.title,style:l,onClick:o(e),onKeyDown:s(e),children:(0,W.jsxs)(`button`,{type:`button`,className:`th-sort-btn`,tabIndex:-1,children:[(0,W.jsx)(`span`,{className:`th-label`,children:e.label}),(0,W.jsx)(`span`,{className:`th-caret`+(n?``:` th-caret--rest`),"aria-hidden":`true`,children:ao(n,a)})]})},e.id)})})})}function co({lines:e=3,label:t=`Loading`}){return(0,W.jsxs)(`div`,{className:`panel-skeleton`,children:[(0,W.jsx)(`span`,{className:`sr-only`,role:`status`,"aria-live":`polite`,children:`${t}…`}),Array.from({length:e}).map((t,n)=>(0,W.jsx)(`div`,{className:`skel skel-line${n===e-1?` short`:``}`,"aria-hidden":`true`},n))]})}var lo=[{id:`week`,label:`Week`,defaultDirection:`desc`,compare:(e,t)=>e._chronoIdx-t._chronoIdx,className:`c-week`},{id:`cost_usd`,label:`Cost`,defaultDirection:`desc`,numeric:!0,nullKey:e=>e.cost_usd??null,compare:(e,t)=>(e.cost_usd??0)-(t.cost_usd??0),className:`c-cost`},{id:`used_pct`,label:`Used%`,defaultDirection:`desc`,numeric:!0,compare:(e,t)=>(e.used_pct??0)-(t.used_pct??0),className:`c-used`},{id:`dollar_per_pct`,label:`$/1%`,defaultDirection:`desc`,numeric:!0,compare:(e,t)=>(e.dollar_per_pct??0)-(t.dollar_per_pct??0),className:`c-dollar`},{id:`delta`,label:`Δ (vs prior)`,defaultDirection:`desc`,numeric:!0,compare:(e,t)=>(e.delta??0)-(t.delta??0),className:`c-delta`}],uo=lo.map(e=>e.id===`week`?{...e,label:`Cycle`}:e);function fo(e){return e===`week`?lo:uo}var po={unit:`week`,plural:`weeks`,column:`Week`,detail:`Weekly`,relativePrefix:`W`},mo={unit:`cycle`,plural:`cycles`,column:`Cycle`,detail:`Cycle`,relativePrefix:`C`};function ho(e){return e===`claude`?po:mo}function go(e,t){return`${e} ${e===1?t.unit:t.plural}`}function _o(e,t,n){return(t===0?`Now`:`${n.relativePrefix}−${t}`)+(e?` · ${e}`:``)}function vo({labels:e}){return!e||e.length===0?null:(0,W.jsx)(`span`,{className:`period-account-chips`,"aria-label":`Accounts: ${e.join(`, `)}`,children:e.map(e=>(0,W.jsx)(`span`,{className:`period-account-chip`,title:`Weekly cycle owned by ${e}`,children:e},e))})}var yo={week:fo(`week`).filter(e=>e.id!==`cost_usd`),cycle:fo(`cycle`).filter(e=>e.id!==`cost_usd`)};function bo(e,t){if(e.length===0)return`$/1% trend: no data`;let n=e[e.length-1],r=e.length>1?e[e.length-2]:null,i=n.dollar_per_pct==null?`n/a`:B.usd2(n.dollar_per_pct),a=``;if(r&&n.dollar_per_pct!=null&&r.dollar_per_pct!=null){let e=n.dollar_per_pct-r.dollar_per_pct;a=Math.abs(e)<.005?`, flat vs prior ${t.unit}`:e>0?`, up vs prior ${t.unit}`:`, down vs prior ${t.unit}`}let o=e.length===1?t.unit:t.plural;return`$/1% trend over ${e.length} ${o}; latest ${i}${a}`}function xo({section:e,trendOverride:t,composed:n}){let r=e.rows.map(e=>({...e,spark_height:e.dollar_per_pct})),i=ho(e.source),a=r.map((e,t)=>({...e,_chronoIdx:t})),o=yo[i.unit],s=t?E(a,o,t):a,c=bo(r,i),l=n?`trend-spark-${e.source}`:`trend-spark`;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`trend-chart`,children:[(0,W.jsx)(`div`,{className:`trend-spark-title`,children:`$/1% trend:`}),(0,W.jsx)(`div`,{className:`trend-spark`,id:l,role:`img`,"aria-label":`${e.label} ${c}`,style:{gridTemplateColumns:`repeat(${Math.max(1,r.length)}, 1fr)`},children:(0,W.jsx)(io,{data:r})}),(0,W.jsxs)(`div`,{className:`trend-spark-legend`,children:[(0,W.jsx)(`span`,{children:`older`}),(0,W.jsx)(`span`,{className:`line`}),(0,W.jsx)(`span`,{children:`▶ newer`})]})]}),(0,W.jsx)(`div`,{className:`trend-table-wrap`,children:(0,W.jsxs)(`table`,{className:`trend-table`,children:[(0,W.jsx)(so,{columns:o,override:t,onChange:e=>P({type:`SET_TABLE_SORT`,table:`trend`,override:e}),accentVar:`--accent-amber`}),(0,W.jsx)(`tbody`,{id:n?`trend-rows-${e.source}`:`trend-rows`,children:s.map(t=>(0,W.jsxs)(`tr`,{className:t.is_current?`current`:void 0,children:[(0,W.jsxs)(`td`,{children:[(0,W.jsx)(vo,{labels:t.account_labels}),e.source===`codex`?_o(t.label,r.length-1-t._chronoIdx,i):t.label]}),(0,W.jsx)(`td`,{className:`num`,children:B.pct0(t.used_pct)}),(0,W.jsx)(`td`,{className:`num`+(t.is_current?``:` dollar`),children:B.usd2(t.dollar_per_pct)}),(0,W.jsx)(`td`,{className:`num `+B.deltaCls(t.delta,t.is_current),children:B.delta(t.delta)})]},`${e.source}:${t.label}`))})]})})]})}function So(){let e=En(),t=(0,U.useSyncExternalStore)(V,()=>L().activeSource),n=Mi(e,t),r=(0,U.useSyncExternalStore)(V,()=>L().prefs.trendSortOverride),i=n.sections.reduce((e,t)=>e+t.rows.length,0),a=vi(e,t).hydrating&&i===0,o=n.sections[0],s=ho(o?.source??`claude`),c=t===`all`?`(Claude ${n.sections[0]?.rows.length??0}w · Codex ${n.sections[1]?.rows.length??0}c)`:`(${go(o?.rows.length??0,s)})`;return(0,W.jsxs)(`section`,{className:`panel accent-amber`,id:`panel-trend`,role:`region`,"aria-label":`$/1% Trend panel`,"data-panel-kind":`trend`,"data-source":t,onClick:Wn(()=>P({type:`OPEN_MODAL`,kind:`trend`})),children:[(0,W.jsxs)(`div`,{className:`panel-header`,children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#bar-chart`})}),(0,W.jsxs)(`h2`,{children:[n.title,` `,(0,W.jsx)(`span`,{className:`sub`,children:a?`(loading)`:c})]}),(0,W.jsxs)(`div`,{className:`panel-header-actions`,children:[(0,W.jsx)(Fr,{panel:`trend`,panelLabel:`Trend`,triggerId:`trend-panel`,onClick:()=>P(d(`trend`,`trend-panel`))}),(0,W.jsx)(Ir,{label:`Trend`,onOpen:()=>P({type:`OPEN_MODAL`,kind:`trend`})}),(0,W.jsx)(jr,{})]})]}),(0,W.jsx)(`div`,{className:`panel-body`,children:e?.hydrating&&i===0?(0,W.jsx)(co,{}):t===`all`?(0,W.jsx)(`div`,{className:`source-all-sections provider-composition trend-provider-composition`,children:n.sections.map(e=>(0,W.jsxs)(`section`,{className:`provider-summary-card source-provider-section trend-provider-section`,"data-provider-section":e.source,"aria-labelledby":`trend-panel-${e.source}-heading`,children:[(0,W.jsxs)(`div`,{className:`source-provider-head provider-composition-head`,children:[(0,W.jsxs)(`h3`,{className:`sr-only`,id:`trend-panel-${e.source}-heading`,children:[e.label,` $ per 1% trend`]}),(0,W.jsx)(`span`,{className:`source-chip source-chip--${e.source}`,children:e.label}),(0,W.jsxs)(`span`,{className:`provider-summary-label`,children:[e.rows.length,` `,e.source===`claude`?`weeks`:`cycles`]})]}),(0,W.jsx)(xo,{section:e,trendOverride:r,composed:!0})]},e.source))}):o?(0,W.jsx)(xo,{section:o,trendOverride:r,composed:!1}):null})]})}function Co(e){let t=me.findIndex(t=>t.key===e);return me[(t===-1?0:t+1)%me.length].key}function wo(){let e=(0,U.useSyncExternalStore)(V,()=>L().filterText),t=(0,U.useSyncExternalStore)(V,()=>L().searchText),n=(0,U.useSyncExternalStore)(V,()=>L().searchMatches),r=(0,U.useSyncExternalStore)(V,()=>L().searchIndex),i=(0,U.useSyncExternalStore)(V,()=>L().sessionsSort),a=(0,U.useSyncExternalStore)(V,()=>L().prefs.sessionsSortOverride),o=(0,U.useSyncExternalStore)(V,()=>L().activeSource)===`claude`,s=o?`filter project|model…`:`filter session|model…`,c=Pn(),[l,u]=(0,U.useState)(!1),[d,f]=(0,U.useState)(!1),p=(0,U.useRef)(null),m=(0,U.useRef)(null),h=d||c,g=d||t.length>0,_=()=>u(!0),v=e=>{e?.clear&&P({type:`SET_FILTER`,text:``}),u(!1),P({type:`SET_INPUT_MODE`,mode:null})},y=()=>f(!0),b=e=>{e?.clear&&P({type:`SET_SEARCH`,text:``}),f(!1),P({type:`SET_INPUT_MODE`,mode:null})};(0,U.useEffect)(()=>{l&&(p.current?.focus(),p.current?.select(),P({type:`SET_INPUT_MODE`,mode:`filter`}))},[l]),(0,U.useEffect)(()=>{d&&(m.current?.focus(),m.current?.select(),P({type:`SET_INPUT_MODE`,mode:`search`}))},[d]),xe([{key:`f`,scope:`sessions`,action:_,when:()=>!L().openModal&&!l&&L().chromeOverlayOpen===0},{key:`/`,scope:`sessions`,action:y,when:()=>!L().openModal&&!d&&L().chromeOverlayOpen===0}]);let x=n.length,S=x>0?`${r+1} / ${x}`:`0 / 0`,C=e=>{x!==0&&P({type:`SET_SEARCH_MATCHES`,matches:n,index:((r+e)%x+x)%x})};return(0,W.jsxs)(`div`,{className:`sessions-ctrls`,id:`sessions-ctrls`,children:[l?(0,W.jsx)(`input`,{type:`search`,className:`ctrl-input`,id:`filter-input`,placeholder:s,ref:p,value:e,onChange:e=>P({type:`SET_FILTER`,text:e.target.value}),onKeyDown:e=>{e.key===`Enter`?v():e.key===`Escape`&&v({clear:!0})},onBlur:()=>v()}):e?(0,W.jsxs)(`button`,{className:`ctrl-btn as-chip`,id:`filter-btn`,type:`button`,"aria-label":`Filter: ${e}. Press Esc to clear.`,onClick:e=>{if(e.target.classList.contains(`chip-x`)){P({type:`SET_FILTER`,text:``});return}_()},children:[(0,W.jsxs)(`span`,{className:`chip`,children:[`filter: `,e]}),(0,W.jsx)(`span`,{className:`chip-x`,title:`Clear`,children:`×`})]}):(0,W.jsx)(`button`,{className:`ctrl-btn`,id:`filter-btn`,type:`button`,title:`Filter (f)`,onClick:_,children:(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#funnel`})})}),h?(0,W.jsxs)(`div`,{className:`search-container`,id:`search-container`,children:[(0,W.jsx)(`input`,{type:`search`,className:`ctrl-input`,id:`search-input`,placeholder:`search…`,ref:m,value:t,onChange:e=>P({type:`SET_SEARCH`,text:e.target.value}),onFocus:()=>{d||f(!0)},onKeyDown:e=>{e.key===`Enter`?(e.preventDefault(),C(1)):e.key===`Escape`&&b({clear:!0})},onBlur:()=>b()}),g&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`match-count`,id:`search-count`,children:S}),(0,W.jsx)(`button`,{className:`ctrl-btn`,id:`search-prev`,type:`button`,title:`Prev (N)`,onMouseDown:e=>e.preventDefault(),onClick:()=>C(-1),children:`↑`}),(0,W.jsx)(`button`,{className:`ctrl-btn`,id:`search-next`,type:`button`,title:`Next (n)`,onMouseDown:e=>e.preventDefault(),onClick:()=>C(1),children:`↓`})]})]}):(0,W.jsx)(`button`,{className:`ctrl-btn`,id:`search-btn`,type:`button`,title:`Search (/)`,onClick:y,children:(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#magnifier`})})}),o&&(0,W.jsxs)(`button`,{className:`ctrl-btn`,id:`sort-pill`,type:`button`,title:`Cycle sort`,onClick:()=>{L().prefs.sessionsSortOverride&&P({type:`SET_TABLE_SORT`,table:`sessions`,override:null}),P({type:`SET_SORT`,key:Co(i)})},children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#sort-updown`})}),(0,W.jsxs)(`span`,{className:`label`,children:[`sort: `,a?`${a.column} ${a.direction}`:i]})]})]})}function To({text:e,query:t}){let n=t.trim().toLowerCase();if(!n)return(0,W.jsx)(W.Fragment,{children:e});let r=e.toLowerCase(),i=[],a=0,o=0;for(;;){let t=r.indexOf(n,a);if(t===-1){a<e.length&&i.push((0,W.jsx)(U.Fragment,{children:e.slice(a)},o++));break}t>a&&i.push((0,W.jsx)(U.Fragment,{children:e.slice(a,t)},o++)),i.push((0,W.jsx)(`mark`,{children:e.slice(t,t+n.length)},o++)),a=t+n.length}return(0,W.jsx)(W.Fragment,{children:i})}function Eo(e,t){let{onRow:n,cellIdx:r,cellCount:i}=t;switch(e){case`ArrowDown`:return{kind:`row`,to:`next`};case`ArrowUp`:return{kind:`row`,to:`prev`};case`Home`:return{kind:`row`,to:`first`};case`End`:return{kind:`row`,to:`last`};case`ArrowRight`:return n?i>0?{kind:`cell`,to:0}:null:r<i-1?{kind:`cell`,to:r+1}:null;case`ArrowLeft`:return n?null:r>0?{kind:`cell`,to:r-1}:{kind:`rowFocus`};case`Enter`:case` `:return n?{kind:`activateRow`}:null;default:return null}}function Do(e){return e==null?`cost-none`:e<.25?`cost-xs`:e<1?`cost-low`:e<3?`cost-mid`:`cost-high`}function Oo(e,t){if(!(t>0)||!Number.isFinite(e))return 0;let n=e/t;return n<0?0:n>1?1:n}var ko=`.sess-open-conv, .source-detail-open, .model-chip, .project-cell-link`;function Ao(){let e=(0,U.useSyncExternalStore)(V,()=>L().activeSource),t=En(),n=In(),r={tz:n.resolvedTz,offsetLabel:n.offsetLabel};(0,U.useSyncExternalStore)(V,()=>L().filterText),(0,U.useSyncExternalStore)(V,()=>L().sessionsSort),(0,U.useSyncExternalStore)(V,()=>L().prefs.sessionsPerPage);let a=(0,U.useSyncExternalStore)(V,()=>L().sourceSessionsSort),s=(0,U.useSyncExternalStore)(V,()=>L().prefs.sessionsSortOverride),c=(0,U.useSyncExternalStore)(V,()=>L().searchMatches),u=(0,U.useSyncExternalStore)(V,()=>L().searchIndex),f=(0,U.useSyncExternalStore)(V,()=>L().searchText),p=(0,U.useSyncExternalStore)(V,()=>L().prefs.sessionsCollapsed),m=On(e,Dn(e)),h=m.accountKey!=null,g=m.requestedKey!=null&&!m.scopesSupported,_=Pn(),v=e===`all`,y=o(t,e),b=mn(y),x=Se(),S=i(y),w=new Set(S.flatMap(e=>e.models)),T=w.size<=1,E=w.size===1?[...w][0]:null,D=C({includeSource:v,oneModel:T}),ee=e===`claude`?s:a,O=bn(t),k=e===`claude`?t?.sessions?.total??x.length:e===`codex`?(y.entry?.data)?.sessions?.total_sessions??x.length:S.length,A=e===`claude`||v?`No sessions yet.`:`No Codex sessions yet.`,j=e===`claude`?`claude-sessions-table`:v?`source-sessions-table`:`codex-sessions-table`,[M,N]=(0,U.useState)(null),te=u>=0?c[u]:-1,ne=M?x.findIndex(e=>e.key===M):-1,F=x.length===0?-1:ne>=0?ne:te>=0?te:0,re=new Set(c),I=te,ie=t=>{t.key&&(e===`claude`&&t.source===`claude`?P({type:`OPEN_MODAL`,kind:`session`,sessionId:t.key}):P({type:`OPEN_SOURCE_DETAIL`,source:t.source,resource:`session`,key:t.key}))},ae=(0,U.useCallback)(t=>{if(t.shiftKey||t.ctrlKey||t.metaKey||t.altKey)return;let n=t.target,r=n.closest(`tr.source-session-row`);if(!r)return;let i=t.currentTarget,a=n===r,o=Array.from(r.querySelectorAll(ko)),s=o.filter(e=>e.offsetParent!==null),c=s.length>0?s:o,l=a?-1:c.indexOf(n),u=Eo(t.key,{onRow:a,cellIdx:l,cellCount:c.length});if(!u)return;if(t.preventDefault(),t.stopPropagation(),u.kind===`cell`){c[u.to]?.focus();return}if(u.kind===`rowFocus`){r.focus();return}if(u.kind===`activateRow`){let t=r.dataset.detailSource,n=r.dataset.detailKey;(t===`claude`||t===`codex`)&&n&&P(e===`claude`&&t===`claude`?{type:`OPEN_MODAL`,kind:`session`,sessionId:n}:{type:`OPEN_SOURCE_DETAIL`,source:t,resource:`session`,key:n});return}let d=i.children.length;if(d===0)return;let f=Number(r.dataset.rowIndex),p=u.to===`next`?Math.min(f+1,d-1):u.to===`prev`?Math.max(f-1,0):u.to===`first`?0:d-1,m=i.children[p];m&&(m.focus(),m.scrollIntoView({block:`nearest`}),N(m.dataset.rowKey??null))},[e]),R=b.mode===`skeleton`||e===`claude`&&!!t?.hydrating&&x.length===0;return(0,W.jsxs)(`section`,{className:`panel accent-orange`+(p?` sessions-collapsed`:``),id:`panel-sessions`,role:`region`,"aria-label":`Recent Sessions panel`,"data-panel-kind":`sessions`,"data-source":e,children:[(0,W.jsxs)(`div`,{className:`panel-header`,style:{justifyContent:`space-between`},children:[(0,W.jsxs)(`div`,{className:`panel-title-wrap`,style:{display:`flex`,alignItems:`center`,gap:`10px`},children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#clock`})}),(0,W.jsxs)(`h2`,{children:[`Recent Sessions `,(0,W.jsx)(`span`,{className:`sub`,children:R?`(loading)`:e===`claude`?`(${k} total)`:`(${x.length} shown)`})]}),E&&(0,W.jsxs)(`span`,{className:`sess-model-caption`,title:`All sessions use ${E}`,children:[(0,W.jsx)(`span`,{className:`ms-dot ${ii(E)}`,style:oi(E),"aria-hidden":`true`}),`all · `,E]}),b.mode===`degraded`&&(0,W.jsx)(Ki,{gate:b}),h&&(0,W.jsxs)(`span`,{className:`sessions-account-note`,"data-testid":`sessions-account-note`,title:v?`Showing only ${m.card?.label??`this account`}'s Codex sessions. Claude sessions are not filtered by account.`:`Showing only ${m.card?.label??`this account`}'s sessions.`,children:[v?`Codex: `:``,l(m.card?.label??`focused account`),` only`]}),g&&(0,W.jsx)(`span`,{className:`sessions-unfiltered-note`,"data-testid":`sessions-unfiltered-note`,title:Dn(e)===`codex`?`Codex sessions are not filtered by account (this source published no account scopes).`:`Claude sessions are not filtered by account (conversations are account-agnostic).`,children:`all accounts (unfiltered)`})]}),(0,W.jsxs)(`div`,{className:`panel-header-actions`,children:[!_&&(0,W.jsx)(wo,{}),(0,W.jsx)(Fr,{panel:`sessions`,panelLabel:`Sessions`,triggerId:`sessions-panel`,onClick:()=>P(d(`sessions`,`sessions-panel`))}),(0,W.jsx)(Ir,{label:`Sessions`,disabled:x.length===0,onOpen:()=>{let e=x[0];e&&ie(e)}}),(0,W.jsx)(`button`,{type:`button`,className:`panel-collapse-toggle`,"aria-expanded":!p,"aria-controls":`panel-sessions-body`,"aria-label":p?`Expand Recent Sessions`:`Collapse Recent Sessions`,title:p?`Expand (c)`:`Collapse (c)`,onClick:e=>{e.stopPropagation(),P({type:`SAVE_PREFS`,patch:{sessionsCollapsed:!p}})},children:(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#${p?`chevron-down`:`chevron-up`}`})})}),(0,W.jsx)(jr,{})]})]}),v&&(0,W.jsx)(`div`,{className:`panel-range-note`,children:`both providers, interleaved`}),_&&(0,W.jsx)(wo,{}),(0,W.jsx)(`div`,{className:`panel-body panel-body--scroll`,id:`panel-sessions-body`,children:R?(0,W.jsx)(co,{lines:4}):x.length===0?(0,W.jsx)(`div`,{className:`panel-empty`,"data-testid":`source-sessions-empty`,children:A}):(0,W.jsxs)(`table`,{className:`sess-table source-sess-table`,role:`grid`,"data-testid":j,children:[(0,W.jsx)(so,{columns:D,override:ee,grid:!0,onChange:t=>P(e===`claude`?{type:`SET_TABLE_SORT`,table:`sessions`,override:t}:{type:`SET_SOURCE_SESSIONS_SORT`,override:t})}),(0,W.jsx)(`tbody`,{id:`sess-rows`,role:`rowgroup`,onKeyDown:ae,children:x.map((t,n)=>{let i=re.has(n),a=n===I,o=t.title||`—`,s=t.recencyUtc?B.startedShort(t.recencyUtc,r,{noSuffix:!0}):`—`;return(0,W.jsxs)(`tr`,{className:`source-session-row session-row`+(i?` search-match`:``)+(a?` search-match-current`:``),role:`row`,tabIndex:n===F?0:-1,"aria-current":a?`true`:void 0,"data-row-index":n,"data-row-key":t.key,"data-session-id":e===`claude`?t.key:void 0,"data-detail-source":t.source,"data-detail-key":t.key,onClick:()=>ie(t),children:[(0,W.jsxs)(`td`,{className:`started recency`,role:`gridcell`,children:[O&&t.source===`claude`&&t.key&&(0,W.jsx)(`button`,{type:`button`,className:`sess-open-conv`,tabIndex:-1,title:`Open conversation`,"aria-label":`Open conversation`,onClick:e=>{e.stopPropagation(),P({type:`OPEN_CONVERSATION`,conversationRef:oe(t.key)})},children:(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#file-text`})})}),(0,W.jsx)(To,{text:s,query:f}),(0,W.jsxs)(`span`,{className:`dur-fold`,children:[` · `,(0,W.jsx)(To,{text:t.durationMin==null?`—`:`${t.durationMin}m`,query:f})]})]}),(0,W.jsx)(`td`,{className:`dur`,role:`gridcell`,children:(0,W.jsx)(To,{text:t.durationMin==null?`—`:`${t.durationMin}m`,query:f})}),!T&&(0,W.jsx)(`td`,{className:`model model-chip-cell models`,role:`gridcell`,onClick:e=>e.stopPropagation(),children:t.models.length===0?(0,W.jsx)(`span`,{className:`src-model-empty`,"aria-hidden":`true`,children:`—`}):t.models.map(e=>(0,W.jsx)(`button`,{type:`button`,tabIndex:-1,className:`chip model-chip ${ii(e)}`,style:oi(e),"aria-label":`Filter by ${e}`,onClick:()=>P({type:`SET_FILTER`,text:e}),children:(0,W.jsx)(To,{text:e,query:f})},e))}),(0,W.jsx)(`td`,{className:`session`,role:`gridcell`,title:t.title||void 0,children:t.key?(0,W.jsxs)(`button`,{type:`button`,className:`source-detail-open sess-open-title`,tabIndex:-1,"aria-label":e===`claude`?t.title?`Open session details: ${t.title}`:`Open session details, started ${s}`:`Open ${t.source} session details: ${o}`,onClick:e=>{e.stopPropagation(),ie(t)},children:[v&&(0,W.jsx)(Gi,{source:t.source}),t.title?(0,W.jsx)(To,{text:t.title,query:f}):(0,W.jsx)(`span`,{className:`sess-title-empty`,"aria-hidden":`true`,children:`—`})]}):t.title?(0,W.jsx)(To,{text:t.title,query:f}):(0,W.jsx)(`span`,{className:`sess-title-empty`,"aria-hidden":`true`,children:`—`})}),(0,W.jsx)(`td`,{className:`project`,role:`gridcell`,children:t.projectKey&&t.projectKey!==`(unknown)`?(0,W.jsx)(`button`,{type:`button`,className:`project-cell-link`,tabIndex:-1,title:t.project,"aria-label":e===`claude`?`Open Projects modal for ${t.projectKey}`:`Open ${t.source} project details: ${t.project}`,onClick:n=>{n.stopPropagation(),P(e===`claude`?{type:`OPEN_MODAL`,kind:`projects`,projectKey:t.projectKey??void 0}:{type:`OPEN_SOURCE_DETAIL`,source:t.source,resource:`project`,key:t.projectKey})},children:(0,W.jsx)(To,{text:t.project,query:f})}):(0,W.jsx)(`span`,{title:`Project still resolving`,children:(0,W.jsx)(To,{text:t.project,query:f})})}),(0,W.jsx)(`td`,{className:`num cache`,role:`gridcell`,children:t.cacheHitPct==null?`—`:B.pct0(t.cacheHitPct)}),(0,W.jsx)(`td`,{className:`num cost ${Do(t.costUsd)}`,role:`gridcell`,children:(0,W.jsx)(To,{text:B.usd2(t.costUsd),query:f})})]},t.key)})})]})})]})}function jo(){return(0,W.jsx)(Ao,{})}function Mo(e,t){if(e==null||t==null)return null;let n=Date.parse(e),r=Date.parse(t);return Number.isNaN(n)||Number.isNaN(r)||r<=n?null:{startAt:new Date(n).toISOString(),endAt:new Date(r-1).toISOString()}}function No(e,t,n={}){if(e==null)return null;let r=Po(e,n.clampEndTo),i=Fo(e.startAt,t),a=Fo(r,t),o=i!=null&&a!=null&&i!==a?B.dateShortWithYear:B.dateShort,s=o(e.startAt,t),c=o(r,t);return s==null||c==null?null:s===c?s:`${s} – ${c}`}function Po(e,t){if(t==null)return e.endAt;let n=typeof t==`number`?t:Date.parse(t),r=Date.parse(e.endAt),i=Date.parse(e.startAt);return Number.isNaN(n)||Number.isNaN(r)||Number.isNaN(i)||n>=r?e.endAt:new Date(Math.max(n,i)).toISOString()}function Fo(e,t){let n=B.dateShortWithYear(e,t);return n==null?null:n.slice(-4)}function Io(e){return e===`codex`?`Codex`:e===`claude`?`Claude`:`A provider`}function Lo(e,t){switch(e.code){case`range_unresolved`:return`The shared range could not be resolved, so the combined ${t} is withheld.`;case`provider_unavailable`:return`${Io(e.provider)} data is unavailable, so the combined ${t} is withheld.`;case`provider_incoherent`:return`${Io(e.provider)} data is out of date, so the combined ${t} is withheld.`;case`claude_fold_failed`:return`Claude's totals for the shared range could not be computed, so the combined ${t} is withheld.`;case`retained_range_mismatch`:return`The two providers describe different ranges, so the combined ${t} is withheld.`;case`rows_absent`:return`This page is talking to a server that does not publish the combined ${t}. Reload to pick up the current one.`;default:return`The combined ${t} is withheld (${e.code}).`}}function Ro(e){switch(e){case`trailing_4wk_median_drifted`:return`One or more prior weeks were dropped from this median because their model mix sits outside the calibration’s support, so the rate is measured over a reduced population.`;case`trailing_4wk_median_unverified`:return`The comparability test could not read the entry store, so the prior weeks in this median were not checked against the current metering rate.`;default:return null}}function zo(e){switch(e){case`no_usage_observed`:return`No quota usage has been observed in this window, so there is no rate to measure.`;case null:case void 0:case``:return`The $ / 1% rate is unavailable for this window.`;default:return`The $ / 1% rate is unavailable for this window (${e}).`}}var Bo=(e,t)=>e<t?-1:+(e>t),Vo=[{id:`project`,label:`Project`,defaultDirection:`asc`,compare:(e,t)=>Bo(e.displayKey??e.key,t.displayKey??t.key),className:`project`},{id:`sessions`,label:`Sessions`,defaultDirection:`desc`,numeric:!0,compare:(e,t)=>e.sessionsCount-t.sessionsCount},{id:`first_seen`,label:`First seen`,defaultDirection:`asc`,nullKey:e=>e.firstSeenAt,compare:(e,t)=>Bo(e.firstSeenAt,t.firstSeenAt),className:`started`},{id:`last_seen`,label:`Last seen`,defaultDirection:`desc`,nullKey:e=>e.lastSeenAt,compare:(e,t)=>Bo(e.lastSeenAt,t.lastSeenAt),className:`started`},{id:`cost`,label:`Cost`,defaultDirection:`desc`,numeric:!0,compare:(e,t)=>e.windowCost-t.windowCost},{id:`used_pct`,label:`Used pp (sum)`,title:`Sum of each week's attributed usage-% over the selected window (percentage-points; can exceed 100 across multiple weeks).`,defaultDirection:`desc`,numeric:!0,nullKey:e=>e.windowPct,compare:(e,t)=>e.windowPct-t.windowPct},{id:`share_of_window`,label:`Cost share`,title:`This project's share of total project spend in the selected window.`,defaultDirection:`desc`,numeric:!0,nullKey:e=>e.shareOfWindow,compare:(e,t)=>e.shareOfWindow-t.shareOfWindow}],Ho=`Each selected window is a set of subscription-week buckets. Reset shifts can leave gaps; the table and drill both use those same buckets. Used pp (sum) adds each bucket’s attributed usage percentage — a sum of percentage points, not a share of any one week. Cost share is each project’s share of total project spend in that same window.`,Uo=`Claude accounts are folded into one ranking here. Each account has its own weekly quota, so those percentages are never added across accounts.`,Wo=5;function Go(){let e=En(),t=(0,U.useSyncExternalStore)(V,()=>L().activeSource),n=X(e,t),r=n.state===`available`?n.rows:[],i=n.state===`unavailable`,a=n.state===`withheld`?n:null,o=In(),s=n.state===`available`?n.range:null,c=No(s==null?null:{startAt:s.start_at,endAt:s.end_at},{tz:o.resolvedTz,offsetLabel:o.offsetLabel},{clampEndTo:e?.generated_at}),l=t===`claude`?`share of quota`:`share of cost`,u=vi(e,t).hydrating,f=on(vi(e,t).warnings,`projects`),p=u&&r.length===0,m=(0,W.jsxs)(`div`,{className:`panel-header`,style:{justifyContent:`space-between`},children:[(0,W.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:`10px`},children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#folder`})}),(0,W.jsxs)(`h2`,{children:[`Projects`,` `,(0,W.jsx)(`span`,{className:`sub`,children:p?`(loading)`:a?`(withheld)`:i?`(unavailable)`:t===`claude`?`(${r.length} this week)`:`(${r.length} projects)`})]}),f&&(0,W.jsx)(Ki,{gate:{mode:`degraded`,warning:f,noSuccessYet:!1}})]}),(0,W.jsxs)(`div`,{className:`panel-header-actions`,children:[(0,W.jsx)(Fr,{panel:`projects`,panelLabel:`Projects`,triggerId:`projects-panel`,onClick:()=>P(d(`projects`,`projects-panel`))}),(0,W.jsx)(Ir,{label:`Projects`,onOpen:()=>P({type:`OPEN_MODAL`,kind:`projects`})}),(0,W.jsx)(jr,{})]})]});if(i||a)return(0,W.jsxs)(`section`,{className:`panel accent-magenta`,id:`panel-projects`,"data-panel-kind":`projects`,"data-source":t,role:`region`,"aria-label":`Projects panel`,children:[m,(0,W.jsx)(`div`,{className:`panel-body projects-body`,children:u?(0,W.jsx)(co,{}):a?(0,W.jsx)(`div`,{className:`panel-empty panel-withheld`,"data-withheld-code":a.code,children:Lo(a,`ranking`)}):(0,W.jsx)(`div`,{className:`panel-empty`,children:`Projects data unavailable — restart the dashboard.`})})]});let h=r.slice(0,Wo),_=r.slice(Wo),v=_.reduce((e,t)=>e+t.cost,0),y=_.reduce((e,t)=>e+(t.pct??0),0),b=h[0]?.cost||1,x=[c,t===`all`?`by provider`:null].filter(e=>e!=null),S=t===`claude`||x.length===0?null:(0,W.jsx)(`div`,{className:`panel-range-note`,children:x.join(` · `)}),C=t!==`codex`&&g(e,`claude`)?(0,W.jsx)(`div`,{className:`panel-range-note projects-merged-note`,children:Uo}):null,w=()=>{P({type:`OPEN_MODAL`,kind:`projects`})},T=(e,n)=>{P(e===`claude`&&t===`claude`?{type:`OPEN_MODAL`,kind:`projects`,projectKey:n}:{type:`OPEN_SOURCE_DETAIL`,source:e,resource:`project`,key:n})},E=(e,t)=>n=>{n.stopPropagation(),T(e,t)},D=e=>{let n=`${B.usd2(e.cost)}, ${e.pct==null?`no ${l}`:`${B.pct0(e.pct)} ${l}`}`;return t===`claude`?`Open Projects modal for ${e.key}: ${n}`:`Open ${e.source} project details: ${e.label}: ${n}`};return(0,W.jsxs)(`section`,{className:`panel accent-magenta`,id:`panel-projects`,"data-panel-kind":`projects`,"data-source":t,role:`region`,"aria-label":`Projects panel`,onClick:Wn(w),children:[m,S,C,(0,W.jsx)(`div`,{className:`panel-body projects-body`,children:r.length===0?u?(0,W.jsx)(co,{}):(0,W.jsx)(`div`,{className:`panel-empty`,children:t===`claude`?`No project activity yet this week.`:c==null?`No project activity in this window.`:`No project activity in ${c}.`}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`projects-legend`,children:[`% = `,l]}),h.map(e=>{let n={"--w":`${e.cost/b*100}%`},r=(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`name`,children:t===`all`?`${e.source===`claude`?`Claude`:`Codex`} · ${e.label}`:e.label}),(0,W.jsx)(`div`,{className:`lb-bar`,style:n,"aria-hidden":`true`}),(0,W.jsx)(`span`,{className:`cost`,children:B.usd2(e.cost)}),(0,W.jsxs)(`span`,{className:`pct`,children:[(0,W.jsx)(`span`,{className:`pct-value`,children:e.pct==null?`—`:B.pct0(e.pct)}),(0,W.jsx)(`span`,{className:`sr-only`,children:e.pct==null?` no ${l}`:` ${l}`})]})]});return e.drillable?(0,W.jsx)(`div`,{className:`projects-row`,"data-project-key":e.key,"data-drillable":`true`,role:`button`,tabIndex:0,"aria-label":D(e),onClick:E(e.source,e.key),onKeyDown:t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),t.stopPropagation(),T(e.source,e.key))},title:e.label,children:r},e.key):(0,W.jsxs)(`div`,{className:`projects-row is-static`,"data-project-key":e.key,"data-drillable":`false`,title:`${e.label} — no detail view is available for this project in this range`,children:[r,(0,W.jsx)(`span`,{className:`projects-row-nodrill`,"data-nodrill-reason":!0,children:`no detail view for this range`})]},e.key)}),_.length>0&&(0,W.jsxs)(`div`,{className:`projects-row tail`,"aria-label":`${_.length} more projects`,children:[(0,W.jsxs)(`span`,{className:`name muted`,children:[`+`,_.length,` more`]}),(0,W.jsx)(`div`,{className:`lb-bar muted`,style:{"--w":`${v/b*100}%`},"aria-hidden":`true`}),(0,W.jsx)(`span`,{className:`cost muted`,children:B.usd2(v)}),(0,W.jsx)(`span`,{className:`pct muted`,children:y===0?`—`:B.pct0(y)})]})]})})]})}function Ko(e){let t=e.slice(0,2).map(e=>({model:e.model,display:e.display,pct:e.cost_pct,chip:e.chip}));return{items:t,more:Math.max(0,e.length-t.length)}}function qo({models:e}){let{items:t,more:n}=Ko(e);return t.length===0?null:(0,W.jsxs)(`div`,{className:`model-legend`,role:`presentation`,children:[t.map(e=>(0,W.jsxs)(`span`,{className:`ms-leg`,children:[(0,W.jsx)(`span`,{className:`ms-dot ${e.chip}`,style:oi(e.model),"aria-hidden":`true`}),e.display,` `,Math.round(e.pct),`%`]},e.model)),n>0&&(0,W.jsxs)(`span`,{className:`ms-leg ms-more`,children:[`+`,n]})]})}function Jo({tz:e}){return(0,W.jsxs)(`span`,{className:`instant-zone`,children:[`[`,e,`]`]})}function Yo(e){e.source===`claude`?P({type:`OPEN_MODAL`,kind:`block`,blockStartAt:e.start_at}):P({type:`OPEN_SOURCE_DETAIL`,source:e.source,resource:`block`,key:e.key})}function Xo({r:e,maxCost:t,isFirstMount:n,showSource:r,accountLabel:i,zone:a}){let o=t>0?e.value/t*100:0,s=()=>Yo(e);return(0,W.jsxs)(`div`,{className:`blocks-row`,role:`button`,tabIndex:0,"aria-label":i==null?`Open detail for block starting ${e.label} [${a}]`:`Open detail for ${i} block starting ${e.label} [${a}]`,onClick:s,onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),s())},children:[(0,W.jsxs)(`div`,{className:`meta`,children:[(0,W.jsxs)(`span`,{className:`label`,children:[r&&(0,W.jsx)(`span`,{className:`source-chip source-chip--${e.source}`,children:e.source===`claude`?`Claude`:`Codex`}),i!=null&&(0,W.jsx)(`span`,{className:`blocks-account-chip`,"data-testid":`block-account-chip`,title:`5-hour window owned by ${i}`,children:i}),e.anchor===`heuristic`&&(0,W.jsx)(`span`,{className:`anchor-marker`,"aria-label":`approximate start`,children:`~`}),e.label,` `,(0,W.jsx)(Jo,{tz:a}),e.is_active&&(0,W.jsx)(`span`,{className:`pill-active`,children:`Active`})]}),(0,W.jsx)(`span`,{className:`cost`,children:e.valueLabel})]}),(0,W.jsx)(`div`,{className:`gauge-track`,children:(0,W.jsx)(`div`,{className:`gauge-fill`,style:{width:n?`0%`:`${o}%`},children:e.models.map(e=>(0,W.jsx)(`span`,{className:`seg-${e.chip}`,style:{...oi(e.model),width:`${e.cost_pct}%`},title:`${e.display} ${B.usd2(e.cost_usd)} (${e.cost_pct.toFixed(0)}%)`},e.model))})}),(0,W.jsx)(qo,{models:e.models})]})}function Zo(){let e=En(),t=(0,U.useSyncExternalStore)(V,()=>L().activeSource),n=(0,U.useSyncExternalStore)(V,()=>L().prefs.blocksCollapsed),r=Vi(e,t),i=r,a=o(e,`codex`).entry,s=a?.data,c=s?.quota.histories.some(e=>e.window_minutes===300&&!e.model_scoped)??!1,l=On(t,Dn(t)),u=(t===`all`?f(a)!=null&&l.accountKey==null:l.scopesSupported&&l.accountKey==null)?new Map((s?.accounts??[]).map(e=>[e.accountKey,e.label])):null,p=e=>e.source===`codex`&&e.accountKey!=null&&u!=null?u.get(e.accountKey)??null:null,m=t===`codex`?`${c?`5h`:`optional 5h`} · current cycle`:t===`all`?`5h · current provider cycles`:`5h · current week`,h=r.length>0?Math.max(...r.map(e=>e.value),0):0,g=r.reduce((e,t)=>e+t.value,0),_=i.some(e=>e.anchor===`heuristic`),v=In(),y=t===`all`?Hi(r):null,b=t===`all`?No(Ui(r),{tz:v.resolvedTz,offsetLabel:v.offsetLabel},{clampEndTo:e?.generated_at}):null,x=(0,U.useRef)(new Set),[,S]=(0,U.useState)(0);return(0,U.useLayoutEffect)(()=>{let e=i.filter(e=>!x.current.has(e.start_at));if(e.length===0)return;e.forEach(e=>x.current.add(e.start_at));let t=requestAnimationFrame(()=>S(e=>e+1));return()=>cancelAnimationFrame(t)},[i]),(0,W.jsxs)(`section`,{className:`panel accent-blue`+(n?` blocks-collapsed`:``),id:`panel-blocks`,role:`region`,"aria-label":`Blocks panel`,"data-panel-kind":`blocks`,"data-source":t,children:[(0,W.jsxs)(`div`,{className:`panel-header`,style:{justifyContent:`space-between`},children:[(0,W.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:`10px`},children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#layers`})}),(0,W.jsx)(`h2`,{children:`Blocks`})]}),(0,W.jsxs)(`div`,{className:`panel-header-actions`,children:[(0,W.jsx)(Fr,{panel:`blocks`,panelLabel:`5-hour blocks`,triggerId:`blocks-panel`,onClick:()=>P(d(`blocks`,`blocks-panel`))}),(0,W.jsx)(Ir,{label:`Blocks`,onOpen:()=>{let e=r.find(e=>e.is_active)??r[0];e&&Yo(e)},disabled:r.length===0}),(0,W.jsx)(`button`,{type:`button`,className:`panel-collapse-toggle`,"aria-expanded":!n,"aria-controls":`panel-blocks-body`,"aria-label":n?`Expand Blocks`:`Collapse Blocks`,title:n?`Expand`:`Collapse`,onClick:e=>{e.stopPropagation(),P({type:`SAVE_PREFS`,patch:{blocksCollapsed:!n}})},children:(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#${n?`chevron-down`:`chevron-up`}`})})}),(0,W.jsx)(jr,{})]})]}),(0,W.jsx)(`div`,{className:`panel-range-note`,children:m}),(0,W.jsx)(`div`,{className:`panel-body`,id:`panel-blocks-body`,children:i.length===0?vi(e,t).hydrating?(0,W.jsx)(co,{}):(0,W.jsx)(`div`,{className:`panel-empty`,children:t===`codex`?c?`No 5-hour activity blocks in the current Codex cycle.`:`No native 5-hour window is currently reported; the 7-day Codex cycle remains available.`:t===`all`?c?`No 5-hour activity blocks in the current provider cycles.`:`No Claude 5-hour activity blocks; Codex is not currently reporting an optional 5-hour window.`:`No activity blocks this week yet.`}):i.map(e=>(0,W.jsx)(Xo,{r:e,maxCost:h,isFirstMount:!x.current.has(e.start_at),showSource:t===`all`,accountLabel:p(e),zone:v.resolvedTz},e.key))}),r.length>0&&(0,W.jsxs)(`div`,{className:`panel-foot`,children:[(0,W.jsxs)(`span`,{children:[r.length,` blocks`,(0,W.jsx)(`span`,{className:`sep`,"aria-hidden":`true`,children:` · `}),(0,W.jsx)(`span`,{className:`total`,children:B.usd2(g)}),_&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`sep`,"aria-hidden":`true`,children:` · `}),(0,W.jsx)(`span`,{className:`legend-anchor`,children:`~ = approximate start`})]})]}),y&&(0,W.jsxs)(`span`,{className:`blocks-foot-attribution`,children:[b&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`span`,{className:`blocks-foot-span`,children:[`windows shown span `,b]}),(0,W.jsx)(`span`,{className:`sep`,"aria-hidden":`true`,children:` · `})]}),y.map((e,t)=>(0,W.jsxs)(`span`,{className:`blocks-foot-leg`,children:[t>0&&(0,W.jsx)(`span`,{className:`sep`,"aria-hidden":`true`,children:` · `}),e.label,` `,e.count,` `,e.count===1?`block`:`blocks`,` `,B.usd2(e.cost)]},e.source))]})]})]})}function Qo(){let[e,t]=(0,U.useState)(()=>typeof window>`u`||!window.matchMedia?!1:window.matchMedia(jn).matches);return(0,U.useEffect)(()=>{if(typeof window>`u`||!window.matchMedia)return;let e=window.matchMedia(jn),n=e=>t(e.matches);return e.addEventListener(`change`,n),t(e.matches),()=>e.removeEventListener(`change`,n)},[]),e}var $o=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`];function es(e,t){let n=[];for(let r=0;r<e.length;r+=t)n.push(e.slice(r,r+t));return n}function ts(e){let t=e.split(`-`).map(Number);return`${$o[t[1]-1]} ${t[2]}`}function ns(e,t){let n=e.split(`-`).map(Number),r=t.split(`-`).map(Number),i=n[1],a=n[2],o=r[1],s=r[2];return i===o?`${$o[i-1]} ${a} - ${s}`:`${$o[i-1]} ${a} - ${$o[o-1]} ${s}`}function rs(e,t){return e<=0?`—`:t?`$${Math.ceil(e)}`:B.usd2(e)}function is({r:e,staggerIndex:t,compact:n}){let r=e.date.slice(8,10),i=rs(e.cost_usd,n),a=[`${e.label} · ${e.cost_usd>0?B.usd2(e.cost_usd):`—`}`,...e.models.map(e=>`${e.display} ${e.cost_pct.toFixed(0)}%`)].join(` · `);return(0,W.jsxs)(`button`,{type:`button`,"data-cell-date":e.date,className:`daily-cell h${e.intensity_bucket}${e.is_today?` is-today`:``} first-mount`,title:a,style:{"--daily-stagger":`${t*30}ms`},onClick:()=>P({type:`OPEN_MODAL`,kind:`daily`,dailyDate:e.date}),children:[(0,W.jsx)(`span`,{className:`d`,children:r}),(0,W.jsx)(`span`,{className:`c`,style:{"--c-len":i.length},children:i})]})}function as(){let e=En(),t=(0,U.useSyncExternalStore)(V,()=>L().activeSource),n=Pn(),r=Qo(),i=n||r,a=(0,U.useSyncExternalStore)(V,()=>L().prefs.dailyCollapsed),o=Oi(e,t),s=o.state===`available`?o.rows:[],c=o.state===`withheld`?o:null,l=es([...s].reverse(),7),u=t===`claude`?e?.daily?.total_cost_usd??0:s.reduce((e,t)=>e+t.cost_usd,0),f=t===`claude`?e?.daily?.peak??null:s.reduce((e,t)=>t.cost_usd<=0?e:e==null||t.cost_usd>e.cost_usd?t:e,null),p=vi(e,t).hydrating,m=on(vi(e,t).warnings,`daily`);return(0,W.jsxs)(`section`,{className:`panel accent-indigo`+(a?` daily-collapsed`:``),id:`panel-daily`,role:`region`,"aria-label":`Daily heatmap panel`,"data-panel-kind":`daily`,"data-source":t,children:[(0,W.jsxs)(`div`,{className:`panel-header`,style:{justifyContent:`space-between`},children:[(0,W.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:`10px`},children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#grid`})}),(0,W.jsxs)(`h2`,{children:[`Daily`,` `,(0,W.jsx)(`span`,{className:`sub`,children:`heatmap`})]}),m&&(0,W.jsx)(Ki,{gate:{mode:`degraded`,warning:m,noSuccessYet:!1}})]}),(0,W.jsxs)(`div`,{className:`panel-header-actions`,children:[(0,W.jsx)(Fr,{panel:`daily`,panelLabel:`Daily`,triggerId:`daily-panel`,onClick:()=>P(d(`daily`,`daily-panel`))}),(0,W.jsx)(Ir,{label:`Daily`,onOpen:()=>P({type:`OPEN_MODAL`,kind:`daily`})}),(0,W.jsx)(`button`,{type:`button`,className:`panel-collapse-toggle`,"aria-expanded":!a,"aria-controls":`panel-daily-body`,"aria-label":a?`Expand Daily`:`Collapse Daily`,title:a?`Expand`:`Collapse`,onClick:e=>{e.stopPropagation(),P({type:`SAVE_PREFS`,patch:{dailyCollapsed:!a}})},children:(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#${a?`chevron-down`:`chevron-up`}`})})}),(0,W.jsx)(jr,{})]})]}),(0,W.jsx)(`div`,{className:`panel-range-note`,children:c?`withheld`:`30 days${t===`all`?` · both providers`:``}`}),(0,W.jsx)(`div`,{className:`panel-body`,id:`panel-daily-body`,children:p&&s.length===0?(0,W.jsx)(co,{}):c?(0,W.jsx)(`div`,{className:`panel-empty panel-withheld`,"data-withheld-code":c.code,children:Lo(c,`history`)}):s.length===0?(0,W.jsx)(`div`,{className:`panel-empty`,children:`No usage history yet.`}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`daily-legend`,"aria-label":`Color intensity legend`,children:[(0,W.jsx)(`span`,{children:`Less`}),(0,W.jsxs)(`span`,{className:`scale`,children:[(0,W.jsx)(`span`,{className:`h0`}),(0,W.jsx)(`span`,{className:`h1`}),(0,W.jsx)(`span`,{className:`h2`}),(0,W.jsx)(`span`,{className:`h3`}),(0,W.jsx)(`span`,{className:`h4`}),(0,W.jsx)(`span`,{className:`h5`})]}),(0,W.jsx)(`span`,{children:`More`})]}),(0,W.jsx)(`div`,{className:`daily-cal-grid`,children:l.map((e,t)=>(0,W.jsxs)(U.Fragment,{children:[(0,W.jsxs)(`div`,{className:`daily-week-label`,children:[(0,W.jsxs)(`span`,{className:`wk`,children:[`W`,t+1]}),(0,W.jsx)(`span`,{className:`rng`,children:ns(e[0].date,e[e.length-1].date)})]}),e.map((e,n)=>(0,W.jsx)(is,{r:e,staggerIndex:t*7+n,compact:i},e.date)),e.length<7&&(0,W.jsx)(`div`,{className:`daily-month-continues`,style:{gridColumn:`span ${7-e.length}`},"aria-hidden":`true`,children:`Month continues`})]},t))}),(0,W.jsxs)(`div`,{className:`daily-foot`,children:[(0,W.jsxs)(`div`,{className:`daily-foot-col`,"data-total-cell":!0,children:[(0,W.jsx)(`svg`,{className:`daily-foot-icon icon-total`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#pie-chart`})}),(0,W.jsxs)(`div`,{className:`daily-foot-text`,children:[(0,W.jsxs)(`span`,{className:`lbl`,children:[`Total (`,s.length,` days)`]}),(0,W.jsx)(`span`,{className:`val`,children:B.usd2(u)})]})]}),f&&(0,W.jsxs)(`button`,{type:`button`,className:`daily-foot-col daily-foot-peak`,"data-peak-trigger":!0,title:`Click to open Daily modal at peak day`,onClick:()=>P({type:`OPEN_MODAL`,kind:`daily`,dailyDate:f.date}),children:[(0,W.jsx)(`svg`,{className:`daily-foot-icon icon-peak`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#trending-up`})}),(0,W.jsxs)(`div`,{className:`daily-foot-text`,children:[(0,W.jsx)(`span`,{className:`lbl`,children:`Peak day`}),(0,W.jsxs)(`span`,{className:`val`,children:[(0,W.jsx)(`span`,{className:`d`,children:ts(f.date)}),(0,W.jsx)(`span`,{className:`a`,children:B.usd2(f.cost_usd)})]})]})]})]})]})})]})}function os(e,t){if(t===`day`)return e.date;let n=e,r=t===`week`?n.week_start_at??n.label:n.label;return n.source==null?r:`${n.source}:${r}`}function ss(e,t,n){if(t==null)return null;let r=e.findIndex(e=>e.key===t);if(r<0)return null;let i=n===`older`?r+1:r-1;return i<0||i>=e.length?null:e[i].key}var cs=`(prefers-reduced-motion: reduce)`;function ls(){return(0,U.useSyncExternalStore)(e=>{if(typeof window>`u`||!window.matchMedia)return()=>{};let t=window.matchMedia(cs);return t.addEventListener(`change`,e),()=>t.removeEventListener(`change`,e)},()=>typeof window>`u`||!window.matchMedia?!1:window.matchMedia(cs).matches,()=>!1)}var us=(0,U.createContext)(`bento`);function ds(e,t){return t===`stack`?{visible:e.slice(0,3),hiddenCount:Math.max(0,e.length-3)}:{visible:e,hiddenCount:0}}function fs(e){return[`claude`,`codex`].map(t=>({source:t,label:t===`claude`?`Claude`:`Codex`,cost:e.filter(e=>e.source===t).reduce((e,t)=>e+t.cost_usd,0)}))}function ps(e){let t=null,n=null,r=``,i=``;for(let a of e){let e=a.week_start_at==null?NaN:Date.parse(a.week_start_at),o=a.week_end_at==null?NaN:Date.parse(a.week_end_at);!Number.isNaN(e)&&(t==null||e<t)&&(t=e,r=a.week_start_at),!Number.isNaN(o)&&(n==null||o>n)&&(n=o,i=a.week_end_at)}return t==null||n==null?null:{startAt:r,endAt:i}}function ms(e){let t=e.map(e=>e.label).filter(e=>typeof e==`string`&&e!==``).sort();if(t.length===0)return null;let n=t[0],r=t[t.length-1];return n===r?n:`${n} – ${r}`}function hs({r:e,isFirstMount:t,reduced:n}){let r=t&&!n,i=e.delta_cost_pct==null?`flat`:e.delta_cost_pct>0?`up`:e.delta_cost_pct<0?`down`:`flat`;return(0,W.jsxs)(`div`,{className:`period`,children:[(0,W.jsxs)(`div`,{className:`meta`,children:[(0,W.jsxs)(`span`,{className:`label`,children:[(0,W.jsx)(vo,{labels:e.account_labels}),e.label,e.is_current&&(0,W.jsx)(`span`,{className:`pill-current`,children:`Now`})]}),(0,W.jsxs)(`span`,{className:`right`,children:[(0,W.jsx)(`span`,{className:`cost`,children:B.usd2(e.cost_usd)}),(0,W.jsx)(`span`,{className:`delta ${i}`,children:B.deltaPct(e.delta_cost_pct)})]})]}),(0,W.jsx)(`div`,{className:`model-stack`,role:`presentation`,children:e.models.map(e=>(0,W.jsx)(`span`,{className:e.chip,style:{...oi(e.model),width:r?`0%`:`${e.cost_pct}%`},title:`${e.display} ${B.usd2(e.cost_usd)} (${e.cost_pct.toFixed(0)}%)`},e.model))}),(0,W.jsx)(qo,{models:e.models})]})}function gs(){let e=En(),t=(0,U.useSyncExternalStore)(V,()=>L().activeSource),n=Si(e,t,`weekly`),r=(0,U.useContext)(us),i=t===`all`?[`claude`,`codex`].map(e=>{let t=n.filter(t=>t.source===e);return{source:e,rows:t,...ds(t,r)}}):null,a=ds(n,r),o=i?.flatMap(e=>e.visible)??a.visible,s=i?.reduce((e,t)=>e+t.hiddenCount,0)??a.hiddenCount,c=n.reduce((e,t)=>e+t.cost_usd,0),l=t===`claude`?`weeks`:t===`codex`?`cycles`:`provider periods`,u=t===`claude`?`${n.length}w`:`${n.length} ${l}`,f=vi(e,t).hydrating,p=ls(),m=In(),h=t===`all`?fs(n):null,g=t===`all`?No(ps(n),{tz:m.resolvedTz,offsetLabel:m.offsetLabel},{clampEndTo:e?.generated_at}):null,_=(0,U.useRef)(new Set),[,v]=(0,U.useState)(0);return(0,U.useLayoutEffect)(()=>{let e=o.filter(e=>!_.current.has(os(e,`week`)));if(e.length===0)return;e.forEach(e=>_.current.add(os(e,`week`)));let t=requestAnimationFrame(()=>v(e=>e+1));return()=>cancelAnimationFrame(t)},[o]),(0,W.jsxs)(`section`,{className:`panel accent-cyan`,id:`panel-weekly`,role:`region`,"aria-label":`Weekly usage panel`,"data-panel-kind":`weekly`,"data-source":t,onClick:Wn(()=>P({type:`OPEN_MODAL`,kind:`weekly`})),children:[(0,W.jsxs)(`div`,{className:`panel-header`,children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#bar-chart`})}),(0,W.jsxs)(`h2`,{children:[`Weekly`,` `,(0,W.jsx)(`span`,{className:`sub`,children:`(model split)`})]}),(0,W.jsxs)(`div`,{className:`panel-header-actions`,children:[(0,W.jsx)(Fr,{panel:`weekly`,panelLabel:`Weekly`,triggerId:`weekly-panel`,onClick:()=>P(d(`weekly`,`weekly-panel`))}),(0,W.jsx)(Ir,{label:`Weekly`,onOpen:()=>P({type:`OPEN_MODAL`,kind:`weekly`})}),(0,W.jsx)(jr,{})]})]}),t===`all`&&(0,W.jsx)(`div`,{className:`panel-range-note`,children:`by provider`}),(0,W.jsx)(`div`,{className:`panel-body`,children:n.length===0?f?(0,W.jsx)(co,{}):(0,W.jsx)(`div`,{className:`panel-empty`,children:`No usage history yet.`}):i?(0,W.jsx)(`div`,{className:`source-all-sections provider-composition provider-composition--panel`,children:i.map(e=>(0,W.jsxs)(`section`,{className:`provider-summary-card source-provider-section weekly-provider-section`,"data-provider-section":e.source,"aria-labelledby":`weekly-panel-${e.source}-heading`,children:[(0,W.jsxs)(`div`,{className:`source-provider-head provider-composition-head`,children:[(0,W.jsxs)(`h3`,{className:`sr-only`,id:`weekly-panel-${e.source}-heading`,children:[e.source===`claude`?`Claude`:`Codex`,` weekly quota history`]}),(0,W.jsx)(`span`,{className:`source-chip source-chip--${e.source}`,children:e.source===`claude`?`Claude`:`Codex`}),(0,W.jsxs)(`span`,{className:`provider-summary-label`,children:[e.rows.length,` `,e.source===`claude`?`weeks`:`cycles`]})]}),e.visible.length===0?(0,W.jsx)(`div`,{className:`panel-source-empty`,children:`No quota history yet.`}):e.visible.map(e=>(0,W.jsx)(hs,{r:e,isFirstMount:!_.current.has(os(e,`week`)),reduced:p},os(e,`week`)))]},e.source))}):o.map(e=>(0,W.jsx)(hs,{r:e,isFirstMount:!_.current.has(os(e,`week`)),reduced:p},os(e,`week`)))}),n.length>0&&(0,W.jsxs)(`div`,{className:`panel-foot period-foot`,children:[s>0?(0,W.jsxs)(`span`,{children:[(0,W.jsxs)(`button`,{type:`button`,className:`period-foot-more`,"aria-label":`Show all ${n.length} ${l}`,onClick:e=>{e.stopPropagation(),P({type:`OPEN_MODAL`,kind:`weekly`})},onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&e.stopPropagation()},children:[`+`,s,` more`]}),(0,W.jsx)(`span`,{className:`sep`,"aria-hidden":`true`,children:` · `}),(0,W.jsx)(`span`,{className:`total`,children:B.usd2(c)})]}):(0,W.jsxs)(`span`,{children:[u,` total`,(0,W.jsx)(`span`,{className:`sep`,"aria-hidden":`true`,children:` · `}),(0,W.jsxs)(`span`,{className:`total`,children:[B.usd2(c),t===`all`?` combined cost`:``]})]}),h&&(0,W.jsxs)(`span`,{className:`period-foot-attribution`,children:[g&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`period-foot-span`,children:g}),(0,W.jsx)(`span`,{className:`sep`,"aria-hidden":`true`,children:` · `})]}),h.map((e,t)=>(0,W.jsxs)(`span`,{className:`period-foot-leg`,children:[t>0&&(0,W.jsx)(`span`,{className:`sep`,"aria-hidden":`true`,children:` · `}),e.label,` `,B.usd2(e.cost)]},e.source))]})]})]})}function _s({r:e,isFirstMount:t,reduced:n}){let r=t&&!n,i=e.delta_cost_pct==null?`flat`:e.delta_cost_pct>0?`up`:e.delta_cost_pct<0?`down`:`flat`;return(0,W.jsxs)(`div`,{className:`period`,children:[(0,W.jsxs)(`div`,{className:`meta`,children:[(0,W.jsxs)(`span`,{className:`label`,children:[e.label,e.is_current&&(0,W.jsx)(`span`,{className:`pill-current`,children:`Now`})]}),(0,W.jsxs)(`span`,{className:`right`,children:[(0,W.jsx)(`span`,{className:`cost`,children:B.usd2(e.cost_usd)}),(0,W.jsx)(`span`,{className:`delta ${i}`,children:B.deltaPct(e.delta_cost_pct)})]})]}),(0,W.jsx)(`div`,{className:`model-stack`,role:`presentation`,children:e.models.map(e=>(0,W.jsx)(`span`,{className:e.chip,style:{...oi(e.model),width:r?`0%`:`${e.cost_pct}%`},title:`${e.display} ${B.usd2(e.cost_usd)} (${e.cost_pct.toFixed(0)}%)`},e.model))}),(0,W.jsx)(qo,{models:e.models})]})}function vs(){let e=En(),t=(0,U.useSyncExternalStore)(V,()=>L().activeSource),n=Si(e,t,`monthly`),r=(0,U.useContext)(us),i=t===`all`?[`claude`,`codex`].map(e=>{let t=n.filter(t=>t.source===e);return{source:e,rows:t,...ds(t,r)}}):null,a=ds(n,r),o=i?.flatMap(e=>e.visible)??a.visible,s=i?.reduce((e,t)=>e+t.hiddenCount,0)??a.hiddenCount,c=n.reduce((e,t)=>e+t.cost_usd,0),l=vi(e,t).hydrating,u=ls(),f=t===`all`?fs(n):null,p=t===`all`?ms(n):null,m=t===`all`?`${n.length} provider ${n.length===1?`month`:`months`}`:`${n.length}mo`,h=(0,U.useRef)(new Set),[,g]=(0,U.useState)(0);return(0,U.useLayoutEffect)(()=>{let e=o.filter(e=>!h.current.has(os(e,`month`)));if(e.length===0)return;e.forEach(e=>h.current.add(os(e,`month`)));let t=requestAnimationFrame(()=>g(e=>e+1));return()=>cancelAnimationFrame(t)},[o]),(0,W.jsxs)(`section`,{className:`panel accent-pink`,id:`panel-monthly`,role:`region`,"aria-label":`Monthly usage panel`,"data-panel-kind":`monthly`,"data-source":t,onClick:Wn(()=>P({type:`OPEN_MODAL`,kind:`monthly`})),children:[(0,W.jsxs)(`div`,{className:`panel-header`,children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#calendar`})}),(0,W.jsxs)(`h2`,{children:[`Monthly`,` `,(0,W.jsx)(`span`,{className:`sub`,children:`(model split)`})]}),(0,W.jsxs)(`div`,{className:`panel-header-actions`,children:[(0,W.jsx)(Fr,{panel:`monthly`,panelLabel:`Monthly`,triggerId:`monthly-panel`,onClick:()=>P(d(`monthly`,`monthly-panel`))}),(0,W.jsx)(Ir,{label:`Monthly`,onOpen:()=>P({type:`OPEN_MODAL`,kind:`monthly`})}),(0,W.jsx)(jr,{})]})]}),t===`all`&&(0,W.jsx)(`div`,{className:`panel-range-note`,children:`by provider`}),(0,W.jsx)(`div`,{className:`panel-body`,children:n.length===0?l?(0,W.jsx)(co,{}):(0,W.jsx)(`div`,{className:`panel-empty`,children:`No usage history yet.`}):i?(0,W.jsx)(`div`,{className:`source-all-sections provider-composition provider-composition--panel`,children:i.map(e=>(0,W.jsxs)(`section`,{className:`provider-summary-card source-provider-section monthly-provider-section`,"data-provider-section":e.source,"aria-labelledby":`monthly-panel-${e.source}-heading`,children:[(0,W.jsxs)(`div`,{className:`source-provider-head provider-composition-head`,children:[(0,W.jsxs)(`h3`,{className:`sr-only`,id:`monthly-panel-${e.source}-heading`,children:[e.source===`claude`?`Claude`:`Codex`,` monthly history`]}),(0,W.jsx)(`span`,{className:`source-chip source-chip--${e.source}`,children:e.source===`claude`?`Claude`:`Codex`}),(0,W.jsxs)(`span`,{className:`provider-summary-label`,children:[e.rows.length,` `,e.rows.length===1?`month`:`months`]})]}),e.visible.length===0?(0,W.jsx)(`div`,{className:`panel-source-empty`,children:`No monthly history yet.`}):e.visible.map(e=>(0,W.jsx)(_s,{r:e,isFirstMount:!h.current.has(os(e,`month`)),reduced:u},os(e,`month`)))]},e.source))}):o.map(e=>(0,W.jsx)(_s,{r:e,isFirstMount:!h.current.has(os(e,`month`)),reduced:u},os(e,`month`)))}),n.length>0&&(0,W.jsxs)(`div`,{className:`panel-foot period-foot`,children:[s>0?(0,W.jsxs)(`span`,{children:[(0,W.jsxs)(`button`,{type:`button`,className:`period-foot-more`,"aria-label":`Show all ${n.length} months`,onClick:e=>{e.stopPropagation(),P({type:`OPEN_MODAL`,kind:`monthly`})},onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&e.stopPropagation()},children:[`+`,s,` more`]}),(0,W.jsx)(`span`,{className:`sep`,"aria-hidden":`true`,children:` · `}),(0,W.jsx)(`span`,{className:`total`,children:B.usd2(c)})]}):(0,W.jsxs)(`span`,{children:[m,` total`,(0,W.jsx)(`span`,{className:`sep`,"aria-hidden":`true`,children:` · `}),(0,W.jsxs)(`span`,{className:`total`,children:[B.usd2(c),t===`all`?` combined cost`:``]})]}),f&&(0,W.jsxs)(`span`,{className:`period-foot-attribution`,children:[p&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`period-foot-span`,children:p}),(0,W.jsx)(`span`,{className:`sep`,"aria-hidden":`true`,children:` · `})]}),f.map((e,t)=>(0,W.jsxs)(`span`,{className:`period-foot-leg`,children:[t>0&&(0,W.jsx)(`span`,{className:`sep`,"aria-hidden":`true`,children:` · `}),e.label,` `,B.usd2(e.cost)]},e.source))]})]})]})}function ys({usedPct:e,thresholds:t,compact:n=!1,source:r=`claude`}){let i=t.map(e=>`${e}%`).join(` / `),a=Math.min(...t),o=Math.max(...t),s=e==null?0:Math.max(0,Math.min(e,100)),c=r===`codex`?`No Codex alerts yet`:r===`all`?`No alerts yet across Claude and Codex`:e!=null&&e<a?`You're at ${Math.round(e)}% — well under the line`:`No alerts yet`,l=r===`codex`?`Codex quota alerts fire when native usage crosses ${i}.`:r===`all`?`Provider-native alerts appear at their configured ${i} thresholds.`:`Alerts fire when weekly usage crosses ${i}.`;return(0,W.jsxs)(`div`,{className:`ra-gauge`+(n?` ra-gauge--compact`:``),children:[(0,W.jsxs)(`div`,{className:`ra-gauge-head`,children:[(0,W.jsx)(`span`,{className:`ra-gauge-check`,"aria-hidden":`true`,children:`✓`}),c]}),(0,W.jsx)(`div`,{className:`ra-gauge-hero`,children:e==null?`—`:`${Math.round(e)}%`}),(0,W.jsxs)(`div`,{className:`ra-gauge-bar`,children:[(0,W.jsx)(`div`,{className:`ra-gauge-fill`,style:{width:`${s}%`}}),t.map((e,t)=>(0,W.jsx)(`span`,{className:`ra-gauge-tick `+(e===a?`tick-amber`:e===o?`tick-red`:`tick-mid`),"data-th":String(e),style:{left:`${e}%`}},`${e}-${t}`))]}),(0,W.jsx)(`div`,{className:`ra-gauge-copy`,children:l})]})}function bs(){let e=En(),t=(0,U.useSyncExternalStore)(V,()=>L().activeSource),n=(0,U.useSyncExternalStore)(V,()=>L().alerts),r=(0,U.useSyncExternalStore)(V,()=>L().prefs.alertsCollapsed),i=e?.sources!=null,s=o(e??null,t),c=On(t,Dn(t)),u=c.accountKey!=null,d=a(s,n.map(e=>({...e,source:`claude`,key:e.id})),i),f=(0,U.useSyncExternalStore)(V,()=>L().accountFocus),p={claude:b(e,t,`claude`,f),codex:b(e,t,`codex`,f)},m=d.some(e=>ke(e)!=null),h=[`claude`,`codex`].filter(e=>p[e]!=null),g=h.length>0&&(m||u),_=h.length>0&&!m&&!u,v=w(d,p),y=h.map(t=>(e?.sources?.[t]?.data?.accounts??[]).find(e=>e.accountKey===p[t])??null).filter(e=>e!=null),x=c.card??y[0]??null,S=h.length===1?h[0]:null,C=t===`all`&&S!=null,T=S===`codex`?`Codex`:`Claude`,E=S===`codex`?`Claude`:`Codex`,D=h.length>1?`focused accounts`:`${C?`${T}: `:``}${l(x?.label??`focused account`)}`,ee=(0,U.useSyncExternalStore)(V,()=>L().alertsConfig),O=e?.sources?.codex?.data?.quota.summary,k=ee.weekly_thresholds?.length?ee.weekly_thresholds:[90,95],A=e?.sources?.codex?.data?.alerts.actual_thresholds?.length?e.sources.codex.data.alerts.actual_thresholds:[90,95],j=t===`claude`?e?.header?.used_pct??null:t===`codex`?c.scopesSupported&&c.accountKey==null?null:O?.latest_percent??null:null,M=t===`claude`?k:t===`codex`?A:[...new Set([...k,...A])].sort((e,t)=>e-t),N=In(),te={tz:N.resolvedTz,offsetLabel:N.offsetLabel},F=v.slice(0,10),re=v.length,I=()=>{Js.alerts.openAction()};return(0,W.jsxs)(`section`,{className:`panel accent-amber`+(r?` alerts-collapsed`:``),id:`panel-alerts`,role:`region`,"aria-label":`Recent alerts panel`,"data-panel-kind":`alerts`,onClick:Wn(I),children:[(0,W.jsxs)(`div`,{className:`panel-header`,style:{justifyContent:`space-between`},children:[(0,W.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:`10px`},children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#bell`})}),(0,W.jsxs)(`h2`,{children:[`Recent alerts `,(0,W.jsx)(`span`,{className:`sub`,children:`(last 10)`})]}),g&&(0,W.jsxs)(`span`,{className:`alerts-account-note`,"data-testid":`alerts-account-note`,title:h.length>1?`Showing only the focused accounts’ alerts, plus vendor-wide crossings.`:C?`Showing only ${x?.label??`this account`}'s ${T} alerts, plus vendor-wide crossings. ${E} alerts are not filtered by account.`:`Showing only ${x?.label??`this account`}'s alerts, plus vendor-wide crossings.`,children:[D,` only`]}),_&&(0,W.jsx)(`span`,{className:`alerts-unfiltered-note`,"data-testid":`alerts-unfiltered-note`,title:S==null?`These alerts are not filtered by account (showing all accounts).`:`${T} alerts are not filtered by account (showing all accounts).`,children:`all accounts (unfiltered)`})]}),(0,W.jsxs)(`div`,{className:`panel-header-actions`,children:[(0,W.jsx)(Ir,{label:`Recent alerts`,onOpen:I}),(0,W.jsx)(`button`,{type:`button`,className:`panel-collapse-toggle`,"aria-expanded":!r,"aria-controls":`panel-alerts-body`,"aria-label":r?`Expand Recent alerts`:`Collapse Recent alerts`,title:r?`Expand`:`Collapse`,onClick:e=>{e.stopPropagation(),P({type:`SAVE_PREFS`,patch:{alertsCollapsed:!r}})},children:(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#${r?`chevron-down`:`chevron-up`}`})})}),(0,W.jsx)(jr,{})]})]}),t===`all`&&(0,W.jsx)(`div`,{className:`panel-range-note`,children:`Both providers, newest first`}),(0,W.jsx)(`div`,{className:`panel-body`,id:`panel-alerts-body`,children:F.length===0?(0,W.jsx)(ys,{source:t,usedPct:j,thresholds:M,compact:!0}):(0,W.jsx)(`ul`,{className:`alerts-list`,children:F.map(e=>{let n=ne(e),r=ke(e),i=B.startedShortOrNull(n.whenIso,te),a=B.relativeOrAbsolute(n.whenIso??``,te);return(0,W.jsxs)(`li`,{className:`alert-row`,children:[(0,W.jsxs)(`span`,{className:`alert-threshold severity-${n.severity} ${n.severity}`,children:[n.threshold,`%`]}),(0,W.jsx)(`span`,{className:`chip ${n.chipClass}`,children:n.chipLabel}),t===`all`&&(0,W.jsx)(`span`,{className:`source-chip source-chip--${n.source}`,children:n.sourceLabel}),r!=null&&(0,W.jsx)(`span`,{className:`alert-account-chip`,"data-testid":r.key===`*`?`alert-vendor-wide`:`alert-account-chip`,title:r.key===`*`?`A vendor-wide crossing — not attributable to one account.`:r.label,children:r.label}),(0,W.jsxs)(`span`,{className:`alert-when`,title:i??void 0,children:[a,a===`—`?null:(0,W.jsxs)(W.Fragment,{children:[` `,(0,W.jsx)(Jo,{tz:te.tz})]})]})]},Ee(e))})})}),re>0&&(0,W.jsxs)(`div`,{className:`panel-foot alerts-foot`,children:[F.length,` of `,re,` shown`]})]})}function xs(e){let t=e.length,n=e.filter(e=>e.observed!==!1).length,r=`${t} ${t===1?`day`:`days`}`;return n===t?r:`${r}, ${n} measured`}function Ss(e,t=`claude`){return t===`codex`?e.cached_input_percent??null:e.cache_hit_percent??null}function Cs(e,t=`claude`){let n=Ss(e,t);return n===null?null:`${B.pctFloor(n)}%`}function ws(e,t){return e.not_applicable?.[t]??null}var Ts=Object.freeze({percentLabel:`Cache hit`,percentLabelInline:`cache hit`,percentColumnHeader:`Cache %`,timelineHeading:`Cache hit %`,sparklineLabel:`Cache hit % timeline`,netBarsHeading:`Net $ per day · saved (green) − wasted (red)`,netBarsCaption:`positive bars = caching helped`,counterfactualLead:`Without caching, you'd have paid`,efficiencyLabel:`cache efficiency`,reasonLabel:e=>e,thresholdLegend:e=>`${e}pp drop, net < 0`}),Es=Object.freeze({percentLabel:`Cached input`,percentLabelInline:`cached input`,percentColumnHeader:`Reuse %`,timelineHeading:`Cached input %`,sparklineLabel:`Cached input % timeline`,netBarsHeading:`Net $ per day · reuse savings (green)`,netBarsCaption:`bars = input reuse savings`,counterfactualLead:`Without input reuse, you'd have paid`,efficiencyLabel:`reuse efficiency`,reasonLabel:e=>e===`cache_drop`?`reuse drop`:e,thresholdLegend:e=>`${e}pp reuse drop`});function Ds(e){return e===`codex`?Es:Ts}function Os(e,t,n,r={}){let i=r.minSpan??12,a=r.pad??1;if(e.length===0)return{lo:0,hi:100};let o=[...e];t!=null&&Number.isFinite(t)&&o.push(t-n,t+n);let s=Math.min(...o)-a,c=Math.max(...o)+a;if(c-s<i){let e=(s+c)/2;s=e-i/2,c=e+i/2}return s=Math.max(0,s),c=Math.min(100,c),c-s<i&&(c>=100?s=Math.max(0,100-i):c=Math.min(100,s+i)),{lo:s,hi:c}}var ks={mini:{chartWidth:272,padX:0,gap:1},large:{chartWidth:800,padX:28,gap:4}};function As(e,t,n){if(!Number.isInteger(n)||n<1)throw RangeError(`cache report chart count must be a positive integer`);if(!Number.isInteger(t)||t<0||t>=n)throw RangeError(`cache report chart index must address an existing slot`);let{chartWidth:r,padX:i,gap:a}=ks[e],o=(r-2*i-a*(n-1))/n,s=i+t*(o+a);return{chartWidth:r,left:s,center:s+o/2,right:s+o,width:o}}var js={mini:{width:272,height:32,padTop:4,padBot:4},large:{width:800,height:90,padTop:6,padBot:6}},Ms=1;function Ns({days:e,baseline_median_percent:t,today_marker_color:n,size:r,source:i}){let a=i??`claude`,o=Ds(a),s=js[r],c=r===`large`,l=[...e].reverse(),u=l.map((e,t)=>({d:e,i:t,pct:Ss(e,a)})).filter(({d:e,pct:t})=>e.observed!==!1&&t!==null),d=c?Os(u.map(({pct:e})=>e),t,5):{lo:0,hi:100},f=c?{width:`100%`}:{width:`100%`,height:s.height,preserveAspectRatio:`none`};if(l.length===0){let e=(0,W.jsx)(`svg`,{className:`cr-spark`,...f,viewBox:`0 0 ${s.width} ${s.height}`,"aria-label":`no data`});return c?(0,W.jsxs)(`div`,{className:`cr-spark-wrap`,children:[(0,W.jsxs)(`span`,{className:`cr-spark-axis cr-spark-axis-top`,children:[Math.round(d.hi),`%`]}),e,(0,W.jsxs)(`span`,{className:`cr-spark-axis cr-spark-axis-bot`,children:[Math.round(d.lo),`%`]})]}):e}let p=e=>{let t=d.hi-d.lo||1,n=(Math.max(d.lo,Math.min(d.hi,e))-d.lo)/t;return s.padTop+(1-n)*(s.height-s.padTop-s.padBot)},m=e=>As(r,e,l.length).center,h=u.map(({i:e,pct:t})=>`${m(e).toFixed(1)},${p(t).toFixed(1)}`).join(` `),g=l.length-1,_=l[g],v=Ss(_,a),y=_.observed!==!1,b=y&&v!==null,x=m(g),S=x,C=(0,W.jsxs)(`svg`,{className:`cr-spark`,...f,viewBox:`0 0 ${s.width} ${s.height}`,"aria-label":`${o.sparklineLabel}, ${xs(l)}`,children:[c&&[{k:`hi`,pct:d.hi,bound:!0},{k:`mid`,pct:(d.lo+d.hi)/2,bound:!1},{k:`lo`,pct:d.lo,bound:!0}].map(({k:e,pct:t,bound:n})=>(0,W.jsx)(`line`,{x1:0,x2:s.width,y1:p(t),y2:p(t),stroke:n?`rgba(255,255,255,0.45)`:`rgba(255,255,255,0.18)`,strokeWidth:n?1:.5,strokeDasharray:n?void 0:`4,3`,opacity:1,"data-testid":`cr-spark-gridline-${e}`},`grid-${e}`)),t!==null&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`rect`,{x:0,y:p(t+5),width:s.width,height:p(t-5)-p(t+5),fill:`var(--accent-cyan)`,opacity:.1}),(0,W.jsx)(`line`,{x1:0,x2:s.width,y1:p(t),y2:p(t),stroke:`var(--accent-cyan)`,strokeWidth:.5,strokeDasharray:`3,3`,opacity:.6})]}),(0,W.jsx)(`polyline`,{points:h,fill:`none`,stroke:`var(--accent-cyan)`,strokeWidth:c?2:1.5}),b?(0,W.jsx)(`circle`,{cx:x,cy:p(v),r:c?5:3.5,fill:n,"data-testid":`cr-spark-today-marker`}):(0,W.jsx)(`line`,{x1:S,x2:S,y1:s.padTop,y2:s.height-s.padBot,stroke:`var(--text-dim)`,strokeWidth:Ms,strokeDasharray:`3,3`,"data-testid":`cr-spark-today-unobserved`,children:(0,W.jsx)(`title`,{children:y?`No cache percentage published for today`:`No activity today`})})]});return c?(0,W.jsxs)(`div`,{className:`cr-spark-wrap`,children:[(0,W.jsxs)(`span`,{className:`cr-spark-axis cr-spark-axis-top`,children:[Math.round(d.hi),`%`]}),C,(0,W.jsxs)(`span`,{className:`cr-spark-axis cr-spark-axis-bot`,children:[Math.round(d.lo),`%`]})]}):C}var Ps={mini:{width:272,height:28,padX:0,padTop:2,padBot:2,barGap:1},large:{width:800,height:110,padX:28,padTop:28,padBot:28,barGap:4}};function Fs({days:e,size:t,source:n}){let r=Ds(n??`claude`),i=Ps[t],a=t===`large`,o=[...e].reverse(),s=e=>e.wasted_usd??0;if(o.length===0)return a?(0,W.jsxs)(`div`,{className:`crm-section`,children:[(0,W.jsxs)(`div`,{className:`crm-section-head crm-sh-net`,children:[`Net $ per day`,(0,W.jsx)(`span`,{className:`meta`,children:`no data`})]}),(0,W.jsx)(`div`,{className:`crm-chart-frame netbars`,children:(0,W.jsx)(`div`,{style:{color:`var(--text-dim)`,fontSize:11,padding:`8px 4px`},children:`No daily activity to render.`})})]}):(0,W.jsx)(`svg`,{className:`cr-netbars-mini`,width:`100%`,height:`100%`,viewBox:`0 0 ${i.width} ${i.height}`,preserveAspectRatio:`none`,"aria-label":`no data`});if(a){let e=Math.max(1e-9,...o.map(e=>Math.max(e.saved_usd+s(e),Math.abs(e.net_usd)))),n=(i.height-i.padTop-i.padBot)/2/e,a=i.padTop+(i.height-i.padTop-i.padBot)/2,c=e=>As(t,e,o.length);return(0,W.jsxs)(`div`,{className:`crm-section`,children:[(0,W.jsxs)(`div`,{className:`crm-section-head crm-sh-net`,children:[r.netBarsHeading,(0,W.jsx)(`span`,{className:`meta`,children:r.netBarsCaption})]}),(0,W.jsx)(`div`,{className:`crm-chart-frame netbars`,children:(0,W.jsxs)(`svg`,{viewBox:`0 0 ${i.width} ${i.height}`,width:`100%`,height:i.height,"aria-label":`Per-day net dollar chart, ${xs(o)}`,children:[(0,W.jsx)(`line`,{x1:i.padX,x2:i.width-i.padX,y1:a,y2:a,stroke:`var(--border-soft)`,strokeWidth:1}),o.map((e,t)=>({d:e,i:t})).filter(({d:e})=>e.observed!==!1).map(({d:e,i:t})=>{let{left:r,width:i}=c(t);if(e.net_usd>=0){let t=e.saved_usd*n,o=s(e)*n;return(0,W.jsxs)(`g`,{"data-testid":`crm-netbar`,"data-date":e.date,"data-sign":`pos`,children:[(0,W.jsx)(`rect`,{x:r,y:a-t,width:i,height:t,fill:`var(--accent-green)`,rx:2}),o>0&&(0,W.jsx)(`rect`,{x:r,y:a-t-o,width:i,height:o,fill:`var(--accent-red)`,opacity:.75,rx:2})]},e.date)}let o=Math.abs(e.net_usd)*n;return(0,W.jsx)(`rect`,{"data-testid":`crm-netbar`,"data-date":e.date,"data-sign":`neg`,x:r,y:a,width:i,height:o,fill:`var(--accent-amber)`,rx:2},e.date)}),o.map((e,t)=>{let n=c(t).center,r=t===o.length-1?`Today`:B.calDate(e.date);return(0,W.jsx)(`text`,{x:n,y:i.height-6,fill:`var(--text-dim)`,fontSize:9,textAnchor:`middle`,children:r},`l-${e.date}`)})]})})]})}let c=i.height-i.padTop-i.padBot,l=Math.max(1e-9,...o.map(e=>Math.abs(e.net_usd))),u=e=>As(t,e,o.length);return(0,W.jsx)(`svg`,{className:`cr-netbars-mini`,width:`100%`,height:`100%`,viewBox:`0 0 ${i.width} ${i.height}`,preserveAspectRatio:`none`,"aria-label":`Net dollar bars, ${xs(o)}`,children:o.map((e,t)=>({d:e,i:t})).filter(({d:e})=>e.observed!==!1).map(({d:e,i:t})=>{let{left:n,width:r}=u(t),a=Math.max(1,Math.abs(e.net_usd)/l*c),o=i.height-i.padBot-a,s=e.net_usd>=0?`var(--accent-green)`:`var(--accent-amber)`;return(0,W.jsx)(`rect`,{"data-testid":`crm-netbar-mini`,"data-date":e.date,"data-sign":e.net_usd>=0?`pos`:`neg`,x:n,y:o,width:r,height:a,fill:s,rx:1},e.date)})})}var Is=[`net_negative`,`cache_drop`];function Ls(e,t=Is){let n=e.anomaly_unevaluated??[],r=e.observed!==!1,i;return i=e.anomaly_triggered?`anomalous`:n.length===0?`clean`:n.length>=t.length?`unevaluated`:`partial`,{state:i,triggered:e.anomaly_triggered,unevaluated:n,observed:r}}function Rs(e){return e===`anomalous`?`⚠`:e===`clean`?`✓`:`·`}function zs(e){return e===`anomalous`?`flag-warn`:e===`clean`?`flag-ok`:`flag-none`}function Bs(e,t,n=!0,r=e=>e){return e===`anomalous`?`anomaly`:e===`clean`?`evaluated, no anomaly`:n?`not evaluated — ${t.map(r).join(` and `)} could not be evaluated for this day`:`no activity — nothing measured to evaluate`}function Vs(e){return e.anomaly_predicates??Is}function Hs(e){let t=e.today.baseline_daily_row_count<5,n=e.today.anomaly_triggered&&!t,r=Ls(e.today,Vs(e));return{insufficient:t,chromeAmber:n,todayObserved:r.observed,today:r}}var Us=`var(--accent-teal)`,Ws=`var(--accent-amber)`,Gs=`var(--accent-green)`;function Ks({section:e}){let t=e.value,n=Ds(e.source),r=t?.days.reduce((e,t)=>e+t.net_usd,0)??0,i=t==null?null:Hs(t);return(0,W.jsxs)(`div`,{className:`source-provider-section provider-summary-card cache-provider-summary`,"data-provider-section":e.source,role:`region`,"aria-labelledby":`cache-report-panel-${e.source}-heading`,children:[(0,W.jsxs)(`div`,{className:`source-provider-head`,children:[(0,W.jsxs)(`h3`,{className:`sr-only`,id:`cache-report-panel-${e.source}-heading`,children:[e.label,` cache report`]}),(0,W.jsx)(Gi,{source:e.source}),e.status!==`available`&&(0,W.jsx)(`span`,{className:`provider-section-status`,children:e.status})]}),t==null?(0,W.jsx)(`div`,{className:`provider-section-reason`,children:e.reason}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`provider-summary-kpis`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`span`,{className:`provider-summary-label`,children:n.percentLabel}),(0,W.jsx)(`strong`,{className:`provider-summary-value`,children:i.todayObserved?Cs(t.today,e.source)??`—`:`—`})]}),(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`span`,{className:`provider-summary-label`,children:[t.window_days,`d net`]}),(0,W.jsx)(`strong`,{className:r<0?`provider-summary-value warn`:`provider-summary-value ok`,children:B.usdSigned(r)})]})]}),(0,W.jsxs)(`div`,{className:`provider-summary-foot`,children:[(0,W.jsx)(`span`,{children:i.insufficient?`~ Building baseline · ${t.today.baseline_daily_row_count}/5`:i.chromeAmber?`⚠ anomaly`:i.todayObserved?`✓ healthy`:`· no activity today`}),(0,W.jsxs)(`span`,{children:[t.window_days,`d native report`]})]}),e.reason&&(0,W.jsx)(`div`,{className:`provider-section-reason`,children:e.reason})]})]})}function qs(){let e=En(),t=(0,U.useSyncExternalStore)(V,()=>L().activeSource),n=Pn(),r=On(t,Dn(t)),i=n?` cache-report-collapsed`:``,a=()=>{P({type:`OPEN_MODAL`,kind:`cache-report`})},o=Wi(e,t);if(t===`all`)return(0,W.jsxs)(`section`,{className:`panel accent-teal${i}`,id:`panel-cache-report`,"data-panel-kind":`cache-report`,"data-source":`all`,role:`region`,"aria-label":`Cache Report · Claude and Codex`,onClick:Wn(a),style:{cursor:`pointer`},children:[(0,W.jsxs)(`div`,{className:`panel-header`,style:{justifyContent:`space-between`},children:[(0,W.jsxs)(`div`,{className:`cr-panel-header-inner`,children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#activity`})}),(0,W.jsxs)(`h2`,{style:{color:Us},children:[`Cache Report `,(0,W.jsx)(`span`,{className:`sub`,children:`by provider`})]})]}),(0,W.jsxs)(`div`,{className:`panel-header-actions`,children:[(0,W.jsx)(Ir,{label:`Cache Report`,onOpen:a}),(0,W.jsx)(jr,{})]})]}),(0,W.jsx)(`div`,{className:`panel-body source-all-sections provider-composition provider-composition--panel`,children:o.sections.map(e=>(0,W.jsx)(Ks,{section:e},e.source))})]});let s=o.sections[0],c=s?.value??null,l=vi(e,t).hydrating,u=s&&s.status!==`available`?(0,W.jsx)(`span`,{className:`provider-section-status`,children:s.status}):null,d=s?.reason??null,f=c==null&&r.source===t&&r.accountKey!==null&&r.isEmpty,p=s?.status===`empty`||c?.is_empty===!0||f,m=Ds(t);if(!c&&l&&!p)return(0,W.jsxs)(`section`,{className:`panel accent-teal${i}`,id:`panel-cache-report`,"data-panel-kind":`cache-report`,"data-source":t,role:`region`,"aria-label":`Cache Report`,onClick:Wn(a),style:{cursor:`pointer`},children:[(0,W.jsxs)(`div`,{className:`panel-header`,style:{justifyContent:`space-between`},children:[(0,W.jsxs)(`div`,{className:`cr-panel-header-inner`,children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#activity`})}),(0,W.jsxs)(`h2`,{style:{color:Us},children:[`Cache Report `,(0,W.jsx)(`span`,{className:`sub`,children:`(loading)`})]})]}),(0,W.jsxs)(`div`,{className:`panel-header-actions`,children:[(0,W.jsx)(Ir,{label:`Cache Report`,onOpen:a}),(0,W.jsx)(jr,{})]})]}),(0,W.jsx)(`div`,{className:`panel-body`,children:(0,W.jsx)(co,{lines:2})})]});if(p){let e=s?.status===`empty`||f,n=e?null:u,r=e?null:d;return(0,W.jsxs)(`section`,{className:`panel accent-teal${i}`,id:`panel-cache-report`,"data-panel-kind":`cache-report`,"data-source":t,role:`region`,"aria-label":`Cache Report · empty`,onClick:Wn(a),style:{cursor:`pointer`},children:[(0,W.jsxs)(`div`,{className:`panel-header`,style:{justifyContent:`space-between`},children:[(0,W.jsxs)(`div`,{className:`cr-panel-header-inner`,children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#activity`})}),(0,W.jsx)(`h2`,{style:{color:Us},children:`Cache Report`}),n]}),(0,W.jsxs)(`div`,{className:`panel-header-actions`,children:[(0,W.jsx)(Ir,{label:`Cache Report`,onOpen:a}),(0,W.jsx)(jr,{})]})]}),(0,W.jsxs)(`div`,{className:`cr-status-row`,children:[(0,W.jsx)(`span`,{className:`cr-glyph empty`,"aria-hidden":`true`,children:`−`}),(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{className:`cr-headline`,children:[`No `,s?.label??`Claude`,` activity yet`]}),(0,W.jsx)(`div`,{className:`cr-subline`,children:`Run a session to start tracking`}),r&&(0,W.jsx)(`div`,{className:`cr-subline`,children:r})]})]})]})}if(!c)return(0,W.jsxs)(`section`,{className:`panel accent-amber${i}`,id:`panel-cache-report`,"data-panel-kind":`cache-report`,"data-source":t,role:`region`,"aria-label":`Cache Report · failed`,onClick:Wn(a),style:{cursor:`pointer`},children:[(0,W.jsxs)(`div`,{className:`panel-header`,style:{justifyContent:`space-between`},children:[(0,W.jsxs)(`div`,{className:`cr-panel-header-inner`,children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#activity`})}),(0,W.jsx)(`h2`,{style:{color:Ws},children:`Cache Report`}),u]}),(0,W.jsxs)(`div`,{className:`panel-header-actions`,children:[(0,W.jsx)(Ir,{label:`Cache Report`,onOpen:a}),(0,W.jsx)(jr,{})]})]}),(0,W.jsxs)(`div`,{className:`cr-status-row`,children:[(0,W.jsx)(`span`,{className:`cr-glyph fail`,"aria-hidden":`true`,children:`!`}),(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`cr-headline`,children:`Cache Report unavailable`}),(0,W.jsx)(`div`,{className:`cr-subline`,children:`The snapshot could not be built. Retrying on the next sync.`}),d&&(0,W.jsx)(`div`,{className:`cr-subline`,children:d})]})]})]});let h=Hs(c),g=c.today.anomaly_triggered,{insufficient:_}=h,v=h.todayObserved,y=h.chromeAmber,b=y?`accent-amber`:`accent-teal`,x=y?Ws:Us,S=y?Ws:Gs,C,w,T=null;if(_){C={icon:`~`,cls:`thin`};let e=c.today.baseline_daily_row_count;w=(0,W.jsxs)(W.Fragment,{children:[`Building baseline · `,e,`/`,5,` days`]}),T=v?(0,W.jsxs)(W.Fragment,{children:[`Today: `,m.percentLabelInline,` `,Cs(c.today,t)??`—`,` · net`,` `,B.usdSigned(c.today.net_usd)]}):(0,W.jsx)(W.Fragment,{children:`No activity today`})}else if(g){if(C={icon:`⚠`,cls:`warn`},c.today.anomaly_reasons.includes(`cache_drop`)&&c.today.delta_pp!==null){let e=B.pctFloor(Math.abs(c.today.delta_pp));w=(0,W.jsxs)(W.Fragment,{children:[`Today: `,m.percentLabelInline,` `,(0,W.jsxs)(`span`,{className:`delta-bad`,children:[`↓ `,e,`pp`]})]})}else w=(0,W.jsxs)(W.Fragment,{children:[`Today: net`,` `,(0,W.jsx)(`span`,{className:`delta-bad`,children:B.usdSigned(c.today.net_usd)})]});T=(0,W.jsxs)(W.Fragment,{children:[`vs `,c.window_days,`d median`,` `,c.today.baseline_median_percent===null?`—`:B.pctFloor(c.today.baseline_median_percent)+`%`,` `,`· net`,` `,(0,W.jsx)(`span`,{className:`warn`,children:B.usdSigned(c.today.net_usd)})]})}else v?(C={icon:`✓`,cls:`ok`},w=(0,W.jsxs)(W.Fragment,{children:[`Today: `,m.percentLabelInline,` `,(0,W.jsx)(`span`,{className:`delta-good`,children:Cs(c.today,t)??`—`})]}),T=(0,W.jsxs)(W.Fragment,{children:[`vs `,c.window_days,`d median`,` `,c.today.baseline_median_percent===null?`—`:B.pctFloor(c.today.baseline_median_percent)+`%`,` `,`· net`,` `,(0,W.jsx)(`span`,{className:`ok`,children:B.usdSigned(c.today.net_usd)})]})):(C={icon:`·`,cls:`thin`},w=(0,W.jsx)(W.Fragment,{children:`No activity today`}),T=(0,W.jsxs)(W.Fragment,{children:[`vs `,c.window_days,`d median`,` `,c.today.baseline_median_percent===null?`—`:B.pctFloor(c.today.baseline_median_percent)+`%`,` `,`· net —`]}));let E=c.days.reduce((e,t)=>e+t.net_usd,0),D=E>=0?`ok`:`warn`,ee=_?(0,W.jsxs)(W.Fragment,{children:[`Watchdog activates at `,5,` days of history`]}):(0,W.jsxs)(W.Fragment,{children:[c.window_days,`d net:`,` `,(0,W.jsx)(`span`,{className:D,children:B.usdSigned(E)})]});return(0,W.jsxs)(`section`,{className:`panel ${b}${i}`,id:`panel-cache-report`,"data-panel-kind":`cache-report`,"data-source":t,role:`region`,"aria-label":`Cache Report`,onClick:Wn(a),style:{cursor:`pointer`},children:[(0,W.jsxs)(`div`,{className:`panel-header`,style:{justifyContent:`space-between`},children:[(0,W.jsxs)(`div`,{className:`cr-panel-header-inner`,children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#activity`})}),(0,W.jsxs)(`h2`,{style:{color:x},children:[`Cache Report`,y&&(0,W.jsx)(`span`,{className:`sub`,children:`⚠ Today`})]}),u]}),(0,W.jsxs)(`div`,{className:`panel-header-actions`,children:[(0,W.jsx)(Ir,{label:`Cache Report`,onOpen:a}),(0,W.jsx)(jr,{})]})]}),(0,W.jsxs)(`div`,{className:`cr-status-row`,children:[(0,W.jsx)(`span`,{className:`cr-glyph ${C.cls}`,children:C.icon}),(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`cr-headline`,children:w}),(0,W.jsx)(`div`,{className:`cr-subline`,children:T})]})]}),!_&&c.days.length>0&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(Ns,{days:c.days,baseline_median_percent:c.today.baseline_median_percent,today_marker_color:S,size:`mini`,source:t}),(0,W.jsx)(`div`,{className:`cr-netbars-mini-wrap`,children:(0,W.jsx)(Fs,{days:c.days,size:`mini`,source:t})})]}),(0,W.jsx)(`div`,{className:`cr-subline second`,children:ee}),d&&(0,W.jsx)(`div`,{className:`provider-section-reason`,children:d})]})}var Js={forecast:{id:`forecast`,label:`Forecast`,Component:no,openAction:()=>P({type:`OPEN_MODAL`,kind:`forecast`})},trend:{id:`trend`,label:`Trend`,Component:So,openAction:()=>P({type:`OPEN_MODAL`,kind:`trend`})},sessions:{id:`sessions`,label:`Sessions`,Component:jo,openAction:gr},projects:{id:`projects`,label:`Projects`,Component:Go,openAction:()=>P({type:`OPEN_MODAL`,kind:`projects`})},blocks:{id:`blocks`,label:`Blocks`,Component:Zo,openAction:_r},daily:{id:`daily`,label:`Daily`,Component:as,openAction:()=>P({type:`OPEN_MODAL`,kind:`daily`})},weekly:{id:`weekly`,label:`Weekly`,Component:gs,openAction:()=>P({type:`OPEN_MODAL`,kind:`weekly`})},monthly:{id:`monthly`,label:`Monthly`,Component:vs,openAction:()=>P({type:`OPEN_MODAL`,kind:`monthly`})},alerts:{id:`alerts`,label:`Recent alerts`,Component:bs,openAction:()=>P({type:`OPEN_MODAL`,kind:`alerts`})},"cache-report":{id:`cache-report`,label:`Cache Report`,Component:qs,openAction:()=>P({type:`OPEN_MODAL`,kind:`cache-report`})}};function Ys({onClose:e,label:t=`Close`,className:n=`modal-close`,disabled:r}){return(0,W.jsx)(`button`,{type:`button`,className:n,"aria-label":t,onClick:e,disabled:r,children:`×`})}function Xs({title:e,titleId:t,className:n=`modal-header`,headerExtras:r,onClose:i,closeLabel:a,closeClassName:o,closeDisabled:s}){return(0,W.jsxs)(`header`,{className:n,children:[(0,W.jsx)(`h2`,{id:t,tabIndex:-1,children:e}),r,i?(0,W.jsx)(Ys,{onClose:i,label:a,className:o,disabled:s}):null]})}var Zs=[{keys:[`r`],desc:`force refresh`},{keys:[`v`],desc:`cycle source (Claude / Codex / All)`},{keys:[`a`],desc:`cycle account (multi-account sources)`},{keys:[`s`],desc:`open Settings`},{keys:[`d`],desc:`open Doctor`},{keys:[`e`],desc:`explain where this window’s cost went`},{keys:[`S`],desc:`share the focused panel (focus a panel first)`},{keys:[`B`],desc:`open the report composer`},{keys:[`f`],desc:`filter Sessions`},{keys:[`/`],desc:`search Sessions`},{keys:[`c`],desc:`collapse / expand the Sessions panel`},{keys:[`n`,`N`],desc:`next / previous search match`},{keys:[`q`],desc:`quit (close the tab)`},{keys:[`?`],desc:`toggle this help`},{keys:[`Esc`],desc:`close`}];function Qs({panelOrder:e}){return(0,W.jsx)(`table`,{children:(0,W.jsxs)(`tbody`,{children:[e.map((e,t)=>(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`td`,{children:t<9?(0,W.jsx)(`kbd`,{children:String(t+1)}):t===9?(0,W.jsx)(`kbd`,{children:`0`}):(0,W.jsx)(`span`,{"aria-hidden":`true`,children:`—`})}),(0,W.jsxs)(`td`,{children:[`Open `,Js[e]?.label??e,` modal`]})]},e)),Zs.map(e=>(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`td`,{children:e.keys.map(e=>(0,W.jsx)(`kbd`,{children:e},e)).reduce((e,t)=>[e,` / `,t])}),(0,W.jsx)(`td`,{children:e.desc})]},e.desc)),(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`td`,{children:`Hold + drag a card`}),(0,W.jsx)(`td`,{children:`rearrange the dashboard`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsxs)(`td`,{children:[(0,W.jsx)(`kbd`,{children:`Shift`}),`+`,(0,W.jsx)(`kbd`,{children:`↑`}),`/`,(0,W.jsx)(`kbd`,{children:`↓`})]}),(0,W.jsx)(`td`,{children:`swap focused card with neighbor`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsxs)(`td`,{children:[(0,W.jsx)(`kbd`,{children:`↑`}),`/`,(0,W.jsx)(`kbd`,{children:`↓`})]}),(0,W.jsx)(`td`,{children:`Select period (Daily / Weekly / Monthly modal)`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`td`,{children:`Click the hero, or focus it and press Enter or Space`}),(0,W.jsx)(`td`,{children:`Open the Current Usage modal`})]})]})})}function $s(){return(0,W.jsx)(`table`,{className:`help-conversations`,children:(0,W.jsxs)(`tbody`,{children:[(0,W.jsx)(`tr`,{children:(0,W.jsx)(`td`,{colSpan:2,children:(0,W.jsx)(`strong`,{children:`Conversations`})})}),(0,W.jsxs)(`tr`,{children:[(0,W.jsxs)(`td`,{children:[(0,W.jsx)(`kbd`,{children:`j`}),` / `,(0,W.jsx)(`kbd`,{children:`k`})]}),(0,W.jsx)(`td`,{children:`move turns`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsxs)(`td`,{children:[(0,W.jsx)(`kbd`,{children:`[`}),` / `,(0,W.jsx)(`kbd`,{children:`]`})]}),(0,W.jsx)(`td`,{children:`collapse / expand all`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`td`,{children:(0,W.jsx)(`kbd`,{children:`g`})}),(0,W.jsx)(`td`,{children:`jump to top`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsxs)(`td`,{children:[(0,W.jsx)(`kbd`,{children:`e`}),` / `,(0,W.jsx)(`kbd`,{children:`E`})]}),(0,W.jsx)(`td`,{children:`next / prev error`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsxs)(`td`,{children:[(0,W.jsx)(`kbd`,{children:`u`}),` / `,(0,W.jsx)(`kbd`,{children:`U`})]}),(0,W.jsx)(`td`,{children:`next / prev prompt`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsxs)(`td`,{children:[(0,W.jsx)(`kbd`,{children:`b`}),` / `,(0,W.jsx)(`kbd`,{children:`B`})]}),(0,W.jsx)(`td`,{children:`next / prev subagent`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsxs)(`td`,{children:[(0,W.jsx)(`kbd`,{children:`p`}),` / `,(0,W.jsx)(`kbd`,{children:`P`})]}),(0,W.jsx)(`td`,{children:`next / prev plan / question`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsxs)(`td`,{children:[(0,W.jsx)(`kbd`,{children:`c`}),` / `,(0,W.jsx)(`kbd`,{children:`C`})]}),(0,W.jsx)(`td`,{children:`next / prev cache rebuild`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsxs)(`td`,{children:[(0,W.jsx)(`kbd`,{children:`m`}),` / `,(0,W.jsx)(`kbd`,{children:`M`})]}),(0,W.jsx)(`td`,{children:`next / prev compaction`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsxs)(`td`,{children:[(0,W.jsx)(`kbd`,{children:`h`}),` / `,(0,W.jsx)(`kbd`,{children:`H`})]}),(0,W.jsx)(`td`,{children:`next / prev reasoning heading`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`td`,{children:(0,W.jsx)(`kbd`,{children:`a`})}),(0,W.jsx)(`td`,{children:`jump to last prompt`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`td`,{children:(0,W.jsx)(`kbd`,{children:`L`})}),(0,W.jsx)(`td`,{children:`jump to last error`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`td`,{children:(0,W.jsx)(`kbd`,{children:`o`})}),(0,W.jsx)(`td`,{children:`toggle outline`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`td`,{children:(0,W.jsx)(`kbd`,{children:`v`})}),(0,W.jsx)(`td`,{children:`cycle focus mode`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`td`,{children:(0,W.jsx)(`kbd`,{children:`/`})}),(0,W.jsx)(`td`,{children:`find in conversation`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`td`,{children:(0,W.jsx)(`kbd`,{children:`f`})}),(0,W.jsx)(`td`,{children:`focus the conversation-list search`})]}),(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`td`,{children:(0,W.jsx)(`kbd`,{children:`Esc`})}),(0,W.jsx)(`td`,{children:`close`})]})]})})}function ec(){return(0,W.jsxs)(`ul`,{className:`help-gesture-list`,children:[(0,W.jsxs)(`li`,{children:[(0,W.jsx)(`strong`,{children:`Tap the chevron`}),` — expand or collapse a panel`]}),(0,W.jsxs)(`li`,{children:[(0,W.jsx)(`strong`,{children:`Long-press a panel`}),` — drag to rearrange the dashboard`]}),(0,W.jsxs)(`li`,{children:[(0,W.jsx)(`strong`,{children:`Tap ✕ or the dim backdrop`}),` — close a sheet (or `,(0,W.jsx)(`kbd`,{children:`Esc`}),` on tablets)`]}),(0,W.jsxs)(`li`,{children:[(0,W.jsx)(`strong`,{children:`Tap a model chip`}),` — filter Sessions by that model`]}),(0,W.jsxs)(`li`,{children:[(0,W.jsx)(`strong`,{children:`Tap the sync chip`}),` — force a fresh refresh`]})]})}function tc(){let[e,t]=(0,U.useState)(!1),n=Pn(),r=(0,U.useSyncExternalStore)(V,()=>L().prefs.panelOrder),i=(0,U.useSyncExternalStore)(V,()=>L().activeSource),a=Be(),s=(0,U.useSyncExternalStore)(V,()=>L().view),c=(0,U.useMemo)(()=>o(a,i),[a,i]),l=(0,U.useMemo)(()=>T(r,c),[r,c]);xe([{key:`?`,scope:`global`,view:`any`,action:()=>t(e=>!e)},{key:`Escape`,scope:`overlay`,layer:1e3,action:()=>t(!1),when:()=>e}]);let u=(0,U.useRef)(null);return Er(u,{active:e}),Ar(e),(0,U.useEffect)(()=>{if(e)return P({type:`INCREMENT_CHROME_OVERLAY`}),()=>P({type:`DECREMENT_CHROME_OVERLAY`})},[e]),e?(0,W.jsx)(`div`,{id:`help-overlay`,onClick:()=>t(!1),children:(0,W.jsxs)(`div`,{ref:u,className:`help-card`,onClick:e=>e.stopPropagation(),children:[(0,W.jsx)(Xs,{title:n?`Help`:`Keybindings`,className:`help-header`,onClose:()=>t(!1)}),n?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(ec,{}),(0,W.jsxs)(`details`,{className:`help-keyboard-disclosure`,children:[(0,W.jsx)(`summary`,{children:`Keyboard shortcuts ▾`}),(0,W.jsx)(Qs,{panelOrder:l}),s===`conversations`&&(0,W.jsx)($s,{})]})]}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(Qs,{panelOrder:l}),s===`conversations`&&(0,W.jsx)($s,{})]}),(0,W.jsxs)(`p`,{className:`meta`,children:[`cctally · `,(0,W.jsx)(`span`,{id:`help-server-url`,children:window.location.origin})]})]})}):null}var nc=[`display`,`sessions`,`alerts`,`viewer`,`access`,`restore`,`cli`],rc={display:`Display & time`,sessions:`Recent Sessions`,alerts:`Alerts`,viewer:`Conversation viewer`,access:`Access & updates`,restore:`Restore defaults`,cli:`Managed from the CLI`};function ic(e){return{kind:`server`,scope:`machine`,scopeWord:`this machine`,path:e.path,id:e.id,label:e.label,section:e.section,read:e.read,toDraft:e=>e,equivalent:(e,t)=>e===t,parse:e=>({ok:!0,value:e})}}function ac(e){return e===`local`?`local`:e===`utc`?`utc`:`custom`}function oc(e){return e.mode===`local`?`local`:e.mode===`utc`?`utc`:e.custom.trim()}function sc(e){if(!e)return!1;try{return new Intl.DateTimeFormat(`en-US`,{timeZone:e}).format(new Date),!0}catch{return!1}}var cc=`Enter a whole number between 10 and 1000.`;function lc(e){let t=e.trim();if(!/^\d+$/.test(t))return{ok:!1,message:cc};let n=Number.parseInt(t,10);return!Number.isFinite(n)||n<10||n>1e3?{ok:!1,message:cc}:{ok:!0,value:n}}var uc=`Enter an amount greater than 0, or leave blank for no budget.`;function dc(e){let t=e.trim();if(t===``)return{ok:!0,value:null};if(!/^\d*\.?\d+$/.test(t))return{ok:!1,message:uc};let n=Number(t);return!Number.isFinite(n)||n<=0?{ok:!1,message:uc}:{ok:!0,value:n}}var fc={kind:`server`,id:`display.tz`,label:`Display timezone`,path:`display.tz`,section:`display`,scope:`machine`,scopeWord:`this machine`,read:e=>e.tz,toDraft:e=>({mode:ac(e),custom:ac(e)===`custom`?e:``}),equivalent:(e,t)=>{let n=oc(e);return e.mode===`custom`&&!sc(n)?!1:n===t},parse:e=>{let t=oc(e);return e.mode===`custom`&&!sc(t)?{ok:!1,message:t?`"${t}" is not an IANA zone name. Try a Region/City name such as America/New_York.`:`Type an IANA zone name, such as America/New_York.`}:{ok:!0,value:t}},suppressed:e=>e.tzPinned},Z={kind:`server`,id:`alerts.notifier`,label:`Alert notifier`,path:`alerts.notifier`,section:`alerts`,scope:`machine`,scopeWord:`this machine`,read:e=>e.alerts.notifier??`auto`,toDraft:e=>e,equivalent:(e,t)=>e===t,parse:e=>({ok:!0,value:e})},pc={kind:`server`,id:`update.channel`,label:`Update channel`,path:`update.channel`,section:`access`,scope:`machine`,scopeWord:`this machine`,read:e=>e.channel,toDraft:e=>e,equivalent:(e,t)=>e===t,parse:e=>({ok:!0,value:e})},mc={kind:`server`,id:`budget.weekly_usd`,label:`Weekly budget`,path:`budget.weekly_usd`,section:`alerts`,scope:`machine`,scopeWord:`this machine`,read:e=>e.alerts.weekly_usd,toDraft:e=>e===null?``:String(e),equivalent:(e,t)=>{let n=dc(e);return n.ok&&n.value===t},parse:dc},hc={kind:`browser`,id:`prefs.sortDefault`,label:`Sort default`,path:null,section:`sessions`,scope:`browser`,scopeWord:`this browser`,read:e=>e.sortDefault,toDraft:e=>e,equivalent:(e,t)=>e===t,parse:e=>({ok:!0,value:e}),commit:e=>[{type:`SAVE_PREFS`,patch:{sortDefault:e}},{type:`SET_SORT`,key:e},{type:`SET_TABLE_SORT`,table:`sessions`,override:null}]},gc={kind:`browser`,id:`prefs.sessionsPerPage`,label:`Sessions per page`,path:null,section:`sessions`,scope:`browser`,scopeWord:`this browser`,read:e=>e.sessionsPerPage,toDraft:e=>String(e),equivalent:(e,t)=>{let n=lc(e);return n.ok&&n.value===t},parse:lc,commit:e=>[{type:`SAVE_PREFS`,patch:{sessionsPerPage:e}}]},_c=[fc,Z,ic({id:`alerts.enabled`,label:`Enable threshold alerts`,path:`alerts.enabled`,section:`alerts`,read:e=>e.alerts.enabled}),ic({id:`alerts.projected_enabled`,label:`Projected weekly-% pace alerts`,path:`alerts.projected_enabled`,section:`alerts`,read:e=>e.alerts.projected_weekly_enabled??!1}),ic({id:`alerts.rate_change_enabled`,label:`Metering-rate-change notifications`,path:`alerts.rate_change_enabled`,section:`alerts`,read:e=>e.alerts.rate_change_enabled??!1}),mc,ic({id:`budget.projected_enabled`,label:`Projected budget-$ pace alerts`,path:`budget.projected_enabled`,section:`alerts`,read:e=>e.alerts.projected_budget_enabled??!1}),ic({id:`budget.project_alerts_enabled`,label:`Per-project budget alerts`,path:`budget.project_alerts_enabled`,section:`alerts`,read:e=>e.alerts.project_alerts_enabled??!1}),ic({id:`budget.codex.alerts_enabled`,label:`Codex budget alerts`,path:`budget.codex.alerts_enabled`,section:`alerts`,read:e=>e.alerts.codex_budget_alerts_enabled??!1}),ic({id:`budget.codex.projected_enabled`,label:`Codex projected-pace alerts`,path:`budget.codex.projected_enabled`,section:`alerts`,read:e=>e.alerts.codex_projected_enabled??!1}),ic({id:`dashboard.cache_failure_markers`,label:`Show cache-failure markers`,path:`dashboard.cache_failure_markers`,section:`viewer`,read:e=>e.markersEnabled}),ic({id:`dashboard.live_tail`,label:`Live-tail new turns`,path:`dashboard.live_tail`,section:`viewer`,read:e=>e.liveTail}),ic({id:`dashboard.lan_auth`,label:`Require LAN access token`,path:`dashboard.lan_auth`,section:`access`,read:e=>e.lanAuth}),pc,hc,gc,{kind:`browser`,id:`prefs.filterText`,label:`Remembered filter term`,path:null,section:`sessions`,scope:`browser`,scopeWord:`this browser`,read:e=>e.filterText,toDraft:e=>e,equivalent:(e,t)=>e===t,parse:e=>({ok:!0,value:e}),commit:e=>[{type:`SET_FILTER`,text:e}]},{kind:`stagedAction`,id:`restore.tableSort`,label:`Table column sorting`,path:null,section:`restore`,scope:`browser`,scopeWord:`this browser`,commit:()=>[{type:`SET_TABLE_SORT`,table:`sessions`,override:null},{type:`CLEAR_TABLE_SORTS`}]},{kind:`stagedAction`,id:`restore.cardOrder`,label:`Card order`,path:null,section:`restore`,scope:`browser`,scopeWord:`this browser`,commit:()=>[{type:`RESET_PANEL_ORDER`}]}],vc=new Map(_c.map(e=>[e.id,e]));function yc(e){return vc.get(e)}var bc={display:`display`,alerts:`alerts`,budget:`alerts`,"budget.codex":`alerts`,dashboard:`viewer`,update:`access`,"update.check":`access`,"update.check.enabled":`access`,"update.check.ttl_hours":`access`,cache_report:null},xc=new Map(_c.filter(e=>e.kind===`server`).map(e=>[e.path,e.id]));function Sc(e){let t=xc.get(e);if(t!==void 0)return{kind:`leaf`,id:t};if(Object.hasOwn(bc,e)){let t=bc[e];if(t!==null)return{kind:`group`,section:t}}return{kind:`form`}}function Cc(e){return e.filter(e=>xc.has(e))}var wc=[{key:`display.tz`,label:`Display timezone`,section:`display`,disposition:`editable`,fieldId:`display.tz`,command:`cctally config set display.tz America/New_York`,reason:``,defaultText:`local`},{key:`alerts.enabled`,label:`Enable threshold alerts`,section:`alerts`,disposition:`editable`,fieldId:`alerts.enabled`,command:`cctally config set alerts.enabled true`,reason:``,defaultText:`false`},{key:`alerts.projected_enabled`,label:`Projected weekly-% pace alerts`,section:`alerts`,disposition:`editable`,fieldId:`alerts.projected_enabled`,command:`cctally config set alerts.projected_enabled true`,reason:``,defaultText:`false`},{key:`alerts.rate_change_enabled`,label:`Metering-rate-change notifications`,section:`alerts`,disposition:`editable`,fieldId:`alerts.rate_change_enabled`,command:`cctally config set alerts.rate_change_enabled true`,reason:``,defaultText:`false`},{key:`alerts.notifier`,label:`Alert notifier`,section:`alerts`,disposition:`editable`,fieldId:`alerts.notifier`,command:`cctally config set alerts.notifier osascript`,reason:``,defaultText:`auto`},{key:`alerts.command_template`,label:`Custom notifier command`,section:`alerts`,disposition:`cliOnly`,command:`cctally config set alerts.command_template '["notify-send","{title}","{body}"]'`,reason:`It runs a local command and routinely holds secrets, so it never reaches a browser — only the boolean "a command is configured" does.`,defaultText:`null`},{key:`alerts.quota`,label:`Codex quota alert rules`,section:`alerts`,disposition:`cliOnly`,command:`cctally config set alerts.quota '{"enabled": true, "actual_thresholds": [90, 95], "projected_thresholds": [], "rules": []}'`,reason:`A whole rules object, written as one value rather than field by field.`,defaultText:`{"enabled": false, "actual_thresholds": [90, 95], "projected_thresholds": [], "rules": []}`},{key:`budget.weekly_usd`,label:`Weekly budget`,section:`alerts`,disposition:`editable`,fieldId:`budget.weekly_usd`,command:`cctally budget set 200`,reason:``,defaultText:`null`},{key:`budget.alerts_enabled`,label:`Budget alerts master switch`,section:`alerts`,disposition:`disclosed`,command:`cctally config set budget.alerts_enabled true`,reason:`Budget alerts fire only when an amount is set AND this master is on. There is no editor for it here yet, so this row is how you can tell which of the two is stopping them.`,defaultText:`true`},{key:`budget.alert_thresholds`,label:`Budget alert thresholds`,section:`alerts`,disposition:`readOnly`,command:`cctally config set budget.alert_thresholds 90,100`,reason:`Shown above as a summary; its editor is parked in issue #19.`,defaultText:`90,100`},{key:`budget.projected_enabled`,label:`Projected budget-$ pace alerts`,section:`alerts`,disposition:`editable`,fieldId:`budget.projected_enabled`,command:`cctally config set budget.projected_enabled true`,reason:``,defaultText:`false`},{key:`budget.project_alerts_enabled`,label:`Per-project budget alerts`,section:`alerts`,disposition:`editable`,fieldId:`budget.project_alerts_enabled`,command:`cctally config set budget.project_alerts_enabled true`,reason:``,defaultText:`false`},{key:`budget.period`,label:`Claude budget period`,section:`alerts`,disposition:`cliOnly`,acceptedThenDiscarded:!0,command:`cctally config set budget.period calendar-month`,reason:`The dashboard accepts this leaf and runs the same forward-only reconcile the CLI does, but never stores it.`,defaultText:`subscription-week`},{key:`budget.projects`,label:`Per-project budgets`,section:`alerts`,disposition:`cliOnly`,command:`cctally config set budget.projects '{"/Users/you/repos/cctally-dev": 50}'`,reason:`A map of canonical git-root paths to amounts, written as one object.`,defaultText:`{}`},{key:`budget.accounts`,label:`Per-account Claude budgets`,section:`alerts`,disposition:`cliOnly`,command:`cctally config set budget.accounts '{"work": 200}'`,reason:`Account references are resolved to immutable account keys at write time, which a browser cannot do.`,defaultText:`{}`},{key:`budget.codex`,label:`Codex budget block`,section:`alerts`,disposition:`cliOnly`,command:`cctally budget set 200 --vendor codex`,reason:`The whole Codex budget object. Amounts are never invented from a browser.`,defaultText:`null`},{key:`budget.codex.amount_usd`,label:`Codex budget amount`,section:`alerts`,disposition:`cliOnly`,acceptedThenDiscarded:!0,command:`cctally budget set 200 --vendor codex`,reason:`Accepted by the dashboard and dropped: amounts stay CLI-only.`,defaultText:`null`},{key:`budget.codex.period`,label:`Codex budget period`,section:`alerts`,disposition:`cliOnly`,acceptedThenDiscarded:!0,command:`cctally config set budget.codex.period calendar-month`,reason:`Accepted by the dashboard and dropped, like every CLI-only Codex leaf.`,defaultText:`calendar-month`},{key:`budget.codex.alert_thresholds`,label:`Codex budget alert thresholds`,section:`alerts`,disposition:`cliOnly`,acceptedThenDiscarded:!0,command:`cctally config set budget.codex.alert_thresholds 90,100`,reason:`Accepted by the dashboard and dropped, like every CLI-only Codex leaf.`,defaultText:`90,100`},{key:`budget.codex.alerts_enabled`,label:`Codex budget alerts`,section:`alerts`,disposition:`editable`,fieldId:`budget.codex.alerts_enabled`,command:`cctally config set budget.codex.alerts_enabled true`,reason:``,defaultText:`false`},{key:`budget.codex.projected_enabled`,label:`Codex projected-pace alerts`,section:`alerts`,disposition:`editable`,fieldId:`budget.codex.projected_enabled`,command:`cctally config set budget.codex.projected_enabled true`,reason:``,defaultText:`false`},{key:`budget.codex.accounts`,label:`Per-account Codex budgets`,section:`alerts`,disposition:`cliOnly`,command:`cctally config set budget.codex.accounts '{"work": 150}'`,reason:`Account references are resolved to immutable account keys at write time, which a browser cannot do.`,defaultText:`{}`},{key:`dashboard.cache_failure_markers`,label:`Show cache-failure markers`,section:`viewer`,disposition:`editable`,fieldId:`dashboard.cache_failure_markers`,command:`cctally config set dashboard.cache_failure_markers false`,reason:``,defaultText:`true`},{key:`dashboard.live_tail`,label:`Live-tail new turns`,section:`viewer`,disposition:`editable`,fieldId:`dashboard.live_tail`,command:`cctally config set dashboard.live_tail false`,reason:``,defaultText:`true`},{key:`conversation.retention_days`,label:`Transcript retention`,section:`viewer`,disposition:`cliOnly`,command:`cctally config set conversation.retention_days 90`,reason:`It governs deletion from cache.db, so it is set deliberately from the CLI rather than from a browser.`,defaultText:`90`},{key:`dashboard.lan_auth`,label:`Require LAN access token`,section:`access`,disposition:`editable`,fieldId:`dashboard.lan_auth`,command:`cctally config set dashboard.lan_auth false`,reason:``,defaultText:`true`},{key:`dashboard.bind`,label:`Dashboard bind address`,section:`access`,disposition:`cliOnly`,command:`cctally config set dashboard.bind lan`,reason:`It applies only at server startup, so changing it from the running dashboard could not take effect.`,defaultText:`loopback`},{key:`dashboard.expose_transcripts`,label:`Expose transcripts beyond loopback`,section:`access`,disposition:`cliOnly`,command:`cctally config set dashboard.expose_transcripts true`,reason:`A privacy gate read at bind time. It is deliberately not live-mutable from the surface it would expose.`,defaultText:`false`},{key:`update.channel`,label:`Update channel`,section:`access`,disposition:`editable`,fieldId:`update.channel`,command:`cctally config set update.channel beta`,reason:``,defaultText:`stable`},{key:`update.check.enabled`,label:`Background update check`,section:`access`,disposition:`disclosed`,command:`cctally config set update.check.enabled false`,reason:`The endpoint can write it, but no editor is rendered here; the CLI is the way to change it.`,defaultText:`true`},{key:`update.check.ttl_hours`,label:`Update-check interval`,section:`access`,disposition:`disclosed`,command:`cctally config set update.check.ttl_hours 24`,reason:`The endpoint can write it, but no editor is rendered here; the CLI is the way to change it.`,defaultText:`24`},{key:`telemetry.enabled`,label:`Anonymous install-count telemetry`,section:`access`,disposition:`cliOnly`,command:`cctally telemetry off`,reason:`Deliberately not dashboard-mirrored, so opting out is a decision you make at the CLI.`,defaultText:`true`},{key:`statusline.cctally_extensions`,label:`Status-line cctally segment`,section:`cli`,disposition:`cliOnly`,command:`cctally config set statusline.cctally_extensions false`,reason:`It shapes the Claude Code status line, which this dashboard does not render.`,defaultText:`true`},{key:`statusline.cost_source`,label:`Status-line cost source`,section:`cli`,disposition:`cliOnly`,command:`cctally config set statusline.cost_source cctally`,reason:`It shapes the Claude Code status line, which this dashboard does not render.`,defaultText:`auto`},{key:`statusline.usage_only`,label:`Status-line usage-only mode`,section:`cli`,disposition:`cliOnly`,command:`cctally config set statusline.usage_only true`,reason:`It shapes the Claude Code status line, which this dashboard does not render.`,defaultText:`false`},{key:`statusline.visual_burn_rate`,label:`Status-line burn-rate indicator`,section:`cli`,disposition:`cliOnly`,command:`cctally config set statusline.visual_burn_rate emoji`,reason:`It shapes the Claude Code status line, which this dashboard does not render.`,defaultText:`off`},{key:`storage.artifact_retention`,label:`Recovery-artifact retention policy`,section:`cli`,disposition:`cliOnly`,command:`cctally config set storage.artifact_retention '{"max_age_days": 30, "max_count_per_family": 20, "max_total_mib": 4096, "min_free_mib": 10240, "max_shape_examples": 8}'`,reason:`A destructive retention policy written as one whole object; cctally never falls back to a policy you did not write.`,defaultText:`{"max_age_days": 30, "max_count_per_family": 20, "max_total_mib": 4096, "min_free_mib": 10240, "max_shape_examples": 8}`},{key:`codex.hook.ingest_budget_seconds`,label:`Codex hook ingest budget`,section:`cli`,disposition:`cliOnly`,command:`cctally config set codex.hook.ingest_budget_seconds 5`,reason:`A hook-path deadline read outside any browser session; it never applies to this dashboard.`,defaultText:`5`}];new Map(wc.map(e=>[e.key,e]));function Tc({sections:e,activeId:t,onJump:n}){return(0,W.jsx)(`nav`,{className:`settings-rail`,"aria-label":`Settings sections`,children:(0,W.jsx)(`ul`,{children:e.map(e=>(0,W.jsx)(`li`,{children:(0,W.jsxs)(`button`,{type:`button`,className:`settings-rail-link${e.id===t?` is-active`:``}`,"aria-current":e.id===t?`location`:void 0,onClick:()=>n(e.id),onFocus:e=>e.currentTarget.scrollIntoView?.({block:`nearest`,inline:`nearest`}),children:[e.title,e.dirty&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`fs-changed`,"aria-hidden":`true`,children:` ●`}),(0,W.jsx)(`span`,{className:`sr-only`,children:` (has unsaved changes)`})]})]})},e.id))})})}function Ec(e,t,n){let[r,i]=(0,U.useState)(t[0]??null),a=t.join(`|`),o=(0,U.useRef)(t);o.current=t;let s=(0,U.useCallback)(()=>{let t=e.current;if(!t)return;let r=o.current;if(r.length===0){i(null);return}let a=t.getBoundingClientRect().top+n;if(t.scrollHeight-t.scrollTop-t.clientHeight<=1){i(r[r.length-1]);return}let s=r[0];for(let e of r){let n=t.querySelector(`[data-settings-section="${e}"]`);n&&n.getBoundingClientRect().top<=a&&(s=e)}i(s)},[e,n]);return(0,U.useEffect)(()=>{let t=e.current;if(!t)return;s(),t.addEventListener(`scroll`,s,{passive:!0});let r=null;if(typeof IntersectionObserver<`u`){r=new IntersectionObserver(()=>s(),{root:t,rootMargin:`-${n}px 0px 0px 0px`,threshold:0});for(let e of o.current){let n=t.querySelector(`[data-settings-section="${e}"]`);n&&r.observe(n)}}return()=>{t.removeEventListener(`scroll`,s),r?.disconnect()}},[s,a,n]),r}function Dc(){return _c.filter(e=>e.kind===`server`||e.kind===`browser`)}function Oc(e){let t={},n={};for(let r of Dc()){let i=r.read(e);n[r.id]=i,t[r.id]=r.toDraft(i)}let r={};for(let e of _c)e.kind===`stagedAction`&&(r[e.id]=!1);return{draft:t,server:n,staged:r,sources:e}}function kc(e,t){let n={...e.draft},r={...e.server};for(let e of Dc()){let i=r[e.id],a=e.read(t);e.equivalent(n[e.id],i)&&(n[e.id]=e.toDraft(a)),r[e.id]=a}return{...e,draft:n,server:r,sources:t}}function Ac(e,t,n){return{...e,draft:{...e.draft,[t]:n}}}function jc(e,t){return{...e,staged:{...e.staged,[t]:!e.staged[t]}}}function Mc(e,t){let n=yc(t);return n?n.kind===`stagedAction`?e.staged[t]===!0:!n.equivalent(e.draft[t],e.server[t]):!1}function Nc(e){return _c.filter(t=>Mc(e,t.id)).map(e=>e.id)}function Pc(e){return Nc(e).length}function Fc(e,t){return _c.some(n=>n.section===t&&Mc(e,n.id))}function Ic(e){let t={};for(let n of Dc()){let r=n.parse(e.draft[n.id]);r.ok||(t[n.id]=r.message)}return t}function Lc(e,t,n){let r=t.split(`.`),i=e;for(let e of r.slice(0,-1)){let t=i[e];(typeof t!=`object`||!t)&&(i[e]={}),i=i[e]}i[r[r.length-1]]=n}function Rc(e){let t={};for(let n of _c){if(n.kind!==`server`)continue;let r=n;if(!Mc(e,r.id)||r.suppressed?.(e.sources))continue;let i=r.parse(e.draft[r.id]);i.ok&&Lc(t,r.path,i.value)}return t}function zc(e){let t=[];for(let n of _c)if(Mc(e,n.id))if(n.kind===`browser`){let r=n,i=r.parse(e.draft[r.id]);if(!i.ok)continue;t.push(...r.commit(i.value))}else n.kind===`stagedAction`&&t.push(...n.commit());return t}function Bc(e,t){let[n,r]=(0,U.useState)(()=>Oc(e)),i=(0,U.useRef)(!1),a=(0,U.useRef)(e);a.current=e,(0,U.useEffect)(()=>{t&&!i.current?r(Oc(a.current)):t&&r(e=>kc(e,a.current)),i.current=t},[t,e.tz,e.tzPinned,e.alerts,e.markersEnabled,e.liveTail,e.lanAuth,e.channel,e.sortDefault,e.sessionsPerPage,e.filterText]);let o={...n,sources:e},s=(0,U.useCallback)((e,t)=>{r(n=>Ac(n,e,t))},[]),c=(0,U.useCallback)(e=>{r(t=>jc(t,e))},[]),l=(0,U.useCallback)(()=>{r(Oc(a.current))},[]),u=Ic(o);return{state:o,drafts:o.draft,dirtyIds:Nc(o),dirtyCount:Pc(o),issues:u,valid:Object.keys(u).length===0,sectionDirty:e=>Fc(o,e),isDirty:e=>Mc(o,e),draftOf:e=>o.draft[e],staged:e=>o.staged[e]===!0,setDraft:s,toggleStaged:c,open:l,buildBody:()=>Rc(o),localActions:()=>zc(o)}}var Vc={weekly_pct:`Weekly %`,budget_usd:`Budget $`,codex_budget_usd:`Codex $`};function Q(e){try{return`${e} (${new Intl.DateTimeFormat(`en-US`,{timeZone:e,timeZoneName:`shortOffset`}).formatToParts(new Date).find(e=>e.type===`timeZoneName`)?.value??``})`}catch{return e}}var Hc={"display.tz":`timezone zone clock IANA local utc offset`,"alerts.notifier":`osascript notify-send popup dispatch backend`,"alerts.enabled":`threshold master weekly 5h`,"alerts.projected_enabled":`pace projection weekly percent`,"alerts.rate_change_enabled":`metering rate change provider quota units per point`,"budget.weekly_usd":`amount equivalent dollars spend cap`,"budget.projected_enabled":`pace projection budget dollars`,"budget.project_alerts_enabled":`per-project git root`,"budget.codex.alerts_enabled":`openai codex spend`,"budget.codex.projected_enabled":`openai codex pace projection`,"dashboard.cache_failure_markers":`conversation viewer cache rebuild marker`,"dashboard.live_tail":`conversation viewer follow new turns`,"dashboard.lan_auth":`token network security bind`,"update.channel":`stable beta release`,"prefs.sortDefault":`recent sessions order column`,"prefs.sessionsPerPage":`recent sessions paging rows`,"prefs.filterText":`recent sessions remembered search`,"restore.tableSort":`reset column click sorting`,"restore.cardOrder":`reset panel arrangement layout`},Uc=[{key:`action.test`,section:`alerts`,index:`Send test alert synthetic dispatch pipeline toast log this machine`},{key:`restore.viewPrefs`,section:`restore`,index:`Restore view preferences sort default sessions per page remembered filter this browser`}];function Wc(e){return[e.label,e.key,e.reason,e.command,`this machine`].join(` `)}function Gc(e){return e.focus(),e.ownerDocument.activeElement===e}function Kc(e,t){if(!e)return!1;if(t.kind===`leaf`){let n=e.querySelector(`[data-settings-field="${t.id}"]`);return n?Gc(n):!1}if(t.kind===`group`){let n=e.querySelector(`[data-settings-section="${t.section}"]`);if(n&&Gc(n))return!0;for(let n of _c){if(n.section!==t.section)continue;let r=e.querySelector(`[data-settings-field="${n.id}"]:not(:disabled)`);if(r&&Gc(r))return!0}return!1}return!1}function qc(){let[t,n]=(0,U.useState)(!1),r=(0,U.useSyncExternalStore)(V,()=>L().prefs),i=(0,U.useSyncExternalStore)(V,()=>L().filterText),a=In(),o=ls(),s=(0,U.useSyncExternalStore)(V,()=>L().alertsConfig),l=(0,U.useSyncExternalStore)(V,()=>we(L())),u=(0,U.useSyncExternalStore)(V,()=>j(L())),d=(0,U.useSyncExternalStore)(V,()=>ie(L())),f=(0,U.useSyncExternalStore)(V,()=>R(L())),p=(0,U.useSyncExternalStore)(V,()=>L().update.state?.method??`unknown`),m=Bc({tz:a.tz,tzPinned:a.pinned,alerts:s,markersEnabled:l,liveTail:u,lanAuth:d,channel:f,sortDefault:r.sortDefault,sessionsPerPage:r.sessionsPerPage,filterText:i},t),[h,g]=(0,U.useState)(!1),[_,v]=(0,U.useState)([]),[y,b]=(0,U.useState)(0),[x,S]=(0,U.useState)(!1),[C,w]=(0,U.useState)(!1),[T,E]=(0,U.useState)(null),[D,ee]=(0,U.useState)(!1),[O,k]=(0,U.useState)(`weekly`),[A,M]=(0,U.useState)(`weekly_pct`),[N,te]=(0,U.useState)(!1),[ne,F]=(0,U.useState)(``),[re,I]=(0,U.useState)(``),[ae,oe]=(0,U.useState)(null),[z,se]=(0,U.useState)(0),ce=(0,U.useRef)(!1);(0,U.useEffect)(()=>{t&&!ce.current&&(E(null),ee(!1),k(`weekly`),S(!1),te(!1),v([]),F(``),I(``)),ce.current=t},[t]),(0,U.useEffect)(()=>{let e=window.setTimeout(()=>I(ne),300);return()=>window.clearTimeout(e)},[ne]),(0,U.useEffect)(()=>{if(!h){b(0);return}let e=setInterval(()=>b(e=>e+1),1e3);return()=>clearInterval(e)},[h]),xe([{key:`s`,scope:`global`,view:`any`,action:()=>n(!0),when:()=>!L().openModal},{key:`Escape`,scope:`modal`,action:()=>Ge(),when:()=>t},{key:`0`,scope:`modal`,action:()=>{},when:()=>t},{key:`1`,scope:`modal`,action:()=>{},when:()=>t},{key:`2`,scope:`modal`,action:()=>{},when:()=>t},{key:`3`,scope:`modal`,action:()=>{},when:()=>t},{key:`4`,scope:`modal`,action:()=>{},when:()=>t},{key:`5`,scope:`modal`,action:()=>{},when:()=>t},{key:`6`,scope:`modal`,action:()=>{},when:()=>t},{key:`7`,scope:`modal`,action:()=>{},when:()=>t},{key:`8`,scope:`modal`,action:()=>{},when:()=>t},{key:`9`,scope:`modal`,action:()=>{},when:()=>t}]);let le=(0,U.useRef)(null);Er(le,{active:t});let ue=(0,U.useRef)(null),de=(0,U.useRef)(null),fe=(0,U.useRef)(null),pe=(0,U.useRef)(null),he=(0,U.useRef)(null);(0,U.useEffect)(()=>{N&&ue.current?.focus()},[N]),(0,U.useEffect)(()=>{let e=le.current;if(!e)return;for(let t of Array.from(e.children))t instanceof HTMLElement&&(t.classList.contains(`settings-confirm`)||(t.inert=N));let t=e.querySelector(`.modal-body`);t&&(t.inert=N)},[N]),(0,U.useEffect)(()=>{let e=he.current;if(!e||typeof ResizeObserver>`u`)return;let t=()=>se(e.getBoundingClientRect().height);t();let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},[t]);let ge=[..._c.map(e=>({key:e.id,section:e.section,index:[e.label,e.id,e.scopeWord,Hc[e.id]??``].join(` `)})),...wc.filter(e=>e.disposition!==`editable`).map(e=>({key:`manifest:${e.key}`,section:e.section,index:Wc(e)})),...Uc],_e=ne.trim().toLowerCase(),ve=new Set(ge.filter(e=>_e===``||e.index.toLowerCase().includes(_e)).map(e=>e.key)),ye=e=>ge.some(t=>t.section===e&&ve.has(t.key)),B=nc.filter(ye),Se=Ec(fe,B,z+24);if((0,U.useEffect)(()=>{ae&&(Kc(le.current,ae)||de.current?.focus(),oe(null))},[ae]),Ar(t),(0,U.useEffect)(()=>{if(t)return P({type:`INCREMENT_CHROME_OVERLAY`}),()=>P({type:`DECREMENT_CHROME_OVERLAY`})},[t]),!t)return null;let Ce=m.draftOf(`display.tz`),Te=Ce.mode!==`custom`||sc(Ce.custom.trim()),Ee=e=>m.setDraft(`display.tz`,{...Ce,...e}),De=m.draftOf(`alerts.notifier`),Oe=s.command_configured??!1,ke=m.dirtyCount,Ae=e=>_.find(t=>t.target.kind===`leaf`&&t.target.id===e)?.message,je=(e,t)=>{m.setDraft(e,t),v(t=>t.filter(t=>t.key!==e))},Me=e=>{let t=m.issues[e];v(n=>{let r=n.filter(t=>t.key!==e);if(!t)return r;let i=yc(e);return[...r,{key:e,message:`${i?.label??e}: ${t}`,target:{kind:`leaf`,id:e}}]})},Ne=e=>{let t=le.current,n=document.activeElement;t&&n&&n!==pe.current&&t.contains(n)&&pe.current?.focus(),F(e)},H=e=>ve.has(e),Pe=e=>{if(!Kc(le.current,e)){if(e.kind===`leaf`&&!ve.has(e.id)){Ne(``),oe(e);return}if(e.kind===`group`&&!ye(e.section)){Ne(``),oe(e);return}de.current?.focus()}},Fe=e=>{let t=fe.current,n=t?.querySelector(`[data-settings-section="${e}"]`);if(!t||!n)return;let r=t.getBoundingClientRect(),i=n.getBoundingClientRect(),a=Math.max(0,t.scrollHeight-t.clientHeight),s=t.scrollTop+i.top-r.top-16,c=Math.max(0,Math.min(s,a));typeof t.scrollTo==`function`?t.scrollTo({top:c,behavior:o?`auto`:`smooth`}):t.scrollTop=c,n.focus({preventScroll:!0})},Ie=ke===0||h,Le=()=>{h||(te(!1),S(!1),n(!1))},Re=async()=>{let e=m.issues,t=_c.filter(t=>e[t.id]!==void 0);if(t.length>0){v(t.map(t=>({key:t.id,message:`${t.label}: ${e[t.id]}`,target:{kind:`leaf`,id:t.id}}))),Pe({kind:`leaf`,id:t[0].id});return}v([]);let n=m.buildBody();if(Object.keys(n).length>0){g(!0);try{let e=await fetch(`/api/settings`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(n)}),t=await e.json().catch(()=>({}));if(!e.ok){let n=Sc(t.field??`$`),r=t.error??`HTTP ${e.status}`;v([{key:t.field??`$`,message:r,target:n}]),g(!1),Pe(n);return}let r=Cc(t.ignored_fields??[]);if(r.length>0){v(r.map(e=>{let t=Sc(e);return{key:e,message:`The server did not persist ${e}. This dashboard expected to be able to write it, so the two disagree about the settings contract. Set it from the CLI and report the mismatch.`,target:t}})),g(!1),Pe(Sc(r[0]));return}t.dashboard&&P({type:`INGEST_DASHBOARD_PREFS`,prefs:t.dashboard})}catch(e){v([{key:`$`,message:e instanceof Error?e.message:`unknown error`,target:{kind:`form`}}]),g(!1),Pe({kind:`form`});return}g(!1)}for(let e of m.localActions())P(e);if(m.isDirty(`dashboard.lan_auth`)){S(!0);return}Le()},ze=()=>{let e=be();je(`prefs.sortDefault`,e.sortDefault),je(`prefs.sessionsPerPage`,String(e.sessionsPerPage)),je(`prefs.filterText`,``)},Be=be(),Ve=m.draftOf(`prefs.sessionsPerPage`),He=m.draftOf(`prefs.sortDefault`)===Be.sortDefault&&Ve.trim()===String(Be.sessionsPerPage)&&m.draftOf(`prefs.filterText`)===``,Ue=!!r.trendSortOverride||!!r.sessionsSortOverride||!!r.projectsSortOverride||!!r.historySortOverrides.week||!!r.historySortOverrides.month,We=r.panelOrder.length===e.length&&r.panelOrder.every((t,n)=>t===e[n]),Ge=()=>{if(!h){if(N){te(!1);return}if(ke>0){te(!0);return}Le()}},Ke=e=>e?(0,W.jsxs)(`span`,{className:`fs-changed`,"aria-hidden":`true`,children:[` `,`●`]}):null,qe=(...e)=>e.some(e=>m.isDirty(e)),Je=m.isDirty(`display.tz`),Ye=m.isDirty(`alerts.notifier`),Xe=qe(`alerts.enabled`,`alerts.projected_enabled`,`alerts.rate_change_enabled`,`budget.weekly_usd`,`budget.projected_enabled`,`budget.project_alerts_enabled`),Ze=qe(`budget.codex.alerts_enabled`,`budget.codex.projected_enabled`),Qe=qe(`dashboard.cache_failure_markers`,`dashboard.live_tail`),$e=m.isDirty(`dashboard.lan_auth`),et=m.isDirty(`update.channel`),tt=m.isDirty(`prefs.sortDefault`),nt=m.isDirty(`prefs.sessionsPerPage`),rt=m.isDirty(`prefs.filterText`),it=qe(`restore.tableSort`,`restore.cardOrder`),at=h?y>=3?`Still saving and refreshing… ${y}s elapsed. A large history can make this take a while; the dashboard is not stuck.`:``:ke===0?``:`${ke} unsaved change${ke===1?``:`s`}.`,G=e=>e===`browser`?(0,W.jsx)(`span`,{className:`settings-scope`,children:` (this browser)`}):(0,W.jsx)(`span`,{className:`sr-only`,children:` Scope: this machine.`}),ot=e=>(0,W.jsx)(`code`,{className:`settings-key`,children:e}),st=e=>(0,W.jsxs)(`div`,{className:`settings-disclosure`,children:[(0,W.jsxs)(`p`,{className:`settings-disclosure-label`,children:[e.label,` `,ot(e.key),G(`machine`)]}),(0,W.jsxs)(`p`,{className:`settings-hint`,children:[e.reason,e.acceptedThenDiscarded?` The dashboard accepts this key on a save and deliberately does not store it.`:``]}),(0,W.jsxs)(`p`,{className:`settings-hint`,children:[`Default: `,(0,W.jsx)(`code`,{children:e.defaultText})]}),(0,W.jsxs)(`p`,{className:`settings-command`,children:[`Run: `,(0,W.jsx)(`code`,{children:e.command})]})]},e.key),ct=e=>wc.filter(t=>t.section===e&&t.disposition!==`editable`&&H(`manifest:${t.key}`)).map(st),lt=(e,t)=>(0,W.jsxs)(`h3`,{className:`settings-section-title`,id:`settings-h-${e}`,"data-settings-section":e,tabIndex:-1,children:[rc[e],t&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`fs-changed`,"aria-hidden":`true`,children:` ●`}),(0,W.jsx)(`span`,{className:`sr-only`,children:` (has unsaved changes)`})]})]}),K=B.map(e=>({id:e,title:rc[e],dirty:m.sectionDirty(e)})),ut=m.dirtyIds.filter(e=>!ve.has(e)),dt=ge.length,ft=e=>{let t=e.trim().toLowerCase(),n=ge.filter(e=>t===``||e.index.toLowerCase().includes(t)).length;return t===``?`${dt} settings`:`${n} of ${dt} settings match “${e.trim()}”`},pt=ft(ne),mt=ft(re);return(0,W.jsxs)(`div`,{id:`settings-root`,children:[(0,W.jsx)(`div`,{className:`modal-backdrop`,onClick:Ge}),(0,W.jsxs)(`div`,{ref:le,className:`modal-card accent-orange settings-card`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`settings-title`,tabIndex:-1,children:[(0,W.jsx)(Xs,{title:`Settings`,titleId:`settings-title`,onClose:Le,closeDisabled:h}),(0,W.jsxs)(`div`,{className:`settings-chrome`,children:[(0,W.jsxs)(`div`,{className:`settings-search`,role:`search`,children:[(0,W.jsx)(`label`,{htmlFor:`settings-filter`,children:`Find a setting`}),(0,W.jsx)(`input`,{ref:pe,id:`settings-filter`,type:`search`,value:ne,"aria-controls":`settings-scroller`,"aria-describedby":`settings-filter-count`,placeholder:`name, key path, or “browser”`,onChange:e=>Ne(e.target.value)})]}),(0,W.jsx)(`p`,{className:`settings-filter-count`,id:`settings-filter-count`,children:pt}),(0,W.jsx)(`p`,{className:`settings-filter-announcement sr-only`,"aria-live":`polite`,"aria-atomic":`true`,children:mt}),ut.length>0&&(0,W.jsxs)(`p`,{className:`settings-hidden-dirty`,children:[ut.length===1?`1 unsaved change is hidden by this filter.`:`${ut.length} unsaved changes are hidden by this filter.`,` `,(0,W.jsx)(`button`,{type:`button`,className:`settings-link-btn`,onClick:()=>Ne(``),children:`Show all settings`})]})]}),(0,W.jsxs)(`div`,{className:`settings-main`,children:[(0,W.jsx)(Tc,{sections:K,activeId:Se,onJump:Fe}),(0,W.jsxs)(`div`,{className:`modal-body`,id:`settings-scroller`,ref:fe,children:[B.length===0&&(0,W.jsxs)(`p`,{className:`settings-empty`,children:[`No setting matches “`,ne.trim(),`”. Try a shorter word, a dotted key path such as `,(0,W.jsx)(`code`,{children:`budget.weekly_usd`}),`, or`,` `,(0,W.jsx)(`button`,{type:`button`,className:`settings-link-btn`,onClick:()=>Ne(``),children:`show all settings`}),`.`]}),ye(`display`)&&(0,W.jsxs)(`section`,{className:`settings-section`,"aria-labelledby":`settings-h-display`,children:[lt(`display`,m.sectionDirty(`display`)),H(`display.tz`)&&(0,W.jsxs)(`fieldset`,{className:`settings-fs${Je?` is-changed`:``}`,children:[(0,W.jsxs)(`legend`,{children:[`Display timezone `,ot(`display.tz`),G(`machine`),Ke(Je)]}),a.pinned&&(0,W.jsx)(`small`,{children:`Pinned by --tz flag — restart the server without --tz to change here.`}),(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`radio`,name:`tz-mode`,value:`local`,checked:Ce.mode===`local`,onChange:()=>Ee({mode:`local`}),disabled:a.pinned}),` `,`Local (`,a.resolvedTz,`)`]}),(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`radio`,name:`tz-mode`,value:`utc`,checked:Ce.mode===`utc`,onChange:()=>Ee({mode:`utc`}),disabled:a.pinned}),` `,`UTC`]}),(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`radio`,name:`tz-mode`,value:`custom`,checked:Ce.mode===`custom`,onChange:()=>Ee({mode:`custom`}),disabled:a.pinned}),` `,`Custom`]}),(0,W.jsx)(`label`,{htmlFor:`settings-tz-custom`,children:`Custom zone`}),(0,W.jsx)(`input`,{id:`settings-tz-custom`,type:`text`,"data-settings-field":`display.tz`,value:Ce.custom,onChange:e=>Ee({custom:e.target.value}),onBlur:()=>Me(`display.tz`),disabled:Ce.mode!==`custom`||a.pinned,placeholder:`America/New_York`,"aria-invalid":Ae(`display.tz`)!==void 0}),Ce.mode===`custom`&&Ce.custom.trim()&&Te&&(0,W.jsxs)(`small`,{children:[`resolves to: `,Q(Ce.custom.trim())]})]}),ct(`display`)]}),ye(`sessions`)&&(0,W.jsxs)(`section`,{className:`settings-section`,"aria-labelledby":`settings-h-sessions`,children:[lt(`sessions`,m.sectionDirty(`sessions`)),H(`prefs.sortDefault`)&&(0,W.jsxs)(`fieldset`,{className:`settings-fs${tt?` is-changed`:``}`,children:[(0,W.jsxs)(`legend`,{children:[`Sort default`,G(`browser`),Ke(tt)]}),me.map(({key:e,label:t})=>(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`radio`,name:`sort-default`,value:e,"data-settings-field":e===me[0].key?`prefs.sortDefault`:void 0,checked:m.draftOf(`prefs.sortDefault`)===e,onChange:()=>je(`prefs.sortDefault`,e)}),` `,t]},e))]}),H(`prefs.filterText`)&&(0,W.jsxs)(`fieldset`,{className:`settings-fs${rt?` is-changed`:``}`,children:[(0,W.jsxs)(`legend`,{children:[`Remembered filter term`,G(`browser`),Ke(rt)]}),(0,W.jsx)(`label`,{htmlFor:`settings-filter-term`,children:`Remembered filter term`}),(0,W.jsx)(`input`,{id:`settings-filter-term`,type:`text`,placeholder:`(none)`,"data-settings-field":`prefs.filterText`,value:m.draftOf(`prefs.filterText`),onChange:e=>je(`prefs.filterText`,e.target.value)})]}),H(`prefs.sessionsPerPage`)&&(0,W.jsxs)(`fieldset`,{className:`settings-fs${nt?` is-changed`:``}`,children:[(0,W.jsxs)(`legend`,{children:[`Sessions per page`,G(`browser`),Ke(nt)]}),(0,W.jsx)(`label`,{htmlFor:`settings-per-page`,children:`Sessions per page`}),(0,W.jsx)(`input`,{id:`settings-per-page`,type:`number`,min:10,max:1e3,"data-settings-field":`prefs.sessionsPerPage`,value:Ve,onChange:e=>je(`prefs.sessionsPerPage`,e.target.value),onBlur:()=>Me(`prefs.sessionsPerPage`),"aria-invalid":Ae(`prefs.sessionsPerPage`)!==void 0})]}),ct(`sessions`)]}),ye(`alerts`)&&(0,W.jsxs)(`section`,{className:`settings-section`,"aria-labelledby":`settings-h-alerts`,children:[lt(`alerts`,m.sectionDirty(`alerts`)),H(`alerts.notifier`)&&(0,W.jsxs)(`fieldset`,{className:`settings-fs${Ye?` is-changed`:``}`,children:[(0,W.jsxs)(`legend`,{children:[`Notifications `,ot(`alerts.notifier`),G(`machine`),Ke(Ye)]}),(0,W.jsxs)(`label`,{children:[`Notifier`,` `,(0,W.jsxs)(`select`,{className:`settings-btn settings-select`,value:De,"aria-label":`Alert notifier`,"data-settings-field":`alerts.notifier`,onChange:e=>je(`alerts.notifier`,e.target.value),children:[(0,W.jsx)(`option`,{value:`auto`,children:`Auto-detect`}),(0,W.jsx)(`option`,{value:`osascript`,children:`macOS (osascript)`}),(0,W.jsx)(`option`,{value:`notify-send`,children:`Linux (notify-send)`}),(0,W.jsxs)(`option`,{value:`command`,disabled:!Oe,children:[`Custom command`,Oe?``:` (set via CLI)`]}),(0,W.jsx)(`option`,{value:`none`,children:`None (log only)`})]})]}),Oe&&(0,W.jsx)(`p`,{className:`settings-hint`,children:`Custom command configured (edit via CLI).`}),(0,W.jsx)(`p`,{className:`settings-hint`,children:`The notifier backend applies to all alert dispatches (Claude and Codex).`})]}),(H(`alerts.enabled`)||H(`alerts.projected_enabled`)||H(`budget.weekly_usd`)||H(`budget.projected_enabled`)||H(`budget.project_alerts_enabled`))&&(0,W.jsxs)(`fieldset`,{className:`settings-fs${Xe?` is-changed`:``}`,children:[(0,W.jsxs)(`legend`,{children:[`Claude alerts`,G(`machine`),Ke(Xe)]}),H(`alerts.enabled`)&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`checkbox`,name:`alerts-enabled`,"data-settings-field":`alerts.enabled`,checked:m.draftOf(`alerts.enabled`),onChange:e=>je(`alerts.enabled`,e.target.checked)}),` `,`Enable threshold alerts `,ot(`alerts.enabled`)]}),(0,W.jsxs)(`p`,{className:`alerts-summary settings-hint`,children:[`Weekly: `,s.weekly_thresholds.map(e=>`${e}%`).join(`, `),` · `,`5h-block:`,` `,s.five_hour_thresholds.map(e=>`${e}%`).join(`, `),` · `,`Budget:`,` `,(s.budget_thresholds??[]).map(e=>`${e}%`).join(`, `)||`—`]})]}),H(`alerts.projected_enabled`)&&(0,W.jsxs)(`div`,{className:`settings-subgroup`,children:[(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`checkbox`,name:`projected-weekly-enabled`,"data-settings-field":`alerts.projected_enabled`,checked:m.draftOf(`alerts.projected_enabled`),onChange:e=>je(`alerts.projected_enabled`,e.target.checked)}),` `,`Projected weekly-% pace alerts `,ot(`alerts.projected_enabled`),G(`machine`)]}),(0,W.jsx)(`p`,{className:`settings-hint`,children:`Pace is where the week is heading if the last day's rate continues to the reset.`})]}),H(`alerts.rate_change_enabled`)&&(0,W.jsxs)(`div`,{className:`settings-subgroup`,children:[(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`checkbox`,name:`rate-change-enabled`,"data-settings-field":`alerts.rate_change_enabled`,checked:m.draftOf(`alerts.rate_change_enabled`),onChange:e=>je(`alerts.rate_change_enabled`,e.target.checked)}),` `,`Metering-rate-change notifications`,` `,ot(`alerts.rate_change_enabled`),G(`machine`)]}),(0,W.jsx)(`p`,{className:`settings-hint`,children:`The change is recorded either way and every view shows it. This decides whether it also notifies.`})]}),(H(`budget.weekly_usd`)||H(`budget.projected_enabled`)||H(`budget.project_alerts_enabled`))&&(0,W.jsxs)(`div`,{className:`settings-subgroup`,role:`group`,"aria-label":`Claude budget alerts`,children:[(0,W.jsx)(`p`,{className:`settings-subgroup-label`,children:`Claude budget`}),(0,W.jsx)(`p`,{className:`settings-hint`,children:`Fire when a configured budget's pace or spend crosses a threshold.`}),H(`budget.weekly_usd`)&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`label`,{htmlFor:`settings-weekly-budget`,children:[`Weekly budget (equivalent $) `,ot(`budget.weekly_usd`),G(`machine`)]}),(0,W.jsx)(`input`,{id:`settings-weekly-budget`,type:`text`,inputMode:`decimal`,"data-settings-field":`budget.weekly_usd`,value:m.draftOf(`budget.weekly_usd`),onChange:e=>je(`budget.weekly_usd`,e.target.value),onBlur:()=>Me(`budget.weekly_usd`),placeholder:`none`,"aria-invalid":Ae(`budget.weekly_usd`)!==void 0,"aria-describedby":`settings-weekly-budget-help`}),(0,W.jsx)(`p`,{className:`settings-hint`,id:`settings-weekly-budget-help`,children:`Claude's figure is EQUIVALENT dollars — what the same usage would have cost on the API, not a charge. Leave blank for no budget.`}),s.weekly_usd===null&&(0,W.jsx)(`p`,{className:`settings-hint`,children:`No Claude budget is set, so the two budget alerts below cannot fire yet. Enter an amount in the field above.`})]}),H(`budget.projected_enabled`)&&(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`checkbox`,name:`projected-budget-enabled`,"data-settings-field":`budget.projected_enabled`,checked:m.draftOf(`budget.projected_enabled`),onChange:e=>je(`budget.projected_enabled`,e.target.checked)}),` `,`Projected budget-$ pace alerts `,ot(`budget.projected_enabled`),G(`machine`)]}),H(`budget.project_alerts_enabled`)&&(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`checkbox`,name:`project-alerts-enabled`,"data-settings-field":`budget.project_alerts_enabled`,checked:m.draftOf(`budget.project_alerts_enabled`),onChange:e=>je(`budget.project_alerts_enabled`,e.target.checked)}),` `,`Per-project budget alerts `,ot(`budget.project_alerts_enabled`),G(`machine`)]})]})]}),(H(`budget.codex.alerts_enabled`)||H(`budget.codex.projected_enabled`))&&(0,W.jsxs)(`fieldset`,{className:`settings-fs${Ze?` is-changed`:``}`,children:[(0,W.jsxs)(`legend`,{children:[`Codex alerts`,G(`machine`),Ke(Ze)]}),(0,W.jsxs)(`div`,{className:`settings-subgroup`,role:`group`,"aria-label":`Codex budget alerts`,children:[(0,W.jsx)(`p`,{className:`settings-subgroup-label`,children:`Codex budget`}),(0,W.jsx)(`p`,{className:`settings-hint`,children:`Codex's figure is ACTUAL API charges, unlike Claude's equivalent-dollar budget above.`}),H(`budget.codex.alerts_enabled`)&&(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`checkbox`,name:`codex-budget-alerts-enabled`,"data-settings-field":`budget.codex.alerts_enabled`,checked:m.draftOf(`budget.codex.alerts_enabled`),disabled:!s.codex_budget_configured,onChange:e=>je(`budget.codex.alerts_enabled`,e.target.checked)}),` `,`Codex budget alerts `,ot(`budget.codex.alerts_enabled`),G(`machine`)]}),H(`budget.codex.projected_enabled`)&&(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`checkbox`,name:`codex-projected-enabled`,"data-settings-field":`budget.codex.projected_enabled`,checked:m.draftOf(`budget.codex.projected_enabled`),disabled:!s.codex_budget_configured,onChange:e=>je(`budget.codex.projected_enabled`,e.target.checked)}),` `,`Codex projected-pace alerts `,ot(`budget.codex.projected_enabled`),G(`machine`)]}),!s.codex_budget_configured&&(0,W.jsxs)(`p`,{className:`settings-hint`,children:[`Set a Codex budget via the CLI first:`,` `,(0,W.jsx)(`code`,{children:`cctally budget set 200 --vendor codex`})]})]}),(0,W.jsxs)(`p`,{className:`settings-hint`,children:[`Codex quota-threshold alert rules are not configurable here — manage them via the CLI (`,(0,W.jsx)(`code`,{children:`cctally codex quota …`}),`).`]})]}),H(`action.test`)&&(0,W.jsxs)(`fieldset`,{className:`settings-fs settings-fs-subordinate`,children:[(0,W.jsx)(`legend`,{children:`Send a test alert`}),(0,W.jsxs)(`div`,{className:`alerts-test-row`,children:[(0,W.jsxs)(`label`,{children:[`Alert type`,` `,(0,W.jsx)(`select`,{className:`settings-btn settings-select`,value:O,disabled:C,"aria-label":`Alert type`,onChange:e=>k(e.target.value),children:Object.keys(c).map(e=>(0,W.jsx)(`option`,{value:e,children:c[e]},e))})]}),` `,O===`projected`&&(0,W.jsxs)(`label`,{children:[`Metric`,` `,(0,W.jsx)(`select`,{className:`settings-btn settings-select`,value:A,disabled:C,"aria-label":`Metric`,onChange:e=>M(e.target.value),children:Object.keys(Vc).map(e=>(0,W.jsx)(`option`,{value:e,children:Vc[e]},e))})]}),` `,(0,W.jsx)(`button`,{className:`settings-btn`,type:`button`,disabled:C,onClick:async()=>{w(!0),E(null),ee(!1);try{let e=await fetch(`/api/alerts/test`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({axis:O,threshold:90,...O===`projected`?{metric:A}:{}})}),t=await e.json().catch(()=>({}));t.alert&&P({type:`SHOW_ALERT_TOAST`,alert:t.alert}),t.dispatch===`queued`?ee(!0):E(t.dispatch??t.reason??`HTTP ${e.status}`)}catch(e){E(e instanceof Error?e.message:`unknown error`)}w(!1)},children:C?`Sending…`:`Send test alert`}),(0,W.jsx)(`p`,{className:`settings-hint`,children:`Sends a synthetic alert through the dispatch pipeline so you can verify the toast and log path. It does not write to the database, does not update the Recent alerts panel, and works whether or not threshold alerts are enabled.`})]})]}),ct(`alerts`)]}),ye(`viewer`)&&(0,W.jsxs)(`section`,{className:`settings-section`,"aria-labelledby":`settings-h-viewer`,children:[lt(`viewer`,m.sectionDirty(`viewer`)),(H(`dashboard.cache_failure_markers`)||H(`dashboard.live_tail`))&&(0,W.jsxs)(`fieldset`,{className:`settings-fs${Qe?` is-changed`:``}`,children:[(0,W.jsxs)(`legend`,{children:[`Conversation viewer`,G(`machine`),Ke(Qe)]}),H(`dashboard.cache_failure_markers`)&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`checkbox`,name:`cache-failure-markers`,"data-settings-field":`dashboard.cache_failure_markers`,checked:m.draftOf(`dashboard.cache_failure_markers`),onChange:e=>je(`dashboard.cache_failure_markers`,e.target.checked)}),` `,`Show cache-failure markers `,ot(`dashboard.cache_failure_markers`),G(`machine`)]}),(0,W.jsx)(`p`,{className:`settings-hint`,children:`Marks assistant turns that re-created the bulk of their cached prefix instead of reading it (a cost inefficiency, usually after an idle gap past the cache TTL). On by default.`})]}),H(`dashboard.live_tail`)&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`checkbox`,name:`live-tail`,"data-settings-field":`dashboard.live_tail`,checked:m.draftOf(`dashboard.live_tail`),onChange:e=>je(`dashboard.live_tail`,e.target.checked)}),` `,`Live-tail new turns `,ot(`dashboard.live_tail`),G(`machine`)]}),(0,W.jsx)(`p`,{className:`settings-hint`,children:`Fetch new turns the instant the session's file changes (instead of waiting for the periodic refresh). On by default.`})]})]}),ct(`viewer`)]}),ye(`access`)&&(0,W.jsxs)(`section`,{className:`settings-section`,"aria-labelledby":`settings-h-access`,children:[lt(`access`,m.sectionDirty(`access`)),H(`dashboard.lan_auth`)&&(0,W.jsxs)(`fieldset`,{className:`settings-fs${$e?` is-changed`:``}`,children:[(0,W.jsxs)(`legend`,{children:[`Dashboard access`,G(`machine`),Ke($e)]}),(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`checkbox`,name:`lan-auth`,"data-settings-field":`dashboard.lan_auth`,checked:m.draftOf(`dashboard.lan_auth`),onChange:e=>{je(`dashboard.lan_auth`,e.target.checked),S(!1)}}),` `,`Require LAN access token `,ot(`dashboard.lan_auth`),G(`machine`)]}),(0,W.jsx)(`p`,{className:`settings-hint`,children:`Protects API and live-update traffic on non-loopback binds. Changes take effect only after restarting the dashboard; this running dashboard keeps its current access mode.`})]}),H(`update.channel`)&&(0,W.jsxs)(`fieldset`,{className:`settings-fs${et?` is-changed`:``}`,children:[(0,W.jsxs)(`legend`,{children:[`Update channel `,ot(`update.channel`),G(`machine`),Ke(et)]}),(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`radio`,name:`update-channel`,value:`stable`,"data-settings-field":`update.channel`,checked:m.draftOf(`update.channel`)===`stable`,onChange:()=>je(`update.channel`,`stable`)}),` `,`Stable`]}),(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`radio`,name:`update-channel`,value:`beta`,checked:m.draftOf(`update.channel`)===`beta`,onChange:()=>je(`update.channel`,`beta`)}),` `,`Beta`]}),(0,W.jsxs)(`p`,{className:`settings-hint`,children:[`Beta receives every release as it ships; stable only the maintainer-promoted ones.`,p===`brew`?` This install came from Homebrew, which always tracks stable.`:``]})]}),ct(`access`)]}),ye(`restore`)&&(0,W.jsxs)(`section`,{className:`settings-section`,"aria-labelledby":`settings-h-restore`,children:[lt(`restore`,m.sectionDirty(`restore`)),(0,W.jsxs)(`fieldset`,{className:`settings-fs${it?` is-changed`:``}`,children:[(0,W.jsxs)(`legend`,{children:[`Restore defaults`,G(`browser`),Ke(it)]}),H(`restore.viewPrefs`)&&(0,W.jsxs)(`div`,{className:`settings-restore-row settings-restore-immediate`,children:[(0,W.jsx)(`button`,{className:`settings-btn`,type:`button`,onClick:ze,disabled:He,children:`Restore view preferences`}),(0,W.jsx)(`p`,{className:`settings-hint`,children:`Fills the three Recent Sessions fields with their defaults right now; nothing is stored until you Save.`})]}),H(`restore.tableSort`)&&(0,W.jsxs)(`div`,{className:`settings-restore-row`,children:[(0,W.jsx)(`button`,{className:`settings-btn`,type:`button`,"aria-pressed":m.staged(`restore.tableSort`),onClick:()=>m.toggleStaged(`restore.tableSort`),disabled:!Ue&&!m.staged(`restore.tableSort`),children:m.staged(`restore.tableSort`)?`Table column sorting — staged ✓`:`Table column sorting`}),(0,W.jsx)(`p`,{className:`settings-hint`,children:`Clears $/1% Trend, Recent Sessions, Projects & Weekly/Monthly column-click sorting on Save.`})]}),H(`restore.cardOrder`)&&(0,W.jsxs)(`div`,{className:`settings-restore-row`,children:[(0,W.jsx)(`button`,{className:`settings-btn`,type:`button`,"aria-pressed":m.staged(`restore.cardOrder`),onClick:()=>m.toggleStaged(`restore.cardOrder`),disabled:We&&!m.staged(`restore.cardOrder`),children:m.staged(`restore.cardOrder`)?`Card order — staged ✓`:`Card order`}),(0,W.jsx)(`p`,{className:`settings-hint`,children:`Restores the default panel arrangement on Save.`})]})]}),ct(`restore`)]}),ye(`cli`)&&(0,W.jsxs)(`section`,{className:`settings-section`,"aria-labelledby":`settings-h-cli`,children:[lt(`cli`,!1),(0,W.jsx)(`p`,{className:`settings-hint`,children:`These keys govern surfaces this dashboard does not render, so they are set from the CLI. Each row states the exact command.`}),ct(`cli`)]})]})]}),(0,W.jsxs)(`div`,{className:`settings-feedback`,children:[h&&(0,W.jsx)(`div`,{className:`settings-saving-bar`,"aria-hidden":`true`}),(0,W.jsx)(`p`,{className:`settings-status`,role:`status`,"aria-live":`polite`,"aria-atomic":`true`,children:at}),D&&(0,W.jsx)(`p`,{className:`settings-ok`,children:`Test alert dispatched ✓`}),x&&(0,W.jsx)(`p`,{className:`settings-ok`,children:`Saved. Restart the dashboard to apply LAN access authentication.`}),(0,W.jsxs)(`div`,{ref:de,className:`settings-error-summary${_.length>0||T?` is-populated`:``}`,role:`alert`,"aria-live":`assertive`,tabIndex:-1,children:[T&&(0,W.jsxs)(`p`,{className:`settings-error-title`,children:[`Test failed: `,T]}),_.length>0&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`p`,{className:`settings-error-title`,children:_.length===1?`1 problem to fix`:`${_.length} problems to fix`}),(0,W.jsx)(`ul`,{className:`settings-error-list`,children:_.map(e=>(0,W.jsx)(`li`,{children:(0,W.jsx)(`button`,{type:`button`,className:`settings-error-link`,onClick:()=>Pe(e.target),children:e.message})},e.key))})]})]})]}),(0,W.jsxs)(`div`,{className:`settings-actions`,ref:he,children:[(0,W.jsx)(`button`,{className:`settings-btn`,id:`settings-save`,type:`button`,onClick:Re,disabled:Ie,children:h?`Saving…`:ke===0?`Save`:`Save · ${ke} change${ke===1?``:`s`}`}),(0,W.jsx)(`button`,{className:`settings-btn`,type:`button`,onClick:Le,disabled:h,children:`Cancel`}),(0,W.jsxs)(`p`,{className:`settings-scope-note`,children:[`Changes apply to this machine unless marked `,(0,W.jsx)(`em`,{children:`this browser`}),`.`]})]}),N&&(0,W.jsx)(`div`,{className:`settings-confirm`,role:`alertdialog`,"aria-modal":`true`,"aria-labelledby":`settings-confirm-title`,children:(0,W.jsxs)(`div`,{className:`settings-confirm-card`,children:[(0,W.jsxs)(`p`,{id:`settings-confirm-title`,children:[`Discard `,ke,` unsaved change`,ke===1?``:`s`,`?`]}),(0,W.jsxs)(`div`,{className:`settings-confirm-actions`,children:[(0,W.jsx)(`button`,{ref:ue,className:`settings-btn`,type:`button`,onClick:()=>te(!1),children:`Keep editing`}),(0,W.jsx)(`button`,{className:`settings-btn settings-btn-danger`,type:`button`,onClick:Le,children:`Discard`})]})]})})]})]})}var Jc=8e3,Yc=`New: hold any card to rearrange the dashboard.`,Xc=`Tap to drill in · long-press to rearrange · ⟳ to refresh`;function Zc({suppressed:e=!1}={}){let t=Pn(),n=(0,U.useSyncExternalStore)(V,()=>L().prefs.onboardingToastSeen),r=(0,U.useSyncExternalStore)(V,()=>L().prefs.mobileOnboardingToastSeen),i=t?r:n,a=t?`MARK_MOBILE_ONBOARDING_TOAST_SEEN`:`MARK_ONBOARDING_TOAST_SEEN`,o=t?Xc:Yc;return(0,U.useEffect)(()=>{if(i)return;let e=setTimeout(()=>P({type:a}),Jc);return()=>clearTimeout(e)},[i,a]),i?null:(0,W.jsxs)(`div`,{className:`onboarding-toast`,role:`status`,"aria-live":`polite`,hidden:e,children:[(0,W.jsx)(`span`,{className:`onboarding-toast-msg`,children:o}),(0,W.jsx)(Ys,{onClose:()=>P({type:a}),label:`Dismiss`,className:`onboarding-toast-dismiss`})]})}function Qc({alert:e,env:t,onFollow:n}){let r=Oa(e,t,ma(t));if(!r.available||r.target==null){let e=r.explainTarget;return(0,W.jsxs)(`span`,{className:`alert-row-unresolved`,children:[(0,W.jsx)(`span`,{className:`alert-row-withheld`,children:r.withheldReason}),e==null?null:(0,W.jsx)(`button`,{type:`button`,className:`alert-row-explain`,onClick:t=>{t.stopPropagation(),Fa(e),n?.()},children:e.label})]})}let i=r.target;return(0,W.jsx)(`button`,{type:`button`,className:`alert-row-open`,onClick:e=>{e.stopPropagation(),Fa(i),n?.()},children:i.label})}function $c(e){return`source`in e?e:{...e,source:`claude`,key:e.id}}var el=2500,tl=8e3;function nl({alert:e,ctx:t}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`div`,{className:`toast--alert-title`,children:e.axis===`projected`?(0,W.jsxs)(W.Fragment,{children:[c.projected,` to reach `,e.threshold,`%`]}):e.axis===`project_budget`?(0,W.jsxs)(W.Fragment,{children:[e.context.project??`Project`,` budget `,e.threshold,`% reached`]}):e.axis===`codex_budget`?(0,W.jsxs)(W.Fragment,{children:[c.codex_budget,` `,e.threshold,`% reached`]}):(0,W.jsxs)(W.Fragment,{children:[c[e.axis],` usage `,e.threshold,`% reached`]})}),e.context.week_start_date&&(0,W.jsxs)(`div`,{className:`toast--alert-sub`,children:[`Week starting `,B.weekStart(e.context.week_start_date,t)??`—`]}),e.context.block_start_at&&(0,W.jsxs)(`div`,{className:`toast--alert-sub`,children:[`Block started `,B.timeOnly(e.context.block_start_at,t)]}),(e.axis===`budget`||e.axis===`project_budget`||e.axis===`codex_budget`)&&(e.context.period_start_at??e.context.week_start_at)&&(0,W.jsxs)(`div`,{className:`toast--alert-sub`,children:[y(e.context.period),` starting`,` `,B.weekStart((e.context.period_start_at??e.context.week_start_at??``).slice(0,10),t)??`—`]}),(0,W.jsxs)(`div`,{className:`toast--alert-body`,children:[e.context.cumulative_cost_usd!=null&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`span`,{className:`num`,children:[`$`,e.context.cumulative_cost_usd.toFixed(2)]}),` spent`,e.context.dollars_per_percent!=null&&(0,W.jsxs)(W.Fragment,{children:[` `,`·`,` `,(0,W.jsxs)(`span`,{className:`num`,children:[`$`,e.context.dollars_per_percent.toFixed(2)]}),` per 1%`]})]}),e.context.block_cost_usd!=null&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`span`,{className:`num`,children:[`$`,e.context.block_cost_usd.toFixed(2)]}),` in this block`,e.context.primary_model&&(0,W.jsxs)(W.Fragment,{children:[` · model: `,e.context.primary_model]})]}),(e.axis===`budget`||e.axis===`codex_budget`)&&e.context.spent_usd!=null&&e.context.budget_usd!=null&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`span`,{className:`num`,children:[`$`,e.context.spent_usd.toFixed(2)]}),` of`,` `,(0,W.jsxs)(`span`,{className:`num`,children:[`$`,e.context.budget_usd.toFixed(2)]}),` budget`]}),e.axis===`projected`&&(0,W.jsx)(`span`,{className:`num`,children:ue(e)??`—`}),e.axis===`project_budget`&&e.context.spent_usd!=null&&e.context.budget_usd!=null&&(0,W.jsxs)(W.Fragment,{children:[e.context.project&&(0,W.jsxs)(W.Fragment,{children:[e.context.project,`: `]}),(0,W.jsxs)(`span`,{className:`num`,children:[`$`,e.context.spent_usd.toFixed(2)]}),` of`,` `,(0,W.jsxs)(`span`,{className:`num`,children:[`$`,e.context.budget_usd.toFixed(2)]}),` budget`]})]})]})}function rl({row:e}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`div`,{className:`toast--alert-title`,children:e.axis===`quota`?`Codex quota ${e.threshold}% reached`:e.axis===`projected`?`Codex projected to reach ${e.threshold}%`:`Codex budget ${e.threshold}% reached`}),e.axis!==`quota`&&(0,W.jsxs)(`div`,{className:`toast--alert-body`,children:[(0,W.jsxs)(`span`,{className:`num`,children:[Math.round(e.value),`%`]}),` of budget`]})]})}function il({entry:e,onDismiss:t}){let n=Qa(e.previous_units_per_point,e.new_units_per_point),r=e.provider?e.provider.charAt(0).toUpperCase()+e.provider.slice(1):`Provider`;return(0,W.jsxs)(`div`,{className:`toast toast--alert toast--severity-${e.severity}`,role:`alert`,onClick:t,"data-testid":`toast-meter-rate-change`,children:[(0,W.jsxs)(`div`,{className:`toast--alert-head`,children:[(0,W.jsx)(`span`,{className:`chip chip-rate-change`,children:`metering rate`}),(0,W.jsx)(`span`,{className:`source-chip source-chip--${e.provider}`,children:r}),(0,W.jsx)(`span`,{className:`toast--alert-dismiss-hint`,children:`click to dismiss`})]}),(0,W.jsxs)(`div`,{className:`toast--alert-title`,children:[r,` metering rate changed`]}),n&&(0,W.jsx)(`div`,{className:`toast--alert-sub`,children:n}),(0,W.jsxs)(`div`,{className:`toast--alert-body`,children:[`Run `,(0,W.jsx)(`code`,{children:`cctally quota`}),` for the evidence behind this change.`]})]})}function al(){let e=(0,U.useSyncExternalStore)(V,()=>L().toast),t=En(),n=In(),r={tz:n.resolvedTz,offsetLabel:n.offsetLabel};(0,U.useEffect)(()=>{if(e==null)return;let t=e.kind===`alert`?tl:el,n=window.setTimeout(()=>P({type:`HIDE_TOAST`}),t);return()=>window.clearTimeout(n)},[e]);let i=e?.kind===`alert`?e.payload:null,a=i&&ge(i)?i:null,o=i!=null&&!ge(i)?$c(i):null,s=o?ne(o):null;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(Zc,{suppressed:e!=null}),e?.kind===`status`&&(0,W.jsx)(`div`,{className:`toast`,role:`status`,"aria-live":`polite`,children:e.text}),a&&(0,W.jsx)(il,{entry:a,onDismiss:()=>P({type:`HIDE_TOAST`})}),o&&s&&(0,W.jsxs)(`div`,{className:`toast toast--alert toast--severity-${s.severity}`,role:`alert`,onClick:()=>P({type:`HIDE_TOAST`}),children:[(0,W.jsxs)(`div`,{className:`toast--alert-head`,children:[(0,W.jsx)(`span`,{className:`chip ${s.chipClass}`,children:s.chipLabel}),(0,W.jsx)(`span`,{className:`source-chip source-chip--${s.source}`,children:s.sourceLabel}),(0,W.jsxs)(`span`,{className:`toast--alert-threshold num`,children:[s.threshold,`%`]}),(0,W.jsx)(`span`,{className:`toast--alert-dismiss-hint`,children:`click to dismiss`})]}),o.source===`claude`?(0,W.jsx)(nl,{alert:o,ctx:r}):(0,W.jsx)(rl,{row:o}),o.source===`claude`&&(0,W.jsx)(`div`,{className:`toast--alert-follow`,children:(0,W.jsx)(Qc,{alert:o,env:t,onFollow:()=>P({type:`HIDE_TOAST`})})})]})]})}var ol=_(H());function sl(){var e=[...arguments];return(0,U.useMemo)(()=>t=>{e.forEach(e=>e(t))},e)}var cl=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;function ll(e){let t=Object.prototype.toString.call(e);return t===`[object Window]`||t===`[object global]`}function ul(e){return`nodeType`in e}function dl(e){return e?ll(e)?e:ul(e)?e.ownerDocument?.defaultView??window:window:window}function fl(e){let{Document:t}=dl(e);return e instanceof t}function pl(e){return ll(e)?!1:e instanceof dl(e).HTMLElement}function ml(e){return e instanceof dl(e).SVGElement}function hl(e){return e?ll(e)?e.document:ul(e)?fl(e)?e:pl(e)||ml(e)?e.ownerDocument:document:document:document}var gl=cl?U.useLayoutEffect:U.useEffect;function _l(e){let t=(0,U.useRef)(e);return gl(()=>{t.current=e}),(0,U.useCallback)(function(){var e=[...arguments];return t.current==null?void 0:t.current(...e)},[])}function vl(){let e=(0,U.useRef)(null);return[(0,U.useCallback)((t,n)=>{e.current=setInterval(t,n)},[]),(0,U.useCallback)(()=>{e.current!==null&&(clearInterval(e.current),e.current=null)},[])]}function yl(e,t){t===void 0&&(t=[e]);let n=(0,U.useRef)(e);return gl(()=>{n.current!==e&&(n.current=e)},t),n}function bl(e,t){let n=(0,U.useRef)();return(0,U.useMemo)(()=>{let t=e(n.current);return n.current=t,t},[...t])}function xl(e){let t=_l(e),n=(0,U.useRef)(null);return[n,(0,U.useCallback)(e=>{e!==n.current&&t?.(e,n.current),n.current=e},[])]}function Sl(e){let t=(0,U.useRef)();return(0,U.useEffect)(()=>{t.current=e},[e]),t.current}var Cl={};function wl(e,t){return(0,U.useMemo)(()=>{if(t)return t;let n=Cl[e]==null?0:Cl[e]+1;return Cl[e]=n,e+`-`+n},[e,t])}function Tl(e){return function(t){return[...arguments].slice(1).reduce((t,n)=>{let r=Object.entries(n);for(let[n,i]of r){let r=t[n];r!=null&&(t[n]=r+e*i)}return t},{...t})}}var El=Tl(1),Dl=Tl(-1);function Ol(e){return`clientX`in e&&`clientY`in e}function kl(e){if(!e)return!1;let{KeyboardEvent:t}=dl(e.target);return t&&e instanceof t}function Al(e){if(!e)return!1;let{TouchEvent:t}=dl(e.target);return t&&e instanceof t}function jl(e){if(Al(e)){if(e.touches&&e.touches.length){let{clientX:t,clientY:n}=e.touches[0];return{x:t,y:n}}else if(e.changedTouches&&e.changedTouches.length){let{clientX:t,clientY:n}=e.changedTouches[0];return{x:t,y:n}}}return Ol(e)?{x:e.clientX,y:e.clientY}:null}var Ml=Object.freeze({Translate:{toString(e){if(!e)return;let{x:t,y:n}=e;return`translate3d(`+(t?Math.round(t):0)+`px, `+(n?Math.round(n):0)+`px, 0)`}},Scale:{toString(e){if(!e)return;let{scaleX:t,scaleY:n}=e;return`scaleX(`+t+`) scaleY(`+n+`)`}},Transform:{toString(e){if(e)return[Ml.Translate.toString(e),Ml.Scale.toString(e)].join(` `)}},Transition:{toString(e){let{property:t,duration:n,easing:r}=e;return t+` `+n+`ms `+r}}}),Nl=`a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]`;function Pl(e){return e.matches(Nl)?e:e.querySelector(Nl)}var Fl={display:`none`};function Il(e){let{id:t,value:n}=e;return U.createElement(`div`,{id:t,style:Fl},n)}function Ll(e){let{id:t,announcement:n,ariaLiveType:r=`assertive`}=e;return U.createElement(`div`,{id:t,style:{position:`fixed`,top:0,left:0,width:1,height:1,margin:-1,border:0,padding:0,overflow:`hidden`,clip:`rect(0 0 0 0)`,clipPath:`inset(100%)`,whiteSpace:`nowrap`},role:`status`,"aria-live":r,"aria-atomic":!0},n)}function Rl(){let[e,t]=(0,U.useState)(``);return{announce:(0,U.useCallback)(e=>{e!=null&&t(e)},[]),announcement:e}}var zl=(0,U.createContext)(null);function Bl(e){let t=(0,U.useContext)(zl);(0,U.useEffect)(()=>{if(!t)throw Error(`useDndMonitor must be used within a children of <DndContext>`);return t(e)},[e,t])}function Vl(){let[e]=(0,U.useState)(()=>new Set),t=(0,U.useCallback)(t=>(e.add(t),()=>e.delete(t)),[e]);return[(0,U.useCallback)(t=>{let{type:n,event:r}=t;e.forEach(e=>e[n]?.call(e,r))},[e]),t]}var Hl={draggable:`
10
+ To pick up a draggable item, press the space bar.
11
+ While dragging, use the arrow keys to move the item.
12
+ Press space again to drop the item in its new position, or press escape to cancel.
13
+ `},Ul={onDragStart(e){let{active:t}=e;return`Picked up draggable item `+t.id+`.`},onDragOver(e){let{active:t,over:n}=e;return n?`Draggable item `+t.id+` was moved over droppable area `+n.id+`.`:`Draggable item `+t.id+` is no longer over a droppable area.`},onDragEnd(e){let{active:t,over:n}=e;return n?`Draggable item `+t.id+` was dropped over droppable area `+n.id:`Draggable item `+t.id+` was dropped.`},onDragCancel(e){let{active:t}=e;return`Dragging was cancelled. Draggable item `+t.id+` was dropped.`}};function Wl(e){let{announcements:t=Ul,container:n,hiddenTextDescribedById:r,screenReaderInstructions:i=Hl}=e,{announce:a,announcement:o}=Rl(),s=wl(`DndLiveRegion`),[c,l]=(0,U.useState)(!1);if((0,U.useEffect)(()=>{l(!0)},[]),Bl((0,U.useMemo)(()=>({onDragStart(e){let{active:n}=e;a(t.onDragStart({active:n}))},onDragMove(e){let{active:n,over:r}=e;t.onDragMove&&a(t.onDragMove({active:n,over:r}))},onDragOver(e){let{active:n,over:r}=e;a(t.onDragOver({active:n,over:r}))},onDragEnd(e){let{active:n,over:r}=e;a(t.onDragEnd({active:n,over:r}))},onDragCancel(e){let{active:n,over:r}=e;a(t.onDragCancel({active:n,over:r}))}}),[a,t])),!c)return null;let u=U.createElement(U.Fragment,null,U.createElement(Il,{id:r,value:i.draggable}),U.createElement(Ll,{id:s,announcement:o}));return n?(0,ol.createPortal)(u,n):u}var Gl;(function(e){e.DragStart=`dragStart`,e.DragMove=`dragMove`,e.DragEnd=`dragEnd`,e.DragCancel=`dragCancel`,e.DragOver=`dragOver`,e.RegisterDroppable=`registerDroppable`,e.SetDroppableDisabled=`setDroppableDisabled`,e.UnregisterDroppable=`unregisterDroppable`})(Gl||={});function Kl(){}function ql(e,t){return(0,U.useMemo)(()=>({sensor:e,options:t??{}}),[e,t])}function Jl(){var e=[...arguments];return(0,U.useMemo)(()=>[...e].filter(e=>e!=null),[...e])}var Yl=Object.freeze({x:0,y:0});function Xl(e,t){return Math.sqrt((e.x-t.x)**2+(e.y-t.y)**2)}function Zl(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return n-r}function Ql(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return r-n}function $l(e){let{left:t,top:n,height:r,width:i}=e;return[{x:t,y:n},{x:t+i,y:n},{x:t,y:n+r},{x:t+i,y:n+r}]}function eu(e,t){if(!e||e.length===0)return null;let[n]=e;return t?n[t]:n}function tu(e,t,n){return t===void 0&&(t=e.left),n===void 0&&(n=e.top),{x:t+e.width*.5,y:n+e.height*.5}}var nu=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e,i=tu(t,t.left,t.top),a=[];for(let e of r){let{id:t}=e,r=n.get(t);if(r){let n=Xl(tu(r),i);a.push({id:t,data:{droppableContainer:e,value:n}})}}return a.sort(Zl)},ru=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e,i=$l(t),a=[];for(let e of r){let{id:t}=e,r=n.get(t);if(r){let n=$l(r),o=i.reduce((e,t,r)=>e+Xl(n[r],t),0),s=Number((o/4).toFixed(4));a.push({id:t,data:{droppableContainer:e,value:s}})}}return a.sort(Zl)};function iu(e,t){let n=Math.max(t.top,e.top),r=Math.max(t.left,e.left),i=Math.min(t.left+t.width,e.left+e.width),a=Math.min(t.top+t.height,e.top+e.height),o=i-r,s=a-n;if(r<i&&n<a){let n=t.width*t.height,r=e.width*e.height,i=o*s,a=i/(n+r-i);return Number(a.toFixed(4))}return 0}var au=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e,i=[];for(let e of r){let{id:r}=e,a=n.get(r);if(a){let n=iu(a,t);n>0&&i.push({id:r,data:{droppableContainer:e,value:n}})}}return i.sort(Ql)};function ou(e,t,n){return{...e,scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1}}function su(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:Yl}function cu(e){return function(t){return[...arguments].slice(1).reduce((t,n)=>({...t,top:t.top+e*n.y,bottom:t.bottom+e*n.y,left:t.left+e*n.x,right:t.right+e*n.x}),{...t})}}var lu=cu(1);function uu(e){if(e.startsWith(`matrix3d(`)){let t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}else if(e.startsWith(`matrix(`)){let t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}function du(e,t,n){let r=uu(t);if(!r)return e;let{scaleX:i,scaleY:a,x:o,y:s}=r,c=e.left-o-(1-i)*parseFloat(n),l=e.top-s-(1-a)*parseFloat(n.slice(n.indexOf(` `)+1)),u=i?e.width/i:e.width,d=a?e.height/a:e.height;return{width:u,height:d,top:l,right:c+u,bottom:l+d,left:c}}var fu={ignoreTransform:!1};function pu(e,t){t===void 0&&(t=fu);let n=e.getBoundingClientRect();if(t.ignoreTransform){let{transform:t,transformOrigin:r}=dl(e).getComputedStyle(e);t&&(n=du(n,t,r))}let{top:r,left:i,width:a,height:o,bottom:s,right:c}=n;return{top:r,left:i,width:a,height:o,bottom:s,right:c}}function mu(e){return pu(e,{ignoreTransform:!0})}function hu(e){let t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}function gu(e,t){return t===void 0&&(t=dl(e).getComputedStyle(e)),t.position===`fixed`}function _u(e,t){t===void 0&&(t=dl(e).getComputedStyle(e));let n=/(auto|scroll|overlay)/;return[`overflow`,`overflowX`,`overflowY`].some(e=>{let r=t[e];return typeof r==`string`?n.test(r):!1})}function vu(e,t){let n=[];function r(i){if(t!=null&&n.length>=t||!i)return n;if(fl(i)&&i.scrollingElement!=null&&!n.includes(i.scrollingElement))return n.push(i.scrollingElement),n;if(!pl(i)||ml(i)||n.includes(i))return n;let a=dl(e).getComputedStyle(i);return i!==e&&_u(i,a)&&n.push(i),gu(i,a)?n:r(i.parentNode)}return e?r(e):n}function yu(e){let[t]=vu(e,1);return t??null}function bu(e){return!cl||!e?null:ll(e)?e:ul(e)?fl(e)||e===hl(e).scrollingElement?window:pl(e)?e:null:null}function xu(e){return ll(e)?e.scrollX:e.scrollLeft}function Su(e){return ll(e)?e.scrollY:e.scrollTop}function Cu(e){return{x:xu(e),y:Su(e)}}var wu;(function(e){e[e.Forward=1]=`Forward`,e[e.Backward=-1]=`Backward`})(wu||={});function Tu(e){return!cl||!e?!1:e===document.scrollingElement}function Eu(e){let t={x:0,y:0},n=Tu(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},r={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height};return{isTop:e.scrollTop<=t.y,isLeft:e.scrollLeft<=t.x,isBottom:e.scrollTop>=r.y,isRight:e.scrollLeft>=r.x,maxScroll:r,minScroll:t}}var Du={x:.2,y:.2};function Ou(e,t,n,r,i){let{top:a,left:o,right:s,bottom:c}=n;r===void 0&&(r=10),i===void 0&&(i=Du);let{isTop:l,isBottom:u,isLeft:d,isRight:f}=Eu(e),p={x:0,y:0},m={x:0,y:0},h={height:t.height*i.y,width:t.width*i.x};return!l&&a<=t.top+h.height?(p.y=wu.Backward,m.y=r*Math.abs((t.top+h.height-a)/h.height)):!u&&c>=t.bottom-h.height&&(p.y=wu.Forward,m.y=r*Math.abs((t.bottom-h.height-c)/h.height)),!f&&s>=t.right-h.width?(p.x=wu.Forward,m.x=r*Math.abs((t.right-h.width-s)/h.width)):!d&&o<=t.left+h.width&&(p.x=wu.Backward,m.x=r*Math.abs((t.left+h.width-o)/h.width)),{direction:p,speed:m}}function ku(e){if(e===document.scrollingElement){let{innerWidth:e,innerHeight:t}=window;return{top:0,left:0,right:e,bottom:t,width:e,height:t}}let{top:t,left:n,right:r,bottom:i}=e.getBoundingClientRect();return{top:t,left:n,right:r,bottom:i,width:e.clientWidth,height:e.clientHeight}}function Au(e){return e.reduce((e,t)=>El(e,Cu(t)),Yl)}function ju(e){return e.reduce((e,t)=>e+xu(t),0)}function Mu(e){return e.reduce((e,t)=>e+Su(t),0)}function Nu(e,t){if(t===void 0&&(t=pu),!e)return;let{top:n,left:r,bottom:i,right:a}=t(e);yu(e)&&(i<=0||a<=0||n>=window.innerHeight||r>=window.innerWidth)&&e.scrollIntoView({block:`center`,inline:`center`})}var Pu=[[`x`,[`left`,`right`],ju],[`y`,[`top`,`bottom`],Mu]],Fu=class{constructor(e,t){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;let n=vu(t),r=Au(n);this.rect={...e},this.width=e.width,this.height=e.height;for(let[e,t,i]of Pu)for(let a of t)Object.defineProperty(this,a,{get:()=>{let t=i(n),o=r[e]-t;return this.rect[a]+o},enumerable:!0});Object.defineProperty(this,"rect",{enumerable:!1})}},Iu=class{constructor(e){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach(e=>this.target?.removeEventListener(...e))},this.target=e}add(e,t,n){var r;(r=this.target)==null||r.addEventListener(e,t,n),this.listeners.push([e,t,n])}};function Lu(e){let{EventTarget:t}=dl(e);return e instanceof t?e:hl(e)}function Ru(e,t){let n=Math.abs(e.x),r=Math.abs(e.y);return typeof t==`number`?Math.sqrt(n**2+r**2)>t:`x`in t&&`y`in t?n>t.x&&r>t.y:`x`in t?n>t.x:`y`in t?r>t.y:!1}var zu;(function(e){e.Click=`click`,e.DragStart=`dragstart`,e.Keydown=`keydown`,e.ContextMenu=`contextmenu`,e.Resize=`resize`,e.SelectionChange=`selectionchange`,e.VisibilityChange=`visibilitychange`})(zu||={});function Bu(e){e.preventDefault()}function Vu(e){e.stopPropagation()}var $;(function(e){e.Space=`Space`,e.Down=`ArrowDown`,e.Right=`ArrowRight`,e.Left=`ArrowLeft`,e.Up=`ArrowUp`,e.Esc=`Escape`,e.Enter=`Enter`,e.Tab=`Tab`})($||={});var Hu={start:[$.Space,$.Enter],cancel:[$.Esc],end:[$.Space,$.Enter,$.Tab]},Uu=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case $.Right:return{...n,x:n.x+25};case $.Left:return{...n,x:n.x-25};case $.Down:return{...n,y:n.y+25};case $.Up:return{...n,y:n.y-25}}},Wu=class{constructor(e){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=e;let{event:{target:t}}=e;this.props=e,this.listeners=new Iu(hl(t)),this.windowListeners=new Iu(dl(t)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(zu.Resize,this.handleCancel),this.windowListeners.add(zu.VisibilityChange,this.handleCancel),setTimeout(()=>this.listeners.add(zu.Keydown,this.handleKeyDown))}handleStart(){let{activeNode:e,onStart:t}=this.props,n=e.node.current;n&&Nu(n),t(Yl)}handleKeyDown(e){if(kl(e)){let{active:t,context:n,options:r}=this.props,{keyboardCodes:i=Hu,coordinateGetter:a=Uu,scrollBehavior:o=`smooth`}=r,{code:s}=e;if(i.end.includes(s)){this.handleEnd(e);return}if(i.cancel.includes(s)){this.handleCancel(e);return}let{collisionRect:c}=n.current,l=c?{x:c.left,y:c.top}:Yl;this.referenceCoordinates||=l;let u=a(e,{active:t,context:n.current,currentCoordinates:l});if(u){let t=Dl(u,l),r={x:0,y:0},{scrollableAncestors:i}=n.current;for(let n of i){let i=e.code,{isTop:a,isRight:s,isLeft:c,isBottom:l,maxScroll:d,minScroll:f}=Eu(n),p=ku(n),m={x:Math.min(i===$.Right?p.right-p.width/2:p.right,Math.max(i===$.Right?p.left:p.left+p.width/2,u.x)),y:Math.min(i===$.Down?p.bottom-p.height/2:p.bottom,Math.max(i===$.Down?p.top:p.top+p.height/2,u.y))},h=i===$.Right&&!s||i===$.Left&&!c,g=i===$.Down&&!l||i===$.Up&&!a;if(h&&m.x!==u.x){let e=n.scrollLeft+t.x,a=i===$.Right&&e<=d.x||i===$.Left&&e>=f.x;if(a&&!t.y){n.scrollTo({left:e,behavior:o});return}a?r.x=n.scrollLeft-e:r.x=i===$.Right?n.scrollLeft-d.x:n.scrollLeft-f.x,r.x&&n.scrollBy({left:-r.x,behavior:o});break}else if(g&&m.y!==u.y){let e=n.scrollTop+t.y,a=i===$.Down&&e<=d.y||i===$.Up&&e>=f.y;if(a&&!t.x){n.scrollTo({top:e,behavior:o});return}a?r.y=n.scrollTop-e:r.y=i===$.Down?n.scrollTop-d.y:n.scrollTop-f.y,r.y&&n.scrollBy({top:-r.y,behavior:o});break}}this.handleMove(e,El(Dl(u,this.referenceCoordinates),r))}}}handleMove(e,t){let{onMove:n}=this.props;e.preventDefault(),n(t)}handleEnd(e){let{onEnd:t}=this.props;e.preventDefault(),this.detach(),t()}handleCancel(e){let{onCancel:t}=this.props;e.preventDefault(),this.detach(),t()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}};Wu.activators=[{eventName:`onKeyDown`,handler:(e,t,n)=>{let{keyboardCodes:r=Hu,onActivation:i}=t,{active:a}=n,{code:o}=e.nativeEvent;if(r.start.includes(o)){let t=a.activatorNode.current;return t&&e.target!==t?!1:(e.preventDefault(),i?.({event:e.nativeEvent}),!0)}return!1}}];function Gu(e){return!!(e&&`distance`in e)}function Ku(e){return!!(e&&`delay`in e)}var qu=class{constructor(e,t,n){n===void 0&&(n=Lu(e.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=e,this.events=t;let{event:r}=e,{target:i}=r;this.props=e,this.events=t,this.document=hl(i),this.documentListeners=new Iu(this.document),this.listeners=new Iu(n),this.windowListeners=new Iu(dl(i)),this.initialCoordinates=jl(r)??Yl,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){let{events:e,props:{options:{activationConstraint:t,bypassActivationConstraint:n}}}=this;if(this.listeners.add(e.move.name,this.handleMove,{passive:!1}),this.listeners.add(e.end.name,this.handleEnd),e.cancel&&this.listeners.add(e.cancel.name,this.handleCancel),this.windowListeners.add(zu.Resize,this.handleCancel),this.windowListeners.add(zu.DragStart,Bu),this.windowListeners.add(zu.VisibilityChange,this.handleCancel),this.windowListeners.add(zu.ContextMenu,Bu),this.documentListeners.add(zu.Keydown,this.handleKeydown),t){if(n!=null&&n({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(Ku(t)){this.timeoutId=setTimeout(this.handleStart,t.delay),this.handlePending(t);return}if(Gu(t)){this.handlePending(t);return}}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),this.timeoutId!==null&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handlePending(e,t){let{active:n,onPending:r}=this.props;r(n,e,this.initialCoordinates,t)}handleStart(){let{initialCoordinates:e}=this,{onStart:t}=this.props;e&&(this.activated=!0,this.documentListeners.add(zu.Click,Vu,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(zu.SelectionChange,this.removeTextSelection),t(e))}handleMove(e){let{activated:t,initialCoordinates:n,props:r}=this,{onMove:i,options:{activationConstraint:a}}=r;if(!n)return;let o=jl(e)??Yl,s=Dl(n,o);if(!t&&a){if(Gu(a)){if(a.tolerance!=null&&Ru(s,a.tolerance))return this.handleCancel();if(Ru(s,a.distance))return this.handleStart()}if(Ku(a)&&Ru(s,a.tolerance))return this.handleCancel();this.handlePending(a,s);return}e.cancelable&&e.preventDefault(),i(o)}handleEnd(){let{onAbort:e,onEnd:t}=this.props;this.detach(),this.activated||e(this.props.active),t()}handleCancel(){let{onAbort:e,onCancel:t}=this.props;this.detach(),this.activated||e(this.props.active),t()}handleKeydown(e){e.code===$.Esc&&this.handleCancel()}removeTextSelection(){var e;(e=this.document.getSelection())==null||e.removeAllRanges()}},Ju={cancel:{name:`pointercancel`},move:{name:`pointermove`},end:{name:`pointerup`}},Yu=class extends qu{constructor(e){let{event:t}=e,n=hl(t.target);super(e,Ju,n)}};Yu.activators=[{eventName:`onPointerDown`,handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return!n.isPrimary||n.button!==0?!1:(r?.({event:n}),!0)}}];var Xu={move:{name:`mousemove`},end:{name:`mouseup`}},Zu;(function(e){e[e.RightClick=2]=`RightClick`})(Zu||={});var Qu=class extends qu{constructor(e){super(e,Xu,hl(e.event.target))}};Qu.activators=[{eventName:`onMouseDown`,handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return n.button===Zu.RightClick?!1:(r?.({event:n}),!0)}}];var $u={cancel:{name:`touchcancel`},move:{name:`touchmove`},end:{name:`touchend`}},ed=class extends qu{constructor(e){super(e,$u)}static setup(){return window.addEventListener($u.move.name,e,{capture:!1,passive:!1}),function(){window.removeEventListener($u.move.name,e)};function e(){}}};ed.activators=[{eventName:`onTouchStart`,handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t,{touches:i}=n;return i.length>1?!1:(r?.({event:n}),!0)}}];var td;(function(e){e[e.Pointer=0]=`Pointer`,e[e.DraggableRect=1]=`DraggableRect`})(td||={});var nd;(function(e){e[e.TreeOrder=0]=`TreeOrder`,e[e.ReversedTreeOrder=1]=`ReversedTreeOrder`})(nd||={});function rd(e){let{acceleration:t,activator:n=td.Pointer,canScroll:r,draggingRect:i,enabled:a,interval:o=5,order:s=nd.TreeOrder,pointerCoordinates:c,scrollableAncestors:l,scrollableAncestorRects:u,delta:d,threshold:f}=e,p=ad({delta:d,disabled:!a}),[m,h]=vl(),g=(0,U.useRef)({x:0,y:0}),_=(0,U.useRef)({x:0,y:0}),v=(0,U.useMemo)(()=>{switch(n){case td.Pointer:return c?{top:c.y,bottom:c.y,left:c.x,right:c.x}:null;case td.DraggableRect:return i}},[n,i,c]),y=(0,U.useRef)(null),b=(0,U.useCallback)(()=>{let e=y.current;if(!e)return;let t=g.current.x*_.current.x,n=g.current.y*_.current.y;e.scrollBy(t,n)},[]),x=(0,U.useMemo)(()=>s===nd.TreeOrder?[...l].reverse():l,[s,l]);(0,U.useEffect)(()=>{if(!a||!l.length||!v){h();return}for(let e of x){if(r?.(e)===!1)continue;let n=u[l.indexOf(e)];if(!n)continue;let{direction:i,speed:a}=Ou(e,n,v,t,f);for(let e of[`x`,`y`])p[e][i[e]]||(a[e]=0,i[e]=0);if(a.x>0||a.y>0){h(),y.current=e,m(b,o),g.current=a,_.current=i;return}}g.current={x:0,y:0},_.current={x:0,y:0},h()},[t,b,r,h,a,o,JSON.stringify(v),JSON.stringify(p),m,l,x,u,JSON.stringify(f)])}var id={x:{[wu.Backward]:!1,[wu.Forward]:!1},y:{[wu.Backward]:!1,[wu.Forward]:!1}};function ad(e){let{delta:t,disabled:n}=e,r=Sl(t);return bl(e=>{if(n||!r||!e)return id;let i={x:Math.sign(t.x-r.x),y:Math.sign(t.y-r.y)};return{x:{[wu.Backward]:e.x[wu.Backward]||i.x===-1,[wu.Forward]:e.x[wu.Forward]||i.x===1},y:{[wu.Backward]:e.y[wu.Backward]||i.y===-1,[wu.Forward]:e.y[wu.Forward]||i.y===1}}},[n,t,r])}function od(e,t){let n=t==null?void 0:e.get(t),r=n?n.node.current:null;return bl(e=>t==null?null:r??e??null,[r,t])}function sd(e,t){return(0,U.useMemo)(()=>e.reduce((e,n)=>{let{sensor:r}=n,i=r.activators.map(e=>({eventName:e.eventName,handler:t(e.handler,n)}));return[...e,...i]},[]),[e,t])}var cd;(function(e){e[e.Always=0]=`Always`,e[e.BeforeDragging=1]=`BeforeDragging`,e[e.WhileDragging=2]=`WhileDragging`})(cd||={});var ld;(function(e){e.Optimized=`optimized`})(ld||={});var ud=new Map;function dd(e,t){let{dragging:n,dependencies:r,config:i}=t,[a,o]=(0,U.useState)(null),{frequency:s,measure:c,strategy:l}=i,u=(0,U.useRef)(e),d=g(),f=yl(d),p=(0,U.useCallback)(function(e){e===void 0&&(e=[]),!f.current&&o(t=>t===null?e:t.concat(e.filter(e=>!t.includes(e))))},[f]),m=(0,U.useRef)(null),h=bl(t=>{if(d&&!n)return ud;if(!t||t===ud||u.current!==e||a!=null){let t=new Map;for(let n of e){if(!n)continue;if(a&&a.length>0&&!a.includes(n.id)&&n.rect.current){t.set(n.id,n.rect.current);continue}let e=n.node.current,r=e?new Fu(c(e),e):null;n.rect.current=r,r&&t.set(n.id,r)}return t}return t},[e,a,n,d,c]);return(0,U.useEffect)(()=>{u.current=e},[e]),(0,U.useEffect)(()=>{d||p()},[n,d]),(0,U.useEffect)(()=>{a&&a.length>0&&o(null)},[JSON.stringify(a)]),(0,U.useEffect)(()=>{d||typeof s!=`number`||m.current!==null||(m.current=setTimeout(()=>{p(),m.current=null},s))},[s,d,p,...r]),{droppableRects:h,measureDroppableContainers:p,measuringScheduled:a!=null};function g(){switch(l){case cd.Always:return!1;case cd.BeforeDragging:return n;default:return!n}}}function fd(e,t){return bl(n=>e?n||(typeof t==`function`?t(e):e):null,[t,e])}function pd(e,t){return fd(e,t)}function md(e){let{callback:t,disabled:n}=e,r=_l(t),i=(0,U.useMemo)(()=>{if(n||typeof window>`u`||window.MutationObserver===void 0)return;let{MutationObserver:e}=window;return new e(r)},[r,n]);return(0,U.useEffect)(()=>()=>i?.disconnect(),[i]),i}function hd(e){let{callback:t,disabled:n}=e,r=_l(t),i=(0,U.useMemo)(()=>{if(n||typeof window>`u`||window.ResizeObserver===void 0)return;let{ResizeObserver:e}=window;return new e(r)},[n]);return(0,U.useEffect)(()=>()=>i?.disconnect(),[i]),i}function gd(e){return new Fu(pu(e),e)}function _d(e,t,n){t===void 0&&(t=gd);let[r,i]=(0,U.useState)(null);function a(){i(r=>{if(!e)return null;if(e.isConnected===!1)return r??n??null;let i=t(e);return JSON.stringify(r)===JSON.stringify(i)?r:i})}let o=md({callback(t){if(e)for(let n of t){let{type:t,target:r}=n;if(t===`childList`&&r instanceof HTMLElement&&r.contains(e)){a();break}}}}),s=hd({callback:a});return gl(()=>{a(),e?(s?.observe(e),o?.observe(document.body,{childList:!0,subtree:!0})):(s?.disconnect(),o?.disconnect())},[e]),r}function vd(e){return su(e,fd(e))}var yd=[];function bd(e){let t=(0,U.useRef)(e),n=bl(n=>e?n&&n!==yd&&e&&t.current&&e.parentNode===t.current.parentNode?n:vu(e):yd,[e]);return(0,U.useEffect)(()=>{t.current=e},[e]),n}function xd(e){let[t,n]=(0,U.useState)(null),r=(0,U.useRef)(e),i=(0,U.useCallback)(e=>{let t=bu(e.target);t&&n(e=>e?(e.set(t,Cu(t)),new Map(e)):null)},[]);return(0,U.useEffect)(()=>{let t=r.current;if(e!==t){a(t);let o=e.map(e=>{let t=bu(e);return t?(t.addEventListener(`scroll`,i,{passive:!0}),[t,Cu(t)]):null}).filter(e=>e!=null);n(o.length?new Map(o):null),r.current=e}return()=>{a(e),a(t)};function a(e){e.forEach(e=>{bu(e)?.removeEventListener(`scroll`,i)})}},[i,e]),(0,U.useMemo)(()=>e.length?t?Array.from(t.values()).reduce((e,t)=>El(e,t),Yl):Au(e):Yl,[e,t])}function Sd(e,t){t===void 0&&(t=[]);let n=(0,U.useRef)(null);return(0,U.useEffect)(()=>{n.current=null},t),(0,U.useEffect)(()=>{let t=e!==Yl;t&&!n.current&&(n.current=e),!t&&n.current&&(n.current=null)},[e]),n.current?Dl(e,n.current):Yl}function Cd(e){(0,U.useEffect)(()=>{if(!cl)return;let t=e.map(e=>{let{sensor:t}=e;return t.setup==null?void 0:t.setup()});return()=>{for(let e of t)e?.()}},e.map(e=>{let{sensor:t}=e;return t}))}function wd(e,t){return(0,U.useMemo)(()=>e.reduce((e,n)=>{let{eventName:r,handler:i}=n;return e[r]=e=>{i(e,t)},e},{}),[e,t])}function Td(e){return(0,U.useMemo)(()=>e?hu(e):null,[e])}var Ed=[];function Dd(e,t){t===void 0&&(t=pu);let[n]=e,r=Td(n?dl(n):null),[i,a]=(0,U.useState)(Ed);function o(){a(()=>e.length?e.map(e=>Tu(e)?r:new Fu(t(e),e)):Ed)}let s=hd({callback:o});return gl(()=>{s?.disconnect(),o(),e.forEach(e=>s?.observe(e))},[e]),i}function Od(e){if(!e)return null;if(e.children.length>1)return e;let t=e.children[0];return pl(t)?t:e}function kd(e){let{measure:t}=e,[n,r]=(0,U.useState)(null),i=hd({callback:(0,U.useCallback)(e=>{for(let{target:n}of e)if(pl(n)){r(e=>{let r=t(n);return e?{...e,width:r.width,height:r.height}:r});break}},[t])}),[a,o]=xl((0,U.useCallback)(e=>{let n=Od(e);i?.disconnect(),n&&i?.observe(n),r(n?t(n):null)},[t,i]));return(0,U.useMemo)(()=>({nodeRef:a,rect:n,setRef:o}),[n,a,o])}var Ad=[{sensor:Yu,options:{}},{sensor:Wu,options:{}}],jd={current:{}},Md={draggable:{measure:mu},droppable:{measure:mu,strategy:cd.WhileDragging,frequency:ld.Optimized},dragOverlay:{measure:pu}},Nd=class extends Map{get(e){return e==null?void 0:super.get(e)??void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter(e=>{let{disabled:t}=e;return!t})}getNodeFor(e){return this.get(e)?.node.current??void 0}},Pd={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new Nd,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:Kl},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:Md,measureDroppableContainers:Kl,windowRect:null,measuringScheduled:!1},Fd={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:``},dispatch:Kl,draggableNodes:new Map,over:null,measureDroppableContainers:Kl},Id=(0,U.createContext)(Fd),Ld=(0,U.createContext)(Pd);function Rd(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new Nd}}}function zd(e,t){switch(t.type){case Gl.DragStart:return{...e,draggable:{...e.draggable,initialCoordinates:t.initialCoordinates,active:t.active}};case Gl.DragMove:return e.draggable.active==null?e:{...e,draggable:{...e.draggable,translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}}};case Gl.DragEnd:case Gl.DragCancel:return{...e,draggable:{...e.draggable,active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}}};case Gl.RegisterDroppable:{let{element:n}=t,{id:r}=n,i=new Nd(e.droppable.containers);return i.set(r,n),{...e,droppable:{...e.droppable,containers:i}}}case Gl.SetDroppableDisabled:{let{id:n,key:r,disabled:i}=t,a=e.droppable.containers.get(n);if(!a||r!==a.key)return e;let o=new Nd(e.droppable.containers);return o.set(n,{...a,disabled:i}),{...e,droppable:{...e.droppable,containers:o}}}case Gl.UnregisterDroppable:{let{id:n,key:r}=t,i=e.droppable.containers.get(n);if(!i||r!==i.key)return e;let a=new Nd(e.droppable.containers);return a.delete(n),{...e,droppable:{...e.droppable,containers:a}}}default:return e}}function Bd(e){let{disabled:t}=e,{active:n,activatorEvent:r,draggableNodes:i}=(0,U.useContext)(Id),a=Sl(r),o=Sl(n?.id);return(0,U.useEffect)(()=>{if(!t&&!r&&a&&o!=null){if(!kl(a)||document.activeElement===a.target)return;let e=i.get(o);if(!e)return;let{activatorNode:t,node:n}=e;if(!t.current&&!n.current)return;requestAnimationFrame(()=>{for(let e of[t.current,n.current]){if(!e)continue;let t=Pl(e);if(t){t.focus();break}}})}},[r,t,i,o,a]),null}function Vd(e,t){let{transform:n,...r}=t;return e!=null&&e.length?e.reduce((e,t)=>t({transform:e,...r}),n):n}function Hd(e){return(0,U.useMemo)(()=>({draggable:{...Md.draggable,...e?.draggable},droppable:{...Md.droppable,...e?.droppable},dragOverlay:{...Md.dragOverlay,...e?.dragOverlay}}),[e?.draggable,e?.droppable,e?.dragOverlay])}function Ud(e){let{activeNode:t,measure:n,initialRect:r,config:i=!0}=e,a=(0,U.useRef)(!1),{x:o,y:s}=typeof i==`boolean`?{x:i,y:i}:i;gl(()=>{if(!o&&!s||!t){a.current=!1;return}if(a.current||!r)return;let e=t?.node.current;if(!e||e.isConnected===!1)return;let i=su(n(e),r);if(o||(i.x=0),s||(i.y=0),a.current=!0,Math.abs(i.x)>0||Math.abs(i.y)>0){let t=yu(e);t&&t.scrollBy({top:i.y,left:i.x})}},[t,o,s,r,n])}var Wd=(0,U.createContext)({...Yl,scaleX:1,scaleY:1}),Gd;(function(e){e[e.Uninitialized=0]=`Uninitialized`,e[e.Initializing=1]=`Initializing`,e[e.Initialized=2]=`Initialized`})(Gd||={});var Kd=(0,U.memo)(function(e){let{id:t,accessibility:n,autoScroll:r=!0,children:i,sensors:a=Ad,collisionDetection:o=au,measuring:s,modifiers:c,...l}=e,[u,d]=(0,U.useReducer)(zd,void 0,Rd),[f,p]=Vl(),[m,h]=(0,U.useState)(Gd.Uninitialized),g=m===Gd.Initialized,{draggable:{active:_,nodes:v,translate:y},droppable:{containers:b}}=u,x=_==null?null:v.get(_),S=(0,U.useRef)({initial:null,translated:null}),C=(0,U.useMemo)(()=>_==null?null:{id:_,data:x?.data??jd,rect:S},[_,x]),w=(0,U.useRef)(null),[T,E]=(0,U.useState)(null),[D,ee]=(0,U.useState)(null),O=yl(l,Object.values(l)),k=wl(`DndDescribedBy`,t),A=(0,U.useMemo)(()=>b.getEnabled(),[b]),j=Hd(s),{droppableRects:M,measureDroppableContainers:N,measuringScheduled:te}=dd(A,{dragging:g,dependencies:[y.x,y.y],config:j.droppable}),ne=od(v,_),P=(0,U.useMemo)(()=>D?jl(D):null,[D]),F=Oe(),re=pd(ne,j.draggable.measure);Ud({activeNode:_==null?null:v.get(_),config:F.layoutShiftCompensation,initialRect:re,measure:j.draggable.measure});let I=_d(ne,j.draggable.measure,re),L=_d(ne?ne.parentElement:null),ie=(0,U.useRef)({activatorEvent:null,active:null,activeNode:ne,collisionRect:null,collisions:null,droppableRects:M,draggableNodes:v,draggingNode:null,draggingNodeRect:null,droppableContainers:b,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),ae=b.getNodeFor(ie.current.over?.id),R=kd({measure:j.dragOverlay.measure}),oe=R.nodeRef.current??ne,z=g?R.rect??I:null,se=!!(R.nodeRef.current&&R.rect),ce=vd(se?null:I),le=Td(oe?dl(oe):null),ue=bd(g?ae??ne:null),de=Dd(ue),fe=Vd(c,{transform:{x:y.x-ce.x,y:y.y-ce.y,scaleX:1,scaleY:1},activatorEvent:D,active:C,activeNodeRect:I,containerNodeRect:L,draggingNodeRect:z,over:ie.current.over,overlayNodeRect:R.rect,scrollableAncestors:ue,scrollableAncestorRects:de,windowRect:le}),pe=P?El(P,y):null,me=xd(ue),he=Sd(me),ge=Sd(me,[I]),_e=El(fe,he),ve=z?lu(z,fe):null,ye=C&&ve?o({active:C,collisionRect:ve,droppableRects:M,droppableContainers:A,pointerCoordinates:pe}):null,B=eu(ye,`id`),[be,xe]=(0,U.useState)(null),Se=ou(se?fe:El(fe,ge),be?.rect??null,I),Ce=(0,U.useRef)(null),we=(0,U.useCallback)((e,t)=>{let{sensor:n,options:r}=t;if(w.current==null)return;let i=v.get(w.current);if(!i)return;let a=e.nativeEvent;Ce.current=new n({active:w.current,activeNode:i,event:a,options:r,context:ie,onAbort(e){if(!v.get(e))return;let{onDragAbort:t}=O.current,n={id:e};t?.(n),f({type:`onDragAbort`,event:n})},onPending(e,t,n,r){if(!v.get(e))return;let{onDragPending:i}=O.current,a={id:e,constraint:t,initialCoordinates:n,offset:r};i?.(a),f({type:`onDragPending`,event:a})},onStart(e){let t=w.current;if(t==null)return;let n=v.get(t);if(!n)return;let{onDragStart:r}=O.current,i={activatorEvent:a,active:{id:t,data:n.data,rect:S}};(0,ol.unstable_batchedUpdates)(()=>{r?.(i),h(Gd.Initializing),d({type:Gl.DragStart,initialCoordinates:e,active:t}),f({type:`onDragStart`,event:i}),E(Ce.current),ee(a)})},onMove(e){d({type:Gl.DragMove,coordinates:e})},onEnd:o(Gl.DragEnd),onCancel:o(Gl.DragCancel)});function o(e){return async function(){let{active:t,collisions:n,over:r,scrollAdjustedTranslate:i}=ie.current,o=null;if(t&&i){let{cancelDrop:s}=O.current;o={activatorEvent:a,active:t,collisions:n,delta:i,over:r},e===Gl.DragEnd&&typeof s==`function`&&await Promise.resolve(s(o))&&(e=Gl.DragCancel)}w.current=null,(0,ol.unstable_batchedUpdates)(()=>{d({type:e}),h(Gd.Uninitialized),xe(null),E(null),ee(null),Ce.current=null;let t=e===Gl.DragEnd?`onDragEnd`:`onDragCancel`;if(o){let e=O.current[t];e?.(o),f({type:t,event:o})}})}}},[v]),Te=sd(a,(0,U.useCallback)((e,t)=>(n,r)=>{let i=n.nativeEvent,a=v.get(r);if(w.current!==null||!a||i.dndKit||i.defaultPrevented)return;let o={active:a};e(n,t.options,o)===!0&&(i.dndKit={capturedBy:t.sensor},w.current=r,we(n,t))},[v,we]));Cd(a),gl(()=>{I&&m===Gd.Initializing&&h(Gd.Initialized)},[I,m]),(0,U.useEffect)(()=>{let{onDragMove:e}=O.current,{active:t,activatorEvent:n,collisions:r,over:i}=ie.current;if(!t||!n)return;let a={active:t,activatorEvent:n,collisions:r,delta:{x:_e.x,y:_e.y},over:i};(0,ol.unstable_batchedUpdates)(()=>{e?.(a),f({type:`onDragMove`,event:a})})},[_e.x,_e.y]),(0,U.useEffect)(()=>{let{active:e,activatorEvent:t,collisions:n,droppableContainers:r,scrollAdjustedTranslate:i}=ie.current;if(!e||w.current==null||!t||!i)return;let{onDragOver:a}=O.current,o=r.get(B),s=o&&o.rect.current?{id:o.id,rect:o.rect.current,data:o.data,disabled:o.disabled}:null,c={active:e,activatorEvent:t,collisions:n,delta:{x:i.x,y:i.y},over:s};(0,ol.unstable_batchedUpdates)(()=>{xe(s),a?.(c),f({type:`onDragOver`,event:c})})},[B]),gl(()=>{ie.current={activatorEvent:D,active:C,activeNode:ne,collisionRect:ve,collisions:ye,droppableRects:M,draggableNodes:v,draggingNode:oe,draggingNodeRect:z,droppableContainers:b,over:be,scrollableAncestors:ue,scrollAdjustedTranslate:_e},S.current={initial:z,translated:ve}},[C,ne,ye,ve,v,oe,z,M,b,be,ue,_e]),rd({...F,delta:y,draggingRect:ve,pointerCoordinates:pe,scrollableAncestors:ue,scrollableAncestorRects:de});let Ee=(0,U.useMemo)(()=>({active:C,activeNode:ne,activeNodeRect:I,activatorEvent:D,collisions:ye,containerNodeRect:L,dragOverlay:R,draggableNodes:v,droppableContainers:b,droppableRects:M,over:be,measureDroppableContainers:N,scrollableAncestors:ue,scrollableAncestorRects:de,measuringConfiguration:j,measuringScheduled:te,windowRect:le}),[C,ne,I,D,ye,L,R,v,b,M,be,N,ue,de,j,te,le]),De=(0,U.useMemo)(()=>({activatorEvent:D,activators:Te,active:C,activeNodeRect:I,ariaDescribedById:{draggable:k},dispatch:d,draggableNodes:v,over:be,measureDroppableContainers:N}),[D,Te,C,I,d,k,v,be,N]);return U.createElement(zl.Provider,{value:p},U.createElement(Id.Provider,{value:De},U.createElement(Ld.Provider,{value:Ee},U.createElement(Wd.Provider,{value:Se},i)),U.createElement(Bd,{disabled:n?.restoreFocus===!1})),U.createElement(Wl,{...n,hiddenTextDescribedById:k}));function Oe(){let e=T?.autoScrollEnabled===!1,t=typeof r==`object`?r.enabled===!1:r===!1,n=g&&!e&&!t;return typeof r==`object`?{...r,enabled:n}:{enabled:n}}}),qd=(0,U.createContext)(null),Jd=`button`,Yd=`Draggable`;function Xd(e){let{id:t,data:n,disabled:r=!1,attributes:i}=e,a=wl(Yd),{activators:o,activatorEvent:s,active:c,activeNodeRect:l,ariaDescribedById:u,draggableNodes:d,over:f}=(0,U.useContext)(Id),{role:p=Jd,roleDescription:m=`draggable`,tabIndex:h=0}=i??{},g=c?.id===t,_=(0,U.useContext)(g?Wd:qd),[v,y]=xl(),[b,x]=xl(),S=wd(o,t),C=yl(n);return gl(()=>(d.set(t,{id:t,key:a,node:v,activatorNode:b,data:C}),()=>{let e=d.get(t);e&&e.key===a&&d.delete(t)}),[d,t]),{active:c,activatorEvent:s,activeNodeRect:l,attributes:(0,U.useMemo)(()=>({role:p,tabIndex:h,"aria-disabled":r,"aria-pressed":g&&p===Jd?!0:void 0,"aria-roledescription":m,"aria-describedby":u.draggable}),[r,p,h,g,m,u.draggable]),isDragging:g,listeners:r?void 0:S,node:v,over:f,setNodeRef:y,setActivatorNodeRef:x,transform:_}}function Zd(){return(0,U.useContext)(Ld)}var Qd=`Droppable`,$d={timeout:25};function ef(e){let{data:t,disabled:n=!1,id:r,resizeObserverConfig:i}=e,a=wl(Qd),{active:o,dispatch:s,over:c,measureDroppableContainers:l}=(0,U.useContext)(Id),u=(0,U.useRef)({disabled:n}),d=(0,U.useRef)(!1),f=(0,U.useRef)(null),p=(0,U.useRef)(null),{disabled:m,updateMeasurementsFor:h,timeout:g}={...$d,...i},_=yl(h??r),v=hd({callback:(0,U.useCallback)(()=>{if(!d.current){d.current=!0;return}p.current!=null&&clearTimeout(p.current),p.current=setTimeout(()=>{l(Array.isArray(_.current)?_.current:[_.current]),p.current=null},g)},[g]),disabled:m||!o}),[y,b]=xl((0,U.useCallback)((e,t)=>{v&&(t&&(v.unobserve(t),d.current=!1),e&&v.observe(e))},[v])),x=yl(t);return(0,U.useEffect)(()=>{!v||!y.current||(v.disconnect(),d.current=!1,v.observe(y.current))},[y,v]),(0,U.useEffect)(()=>(s({type:Gl.RegisterDroppable,element:{id:r,key:a,disabled:n,node:y,rect:f,data:x}}),()=>s({type:Gl.UnregisterDroppable,key:a,id:r})),[r]),(0,U.useEffect)(()=>{n!==u.current.disabled&&(s({type:Gl.SetDroppableDisabled,id:r,key:a,disabled:n}),u.current.disabled=n)},[r,a,n,s]),{active:o,rect:f,isOver:c?.id===r,node:y,over:c,setNodeRef:b}}function tf(e,t,n){let r=e.slice();return r.splice(n<0?r.length+n:n,0,r.splice(t,1)[0]),r}function nf(e,t){return e.reduce((e,n,r)=>{let i=t.get(n);return i&&(e[r]=i),e},Array(e.length))}function rf(e){return e!==null&&e>=0}function af(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function of(e){return typeof e==`boolean`?{draggable:e,droppable:e}:e}var sf=e=>{let{rects:t,activeIndex:n,overIndex:r,index:i}=e,a=tf(t,r,n),o=t[i],s=a[i];return!s||!o?null:{x:s.left-o.left,y:s.top-o.top,scaleX:s.width/o.width,scaleY:s.height/o.height}},cf=`Sortable`,lf=U.createContext({activeIndex:-1,containerId:cf,disableTransforms:!1,items:[],overIndex:-1,useDragOverlay:!1,sortedRects:[],strategy:sf,disabled:{draggable:!1,droppable:!1}});function uf(e){let{children:t,id:n,items:r,strategy:i=sf,disabled:a=!1}=e,{active:o,dragOverlay:s,droppableRects:c,over:l,measureDroppableContainers:u}=Zd(),d=wl(cf,n),f=s.rect!==null,p=(0,U.useMemo)(()=>r.map(e=>typeof e==`object`&&`id`in e?e.id:e),[r]),m=o!=null,h=o?p.indexOf(o.id):-1,g=l?p.indexOf(l.id):-1,_=(0,U.useRef)(p),v=!af(p,_.current),y=g!==-1&&h===-1||v,b=of(a);gl(()=>{v&&m&&u(p)},[v,p,m,u]),(0,U.useEffect)(()=>{_.current=p},[p]);let x=(0,U.useMemo)(()=>({activeIndex:h,containerId:d,disabled:b,disableTransforms:y,items:p,overIndex:g,useDragOverlay:f,sortedRects:nf(p,c),strategy:i}),[h,d,b.draggable,b.droppable,y,p,g,c,f,i]);return U.createElement(lf.Provider,{value:x},t)}var df=e=>{let{id:t,items:n,activeIndex:r,overIndex:i}=e;return tf(n,r,i).indexOf(t)},ff=e=>{let{containerId:t,isSorting:n,wasDragging:r,index:i,items:a,newIndex:o,previousItems:s,previousContainerId:c,transition:l}=e;return!l||!r||s!==a&&i===o?!1:n?!0:o!==i&&t===c},pf={duration:200,easing:`ease`},mf=`transform`,hf=Ml.Transition.toString({property:mf,duration:0,easing:`linear`}),gf={roleDescription:`sortable`};function _f(e){let{disabled:t,index:n,node:r,rect:i}=e,[a,o]=(0,U.useState)(null),s=(0,U.useRef)(n);return gl(()=>{if(!t&&n!==s.current&&r.current){let e=i.current;if(e){let t=pu(r.current,{ignoreTransform:!0}),n={x:e.left-t.left,y:e.top-t.top,scaleX:e.width/t.width,scaleY:e.height/t.height};(n.x||n.y)&&o(n)}}n!==s.current&&(s.current=n)},[t,n,r,i]),(0,U.useEffect)(()=>{a&&o(null)},[a]),a}function vf(e){let{animateLayoutChanges:t=ff,attributes:n,disabled:r,data:i,getNewIndex:a=df,id:o,strategy:s,resizeObserverConfig:c,transition:l=pf}=e,{items:u,containerId:d,activeIndex:f,disabled:p,disableTransforms:m,sortedRects:h,overIndex:g,useDragOverlay:_,strategy:v}=(0,U.useContext)(lf),y=yf(r,p),b=u.indexOf(o),x=(0,U.useMemo)(()=>({sortable:{containerId:d,index:b,items:u},...i}),[d,i,b,u]),S=(0,U.useMemo)(()=>u.slice(u.indexOf(o)),[u,o]),{rect:C,node:w,isOver:T,setNodeRef:E}=ef({id:o,data:x,disabled:y.droppable,resizeObserverConfig:{updateMeasurementsFor:S,...c}}),{active:D,activatorEvent:ee,activeNodeRect:O,attributes:k,setNodeRef:A,listeners:j,isDragging:M,over:N,setActivatorNodeRef:te,transform:ne}=Xd({id:o,data:x,attributes:{...gf,...n},disabled:y.draggable}),P=sl(E,A),F=!!D,re=F&&!m&&rf(f)&&rf(g),I=!_&&M,L=re?(I&&re?ne:null)??(s??v)({rects:h,activeNodeRect:O,activeIndex:f,overIndex:g,index:b}):null,ie=rf(f)&&rf(g)?a({id:o,items:u,activeIndex:f,overIndex:g}):b,ae=D?.id,R=(0,U.useRef)({activeId:ae,items:u,newIndex:ie,containerId:d}),oe=u!==R.current.items,z=t({active:D,containerId:d,isDragging:M,isSorting:F,id:o,index:b,items:u,newIndex:R.current.newIndex,previousItems:R.current.items,previousContainerId:R.current.containerId,transition:l,wasDragging:R.current.activeId!=null}),se=_f({disabled:!z,index:b,node:w,rect:C});return(0,U.useEffect)(()=>{F&&R.current.newIndex!==ie&&(R.current.newIndex=ie),d!==R.current.containerId&&(R.current.containerId=d),u!==R.current.items&&(R.current.items=u)},[F,ie,d,u]),(0,U.useEffect)(()=>{if(ae===R.current.activeId)return;if(ae!=null&&R.current.activeId==null){R.current.activeId=ae;return}let e=setTimeout(()=>{R.current.activeId=ae},50);return()=>clearTimeout(e)},[ae]),{active:D,activeIndex:f,attributes:k,data:x,rect:C,index:b,newIndex:ie,items:u,isOver:T,isSorting:F,isDragging:M,listeners:j,node:w,overIndex:g,over:N,setNodeRef:P,setActivatorNodeRef:te,setDroppableNodeRef:E,setDraggableNodeRef:A,transform:se??L,transition:ce()};function ce(){if(se||oe&&R.current.newIndex===b)return hf;if(!(I&&!kl(ee)||!l)&&(F||z))return Ml.Transition.toString({...l,property:mf})}}function yf(e,t){return typeof e==`boolean`?{draggable:e,droppable:!1}:{draggable:e?.draggable??t.draggable,droppable:e?.droppable??t.droppable}}function bf(e){if(!e)return!1;let t=e.data.current;return!!(t&&`sortable`in t&&typeof t.sortable==`object`&&`containerId`in t.sortable&&`items`in t.sortable&&`index`in t.sortable)}var xf=[$.Down,$.Right,$.Up,$.Left],Sf=(e,t)=>{let{context:{active:n,collisionRect:r,droppableRects:i,droppableContainers:a,over:o,scrollableAncestors:s}}=t;if(xf.includes(e.code)){if(e.preventDefault(),!n||!r)return;let t=[];a.getEnabled().forEach(n=>{if(!n||n!=null&&n.disabled)return;let a=i.get(n.id);if(a)switch(e.code){case $.Down:r.top<a.top&&t.push(n);break;case $.Up:r.top>a.top&&t.push(n);break;case $.Left:r.left>a.left&&t.push(n);break;case $.Right:r.left<a.left&&t.push(n);break}});let c=ru({active:n,collisionRect:r,droppableRects:i,droppableContainers:t,pointerCoordinates:null}),l=eu(c,`id`);if(l===o?.id&&c.length>1&&(l=c[1].id),l!=null){let e=a.get(n.id),t=a.get(l),o=t?i.get(t.id):null,c=t?.node.current;if(c&&o&&e&&t){let n=vu(c).some((e,t)=>s[t]!==e),i=Cf(e,t),a=wf(e,t),l=n||!i?{x:0,y:0}:{x:a?r.width-o.width:0,y:a?r.height-o.height:0},u={x:o.left,y:o.top};return l.x&&l.y?u:Dl(u,l)}}}};function Cf(e,t){return!bf(e)||!bf(t)?!1:e.data.current.sortable.containerId===t.data.current.sortable.containerId}function wf(e,t){return!bf(e)||!bf(t)||!Cf(e,t)?!1:e.data.current.sortable.index<t.data.current.sortable.index}var Tf=!1;function Ef(){return Tf}function Df(){Tf=!0,setTimeout(()=>{Tf=!1},0)}var Of={sessions:12,trend:6,projects:6};function kf(e,t){if(t===`intermediate`){let t=Of[e];if(t!==void 0)return t}return x[e].span}function Af({id:e,index:t,mode:n}){let r=Js[e],i=(0,U.useSyncExternalStore)(V,()=>L().openModal!=null),a=ls(),{listeners:o,setNodeRef:s,transform:c,transition:l,isDragging:u}=vf({id:e,disabled:i});if(!r)return null;let{Component:d,label:f}=r;return(0,W.jsx)(`div`,{ref:s,style:{transform:Ml.Translate.toString(c),transition:a?void 0:l},className:`panel-host${u?` is-dragging`:``}`,"data-panel-host":e,"data-panel-index":t,"data-span":kf(e,n),"aria-label":`Reorder ${f}`,onKeyDown:e=>{if(!e.shiftKey)return;let n=e.target;if(typeof n.matches==`function`&&n.matches(`input, textarea, select, [contenteditable="true"]`))return;let r=0;e.key===`ArrowDown`||e.key===`ArrowRight`?r=1:(e.key===`ArrowUp`||e.key===`ArrowLeft`)&&(r=-1),r!==0&&(typeof e.preventDefault==`function`&&e.preventDefault(),P({type:`SWAP_PANELS`,index:t,direction:r}))},onClickCapture:e=>{Ef()&&e.stopPropagation()},...o,children:(0,W.jsx)(d,{})})}var jf=250,Mf=5;function Nf(){Df()}function Pf(e,t){if(Df(),!t||e===t)return;let n=L(),r=T(n.prefs.panelOrder,o(n.snapshot,n.activeSource)),i=r.indexOf(e),a=r.indexOf(t);i<0||a<0||i===a||P({type:`REORDER_PANELS`,from:i,to:a})}function Ff(){Df()}function If({items:e,className:t,children:n}){return(0,W.jsx)(Kd,{sensors:Jl(ql(Yu,{activationConstraint:{delay:jf,tolerance:Mf}})),onDragStart:()=>Nf(),onDragEnd:e=>{let t=e.active.id;Pf(t,e.over?e.over.id:null)},onDragCancel:()=>Ff(),children:(0,W.jsx)(uf,{items:(0,U.useMemo)(()=>e.slice(),[e]),strategy:sf,children:(0,W.jsx)(`div`,{className:t,children:n})})})}var Lf=class extends Error{status;field;code;constructor(e,t,n,r){super(n),this.status=e,this.field=t,this.code=r}};async function Rf(e){if(!e.ok){let t={};try{t=await e.json()}catch{}throw new Lf(e.status,t.field,t.error??`HTTP ${e.status}`,t.code)}return e.json()}async function zf(e,t){return Rf(await fetch(`/api/share/templates?panel=${encodeURIComponent(e)}`,{signal:t?.signal}))}async function Bf(e,t){let{account:n,...r}=e;return Rf(await fetch(`/api/share/render`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(n==null?r:{...r,account:n}),signal:t?.signal}))}var Vf=[{id:`recap`,label:`Recap`,placeholderDescription:`Text + tiny chart`},{id:`visual`,label:`Visual`,placeholderDescription:`Coming soon`},{id:`detail`,label:`Detail`,placeholderDescription:`Coming soon`}];function Hf(e){return e.endsWith(`-recap`)?`recap`:e.endsWith(`-visual`)?`visual`:e.endsWith(`-detail`)?`detail`:null}function Uf({panel:e,templates:t,error:n,selectedTemplateId:r,onSelect:i}){if(n)return(0,W.jsx)(`div`,{className:`share-gallery-error`,role:`alert`,children:n});let a={};for(let e of t??[]){let t=Hf(e.id);t&&(a[t]=e)}return(0,W.jsx)(`div`,{className:`share-gallery`,role:`radiogroup`,"aria-label":`Report template`,children:Vf.map(e=>{let n=a[e.id];if(t==null)return(0,W.jsxs)(`div`,{className:`share-tile share-tile-skeleton`,"aria-hidden":`true`,children:[(0,W.jsx)(`div`,{className:`share-tile-skeleton-bar`}),(0,W.jsx)(`div`,{className:`share-tile-skeleton-bar short`})]},e.id);if(!n)return(0,W.jsxs)(`button`,{type:`button`,className:`share-tile share-tile-disabled`,disabled:!0,"aria-disabled":`true`,role:`radio`,"aria-checked":`false`,title:`${e.label} — ${e.placeholderDescription}`,children:[(0,W.jsx)(`div`,{className:`share-tile-label`,children:e.label}),(0,W.jsx)(`div`,{className:`share-tile-desc`,children:e.placeholderDescription})]},e.id);let o=n.id===r;return(0,W.jsxs)(`button`,{type:`button`,className:`share-tile`+(o?` share-tile-selected`:``),role:`radio`,"aria-checked":o,"data-template-id":n.id,onClick:()=>i(n.id),children:[(0,W.jsx)(`div`,{className:`share-tile-label`,children:n.label}),(0,W.jsx)(`div`,{className:`share-tile-desc`,children:n.description})]},e.id)})})}function Wf({options:e,onChange:t}){let n=n=>t({...e,...n}),r=n=>t({...e,period:{...e.period,...n}}),i=e=>{if(e===``){n({top_n:null});return}let t=Number.parseInt(e,10);Number.isNaN(t)||n({top_n:Math.max(1,t)})};return(0,W.jsxs)(`div`,{className:`share-knobs`,children:[(0,W.jsxs)(`div`,{className:`share-knob`,children:[(0,W.jsx)(`label`,{htmlFor:`share-knob-period`,children:`Period`}),(0,W.jsxs)(`select`,{id:`share-knob-period`,value:e.period.kind,onChange:e=>r({kind:e.target.value}),children:[(0,W.jsx)(`option`,{value:`current`,children:`This week`}),(0,W.jsx)(`option`,{value:`previous`,children:`Previous week`}),(0,W.jsx)(`option`,{value:`custom`,children:`Custom`})]}),e.period.kind===`custom`?(0,W.jsxs)(`div`,{className:`share-knob-period-custom`,children:[(0,W.jsxs)(`label`,{className:`share-knob-sublabel`,children:[(0,W.jsx)(`span`,{children:`Start`}),(0,W.jsx)(`input`,{type:`date`,value:e.period.start?.slice(0,10)??``,onChange:e=>r({start:e.target.value}),"aria-label":`Custom period start date`})]}),(0,W.jsxs)(`label`,{className:`share-knob-sublabel`,children:[(0,W.jsx)(`span`,{children:`End`}),(0,W.jsx)(`input`,{type:`date`,value:e.period.end?.slice(0,10)??``,onChange:e=>r({end:e.target.value}),"aria-label":`Custom period end date`})]})]}):null]}),(0,W.jsxs)(`div`,{className:`share-knob`,children:[(0,W.jsx)(`span`,{className:`share-knob-label`,children:`Theme`}),(0,W.jsxs)(`div`,{className:`share-knob-radiogroup`,role:`radiogroup`,"aria-label":`Theme`,children:[(0,W.jsxs)(`label`,{className:`share-knob-radio`,children:[(0,W.jsx)(`input`,{type:`radio`,name:`share-theme`,value:`light`,checked:e.theme===`light`,onChange:()=>n({theme:`light`})}),(0,W.jsx)(`span`,{children:`Light`})]}),(0,W.jsxs)(`label`,{className:`share-knob-radio`,children:[(0,W.jsx)(`input`,{type:`radio`,name:`share-theme`,value:`dark`,checked:e.theme===`dark`,onChange:()=>n({theme:`dark`})}),(0,W.jsx)(`span`,{children:`Dark`})]})]})]}),(0,W.jsxs)(`div`,{className:`share-knob`,children:[(0,W.jsx)(`label`,{htmlFor:`share-knob-topn`,children:`Top-N`}),(0,W.jsx)(`input`,{id:`share-knob-topn`,type:`number`,min:1,step:1,inputMode:`numeric`,value:e.top_n??``,onChange:e=>i(e.target.value),"aria-label":`Top-N`})]}),(0,W.jsxs)(`div`,{className:`share-knob`,children:[(0,W.jsx)(`span`,{className:`share-knob-label`,children:`Projects`}),(0,W.jsx)(`button`,{type:`button`,className:`share-knob-allowlist-stub`,disabled:!0,"aria-disabled":`true`,title:`Exports include all projects`,children:`All projects`})]}),(0,W.jsx)(`div`,{className:`share-knob`,children:(0,W.jsxs)(`label`,{className:`share-knob-checkbox`,children:[(0,W.jsx)(`input`,{type:`checkbox`,checked:e.show_chart,onChange:e=>n({show_chart:e.target.checked}),"aria-label":`Include chart in export`}),(0,W.jsx)(`span`,{children:`Show chart`})]})}),(0,W.jsx)(`div`,{className:`share-knob`,children:(0,W.jsxs)(`label`,{className:`share-knob-checkbox`,children:[(0,W.jsx)(`input`,{type:`checkbox`,checked:e.show_table,onChange:e=>n({show_table:e.target.checked}),"aria-label":`Include table in export`}),(0,W.jsx)(`span`,{children:`Show table`})]})}),(0,W.jsx)(`div`,{className:`share-knob`,children:(0,W.jsxs)(`label`,{className:`share-knob-checkbox`,children:[(0,W.jsx)(`input`,{type:`checkbox`,checked:!e.reveal_projects,onChange:e=>n({reveal_projects:!e.target.checked}),"aria-label":`Anonymize project names on export`}),(0,W.jsx)(`span`,{children:`Anon on export`})]})})]})}function Gf(e){(0,U.useEffect)(()=>{if(!e)return;let t=null,n=e=>{let t=e;t.key===`Escape`&&pe(t)},r=()=>{t&&=(t.removeEventListener(`keydown`,n),null)},i=()=>{r();let i=null;try{i=e.contentDocument}catch{i=null}i&&(i.addEventListener(`keydown`,n),t=i)};e.addEventListener(`load`,i);try{e.contentDocument&&e.contentDocument.readyState!==`loading`&&i()}catch{}return()=>{e.removeEventListener(`load`,i),r()}},[e])}var Kf=200,qf={status:`idle`,body:``,contentType:``,errorMessage:null,errorField:null};function Jf({panel:e,source:t=`claude`,account:n=null,templateId:r,options:i,onProjectNamesResolved:a,onPreviewFailed:o,artifactLabel:s=null}){let[c,l]=(0,U.useState)(qf),[u,d]=(0,U.useState)(null);Gf(u);let f=(0,U.useRef)(null),p=(0,U.useRef)(0),m=(0,U.useRef)(a);m.current=a;let h=(0,U.useRef)(o);if(h.current=o,(0,U.useEffect)(()=>{m.current?.(null)},[e,t,n,r]),(0,U.useEffect)(()=>{if(!r){l(qf),h.current?.(!1);return}l(e=>({...e,status:`loading`})),h.current?.(!1);let a=++p.current,o=setTimeout(()=>{f.current?.abort();let o=new AbortController;f.current=o,Bf({panel:e,template_id:r,options:{...i,reveal_projects:!0},source:t,account:n},{signal:o.signal}).then(e=>{a===p.current&&(l({status:`ready`,body:e.body,contentType:e.content_type,errorMessage:null,errorField:null}),h.current?.(!1),m.current?.(typeof e.has_project_names==`boolean`?e.has_project_names:null))}).catch(e=>{if(a===p.current&&!(e&&typeof e==`object`&&e.name===`AbortError`)){if(e instanceof Lf){l({status:`error`,body:``,contentType:``,errorMessage:e.message??`HTTP ${e.status}`,errorField:e.field??null}),h.current?.(!0);return}l({status:`error`,body:``,contentType:``,errorMessage:e.message??`Unknown error`,errorField:null}),h.current?.(!0)}})},Kf);return()=>{clearTimeout(o)}},[e,t,n,r,i]),(0,U.useEffect)(()=>()=>{f.current?.abort()},[]),!r)return(0,W.jsx)(`div`,{className:`share-preview share-preview-empty`,children:`Select a template to preview.`});if(c.status===`error`)return(0,W.jsxs)(`div`,{className:`share-preview share-preview-error`,role:`alert`,children:[(0,W.jsx)(`div`,{className:`share-preview-error-title`,children:`Preview failed`}),(0,W.jsxs)(`div`,{className:`share-preview-error-message`,children:[c.errorMessage,c.errorField?(0,W.jsxs)(`span`,{className:`share-preview-error-field`,children:[` `,`(field: `,c.errorField,`)`]}):null]})]});if(c.status===`loading`||c.status===`idle`)return(0,W.jsx)(`div`,{className:`share-preview share-preview-loading`,"aria-busy":`true`,children:`Rendering preview…`});let g=(0,W.jsx)(`div`,{className:`share-preview-source`,"aria-label":`Report source: ${Pr[t]}`,children:(0,W.jsx)(`span`,{className:`source-chip source-chip--${t}`,children:Pr[t]})});return i.format===`md`?(0,W.jsxs)(`div`,{className:`share-preview-wrap`,children:[g,(0,W.jsx)(`pre`,{className:`share-preview share-preview-md`,"aria-label":`Markdown preview`,children:c.body})]}):(0,W.jsxs)(`div`,{className:`share-preview-wrap`,children:[g,(0,W.jsx)(`iframe`,{className:`share-preview share-preview-iframe`,title:s?`Report preview — ${s}`:`Report preview`,tabIndex:-1,sandbox:`allow-same-origin`,srcDoc:c.body,ref:d})]})}var Yf={"current-week":`Current week`,trend:`Trend`,weekly:`Weekly`,daily:`Daily`,monthly:`Monthly`,blocks:`5-hour blocks`,forecast:`Forecast`,sessions:`Sessions`,projects:`Projects`};function Xf(e){return Yf[e]}function Zf(e){switch(e){case`md`:return`md`;case`html`:return`html`;case`svg`:return`svg`}}async function Qf(e){if(!e.ok){let t={};try{t=await e.json()}catch{}throw new Lf(e.status,t.field,t.error??`HTTP ${e.status}`,t.code)}return e.json()}async function $f(e){return Qf(await fetch(`/api/share/presets`,{signal:e?.signal}))}async function ep(e,t){return Qf(await fetch(`/api/share/presets`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e),signal:t?.signal}))}async function tp(e,t){return Qf(await fetch(`/api/share/presets/rename`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e),signal:t?.signal}))}async function np(e,t,n){let r=await fetch(`/api/share/presets/${encodeURIComponent(e)}/${encodeURIComponent(t)}`,{method:`DELETE`,signal:n?.signal});if(!r.ok){let e={};try{e=await r.json()}catch{}throw new Lf(r.status,void 0,e.error??`HTTP ${r.status}`)}}function rp(e){return e.kind??`panel`}function ip(e){return rp(e)===`composed`}async function ap(e){return Qf(await fetch(`/api/share/history`,{signal:e?.signal}))}async function op(e,t){let{account:n,...r}=e;return Qf(await fetch(`/api/share/history`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(n==null?r:{...r,account:n}),signal:t?.signal}))}async function sp(e,t){return Qf(await fetch(`/api/share/history`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({kind:`composed`,...e}),signal:t?.signal}))}function cp(e){return!(e==null||typeof e.focus!=`function`||!document.contains(e)||e.disabled===!0||typeof e.closest==`function`&&e.closest(`[inert]`)!=null)}var lp=250;function up(e){if(typeof requestAnimationFrame==`function`){let t=requestAnimationFrame(()=>e());return()=>cancelAnimationFrame(t)}let t=setTimeout(e,16);return()=>clearTimeout(t)}function dp(){let[e,t]=(0,U.useState)(null),n=(0,U.useRef)(null),r=(0,U.useRef)(null),[i,a]=(0,U.useState)(0),o=(0,U.useRef)(null),s=(0,U.useCallback)(()=>{o.current?.(),o.current=null,r.current=null},[]),c=(0,U.useCallback)(e=>{s(),r.current=e,a(e=>e+1)},[s]);(0,U.useEffect)(()=>{if(i===0)return;let e=r.current;if(r.current=null,e==null)return;let t=Date.now()+lp,n=()=>{if(o.current=null,cp(e)){e.focus();return}!document.contains(e)||Date.now()>=t||(o.current=up(n))};n()},[i]),(0,U.useEffect)(()=>()=>{o.current?.()},[]);let l=(0,U.useCallback)(e=>{s(),n.current=document.activeElement,t(e)},[s]),u=(0,U.useCallback)(()=>{let e=n.current;n.current=null,t(null),c(e)},[c]),d=(0,U.useCallback)(e=>{n.current=null,t(null),c(e?e():null)},[c]),f=(0,U.useCallback)(t=>e===t,[e]);return xe((0,U.useMemo)(()=>[{key:`Escape`,scope:`overlay`,layer:220,when:()=>e!=null,action:u}],[e,u])),{armed:e,arm:l,cancel:u,close:d,isArmed:f}}function fp({id:e,host:t,prompt:n,confirmLabel:r,cancelLabel:i=`Cancel`,onConfirm:a,className:o}){let s=`share-confirm-${e.replace(/[^a-zA-Z0-9_-]+/g,`-`)}`,c=(0,U.useRef)(null),l=t.isArmed(e);return(0,U.useEffect)(()=>{l&&c.current?.focus()},[l]),l?(0,W.jsxs)(`span`,{className:`share-confirm${o?` ${o}`:``}`,role:`group`,children:[(0,W.jsx)(`span`,{className:`share-confirm-prompt`,id:s,role:`status`,children:n}),(0,W.jsx)(`button`,{ref:c,type:`button`,className:`share-confirm-yes`,"aria-describedby":s,onClick:a,children:r}),(0,W.jsx)(`button`,{type:`button`,className:`share-confirm-no`,onClick:()=>t.cancel(),children:i})]}):null}var pp=`share-save-overwrite`;function mp({panel:e,source:t=`claude`,templateId:n,options:r,existingNames:i,focusAfterConfirm:a,onSaved:o,onCancel:s}){let[c,l]=(0,U.useState)(``),[u,d]=(0,U.useState)(!1),[f,p]=(0,U.useState)(null),[m,h]=(0,U.useState)([]),g=dp(),_=i??m;(0,U.useEffect)(()=>{if(i!=null)return;let t=new AbortController;return $f({signal:t.signal}).then(t=>h(Object.keys(t.presets[e]??{}))).catch(()=>{}),()=>t.abort()},[e,i]);async function v(i=!1){let a=c.trim();if(!a){p(`Name is required`);return}if(a.length>64){p(`Name must be 64 characters or fewer`);return}if(a.includes(`/`)){p(`Name cannot contain '/'`);return}if(!i&&_.includes(a)){g.arm(pp);return}d(!0),p(null);try{await ep({panel:e,name:a,template_id:n,options:r,source:t,...i?{overwrite:!0}:{}}),P({type:`SHOW_STATUS_TOAST`,text:`Saved preset "${a}"`}),o()}catch(e){if(e instanceof Lf&&e.code===`preset_name_conflict`){g.arm(pp);return}p((e instanceof Lf?e.message??`HTTP ${e.status}`:e.message)??`Save failed`)}finally{d(!1)}}return(0,W.jsxs)(`div`,{className:`share-save-popover`,role:`dialog`,"aria-label":`Save preset`,children:[(0,W.jsxs)(`label`,{className:`share-save-label`,children:[`Preset name`,(0,W.jsx)(`input`,{type:`text`,className:`share-save-input`,autoFocus:!0,value:c,maxLength:64,disabled:u,onChange:e=>l(e.target.value),onKeyDown:e=>{e.key===`Enter`?(e.preventDefault(),e.stopPropagation(),v()):e.key===`Escape`&&(e.preventDefault(),e.stopPropagation(),g.armed==null?s():g.cancel())}})]}),f?(0,W.jsx)(`div`,{className:`share-save-error`,role:`alert`,children:f}):null,(0,W.jsxs)(`div`,{className:`share-save-actions`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:s,disabled:u,children:`Cancel`}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>void v(),disabled:u,children:u?`Saving…`:`Save`})]}),(0,W.jsx)(fp,{id:pp,host:g,prompt:`"${c.trim()}" exists — saving replaces it`,confirmLabel:`Replace`,onConfirm:()=>{g.close(a),v(!0)}})]})}async function hp(e,t,n){let r=new Blob([e],{type:`image/svg+xml`}),i=URL.createObjectURL(r);try{let e=new Image;e.src=i,await e.decode();let r=document.createElement(`canvas`);r.width=e.naturalWidth*t,r.height=e.naturalHeight*t;let a=r.getContext(`2d`);if(!a)throw Error(`Could not acquire 2D canvas context`);a.fillStyle=n,a.fillRect(0,0,r.width,r.height),a.scale(t,t),a.drawImage(e,0,0);let o=await new Promise(e=>{r.toBlob(t=>e(t),`image/png`)});if(o)return o;let s=r.toDataURL(`image/png`);return(await fetch(s)).blob()}finally{URL.revokeObjectURL(i)}}function gp(){let e=window.open(``,`_blank`);if(!e)return null;try{e.opener=null}catch{}return e}function _p(){let e=gp();return e?{navigate(t){if(e.closed)throw Error(yp);let n=URL.createObjectURL(t);try{e.location.href=n}catch(e){throw URL.revokeObjectURL(n),e}},close(){try{e.close()}catch{}}}:null}var vp=`the browser blocked the new tab — allow pop-ups for this page and retry`,yp=`the new tab was closed before the export finished`;function bp(e){let t=document.createElement(`iframe`);t.setAttribute(`aria-hidden`,`true`),t.style.cssText=`position:fixed;right:0;bottom:0;width:0;height:0;border:0`,document.body.appendChild(t);let n=t.contentDocument;if(!n)throw t.remove(),Error(`iframe contentDocument unavailable`);n.open(),n.write(e),n.close();let r=t.contentWindow,i=!1;if(r&&typeof r.print==`function`)try{typeof r.focus==`function`&&r.focus(),r.print(),i=!0}catch{i=!1}if(!i){t.remove();let n=gp();if(!n)throw Error(vp);n.document.open(),n.document.write(e),n.document.close();return}setTimeout(()=>t.remove(),1e3)}function xp(e){op({panel:e.panel,template_id:e.template_id,options:e.options,format:e.options.format,destination:e.destination,source:e.source,account:e.account}).catch(()=>{})}function Sp(e){return e===`light`?`#ffffff`:`#0f172a`}var Cp=`The preview failed — an export may fail too.`,wp=`share-preview-failed-note`;function Tp(e,t){return`cctally-${e}-${new Date().toISOString().slice(0,10).replaceAll(`-`,``)}.${Zf(t)}`}function Ep(e){switch(e){case`md`:return`text/markdown;charset=utf-8`;case`html`:return`text/html;charset=utf-8`;case`svg`:return`image/svg+xml;charset=utf-8`}}function Dp(e,t){let n=URL.createObjectURL(t),r=document.createElement(`a`);r.href=n,r.download=e,r.style.display=`none`,document.body.appendChild(r),r.click(),document.body.removeChild(r),setTimeout(()=>URL.revokeObjectURL(n),0)}function Op({panel:e,source:t=`claude`,account:n=null,templateId:r,options:i,onOptionsChange:a,previewFailed:o=!1}){let[s,c]=(0,U.useState)(null),[l,u]=(0,U.useState)(null),[d,f]=(0,U.useState)(!1),p=(0,U.useRef)(null);(0,U.useEffect)(()=>()=>{p.current!=null&&clearTimeout(p.current)},[]);let[m,h]=(0,U.useState)(!1),g=(0,U.useRef)(null),_=(0,U.useRef)(null);(0,U.useEffect)(()=>{if(!m)return;function e(e){let t=g.current;t&&(t.contains(e.target)||h(!1))}return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[m]),xe((0,U.useMemo)(()=>[{key:`Escape`,scope:`overlay`,layer:205,when:()=>m,action:()=>h(!1)}],[m])),(0,U.useEffect)(()=>{u(null)},[i.format,r]);let v=r==null||s!=null,y=e=>P({type:`SHOW_STATUS_TOAST`,text:e}),b=async()=>{if(!r)throw Error(`no template selected`);return{body:(await Bf({panel:e,template_id:r,options:i,source:t,account:n})).body,format:i.format}},x=async()=>{if(!(v||!r)){c(`copy`),u(null);try{let{body:a}=await b();if(!navigator.clipboard||typeof navigator.clipboard.writeText!=`function`)throw Error(`Clipboard API unavailable in this browser`);await navigator.clipboard.writeText(a),y(`Copied`),xp({panel:e,template_id:r,options:i,destination:`copy`,source:t,account:n})}catch(e){u(`Copy failed: ${e instanceof Lf?e.message??`HTTP ${e.status}`:e.message}`)}finally{c(null)}}},C=async()=>{if(!(v||!r)){c(`download`),u(null);try{let{body:a,format:o}=await b(),s=new Blob([a],{type:Ep(o)});Dp(Tp(e,o),s),y(`Downloaded`),xp({panel:e,template_id:r,options:i,destination:`download`,source:t,account:n})}catch(e){u(`Download failed: ${e instanceof Lf?e.message??`HTTP ${e.status}`:e.message}`)}finally{c(null)}}},w=async()=>{if(!(v||!r)){c(`basket`),u(null);try{let a=await Bf({panel:e,template_id:r,options:i,source:t,account:n}),o=S({panel:e,template_id:r,options:i,added_at:new Date().toISOString(),data_digest_at_add:a.snapshot.data_digest,data_digest_version_at_add:a.snapshot.data_digest_version,kernel_version:a.snapshot.kernel_version,label_hint:Xf(e),source:t,account:n});P({type:`BASKET_ADD`,item:o});let s=L().basket;if(s.rejectedReason===`capacity`)return;f(!0),p.current!=null&&clearTimeout(p.current),p.current=setTimeout(()=>f(!1),800),P({type:`SHOW_STATUS_TOAST`,text:`Added ${o.label_hint} to basket (${s.items.length})`})}catch(e){u(`Add to basket failed: ${e instanceof Lf?e.message??`HTTP ${e.status}`:e.message}`)}finally{c(null)}}},T=async()=>{if(v||!r)return;let a=_p();if(!a){u(`Open failed: ${vp}`);return}c(`open`),u(null);try{let{body:o,format:s}=await b();a.navigate(new Blob([o],{type:Ep(s)})),y(`Opened`),xp({panel:e,template_id:r,options:i,destination:`open`,source:t,account:n})}catch(e){a.close(),u(`Open failed: ${e instanceof Lf?e.message??`HTTP ${e.status}`:e.message}`)}finally{c(null)}},E=async()=>{if(!(!r||i.format!==`svg`||v)){c(`png`),u(null);try{let{body:a}=await b(),o=await hp(a,2,Sp(i.theme));Dp(Tp(e,`svg`).replace(/\.svg$/,`.png`),o),y(`PNG downloaded`),xp({panel:e,template_id:r,options:i,destination:`png`,source:t,account:n})}catch(e){u(`PNG export failed: ${e instanceof Lf?e.message??`HTTP ${e.status}`:e.message}`)}finally{c(null)}}},D=async()=>{if(!(!r||i.format!==`html`||v)){c(`print`),u(null);try{let{body:a}=await b();bp(a),y(`Print dialog opened`),xp({panel:e,template_id:r,options:i,destination:`print`,source:t,account:n})}catch(e){u(`Print failed: ${e instanceof Lf?e.message??`HTTP ${e.status}`:e.message}`)}finally{c(null)}}},ee=i.format===`md`&&!v,O=(i.format===`html`||i.format===`svg`)&&!v,k=i.format===`svg`&&!v,A=i.format===`html`&&!v;return(0,W.jsxs)(`div`,{className:`share-actions`,children:[(0,W.jsxs)(`div`,{className:`share-format-row`,role:`radiogroup`,"aria-label":`Export format`,children:[(0,W.jsx)(`span`,{className:`share-format-label`,children:`Format:`}),[`md`,`html`,`svg`].map(e=>(0,W.jsxs)(`label`,{className:`share-format-radio`,children:[(0,W.jsx)(`input`,{type:`radio`,name:`share-format`,value:e,checked:i.format===e,onChange:()=>a({...i,format:e})}),(0,W.jsx)(`span`,{children:e})]},e))]}),o?(0,W.jsx)(`p`,{className:`share-preview-failed-note`,id:wp,children:Cp}):null,(0,W.jsxs)(`div`,{className:`share-action-row`,children:[(0,W.jsx)(`button`,{type:`button`,"aria-describedby":o?wp:void 0,className:`share-action share-action-copy`,onClick:x,disabled:!ee,title:i.format===`md`?s===`copy`?`Copying…`:`Copy to clipboard`:`Copy is available for Markdown only`,children:s===`copy`?`Copying…`:`Copy`}),(0,W.jsx)(`button`,{type:`button`,"aria-describedby":o?wp:void 0,className:`share-action share-action-download`,onClick:C,disabled:v,title:s===`download`?`Downloading…`:`Download file`,children:s===`download`?`Downloading…`:`Download`}),(0,W.jsx)(`button`,{type:`button`,"aria-describedby":o?wp:void 0,className:`share-action share-action-open`,onClick:T,disabled:!O,title:i.format===`html`||i.format===`svg`?s===`open`?`Opening…`:`Open in new tab`:`Open is available for HTML/SVG`,children:s===`open`?`Opening…`:`Open`}),(0,W.jsx)(`button`,{type:`button`,"aria-describedby":o?wp:void 0,className:`share-action share-action-png`,onClick:E,disabled:!k,title:i.format===`svg`?s===`png`?`Rasterizing…`:`Download PNG (rasterized from SVG)`:`PNG export — available for SVG format only`,children:s===`png`?`Rasterizing…`:`PNG`}),(0,W.jsx)(`button`,{type:`button`,"aria-describedby":o?wp:void 0,className:`share-action share-action-print`,onClick:D,disabled:!A,title:i.format===`html`?s===`print`?`Opening print dialog…`:`Open the browser print dialog (save as PDF)`:`Print → PDF — available for HTML format only`,children:s===`print`?`Printing…`:`Print → PDF`}),(0,W.jsx)(`button`,{type:`button`,className:`share-action share-action-basket${d?` share-action-basket-added`:``}`,onClick:w,disabled:v,title:v&&r==null?`Pick a template first`:s===`basket`?`Adding to basket…`:`Add this section to the report basket`,children:d?`✓ Added`:s===`basket`?`Adding…`:`+ Basket`})]}),(0,W.jsxs)(`div`,{className:`share-save-preset-row`,ref:g,children:[(0,W.jsx)(`button`,{ref:_,type:`button`,className:`share-save-preset`,disabled:r==null||s!=null,onClick:()=>h(e=>!e),"aria-haspopup":`dialog`,"aria-expanded":m,title:r==null?`Pick a template first`:`Save the current recipe as a named preset`,children:`Save preset…`}),m&&r?(0,W.jsx)(mp,{panel:e,source:t,templateId:r,options:i,focusAfterConfirm:()=>_.current,onSaved:()=>{h(!1),_.current?.focus()},onCancel:()=>{h(!1),_.current?.focus()}}):null]}),l?(0,W.jsx)(`div`,{className:`share-action-error`,role:`alert`,children:l}):null]})}var kp=`share-presets-trigger`;function Ap(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function jp({panel:e,onPick:t,onManage:n}){let[r,i]=(0,U.useState)(!1),[a,o]=(0,U.useState)({}),[s,c]=(0,U.useState)([]),[l,u]=(0,U.useState)(null),d=(0,U.useRef)(null);(0,U.useEffect)(()=>{if(!r)return;let t=new AbortController;return u(null),Promise.all([$f({signal:t.signal}),ap({signal:t.signal})]).then(([t,n])=>{o(t.presets[e]??{}),c(n.history.filter(t=>ip(t)||t.panel===e).slice().reverse())}).catch(e=>{e?.name!==`AbortError`&&u((e instanceof Lf?e.message??`HTTP ${e.status}`:e.message)??`Failed to load presets`)}),()=>t.abort()},[r,e]),(0,U.useEffect)(()=>{if(!r)return;function e(e){let t=d.current;t&&(t.contains(e.target)||i(!1))}return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[r]),xe((0,U.useMemo)(()=>[{key:`Escape`,scope:`overlay`,layer:205,when:()=>r,action:()=>i(!1)}],[r]));let f=Object.keys(a).sort();return(0,W.jsxs)(`div`,{className:`share-presets-dropdown`,ref:d,children:[(0,W.jsx)(`button`,{type:`button`,id:kp,className:`share-presets-trigger`,"aria-haspopup":`menu`,"aria-expanded":r,onClick:()=>i(e=>!e),children:`presets ▾`}),r?(0,W.jsxs)(`div`,{className:`share-presets-menu`,role:`menu`,children:[l?(0,W.jsx)(`div`,{className:`share-presets-error`,role:`alert`,children:l}):null,f.length===0&&!l?(0,W.jsx)(`div`,{className:`share-presets-empty`,children:`No saved presets yet.`}):null,f.length>0?(0,W.jsx)(`ul`,{className:`share-presets-list`,children:f.map(e=>(0,W.jsxs)(`li`,{className:`share-presets-row`,children:[(0,W.jsx)(`button`,{type:`button`,role:`menuitem`,className:`share-presets-item`,onClick:()=>{t(a[e].template_id,a[e].options),i(!1)},children:e}),(0,W.jsx)(`span`,{className:`source-chip source-chip--${a[e].source??`claude`}`,children:Pr[a[e].source??`claude`]})]},e))}):null,s.length>0?(0,W.jsxs)(`div`,{className:`share-presets-history`,children:[(0,W.jsx)(`div`,{className:`share-presets-history-heading`,role:`presentation`,children:`Recent shares`}),(0,W.jsx)(`ul`,{className:`share-presets-history-list`,children:s.map(e=>ip(e)?(0,W.jsx)(`li`,{className:`share-presets-history-row share-presets-history-row--composed`,children:(0,W.jsxs)(`span`,{className:`share-presets-history-composed`,title:`${e.composite.title} · ${e.format??`unknown`} · ${e.exported_at}`,children:[(0,W.jsx)(`span`,{className:`share-presets-history-template`,children:`Composed`}),(0,W.jsxs)(`span`,{className:`share-presets-history-meta`,children:[` · `,e.sections.length,e.sections.length===1?` section`:` sections`,` · `,e.format??`unknown`,` · `,Ap(e.exported_at)]})]})},e.recipe_id):(0,W.jsxs)(`li`,{className:`share-presets-history-row`,children:[(0,W.jsxs)(`button`,{type:`button`,role:`menuitem`,className:`share-presets-history-item`,onClick:()=>{t(e.template_id,e.options),i(!1)},title:`${e.template_id} · ${Pr[e.source??`claude`]} · ${e.format??`unknown`} · ${e.exported_at}`,children:[(0,W.jsx)(`span`,{className:`share-presets-history-template`,children:e.template_id}),(0,W.jsxs)(`span`,{className:`share-presets-history-meta`,children:[` · `,e.format??`unknown`,` · `,Ap(e.exported_at)]})]}),(0,W.jsx)(`span`,{className:`source-chip source-chip--${e.source??`claude`}`,children:Pr[e.source??`claude`]})]},e.recipe_id))})]}):null,(0,W.jsx)(`div`,{className:`share-presets-footer`,children:(0,W.jsx)(`button`,{type:`button`,role:`menuitem`,className:`share-presets-manage`,onClick:()=>{n(),i(!1)},children:`Manage presets…`})})]}):null]})}var Mp=`share-manage-presets-title`,Np=`share-manage-presets-name-heading`;function Pp(e,t,n){let r=Array.from(document.querySelectorAll(`.share-manage-table tbody tr`)),i=new Set([`${e}/${t}`]);n!=null&&i.add(`${e}/${n}`);let a=r.findIndex(n=>n.dataset.presetKey===`${e}/${t}`);if(a>=0)for(let e of r.slice(a+1)){if(e.dataset.presetKey!=null&&i.has(e.dataset.presetKey))continue;let t=e.querySelector(`.share-manage-actions button`);if(t)return t}return document.getElementById(Np)}function Fp({open:e,onClose:t,shareIsTopmost:n=!0}){let[r,i]=(0,U.useState)([]),[a,o]=(0,U.useState)(!1),[s,c]=(0,U.useState)(null),l=dp(),u=In(),d={tz:u.resolvedTz,offsetLabel:u.offsetLabel};xe((0,U.useMemo)(()=>e?[{key:`Escape`,scope:`overlay`,layer:208,action:t}]:[],[e,t]));let f=(0,U.useRef)(null);Er(f,{active:e,trapEnabled:n&&e,triggerId:kp,initialFocus:`heading`}),(0,U.useEffect)(()=>{if(!e)return;let t=!1;return c(null),(async()=>{try{let e=await $f();if(t)return;let n=[];for(let[t,r]of Object.entries(e.presets))for(let[e,i]of Object.entries(r))n.push({panel:t,name:e,record:i});n.sort((e,t)=>e.panel===t.panel?e.name.localeCompare(t.name):e.panel.localeCompare(t.panel)),i(n)}catch(e){if(t)return;c((e instanceof Lf?e.message??`HTTP ${e.status}`:e.message)??`Failed to load presets`)}})(),()=>{t=!0}},[e]);async function p(e){o(!0),c(null);let t=Pp(e.panel,e.name);try{await np(e.panel,e.name)}catch(e){c((e instanceof Lf?e.message??`HTTP ${e.status}`:e.message)??`Delete failed`),o(!1);return}i(t=>t.filter(t=>!(t.panel===e.panel&&t.name===e.name))),o(!1),l.close(()=>t),P({type:`SHOW_STATUS_TOAST`,text:`Deleted preset "${e.name}"`})}async function m(e,t,n=!1){o(!0),c(null);let r;try{r=await tp({panel:e.panel,from_name:e.name,to_name:t,...n?{overwrite:!0}:{}})}catch(e){return o(!1),e instanceof Lf&&e.code===`preset_name_conflict`?`conflict`:(c((e instanceof Lf?e.message??`HTTP ${e.status}`:e.message)??`Rename failed`),`error`)}return i(i=>(n?i.filter(n=>!(n.panel===e.panel&&n.name===t)):i).map(n=>n.panel===e.panel&&n.name===e.name?{...n,name:t,record:{template_id:r.template_id,options:r.options,saved_at:r.saved_at,...r.source?{source:r.source}:{}}}:n)),o(!1),P({type:`SHOW_STATUS_TOAST`,text:`Renamed to "${t}"`}),`ok`}return e?(0,W.jsx)(`div`,{className:`share-manage-overlay`,children:(0,W.jsxs)(`div`,{className:`share-manage-modal`,ref:f,role:`dialog`,"aria-modal":`true`,"aria-labelledby":Mp,onClick:e=>e.stopPropagation(),children:[(0,W.jsx)(Xs,{title:`Manage presets`,titleId:Mp,className:`share-manage-header`,onClose:t,closeClassName:`share-manage-close`}),(0,W.jsxs)(`div`,{className:`share-manage-content`,children:[s?(0,W.jsx)(`div`,{className:`share-manage-error`,role:`alert`,children:s}):null,r.length===0&&!s?(0,W.jsx)(`p`,{className:`share-manage-empty`,children:`No saved presets yet.`}):null,r.length>0?(0,W.jsxs)(`table`,{className:`share-manage-table`,children:[(0,W.jsx)(`thead`,{children:(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`th`,{children:`Panel`}),(0,W.jsx)(`th`,{id:Np,tabIndex:-1,children:`Name`}),(0,W.jsx)(`th`,{children:`Saved at`}),(0,W.jsx)(`th`,{})]})}),(0,W.jsx)(`tbody`,{children:r.map(e=>(0,W.jsx)(Ip,{row:e,busy:a,confirm:l,savedAtLabel:B.datetimeShort(e.record.saved_at,d),onDelete:()=>void p(e),onRename:(t,n)=>m(e,t,n)},`${e.panel}/${e.name}`))})]}):null]})]})}):null}function Ip({row:e,busy:t,confirm:n,savedAtLabel:r,onDelete:i,onRename:a}){let[o,s]=(0,U.useState)(!1),[c,l]=(0,U.useState)(e.name),[u,d]=(0,U.useState)(null),f=`${e.panel}/${e.name}`,p=`delete:${f}`,m=`rename:${f}`,h=n.isArmed(p),g=n.isArmed(m),_=()=>{let t=c.trim();if(!t||t===e.name){l(e.name),s(!1);return}s(!1),a(t).then(e=>{e===`conflict`&&(d(t),n.arm(m))})};return(0,W.jsxs)(`tr`,{"data-preset-key":f,children:[(0,W.jsx)(`td`,{children:Xf(e.panel)}),(0,W.jsx)(`td`,{children:o?(0,W.jsx)(`input`,{className:`share-manage-name-input`,autoFocus:!0,value:c,disabled:t,maxLength:64,onChange:e=>l(e.target.value),onKeyDown:t=>{t.key===`Enter`?(t.preventDefault(),_()):t.key===`Escape`&&(t.preventDefault(),t.stopPropagation(),l(e.name),s(!1))}}):(0,W.jsx)(`span`,{children:e.name})}),(0,W.jsx)(`td`,{children:(0,W.jsx)(`time`,{dateTime:e.record.saved_at,children:r})}),(0,W.jsxs)(`td`,{className:`share-manage-actions`,children:[!h&&!g?o?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`button`,{type:`button`,disabled:t,onClick:_,children:`Save`}),(0,W.jsx)(`button`,{type:`button`,disabled:t,onClick:()=>{l(e.name),s(!1)},children:`Cancel`})]}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`button`,{type:`button`,disabled:t,onClick:()=>s(!0),children:`Rename`}),(0,W.jsx)(`button`,{type:`button`,disabled:t,onClick:()=>n.arm(p),children:`Delete`})]}):null,(0,W.jsx)(fp,{id:p,host:n,prompt:`Delete "${e.name}"?`,confirmLabel:`Delete`,onConfirm:i}),(0,W.jsx)(fp,{id:m,host:n,prompt:`A preset named "${u??``}" already exists`,confirmLabel:`Replace it`,onConfirm:()=>{let t=u;if(t==null)return;let r=Pp(e.panel,e.name,t);a(t,!0).then(e=>{e===`ok`&&(d(null),n.close(()=>r))})}})]})]})}function Lp(){return{format:`md`,theme:`light`,reveal_projects:!1,no_branding:!1,top_n:5,period:{kind:`current`},project_allowlist:null,show_chart:!0,show_table:!0}}function Rp(e,t){if(!t)return e;let n={...e,...t};return t.period&&(n.period={...e.period,...t.period}),n}function zp({revealProjects:e,hasProjectNames:t}){let n=t===!1,r=n?`neutral`:e?`warn`:`info`,i=n?`This export contains no project names.`:e?`Export will show real project names.`:`Preview shows real names. Export is anonymized.`;return(0,W.jsx)(`p`,{className:`share-privacy-status share-privacy-status--${r}`,role:`status`,"aria-live":`polite`,children:i})}function Bp({panel:e,source:t=`claude`,account:n=null,onClose:r,initialParams:i}){let a=(0,U.useRef)(null),[o,s]=(0,U.useState)(null),[c,l]=(0,U.useState)(!1),u=Xf(e),[d,f]=(0,U.useState)(null),[p,m]=(0,U.useState)(null),[h,g]=(0,U.useState)(null),[_,v]=(0,U.useState)(()=>{let e=Lp();return i?.windowWeeks==null?e:{...e,windowWeeks:i.windowWeeks}}),y=(0,U.useRef)(!1),[b,x]=(0,U.useState)(!1),S=`share-modal-title`;Ar(!0);let C=(0,U.useSyncExternalStore)(V,()=>te(L())===`share`);Er(a,{active:!0,trapEnabled:C&&!b,initialFocus:`heading`}),xe((0,U.useMemo)(()=>[{key:`Escape`,scope:`overlay`,layer:200,when:()=>!b&&L().composerModal===null,action:r}],[r,b])),(0,U.useEffect)(()=>{let t=!1;return f(null),m(null),zf(e).then(e=>{if(t)return;f(e.templates);let n=e.templates[0];n&&(g(n.id),y.current||v(e=>Rp(e,n.default_options)))}).catch(e=>{t||m(e instanceof Lf?`Couldn't load templates: ${e.message??`HTTP ${e.status}`}`:`Couldn't load templates: ${e.message}`)}),()=>{t=!0}},[e]),(0,U.useEffect)(()=>{if(!d||!h||y.current)return;let e=d.find(e=>e.id===h);e&&v(t=>Rp(t,e.default_options))},[h,d]);let w=(0,U.useMemo)(()=>{if(!d||!h)return null;let e=d.find(e=>e.id===h);return e?`${u} — ${e.label}`:null},[d,h,u]),T=e=>{y.current=!0,v(e)};return(0,W.jsxs)(`div`,{ref:a,className:`share-modal`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":S,onClick:e=>e.stopPropagation(),children:[(0,W.jsx)(Xs,{title:`Share ${u} report`,titleId:S,className:`share-modal-header`}),(0,W.jsx)(`div`,{className:`share-modal-source`,"aria-label":`Source: ${Pr[t]}`,children:(0,W.jsx)(`span`,{className:`source-chip source-chip--${t}`,children:Pr[t]})}),(0,W.jsxs)(`div`,{className:`share-modal-body`,children:[(0,W.jsxs)(`section`,{className:`share-section share-gallery-section`,"aria-label":`Template gallery`,children:[(0,W.jsx)(`div`,{className:`share-gallery-header`,children:(0,W.jsx)(jp,{panel:e,onPick:(e,t)=>{g(e),y.current=!0,v(e=>({...e,...t}))},onManage:()=>x(!0)})}),(0,W.jsx)(Uf,{panel:e,templates:d,error:p,selectedTemplateId:h,onSelect:e=>g(e)})]}),(0,W.jsx)(`div`,{className:`share-knobs-col`,"aria-label":`Render options`,children:(0,W.jsx)(Wf,{options:_,onChange:T})}),(0,W.jsxs)(`div`,{className:`share-preview-col`,"aria-label":`Live preview`,children:[c?null:(0,W.jsx)(zp,{revealProjects:!!_.reveal_projects,hasProjectNames:o}),(0,W.jsx)(Jf,{panel:e,source:t,account:n,templateId:h,options:_,artifactLabel:w,onProjectNamesResolved:s,onPreviewFailed:l})]})]}),(0,W.jsx)(`footer`,{className:`share-modal-footer`,children:(0,W.jsx)(Op,{panel:e,source:t,account:n,previewFailed:c,templateId:h,options:_,onOptionsChange:T})}),(0,W.jsx)(Ys,{className:`share-modal-close`,label:`Close share modal`,onClose:r}),(0,W.jsx)(Fp,{open:b,shareIsTopmost:C,onClose:()=>x(!1)})]})}function Vp(e,t){return{title:t.title,theme:t.theme,format:t.format,no_branding:t.no_branding,reveal_projects:t.reveal_projects,sections:e.map(e=>({snapshot:{panel:e.panel,template_id:e.template_id,options:e.options,data_digest_at_add:e.data_digest_at_add,...e.data_digest_version_at_add==null?{}:{data_digest_version_at_add:e.data_digest_version_at_add},kernel_version:e.kernel_version,source:e.source,...e.account==null?{}:{account:e.account}}}))}}async function Hp(e,t){let n=await fetch(`/api/share/compose`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e),signal:t?.signal});if(!n.ok){let e={};try{e=await n.json()}catch{}throw new Lf(n.status,e.field,e.error??`HTTP ${n.status}`,e.code)}return n.json()}function Up({items:e,results:t,kernelVersion:n,onRefresh:r,onRemove:i}){let a=Jl(ql(Yu,{activationConstraint:{distance:4}}),ql(Wu,{coordinateGetter:Sf})),[o,s]=(0,U.useState)(null);xe((0,U.useMemo)(()=>[{key:`Escape`,scope:`overlay`,layer:215,when:()=>o!==null,action:()=>{let e=o;s(null),e&&document.getElementById(`composer-kebab-${e}`)?.focus()}}],[o]));function c(t){if(!t.over||t.active.id===t.over.id)return;let n=e.findIndex(e=>e.id===t.active.id),r=e.findIndex(e=>e.id===t.over.id);n<0||r<0||P({type:`BASKET_REORDER`,fromIdx:n,toIdx:r})}return(0,W.jsx)(Kd,{sensors:a,collisionDetection:nu,onDragEnd:c,children:(0,W.jsx)(uf,{items:e.map(e=>e.id),strategy:sf,children:(0,W.jsx)(`ul`,{className:`composer-section-list`,children:e.map((e,a)=>(0,W.jsx)(Wp,{item:e,result:t[a],kernelVersion:n,onRefresh:r,onRemove:i,isKebabOpen:o===e.id,onKebabToggle:()=>s(t=>t===e.id?null:e.id),onKebabClose:()=>s(null)},e.id))})})})}function Wp({item:e,result:t,kernelVersion:n,onRefresh:r,onRemove:i,isKebabOpen:a,onKebabToggle:o,onKebabClose:s}){let{attributes:c,listeners:l,setNodeRef:u,transform:d,transition:f,isDragging:p}=vf({id:e.id}),m=ls(),h={transform:Ml.Transform.toString(d),transition:m?void 0:f,opacity:p?.4:1},g=t?.drift_detected,_=e.kernel_version!==n,v=!!(g||_);return(0,W.jsxs)(`li`,{ref:u,style:h,className:`composer-section-row`,children:[(0,W.jsx)(`button`,{className:`composer-drag-handle`,"aria-label":`Reorder ${e.label_hint}`,type:`button`,...c,...l,children:`≡`}),(0,W.jsx)(`span`,{className:`composer-section-label`,children:e.label_hint}),(0,W.jsx)(`span`,{className:`source-chip source-chip--${e.source}`,children:Pr[e.source]}),v?(0,W.jsx)(`span`,{className:`composer-outdated-badge`,title:g&&_?`Data and kernel both shifted since add-time. Refresh to update.`:g?`Data has changed since this section was added. Refresh to update.`:`Kernel updated since this section was added. Refresh to re-render at the new version.`,children:`Outdated`}):null,(0,W.jsxs)(`div`,{className:`composer-section-actions`,children:[(0,W.jsx)(`button`,{type:`button`,id:`composer-kebab-${e.id}`,"aria-expanded":a,"aria-controls":a?`composer-kebab-menu-${e.id}`:void 0,onClick:o,"aria-label":`Actions for ${e.label_hint}`,children:`⋯`}),a?(0,W.jsxs)(`ul`,{id:`composer-kebab-menu-${e.id}`,className:`composer-section-menu`,children:[(0,W.jsx)(`li`,{children:(0,W.jsx)(`button`,{type:`button`,onClick:()=>{r(e.id),s()},children:`Refresh from current data`})}),(0,W.jsx)(`li`,{children:(0,W.jsx)(`button`,{type:`button`,onClick:()=>{i(e.id),s()},"aria-label":`Remove ${e.label_hint}`,children:`Remove`})})]}):null]})]})}function Gp(e,t){return t&&e>0}function Kp(e){return`cctally-report-${new Date().toISOString().slice(0,10).replaceAll(`-`,``)}.${e===`md`?`md`:e}`}function qp(e){switch(e){case`md`:return`text/markdown;charset=utf-8`;case`html`:return`text/html;charset=utf-8`;case`svg`:return`image/svg+xml;charset=utf-8`}}var Jp=`composer-clear-all`,Yp=`composer-preview-failed-note`;function Xp(e){return`${e} ${e===1?`section`:`sections`}`}function Zp(e){return e===`light`?`#ffffff`:`#0f172a`}function Qp(e,t){let n=URL.createObjectURL(t),r=document.createElement(`a`);r.href=n,r.download=e,r.style.display=`none`,document.body.appendChild(r),r.click(),document.body.removeChild(r),setTimeout(()=>URL.revokeObjectURL(n),0)}var $p=200;function em(){return L().composerModal}function tm(){return L().basket}var nm=`composer-modal-title`;function rm(){let e=(0,U.useSyncExternalStore)(V,em),t=(0,U.useSyncExternalStore)(V,tm),n=Pn(),r=dp(),i=(0,U.useRef)(null);Ar(e?.open??!1),Er(i,{active:e?.open??!1,initialFocus:`heading`});let[a,o]=(0,U.useState)(``),[s,c]=(0,U.useState)(`light`),[l,u]=(0,U.useState)(`html`),[d,f]=(0,U.useState)(!0),[p,m]=(0,U.useState)(!1),[h,g]=(0,U.useState)(null),[_,v]=(0,U.useState)(null),[y,b]=(0,U.useState)(!1),[x,C]=(0,U.useState)(null);Gf(x);let w=(0,U.useRef)(null),[T,E]=(0,U.useState)(null),[D,ee]=(0,U.useState)(null);(0,U.useEffect)(()=>{ee(null)},[l,s,d,p]),xe((0,U.useMemo)(()=>[{key:`Escape`,scope:`overlay`,layer:210,when:()=>L().composerModal!==null,action:()=>P(Ae())}],[])),(0,U.useEffect)(()=>{e?.open&&a===``&&o(`cctally report — ${new Date().toISOString().slice(0,10)}`)},[e?.open,a]),(0,U.useEffect)(()=>{if(!e?.open||t.items.length===0||a===``)return;let n=setTimeout(()=>{w.current?.abort();let e=new AbortController;w.current=e,b(!0),v(null),Hp(Vp(t.items,{title:a,theme:s,format:l,no_branding:p,reveal_projects:!d}),{signal:e.signal}).then(t=>{e.signal.aborted||g(t)}).catch(t=>{t?.name!==`AbortError`&&(e.signal.aborted||v(t instanceof Lf?t.message??`HTTP ${t.status}`:t.message))}).finally(()=>{e.signal.aborted||b(!1)})},$p);return()=>clearTimeout(n)},[e?.open,t.items,a,s,l,d,p]);async function O(e){let n=t.items.findIndex(t=>t.id===e);if(n<0)return;let r=t.items[n];try{let t=await Bf({panel:r.panel,template_id:r.template_id,options:{...r.options,reveal_projects:!d},source:r.source,account:r.account}),i=S({panel:r.panel,template_id:r.template_id,options:r.options,added_at:new Date().toISOString(),data_digest_at_add:t.snapshot.data_digest,kernel_version:t.snapshot.kernel_version,label_hint:r.label_hint,source:r.source,account:r.account,id:r.id});P({type:`BASKET_REMOVE`,id:e}),P({type:`BASKET_ADD`,item:i});let a=L().basket.items.length-1;a!==n&&P({type:`BASKET_REORDER`,fromIdx:a,toIdx:n})}catch(e){v(`Refresh failed: ${e instanceof Lf?e.message??`HTTP ${e.status}`:e.message}`)}}let k=async e=>{let n=await Hp(Vp(t.items,{title:a,theme:s,format:e,no_branding:p,reveal_projects:!d}));return{body:n.body,content_type:n.content_type}},A=e=>P({type:`SHOW_STATUS_TOAST`,text:e}),j=(e,n)=>{sp({sections:t.items.map(e=>({panel:e.panel,template_id:e.template_id,options:e.options,source:e.source,...e.account==null?{}:{account:e.account}})),composite:{title:a,theme:s,reveal_projects:!d,no_branding:p},format:n,destination:e}).catch(()=>{})},M=async(e,t,n)=>{if(T==null){E(e),ee(null);try{await t()}catch(e){ee(`${n} failed: ${e instanceof Lf?e.message??`HTTP ${e.status}`:e.message}`)}finally{E(null)}}},N=()=>M(`copy`,async()=>{let{body:e}=await k(`md`);if(!navigator.clipboard||typeof navigator.clipboard.writeText!=`function`)throw Error(`Clipboard API unavailable in this browser`);await navigator.clipboard.writeText(e),A(`Copied`),j(`copy`,`md`)},`Copy`),te=()=>M(`download`,async()=>{let{body:e}=await k(l),t=new Blob([e],{type:qp(l)});Qp(Kp(l),t),A(`Downloaded`),j(`download`,l)},`Download`),ne=()=>{if(T!=null)return;let e=_p();if(!e){ee(`Open failed: ${vp}`);return}M(`open`,async()=>{try{let{body:t}=await k(l);e.navigate(new Blob([t],{type:qp(l)}))}catch(t){throw e.close(),t}A(`Opened`),j(`open`,l)},`Open`)},F=()=>M(`png`,async()=>{let{body:e}=await k(`svg`),t=await hp(e,2,Zp(s));Qp(Kp(`svg`).replace(/\.svg$/,`.png`),t),A(`PNG downloaded`),j(`png`,`svg`)},`PNG export`),re=()=>M(`print`,async()=>{let{body:e}=await k(`html`);bp(e),A(`Print dialog opened`),j(`print`,`html`)},`Print`),I=T==null&&l===`md`&&t.items.length>0,ie=T==null&&t.items.length>0,ae=T==null&&(l===`html`||l===`svg`)&&t.items.length>0,R=T==null&&l===`svg`&&t.items.length>0,oe=T==null&&l===`html`&&t.items.length>0,z=!d,se=Gp(t.items.length,z),ce=z?t.items.length:0;if(!e?.open)return null;let le=(0,W.jsx)(Xs,{title:`Compose report`,titleId:nm,className:`composer-modal-header`,onClose:()=>P(Ae()),closeClassName:`composer-modal-close`});return t.items.length===0?(0,W.jsxs)(`div`,{className:`composer-modal composer-modal-empty${n?` composer-modal-mobile`:``}`,ref:i,tabIndex:-1,role:`dialog`,"aria-modal":`true`,"aria-labelledby":nm,children:[le,(0,W.jsx)(`p`,{className:`composer-empty-message`,children:`Basket is empty. Open any panel's share menu and pick + Basket to add a section.`})]}):(0,W.jsxs)(`div`,{className:`composer-modal${n?` composer-modal-mobile`:``}`,ref:i,tabIndex:-1,role:`dialog`,"aria-modal":`true`,"aria-labelledby":nm,children:[le,(0,W.jsxs)(`div`,{className:`composer-knobs`,children:[(0,W.jsxs)(`label`,{children:[`Title`,(0,W.jsx)(`input`,{type:`text`,value:a,onChange:e=>o(e.target.value)})]}),(0,W.jsxs)(`label`,{children:[`Theme`,(0,W.jsxs)(`select`,{value:s,onChange:e=>c(e.target.value),children:[(0,W.jsx)(`option`,{value:`light`,children:`light`}),(0,W.jsx)(`option`,{value:`dark`,children:`dark`})]})]}),(0,W.jsxs)(`label`,{children:[`Format`,(0,W.jsxs)(`select`,{value:l,onChange:e=>u(e.target.value),children:[(0,W.jsx)(`option`,{value:`html`,children:`html`}),(0,W.jsx)(`option`,{value:`md`,children:`md`}),(0,W.jsx)(`option`,{value:`svg`,children:`svg`})]})]}),(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`checkbox`,checked:d,onChange:e=>f(e.target.checked)}),`Anon on export`]}),(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`checkbox`,checked:p,onChange:e=>m(e.target.checked)}),`No branding`]})]}),se?(0,W.jsxs)(`div`,{className:`composer-anon-banner`,role:`status`,"aria-live":`polite`,children:[(0,W.jsxs)(`span`,{children:[ce,` section`,ce===1?``:`s`,` contain real project names. They will appear in the export.`]}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>f(!0),children:`Anonymize all`})]}):null,(0,W.jsxs)(`div`,{className:`composer-body`,children:[(0,W.jsx)(Up,{items:t.items,results:h?.snapshot.section_results??[],kernelVersion:h?.snapshot.kernel_version??1,onRefresh:e=>{O(e)},onRemove:e=>P({type:`BASKET_REMOVE`,id:e})}),(0,W.jsxs)(`figure`,{className:`composer-preview-frame`,children:[(0,W.jsxs)(`figcaption`,{className:`composer-preview-label`,children:[`Preview · `,s]}),(0,W.jsx)(`iframe`,{className:`composer-preview`,title:`Combined preview`,tabIndex:-1,sandbox:`allow-same-origin`,srcDoc:h?.body??`<p>Composing&hellip;</p>`,ref:C})]})]}),y?(0,W.jsx)(`div`,{className:`composer-busy`,children:`Composing…`}):null,_?(0,W.jsx)(`div`,{className:`composer-error`,role:`alert`,children:_}):null,D?(0,W.jsx)(`div`,{className:`composer-error`,role:`alert`,children:D}):null,(0,W.jsxs)(`footer`,{className:`composer-actions`,children:[_?(0,W.jsx)(`p`,{className:`share-preview-failed-note`,id:Yp,children:Cp}):null,(0,W.jsxs)(`div`,{className:`composer-export-row`,children:[(0,W.jsx)(`button`,{type:`button`,"aria-describedby":_?Yp:void 0,className:`share-action share-action-copy`,onClick:N,disabled:!I,title:l===`md`?T===`copy`?`Copying…`:`Copy composed report to clipboard`:`Copy is available for Markdown only`,children:T===`copy`?`Copying…`:`Copy`}),(0,W.jsx)(`button`,{type:`button`,"aria-describedby":_?Yp:void 0,className:`share-action share-action-download`,onClick:te,disabled:!ie,title:T===`download`?`Downloading…`:`Download composed report`,children:T===`download`?`Downloading…`:`Download`}),(0,W.jsx)(`button`,{type:`button`,"aria-describedby":_?Yp:void 0,className:`share-action share-action-open`,onClick:ne,disabled:!ae,title:l===`html`||l===`svg`?T===`open`?`Opening…`:`Open composed report in new tab`:`Open is available for HTML/SVG`,children:T===`open`?`Opening…`:`Open`}),(0,W.jsx)(`button`,{type:`button`,"aria-describedby":_?Yp:void 0,className:`share-action share-action-png`,onClick:F,disabled:!R,title:l===`svg`?T===`png`?`Rasterizing…`:`Download composed report as PNG`:`PNG export — available for SVG format only`,children:T===`png`?`Rasterizing…`:`PNG`}),(0,W.jsx)(`button`,{type:`button`,"aria-describedby":_?Yp:void 0,className:`share-action share-action-print`,onClick:re,disabled:!oe,title:l===`html`?T===`print`?`Opening print dialog…`:`Open the browser print dialog (save as PDF)`:`Print → PDF — available for HTML format only`,children:T===`print`?`Printing…`:`Print → PDF`})]}),(0,W.jsx)(`button`,{type:`button`,className:`composer-clear-all`,onClick:()=>r.arm(Jp),children:`Clear all`}),(0,W.jsx)(fp,{id:Jp,host:r,prompt:`Clear ${Xp(t.items.length)}?`,confirmLabel:`Clear ${Xp(t.items.length)}`,onConfirm:()=>{P({type:`BASKET_CLEAR`}),r.close(()=>document.querySelector(`.composer-modal-close`))}})]})]})}function im(){let e=(0,U.useSyncExternalStore)(V,()=>L().shareModal),t=(0,U.useRef)(null),n=(0,U.useRef)(!1);(0,U.useEffect)(()=>{if(e)n.current||(n.current=!0,t.current=(e.triggerId?document.getElementById(e.triggerId):null)??document.activeElement);else if(n.current){n.current=!1;let e=t.current;if(t.current=null,e&&typeof e.focus==`function`&&document.contains(e))e.focus();else{let e=document.activeElement;e&&typeof e.blur==`function`&&e.blur(),document.body.focus()}}},[e]);let i=()=>P(r());return(0,W.jsxs)(W.Fragment,{children:[e?(0,W.jsx)(`div`,{id:`share-modal-root`,className:`share-overlay`,onClick:e=>{e.stopPropagation(),e.target===e.currentTarget&&i()},children:(0,W.jsx)(Bp,{panel:e.panel,source:e.source,account:e.source===`claude`?null:e.account,initialParams:e.params,onClose:i})}):null,(0,W.jsx)(rm,{})]})}function am(e,t){return e==null?t?`error`:`loading`:`ready`}function om({kind:e,message:t}){let n=e===`stale`?`Disconnected — data may be stale. Reconnecting…`:t??`Couldn’t load dashboard data. Reconnecting…`;return(0,W.jsxs)(`div`,{className:`stale-banner stale-banner-${e}`,role:`status`,"aria-live":`polite`,children:[(0,W.jsx)(`svg`,{className:`icon`,"aria-hidden":`true`,children:(0,W.jsx)(`use`,{href:`/static/icons.svg#warn-triangle`})}),(0,W.jsx)(`span`,{children:n}),e===`error`&&t==null&&(0,W.jsxs)(`span`,{className:`stale-banner-hint`,children:[`Check that `,(0,W.jsx)(`code`,{children:`cctally dashboard`}),` is running.`]})]})}var sm=[`tall`,`medium`,`short`];function cm({span:e}){return(0,W.jsx)(`div`,{className:`panel-host`,"data-span":e,children:(0,W.jsxs)(`div`,{className:`panel is-skeleton`,children:[(0,W.jsx)(`div`,{className:`skel skel-header`}),(0,W.jsx)(`div`,{className:`skel skel-line`}),(0,W.jsx)(`div`,{className:`skel skel-line short`})]})})}function lm({mode:t}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`sr-only`,role:`status`,"aria-live":`polite`,children:`Loading dashboard…`}),(0,W.jsx)(`div`,{className:`skel-hero`,"aria-hidden":`true`}),(0,W.jsx)(`div`,{className:`dash-grid`,"aria-hidden":`true`,"data-board-mode":t,children:sm.map(n=>{let r=e.filter(e=>x[e].row===n);return(0,W.jsx)(`div`,{className:`bento-row row-${n}`,children:r.map(e=>(0,W.jsx)(cm,{span:kf(e,t)},e))},n)})})]})}function um(){return typeof window>`u`||!window.matchMedia||window.matchMedia(Mn).matches?`bento`:window.matchMedia(jn).matches?`intermediate`:`stack`}function dm(){let[e,t]=(0,U.useState)(um);return(0,U.useEffect)(()=>{if(typeof window>`u`||!window.matchMedia)return;let e=window.matchMedia(Mn),n=window.matchMedia(jn),r=()=>t(um());return e.addEventListener(`change`,r),n.addEventListener(`change`,r),r(),()=>{e.removeEventListener(`change`,r),n.removeEventListener(`change`,r)}},[]),e}var fm=class extends U.Component{state={failed:!1};static getDerivedStateFromError(){return{failed:!0}}componentDidCatch(e,t){console.error(`deferred ${this.props.name} failed to load`,e,t)}render(){let{children:e,name:t}=this.props;return this.state.failed?(0,W.jsx)(`div`,{className:`modal-backdrop feature-load-failure`,role:`alert`,"aria-label":`${t} failed to load`,children:(0,W.jsxs)(`section`,{className:`modal-card feature-load-failure-card`,children:[(0,W.jsxs)(`h2`,{children:[t,` could not load`]}),(0,W.jsx)(`p`,{children:`The dashboard may have updated while this tab was open. Reload to use one coherent build.`}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>window.location.reload(),children:`Reload dashboard`})]})}):(0,W.jsx)(U.Suspense,{fallback:(0,W.jsxs)(`div`,{className:`feature-load-pending`,role:`status`,children:[`Loading `,t,`…`]}),children:e})}},pm=`modulepreload`,mm=function(e){return`/static/`+e},hm={},gm=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=mm(t,n),t in hm)return;hm[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:pm,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},_m=(0,U.lazy)(()=>gm(()=>import(`./ConversationsView-DA4j7Yso.js`).then(e=>({default:e.ConversationsView})),__vite__mapDeps([0,1,2]))),vm=(0,U.lazy)(()=>gm(()=>import(`./ModalRoot-D4oSPxPp.js`).then(e=>({default:e.ModalRoot})),__vite__mapDeps([3,1,4,2]))),ym=(0,U.lazy)(()=>gm(()=>import(`./SourceDetailModal-BE7FONsS.js`).then(e=>({default:e.SourceDetailModal})),__vite__mapDeps([5,1,2,4]))),bm=(0,U.lazy)(()=>gm(()=>import(`./UpdateModal-BJuI8glf.js`).then(e=>({default:e.UpdateModal})),__vite__mapDeps([6,1]))),xm=(0,U.lazy)(()=>gm(()=>import(`./DoctorModal-D4PbVnbE.js`).then(e=>({default:e.DoctorModal})),__vite__mapDeps([7,1])));function Sm(){let e=(0,U.useSyncExternalStore)(V,()=>L().prefs.panelOrder),t=(0,U.useSyncExternalStore)(V,()=>L().activeSource),n=(0,U.useSyncExternalStore)(V,()=>L().view),r=(0,U.useSyncExternalStore)(V,()=>L().openModal),i=(0,U.useSyncExternalStore)(V,()=>L().openSourceDetail),a=(0,U.useSyncExternalStore)(V,()=>L().update.modalOpen),s=(0,U.useSyncExternalStore)(V,()=>L().doctorModalOpen),c=Be(),{disconnected:l,bootstrapError:u,bootstrapMessage:d}=zt(),f=am(c,u),p=dm(),{tall:m,medium:h,short:g,globalIndex:_}=(0,U.useMemo)(()=>{let n=T(e,o(c,t)),r=e=>n.filter(t=>x[t].row===e);return{tall:r(`tall`),medium:r(`medium`),short:r(`short`),globalIndex:new Map(n.map((e,t)=>[e,t]))}},[e,c,t]);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`a`,{className:`skip-link`,href:`#main-content`,children:`Skip to main content`}),(0,W.jsx)(Tn,{}),(0,W.jsx)(`main`,{id:`main-content`,tabIndex:-1,children:n===`conversations`?(0,W.jsx)(fm,{name:`Conversations`,children:(0,W.jsx)(_m,{})}):f===`loading`?(0,W.jsx)(lm,{mode:p}):f===`error`?(0,W.jsx)(om,{kind:`error`,message:d}):(0,W.jsxs)(W.Fragment,{children:[l&&(0,W.jsx)(om,{kind:`stale`}),(0,W.jsx)(or,{}),(0,W.jsx)(us.Provider,{value:p,children:(0,W.jsxs)(`div`,{className:`dash-grid${l?` is-stale`:``}`,"data-board-mode":p,children:[(0,W.jsx)(If,{items:m,className:`bento-row row-tall`,children:m.map(e=>(0,W.jsx)(Af,{id:e,index:_.get(e)??0,mode:p},e))}),(0,W.jsx)(If,{items:h,className:`bento-row row-medium`,children:h.map(e=>(0,W.jsx)(Af,{id:e,index:_.get(e)??0,mode:p},e))}),(0,W.jsx)(If,{items:g,className:`bento-row row-short`,children:g.map(e=>(0,W.jsx)(Af,{id:e,index:_.get(e)??0,mode:p},e))})]})})]})}),(0,W.jsx)(xr,{}),(0,W.jsx)(tc,{}),(0,W.jsx)(qc,{}),r?(0,W.jsx)(fm,{name:`Dashboard detail`,children:(0,W.jsx)(vm,{})}):null,i?(0,W.jsx)(fm,{name:`Source detail`,children:(0,W.jsx)(ym,{})}):null,(0,W.jsx)(im,{}),a?(0,W.jsx)(fm,{name:`Update`,children:(0,W.jsx)(bm,{})}):null,s?(0,W.jsx)(fm,{name:`Doctor`,children:(0,W.jsx)(xm,{})}):null,(0,W.jsx)(al,{})]})}var Cm=`#/conversations`;function wm(e){if(!e.startsWith(`v1.`))return null;try{let t=e.slice(3).replace(/-/g,`+`).replace(/_/g,`/`),n=t+`=`.repeat((4-t.length%4)%4),r=Uint8Array.from(atob(n),e=>e.charCodeAt(0)),i=JSON.parse(new TextDecoder().decode(r));return i.version!==1||i.resourceKind!==`conversation`?null:i.source===`claude`||i.source===`codex`?i.source:null}catch{return null}}function Tm(e){let[t,n=``]=(e.startsWith(`#`)?e.slice(1):e).split(`?`,2),r=new URLSearchParams(n),i=t===`/conversation`||t.startsWith(`/conversation/`)?`/conversations`+t.slice(13):t;if(i===``||i===`/`)return null;if(i===`/conversations`||i===`/conversations/`)return{sessionId:null,turnUuid:null,compare:null};if(!i.startsWith(`/conversations/`))return null;let a=i.slice(15).split(`/`).filter(e=>e.length>0),o=e=>e===`claude`||e===`codex`?e:null;if(a[0]===`source`&&(a.length===3||a.length===4)){let e=o(a[1]);if(!e||!a[2])return null;let t=r.get(`account`)||void 0,n=t?{source:e,key:decodeURIComponent(a[2]),account_key:t}:{source:e,key:decodeURIComponent(a[2])};return{sessionId:e===`claude`?n.key:null,conversationRef:n,turnUuid:a[3]?decodeURIComponent(a[3]):null,compare:null,qualified:!0}}if(a[0]===`compare`&&a.length===5){let e=o(a[1]),t=o(a[3]);return!e||!t||!a[2]||!a[4]?null:{sessionId:null,conversationRef:null,turnUuid:null,compare:{a:r.get(`a_account`)?{source:e,key:decodeURIComponent(a[2]),account_key:r.get(`a_account`)}:{source:e,key:decodeURIComponent(a[2])},b:r.get(`b_account`)?{source:t,key:decodeURIComponent(a[4]),account_key:r.get(`b_account`)}:{source:t,key:decodeURIComponent(a[4])}},qualified:!0}}if(a[0]===`compare`&&a.length>=3&&a[1]&&a[2])return{sessionId:null,conversationRef:null,turnUuid:null,compare:{a:oe(decodeURIComponent(a[1])),b:oe(decodeURIComponent(a[2]))}};if(a.length===1||a.length===2){let e=decodeURIComponent(a[0]),t=wm(e);if(t)return{sessionId:t===`claude`?e:null,conversationRef:{source:t,key:e},turnUuid:a[1]?decodeURIComponent(a[1]):null,compare:null,qualified:!0}}return a.length===1?{sessionId:decodeURIComponent(a[0]),turnUuid:null,compare:null}:a.length===2?{sessionId:decodeURIComponent(a[0]),turnUuid:decodeURIComponent(a[1]),compare:null}:null}function Em(e,t){if(_e(e)){let n=`${Cm}/source/${e.source}/${encodeURIComponent(e.key)}`,r=t?`${n}/${encodeURIComponent(t)}`:n;return e.account_key?`${r}?account=${encodeURIComponent(e.account_key)}`:r}if(typeof e==`object`&&e){let t=e;if(t.compare){let e=ae(t.compare.a),n=ae(t.compare.b),r=`${Cm}/compare/${e.source}/${encodeURIComponent(e.key)}/${n.source}/${encodeURIComponent(n.key)}`,i=new URLSearchParams;return e.account_key&&i.set(`a_account`,e.account_key),n.account_key&&i.set(`b_account`,n.account_key),i.size?`${r}?${i.toString()}`:r}return t.conversationRef?Em(t.conversationRef,t.turnUuid):Em(t.sessionId,t.turnUuid)}let n=e;if(n===null)return Cm;let r=encodeURIComponent(n);return t?`${Cm}/${r}/${encodeURIComponent(t)}`:`${Cm}/${r}`}function Dm(e,t,n,r){return`${e}${t}${_e(n),Em(n,r)}`}function Om(e,t){return e===`dashboard`?``:Em(t||null)}var km=`cctallyRoute`;function Am(e){return typeof e==`object`&&!!e&&km in e}function jm(e,t){if(e===window.location.hash)return;let n=e===``?window.location.pathname+window.location.search:e,r={[km]:!0};t===`push`?window.history.pushState(r,``,n):window.history.replaceState(r,``,n)}function Mm(e,t){jm((_e(e),Em(e,t)),`replace`)}function Nm(e,t={}){let n=[{type:`SET_ACTIVE_SOURCE`,source:e.source},{type:`SET_ACCOUNT_FOCUS`,source:e.source,slot:`provider`,account:e.account_key??`all`}];return t.preserveRailState||(n.push({type:`CLEAR_CONVERSATION_FILTERS`}),n.push({type:`SET_CONVERSATION_SEARCH`,text:``})),n}var Pm=!1,Fm=null,Im=!1;function Lm(e,t,n,r={}){let i=Pm;Pm=!0;try{for(let n of Nm(t,r))e(n);e(n)}finally{Pm=i}i||Fm?.()}function Rm(e){let t={preserveRailState:Im};Im=!1,Pm=!0;try{zm(e,t)}finally{Pm=!1}}function zm(e,t){let n=Tm(window.location.hash);if(n===null){e.dispatch({type:`SET_VIEW`,view:`dashboard`});return}if(n.compare){let r=M(n.compare.a,n.compare.b)?n.qualified?{type:`OPEN_CONVERSATION`,conversationRef:n.compare.a}:{type:`OPEN_CONVERSATION`,sessionId:n.compare.a.key}:n.qualified?{type:`OPEN_COMPARE`,aRef:n.compare.a,bRef:n.compare.b}:{type:`OPEN_COMPARE`,a:n.compare.a.key,b:n.compare.b.key};Lm(e.dispatch,n.compare.a,r,t);return}let r=n.conversationRef??(n.sessionId?oe(n.sessionId):null);if(r===null){e.dispatch({type:`SET_VIEW`,view:`conversations`}),e.dispatch({type:`SELECT_CONVERSATION`,sessionId:null});return}let i=n.turnUuid?{...n.qualified?{conversation_ref:r}:{},session_id:r.key,uuid:n.turnUuid}:void 0;Lm(e.dispatch,r,n.qualified?{type:`OPEN_CONVERSATION`,conversationRef:r,jump:i}:{type:`OPEN_CONVERSATION`,sessionId:r.key,jump:i},t)}function Bm(e={getState:L,subscribeStore:V,dispatch:P}){let t=window.history.scrollRestoration;if(window.history.scrollRestoration=`manual`,!Am(window.history.state)){let e=typeof window.history.state==`object`&&window.history.state!==null?window.history.state:{};window.history.replaceState({...e,[km]:!0},``)}Rm(e);let n=()=>{let t=e.getState(),n=t.selectedConversationRef??(t.selectedConversationId?oe(t.selectedConversationId):null);return{view:t.view,ref:n,refKey:n?re(n):null,jumpUuid:t.conversationJump?.uuid??null,cmp:t.compare?JSON.stringify([re(t.compare.a),re(t.compare.b)]):null}},r=n(),i=()=>{Rm(e),r=n()};window.addEventListener(`hashchange`,i);let a=e=>{Im=Am(e.state)};window.addEventListener(`popstate`,a);let o=()=>{if(Pm)return;let t=e.getState(),i=n(),a=!!t.conversationJump&&M(Ce(t.conversationJump),i.ref);if(i.cmp&&i.cmp!==r.cmp){jm(Em({sessionId:null,turnUuid:null,compare:t.compare}),`push`),r=i;return}if(i.cmp){r=i;return}if(r.cmp&&!i.cmp){let e=Om(i.view,i.ref);i.view===`conversations`&&i.ref&&i.jumpUuid&&a&&(e=Em(i.ref,i.jumpUuid)),jm(e,`push`),r=i;return}if(i.view!==r.view||i.refKey!==r.refKey){let e=Om(i.view,i.ref);i.view===`conversations`&&i.ref&&i.jumpUuid&&a&&(e=Em(i.ref,i.jumpUuid)),jm(e,`push`)}else i.ref&&i.refKey===r.refKey&&i.jumpUuid&&i.jumpUuid!==r.jumpUuid&&a&&jm(Em(i.ref,i.jumpUuid),`replace`);r=i},s=e.subscribeStore(o),c=()=>{o()};return Fm=c,()=>{window.removeEventListener(`hashchange`,i),window.removeEventListener(`popstate`,a),Im=!1,Fm===c&&(Fm=null),s(),window.history.scrollRestoration=t}}function Vm(e){let t=L();if(t.snapshot==null)return;let n=F(t);if(n==null)return;let r=T(t.prefs.panelOrder,o(n,t.activeSource)),a=e-1;if(a<0||a>=r.length)return;let s=r[a];if(t.activeSource!==`claude`&&s===`sessions`){let e=i(o(n,t.activeSource))[0];e&&P({type:`OPEN_SOURCE_DETAIL`,source:e.source,resource:`session`,key:e.key});return}if(t.activeSource!==`claude`&&s===`blocks`){let e=Vi(n,t.activeSource),r=e.find(e=>e.is_active)??e[0];r?.source===`claude`?P({type:`OPEN_MODAL`,kind:`block`,blockStartAt:r.start_at}):r&&P({type:`OPEN_SOURCE_DETAIL`,source:r.source,resource:`block`,key:r.key});return}let c=Js[s];c&&c.openAction()}var Hm=`Focus a panel action, then press Shift+S to share it.`;function Um(){return typeof window>`u`||!window.matchMedia?!1:window.matchMedia(kn).matches}function Wm(){if(typeof document>`u`)return null;let e=document.activeElement;if(!e||!(e instanceof Element))return null;let t=e.closest(`[data-panel-kind]`);return t?t.getAttribute(`data-panel-kind`):null}function Gm(){return{key:`S`,scope:`global`,when:()=>{let e=L();return!(Um()||e.shareModal!==null||e.composerModal!==null||e.openModal!==null||e.update.modalOpen||e.inputMode!==null||e.chromeOverlayOpen!==0)},action:()=>{let e=Wm();if(e===null){P({type:`SHOW_STATUS_TOAST`,text:Hm});return}I.has(e)&&Nr(L().activeSource,e)&&P(d(e,`${e}-panel`))}}}function Km(){return typeof window>`u`||!window.matchMedia?!1:window.matchMedia(kn).matches}function qm(){return{key:`B`,scope:`global`,when:()=>{let e=L();return!(Km()||e.shareModal!==null||e.composerModal!==null||e.openModal!==null||e.update.modalOpen||e.inputMode!==null||e.chromeOverlayOpen!==0)},action:()=>P(D())}}function Jm(){return[qm()]}var Ym=[`claude`,`codex`,`all`];function Xm(){let e=L().activeSource,t=Ym[(Ym.indexOf(e)+1)%Ym.length];P({type:`SET_ACTIVE_SOURCE`,source:t})}function Zm(){let e=L(),n=e.activeSource,r=n===`all`?g(e.snapshot,`codex`)?`codex`:g(e.snapshot,`claude`)?`claude`:null:n;if(r==null)return;let i=f(e.snapshot?.sources?.[r]??null);if(i==null)return;let a=se(i,b(e.snapshot,n,r,e.accountFocus));P({type:`SET_ACCOUNT_FOCUS`,source:r,slot:t(n),account:a})}function Qm(){return typeof window<`u`&&!!window.matchMedia&&window.matchMedia(jn).matches}function $m(){let e=L();return!e.openModal&&!e.update.modalOpen&&!e.doctorModalOpen&&e.inputMode===null&&e.chromeOverlayOpen===0}function eh(){let e=L();return!(e.openModal!==null||e.update.modalOpen||e.inputMode!==null||e.chromeOverlayOpen!==0)}function th(){return[{key:`1`,scope:`global`,when:$m,action:()=>Vm(1)},{key:`2`,scope:`global`,when:$m,action:()=>Vm(2)},{key:`3`,scope:`global`,when:$m,action:()=>Vm(3)},{key:`4`,scope:`global`,when:$m,action:()=>Vm(4)},{key:`5`,scope:`global`,when:$m,action:()=>Vm(5)},{key:`6`,scope:`global`,when:$m,action:()=>Vm(6)},{key:`7`,scope:`global`,when:$m,action:()=>Vm(7)},{key:`8`,scope:`global`,when:$m,action:()=>Vm(8)},{key:`9`,scope:`global`,when:$m,action:()=>Vm(9)},{key:`0`,scope:`global`,when:$m,action:()=>Vm(10)},{key:`r`,scope:`global`,when:$m,action:()=>Sn()},{key:`v`,scope:`global`,when:$m,action:Xm},{key:`a`,scope:`global`,when:$m,action:Zm},{key:`q`,scope:`global`,when:$m,action:br},{key:`n`,scope:`global`,when:$m,action:()=>vr(1)},{key:`N`,scope:`global`,when:$m,action:()=>vr(-1)},{key:`d`,scope:`global`,view:`any`,when:eh,action:()=>P({type:`OPEN_DOCTOR_MODAL`})},{key:`e`,scope:`global`,when:$m,action:()=>P({type:`OPEN_MODAL`,kind:`explain`})},Gm(),...Jm(),{key:`c`,scope:`sessions`,when:()=>!L().openModal&&L().chromeOverlayOpen===0&&!Qm(),action:()=>{let e=L().prefs.sessionsCollapsed;P({type:`SAVE_PREFS`,patch:{sessionsCollapsed:!e}})}}]}var nh=class extends Error{constructor(){super(`Dashboard authentication failed`),this.name=`DashboardAuthError`}};function rh(){history.replaceState(history.state,``,`${location.pathname}${location.search}`)}async function ih(){let e=location.hash;if(!e.startsWith(`#token=`))return;rh();let t=e.slice(7);if(!t||t.includes(`&`))throw new nh;let n;try{n=decodeURIComponent(t)}catch{throw new nh}if(!n)throw new nh;let r;try{r=await fetch(`/api/auth`,{method:`POST`,headers:{Authorization:`Bearer ${n}`}})}catch{throw new nh}if(r.status!==204)throw new nh}function ah(e){let t=document.createElement(`section`);t.className=`app-error`,t.setAttribute(`role`,`alert`);let n=document.createElement(`h1`);n.textContent=`Dashboard authentication failed`;let r=document.createElement(`p`);r.textContent=`Reopen the dashboard using a fresh URL from its terminal.`,t.append(n,r),e.replaceChildren(t)}var oh=document.getElementById(`root`);if(!oh)throw Error(`missing #root`);async function sh(e){try{await ih()}catch{ah(e);return}kt(),Xe(),ye(),Bm(),z(th()),(0,Pe.createRoot)(e).render((0,W.jsx)(U.StrictMode,{children:(0,W.jsx)(Sm,{})}))}sh(oh);export{Oi as $,Mo as A,Ze as At,Za as B,Jo as C,En as Ct,Ro as D,qt as Dt,Ho as E,on as Et,_o as F,Oa as G,Qa as H,go as I,Gi as J,ma as K,ho as L,Do as M,Be as Mt,Oo as N,H as Nt,zo as O,Wt as Ot,vo as P,ki as Q,fo as R,ss as S,On as St,Uo as T,un as Tt,Ka as U,Ya as V,Fa as W,Wi as X,Ni as Y,Fi as Z,Ds as _,In as _t,Qc as a,Mi as at,ls as b,An as bt,Hs as c,si as ct,Bs as d,Fr as dt,Pi as et,Ls as f,Ar as ft,Cs as g,Rn as gt,Ss as h,er as ht,Lm as i,vi as it,No as j,et as jt,Lo as k,Xe as kt,zs as l,Wr as lt,Ns as m,Xn as mt,Dm as n,Si as nt,Xs as o,ii as ot,Fs as p,Er as pt,Qi as q,Mm as r,X as rt,Ys as s,oi as st,$m as t,Ri as tt,Rs as u,Lr as ut,ws as v,Pn as vt,Vo as w,bn as wt,os as x,Dn as xt,ys as y,Nn as yt,so as z};