local-operator-ui 0.25.11 → 0.25.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/out/main/index.js +94 -56
- package/out/preload/index.js +23 -0
- package/out/renderer/assets/{_basePickBy--Yue-XLQ.js → _basePickBy-bc4VmDGV.js} +1 -1
- package/out/renderer/assets/{_baseUniq-CX84XXMp.js → _baseUniq-Bfdqvg6j.js} +1 -1
- package/out/renderer/assets/{agent-details-page-BjoWEolx.js → agent-details-page-CbKvdL6k.js} +2 -2
- package/out/renderer/assets/{agent-hub-page-BuMeC5YA.js → agent-hub-page-DewaCmoB.js} +1 -1
- package/out/renderer/assets/{agents-page-DMGAWpXp.js → agents-page-BAx-HTA8.js} +2 -2
- package/out/renderer/assets/arc-DqaD77oR.js +1 -0
- package/out/renderer/assets/{architectureDiagram-IEHRJDOE-DLZPKw96.js → architectureDiagram-IEHRJDOE-DuYm-XdM.js} +1 -1
- package/out/renderer/assets/{blockDiagram-JOT3LUYC-BGnNcmsO.js → blockDiagram-JOT3LUYC-BN9W0iCQ.js} +1 -1
- package/out/renderer/assets/browser-page-B_8MbM1r.js +1 -0
- package/out/renderer/assets/{c4Diagram-VJAJSXHY-Bu96GUil.js → c4Diagram-VJAJSXHY-BZzWuj2V.js} +1 -1
- package/out/renderer/assets/channel-DHbUfcCI.js +1 -0
- package/out/renderer/assets/{chunk-4BMEZGHF-Bc2IBqRl.js → chunk-4BMEZGHF-CCFD5fiW.js} +1 -1
- package/out/renderer/assets/{chunk-A2AXSNBT-C7PMbmgd.js → chunk-A2AXSNBT-B4_sh8M9.js} +1 -1
- package/out/renderer/assets/{chunk-AEK57VVT-Dy6-mgEo.js → chunk-AEK57VVT-Do-iHcjv.js} +1 -1
- package/out/renderer/assets/{chunk-D6G4REZN-cBOMihDM.js → chunk-D6G4REZN-BzRRbCAS.js} +1 -1
- package/out/renderer/assets/{chunk-RZ5BOZE2-DtZPVT7y.js → chunk-RZ5BOZE2-C2kh9IiB.js} +1 -1
- package/out/renderer/assets/{chunk-XZIHB7SX-BxlbgWo7.js → chunk-XZIHB7SX-BDfpJdHp.js} +1 -1
- package/out/renderer/assets/classDiagram-GIVACNV2-umxMhdp2.js +1 -0
- package/out/renderer/assets/classDiagram-v2-COTLJTTW-umxMhdp2.js +1 -0
- package/out/renderer/assets/clone-1LjvTklj.js +1 -0
- package/out/renderer/assets/{compact-pagination-F8MDF-Kl.js → compact-pagination-D_8zpUwL.js} +1 -1
- package/out/renderer/assets/{dagre-OKDRZEBW-NnFztN4b.js → dagre-OKDRZEBW-ChnHnfTz.js} +1 -1
- package/out/renderer/assets/{diagram-SSKATNLV-2BWtLWap.js → diagram-SSKATNLV-CavENQaI.js} +1 -1
- package/out/renderer/assets/{diagram-VNBRO52H-CENgJuWn.js → diagram-VNBRO52H-690ggnVw.js} +1 -1
- package/out/renderer/assets/{erDiagram-Q7BY3M3F-CCc0_w5h.js → erDiagram-Q7BY3M3F-CTuMQBV8.js} +1 -1
- package/out/renderer/assets/{flowDiagram-4HSFHLVR-DBpVSzRM.js → flowDiagram-4HSFHLVR-CtFFE60v.js} +1 -1
- package/out/renderer/assets/{ganttDiagram-APWFNJXF-mf6DXttE.js → ganttDiagram-APWFNJXF-CPU9-_Vk.js} +5 -5
- package/out/renderer/assets/{gitGraphDiagram-7IBYFJ6S-Bq8O1rxL.js → gitGraphDiagram-7IBYFJ6S-FqEzibOg.js} +1 -1
- package/out/renderer/assets/{graph-qxmVeyvg.js → graph-CREA3FQF.js} +1 -1
- package/out/renderer/assets/{icon-CEd0ml4Y.js → icon-Bo1zJC-t.js} +38 -33
- package/out/renderer/assets/icon-Ch_c-7ox.css +1 -0
- package/out/renderer/assets/{index-CT_UJzBT.js → index-C97fby69.js} +1 -1
- package/out/renderer/assets/index-CMeXUi08.js +7 -0
- package/out/renderer/assets/{index-DLktHc2h.js → index-DxqLk7VV.js} +399 -388
- package/out/renderer/assets/{infoDiagram-PH2N3AL5-BCOEX5M1.js → infoDiagram-PH2N3AL5-B95RTSnF.js} +1 -1
- package/out/renderer/assets/{installer-BsQIORMk.js → installer-BAJmF9yH.js} +2 -2
- package/out/renderer/assets/{journeyDiagram-U35MCT3I-BeoAemLm.js → journeyDiagram-U35MCT3I-BFmOoFz6.js} +1 -1
- package/out/renderer/assets/{kanban-definition-NDS4AKOZ-g2cpPHPh.js → kanban-definition-NDS4AKOZ-DU4RbTYN.js} +1 -1
- package/out/renderer/assets/{layout-BtO_FG0y.js → layout-CKc9PdBJ.js} +1 -1
- package/out/renderer/assets/{legacy-agents-page-CIz8TVKP.js → legacy-agents-page-BW2DFvs-.js} +6 -6
- package/out/renderer/assets/{mermaid.core-CdVpQ79S.js → mermaid.core-DrsX5aBH.js} +5 -5
- package/out/renderer/assets/{mindmap-definition-ALO5MXBD-CHVbB4ku.js → mindmap-definition-ALO5MXBD-C06r_bU7.js} +1 -1
- package/out/renderer/assets/{page-header-BGvY3vKz.js → page-header-D3y3cG3g.js} +1 -1
- package/out/renderer/assets/{parseISO-BejL_jy7.js → parseISO-Btt_HSDs.js} +1 -1
- package/out/renderer/assets/{pieDiagram-IB7DONF6-BBOrJKFD.js → pieDiagram-IB7DONF6-ClWoeK5n.js} +1 -1
- package/out/renderer/assets/{quadrantDiagram-7GDLP6J5-DSBlTbPc.js → quadrantDiagram-7GDLP6J5-DIdoFHQf.js} +1 -1
- package/out/renderer/assets/{radar-MK3ICKWK-pZgkhoLd.js → radar-MK3ICKWK-Bxan-5zf.js} +1 -1
- package/out/renderer/assets/{radient-auth-buttons-BnXJwZfD.js → radient-auth-buttons-BIDrKwvA.js} +1 -1
- package/out/renderer/assets/{requirementDiagram-KVF5MWMF-BUV7_UZP.js → requirementDiagram-KVF5MWMF-ByLs9mhD.js} +1 -1
- package/out/renderer/assets/{sankeyDiagram-QLVOVGJD-DfvIpv82.js → sankeyDiagram-QLVOVGJD-cunFi4-W.js} +1 -1
- package/out/renderer/assets/{schedules-page-D0aF6oGQ.js → schedules-page-aaSvtN4L.js} +8 -8
- package/out/renderer/assets/{sequenceDiagram-X6HHIX6F-DFuvLBd0.js → sequenceDiagram-X6HHIX6F-BuKmmvFg.js} +1 -1
- package/out/renderer/assets/{settings-page-DrjsU9En.js → settings-page-BGg48O26.js} +9 -9
- package/out/renderer/assets/{stateDiagram-DGXRK772-CmDy9j2_.js → stateDiagram-DGXRK772-DBbRR9aw.js} +1 -1
- package/out/renderer/assets/stateDiagram-v2-YXO3MK2T-C5vQs2y2.js +1 -0
- package/out/renderer/assets/{timeline-definition-BDJGKUSR-De6scz66.js → timeline-definition-BDJGKUSR-ZsiLwTvu.js} +1 -1
- package/out/renderer/assets/{use-agent-like-mutation-CxJR8287.js → use-agent-like-mutation-rONZaYUu.js} +1 -1
- package/out/renderer/assets/{xychartDiagram-VJFVF3MP-Cz0S_Epm.js → xychartDiagram-VJFVF3MP-B4zHXz_w.js} +1 -1
- package/out/renderer/index.html +3 -3
- package/out/renderer/installer.html +3 -4
- package/package.json +2 -2
- package/out/renderer/assets/arc-CR3HNaPp.js +0 -1
- package/out/renderer/assets/arrow-left-CIBQH5Fe.js +0 -6
- package/out/renderer/assets/browser-page-B02RKtfN.js +0 -1
- package/out/renderer/assets/channel-Dekw979G.js +0 -1
- package/out/renderer/assets/classDiagram-GIVACNV2-Bl3vsW8S.js +0 -1
- package/out/renderer/assets/classDiagram-v2-COTLJTTW-Bl3vsW8S.js +0 -1
- package/out/renderer/assets/clone-B0Lw9tfa.js +0 -1
- package/out/renderer/assets/icon-BF__WH76.css +0 -1
- package/out/renderer/assets/index-4byN7Q2L.js +0 -7
- package/out/renderer/assets/shield-check-DusR2dvL.js +0 -6
- package/out/renderer/assets/stateDiagram-v2-YXO3MK2T-Bv3iQPCj.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{aa as a,g as s,ab as y,f as c,ac as l,ad as g,ae as f,af as h,ag as A,ah as q,ai as w,aj as v}from"./index-DxqLk7VV.js";const u={all:["agent-favourite"],detail:t=>[...u.all,t]},F=({agentId:t,enabled:n=!0})=>{const{isAuthenticated:i}=a(),e=s({queryKey:u.detail(t||"invalid"),queryFn:async()=>{if(!t)throw new Error("Agent ID is required to fetch favourite status.");if(!i)throw new Error("Authentication required to fetch favourite status.");return(await y(t)).result},enabled:!!t&&n&&i,staleTime:5*60*1e3,gcTime:10*60*1e3,refetchOnWindowFocus:!0}),r=!!e.data&&Object.keys(e.data).length>0;return{...e,isFavourited:r}},m=()=>{const t=c(),{isAuthenticated:n}=a();return l({mutationFn:async({agentId:e,isCurrentlyFavourited:r})=>{if(!n)throw new Error("Authentication required to favourite/unfavourite an agent.");if(!e)throw new Error("Agent ID is required.");return r?f(e):h(e)},onSuccess:(e,r)=>{t.invalidateQueries({queryKey:u.detail(r.agentId)}),t.invalidateQueries({queryKey:g.count(r.agentId)})},onError:e=>{console.error("Failed to toggle favourite status:",e)}})},o={all:["agent-like"],detail:t=>[...o.all,t]},E=({agentId:t,enabled:n=!0})=>{const{isAuthenticated:i}=a(),e=s({queryKey:o.detail(t||"invalid"),queryFn:async()=>{if(!t)throw new Error("Agent ID is required to fetch like status.");if(!i)throw new Error("Authentication required to fetch like status.");return(await A(t)).result},enabled:!!t&&n&&i,staleTime:5*60*1e3,gcTime:10*60*1e3,refetchOnWindowFocus:!0}),r=!!e.data&&Object.keys(e.data).length>0;return{...e,isLiked:r}},K=()=>{const t=c(),{isAuthenticated:n}=a();return l({mutationFn:async({agentId:e,isCurrentlyLiked:r})=>{if(!n)throw new Error("Authentication required to like/unlike an agent.");if(!e)throw new Error("Agent ID is required.");return r?w(e):v(e)},onSuccess:(e,r)=>{t.invalidateQueries({queryKey:o.detail(r.agentId)}),t.invalidateQueries({queryKey:q.count(r.agentId)})},onError:e=>{console.error("Failed to toggle like status:",e)}})};export{F as a,K as b,m as c,E as u};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_ as n,s as ii,g as ei,t as vt,q as si,a as ni,b as ai,l as Lt,K as oi,e as hi,z as ri,G as lt,F as Et,H as li,M as ci,i as ui,N as gi}from"./mermaid.core-
|
|
1
|
+
import{_ as n,s as ii,g as ei,t as vt,q as si,a as ni,b as ai,l as Lt,K as oi,e as hi,z as ri,G as lt,F as Et,H as li,M as ci,i as ui,N as gi}from"./mermaid.core-DrsX5aBH.js";import{E as kt,D as Tt,F as Rt}from"./index-DxqLk7VV.js";import"./icon-Bo1zJC-t.js";var at=function(){var t=n(function(B,h,l,c){for(l=l||{},c=B.length;c--;l[B[c]]=h);return l},"o"),i=[1,10,12,14,16,18,19,21,23],e=[2,6],s=[1,3],o=[1,5],p=[1,6],g=[1,7],y=[1,5,10,12,14,16,18,19,21,23,34,35,36],T=[1,25],E=[1,26],S=[1,28],R=[1,29],I=[1,30],V=[1,31],_=[1,32],L=[1,33],f=[1,34],C=[1,35],r=[1,36],D=[1,37],N=[1,43],mt=[1,42],bt=[1,47],$=[1,50],b=[1,10,12,14,16,18,19,21,23,34,35,36],J=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],P=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],At=[1,64],tt={trace:n(function(){},"trace"),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",27:"NUMBER_WITH_DECIMAL",28:"COMMA",31:"ARROW_DELIMITER",34:"NEWLINE",35:"SEMI",36:"EOF",38:"STR",39:"MD_STR",41:"AMP",42:"NUM",43:"ALPHA",44:"PLUS",45:"EQUALS",46:"MULT",47:"DOT",48:"BRKT",49:"MINUS",50:"UNDERSCORE"},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:n(function(h,l,c,u,m,a,X){var x=a.length-1;switch(m){case 5:u.setOrientation(a[x]);break;case 9:u.setDiagramTitle(a[x].text.trim());break;case 12:u.setLineData({text:"",type:"text"},a[x]);break;case 13:u.setLineData(a[x-1],a[x]);break;case 14:u.setBarData({text:"",type:"text"},a[x]);break;case 15:u.setBarData(a[x-1],a[x]);break;case 16:this.$=a[x].trim(),u.setAccTitle(this.$);break;case 17:case 18:this.$=a[x].trim(),u.setAccDescription(this.$);break;case 19:this.$=a[x-1];break;case 20:this.$=[Number(a[x-2]),...a[x]];break;case 21:this.$=[Number(a[x])];break;case 22:u.setXAxisTitle(a[x]);break;case 23:u.setXAxisTitle(a[x-1]);break;case 24:u.setXAxisTitle({type:"text",text:""});break;case 25:u.setXAxisBand(a[x]);break;case 26:u.setXAxisRangeData(Number(a[x-2]),Number(a[x]));break;case 27:this.$=a[x-1];break;case 28:this.$=[a[x-2],...a[x]];break;case 29:this.$=[a[x]];break;case 30:u.setYAxisTitle(a[x]);break;case 31:u.setYAxisTitle(a[x-1]);break;case 32:u.setYAxisTitle({type:"text",text:""});break;case 33:u.setYAxisRangeData(Number(a[x-2]),Number(a[x]));break;case 37:this.$={text:a[x],type:"text"};break;case 38:this.$={text:a[x],type:"text"};break;case 39:this.$={text:a[x],type:"markdown"};break;case 40:this.$=a[x];break;case 41:this.$=a[x-1]+""+a[x];break}},"anonymous"),table:[t(i,e,{3:1,4:2,7:4,5:s,34:o,35:p,36:g}),{1:[3]},t(i,e,{4:2,7:4,3:8,5:s,34:o,35:p,36:g}),t(i,e,{4:2,7:4,6:9,3:10,5:s,8:[1,11],34:o,35:p,36:g}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},t(y,[2,34]),t(y,[2,35]),t(y,[2,36]),{1:[2,1]},t(i,e,{4:2,7:4,3:21,5:s,34:o,35:p,36:g}),{1:[2,3]},t(y,[2,5]),t(i,[2,7],{4:22,34:o,35:p,36:g}),{11:23,37:24,38:T,39:E,40:27,41:S,42:R,43:I,44:V,45:_,46:L,47:f,48:C,49:r,50:D},{11:39,13:38,24:N,27:mt,29:40,30:41,37:24,38:T,39:E,40:27,41:S,42:R,43:I,44:V,45:_,46:L,47:f,48:C,49:r,50:D},{11:45,15:44,27:bt,33:46,37:24,38:T,39:E,40:27,41:S,42:R,43:I,44:V,45:_,46:L,47:f,48:C,49:r,50:D},{11:49,17:48,24:$,37:24,38:T,39:E,40:27,41:S,42:R,43:I,44:V,45:_,46:L,47:f,48:C,49:r,50:D},{11:52,17:51,24:$,37:24,38:T,39:E,40:27,41:S,42:R,43:I,44:V,45:_,46:L,47:f,48:C,49:r,50:D},{20:[1,53]},{22:[1,54]},t(b,[2,18]),{1:[2,2]},t(b,[2,8]),t(b,[2,9]),t(J,[2,37],{40:55,41:S,42:R,43:I,44:V,45:_,46:L,47:f,48:C,49:r,50:D}),t(J,[2,38]),t(J,[2,39]),t(P,[2,40]),t(P,[2,42]),t(P,[2,43]),t(P,[2,44]),t(P,[2,45]),t(P,[2,46]),t(P,[2,47]),t(P,[2,48]),t(P,[2,49]),t(P,[2,50]),t(P,[2,51]),t(b,[2,10]),t(b,[2,22],{30:41,29:56,24:N,27:mt}),t(b,[2,24]),t(b,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:T,39:E,40:27,41:S,42:R,43:I,44:V,45:_,46:L,47:f,48:C,49:r,50:D},t(b,[2,11]),t(b,[2,30],{33:60,27:bt}),t(b,[2,32]),{31:[1,61]},t(b,[2,12]),{17:62,24:$},{25:63,27:At},t(b,[2,14]),{17:65,24:$},t(b,[2,16]),t(b,[2,17]),t(P,[2,41]),t(b,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},t(b,[2,31]),{27:[1,69]},t(b,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},t(b,[2,15]),t(b,[2,26]),t(b,[2,27]),{11:59,32:72,37:24,38:T,39:E,40:27,41:S,42:R,43:I,44:V,45:_,46:L,47:f,48:C,49:r,50:D},t(b,[2,33]),t(b,[2,19]),{25:73,27:At},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:n(function(h,l){if(l.recoverable)this.trace(h);else{var c=new Error(h);throw c.hash=l,c}},"parseError"),parse:n(function(h){var l=this,c=[0],u=[],m=[null],a=[],X=this.table,x="",G=0,Ct=0,Kt=2,wt=1,Zt=a.slice.call(arguments,1),A=Object.create(this.lexer),W={yy:{}};for(var it in this.yy)Object.prototype.hasOwnProperty.call(this.yy,it)&&(W.yy[it]=this.yy[it]);A.setInput(h,W.yy),W.yy.lexer=A,W.yy.parser=this,typeof A.yylloc>"u"&&(A.yylloc={});var et=A.yylloc;a.push(et);var Jt=A.options&&A.options.ranges;typeof W.yy.parseError=="function"?this.parseError=W.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ti(k){c.length=c.length-2*k,m.length=m.length-k,a.length=a.length-k}n(ti,"popStack");function St(){var k;return k=u.pop()||A.lex()||wt,typeof k!="number"&&(k instanceof Array&&(u=k,k=u.pop()),k=l.symbols_[k]||k),k}n(St,"lex");for(var w,O,v,st,z={},j,M,_t,Q;;){if(O=c[c.length-1],this.defaultActions[O]?v=this.defaultActions[O]:((w===null||typeof w>"u")&&(w=St()),v=X[O]&&X[O][w]),typeof v>"u"||!v.length||!v[0]){var nt="";Q=[];for(j in X[O])this.terminals_[j]&&j>Kt&&Q.push("'"+this.terminals_[j]+"'");A.showPosition?nt="Parse error on line "+(G+1)+`:
|
|
2
2
|
`+A.showPosition()+`
|
|
3
3
|
Expecting `+Q.join(", ")+", got '"+(this.terminals_[w]||w)+"'":nt="Parse error on line "+(G+1)+": Unexpected "+(w==wt?"end of input":"'"+(this.terminals_[w]||w)+"'"),this.parseError(nt,{text:A.match,token:this.terminals_[w]||w,line:A.yylineno,loc:et,expected:Q})}if(v[0]instanceof Array&&v.length>1)throw new Error("Parse Error: multiple actions possible at state: "+O+", token: "+w);switch(v[0]){case 1:c.push(w),m.push(A.yytext),a.push(A.yylloc),c.push(v[1]),w=null,Ct=A.yyleng,x=A.yytext,G=A.yylineno,et=A.yylloc;break;case 2:if(M=this.productions_[v[1]][1],z.$=m[m.length-M],z._$={first_line:a[a.length-(M||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(M||1)].first_column,last_column:a[a.length-1].last_column},Jt&&(z._$.range=[a[a.length-(M||1)].range[0],a[a.length-1].range[1]]),st=this.performAction.apply(z,[x,Ct,G,W.yy,v[1],m,a].concat(Zt)),typeof st<"u")return st;M&&(c=c.slice(0,-1*M*2),m=m.slice(0,-1*M),a=a.slice(0,-1*M)),c.push(this.productions_[v[1]][0]),m.push(z.$),a.push(z._$),_t=X[c[c.length-2]][c[c.length-1]],c.push(_t);break;case 3:return!0}}return!0},"parse")},Qt=function(){var B={EOF:1,parseError:n(function(l,c){if(this.yy.parser)this.yy.parser.parseError(l,c);else throw new Error(l)},"parseError"),setInput:n(function(h,l){return this.yy=l||this.yy||{},this._input=h,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:n(function(){var h=this._input[0];this.yytext+=h,this.yyleng++,this.offset++,this.match+=h,this.matched+=h;var l=h.match(/(?:\r\n?|\n).*/g);return l?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),h},"input"),unput:n(function(h){var l=h.length,c=h.split(/(?:\r\n?|\n)/g);this._input=h+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-l),this.offset-=l;var u=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var m=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===u.length?this.yylloc.first_column:0)+u[u.length-c.length].length-c[0].length:this.yylloc.first_column-l},this.options.ranges&&(this.yylloc.range=[m[0],m[0]+this.yyleng-l]),this.yyleng=this.yytext.length,this},"unput"),more:n(function(){return this._more=!0,this},"more"),reject:n(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
|
4
4
|
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:n(function(h){this.unput(this.match.slice(h))},"less"),pastInput:n(function(){var h=this.matched.substr(0,this.matched.length-this.match.length);return(h.length>20?"...":"")+h.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:n(function(){var h=this.match;return h.length<20&&(h+=this._input.substr(0,20-h.length)),(h.substr(0,20)+(h.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:n(function(){var h=this.pastInput(),l=new Array(h.length+1).join("-");return h+this.upcomingInput()+`
|
package/out/renderer/index.html
CHANGED
|
@@ -24,9 +24,9 @@
|
|
|
24
24
|
<meta http-equiv="Content-Security-Policy"
|
|
25
25
|
content="default-src 'self'; connect-src 'self' http://localhost:1111 http://127.0.0.1:1111 ws://localhost:1111 ws://127.0.0.1:1111 http://localhost:8080 http://127.0.0.1:8080 https://api.radienthq.com https://us.i.posthog.com https://login.microsoftonline.com https://accounts.google.com; script-src 'self' https://us-assets.i.posthog.com https://accounts.google.com https://login.microsoftonline.com; style-src 'self' 'unsafe-inline' data:; img-src 'self' data: blob: http://localhost:1111 http://127.0.0.1:1111; media-src 'self' blob: http://localhost:1111 http://127.0.0.1:1111; font-src 'self' data:; frame-src 'self' data: blob: http://localhost:1111 http://127.0.0.1:1111 https://accounts.google.com https://login.microsoftonline.com" />
|
|
26
26
|
<meta http-equiv="Cross-Origin-Opener-Policy" content="same-origin-allow-popups" />
|
|
27
|
-
<script type="module" crossorigin src="./assets/index-
|
|
28
|
-
<link rel="modulepreload" crossorigin href="./assets/icon-
|
|
29
|
-
<link rel="stylesheet" crossorigin href="./assets/icon-
|
|
27
|
+
<script type="module" crossorigin src="./assets/index-DxqLk7VV.js"></script>
|
|
28
|
+
<link rel="modulepreload" crossorigin href="./assets/icon-Bo1zJC-t.js">
|
|
29
|
+
<link rel="stylesheet" crossorigin href="./assets/icon-Ch_c-7ox.css">
|
|
30
30
|
<link rel="stylesheet" crossorigin href="./assets/index-aW0Bo_1a.css">
|
|
31
31
|
</head>
|
|
32
32
|
|
|
@@ -8,10 +8,9 @@
|
|
|
8
8
|
<!-- https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP -->
|
|
9
9
|
<meta http-equiv="Content-Security-Policy"
|
|
10
10
|
content="default-src 'self'; connect-src 'self' http://localhost:1111 http://127.0.0.1:1111; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data: http://localhost:1111 http://127.0.0.1:1111; media-src 'self' http://localhost:1111 http://127.0.0.1:1111; font-src 'self' data:" />
|
|
11
|
-
<script type="module" crossorigin src="./assets/installer-
|
|
12
|
-
<link rel="modulepreload" crossorigin href="./assets/icon-
|
|
13
|
-
<link rel="
|
|
14
|
-
<link rel="stylesheet" crossorigin href="./assets/icon-BF__WH76.css">
|
|
11
|
+
<script type="module" crossorigin src="./assets/installer-BAJmF9yH.js"></script>
|
|
12
|
+
<link rel="modulepreload" crossorigin href="./assets/icon-Bo1zJC-t.js">
|
|
13
|
+
<link rel="stylesheet" crossorigin href="./assets/icon-Ch_c-7ox.css">
|
|
15
14
|
</head>
|
|
16
15
|
|
|
17
16
|
<body>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "local-operator-ui",
|
|
3
|
-
"version": "0.25.
|
|
3
|
+
"version": "0.25.13",
|
|
4
4
|
"productName": "Local Operator",
|
|
5
5
|
"description": "User interface for AI agent assistants that run Python code safely on your device through an intuitive chat interface. Supports local and cloud LLM models with built-in security features.",
|
|
6
6
|
"main": "./out/main/index.js",
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
"check-types:renderer": "tsc --noEmit -p tsconfig.app.json",
|
|
75
75
|
"check-types": "pnpm run check-types:main && pnpm run check-types:renderer",
|
|
76
76
|
"test:session-cookies": "node scripts/session-cookie-electron.test.mjs",
|
|
77
|
-
"test:desktop": "node scripts/run-desktop-tests.mjs scripts/slash-token.test.mjs scripts/slash-rank.test.mjs scripts/slash-submit.test.mjs scripts/slash-contract.test.mjs scripts/slash-row-format.test.mjs scripts/owned-serve-lifecycle.test.mjs scripts/launcher-watch.test.mjs scripts/linux-sandbox.test.mjs scripts/capture-evidence.test.mjs scripts/desktop-contract.test.mjs scripts/transcript-reducer.test.mjs scripts/transcript-paging.test.mjs scripts/seed-placement.test.mjs scripts/provider-state.test.mjs scripts/stale-agent.test.mjs scripts/desktop-renderer-transport.test.mjs scripts/desktop-proxy.test.mjs scripts/session-stream-token.test.mjs scripts/session-load-recovery.test.mjs scripts/provider-grid-error-copy.test.mjs scripts/settings-time-to-error.test.mjs scripts/backend-error-surfaces.test.mjs scripts/canonical-chat.test.mjs scripts/stale-caption.test.mjs scripts/desktop-watch-lease.test.mjs scripts/session-switch.test.mjs scripts/chat-search.test.mjs scripts/palette-search.test.mjs scripts/palette-shortcut.test.mjs scripts/palette-contract.test.mjs scripts/palette-panel-request.test.mjs scripts/run-detail-model.test.mjs scripts/subagent-pulse.test.mjs scripts/chat-title.test.mjs scripts/clear-search.test.mjs scripts/tool-row.test.mjs scripts/attachment-url.test.mjs scripts/desktop-notifier.test.mjs scripts/launch-session.test.mjs scripts/desktop-feed.test.mjs scripts/session-status-feed.test.mjs scripts/viewer-record.test.mjs scripts/desktop-stream.test.mjs scripts/python-bytecode-cache.test.mjs scripts/update-affirmation.test.mjs scripts/update-robustness.test.mjs scripts/prune-python-resource.test.mjs scripts/managed-python.test.mjs scripts/usage-view.test.mjs scripts/usage-container.test.mjs scripts/session-status.test.mjs scripts/composer-readings.test.mjs scripts/composer-tabs.test.mjs scripts/ask-options.test.mjs scripts/window-mode.test.mjs scripts/evidence-manifest.test.mjs scripts/canonical-notice.test.mjs scripts/evidence-run-guard.test.mjs scripts/desktop-test-concurrency.test.mjs scripts/run-desktop-tests.test.mjs scripts/mcp-foreign-config-origin.test.mjs scripts/mentioned-files.test.mjs scripts/picker-feedback.test.mjs scripts/panel-chart-motion.test.mjs scripts/panel-info-credentials.test.mjs scripts/warm-session.test.mjs scripts/submit-latency.test.mjs scripts/completion-view-ack.test.mjs scripts/echo-delivery.test.mjs scripts/check-runtime-deps.test.mjs scripts/new-chat-row.test.mjs scripts/new-chat-row-evidence.test.mjs scripts/new-chat-shortcut.test.mjs scripts/reconnect-page-gap.test.mjs scripts/browser-host.test.mjs scripts/check-vendored.test.mjs scripts/chat-session-status.test.mjs scripts/draft-selection.test.mjs scripts/toast-lifetime.test.mjs scripts/storybook-query-fixture.test.mjs scripts/mcp-list-query.test.mjs scripts/mcp-target-resolution.test.mjs scripts/mcp-auth-surface.test.mjs scripts/mcp-failure-routing.test.mjs scripts/daemon-discovery.test.mjs scripts/daemon-health-state.test.mjs scripts/daemon-observation.test.mjs scripts/session-cookies.test.mjs scripts/move-session.test.mjs scripts/frontend-replace.test.mjs scripts/browser-chrome.test.mjs scripts/browser-queue-expiry.test.mjs scripts/dev-driver-gate.test.mjs scripts/logger-log-dir.test.mjs scripts/draft-splash.test.mjs scripts/suggestion-stack.test.mjs scripts/suggestion-stack-react.test.mjs scripts/notifications-off.test.mjs scripts/notification-launch.test.mjs scripts/notification-spawn-sites.test.mjs scripts/chrome-keychain.test.mjs scripts/interrupt-control.test.mjs scripts/chat-sidebar-selection.test.mjs scripts/message-quote.test.mjs scripts/panel-chart-hover.test.mjs scripts/composer-suggestions.test.mjs scripts/composer-tip-react.test.mjs scripts/sidebar-catalogue-gate.test.mjs",
|
|
77
|
+
"test:desktop": "node scripts/run-desktop-tests.mjs scripts/slash-token.test.mjs scripts/slash-rank.test.mjs scripts/slash-submit.test.mjs scripts/slash-contract.test.mjs scripts/slash-row-format.test.mjs scripts/owned-serve-lifecycle.test.mjs scripts/launcher-watch.test.mjs scripts/linux-sandbox.test.mjs scripts/capture-evidence.test.mjs scripts/desktop-contract.test.mjs scripts/transcript-reducer.test.mjs scripts/transcript-paging.test.mjs scripts/seed-placement.test.mjs scripts/provider-state.test.mjs scripts/stale-agent.test.mjs scripts/desktop-renderer-transport.test.mjs scripts/desktop-proxy.test.mjs scripts/session-stream-token.test.mjs scripts/session-load-recovery.test.mjs scripts/provider-grid-error-copy.test.mjs scripts/settings-time-to-error.test.mjs scripts/backend-error-surfaces.test.mjs scripts/canonical-chat.test.mjs scripts/stale-caption.test.mjs scripts/desktop-watch-lease.test.mjs scripts/session-switch.test.mjs scripts/chat-search.test.mjs scripts/palette-search.test.mjs scripts/palette-shortcut.test.mjs scripts/palette-contract.test.mjs scripts/palette-panel-request.test.mjs scripts/run-detail-model.test.mjs scripts/subagent-pulse.test.mjs scripts/chat-title.test.mjs scripts/clear-search.test.mjs scripts/tool-row.test.mjs scripts/attachment-url.test.mjs scripts/desktop-notifier.test.mjs scripts/launch-session.test.mjs scripts/desktop-feed.test.mjs scripts/session-status-feed.test.mjs scripts/viewer-record.test.mjs scripts/desktop-stream.test.mjs scripts/python-bytecode-cache.test.mjs scripts/preload-updater-surface.test.mjs scripts/update-affirmation.test.mjs scripts/update-robustness.test.mjs scripts/prune-python-resource.test.mjs scripts/managed-python.test.mjs scripts/usage-view.test.mjs scripts/usage-container.test.mjs scripts/session-status.test.mjs scripts/composer-readings.test.mjs scripts/composer-tabs.test.mjs scripts/ask-options.test.mjs scripts/window-mode.test.mjs scripts/evidence-manifest.test.mjs scripts/canonical-notice.test.mjs scripts/evidence-run-guard.test.mjs scripts/desktop-test-concurrency.test.mjs scripts/run-desktop-tests.test.mjs scripts/mcp-foreign-config-origin.test.mjs scripts/mentioned-files.test.mjs scripts/picker-feedback.test.mjs scripts/panel-chart-motion.test.mjs scripts/panel-info-credentials.test.mjs scripts/panel-info-fleet.test.mjs scripts/warm-session.test.mjs scripts/submit-latency.test.mjs scripts/completion-view-ack.test.mjs scripts/echo-delivery.test.mjs scripts/check-runtime-deps.test.mjs scripts/new-chat-row.test.mjs scripts/new-chat-row-evidence.test.mjs scripts/new-chat-shortcut.test.mjs scripts/reconnect-page-gap.test.mjs scripts/browser-host.test.mjs scripts/check-vendored.test.mjs scripts/chat-session-status.test.mjs scripts/draft-selection.test.mjs scripts/toast-lifetime.test.mjs scripts/storybook-query-fixture.test.mjs scripts/mcp-list-query.test.mjs scripts/mcp-target-resolution.test.mjs scripts/mcp-auth-surface.test.mjs scripts/mcp-failure-routing.test.mjs scripts/daemon-discovery.test.mjs scripts/daemon-health-state.test.mjs scripts/daemon-observation.test.mjs scripts/session-cookies.test.mjs scripts/move-session.test.mjs scripts/frontend-replace.test.mjs scripts/browser-chrome.test.mjs scripts/browser-queue-expiry.test.mjs scripts/dev-driver-gate.test.mjs scripts/logger-log-dir.test.mjs scripts/draft-splash.test.mjs scripts/suggestion-stack.test.mjs scripts/suggestion-stack-react.test.mjs scripts/notifications-off.test.mjs scripts/notification-launch.test.mjs scripts/notification-spawn-sites.test.mjs scripts/chrome-keychain.test.mjs scripts/interrupt-control.test.mjs scripts/chat-sidebar-selection.test.mjs scripts/message-quote.test.mjs scripts/panel-chart-hover.test.mjs scripts/composer-suggestions.test.mjs scripts/composer-tip-react.test.mjs scripts/sidebar-catalogue-gate.test.mjs scripts/credential-capture.test.mjs scripts/credential-composer.test.mjs",
|
|
78
78
|
"check-themes": "node scripts/generate-theme-css.mjs --check && node scripts/contrast-contract.mjs",
|
|
79
79
|
"check-vendored": "node scripts/check-vendored.mjs",
|
|
80
80
|
"check-evidence": "node scripts/check-evidence.mjs",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{w as ln,p as rn,k as G,s as q,l as k,m as un,n as y,t as tn,o as K,q as _,r as an,v as o,x as sn,y as on,z as fn}from"./index-DLktHc2h.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function mn(l){return l.endAngle}function pn(l){return l&&l.padAngle}function dn(l,h,E,z,v,A,B,r){var I=E-l,s=z-h,n=B-v,m=r-A,u=m*I-n*s;if(!(u*u<y))return u=(n*(h-A)-m*(l-v))/u,[l+u*I,h+u*s]}function V(l,h,E,z,v,A,B){var r=l-E,I=h-z,s=(B?A:-A)/K(r*r+I*I),n=s*I,m=-s*r,u=l+n,i=h+m,f=E+n,c=z+m,C=(u+f)/2,t=(i+c)/2,p=f-u,g=c-i,R=p*p+g*g,T=v-A,P=u*c-f*i,O=(g<0?-1:1)*K(on(0,T*T*R-P*P)),S=(P*g-p*O)/R,j=(-P*p-g*O)/R,w=(P*g+p*O)/R,d=(-P*p+g*O)/R,x=S-C,e=j-t,a=w-C,F=d-t;return x*x+e*e>a*a+F*F&&(S=w,j=d),{cx:S,cy:j,x01:-n,y01:-m,x11:S*(v/T-1),y11:j*(v/T-1)}}function hn(){var l=cn,h=yn,E=k(0),z=null,v=gn,A=mn,B=pn,r=null,I=ln(s);function s(){var n,m,u=+l.apply(this,arguments),i=+h.apply(this,arguments),f=v.apply(this,arguments)-un,c=A.apply(this,arguments)-un,C=an(c-f),t=c>f;if(r||(r=n=I()),i<u&&(m=i,i=u,u=m),!(i>y))r.moveTo(0,0);else if(C>tn-y)r.moveTo(i*G(f),i*q(f)),r.arc(0,0,i,f,c,!t),u>y&&(r.moveTo(u*G(c),u*q(c)),r.arc(0,0,u,c,f,t));else{var p=f,g=c,R=f,T=c,P=C,O=C,S=B.apply(this,arguments)/2,j=S>y&&(z?+z.apply(this,arguments):K(u*u+i*i)),w=_(an(i-u)/2,+E.apply(this,arguments)),d=w,x=w,e,a;if(j>y){var F=sn(j/u*q(S)),L=sn(j/i*q(S));(P-=F*2)>y?(F*=t?1:-1,R+=F,T-=F):(P=0,R=T=(f+c)/2),(O-=L*2)>y?(L*=t?1:-1,p+=L,g-=L):(O=0,p=g=(f+c)/2)}var H=i*G(p),J=i*q(p),M=u*G(T),N=u*q(T);if(w>y){var Q=i*G(g),U=i*q(g),W=u*G(R),X=u*q(R),D;if(C<rn)if(D=dn(H,J,W,X,Q,U,M,N)){var Y=H-D[0],Z=J-D[1],$=Q-D[0],b=U-D[1],nn=1/q(fn((Y*$+Z*b)/(K(Y*Y+Z*Z)*K($*$+b*b)))/2),en=K(D[0]*D[0]+D[1]*D[1]);d=_(w,(u-en)/(nn-1)),x=_(w,(i-en)/(nn+1))}else d=x=0}O>y?x>y?(e=V(W,X,H,J,i,x,t),a=V(Q,U,M,N,i,x,t),r.moveTo(e.cx+e.x01,e.cy+e.y01),x<w?r.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(a.y01,a.x01),!t):(r.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(e.y11,e.x11),!t),r.arc(0,0,i,o(e.cy+e.y11,e.cx+e.x11),o(a.cy+a.y11,a.cx+a.x11),!t),r.arc(a.cx,a.cy,x,o(a.y11,a.x11),o(a.y01,a.x01),!t))):(r.moveTo(H,J),r.arc(0,0,i,p,g,!t)):r.moveTo(H,J),!(u>y)||!(P>y)?r.lineTo(M,N):d>y?(e=V(M,N,Q,U,u,-d,t),a=V(H,J,W,X,u,-d,t),r.lineTo(e.cx+e.x01,e.cy+e.y01),d<w?r.arc(e.cx,e.cy,d,o(e.y01,e.x01),o(a.y01,a.x01),!t):(r.arc(e.cx,e.cy,d,o(e.y01,e.x01),o(e.y11,e.x11),!t),r.arc(0,0,u,o(e.cy+e.y11,e.cx+e.x11),o(a.cy+a.y11,a.cx+a.x11),t),r.arc(a.cx,a.cy,d,o(a.y11,a.x11),o(a.y01,a.x01),!t))):r.arc(0,0,u,T,R,t)}if(r.closePath(),n)return r=null,n+""||null}return s.centroid=function(){var n=(+l.apply(this,arguments)+ +h.apply(this,arguments))/2,m=(+v.apply(this,arguments)+ +A.apply(this,arguments))/2-rn/2;return[G(m)*n,q(m)*n]},s.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:k(+n),s):l},s.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:k(+n),s):h},s.cornerRadius=function(n){return arguments.length?(E=typeof n=="function"?n:k(+n),s):E},s.padRadius=function(n){return arguments.length?(z=n==null?null:typeof n=="function"?n:k(+n),s):z},s.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:k(+n),s):v},s.endAngle=function(n){return arguments.length?(A=typeof n=="function"?n:k(+n),s):A},s.padAngle=function(n){return arguments.length?(B=typeof n=="function"?n:k(+n),s):B},s.context=function(n){return arguments.length?(r=n??null,s):r},s}export{hn as d};
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import{a as o}from"./icon-CEd0ml4Y.js";/**
|
|
2
|
-
* @license lucide-react v0.507.0 - ISC
|
|
3
|
-
*
|
|
4
|
-
* This source code is licensed under the ISC license.
|
|
5
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
6
|
-
*/const e=[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]],r=o("arrow-left",e);export{r as A};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r,j as e,B as b,S as J,c as I,X as _,n as Z,b as he,o as ee,p as me,L as pe,q as xe,s as ge,t as fe,u as be,v as ve,w as te,g as A,x as se,I as we,y as ke,z as je,F as ye}from"./icon-CEd0ml4Y.js";import{i as L,aO as Ne,aL as Ce,aP as Re,P as Ee,B as Te,aQ as $,aR as Se,aS as Ie,aT as Ae,aU as ze}from"./index-DLktHc2h.js";import{S as ae}from"./shield-check-DusR2dvL.js";import{A as De}from"./arrow-left-CIBQH5Fe.js";function B(){return window.api?.browser??null}function Oe(){return B()!==null}function M(t){B()?.setContentRect(t).catch(()=>{})}function Be(){const[t,s]=r.useState(null),[d,x]=r.useState(null),[a,h]=r.useState(null),[k,y]=r.useState(null),g=Oe(),p=a??d,o=r.useCallback(async()=>{const m=B();if(m)try{const c=await m.state();c&&Array.isArray(c.tabs)&&(s(c),x(null),c.url&&c.url!=="about:blank"&&y(null))}catch(c){x(Q(c))}},[]);r.useEffect(()=>{if(!g)return;o();const m=window.api?.browser;if(!m)return;const c=m.onStateChanged(()=>void o()),E=m.onConsentChanged(()=>void o());return()=>{c(),E()}},[g,o]);const w=r.useCallback(async m=>{try{await m(),h(null)}catch(c){h(Q(c))}await o()},[o]),i=r.useCallback(()=>{h(null),x(null)},[]),v=r.useRef(null),j=r.useRef(null),l=r.useCallback(m=>{if(m===null){v.current!==null&&(cancelAnimationFrame(v.current),v.current=null),j.current=null,M(null);return}j.current=m,v.current===null&&(v.current=requestAnimationFrame(()=>{v.current=null,M(j.current)}))},[]);r.useEffect(()=>()=>{v.current!==null&&cancelAnimationFrame(v.current),M(null)},[]);const N=r.useCallback(m=>{B()?.setViewVisible(m).catch(()=>{})},[]),f=B();return r.useMemo(()=>({state:t,pendingUrl:k,error:p,dismissError:i,available:g,refresh:o,newTab:()=>w(()=>f?.newTab()),closeTab:m=>w(()=>f?.closeTab(m)),activateTab:m=>w(()=>f?.activateTab(m)),navigate:m=>(y(m),w(()=>f?.navigate(m))),reload:()=>w(()=>f?.reload()),stop:()=>w(()=>f?.stop()),history:m=>w(()=>f?.history(m)),setContentRect:l,setViewVisible:N,respondToConsent:(m,c)=>w(()=>f?.respondToConsent(m,c)),handOver:(m,c)=>w(()=>f?.handOver(m,c)),revokeHandOver:m=>w(()=>f?.revokeHandOver(m)),revokeApproval:m=>w(()=>f?.revokeApproval(m)),revokeAllApprovals:()=>w(()=>f?.revokeAllApprovals()),forgetSite:m=>w(()=>f?.forgetSite(m)),clearData:m=>w(()=>f?.clearData(m))}),[t,k,p,i,g,o,w,l,N,f])}const _e=/^Error invoking remote method '[^']+':\s*/;function Q(t){return(t instanceof Error?t.message:String(t)).replace(_e,"").trim()}const Le=6e4,ne=6e4,Fe=5,Pe=5*ne;function re(t){try{const s=new URL(t);return s.protocol==="http:"||s.protocol==="https:"?s.origin:null}catch{return null}}function ie(t,s){return t.filter(d=>s<d.expiresAt)}function Ve(t,s){const d=t-s;if(d<=0)return null;if(d<Le)return"expires in under a minute";const x=Math.ceil(d/ne);return x===1?"expires in 1 minute":`expires in ${x} minutes`}function Me(t,s){return ie(t,s).map((d,x)=>({request:d,ordinal:x+1,remaining:Ve(d.expiresAt,s)}))}function $e(t,s){const d=new Map;for(const a of t)d.has(a.request.origin)||d.set(a.request.origin,a.ordinal);const x={};for(const a of s){if(a.owner!=="agent")continue;const h=re(a.url);if(!h)continue;const k=d.get(h);k!==void 0&&(x[a.tabId]=k)}return x}function qe(t,s,d,x,a,h){const k=new Set(s.map(o=>o.entryId)),y=t.filter(o=>!k.has(o.entryId)&&!x.has(o.entryId)).map(o=>({key:o.entryId,kind:o.expiresAt<=h?"expired":"withdrawn",origin:o.origin,authority:o.authority,at:h})),g=s.filter(o=>o.expiresAt<=h&&!x.has(o.entryId)).map(o=>({key:o.entryId,kind:"expired",origin:o.origin,authority:o.authority,at:h})),p=new Set([...a,...d.map(o=>o.key)]);return[...y,...g].filter(o=>!p.has(o.key)).concat(d).filter(o=>h-o.at<Pe).slice(0,Fe)}function Ue(t){switch(t){case"origin":return"This site";case"domain":return"Whole domain";case"host":return"This host";case"deny":return"Denied";case"session":return"This session only"}}function He(t,s){return s==="all"?[...t]:t.filter(d=>d.sessionId===s.sessionId)}function We(t,s){const[d,x]=r.useState(()=>Date.now()),a=r.useRef([]),[h,k]=r.useState([]),y=r.useRef(new Set),g=r.useRef(new Set),p=r.useCallback((i,v,j)=>k(l=>qe(i,v,l,y.current,g.current,j)),[]);r.useEffect(()=>{for(const i of h)g.current.add(i.key)},[h]);const o=ie(t,d).length;r.useEffect(()=>{if(o===0)return;const i=window.setInterval(()=>x(Date.now()),1e3);return()=>window.clearInterval(i)},[o]),r.useEffect(()=>{const i=Date.now();x(i);const v=a.current;a.current=t,p(v,t,i)},[t,p]),r.useEffect(()=>{p(t,t,d)},[d,t,p]);const w=Me(t,d);return{now:d,rows:w,resolved:h,waiting:$e(w,s),count:w.length,noteDecision:r.useCallback(i=>{y.current.add(i)},[])}}function q(t,s,d){if(!t)return"An agent";const x=s.find(h=>h.session_id===t)?.title,a=x?.trim()||t;return d?.short?a:x?.trim()?`The agent in '${x.trim()}'`:`The agent in conversation ${t}`}const oe=({request:t,remaining:s,busy:d,onDecide:x,layout:a="inline"})=>{const h=L(v=>v.sessions),k=q(t.requesterSessionId,h),[y,g]=r.useState(null),p=a==="stacked"?"text-ink":"text-ink-muted",o=v=>{g(v),x(t.entryId,v)},w=e.jsxs("span",{className:"flex items-center gap-1.5 text-meta text-ink-muted","data-tour-tag":"browser-consent-busy",children:[e.jsx(J,{size:"sm"}),"Recording your choice…"]}),i=v=>d&&y===v?w:null;return e.jsxs("div",{className:"flex flex-col gap-2","data-tour-tag":"browser-consent-request",children:[e.jsxs("div",{className:"flex items-start gap-2",children:[e.jsx(Ne,{"aria-hidden":!0,className:"mt-0.5 size-4 shrink-0 text-warning"}),e.jsxs("div",{className:"min-w-0 grow",children:[e.jsxs("p",{className:"text-body text-ink","data-tour-tag":"browser-consent-who",children:[k," wants to open"," ",e.jsx("span",{className:"font-mono text-mono-sm",children:t.authority}),"."]}),e.jsx("p",{className:"text-body-sm text-ink-muted",children:"This browser keeps sign-ins across conversations and app restarts, so an agent you approve here can use those signed-in accounts on the sites you allow it. You can open this site yourself either way — this only controls what the agent may reach."}),s&&e.jsx("p",{className:"mt-1 text-meta text-ink-dim",children:s})]})]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2 pl-6",children:[e.jsx(b,{variant:"primary",size:"sm",disabled:d,onClick:()=>o("once"),"data-tour-tag":"browser-consent-once",children:"Allow once"}),i("once"),e.jsx(b,{variant:"outline",size:"sm",disabled:d,onClick:()=>o("session"),"data-tour-tag":"browser-consent-session",children:"Allow until the app quits"}),i("session"),e.jsx(b,{variant:"outline",size:"sm",disabled:d,onClick:()=>o("site"),"data-tour-tag":"browser-consent-site",children:"Always allow this site"}),i("site"),t.broad&&e.jsxs(e.Fragment,{children:[e.jsxs(b,{variant:"outline",size:"sm",disabled:d,onClick:()=>o("domain"),"data-tour-tag":"browser-consent-domain",children:["Allow all of ",t.broad.key]}),i("domain")]}),e.jsx(b,{variant:"ghost",size:"sm",disabled:d,onClick:()=>o("deny"),"data-tour-tag":"browser-consent-deny",children:"Don't allow"}),i("deny"),d&&y===null&&w]}),e.jsxs("dl",{className:a==="stacked"?"ml-6 grid grid-cols-1 gap-y-1.5 text-meta text-ink-dim":"ml-6 grid grid-cols-[max-content_1fr] gap-x-4 gap-y-0.5 text-meta text-ink-dim","data-tour-tag":"browser-consent-scopes",children:[e.jsx("dt",{className:p,children:"Allow once"}),e.jsx("dd",{children:"one navigation, for that conversation, up to ten minutes"}),e.jsx("dt",{className:p,children:"Allow until the app quits"}),e.jsx("dd",{children:"this site, for this run only, and for every conversation"}),e.jsx("dt",{className:p,children:"Always allow this site"}),e.jsx("dd",{children:"kept until you revoke it, and shared with every conversation"}),t.broad&&e.jsxs(e.Fragment,{children:[e.jsxs("dt",{className:p,children:["Allow all of ",t.broad.key]}),e.jsxs("dd",{children:["every site under ",t.broad.key,", kept until you revoke it, shared with every conversation"]})]}),e.jsx("dt",{className:p,children:"Don't allow"}),e.jsx("dd",{children:"the agent stops asking about this site until you revoke the denial in Approvals"})]})]})};function X(t){return t?new Date(t).toLocaleString():""}const Ge=({open:t,rows:s,resolved:d,selectedEntryId:x,onSelect:a,busy:h,onDecide:k,approvals:y,currentOrigin:g,onRevoke:p,onRevokeAll:o,onForgetSite:w,onClearData:i,onClose:v,surfaceTag:j})=>{const l=r.useRef(null),N=L(n=>n.sessions);r.useEffect(()=>{t&&l.current?.focus()},[t]),r.useEffect(()=>{if(!t)return;const n=C=>{C.key==="Escape"&&(C.defaultPrevented||(C.preventDefault(),v()))};return document.addEventListener("keydown",n),()=>document.removeEventListener("keydown",n)},[t,v]);const f=s.length,m=r.useRef(f);r.useEffect(()=>{const n=f<m.current;m.current=f,!(!t||!n)&&document.activeElement===document.body&&l.current?.focus()},[t,f]);const c=y.filter(n=>n.scope!=="deny"),E=y.filter(n=>n.scope==="deny");return t?e.jsxs("section",{"aria-label":"Approvals","data-tour-tag":j,className:I("flex shrink-0 flex-col gap-4 overflow-y-auto px-3 py-3","border-control border-l bg-surface","w-80 min-[1280px]:w-96"),children:[e.jsxs("div",{className:"flex items-start justify-between gap-2",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx("h2",{ref:l,tabIndex:-1,className:"text-heading text-ink outline-none","data-tour-tag":"browser-approvals-dock-title",children:"Approvals"}),(s.length>0||c.length>0)&&e.jsx("p",{className:"text-meta text-ink-dim",children:[s.length>0?`${s.length} waiting`:null,c.length===1?"1 site approved":c.length>1?`${c.length} sites approved`:null].filter(Boolean).join(" · ")})]}),e.jsx(b,{variant:"ghost",size:"icon-sm","aria-label":"Close approvals",onClick:v,"data-tour-tag":"browser-approvals-dock-close",children:e.jsx(_,{"aria-hidden":!0,className:"size-3.5"})})]}),e.jsx("p",{className:"text-body-sm text-ink-muted",children:"Approvals are kept per origin and are separate from cookies. Revoking one does not sign you out; clearing cookies does not restore a denial. This app's browser keeps its sign-ins across conversations and app restarts, and an approval here applies to every conversation — not only the one that asked. Requests wait for ten minutes; after that the agent has to ask again."}),e.jsxs("div",{className:"flex items-start gap-2 rounded-sm bg-accent-wash px-3 py-2","data-tour-tag":"browser-agents-notice",children:[e.jsx(ae,{"aria-hidden":!0,className:"mt-0.5 size-4 shrink-0 text-ink"}),e.jsx("p",{className:"text-body-sm text-ink",children:"Agents can drive tabs in this app. Sites an agent can reach were approved by a click in this window, and none of them can be reached without one."})]}),e.jsxs("section",{"aria-label":"Waiting requests",children:[e.jsx("h3",{className:"text-heading text-ink",children:"Waiting"}),s.length===0?e.jsx("p",{className:"mt-2 text-body-sm text-ink-muted",children:"Nothing is waiting. An agent that needs a site appears here and in the band above the page."}):e.jsx("ol",{className:"mt-2 flex flex-col gap-2","data-tour-tag":"browser-approvals-waiting",children:s.map(n=>{const C=n.request.entryId===x;return e.jsxs("li",{className:I("rounded-sm border border-control",C?"bg-elevated":"bg-surface"),children:[e.jsxs("button",{type:"button",onClick:()=>a(n.request.entryId),"aria-expanded":C,"data-tour-tag":"browser-approvals-waiting-row",className:"flex w-full items-center gap-2 px-2 py-1.5 text-left",children:[e.jsx(Z,{variant:"attention",shape:"pill",className:"h-4 min-w-4 justify-center px-1 tabular-nums",children:n.ordinal}),e.jsx("span",{className:"max-w-[60%] shrink-0 truncate font-mono text-mono-sm text-ink",title:n.request.authority,children:n.request.authority}),e.jsx("span",{className:"min-w-0 grow truncate text-meta text-ink-muted",children:q(n.request.requesterSessionId,N,{short:!0})}),n.remaining&&e.jsx("span",{className:"shrink-0 text-meta text-ink-dim",children:n.remaining})]}),C&&e.jsx("div",{className:"border-control border-t px-2 py-2",children:e.jsx(oe,{request:n.request,remaining:n.remaining,busy:h,onDecide:k,layout:"stacked"})})]},n.request.entryId)})}),d.length>0&&e.jsx("ul",{className:"mt-2 flex flex-col gap-0.5 text-meta text-ink-dim",children:d.map(n=>e.jsxs("li",{children:[n.authority," —"," ",n.kind==="expired"?"Expired — the agent has to ask again":"Withdrawn by the agent"]},n.key))})]}),e.jsxs("section",{"aria-label":"Approved sites",children:[e.jsx("h3",{className:"text-heading text-ink",children:"Approved"}),c.length===0?e.jsx("p",{className:"mt-2 text-body-sm text-ink-muted",children:"No site is approved yet. The agent will ask the first time it needs one."}):e.jsx("ul",{className:"mt-2 flex flex-col gap-2",children:c.map(n=>e.jsxs("li",{className:"flex items-center justify-between gap-2 rounded-sm bg-surface px-2 py-1.5",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"truncate font-mono text-mono-sm text-ink",children:n.origin}),e.jsxs("p",{className:"text-meta text-ink-dim",children:[Ue(n.scope),X(n.grantedAt)?` · ${X(n.grantedAt)}`:""]})]}),e.jsx(b,{variant:"outline",size:"sm",disabled:h,onClick:()=>p(n.origin),"data-tour-tag":"browser-revoke-approval",children:"Revoke"})]},`${n.scope}:${n.origin}`))}),c.length>0&&e.jsx(b,{variant:"danger",size:"sm",className:"mt-3 w-full",disabled:h,onClick:o,"data-tour-tag":"browser-revoke-all",children:"Revoke all site approvals"})]}),E.length>0&&e.jsxs("section",{"aria-label":"Denied sites",children:[e.jsx("h3",{className:"text-heading text-ink",children:"Denied"}),e.jsx("p",{className:"mt-1 text-body-sm text-ink-muted",children:"The agent stops asking about these. Revoking a denial lets it ask again."}),e.jsx("ul",{className:"mt-2 flex flex-col gap-2",children:E.map(n=>e.jsxs("li",{className:"flex items-center justify-between gap-2 rounded-sm bg-surface px-2 py-1.5",children:[e.jsx("p",{className:"min-w-0 truncate font-mono text-mono-sm text-ink",children:n.origin}),e.jsx(b,{variant:"outline",size:"sm",disabled:h,onClick:()=>p(n.origin),children:"Revoke"})]},`${n.scope}:${n.origin}`))})]}),g&&e.jsxs("section",{"aria-label":"Current site",children:[e.jsx("h3",{className:"text-heading text-ink",children:"This site"}),e.jsx("p",{className:"mt-1 text-body-sm text-ink-muted",children:"The page the active tab is on right now."}),e.jsx("p",{className:"mt-2 truncate font-mono text-mono-sm text-ink",children:g}),e.jsx(b,{variant:"danger",size:"sm",className:"mt-3",disabled:h,onClick:()=>w(g),"data-tour-tag":"browser-forget-site",children:"Forget this site"}),e.jsx("p",{className:"mt-1 text-meta text-ink-dim",children:"Revokes any approval for it and clears what this app stored for it. It does not touch your real browser's data."})]}),e.jsx(he,{className:"my-1"}),e.jsxs("section",{"aria-label":"Browsing data",children:[e.jsx("h3",{className:"text-heading text-ink",children:"Browsing data"}),e.jsx("p",{className:"mt-1 text-body-sm text-ink-muted",children:"These clear what this app's browser profile stored. They do not change which sites the agent may reach — that is the list above."}),e.jsxs("div",{className:"mt-3 flex flex-wrap gap-2",children:[e.jsx(b,{variant:"outline",size:"sm",disabled:h,onClick:()=>i("cookies"),"data-tour-tag":"browser-clear-cookies",children:"Clear cookies and site data"}),e.jsx(b,{variant:"outline",size:"sm",disabled:h,onClick:()=>i("cache"),children:"Clear cache"}),e.jsx(b,{variant:"outline",size:"sm",disabled:h,onClick:()=>i("everything"),children:"Clear everything"})]}),e.jsx("p",{className:"mt-2 text-meta text-ink-dim",children:"Clearing cookies signs this app out of sites you logged into inside it. Your approvals are kept, so the agent will not have to ask again for a site you already approved."})]})]}):null},Ye={expired:"Expired — the agent has to ask again",withdrawn:"Withdrawn by the agent"},Ke=t=>t===1?"1 approval waiting":`${t} approvals waiting`,Qe=({rows:t,resolved:s,selectedEntryId:d,onSelect:x,busy:a,onDecide:h,dockOpen:k,onToggleDock:y,headerLabel:g})=>{const p=t.find(i=>i.request.entryId===d)??t[0],o=L(i=>i.sessions),w=t.length>1||k;return e.jsxs("div",{className:"flex flex-col gap-2","data-tour-tag":"browser-approvals-tray",children:[w&&e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx("p",{className:"text-body-sm text-ink","data-tour-tag":"browser-approvals-tray-count",children:g(t.length)}),e.jsx("ol",{className:"flex items-center gap-1","aria-label":"Waiting requests","data-tour-tag":"browser-approvals-tray-chips",children:t.map(i=>{const v=i.request.entryId===p?.request.entryId;return e.jsx("li",{children:e.jsx("button",{type:"button",onClick:()=>x(i.request.entryId),"aria-current":v?"true":void 0,"aria-label":`Request ${i.ordinal} from ${q(i.request.requesterSessionId,o)}: ${i.request.authority}`,"data-tour-tag":"browser-approvals-tray-chip",className:I("flex h-5 min-w-5 items-center justify-center rounded-full border border-control px-1 text-meta tabular-nums",v?"bg-warning-wash text-ink":"bg-transparent text-ink-muted hover:bg-elevated hover:text-ink"),children:i.ordinal})},i.request.entryId)})}),e.jsx("div",{className:"grow"}),e.jsxs(b,{variant:"ghost",size:"sm",onClick:y,"aria-expanded":k,"data-tour-tag":"browser-approvals-toggle",children:[k?"Close approvals":"Open approvals",k?e.jsx(ee,{"aria-hidden":!0,className:"size-3.5"}):e.jsx(me,{"aria-hidden":!0,className:"size-3.5"})]})]}),p&&!k&&e.jsx(oe,{request:p.request,remaining:p.remaining,busy:a,onDecide:h}),s.length>0&&e.jsx("ul",{className:"flex flex-col gap-0.5 text-meta text-ink-dim","data-tour-tag":"browser-approvals-resolved",children:s.map(i=>e.jsxs("li",{children:[i.authority," — ",Ye[i.kind]]},i.key))})]})},Xe=t=>e.jsx("section",{className:"flex flex-col gap-2 border-control border-b bg-surface px-3 py-2","aria-label":"Site approval request","data-tour-tag":"browser-consent-bar",children:e.jsx(Qe,{rows:t.rows,resolved:t.resolved,selectedEntryId:t.selectedEntryId,onSelect:t.onSelect,busy:t.busy,onDecide:t.onDecide,dockOpen:t.dockOpen,onToggleDock:t.onToggleDock,headerLabel:t.headerLabel})}),Je=({open:t,tab:s,busy:d,onClose:x,onConfirm:a})=>{const h=L(p=>p.sessions),k=L(p=>p.fetchSessions),[y,g]=r.useState("");return r.useEffect(()=>{t&&k()},[t,k]),r.useEffect(()=>{t||g("")},[t]),e.jsx(Ce,{open:t,onClose:x,title:"Let an agent use this tab",dataTourTag:"browser-hand-over-dialog",actions:e.jsxs(e.Fragment,{children:[e.jsx(b,{variant:"ghost",size:"sm",onClick:x,children:"Cancel"}),e.jsx(b,{variant:"primary",size:"sm",disabled:d||!y||!s,onClick:()=>{s&&y&&a(s.tabId,y)},"data-tour-tag":"browser-hand-over-confirm",children:"Hand over"})]}),children:e.jsxs("div",{className:"flex flex-col gap-3",children:[e.jsx("p",{className:"text-body text-ink-muted",children:"The agent can use this tab — and only reach sites you have approved. Both gates apply, so handing this tab over does not approve the site it is showing."}),s&&e.jsx("p",{className:"truncate font-mono text-mono-sm text-ink-dim",children:s.title}),e.jsxs("div",{className:"flex flex-col gap-1.5",children:[e.jsx(pe,{htmlFor:"browser-hand-over-session",children:"Session"}),e.jsxs(xe,{value:y,onValueChange:g,children:[e.jsx(ge,{id:"browser-hand-over-session","data-tour-tag":"browser-hand-over-session",children:e.jsx(fe,{placeholder:"Choose a session"})}),e.jsx(be,{children:h.map(p=>e.jsx(ve,{value:p.session_id,children:p.title||p.session_id},p.session_id))})]}),h.length===0&&e.jsx("p",{className:"text-meta text-ink-dim",children:"No session is available yet. Start one in chat, then hand the tab over."})]})]})})},Ze={ERR_NAME_NOT_RESOLVED:"That address does not resolve. Check the spelling.",ERR_CONNECTION_REFUSED:"The site refused the connection. It may be down, or refusing this app.",ERR_CONNECTION_TIMED_OUT:"The site did not answer in time.",ERR_EMPTY_RESPONSE:"The site closed the connection without sending a response.",ERR_CONNECTION_RESET:"The connection was reset before the page arrived.",ERR_INTERNET_DISCONNECTED:"This machine is not connected to the network.",ERR_ADDRESS_UNREACHABLE:"That address is not reachable from this machine.",ERR_CERT_DATE_INVALID:"The site's certificate has expired or is not yet valid.",ERR_CERT_AUTHORITY_INVALID:"The site's certificate is not from an authority this app trusts.",ERR_SSL_PROTOCOL_ERROR:"The secure connection could not be established."};function et(t){return Ze[t]??"The page could not be loaded."}const tt=({failure:t,onRetry:s})=>e.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-2 px-6 text-center","data-tour-tag":"browser-load-failure",children:[e.jsx(te,{"aria-hidden":!0,className:"size-6 text-warning"}),e.jsx("p",{className:"text-title text-ink",children:"Couldn't load this page"}),e.jsxs("p",{className:"max-w-lg text-body-sm text-ink-muted",children:[et(t.description)," Try again, or correct the address in the bar above — it is still yours to edit."]}),e.jsxs("p",{className:"max-w-lg truncate font-mono text-mono-sm text-ink-dim",title:t.url,children:[t.description," ",t.url]}),e.jsx(b,{variant:"primary",size:"sm",onClick:s,"data-tour-tag":"browser-load-failure-retry",children:"Try again"})]}),st=({tab:t})=>t.loading?e.jsx(se,{"aria-hidden":!0,"data-tour-tag":"browser-tab-spinner",className:"size-4 shrink-0 animate-spin text-ink-muted"}):t.owner==="agent"?e.jsx(Te,{"aria-hidden":!0,className:"size-4 shrink-0 text-accent"}):e.jsx($,{"aria-hidden":!0,className:"size-4 shrink-0 text-ink-dim"}),O=t=>{const s=t.trim();return s?s.length<=24?s:`${s.slice(0,23).trimEnd()}…`:"this tab"},at=({tabs:t,activeTabId:s,waiting:d,onActivate:x,onClose:a,onNewTab:h,onHandOver:k,onRevokeHandOver:y})=>{const[g,p]=r.useState(null),o=r.useRef(null),w=r.useRef(new Map),i=r.useCallback(()=>{const l=g;p(null),l!==null&&w.current.get(l)?.focus()},[g]),v=r.useRef(null),j=t.find(l=>l.tabId===g)??null;return r.useEffect(()=>{g!==null&&v.current?.focus()},[g]),r.useEffect(()=>{if(s===null)return;o.current?.querySelector(`[data-tab-id="${s}"]`)?.scrollIntoView({block:"nearest",inline:"nearest"})},[s]),e.jsxs("div",{className:"flex flex-col border-control border-b bg-sunken",role:"tablist","aria-label":"Browser tabs","data-tour-tag":"browser-tab-strip",children:[e.jsxs("div",{className:"flex items-stretch gap-0 px-2 pt-1",children:[e.jsx("div",{ref:o,className:"flex min-w-0 grow items-stretch overflow-x-auto overflow-y-hidden -mb-px",children:t.map((l,N)=>{const f=l.tabId===s,m=d[l.tabId],c=[l.owner==="agent",l.handedOver,l.restored,l.failed,m!==void 0].filter(Boolean).length,E=f?c>=5?"min-w-[30rem]":c===4?"min-w-[26rem]":c===3||c===2?"min-w-96":c===1?"min-w-80":"min-w-56":c>=4?"min-w-96":c===3?"min-w-80":c===2?"min-w-72":c===1?"min-w-56":"min-w-44",n=N>0?t[N-1]:null,C=n!==null&&!f&&n.tabId!==s;return e.jsxs(r.Fragment,{children:[C&&e.jsx("span",{"aria-hidden":!0,className:"my-2 w-px shrink-0 self-stretch bg-hairline"}),e.jsxs("div",{"data-tab-id":l.tabId,className:I("group relative flex max-w-[50%] grow basis-32 items-center gap-1.5 px-2 text-body-sm rounded-t-sm",E,f?"border-control border-x border-t bg-canvas text-ink":"text-ink-muted hover:bg-elevated hover:text-ink",g===l.tabId&&!f&&"bg-elevated text-ink"),children:[e.jsxs("button",{type:"button",role:"tab","aria-selected":f,onClick:()=>x(l.tabId),className:"flex min-w-0 grow items-center gap-1.5 overflow-hidden py-1.5 text-left","data-tour-tag":"browser-tab",children:[e.jsx(st,{tab:l}),l.owner==="agent"&&e.jsx("span",{className:"shrink-0 rounded-sm border border-accent bg-accent-wash px-1 text-meta text-ink","data-tour-tag":"browser-tab-agent-marker",children:"Agent"}),l.handedOver&&e.jsx("span",{className:"shrink-0 rounded-sm border border-control px-1 text-meta text-ink-muted",children:"Shared"}),l.restored&&e.jsx("span",{className:"shrink-0 rounded-sm border border-control px-1 text-meta text-ink-dim",children:"Restored"}),l.failed&&e.jsx("span",{className:"shrink-0 rounded-sm border border-control bg-danger-wash px-1 text-meta text-ink","data-tour-tag":"browser-tab-failed",children:"Failed"}),m!==void 0&&e.jsxs("span",{className:"shrink-0 rounded-sm border border-control bg-warning-wash px-1 text-meta text-ink tabular-nums","data-tour-tag":"browser-tab-waiting",children:["Request ",m]}),e.jsx("span",{className:"min-w-0 grow truncate",title:l.title,"data-tour-tag":"browser-tab-title",children:l.title})]}),e.jsxs("div",{className:I(f?"relative flex shrink-0 items-center gap-1.5":"absolute inset-y-0 right-1 flex items-center gap-1.5",!f&&"group-hover:bg-elevated group-focus-within:bg-elevated",g===l.tabId&&!f&&"bg-elevated"),children:[e.jsx(b,{ref:F=>{w.current.set(l.tabId,F)},variant:"ghost",size:"icon-sm","aria-label":`Tab actions for ${l.title}`,"aria-expanded":g===l.tabId,onClick:()=>{g===l.tabId?i():p(l.tabId)},className:I("transition-opacity",g===l.tabId?"text-ink":"opacity-0 pointer-events-none group-hover:opacity-100 group-hover:pointer-events-auto group-focus-within:opacity-100 group-focus-within:pointer-events-auto"),"data-tour-tag":"browser-tab-menu",children:e.jsx(Re,{"aria-hidden":!0,className:"size-3.5"})}),e.jsx(A,{content:"Close tab",children:e.jsx(b,{variant:"ghost",size:"icon-sm","aria-label":`Close ${l.title}`,onClick:()=>a(l.tabId),className:I("transition-opacity",f?"opacity-100":"opacity-0 pointer-events-none group-hover:opacity-100 group-hover:pointer-events-auto group-focus-within:opacity-100 group-focus-within:pointer-events-auto"),"data-tour-tag":"browser-tab-close",children:e.jsx(_,{"aria-hidden":!0,className:"size-3.5"})})})]}),f&&e.jsx("span",{"aria-hidden":!0,"data-tour-tag":"browser-tab-notch",className:"pointer-events-none absolute inset-x-0 -bottom-px h-px bg-canvas"})]})]},l.tabId)})}),e.jsx(A,{content:"New tab",children:e.jsx(b,{variant:"ghost",size:"icon-sm","aria-label":"New tab",onClick:h,"data-tour-tag":"browser-new-tab",children:e.jsx(Ee,{"aria-hidden":!0,className:"size-4"})})})]}),j&&e.jsxs("div",{ref:v,tabIndex:-1,onKeyDown:l=>{l.key==="Escape"&&(l.stopPropagation(),i())},className:"flex flex-wrap items-center gap-2 border-control border-t bg-surface px-2 py-1 focus:outline-none","data-tour-tag":"browser-tab-actions",children:[e.jsxs("span",{className:"shrink-0 text-meta text-ink-dim",children:['Actions for "',O(j.title),'"']}),!j.active&&e.jsxs(b,{variant:"outline",size:"sm",onClick:()=>{i(),x(j.tabId)},"data-tour-tag":"browser-tab-watch",children:['Watch "',O(j.title),'"']}),j.owner==="user"&&!j.handedOver&&e.jsxs(b,{variant:"ghost",size:"sm",onClick:()=>{i(),k(j)},"data-tour-tag":"browser-tab-hand-over",children:['Let an agent use "',O(j.title),'"…']}),(j.handedOver||j.owner==="agent")&&e.jsxs(b,{variant:"ghost",size:"sm",onClick:()=>{i(),y(j.tabId)},"data-tour-tag":"browser-tab-revoke-hand-over",children:['Stop letting the agent use "',O(j.title),'"']}),e.jsxs(b,{variant:"ghost",size:"sm",onClick:()=>{i(),a(j.tabId)},"data-tour-tag":"browser-tab-actions-close",children:['Close "',O(j.title),'"']}),e.jsx("div",{className:"grow"}),e.jsx(b,{variant:"ghost",size:"icon-sm","aria-label":"Hide tab actions",onClick:i,"data-tour-tag":"browser-tab-actions-dismiss",children:e.jsx(ee,{"aria-hidden":!0,className:"size-3.5"})})]})]})};function nt(t){return t==="about:blank"?"":t}const rt=({url:t,pendingUrl:s,loading:d,canGoBack:x,canGoForward:a,disabled:h,onNavigate:k,onBack:y,onForward:g,onReload:p,onStop:o,onOpenApprovals:w,waitingCount:i,triggerRef:v})=>{const[j,l]=r.useState(null),N=nt(t),f=j??N,m=j!==null,c=()=>{const n=j?.trim();n&&n!==N&&k(n),l(null)},E=n=>{if(n.key==="Enter"){n.preventDefault(),c();return}n.key==="Escape"&&(n.preventDefault(),l(null))};return e.jsxs("div",{className:"flex items-center gap-1 border-control border-b bg-canvas px-2 py-1","data-tour-tag":"browser-url-bar",children:[e.jsx(A,{content:"Back",children:e.jsx(b,{variant:"ghost",size:"icon-sm","aria-label":"Back",disabled:h||!x,onClick:y,"data-tour-tag":"browser-back",children:e.jsx(De,{"aria-hidden":!0,className:"size-4"})})}),e.jsx(A,{content:"Forward",children:e.jsx(b,{variant:"ghost",size:"icon-sm","aria-label":"Forward",disabled:h||!a,onClick:g,"data-tour-tag":"browser-forward",children:e.jsx(Se,{"aria-hidden":!0,className:"size-4"})})}),d?e.jsx(A,{content:"Stop loading",children:e.jsx(b,{variant:"ghost",size:"icon-sm","aria-label":"Stop loading",disabled:h,onClick:o,"data-tour-tag":"browser-stop",children:e.jsx(_,{"aria-hidden":!0,className:"size-4"})})}):e.jsx(A,{content:"Reload",children:e.jsx(b,{variant:"ghost",size:"icon-sm","aria-label":"Reload",disabled:h,onClick:p,"data-tour-tag":"browser-reload",children:e.jsx(se,{"aria-hidden":!0,className:"size-4"})})}),e.jsxs("div",{className:"relative min-w-0 grow",children:[e.jsx(we,{value:f,disabled:h,onChange:n=>l(n.target.value),onKeyDown:E,onFocus:()=>l(n=>n??N),onBlur:c,spellCheck:!1,autoComplete:"off","aria-label":"Address",placeholder:d&&!N?s??void 0:void 0,"data-tour-tag":"browser-address",className:I("pr-7",m&&"font-mono text-mono-sm")}),d&&e.jsx(Ie,{"aria-hidden":!0,className:"pointer-events-none absolute top-1/2 right-2 size-3.5 -translate-y-1/2 animate-spin text-ink-dim"})]}),e.jsxs("div",{className:"relative shrink-0",children:[e.jsxs(b,{ref:v,variant:"outline",size:"sm",onClick:w,disabled:h,className:"pr-5","aria-label":i>0?`Approvals, ${i} waiting`:"Approvals","data-tour-tag":"browser-approvals",children:[e.jsx(ae,{"aria-hidden":!0,className:"size-3.5"}),"Approvals"]}),i>0&&e.jsx("span",{className:"pointer-events-none absolute -top-1.5 -right-1.5",children:e.jsx(Z,{variant:"attention",shape:"pill",className:"h-4 min-w-4 justify-center px-1 tabular-nums ring-2 ring-canvas","data-tour-tag":"browser-approvals-badge",children:i})})]})]})};function it(t){const s=t.getBoundingClientRect();return{x:Math.round(s.left),y:Math.round(s.top),width:Math.round(s.width),height:Math.round(s.height)}}const ot=Ke,lt=({scope:t,surfaceTag:s,dockSurfaceTag:d,approvalHeaderLabel:x=ot})=>{const a=Be(),h=ke(),k=je(),y=r.useRef(null),g=r.useRef(null),[p,o]=r.useState(!1),[w,i]=r.useState(null),[v,j]=r.useState(null),[l,N]=r.useState(!1),[f,m]=r.useState(null),c=a.state,E=c?.tabs,n=r.useMemo(()=>He(E??[],t),[E,t]),C=n.find(u=>u.tabId===c?.activeTabId)??null,F=c?.pendingConsent,U=r.useMemo(()=>F??[],[F]),R=We(U,n);r.useLayoutEffect(()=>{const u=y.current;if(!u)return;const T=()=>a.setContentRect(it(u));T();const K=new ResizeObserver(T);return K.observe(u),window.addEventListener("resize",T),()=>{K.disconnect(),window.removeEventListener("resize",T),a.setContentRect(null)}},[a.setContentRect]),r.useEffect(()=>{a.setViewVisible(!h)},[a.setViewVisible,h]),r.useEffect(()=>{const u=window.api?.browser;if(u)return u.onPopupBlocked(T=>m(T))},[]),r.useEffect(()=>{const u=window.api?.browser;if(u)return u.onConsentAttention(()=>void a.refresh())},[a.refresh]);const S=r.useCallback(async u=>{N(!0);try{await u()}finally{N(!1)}},[]),z=Ae(),D=z?U.find(u=>u.entryId===z):void 0;r.useEffect(()=>{z&&!D&&ze(z)},[z,D]),r.useEffect(()=>{D&&i(D.entryId)},[D]);const H=R.rows.find(u=>u.request.entryId===w)??R.rows[0]??null,le=H?.request??null,W=r.useCallback((u,T)=>{R.noteDecision(u),S(()=>a.respondToConsent(u,T))},[a.respondToConsent,R.noteDecision,S]),V=R.rows.length>0||R.resolved.length>0,G=r.useRef(!1);r.useEffect(()=>{const u=G.current;G.current=V,!(V||!u)&&(p||document.activeElement===document.body&&g.current?.focus())},[V,p]);const ce=r.useCallback(()=>{o(!1),g.current?.focus()},[]),de=C?re(C.url):null,P=c?.navFailure??null,Y=(k?k.split(","):[]).some(u=>u&&!u.startsWith("browser-load-failure:")),ue=P!==null&&c!==null&&n.length>0&&!Y;return ye(P!==null,"browser-load-failure"),a.available?e.jsxs("div",{className:"flex h-full min-h-0 flex-col bg-canvas","data-tour-tag":s,children:[e.jsx(at,{tabs:n,activeTabId:c?.activeTabId??null,waiting:R.waiting,onActivate:u=>void a.activateTab(u),onClose:u=>void a.closeTab(u),onNewTab:()=>void a.newTab(),onHandOver:u=>j(u),onRevokeHandOver:u=>void a.revokeHandOver(u)}),e.jsx(rt,{url:c?.url??"",pendingUrl:a.pendingUrl,loading:!!c?.loading,canGoBack:!!c?.canGoBack,canGoForward:!!c?.canGoForward,disabled:n.length===0,onNavigate:u=>void a.navigate(u),onBack:()=>void a.history("back"),onForward:()=>void a.history("forward"),onReload:()=>void a.reload(),onStop:()=>void a.stop(),onOpenApprovals:()=>o(u=>!u),waitingCount:R.count,triggerRef:g}),(R.rows.length>0||R.resolved.length>0)&&e.jsx("div",{"aria-live":"polite",children:e.jsx(Xe,{rows:R.rows,resolved:R.resolved,selectedEntryId:H?.request.entryId??null,onSelect:i,busy:l,onDecide:W,dockOpen:p,onToggleDock:()=>o(u=>!u),headerLabel:x})}),f&&e.jsxs("div",{className:"flex items-center gap-2 border-control border-b bg-surface px-3 py-1.5","data-tour-tag":"browser-popup-notice",children:[e.jsx(te,{"aria-hidden":!0,className:"size-4 shrink-0 text-ink-muted"}),e.jsxs("p",{className:"min-w-0 grow truncate text-body-sm text-ink-muted",children:["A popup to"," ",e.jsx("span",{className:"font-mono text-mono-sm",children:f.url})," ","was blocked."]}),e.jsx(b,{variant:"outline",size:"sm",onClick:()=>{const u=f.url;m(null),S(async()=>{await a.newTab(),await a.navigate(u)})},children:"Open in a new tab"}),e.jsx(b,{variant:"ghost",size:"icon-sm","aria-label":"Dismiss",onClick:()=>m(null),children:e.jsx(_,{"aria-hidden":!0,className:"size-3.5"})})]}),a.error&&e.jsxs("output",{className:"flex items-center gap-2 border-control border-b bg-danger-wash px-3 py-1.5","data-tour-tag":"browser-error",children:[e.jsx("p",{className:"min-w-0 grow text-body-sm text-ink",children:a.error}),e.jsx(b,{variant:"ghost",size:"icon-sm","aria-label":"Dismiss",onClick:()=>a.dismissError(),children:e.jsx(_,{"aria-hidden":!0,className:"size-3.5"})})]}),e.jsxs("div",{className:"flex min-h-0 grow",children:[e.jsxs("div",{ref:y,className:"relative min-h-0 min-w-0 grow bg-canvas","data-tour-tag":"browser-content","data-suppressed-by":k,children:[!c&&e.jsx("div",{className:"flex h-full items-center justify-center",children:e.jsx(J,{size:"lg",label:"Loading browser"})}),c&&n.length===0&&e.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3 px-6 text-center",children:[e.jsx($,{"aria-hidden":!0,className:"size-6 text-ink-dim"}),t==="all"?e.jsx("p",{className:"text-body text-ink-muted",children:"No tabs are open."}):e.jsx("p",{className:"text-body text-ink-muted",children:"No browser tabs in this conversation yet. A tab an agent opens appears here while it works."}),e.jsx(b,{variant:t==="all"?"primary":"outline",size:"sm",onClick:()=>void a.newTab(),children:"New tab"})]}),c&&n.length>0&&!C&&e.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3",children:[e.jsx($,{"aria-hidden":!0,className:"size-6 text-ink-dim"}),e.jsx("p",{className:"text-body text-ink-muted",children:"No tab is selected. Pick a tab above, or open a new one."}),e.jsx(b,{variant:"outline",size:"sm",onClick:()=>void a.newTab(),children:"New tab"})]}),h&&Y&&c&&n.length>0&&e.jsxs("output",{className:"flex h-full flex-col items-center justify-center gap-1 px-6 text-center","data-tour-tag":"browser-paused","data-suppressed-by":k,children:[e.jsx("p",{className:"max-w-lg truncate text-title text-ink",children:c.title||C?.title||"This page"}),e.jsx("p",{className:"text-body-sm text-ink-muted",children:"Paused while a dialog or panel is open — close it to bring the page back."})]}),ue&&P&&e.jsx(tt,{failure:P,onRetry:()=>void a.reload()})]}),e.jsx(Ge,{open:p,rows:R.rows,resolved:R.resolved,selectedEntryId:le?.entryId??null,onSelect:i,busy:l,onDecide:W,approvals:c?.approvals??[],currentOrigin:de,onRevoke:u=>void S(()=>a.revokeApproval(u)),onRevokeAll:()=>void S(()=>a.revokeAllApprovals()),onForgetSite:u=>void S(()=>a.forgetSite(u)),onClearData:u=>void S(()=>a.clearData(u)),onClose:ce,surfaceTag:d})]}),e.jsx(Je,{open:v!==null,tab:v,busy:l,onClose:()=>j(null),onConfirm:(u,T)=>{j(null),S(()=>a.handOver(u,T))}})]}):e.jsx("div",{className:"flex h-full items-center justify-center bg-canvas p-6",children:e.jsx("p",{className:"text-body text-ink-muted",children:"The browser is only available in the desktop app."})})},pt=()=>e.jsx(lt,{scope:"all",surfaceTag:"browser-route",dockSurfaceTag:"browser-approvals-dock"});export{pt as BrowserPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{U as a,C as n}from"./mermaid.core-CdVpQ79S.js";const t=(r,o)=>a.lang.round(n.parse(r)[o]);export{t as c};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as a,c as s,a as e,C as t}from"./chunk-A2AXSNBT-C7PMbmgd.js";import{_ as i}from"./mermaid.core-CdVpQ79S.js";import"./chunk-RZ5BOZE2-DtZPVT7y.js";import"./index-DLktHc2h.js";import"./icon-CEd0ml4Y.js";var p={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{p as diagram};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as a,c as s,a as e,C as t}from"./chunk-A2AXSNBT-C7PMbmgd.js";import{_ as i}from"./mermaid.core-CdVpQ79S.js";import"./chunk-RZ5BOZE2-DtZPVT7y.js";import"./index-DLktHc2h.js";import"./icon-CEd0ml4Y.js";var p={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{p as diagram};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{b as r}from"./_baseUniq-CX84XXMp.js";var e=4;function a(o){return r(o,e)}export{a as c};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
@font-face{font-family:Roboto Mono;font-style:normal;font-weight:400;font-display:swap;src:url(./RobotoMono-Regular-BCiLwUa1.ttf) format("truetype")}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:700;font-display:swap;src:url(./RobotoMono-Bold-CA4NrfZm.ttf) format("truetype")}@font-face{font-family:Geist Mono;src:url(./GeistMonoNerdFontMono-Regular-CWdDX7GJ.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(./GeistMonoNerdFontMono-Bold-B9bGosAz.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:"Geist Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-6xl:72rem;--container-7xl:80rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--leading-relaxed:1.625;--radius-xs:2px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--ease-in-out:cubic-bezier(.65, 0, .35, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-canvas:var(--lo-canvas);--color-surface:var(--lo-surface);--color-elevated:var(--lo-elevated);--color-sunken:var(--lo-sunken);--color-ink:var(--lo-ink);--color-ink-muted:var(--lo-ink-muted);--color-ink-dim:var(--lo-ink-dim);--color-ink-disabled:var(--lo-ink-disabled);--color-hairline:var(--lo-hairline);--color-control:var(--lo-border-control);--color-accent:var(--lo-accent);--color-accent-hover:var(--lo-accent-hover);--color-accent-active:var(--lo-accent-active);--color-accent-wash:var(--lo-accent-wash);--color-on-accent:var(--lo-on-accent);--color-chart-bar-hover:var(--lo-chart-bar-hover);--color-success:var(--lo-success);--color-success-wash:var(--lo-success-wash);--color-success-border:var(--lo-success-border);--color-warning:var(--lo-warning);--color-warning-wash:var(--lo-warning-wash);--color-warning-border:var(--lo-warning-border);--color-danger:var(--lo-danger);--color-danger-wash:var(--lo-danger-wash);--color-danger-border:var(--lo-danger-border);--color-info:var(--lo-info);--color-info-wash:var(--lo-info-wash);--color-info-border:var(--lo-info-border);--text-display:1.75rem;--text-display--line-height:1.2;--text-display--letter-spacing:-.02em;--text-display--font-weight:600;--text-title:1.25rem;--text-title--line-height:1.3;--text-title--letter-spacing:-.012em;--text-title--font-weight:600;--text-heading:1rem;--text-heading--line-height:1.4;--text-heading--letter-spacing:-.006em;--text-heading--font-weight:600;--text-body:.875rem;--text-body--line-height:1.55;--text-body-sm:.8125rem;--text-body-sm--line-height:1.5;--text-meta:.75rem;--text-meta--line-height:1.45;--text-mono:.8125rem;--text-mono--line-height:1.5;--text-mono-sm:.75rem;--text-mono-sm--line-height:1.45;--radius-frame:16px;--transition-duration-instant:80ms;--transition-duration-fast:.12s;--transition-duration-base:.18s;--transition-duration-slow:.24s;--duration-fast:.12s;--duration-slow:.24s;--ease-out-quart:cubic-bezier(.25, 1, .5, 1);--animate-pulse-visible:pulse-visible 2s cubic-bezier(.4, 0, .6, 1) infinite;--color-scrim:var(--lo-scrim);--shadow-overlay:var(--lo-overlay-shadow)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:where(:focus-visible){border-radius:inherit}:where(:disabled,[aria-disabled=true]){opacity:1;cursor:not-allowed}html,body,#app{height:100%;overflow:hidden}body,#app{position:relative}body{background-color:var(--color-canvas);color:var(--color-ink);font-family:var(--font-sans);font-size:var(--text-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.55}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}}@layer components;@layer utilities{.\@container\/chatcol{container:chatcol/inline-size}.\@container\/olderhistory{container:olderhistory/inline-size}.\@container\/slash{container:slash/inline-size}.\@container\/toolrow{container:toolrow/inline-size}.\@container{container-type:inline-size}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{inset-inline:0}.inset-y-0{inset-block:0}.-top-0\.5{top:calc(var(--spacing) * -.5)}.-top-1\.5{top:calc(var(--spacing) * -1.5)}.-top-2{top:calc(var(--spacing) * -2)}.-top-80{top:calc(var(--spacing) * -80)}.top-0{top:0}.top-1{top:var(--spacing)}.top-1\.5{top:calc(var(--spacing) * 1.5)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-3{top:calc(var(--spacing) * 3)}.top-4{top:calc(var(--spacing) * 4)}.top-14{top:calc(var(--spacing) * 14)}.-right-0\.5{right:calc(var(--spacing) * -.5)}.-right-1\.5{right:calc(var(--spacing) * -1.5)}.right-0{right:0}.right-1{right:var(--spacing)}.right-1\.5{right:calc(var(--spacing) * 1.5)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.right-9{right:calc(var(--spacing) * 9)}.-bottom-3{bottom:calc(var(--spacing) * -3)}.-bottom-px{bottom:-1px}.bottom-0{bottom:0}.bottom-4{bottom:calc(var(--spacing) * 4)}.bottom-full{bottom:100%}.-left-1\.5{left:calc(var(--spacing) * -1.5)}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.left-2\.5{left:calc(var(--spacing) * 2.5)}.left-3{left:calc(var(--spacing) * 3)}.left-4{left:calc(var(--spacing) * 4)}.isolate{isolation:isolate}.z-10{z-index:10}.z-11{z-index:11}.z-12{z-index:12}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.z-2100{z-index:2100}.z-2200{z-index:2200}.z-\[2\]{z-index:2}.z-\[1300\]{z-index:1300}.z-\[1301\]{z-index:1301}.z-\[2300\]{z-index:2300}.order-2{order:2}.order-3{order:3}.order-first{order:-9999}.col-span-2{grid-column:span 2/span 2}.col-span-full{grid-column:1/-1}.row-1{grid-row:1}.\!container{width:100%!important}@media (min-width:40rem){.\!container{max-width:40rem!important}}@media (min-width:48rem){.\!container{max-width:48rem!important}}@media (min-width:64rem){.\!container{max-width:64rem!important}}@media (min-width:80rem){.\!container{max-width:80rem!important}}@media (min-width:96rem){.\!container{max-width:96rem!important}}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:0}.m-4{margin:calc(var(--spacing) * 4)}.m-6{margin:calc(var(--spacing) * 6)}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.-mx-1\.5{margin-inline:calc(var(--spacing) * -1.5)}.-mx-2{margin-inline:calc(var(--spacing) * -2)}.mx-1{margin-inline:var(--spacing)}.mx-1\.5{margin-inline:calc(var(--spacing) * 1.5)}.mx-3{margin-inline:calc(var(--spacing) * 3)}.mx-auto{margin-inline:auto}.mx-px{margin-inline:1px}.my-1{margin-block:var(--spacing)}.my-2{margin-block:calc(var(--spacing) * 2)}.my-3{margin-block:calc(var(--spacing) * 3)}.my-4{margin-block:calc(var(--spacing) * 4)}.my-6{margin-block:calc(var(--spacing) * 6)}.-mt-4{margin-top:calc(var(--spacing) * -4)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-auto{margin-top:auto}.mt-px{margin-top:1px}.mr-0\.5{margin-right:calc(var(--spacing) * .5)}.mr-1{margin-right:var(--spacing)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-2\.5{margin-right:calc(var(--spacing) * 2.5)}.mr-6{margin-right:calc(var(--spacing) * 6)}.-mb-3{margin-bottom:calc(var(--spacing) * -3)}.-mb-px{margin-bottom:-1px}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.-ml-1\.5{margin-left:calc(var(--spacing) * -1.5)}.ml-0\.5{margin-left:calc(var(--spacing) * .5)}.ml-1{margin-left:var(--spacing)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-5{margin-left:calc(var(--spacing) * 5)}.ml-6{margin-left:calc(var(--spacing) * 6)}.ml-auto{margin-left:auto}.box-border{box-sizing:border-box}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\!block{display:block!important}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-16\/10{aspect-ratio:16/10}.aspect-square{aspect-ratio:1}.size-1{width:var(--spacing);height:var(--spacing)}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-9\.5{width:calc(var(--spacing) * 9.5);height:calc(var(--spacing) * 9.5)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-11{width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11)}.size-16{width:calc(var(--spacing) * 16);height:calc(var(--spacing) * 16)}.size-25{width:calc(var(--spacing) * 25);height:calc(var(--spacing) * 25)}.size-75{width:calc(var(--spacing) * 75);height:calc(var(--spacing) * 75)}.size-\[3px\]{width:3px;height:3px}.size-full{width:100%;height:100%}.h-0{height:0}.h-0\.5{height:calc(var(--spacing) * .5)}.h-1{height:var(--spacing)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-9\.5{height:calc(var(--spacing) * 9.5)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-13{height:calc(var(--spacing) * 13)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-21{height:calc(var(--spacing) * 21)}.h-24{height:calc(var(--spacing) * 24)}.h-30{height:calc(var(--spacing) * 30)}.h-32{height:calc(var(--spacing) * 32)}.h-40{height:calc(var(--spacing) * 40)}.h-44{height:calc(var(--spacing) * 44)}.h-56{height:calc(var(--spacing) * 56)}.h-60{height:calc(var(--spacing) * 60)}.h-62{height:calc(var(--spacing) * 62)}.h-64{height:calc(var(--spacing) * 64)}.h-96{height:calc(var(--spacing) * 96)}.h-\[80vh\]{height:80vh}.h-\[90vh\]{height:90vh}.h-\[148px\]{height:148px}.h-\[200px\]{height:200px}.h-\[260px\]{height:260px}.h-\[520px\]{height:520px}.h-\[560px\]{height:560px}.h-\[600px\]{height:600px}.h-\[720px\]{height:720px}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-24{max-height:calc(var(--spacing) * 24)}.max-h-28{max-height:calc(var(--spacing) * 28)}.max-h-32{max-height:calc(var(--spacing) * 32)}.max-h-40{max-height:calc(var(--spacing) * 40)}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-56{max-height:calc(var(--spacing) * 56)}.max-h-60{max-height:calc(var(--spacing) * 60)}.max-h-64{max-height:calc(var(--spacing) * 64)}.max-h-72{max-height:calc(var(--spacing) * 72)}.max-h-75{max-height:calc(var(--spacing) * 75)}.max-h-80{max-height:calc(var(--spacing) * 80)}.max-h-96{max-height:calc(var(--spacing) * 96)}.max-h-\[7\.5rem\]{max-height:7.5rem}.max-h-\[45\%\]{max-height:45%}.max-h-\[70\%\]{max-height:70%}.max-h-\[90vh\]{max-height:90vh}.max-h-\[200px\]{max-height:200px}.max-h-\[240px\]{max-height:240px}.max-h-\[300px\]{max-height:300px}.max-h-\[380px\]{max-height:380px}.max-h-\[740px\]{max-height:740px}.max-h-\[calc\(100vh-4rem\)\]{max-height:calc(100vh - 4rem)}.max-h-\[min\(50vh\,420px\)\]{max-height:min(50vh,420px)}.max-h-\[min\(60vh\,520px\)\]{max-height:min(60vh,520px)}.max-h-\[min\(76vh\,760px\)\]{max-height:min(76vh,760px)}.max-h-\[var\(--radix-dropdown-menu-content-available-height\)\]{max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-full{max-height:100%}.\[min-height\:50px\]{min-height:50px}.min-h-0{min-height:0}.min-h-5{min-height:calc(var(--spacing) * 5)}.min-h-5\.5{min-height:calc(var(--spacing) * 5.5)}.min-h-6{min-height:calc(var(--spacing) * 6)}.min-h-7{min-height:calc(var(--spacing) * 7)}.min-h-8{min-height:calc(var(--spacing) * 8)}.min-h-9{min-height:calc(var(--spacing) * 9)}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-13{min-height:calc(var(--spacing) * 13)}.min-h-16{min-height:calc(var(--spacing) * 16)}.min-h-20{min-height:calc(var(--spacing) * 20)}.min-h-25{min-height:calc(var(--spacing) * 25)}.min-h-36{min-height:calc(var(--spacing) * 36)}.min-h-40{min-height:calc(var(--spacing) * 40)}.min-h-50{min-height:calc(var(--spacing) * 50)}.min-h-52{min-height:calc(var(--spacing) * 52)}.min-h-80{min-height:calc(var(--spacing) * 80)}.min-h-\[50px\]{min-height:50px}.min-h-\[320px\]{min-height:320px}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-\(--radix-popover-trigger-width\){width:var(--radix-popover-trigger-width)}.w-0{width:0}.w-0\.5{width:calc(var(--spacing) * .5)}.w-1\/2{width:50%}.w-1\/3{width:33.3333%}.w-1\/4{width:25%}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-2\/3{width:66.6667%}.w-3{width:calc(var(--spacing) * 3)}.w-3\/4{width:75%}.w-3\/5{width:60%}.w-4{width:calc(var(--spacing) * 4)}.w-4\/5{width:80%}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-9{width:calc(var(--spacing) * 9)}.w-12{width:calc(var(--spacing) * 12)}.w-15{width:calc(var(--spacing) * 15)}.w-16{width:calc(var(--spacing) * 16)}.w-18{width:calc(var(--spacing) * 18)}.w-20{width:calc(var(--spacing) * 20)}.w-24{width:calc(var(--spacing) * 24)}.w-28{width:calc(var(--spacing) * 28)}.w-30{width:calc(var(--spacing) * 30)}.w-32{width:calc(var(--spacing) * 32)}.w-36{width:calc(var(--spacing) * 36)}.w-40{width:calc(var(--spacing) * 40)}.w-44{width:calc(var(--spacing) * 44)}.w-48{width:calc(var(--spacing) * 48)}.w-52{width:calc(var(--spacing) * 52)}.w-55{width:calc(var(--spacing) * 55)}.w-56{width:calc(var(--spacing) * 56)}.w-60{width:calc(var(--spacing) * 60)}.w-64{width:calc(var(--spacing) * 64)}.w-70{width:calc(var(--spacing) * 70)}.w-72{width:calc(var(--spacing) * 72)}.w-80{width:calc(var(--spacing) * 80)}.w-90{width:calc(var(--spacing) * 90)}.w-100{width:calc(var(--spacing) * 100)}.w-125{width:calc(var(--spacing) * 125)}.w-150{width:calc(var(--spacing) * 150)}.w-160{width:calc(var(--spacing) * 160)}.w-\[1ch\]{width:1ch}.w-\[5ch\]{width:5ch}.w-\[6ch\]{width:6ch}.w-\[32rem\]{width:32rem}.w-\[70px\]{width:70px}.w-\[360px\]{width:360px}.w-\[380px\]{width:380px}.w-\[420px\]{width:420px}.w-\[720px\]{width:720px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.w-screen{width:100vw}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-32{max-width:calc(var(--spacing) * 32)}.max-w-40{max-width:calc(var(--spacing) * 40)}.max-w-45{max-width:calc(var(--spacing) * 45)}.max-w-64{max-width:calc(var(--spacing) * 64)}.max-w-65{max-width:calc(var(--spacing) * 65)}.max-w-72{max-width:calc(var(--spacing) * 72)}.max-w-80{max-width:calc(var(--spacing) * 80)}.max-w-96{max-width:calc(var(--spacing) * 96)}.max-w-100{max-width:calc(var(--spacing) * 100)}.max-w-110{max-width:calc(var(--spacing) * 110)}.max-w-120{max-width:calc(var(--spacing) * 120)}.max-w-140{max-width:calc(var(--spacing) * 140)}.max-w-150{max-width:calc(var(--spacing) * 150)}.max-w-160{max-width:calc(var(--spacing) * 160)}.max-w-200{max-width:calc(var(--spacing) * 200)}.max-w-\[19rem\]{max-width:19rem}.max-w-\[45\%\]{max-width:45%}.max-w-\[46rem\]{max-width:46rem}.max-w-\[50\%\]{max-width:50%}.max-w-\[60\%\]{max-width:60%}.max-w-\[75\%\]{max-width:75%}.max-w-\[90vw\]{max-width:90vw}.max-w-\[92\%\]{max-width:92%}.max-w-\[380px\]{max-width:380px}.max-w-\[420px\]{max-width:420px}.max-w-\[480px\]{max-width:480px}.max-w-\[600px\]{max-width:600px}.max-w-\[700px\]{max-width:700px}.max-w-\[720px\]{max-width:720px}.max-w-\[900px\]{max-width:900px}.max-w-\[calc\(100vw-2rem\)\]{max-width:calc(100vw - 2rem)}.max-w-\[calc\(100vw-4rem\)\]{max-width:calc(100vw - 4rem)}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-\(--radix-select-trigger-width\){min-width:var(--radix-select-trigger-width)}.min-w-0{min-width:0}.min-w-2{min-width:calc(var(--spacing) * 2)}.min-w-4{min-width:calc(var(--spacing) * 4)}.min-w-5{min-width:calc(var(--spacing) * 5)}.min-w-10{min-width:calc(var(--spacing) * 10)}.min-w-11{min-width:calc(var(--spacing) * 11)}.min-w-14{min-width:calc(var(--spacing) * 14)}.min-w-16{min-width:calc(var(--spacing) * 16)}.min-w-20{min-width:calc(var(--spacing) * 20)}.min-w-24{min-width:calc(var(--spacing) * 24)}.min-w-25{min-width:calc(var(--spacing) * 25)}.min-w-32{min-width:calc(var(--spacing) * 32)}.min-w-44{min-width:calc(var(--spacing) * 44)}.min-w-45{min-width:calc(var(--spacing) * 45)}.min-w-50{min-width:calc(var(--spacing) * 50)}.min-w-55{min-width:calc(var(--spacing) * 55)}.min-w-56{min-width:calc(var(--spacing) * 56)}.min-w-60{min-width:calc(var(--spacing) * 60)}.min-w-72{min-width:calc(var(--spacing) * 72)}.min-w-80{min-width:calc(var(--spacing) * 80)}.min-w-96{min-width:calc(var(--spacing) * 96)}.min-w-\[26rem\]{min-width:26rem}.min-w-\[30rem\]{min-width:30rem}.min-w-\[140px\]{min-width:140px}.min-w-\[220px\]{min-width:220px}.flex-1{flex:1}.flex-none{flex:none}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-32{flex-basis:calc(var(--spacing) * 32)}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-1\/2{--tw-translate-x: 50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.\[transform\:translateZ\(0\)\]{transform:translateZ(0)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-\[recording-ping_1\.6s_ease-out_infinite\]{animation:1.6s ease-out infinite recording-ping}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-pulse{animation:var(--animate-pulse)}.animate-pulse-visible{animation:var(--animate-pulse-visible)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-help{cursor:help}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.resize-none{resize:none}.resize-y{resize:vertical}.\[scrollbar-width\:none\]{scrollbar-width:none}.\[scrollbar-gutter\:stable\]{scrollbar-gutter:stable}.\[scrollbar-gutter\:stable_both-edges\]{scrollbar-gutter:stable both-edges}.list-disc{list-style-type:disc}.\[appearance\:textfield\]{appearance:textfield}.appearance-none{appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.grid-cols-\[0\.375rem_minmax\(3rem\,11rem\)_minmax\(1\.5rem\,1fr\)_11rem_7\.5rem\]{grid-template-columns:.375rem minmax(3rem,11rem) minmax(1.5rem,1fr) 11rem 7.5rem}.grid-cols-\[10rem_1fr\]{grid-template-columns:10rem 1fr}.grid-cols-\[max-content_1fr\]{grid-template-columns:max-content 1fr}.grid-cols-\[repeat\(auto-fill\,minmax\(17\.5rem\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(17.5rem,1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(150px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(240px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.grid-cols-\[repeat\(auto-fit\,minmax\(160px\,1fr\)\)\]{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.grid-cols-\[repeat\(auto-fit\,minmax\(260px\,1fr\)\)\]{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-0{gap:0}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-24{gap:calc(var(--spacing) * 24)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-1{column-gap:var(--spacing)}.gap-x-1\.5{column-gap:calc(var(--spacing) * 1.5)}.gap-x-2{column-gap:calc(var(--spacing) * 2)}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-y-0\.5{row-gap:calc(var(--spacing) * .5)}.gap-y-1{row-gap:var(--spacing)}.gap-y-1\.5{row-gap:calc(var(--spacing) * 1.5)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.gap-y-4{row-gap:calc(var(--spacing) * 4)}.self-center{align-self:center}.self-end{align-self:flex-end}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-clip{overflow:clip}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-\[1px\]{border-radius:1px}.rounded-\[inherit\]{border-radius:inherit}.rounded-frame{border-radius:var(--radius-frame)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xs{border-radius:var(--radius-xs)}.rounded-t-sm{border-top-left-radius:var(--radius-sm);border-top-right-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-x{border-inline-style:var(--tw-border-style);border-inline-width:1px}.border-x-0{border-inline-style:var(--tw-border-style);border-inline-width:0}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-dotted{--tw-border-style:dotted;border-style:dotted}.border-accent,.border-accent\/20{border-color:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.border-accent\/20{border-color:color-mix(in oklab,var(--color-accent) 20%,transparent)}}.border-control{border-color:var(--color-control)}.border-danger{border-color:var(--color-danger)}.border-danger-border{border-color:var(--color-danger-border)}.border-hairline{border-color:var(--color-hairline)}.border-info-border{border-color:var(--color-info-border)}.border-ink-dim{border-color:var(--color-ink-dim)}.border-success-border{border-color:var(--color-success-border)}.border-transparent{border-color:#0000}.border-warning{border-color:var(--color-warning)}.border-warning-border{border-color:var(--color-warning-border)}.border-t-accent{border-top-color:var(--color-accent)}.border-t-on-accent{border-top-color:var(--color-on-accent)}.bg-\[color-mix\(in_oklab\,var\(--color-accent-wash\)_80\%\,var\(--color-accent\)\)\]{background-color:var(--color-accent-wash)}@supports (color:color-mix(in lab,red,red)){.bg-\[color-mix\(in_oklab\,var\(--color-accent-wash\)_80\%\,var\(--color-accent\)\)\]{background-color:color-mix(in oklab,var(--color-accent-wash) 80%,var(--color-accent))}}.bg-\[color-mix\(in_oklab\,var\(--color-danger-wash\)_80\%\,var\(--color-danger\)\)\]{background-color:var(--color-danger-wash)}@supports (color:color-mix(in lab,red,red)){.bg-\[color-mix\(in_oklab\,var\(--color-danger-wash\)_80\%\,var\(--color-danger\)\)\]{background-color:color-mix(in oklab,var(--color-danger-wash) 80%,var(--color-danger))}}.bg-accent{background-color:var(--color-accent)}.bg-accent-active{background-color:var(--color-accent-active)}.bg-accent-hover{background-color:var(--color-accent-hover)}.bg-accent-wash{background-color:var(--color-accent-wash)}.bg-canvas{background-color:var(--color-canvas)}.bg-control{background-color:var(--color-control)}.bg-danger{background-color:var(--color-danger)}.bg-danger-wash{background-color:var(--color-danger-wash)}.bg-elevated{background-color:var(--color-elevated)}.bg-hairline{background-color:var(--color-hairline)}.bg-info{background-color:var(--color-info)}.bg-info-wash{background-color:var(--color-info-wash)}.bg-inherit{background-color:inherit}.bg-ink{background-color:var(--color-ink)}.bg-ink-dim{background-color:var(--color-ink-dim)}.bg-ink-muted{background-color:var(--color-ink-muted)}.bg-scrim{background-color:var(--color-scrim)}.bg-success{background-color:var(--color-success)}.bg-success-wash{background-color:var(--color-success-wash)}.bg-sunken{background-color:var(--color-sunken)}.bg-surface,.bg-surface\/85{background-color:var(--color-surface)}@supports (color:color-mix(in lab,red,red)){.bg-surface\/85{background-color:color-mix(in oklab,var(--color-surface) 85%,transparent)}}.bg-transparent{background-color:#0000}.bg-warning{background-color:var(--color-warning)}.bg-warning-wash{background-color:var(--color-warning-wash)}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-\[linear-gradient\(to_right\,var\(--color-accent\)_0_var\(--fill\)\,var\(--color-sunken\)_var\(--fill\)_100\%\)\]{background-image:linear-gradient(to right,var(--color-accent) 0 var(--fill),var(--color-sunken) var(--fill) 100%)}.from-elevated{--tw-gradient-from:var(--color-elevated);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.\[mask-image\:linear-gradient\(\.\.\.\)\]{-webkit-mask-image:linear-gradient(...);mask-image:linear-gradient(...)}.\[mask-image\:linear-gradient\(to_bottom\,black_calc\(100\%-20px\)\,transparent\)\]{-webkit-mask-image:linear-gradient(#000 calc(100% - 20px),#0000);mask-image:linear-gradient(#000 calc(100% - 20px),#0000)}.\[mask-image\:linear-gradient\(to_right\,black_calc\(100\%-24px\)\,transparent\)\]{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 24px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 24px),#0000)}.bg-\[length\:100\%_6px\]{background-size:100% 6px}.bg-center{background-position:50%}.bg-no-repeat{background-repeat:no-repeat}.fill-accent{fill:var(--color-accent)}.stroke-danger{stroke:var(--color-danger)}.stroke-hairline{stroke:var(--color-hairline)}.stroke-info{stroke:var(--color-info)}.stroke-sunken{stroke:var(--color-sunken)}.stroke-warning{stroke:var(--color-warning)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:0}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.p-10{padding:calc(var(--spacing) * 10)}.p-px{padding:1px}.px-0{padding-inline:0}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-7{padding-inline:calc(var(--spacing) * 7)}.py-0{padding-block:0}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-16{padding-block:calc(var(--spacing) * 16)}.pt-0{padding-top:0}.pt-0\.5{padding-top:calc(var(--spacing) * .5)}.pt-1{padding-top:var(--spacing)}.pt-1\.5{padding-top:calc(var(--spacing) * 1.5)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-24{padding-top:calc(var(--spacing) * 24)}.pr-0\.5{padding-right:calc(var(--spacing) * .5)}.pr-1{padding-right:var(--spacing)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pr-5{padding-right:calc(var(--spacing) * 5)}.pr-7{padding-right:calc(var(--spacing) * 7)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pr-9{padding-right:calc(var(--spacing) * 9)}.pr-10{padding-right:calc(var(--spacing) * 10)}.pr-12{padding-right:calc(var(--spacing) * 12)}.pr-18{padding-right:calc(var(--spacing) * 18)}.pr-20{padding-right:calc(var(--spacing) * 20)}.pr-28{padding-right:calc(var(--spacing) * 28)}.pb-0\.5{padding-bottom:calc(var(--spacing) * .5)}.pb-1{padding-bottom:var(--spacing)}.pb-1\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.pb-64{padding-bottom:calc(var(--spacing) * 64)}.pb-96{padding-bottom:calc(var(--spacing) * 96)}.pl-1\.5{padding-left:calc(var(--spacing) * 1.5)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-5{padding-left:calc(var(--spacing) * 5)}.pl-6{padding-left:calc(var(--spacing) * 6)}.pl-7{padding-left:calc(var(--spacing) * 7)}.pl-8{padding-left:calc(var(--spacing) * 8)}.pl-9{padding-left:calc(var(--spacing) * 9)}.pl-10{padding-left:calc(var(--spacing) * 10)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-display{font-size:var(--text-display);line-height:var(--tw-leading,var(--text-display--line-height));letter-spacing:var(--tw-tracking,var(--text-display--letter-spacing));font-weight:var(--tw-font-weight,var(--text-display--font-weight))}.text-heading{font-size:var(--text-heading);line-height:var(--tw-leading,var(--text-heading--line-height));letter-spacing:var(--tw-tracking,var(--text-heading--letter-spacing));font-weight:var(--tw-font-weight,var(--text-heading--font-weight))}.text-title{font-size:var(--text-title);line-height:var(--tw-leading,var(--text-title--line-height));letter-spacing:var(--tw-tracking,var(--text-title--letter-spacing));font-weight:var(--tw-font-weight,var(--text-title--font-weight))}.text-body{font-size:var(--text-body);line-height:var(--tw-leading,var(--text-body--line-height))}.text-body-sm{font-size:var(--text-body-sm);line-height:var(--tw-leading,var(--text-body-sm--line-height))}.text-meta{font-size:var(--text-meta);line-height:var(--tw-leading,var(--text-meta--line-height))}.text-mono{font-size:var(--text-mono);line-height:var(--tw-leading,var(--text-mono--line-height))}.text-mono-sm{font-size:var(--text-mono-sm);line-height:var(--tw-leading,var(--text-mono-sm--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.text-ellipsis{text-overflow:ellipsis}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent{color:var(--color-accent)}.text-accent-hover{color:var(--color-accent-hover)}.text-current{color:currentColor}.text-danger{color:var(--color-danger)}.text-info{color:var(--color-info)}.text-ink{color:var(--color-ink)}.text-ink-dim{color:var(--color-ink-dim)}.text-ink-disabled{color:var(--color-ink-disabled)}.text-ink-muted{color:var(--color-ink-muted)}.text-on-accent{color:var(--color-on-accent)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.decoration-2{text-decoration-thickness:2px}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.accent-accent{accent-color:var(--color-accent)}.accent-on-accent{accent-color:var(--color-on-accent)}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-overlay{--tw-shadow:var(--lo-overlay-shadow);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-canvas{--tw-ring-color:var(--color-canvas)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline,.outline-1{outline-style:var(--tw-outline-style);outline-width:1px}.outline-2{outline-style:var(--tw-outline-style);outline-width:2px}.-outline-offset-1{outline-offset:-1px}.outline-offset-1{outline-offset:1px}.outline-offset-2{outline-offset:2px}.outline-accent{outline-color:var(--color-accent)}.outline-control{outline-color:var(--color-control)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[opacity\,background-color\]{transition-property:opacity,background-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[opacity\,visibility\]{transition-property:opacity,visibility;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-base{--tw-duration:var(--transition-duration-base);transition-duration:var(--transition-duration-base)}.duration-fast{--tw-duration:var(--transition-duration-fast);transition-duration:var(--transition-duration-fast)}.duration-instant{--tw-duration:var(--transition-duration-instant);transition-duration:var(--transition-duration-instant)}.duration-slow{--tw-duration:var(--transition-duration-slow);transition-duration:var(--transition-duration-slow)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.ease-out-quart{--tw-ease:var(--ease-out-quart);transition-timing-function:var(--ease-out-quart)}.will-change-\[scroll-position\]{will-change:scroll-position}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.outline-none\!{--tw-outline-style:none!important;outline-style:none!important}.outline-solid{--tw-outline-style:solid;outline-style:solid}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.select-text{-webkit-user-select:text;user-select:text}.\[--md-ink\:var\(--lo-danger\)\]{--md-ink:var(--lo-danger)}.\[--md-ink\:var\(--lo-ink-muted\)\]{--md-ink:var(--lo-ink-muted)}.\[-ms-overflow-style\:none\]{-ms-overflow-style:none}.\[overflow-anchor\:auto\]{overflow-anchor:auto}.\[overflow-clip-margin\:4px\]{overflow-clip-margin:4px}.fade-in{--tw-enter-opacity:0}.paused{animation-play-state:paused}.running{animation-play-state:running}.group-focus-within\:pointer-events-auto:is(:where(.group):focus-within *){pointer-events:auto}.group-focus-within\:bg-elevated:is(:where(.group):focus-within *){background-color:var(--color-elevated)}.group-focus-within\:opacity-0:is(:where(.group):focus-within *){opacity:0}.group-focus-within\:opacity-100:is(:where(.group):focus-within *){opacity:1}.group-focus-within\:duration-fast:is(:where(.group):focus-within *){--tw-duration:var(--transition-duration-fast);transition-duration:var(--transition-duration-fast)}@media (hover:hover){.group-hover\:pointer-events-auto:is(:where(.group):hover *){pointer-events:auto}.group-hover\:visible:is(:where(.group):hover *){visibility:visible}.group-hover\:bg-elevated:is(:where(.group):hover *){background-color:var(--color-elevated)}.group-hover\:text-ink:is(:where(.group):hover *){color:var(--color-ink)}.group-hover\:opacity-0:is(:where(.group):hover *){opacity:0}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\:delay-\[1500ms\]:is(:where(.group):hover *){transition-delay:1.5s}.group-hover\:duration-fast:is(:where(.group):hover *){--tw-duration:var(--transition-duration-fast);transition-duration:var(--transition-duration-fast)}.group-hover\:delay-\[1500ms\]:is(:where(.group):hover *){--tw-animation-delay:1.5s;animation-delay:1.5s}}.peer-disabled\:text-ink-disabled:is(:where(.peer):disabled~*){color:var(--color-ink-disabled)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-ink::file-selector-button{color:var(--color-ink)}.placeholder\:text-ink-dim::placeholder{color:var(--color-ink-dim)}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:inset-y-0:before{content:var(--tw-content);inset-block:0}.before\:left-0:before{content:var(--tw-content);left:0}.before\:w-0\.5:before{content:var(--tw-content);width:calc(var(--spacing) * .5)}.before\:bg-accent:before{content:var(--tw-content);background-color:var(--color-accent)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:border-control:hover{border-color:var(--color-control)}.hover\:bg-accent-hover:hover{background-color:var(--color-accent-hover)}.hover\:bg-accent-wash:hover{background-color:var(--color-accent-wash)}.hover\:bg-danger-wash:hover{background-color:var(--color-danger-wash)}.hover\:bg-elevated:hover{background-color:var(--color-elevated)}.hover\:bg-success-wash:hover{background-color:var(--color-success-wash)}.hover\:bg-sunken:hover{background-color:var(--color-sunken)}.hover\:bg-surface:hover{background-color:var(--color-surface)}.hover\:bg-transparent:hover{background-color:#0000}.hover\:text-accent:hover{color:var(--color-accent)}.hover\:text-accent-hover:hover{color:var(--color-accent-hover)}.hover\:text-danger:hover{color:var(--color-danger)}.hover\:text-ink:hover{color:var(--color-ink)}.hover\:text-ink-disabled:hover{color:var(--color-ink-disabled)}.hover\:text-ink-muted:hover{color:var(--color-ink-muted)}.hover\:text-success:hover{color:var(--color-success)}.hover\:underline:hover{text-decoration-line:underline}}.focus\:bg-danger-wash:focus{background-color:var(--color-danger-wash)}.focus\:text-danger:focus{color:var(--color-danger)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:opacity-100:focus-visible{opacity:1}.focus-visible\:outline:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-1\!:focus-visible{outline-offset:1px!important}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-offset-\[-2px\]\!:focus-visible{outline-offset:-2px!important}.focus-visible\:outline-accent:focus-visible{outline-color:var(--color-accent)}.active\:border-accent:active{border-color:var(--color-accent)}.active\:border-danger:active{border-color:var(--color-danger)}.active\:bg-\[color-mix\(in_oklab\,var\(--color-accent-wash\)_80\%\,var\(--color-accent\)\)\]:active{background-color:var(--color-accent-wash)}@supports (color:color-mix(in lab,red,red)){.active\:bg-\[color-mix\(in_oklab\,var\(--color-accent-wash\)_80\%\,var\(--color-accent\)\)\]:active{background-color:color-mix(in oklab,var(--color-accent-wash) 80%,var(--color-accent))}}.active\:bg-\[color-mix\(in_oklab\,var\(--color-danger-wash\)_80\%\,var\(--color-danger\)\)\]:active{background-color:var(--color-danger-wash)}@supports (color:color-mix(in lab,red,red)){.active\:bg-\[color-mix\(in_oklab\,var\(--color-danger-wash\)_80\%\,var\(--color-danger\)\)\]:active{background-color:color-mix(in oklab,var(--color-danger-wash) 80%,var(--color-danger))}}.active\:bg-accent-active:active{background-color:var(--color-accent-active)}.active\:bg-accent-wash:active{background-color:var(--color-accent-wash)}.active\:bg-sunken:active{background-color:var(--color-sunken)}.active\:text-accent:active{color:var(--color-accent)}.active\:text-ink:active{color:var(--color-ink)}.active\:underline:active{text-decoration-line:underline}.active\:decoration-2:active{text-decoration-thickness:2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-default:disabled{cursor:default}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:resize-none:disabled{resize:none}.disabled\:border-hairline:disabled{border-color:var(--color-hairline)}.disabled\:bg-sunken:disabled{background-color:var(--color-sunken)}.disabled\:bg-transparent:disabled{background-color:#0000}.disabled\:bg-none:disabled{background-image:none}.disabled\:text-ink-disabled:disabled{color:var(--color-ink-disabled)}.disabled\:no-underline:disabled{text-decoration-line:none}.disabled\:accent-ink-disabled:disabled{accent-color:var(--color-ink-disabled)}.disabled\:placeholder\:text-ink-disabled:disabled::placeholder{color:var(--color-ink-disabled)}@media (hover:hover){.disabled\:hover\:bg-transparent:disabled:hover{background-color:#0000}}.has-\[input\:focus-visible\]\:outline-2:has(:is(input:focus-visible)){outline-style:var(--tw-outline-style);outline-width:2px}.has-\[input\:focus-visible\]\:outline-offset-2:has(:is(input:focus-visible)){outline-offset:2px}.has-\[input\:focus-visible\]\:outline-accent:has(:is(input:focus-visible)){outline-color:var(--color-accent)}.has-\[input\:focus-visible\]\:outline-solid:has(:is(input:focus-visible)){--tw-outline-style:solid;outline-style:solid}.has-\[textarea\:focus-visible\]\:outline-2:has(:is(textarea:focus-visible)){outline-style:var(--tw-outline-style);outline-width:2px}.has-\[textarea\:focus-visible\]\:outline-offset-2:has(:is(textarea:focus-visible)){outline-offset:2px}.has-\[textarea\:focus-visible\]\:outline-accent:has(:is(textarea:focus-visible)){outline-color:var(--color-accent)}.has-\[textarea\:focus-visible\]\:outline-solid:has(:is(textarea:focus-visible)){--tw-outline-style:solid;outline-style:solid}.aria-invalid\:border-danger[aria-invalid=true]{border-color:var(--color-danger)}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:border-hairline[data-disabled]{border-color:var(--color-hairline)}.data-\[disabled\]\:bg-ink-disabled[data-disabled]{background-color:var(--color-ink-disabled)}.data-\[disabled\]\:bg-sunken[data-disabled]{background-color:var(--color-sunken)}.data-\[disabled\]\:text-ink-disabled[data-disabled]{color:var(--color-ink-disabled)}.data-\[highlighted\]\:bg-accent-wash[data-highlighted]{background-color:var(--color-accent-wash)}.data-\[highlighted\]\:bg-danger-wash[data-highlighted]{background-color:var(--color-danger-wash)}.data-\[highlighted\]\:bg-warning-wash[data-highlighted]{background-color:var(--color-warning-wash)}.data-\[placeholder\]\:not-data-\[disabled\]\:text-ink-dim[data-placeholder]:not([data-disabled]){color:var(--color-ink-dim)}.data-\[side\=bottom\]\:mt-1\.5[data-side=bottom]{margin-top:calc(var(--spacing) * 1.5)}.data-\[side\=top\]\:mb-1\.5[data-side=top]{margin-bottom:calc(var(--spacing) * 1.5)}.data-\[state\=active\]\:bg-surface[data-state=active]{background-color:var(--color-surface)}.data-\[state\=active\]\:text-ink[data-state=active]{color:var(--color-ink)}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=checked\]\:not-data-\[disabled\]\:border-accent[data-state=checked]:not([data-disabled]){border-color:var(--color-accent)}.data-\[state\=checked\]\:not-data-\[disabled\]\:bg-accent[data-state=checked]:not([data-disabled]){background-color:var(--color-accent)}.data-\[state\=checked\]\:not-data-\[disabled\]\:bg-on-accent[data-state=checked]:not([data-disabled]){background-color:var(--color-on-accent)}.data-\[state\=indeterminate\]\:not-data-\[disabled\]\:border-accent[data-state=indeterminate]:not([data-disabled]){border-color:var(--color-accent)}.data-\[state\=indeterminate\]\:not-data-\[disabled\]\:bg-accent[data-state=indeterminate]:not([data-disabled]){background-color:var(--color-accent)}.data-\[state\=open\]\:bg-accent-wash[data-state=open]{background-color:var(--color-accent-wash)}@media (prefers-reduced-motion:no-preference){.motion-safe\:animate-spin{animation:var(--animate-spin)}}@media (min-width:1040px){.min-\[1040px\]\:w-55{width:calc(var(--spacing) * 55)}}@media (min-width:1280px){.min-\[1280px\]\:w-96{width:calc(var(--spacing) * 96)}}@media (min-width:40rem){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:max-w-\[90\%\]{max-width:90%}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:justify-end{justify-content:flex-end}.sm\:self-center{align-self:center}.sm\:p-6{padding:calc(var(--spacing) * 6)}}@media (min-width:48rem){.md\:block{display:block}.md\:max-w-\[900px\]{max-width:900px}.md\:p-8{padding:calc(var(--spacing) * 8)}}@media (min-width:64rem){.lg\:hidden{display:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.lg\:border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.lg\:p-8{padding:calc(var(--spacing) * 8)}.lg\:p-12{padding:calc(var(--spacing) * 12)}}@container not (min-width:520px){.\@max-\[520px\]\:hidden{display:none}}@container olderhistory not (min-width:260px){.\@max-\[260px\]\/olderhistory\:hidden{display:none}}@container chatcol not (min-width:240px){.\@max-\[240px\]\/chatcol\:sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.\@max-\[240px\]\/chatcol\:w-11{width:calc(var(--spacing) * 11)}.\@max-\[240px\]\/chatcol\:w-full{width:100%}.\@max-\[240px\]\/chatcol\:min-w-11{min-width:calc(var(--spacing) * 11)}.\@max-\[240px\]\/chatcol\:flex-none{flex:none}.\@max-\[240px\]\/chatcol\:flex-col{flex-direction:column}.\@max-\[240px\]\/chatcol\:flex-nowrap{flex-wrap:nowrap}.\@max-\[240px\]\/chatcol\:justify-center{justify-content:center}.\@max-\[240px\]\/chatcol\:px-0{padding-inline:0}}@container olderhistory (min-width:260px){.\@min-\[260px\]\/olderhistory\:hidden{display:none}}@container (min-width:400px){.\@min-\[400px\]\:hidden{display:none}.\@min-\[400px\]\:inline-flex{display:inline-flex}}@container (min-width:560px){.\@min-\[560px\]\:px-8{padding-inline:calc(var(--spacing) * 8)}.\@min-\[560px\]\:py-8{padding-block:calc(var(--spacing) * 8)}}@container chatcol (min-width:620px){.\@min-\[620px\]\/chatcol\:inline{display:inline}}@container chatcol (min-width:750px){.\@min-\[750px\]\/chatcol\:order-2{order:2}.\@min-\[750px\]\/chatcol\:order-3{order:3}.\@min-\[750px\]\/chatcol\:mx-auto{margin-inline:auto}.\@min-\[750px\]\/chatcol\:contents{display:contents}.\@min-\[750px\]\/chatcol\:max-w-\[900px\]{max-width:900px}.\@min-\[750px\]\/chatcol\:shrink-0{flex-shrink:0}.\@min-\[750px\]\/chatcol\:basis-auto{flex-basis:auto}.\@min-\[750px\]\/chatcol\:flex-nowrap{flex-wrap:nowrap}@container chatcol not (min-width:860px){.\@min-\[750px\]\/chatcol\:\@max-\[860px\]\/chatcol\:hidden{display:none}}}@container chatcol (min-width:900px){.\@min-\[900px\]\/chatcol\:w-\[16ch\]{width:16ch}.\@min-\[900px\]\/chatcol\:max-w-\[19rem\]{max-width:19rem}}@container slash (min-width:24rem){.\@min-\[24rem\]\/slash\:inline{display:inline}}@container toolrow (min-width:34rem){.\@\[34rem\]\/toolrow\:flex{display:flex}}.\[\&_\.pointer-events-none\.opacity-0\]\:pointer-events-auto .pointer-events-none.opacity-0{pointer-events:auto}.\[\&_\.pointer-events-none\.opacity-0\]\:opacity-100 .pointer-events-none.opacity-0{opacity:1}.\[\&_\.react-syntax-highlighter-code-block_\*\]\:font-mono\! .react-syntax-highlighter-code-block *{font-family:var(--font-mono)!important}.\[\&_\.recharts-active-bar\]\:fill-chart-bar-hover .recharts-active-bar{fill:var(--color-chart-bar-hover)}.\[\&_\.recharts-active-dot_circle\]\:fill-accent .recharts-active-dot circle,.\[\&_\.recharts-bar-rectangle\]\:fill-accent .recharts-bar-rectangle{fill:var(--color-accent)}.\[\&_\.recharts-cartesian-axis-tick-value\]\:fill-ink-dim .recharts-cartesian-axis-tick-value{fill:var(--color-ink-dim)}.\[\&_\.recharts-cartesian-axis-tick-value\]\:text-meta .recharts-cartesian-axis-tick-value{font-size:var(--text-meta);line-height:var(--tw-leading,var(--text-meta--line-height))}.\[\&_\.recharts-cartesian-grid_line\]\:stroke-hairline .recharts-cartesian-grid line{stroke:var(--color-hairline)}.\[\&_\.recharts-line-curve\]\:stroke-accent .recharts-line-curve{stroke:var(--color-accent)}.\[\&_\.recharts-tooltip-cursor\]\:stroke-hairline .recharts-tooltip-cursor{stroke:var(--color-hairline)}.\[\&_\:is\(h1\,h2\,h3\,h4\,h5\,h6\)\]\:mt-3 :is(h1,h2,h3,h4,h5,h6){margin-top:calc(var(--spacing) * 3)}.\[\&_\:is\(h1\,h2\,h3\,h4\,h5\,h6\)\]\:mt-4 :is(h1,h2,h3,h4,h5,h6){margin-top:calc(var(--spacing) * 4)}.\[\&_\:is\(h1\,h2\,h3\,h4\,h5\,h6\)\]\:mb-1 :is(h1,h2,h3,h4,h5,h6){margin-bottom:var(--spacing)}.\[\&_\:is\(h1\,h2\,h3\,h4\,h5\,h6\)\]\:mb-2 :is(h1,h2,h3,h4,h5,h6){margin-bottom:calc(var(--spacing) * 2)}.\[\&_\:is\(h1\,h2\,h3\,h4\,h5\,h6\)\]\:font-semibold :is(h1,h2,h3,h4,h5,h6){--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_\:is\(h1\,h2\,h3\,h4\,h5\,h6\)\]\:text-ink :is(h1,h2,h3,h4,h5,h6){color:var(--color-ink)}.\[\&_\:is\(h1\,h2\,h3\,h4\,h5\,h6\)\:first-child\]\:mt-0 :is(h1,h2,h3,h4,h5,h6):first-child{margin-top:0}.\[\&_\:is\(th\,td\)\]\:border-b :is(th,td){border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_\:is\(th\,td\)\]\:border-hairline :is(th,td){border-color:var(--color-hairline)}.\[\&_\:is\(th\,td\)\]\:py-1\.5 :is(th,td){padding-block:calc(var(--spacing) * 1.5)}.\[\&_\:is\(th\,td\)\]\:pr-4 :is(th,td){padding-right:calc(var(--spacing) * 4)}.\[\&_\:is\(th\,td\)\]\:text-left :is(th,td){text-align:left}.\[\&_\:is\(th\,td\)\:last-child\]\:pr-0 :is(th,td):last-child{padding-right:0}.\[\&_\:is\(ul\,ol\)\]\:my-1\.5 :is(ul,ol){margin-block:calc(var(--spacing) * 1.5)}.\[\&_\:is\(ul\,ol\)\]\:my-2 :is(ul,ol){margin-block:calc(var(--spacing) * 2)}.\[\&_\:is\(ul\,ol\)\]\:pl-5 :is(ul,ol){padding-left:calc(var(--spacing) * 5)}.\[\&_\:is\(ul\,ol\)\]\:pl-6 :is(ul,ol){padding-left:calc(var(--spacing) * 6)}.\[\&_\[contenteditable\]\]\:min-h-50 [contenteditable]{min-height:calc(var(--spacing) * 50)}.\[\&_\[contenteditable\]\]\:text-body [contenteditable]{font-size:var(--text-body);line-height:var(--tw-leading,var(--text-body--line-height))}.\[\&_\[contenteditable\]\]\:leading-relaxed [contenteditable]{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.\[\&_\[contenteditable\]\]\:text-ink [contenteditable]{color:var(--color-ink)}.\[\&_\[contenteditable\]\]\:outline-none [contenteditable]{--tw-outline-style:none;outline-style:none}.\[\&_\[data-alert-mark\]\]\:text-danger [data-alert-mark]{color:var(--color-danger)}.\[\&_\[data-alert-mark\]\]\:text-info [data-alert-mark]{color:var(--color-info)}.\[\&_\[data-alert-mark\]\]\:text-ink [data-alert-mark]{color:var(--color-ink)}.\[\&_\[data-alert-mark\]\]\:text-success [data-alert-mark]{color:var(--color-success)}.\[\&_\[data-alert-mark\]\]\:text-warning [data-alert-mark]{color:var(--color-warning)}.\[\&_a\]\:text-accent a{color:var(--color-accent)}.\[\&_a\]\:underline a{text-decoration-line:underline}.\[\&_a\]\:underline-offset-4 a{text-underline-offset:4px}@media (hover:hover){.\[\&_a\]\:hover\:underline a:hover,.hover\:\[\&_a\]\:underline:hover a{text-decoration-line:underline}}.\[\&_a\:hover\]\:text-accent-hover a:hover{color:var(--color-accent-hover)}.\[\&_blockquote\]\:my-3 blockquote{margin-block:calc(var(--spacing) * 3)}.\[\&_blockquote\]\:rounded-r-xs blockquote{border-top-right-radius:var(--radius-xs);border-bottom-right-radius:var(--radius-xs)}.\[\&_blockquote\]\:border-l-2 blockquote{border-left-style:var(--tw-border-style);border-left-width:2px}.\[\&_blockquote\]\:border-hairline blockquote{border-color:var(--color-hairline)}.\[\&_blockquote\]\:bg-sunken blockquote{background-color:var(--color-sunken)}.\[\&_blockquote\]\:px-3 blockquote{padding-inline:calc(var(--spacing) * 3)}.\[\&_blockquote\]\:py-2 blockquote{padding-block:calc(var(--spacing) * 2)}.\[\&_blockquote\]\:text-ink-muted blockquote{color:var(--color-ink-muted)}.\[\&_code\]\:rounded-xs code{border-radius:var(--radius-xs)}.\[\&_code\]\:bg-sunken code{background-color:var(--color-sunken)}.\[\&_code\]\:bg-none code{background-image:none}.\[\&_code\]\:p-0\.5 code{padding:calc(var(--spacing) * .5)}.\[\&_code\]\:px-1 code{padding-inline:var(--spacing)}.\[\&_code\]\:font-mono code{font-family:var(--font-mono)}.\[\&_code\]\:text-mono-sm code{font-size:var(--text-mono-sm);line-height:var(--tw-leading,var(--text-mono-sm--line-height))}.\[\&_h1\]\:text-heading h1{font-size:var(--text-heading);line-height:var(--tw-leading,var(--text-heading--line-height));letter-spacing:var(--tw-tracking,var(--text-heading--letter-spacing));font-weight:var(--tw-font-weight,var(--text-heading--font-weight))}.\[\&_h1\]\:text-title h1{font-size:var(--text-title);line-height:var(--tw-leading,var(--text-title--line-height));letter-spacing:var(--tw-tracking,var(--text-title--letter-spacing));font-weight:var(--tw-font-weight,var(--text-title--font-weight))}.\[\&_h2\]\:text-heading h2,.\[\&_h3\]\:text-heading h3{font-size:var(--text-heading);line-height:var(--tw-leading,var(--text-heading--line-height));letter-spacing:var(--tw-tracking,var(--text-heading--letter-spacing));font-weight:var(--tw-font-weight,var(--text-heading--font-weight))}.\[\&_h3\]\:text-body h3,.\[\&_h4\]\:text-body h4,.\[\&_h5\]\:text-body h5{font-size:var(--text-body);line-height:var(--tw-leading,var(--text-body--line-height))}.\[\&_h5\]\:text-body-sm h5,.\[\&_h6\]\:text-body-sm h6{font-size:var(--text-body-sm);line-height:var(--tw-leading,var(--text-body-sm--line-height))}.\[\&_img\]\:my-2 img{margin-block:calc(var(--spacing) * 2)}.\[\&_img\]\:h-auto img{height:auto}.\[\&_img\]\:max-w-full img{max-width:100%}.\[\&_img\]\:rounded-xs img{border-radius:var(--radius-xs)}.\[\&_li\]\:my-0\.5 li{margin-block:calc(var(--spacing) * .5)}.\[\&_li\]\:my-1 li{margin-block:var(--spacing)}.\[\&_li\.task-list-item\]\:list-none li.task-list-item{list-style-type:none}.\[\&_ol_li\]\:list-decimal ol li{list-style-type:decimal}.\[\&_p\]\:m-0 p{margin:0}.\[\&_p\]\:my-1\.5 p{margin-block:calc(var(--spacing) * 1.5)}.\[\&_p\]\:my-2 p{margin-block:calc(var(--spacing) * 2)}.\[\&_p\:first-child\]\:mt-0 p:first-child{margin-top:0}.\[\&_p\:last-child\]\:mb-0 p:last-child{margin-bottom:0}.\[\&_pre\]\:my-3 pre{margin-block:calc(var(--spacing) * 3)}.\[\&_pre\]\:overflow-auto pre{overflow:auto}.\[\&_pre\]\:rounded-sm pre{border-radius:var(--radius-sm)}.\[\&_pre\]\:bg-sunken pre{background-color:var(--color-sunken)}.\[\&_pre\]\:bg-none pre{background-image:none}.\[\&_pre\]\:p-3 pre{padding:calc(var(--spacing) * 3)}.\[\&_pre_code\]\:bg-transparent pre code{background-color:#0000}.\[\&_pre_code\]\:p-0 pre code{padding:0}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-2\.5 svg{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.\[\&_svg\]\:size-3 svg{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\]\:size-3\.5 svg{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\]\:size-5 svg{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.\[\&_svg\]\:h-auto svg{height:auto}.\[\&_svg\]\:max-h-full svg{max-height:100%}.\[\&_svg\]\:min-h-100 svg{min-height:calc(var(--spacing) * 100)}.\[\&_svg\]\:w-auto svg{width:auto}.\[\&_svg\]\:max-w-full svg{max-width:100%}.\[\&_svg\]\:max-w-none svg{max-width:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\]\:bg-transparent svg{background-color:#0000}.\[\&_table\]\:my-3 table{margin-block:calc(var(--spacing) * 3)}.\[\&_table\]\:w-full table{width:100%}.\[\&_table\]\:border-collapse table{border-collapse:collapse}.\[\&_tbody_tr\:last-child_td\]\:border-b-0 tbody tr:last-child td{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.\[\&_th\]\:font-semibold th{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_th\]\:text-ink-muted th{color:var(--color-ink-muted)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&_ul_li\]\:list-disc ul li{list-style-type:disc}.\[\&\:\:-webkit-inner-spin-button\]\:appearance-none::-webkit-inner-spin-button{appearance:none}.\[\&\:\:-webkit-outer-spin-button\]\:appearance-none::-webkit-outer-spin-button{appearance:none}.\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar{display:none}.\[\&\:\:-webkit-slider-thumb\]\:size-4::-webkit-slider-thumb{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\:\:-webkit-slider-thumb\]\:appearance-none::-webkit-slider-thumb{appearance:none}.\[\&\:\:-webkit-slider-thumb\]\:rounded-full::-webkit-slider-thumb{border-radius:3.40282e38px}.\[\&\:\:-webkit-slider-thumb\]\:bg-accent::-webkit-slider-thumb{background-color:var(--color-accent)}.\[\&\:\:-webkit-slider-thumb\]\:transition-colors::-webkit-slider-thumb{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.\[\&\:\:-webkit-slider-thumb\]\:duration-fast::-webkit-slider-thumb{--tw-duration:var(--transition-duration-fast);transition-duration:var(--transition-duration-fast)}.\[\&\:\:-webkit-slider-thumb\]\:ease-out-quart::-webkit-slider-thumb{--tw-ease:var(--ease-out-quart);transition-timing-function:var(--ease-out-quart)}@media (hover:hover){.\[\&\:\:-webkit-slider-thumb\]\:hover\:bg-accent-hover::-webkit-slider-thumb:hover{background-color:var(--color-accent-hover)}}.disabled\:\[\&\:\:-webkit-slider-thumb\]\:bg-ink-disabled:disabled::-webkit-slider-thumb{background-color:var(--color-ink-disabled)}.\[\&\:\:highlight\(current-find-highlight\)\]\:bg-accent::highlight(current-find-highlight){background-color:var(--color-accent)}.\[\&\:\:highlight\(current-find-highlight\)\]\:text-on-accent::highlight(current-find-highlight){color:var(--color-on-accent)}.\[\&\:\:highlight\(find-highlight\)\]\:bg-accent-wash::highlight(find-highlight){background-color:var(--color-accent-wash)}.\[\&\:\:highlight\(find-highlight\)\]\:text-ink::highlight(find-highlight){color:var(--color-ink)}.\[\&\>span\]\:animate-\[waveform-bar_1\.2s_infinite_ease-in-out\]>span{animation:1.2s ease-in-out infinite waveform-bar}.\[\&\>span\]\:truncate>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}[data-theme=dracula]{color-scheme:dark;--lo-canvas:#282a36;--lo-surface:#2f3146;--lo-elevated:#3d4055;--lo-sunken:#21222c;--lo-ink:#f8f8f2;--lo-ink-muted:#bfbfbf;--lo-ink-dim:#a3acc9;--lo-ink-disabled:#6272a4;--lo-hairline:#4a4c5e;--lo-border-control:#7d8bb4;--lo-accent:#bd93f9;--lo-accent-hover:#d1aeff;--lo-accent-active:#a884de;--lo-chart-bar-hover:#d3b8fb;--lo-accent-wash:#3a374d;--lo-on-accent:#282a36;--lo-success:#50fa7b;--lo-success-wash:#2d433e;--lo-success-border:#3e9c5c;--lo-warning:#ffb86c;--lo-warning-wash:#423b3c;--lo-warning-border:#9e7854;--lo-danger:#ff7171;--lo-danger-wash:#422f3a;--lo-danger-border:#be6368;--lo-info:#8be9fd;--lo-info-wash:#34414e;--lo-info-border:#5e93a3;--lo-overlay-shadow:0 12px 32px -12px #0d0e14a6;--lo-scrim:#0d0e1499}[data-theme=dune]{color-scheme:dark;--lo-canvas:#0f0d0b;--lo-surface:#1a1714;--lo-elevated:#261e17;--lo-sunken:#050403;--lo-ink:#f8f3ec;--lo-ink-muted:#bfb3a7;--lo-ink-dim:#9e9285;--lo-ink-disabled:#6b6055;--lo-hairline:#3a2b11;--lo-border-control:#8a7d6e;--lo-accent:#ff8c38;--lo-accent-hover:#ffa75c;--lo-accent-active:#e67016;--lo-chart-bar-hover:#ffb27a;--lo-accent-wash:#2c1c10;--lo-on-accent:#0f0d0b;--lo-success:#a3c46b;--lo-success-wash:#212317;--lo-success-border:#607240;--lo-warning:#e8c15a;--lo-warning-wash:#292314;--lo-warning-border:#867036;--lo-danger:#e5604c;--lo-danger-wash:#291713;--lo-danger-border:#a74a3b;--lo-info:#ff8c38;--lo-info-wash:#2c1c10;--lo-info-border:#985625;--lo-overlay-shadow:0 12px 32px -12px #050403b3;--lo-scrim:#05040399}[data-theme=iceberg]{color-scheme:light;--lo-canvas:#e8e9ec;--lo-surface:#f2f3f6;--lo-elevated:#fdfdff;--lo-sunken:#e1e2e7;--lo-ink:#33374c;--lo-ink-muted:#4a4e64;--lo-ink-dim:#5b5f74;--lo-ink-disabled:#a0a4b8;--lo-hairline:#cbccd2;--lo-border-control:#787d97;--lo-accent:#2d539e;--lo-accent-hover:#1e3a7d;--lo-accent-active:#162e63;--lo-chart-bar-hover:#1f396c;--lo-accent-wash:#d5dae4;--lo-on-accent:#f2f5f9;--lo-success:#4c692d;--lo-success-wash:#dbe0db;--lo-success-border:#718b57;--lo-warning:#8d5229;--lo-warning-wash:#e5ddda;--lo-warning-border:#b87142;--lo-danger:#ab325b;--lo-danger-wash:#e5dae1;--lo-danger-border:#c76286;--lo-info:#316682;--lo-info-wash:#d7dfe5;--lo-info-border:#5289a8;--lo-overlay-shadow:0 12px 32px -12px #262a3f38;--lo-scrim:#262a3f59}[data-theme=localOperatorDark]{color-scheme:dark;--lo-canvas:#16130e;--lo-surface:#1e1a14;--lo-elevated:#282318;--lo-sunken:#0f0c08;--lo-ink:#f1eee6;--lo-ink-muted:#b5afa2;--lo-ink-dim:#918b7d;--lo-ink-disabled:#5f5a4e;--lo-hairline:#353022;--lo-border-control:#837c6d;--lo-accent:#38c96a;--lo-accent-hover:#5ad584;--lo-accent-active:#2bb25c;--lo-chart-bar-hover:#85dea3;--lo-accent-wash:#16281d;--lo-on-accent:#16130e;--lo-success:#57c785;--lo-success-wash:#16281d;--lo-success-border:#417557;--lo-warning:#e0b04b;--lo-warning-wash:#2a2213;--lo-warning-border:#857036;--lo-danger:#ef8078;--lo-danger-wash:#2e1b18;--lo-danger-border:#9e5a51;--lo-info:#86b3f2;--lo-info-wash:#192332;--lo-info-border:#5475a2;--lo-overlay-shadow:0 12px 32px -12px #0009;--lo-scrim:#0009}[data-theme=localOperatorLight]{color-scheme:light;--lo-canvas:#f5f0e6;--lo-surface:#faf8f1;--lo-elevated:#fffefb;--lo-sunken:#efe9db;--lo-ink:#211e18;--lo-ink-muted:#565147;--lo-ink-dim:#6c675c;--lo-ink-disabled:#9a9488;--lo-hairline:#ddd8ce;--lo-border-control:#857f70;--lo-accent:#147842;--lo-accent-hover:#116036;--lo-accent-active:#0c4b2a;--lo-chart-bar-hover:#0f5a31;--lo-accent-wash:#e7f1e8;--lo-on-accent:#f6faf8;--lo-success:#1a774a;--lo-success-wash:#e6f1ea;--lo-success-border:#3e6b4e;--lo-warning:#8a5800;--lo-warning-wash:#f5ecd9;--lo-warning-border:#7a5a1e;--lo-danger:#b23a31;--lo-danger-wash:#f7e7e4;--lo-danger-border:#96544c;--lo-info:#2368a8;--lo-info-wash:#e9ebef;--lo-info-border:#486893;--lo-overlay-shadow:0 12px 32px -12px #14110c40;--lo-scrim:#14110c59}[data-theme=monokai]{color-scheme:dark;--lo-canvas:#272822;--lo-surface:#2e2f28;--lo-elevated:#3e3d32;--lo-sunken:#1e1f1a;--lo-ink:#f8f8f2;--lo-ink-muted:#bfbfbf;--lo-ink-dim:#aca998;--lo-ink-disabled:#75715e;--lo-hairline:#464740;--lo-border-control:#8e8a73;--lo-accent:#a6e22e;--lo-accent-hover:#b6e94e;--lo-accent-active:#8bc220;--lo-chart-bar-hover:#d0f090;--lo-accent-wash:#363e23;--lo-on-accent:#272822;--lo-success:#a6e22e;--lo-success-wash:#363e23;--lo-success-border:#6d8e29;--lo-warning:#fd971f;--lo-warning-wash:#413522;--lo-warning-border:#a76c22;--lo-danger:#fb6097;--lo-danger-wash:#40282c;--lo-danger-border:#d04573;--lo-info:#66d9ef;--lo-info-wash:#2f3d3b;--lo-info-border:#4a8993;--lo-overlay-shadow:0 12px 32px -12px #0f0f0ca6;--lo-scrim:#0f0f0c99}[data-theme=neon]{color-scheme:dark;--lo-canvas:#080c18;--lo-surface:#0f1524;--lo-elevated:#182036;--lo-sunken:#03040a;--lo-ink:#e0e0e0;--lo-ink-muted:#a0a0b0;--lo-ink-dim:#8a8a9c;--lo-ink-disabled:#5e5e70;--lo-hairline:#0d3140;--lo-border-control:#6f8f99;--lo-accent:#00efff;--lo-accent-hover:#66f7ff;--lo-accent-active:#00b8d9;--lo-chart-bar-hover:#b0faff;--lo-accent-wash:#072734;--lo-on-accent:#000e0f;--lo-success:#2bff88;--lo-success-wash:#0c2925;--lo-success-border:#1b9256;--lo-warning:orange;--lo-warning-wash:#261e15;--lo-warning-border:#90600b;--lo-danger:#ff00a0;--lo-danger-wash:#260b28;--lo-danger-border:#c00784;--lo-info:#00efff;--lo-info-wash:#072734;--lo-info-border:#048997;--lo-overlay-shadow:0 12px 32px -12px #000000bf;--lo-scrim:#020408a6}[data-theme=obsidian]{color-scheme:dark;--lo-canvas:#09090b;--lo-surface:#18181b;--lo-elevated:#27272a;--lo-sunken:#030307;--lo-ink:#fafafa;--lo-ink-muted:#a1a1aa;--lo-ink-dim:#8f8f97;--lo-ink-disabled:#52525b;--lo-hairline:#343436;--lo-border-control:#72727b;--lo-accent:#fafafa;--lo-accent-hover:#e4e4e7;--lo-accent-active:#d4d4d8;--lo-chart-bar-hover:#fcfce4;--lo-accent-wash:#262628;--lo-on-accent:#09090b;--lo-success:#86bfa1;--lo-success-wash:#181f1d;--lo-success-border:#4e6e5f;--lo-warning:#cbaf7e;--lo-warning-wash:#201d19;--lo-warning-border:#75654a;--lo-danger:#de9391;--lo-danger-wash:#231a1b;--lo-danger-border:#885c5c;--lo-info:#fafafa;--lo-info-wash:#262628;--lo-info-border:#8e8e8e;--lo-overlay-shadow:0 12px 32px -12px #030307cc;--lo-scrim:#030307a6}[data-theme=radient]{color-scheme:dark;--lo-canvas:#10151c;--lo-surface:#1a1f2f;--lo-elevated:#282d47;--lo-sunken:#0a0d12;--lo-ink:#f2f7fc;--lo-ink-muted:#c2d2e0;--lo-ink-dim:#8fa8bc;--lo-ink-disabled:#64748b;--lo-hairline:#343847;--lo-border-control:#7a8ca3;--lo-accent:#91b7e9;--lo-accent-hover:#bdf0fd;--lo-accent-active:#6e9ad4;--lo-chart-bar-hover:#c1d7f3;--lo-accent-wash:#1f2835;--lo-on-accent:#10151c;--lo-success:#63d2a0;--lo-success-wash:#1a2c2c;--lo-success-border:#3e7d65;--lo-warning:#e3b457;--lo-warning-wash:#292823;--lo-warning-border:#846c3c;--lo-danger:#ef7e86;--lo-danger-wash:#2b2229;--lo-danger-border:#9c5960;--lo-info:#91b7e9;--lo-info-wash:#1f2835;--lo-info-border:#576e8d;--lo-overlay-shadow:0 12px 32px -12px #04060ab3;--lo-scrim:#04060a99}[data-theme=sage]{color-scheme:light;--lo-canvas:#f3eee0;--lo-surface:#fbf7ec;--lo-elevated:#fffef9;--lo-sunken:#e9e2d0;--lo-ink:#222c1f;--lo-ink-muted:#454f3a;--lo-ink-dim:#5a674c;--lo-ink-disabled:#96a088;--lo-hairline:#d5d3c5;--lo-border-control:#68865f;--lo-accent:#476e49;--lo-accent-hover:#35563a;--lo-accent-active:#294229;--lo-chart-bar-hover:#345035;--lo-accent-wash:#e6e9d8;--lo-on-accent:#f4f6f4;--lo-success:#446f26;--lo-success-wash:#e9ebd3;--lo-success-border:#669438;--lo-warning:#825c06;--lo-warning-wash:#eae2cc;--lo-warning-border:#9e8549;--lo-danger:#a8402f;--lo-danger-wash:#edded0;--lo-danger-border:#bf7462;--lo-info:#3a659f;--lo-info-wash:#e9e9e7;--lo-info-border:#6888be;--lo-overlay-shadow:0 12px 32px -12px #222c1f38;--lo-scrim:#222c1f59}[data-theme=synth]{color-scheme:dark;--lo-canvas:#120720;--lo-surface:#1b0a2f;--lo-elevated:#2c1d43;--lo-sunken:#06020d;--lo-ink:#f7f2fb;--lo-ink-muted:#b9aaca;--lo-ink-dim:#9c8cae;--lo-ink-disabled:#6b5c7d;--lo-hairline:#5b1946;--lo-border-control:#8a7ba0;--lo-accent:#ff4081;--lo-accent-hover:#ff79b0;--lo-accent-active:#f50057;--lo-chart-bar-hover:#ff7ba8;--lo-accent-wash:#2e0e2c;--lo-on-accent:#120720;--lo-success:#4de8a8;--lo-success-wash:#192230;--lo-success-border:#32836b;--lo-warning:orange;--lo-warning-wash:#2e1a1c;--lo-warning-border:#945e0e;--lo-danger:#ff6b6b;--lo-danger-wash:#2e1329;--lo-danger-border:#a44551;--lo-info:#00e5ff;--lo-info-wash:#10223b;--lo-info-border:#08819b;--lo-overlay-shadow:0 12px 32px -12px #06020dbf;--lo-scrim:#06020da6}[data-theme=tokyoNight]{color-scheme:dark;--lo-canvas:#1a1b26;--lo-surface:#24283b;--lo-elevated:#2f334d;--lo-sunken:#14141b;--lo-ink:#c0caf5;--lo-ink-muted:#a9b1d6;--lo-ink-dim:#979ebe;--lo-ink-disabled:#565f89;--lo-hairline:#3d4462;--lo-border-control:#757ea9;--lo-accent:#7aa2f7;--lo-accent-hover:#9ebcff;--lo-accent-active:#6d8fda;--lo-chart-bar-hover:#aac3fa;--lo-accent-wash:#262b3f;--lo-on-accent:#1a1b26;--lo-success:#9ece6a;--lo-success-wash:#2a302e;--lo-success-border:#637d4b;--lo-warning:#e0af68;--lo-warning-wash:#322d2e;--lo-warning-border:#8c704d;--lo-danger:#f7768e;--lo-danger-wash:#352632;--lo-danger-border:#ab5d70;--lo-info:#7dcfff;--lo-info-wash:#263140;--lo-info-border:#507e9d;--lo-overlay-shadow:0 12px 32px -12px #09090eb3;--lo-scrim:#09090e99}[data-theme]:not(:root){--color-canvas:var(--lo-canvas);--color-surface:var(--lo-surface);--color-elevated:var(--lo-elevated);--color-sunken:var(--lo-sunken);--color-ink:var(--lo-ink);--color-ink-muted:var(--lo-ink-muted);--color-ink-dim:var(--lo-ink-dim);--color-ink-disabled:var(--lo-ink-disabled);--color-hairline:var(--lo-hairline);--color-control:var(--lo-border-control);--color-accent:var(--lo-accent);--color-accent-hover:var(--lo-accent-hover);--color-accent-active:var(--lo-accent-active);--color-accent-wash:var(--lo-accent-wash);--color-on-accent:var(--lo-on-accent);--color-chart-bar-hover:var(--lo-chart-bar-hover);--color-success:var(--lo-success);--color-success-wash:var(--lo-success-wash);--color-success-border:var(--lo-success-border);--color-warning:var(--lo-warning);--color-warning-wash:var(--lo-warning-wash);--color-warning-border:var(--lo-warning-border);--color-danger:var(--lo-danger);--color-danger-wash:var(--lo-danger-wash);--color-danger-border:var(--lo-danger-border);--color-info:var(--lo-info);--color-info-wash:var(--lo-info-wash);--color-info-border:var(--lo-info-border);--color-scrim:var(--lo-scrim);--shadow-overlay:var(--lo-overlay-shadow)}.lo-quantity-header .ag-header-cell-label{flex-direction:row;justify-content:flex-end}html :focus-visible,html .Mui-focusVisible{outline-width:2px;outline-style:var(--tw-outline-style,solid);outline-color:var(--color-accent);outline-offset:2px;box-shadow:none!important}[data-radix-popper-content-wrapper]:has(>[data-lo-tooltip-panel]){pointer-events:none!important}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes pulse-visible{0%,to{opacity:1}50%{opacity:.7}}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import{L as R,G as s,H as Y,I as x,J as w,K as O,M as d,N as X,O as k,Q as h,R as f,S as u,T as y,V as l,W as g,X as j,Y as G,Z as U,$ as b,a0 as Z}from"./index-DLktHc2h.js";import"./icon-CEd0ml4Y.js";const _=177,q=179,E=184,v=12,C=13,D=17,z=20,F=25,B=53,N=95,I=142,L=144,A=145,J=148,M=10,H=13,K=32,OO=9,$=47,QO=41,eO=125,aO=new s((Q,e)=>{for(let n=0,a=Q.next;(e.context&&(a<0||a==M||a==H||a==$&&Q.peek(n+1)==$)||a==QO||a==eO)&&Q.acceptToken(_),!(a!=K&&a!=OO);)a=Q.peek(++n)},{contextual:!0});let tO=new Set([N,E,z,v,D,L,A,I,J,C,B,F]);const iO=new w({start:!1,shift:(Q,e)=>e==q?Q:tO.has(e)}),XO=x({"func interface struct chan map const type var":O.definitionKeyword,"import package":O.moduleKeyword,"switch for go select return break continue goto fallthrough case if else defer":O.controlKeyword,range:O.keyword,Bool:O.bool,String:O.string,Rune:O.character,Number:O.number,Nil:O.null,VariableName:O.variableName,DefName:O.definition(O.variableName),TypeName:O.typeName,LabelName:O.labelName,FieldName:O.propertyName,"FunctionDecl/DefName":O.function(O.definition(O.variableName)),"TypeSpec/DefName":O.definition(O.typeName),"CallExpr/VariableName":O.function(O.variableName),LineComment:O.lineComment,BlockComment:O.blockComment,LogicOp:O.logicOperator,ArithOp:O.arithmeticOperator,BitOp:O.bitwiseOperator,"DerefOp .":O.derefOperator,"UpdateOp IncDecOp":O.updateOperator,CompareOp:O.compareOperator,"= :=":O.definitionOperator,"<-":O.operator,'~ "*"':O.modifier,"; ,":O.separator,"... :":O.punctuation,"( )":O.paren,"[ ]":O.squareBracket,"{ }":O.brace}),nO={__proto__:null,package:10,import:18,true:380,false:380,nil:383,struct:48,func:68,interface:78,chan:94,map:118,make:157,new:159,const:204,type:212,var:224,if:236,else:238,switch:242,case:248,default:250,for:260,range:266,go:270,select:274,return:284,break:288,continue:290,goto:292,fallthrough:296,defer:300},PO=R.deserialize({version:14,states:"!=xO#{QQOOP$SOQOOO&UQTO'#CbO&]QRO'#FlO]QQOOOOQP'#Cn'#CnOOQP'#Co'#CoO&eQQO'#C|O(kQQO'#C{O)]QRO'#GiO+tQQO'#D_OOQP'#Ge'#GeO+{QQO'#GeO.aQTO'#GaO.hQQO'#D`OOQP'#Gm'#GmO.mQRO'#GdO/hQQO'#DgOOQP'#Gd'#GdO/uQQO'#DrO2bQQO'#DsO4QQTO'#GqO,^QTO'#GaO4XQQO'#DxO4^QQO'#D{OOQO'#EQ'#EQOOQO'#ER'#EROOQO'#ES'#ESOOQO'#ET'#ETO4cQQO'#EPO5}QQO'#EPOOQP'#Ga'#GaO6UQQO'#E`O6^QQO'#EcOOQP'#G`'#G`O6cQQO'#EsOOQP'#G_'#G_O&]QRO'#FnOOQO'#Fn'#FnO9QQQO'#G^QOQQOOO&]QROOO9XQQO'#C`O9^QSO'#CdO9lQQO'#C}O9tQQO'#DSO9yQQO'#D[O:kQQO'#CsO:pQQO'#DhO:uQQO'#EeO:}QQO'#EiO;VQQO'#EoO;_QQO'#EuO<uQQO'#ExO<|QQO'#FRO4cQQO'#FWO=WQQO'#FYO=]QRO'#F_O=jQRO'#FaO=uQQO'#FaOOQP'#Fe'#FeO4cQQO'#FgP=zOWO'#C^POOO)CAz)CAzOOQO'#G]'#G]OOQO,5<W,5<WOOQO-E9j-E9jO?TQTO'#CqOOQO'#C|'#C|OOQP,59g,59gO?tQQO'#D_O@fQSO'#FuO@kQQO'#C}O@pQQO'#D[O9XQQO'#FqO@uQRO,5=TOAyQQO,59yOCVQSO,5:[O@kQQO'#C}OCaQQO'#DjOOQP,59^,59^OOQO,5<a,5<aO?tQQO'#DeOOQO,5:e,5:eOOQO-E9s-E9sOOQP,59z,59zOOQP,59|,59|OCqQSO,5:QO(kQQO,5:ROC{QQO,5:RO&]QRO'#FxOOQO'#Fx'#FxOFjQQO'#GpOFwQQO,5:^OF|QQO,5:_OHdQQO,5:`OHlQQO,5:aOHvQRO'#FyOIaQRO,5=]OIuQQO'#DzOOQP,5:d,5:dOOQO'#EV'#EVOOQO'#EW'#EWOOQO'#EX'#EXOOQO'#EZ'#EZOOQO'#E['#E[O4cQQO,5:pO4cQQO,5:pO4cQQO,5:pO4cQQO,5:pO4cQQO,5:pO4cQQO,5:wOOQP,5:x,5:xO?tQQO'#EOOOQP,5:g,5:gOOQP,5:k,5:kO9yQQO,59vO4cQQO,5:zO4cQQO,5:}OI|QRO,5;_OOQO,5<Y,5<YOOQO-E9l-E9lO]QQOOOOQP'#Cb'#CbOOQP,58z,58zOOQP'#Cf'#CfOJWQQO'#CfOJ]QSO'#CkOOQP,59O,59OOJkQQO'#DPOLZQQO,5<UOLbQQO,59iOLsQQO,5<TOMpQQO'#DUOOQP,59n,59nOOQP,59v,59vONfQQO,59vONmQQO'#CwOOQP,59_,59_O?tQQO,5:SONxQRO'#EgO! VQQO'#EhOOQP,5;P,5;PO! |QQO'#EkO!!WQQO'#EnOOQP,5;T,5;TO!!`QRO'#EqO!!mQQO'#ErOOQP,5;Z,5;ZO!!uQTO'#CbO!!|QTO,5;aO&]QRO,5;aO!#WQQO,5;jO!$yQTO,5;dO!%WQQO'#EzOOQP,5;d,5;dO&]QRO,5;dO!%cQSO,5;mO!%mQQO'#E`O!%uQQO'#EcO!%zQQO'#FTO!&UQQO'#FTOOQP,5;m,5;mO!&ZQQO,5;mO!&`QTO,5;rO!&mQQO'#F[OOQP,5;t,5;tO!&xQTO'#GqOOQP,5;y,5;yOOQP'#Et'#EtOOQP,5;{,5;{O!']QTO,5<RPOOO'#Fk'#FkP!'jOWO,58xPOOO,58x,58xO!'uQQO,59yO!'zQQO'#GgOOQP,59i,59iO(kQQO,59vOOQP,5<],5<]OOQP-E9o-E9oOOQP1G/e1G/eOOQP1G/v1G/vO!([QSO'#DlO!(lQQO'#DlO!(wQQO'#DkOOQO'#Go'#GoO!(|QQO'#GoO!)UQQO,5:UO!)ZQQO'#GnO!)fQQO,5:PPOQO'#Cq'#CqO(kQQO1G/lOOQP1G/m1G/mO(kQQO1G/mOOQO,5<d,5<dOOQO-E9v-E9vOOQP1G/x1G/xO!)kQSO1G/yOOQP'#Cy'#CyOOQP1G/z1G/zO?tQQO1G/}O!)xQSO1G/{O!*YQQO1G/|O!*gQTO,5<eOOQP-E9w-E9wOOQP,5:f,5:fO!+QQQO,5:fOOQP1G0[1G0[O!,vQTO1G0[O!.wQTO1G0[O!/OQTO1G0[O!0pQTO1G0[O!1QQTO1G0cO!1bQQO,5:jOOQP1G/b1G/bOOQP1G0f1G0fOOQP1G0i1G0iOOQP1G0y1G0yOOQP,59Q,59QO&]QRO'#FmO!1mQSO,59VOOQP,59V,59VOOQO'#DQ'#DQO?tQQO'#DQO!1{QQO'#DQOOQO'#Gh'#GhO!2SQQO'#GhO!2[QQO,59kO!2aQSO'#CqOJkQQO'#DPOOQP,5=R,5=RO@kQQO1G1pOOQP1G/w1G/wO.hQQO'#ElO!2rQRO1G1oO@kQQO1G1oO@kQQO'#DVO?tQQO'#DWOOQP'#Gk'#GkO!2}QRO'#GjOOQP'#Gj'#GjO&]QRO'#FsO!3`QQO,59pOOQP,59p,59pO!3gQRO'#CxO!3uQQO'#CxO!3|QRO'#CxO.hQQO'#CxO&]QRO'#FoO!4XQQO,59cOOQP,59c,59cO!4dQQO1G/nO4cQQO,5;RO!4iQQO,5;RO&]QRO'#FzO!4nQQO,5;SOOQP,5;S,5;SO!6aQQO'#DgO?tQQO,5;VOOQP,5;V,5;VO&]QRO'#F}O!6hQQO,5;YOOQP,5;Y,5;YO!6pQRO,5;]O4cQQO,5;]O&]QRO'#GOO!6{QQO,5;^OOQP,5;^,5;^O!7TQRO1G0{O!7`QQO1G0{O4cQQO1G1UO!8vQQO1G1UOOQP1G1O1G1OO!9OQQO'#GPO!9YQQO,5;fOOQP,5;f,5;fO4cQQO'#E{O!9eQQO'#E{O<uQQO1G1OOOQP1G1X1G1XO!9jQQO,5:zO!9jQQO,5:}O!9tQSO,5;oO!:OQQO,5;oO!:VQQO,5;oO!9OQQO'#GRO!:aQQO,5;vOOQP,5;v,5;vO!<PQQO'#F]O!<WQQO'#F]POOO-E9i-E9iPOOO1G.d1G.dO!<]QQO,5:VO!<gQQO,5=ZO!<tQQO,5=ZOOQP1G/p1G/pO!<|QQO,5=YO!=WQQO,5=YOOQP1G/k1G/kOOQP7+%W7+%WOOQP7+%X7+%XOOQP7+%e7+%eO!=cQQO7+%eO!=hQQO7+%iOOQP7+%g7+%gO!=mQQO7+%gO!=rQQO7+%hO!>PQSO7+%hOOQP7+%h7+%hO4cQQO7+%hOOQP1G0Q1G0QO!>^QQO1G0QOOQP1G0U1G0UO!>fQQO1G0UOF|QQO1G0UOOQO,5<X,5<XOOQO-E9k-E9kOOQP1G.q1G.qOOQO,59l,59lO?tQQO,59lO!?cQQO,5=SO!?jQQO,5=SOOQP1G/V1G/VO!?rQQO,59yO!?}QRO7+'[O!@YQQO'#EmO!@dQQO'#HOO!@lQQO,5;WOOQP7+'Z7+'ZO!@qQRO7+'ZOOQP,59q,59qOOQP,59r,59rOOQO'#DZ'#DZO!@]QQO'#FtO!@|QRO,59tOOQO,5<_,5<_OOQO-E9q-E9qOOQP1G/[1G/[OOQP,59d,59dOHgQQO'#FpO!3uQQO,59dO!A_QRO,59dO!AjQRO,59dOOQO,5<Z,5<ZOOQO-E9m-E9mOOQP1G.}1G.}O(kQQO7+%YOOQP1G0m1G0mO4cQQO1G0mOOQO,5<f,5<fOOQO-E9x-E9xOOQP1G0n1G0nO!AxQQO'#GdOOQP1G0q1G0qOOQO,5<i,5<iOOQO-E9{-E9{OOQP1G0t1G0tO4cQQO1G0wOOQP1G0w1G0wOOQO,5<j,5<jOOQO-E9|-E9|OOQP1G0x1G0xO!B]QQO7+&gO!BeQSO7+&gO!CsQSO7+&pO!CzQQO7+&pOOQO,5<k,5<kOOQO-E9}-E9}OOQP1G1Q1G1QO!DRQQO,5;gOOQO,5;g,5;gO!DWQSO7+&jOOQP7+&j7+&jO!DbQQO7+&pO!7`QQO1G1[O!DgQQO1G1ZOOQO1G1Z1G1ZO!DnQSO1G1ZOOQO,5<m,5<mOOQO-E:P-E:POOQP1G1b1G1bO!DxQSO'#GqO!E]QQO'#F^O!EbQQO'#F^O!EgQQO,5;wOOQO,5;w,5;wO!ElQSO1G/qOOQO1G/q1G/qO!EyQSO'#DoO!FZQQO'#DoO!FfQQO'#DnOOQO,5<c,5<cO!FkQQO1G2uOOQO-E9u-E9uOOQO,5<b,5<bO!FxQQO1G2tOOQO-E9t-E9tOOQP<<IP<<IPOOQP<<IT<<ITOOQP<<IR<<IRO!GSQSO<<ISOOQP<<IS<<ISO4cQQO<<ISO!GaQSO<<ISOOQP7+%l7+%lO!GkQQO7+%lOOQP7+%p7+%pO!GpQQO7+%pO!GuQQO7+%pOOQO1G/W1G/WOOQO,5<^,5<^O!G}QQO1G2nOOQO-E9p-E9pOOQP<<Jv<<JvO.hQQO'#F{O!@YQQO,5;XOOQO,5;X,5;XO!HUQQO,5=jO!H^QQO,5=jOOQO1G0r1G0rOOQP<<Ju<<JuOOQP,5<`,5<`OOQP-E9r-E9rOOQO,5<[,5<[OOQO-E9n-E9nO!HfQRO1G/OOOQP1G/O1G/OOOQP<<Ht<<HtOOQP7+&X7+&XO!HqQQO'#DeOOQP7+&c7+&cOOQP<<JR<<JRO!HxQRO<<JRO!ITQQO<<J[O!I]QQO<<J[OOQO1G1R1G1ROOQP<<JU<<JUO4cQQO<<J[O!IbQSO7+&vOOQO7+&u7+&uO!IlQQO7+&uO4cQQO,5;xOOQO1G1c1G1cO!<]QQO,5:YP!<]QQO'#FwP?tQQO'#FvOOQPAN>nAN>nO4cQQOAN>nO!IsQSOAN>nOOQP<<IW<<IWOOQP<<I[<<I[O!I}QQO<<I[P!>nQQO'#FrOOQO,5<g,5<gOOQO-E9y-E9yOOQO1G0s1G0sOOQO,5<h,5<hO!JVQQO1G3UOOQO-E9z-E9zOOQP7+$j7+$jO!J_QQO'#GnO!B]QQOAN?mO!JjQQOAN?vO!JqQQOAN?vO!KzQSOAN?vOOQO<<Ja<<JaO!LRQSO1G1dO!L]QSO1G/tOOQO1G/t1G/tO!LjQSOG24YOOQPG24YG24YOOQPAN>vAN>vO!LtQQOAN>vP.hQQO'#F|OOQPG25XG25XO!LyQQOG25bO!MOQQO'#FPOOQPG25bG25bO!MZQQOG25bOOQPLD)tLD)tOOQPG24bG24bO!JqQQOLD*|O!9OQQO'#GQO!McQQO,5;kOOQP,5;k,5;kO?tQQO'#FQO!MnQQO'#FQO!MsQQOLD*|OOQP!$'Nh!$'NhOOQO,5<l,5<lOOQO-E:O-E:OOOQP1G1V1G1VO!MzQQO,5;lOOQO,5;l,5;lO!NPQQO!$'NhOOQO1G1W1G1WO!JqQQO!)9DSOOQP!.K9n!.K9nO# {QTO'#CqO#!`QTO'#CqO##}QSO'#CqO#$XQSO'#CqO#&]QSO'#CqO#&gQQO'#FyO#&tQQO'#FyO#'OQQO,5=]O#'ZQQO,5=]O#'cQQO,5:pO!7`QQO,5:pOF|QQO,5:pO#'cQQO,5:pO!7`QQO,5:pOF|QQO,5:pO#'cQQO,5:pO!7`QQO,5:pOF|QQO,5:pO#'cQQO,5:pO!7`QQO,5:pOF|QQO,5:pO#'cQQO,5:pO!7`QQO,5:pOF|QQO,5:pO!7`QQO,5:wO!7`QQO,5:zO!7`QQO,5:}O#(yQSO'#CbO#)}QSO'#CbO#*bQSO'#GqO#*rQSO'#GqO#+PQRO'#GgO#+yQSO,5<eO#,ZQSO,5<eO#,hQSO1G0[O#-rQTO1G0[O#-yQSO1G0[O#.TQSO1G0[O#0{QTO1G0[O#1SQSO1G0[O#2eQSO1G0[O#2lQTO1G0[O#2sQSO1G0[O#4XQSO1G0[O#4`QTO1G0[O#4jQSO1G0[O#4wQSO1G0cO#5dQTO'#CqO#5kQTO'#CqO#6bQSO'#GqO#'cQQO'#EPO!7`QQO'#EPOF|QQO'#EPO#8]QQO'#EPO#8gQQO'#EPO#8qQQO'#EPO#8{QQO'#E`O#9TQQO'#EcO@kQQO'#C}O?tQQO,5:RO#9YQQO,59vO#:iQQO,59vO?tQQO,59vO?tQQO1G/lO?tQQO1G/mO?tQQO7+%YO?tQQO'#C{O#:pQQO'#DgO#9YQQO'#D[O#:wQQO'#D[O#:|QSO,5:QO#;WQQO,5:RO#;]QQO1G/nO?tQQO,5:SO#;bQQO'#Dh",stateData:"#;m~O$yOSPOS$zPQ~OVvOX{O[oO^YOaoOdoOh!POjcOr|Ow}O!P!OO!QnO!WaO!]!QO!phO!qhO#Y!RO#^!SO#d!TO#j!UO#m!VO#v!WO#{!XO#}!YO$S!ZO$U![O$V![O$W!]O$Y!^O$[!_O%OQO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO$v%QP~OTzO~P]O$z!`O~OVeXZeX^eX^!TXj!TXnUXneX!QeX!WeX!W!TX!|eX#ReX#TeX#UeX#WUX$weX%YeX%`eX%feX%geX%ieX%jeX%keX%leX%meX%neX%oeX%peX%qeX~O!a#hX~P$XOV!bO$w!bO~O[!wX^pX^!wXa!wXd!wXhpXh!wXrpXr!wXwpXw!wX!PpX!P!wX!QpX!Q!wX!WpX!W!wX!]pX!]!wX!p!wX!q!wX%OpX%O!wX%U!wX%V!wX%YpX%Y!wX%f!wX%g!wX%h!wX%i!wX%j!wX~O^!hOh!POr!jOw}O!P!OO!Q!kO!WaO!]!QO%O!eO%Y!fO~On!lO#W%]XV%]X^%]Xh%]Xr%]Xw%]X!P%]X!Q%]X!W%]X!]%]X#T%]X$w%]X%O%]X%Y%]Xu%]X~O[oO^YOaoOdoOh!POr!pOw}O!P!OO!WaO!]!QO!phO!qhO%O+wO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~O!Q-OO~P*aOj!qO^%XX]%XXn%XX!V%XX~O!W!tOV%TXZ%TX^%TXn%TX!Q%TX!W%TX!|%TX#R%TX#T%TX#U%TX$w%TX%Y%TX%`%TX%f%TX%g%TX%i%TX%j%TX%k%TX%l%TX%m%TX%n%TX%o%TX%p%TX%q%TX]%TX!V%TXj%TXi%TX!a%TXu%TX~OZ!sO~P,^O%O!eO~O!W!tO^%WXj%WX]%WXn%WX!V%WXu%WXV%WX$w%WX%`%WX#T%WX[%WX!a%WX~Ou!{O!QnO!V!zO~P*aOV!}O[oO^YOaoOdoOh!POjcOr!pOw}O!P!OO!QnO!WaO!]!QO!phO!qhO#Y!RO#^!SO#d!TO#j!UO#m!VO#v!WO#{!XO#}!YO$S!ZO$U![O$V![O$W!]O$Y!^O$[!_O%OQO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlOi%dP~O^#QO~OZ#RO^#VOn#TO!Q#cO!W#SO#R#dO%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YO%p#[O%q#]OV`X#T%eX#U%eX$w`X~O!|#`O~P2gO^#VO~O^#eO~O!QnO~P*aO[oO^YOaoOdoOh!POr!pOw}O!QnO!WaO!]!QO!phO!qhO%O+wO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~O!P#hO~P4jO#T#iO#U#iO~O#W#jO~O!a#kO~OVvO[oO^YOaoOdoOh!POjcOr|Ow}O!P!OO!QnO!WaO!]!QO!phO!qhO#Y!RO#^!SO#d!TO#j!UO#m!VO#v!WO#{!XO#}!YO$S!ZO$U![O$V![O$W!]O$Y!^O$[!_O%OQO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~O$v%QX~P6hO%O#oO~OZ#rO[#qO^#sO%O#oO~O^#uO%O#oO~Oj#yO~O^!hOh!POr!jOw}O!P!OO!Q#|O!WaO!]!QO%O!eO%Y!fO~Oj#}O~O!W$PO~O^$RO%O#oO~O^$UO%O#oO~O^$XO%O#oO~O[oO^YOaoOdoOh!POr!pOw}O!P!OO!Q-PO!WaO!]!QO!phO!qhO%O$ZO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~Oj$`O~P;_OV$fOjcO~P;_Oj$kO~O!QnOV$RX$w$RX~P*aO%O$oOV$TX$w$TX~O%O$oO~O${$rO$|$rO$}$tO~OZeX^!TX!W!TXj!TXn!TXh!TXr!TXw!TX{!TX!P!TX!Q!TX!]!TX%O!TX%Y!TX~O]!TX!V!TXu!TX#T!TXV!TX$w!TX%`!TX[!TX!a!TX~P>VO^!hOh!POr-TOw}O!P-_O!Q-`O!W-^O!]-eO%O!eO%Y!fO~OZ!sO~O^#uO~O!P$xO~On!lO#W%]aV%]a^%]ah%]ar%]aw%]a!P%]a!Q%]a!W%]a!]%]a#T%]a$w%]a%O%]a%Y%]au%]a~O]${O^#QO~OZ#RO^#VO!W#SO%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YO%p#[O%q#]O~O]$|O!|,WO~PBROj!qOn%QO!QnOi%cP~P*aO!V%WO!|#`O~PBRO!V%YO~OV!}O[oO^YOaoOdoOh!POjcOr!pOw}O!P!OO!QnO!WaO!]!QO!phO!qhO#Y!RO#^!SO#d!TO#j!UO#m!VO#v!WO#{!XO#}!YO$S!ZO$U![O$V![O$W!]O$Y!^O$[!_O%OQO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~Oi%dX#p%dX#q%dX~PDQOi%]O~O[oO^YOaoOdoOh!POr!pOw}O!P!OO!Q-QO!WaO!]!QO!phO!qhO%O+{O%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~O^%aO%O%_O~O!QnO!a%cO~P*aO!QnOn$mX#T$mX#U$mXV$mX$w$mX!a$mX~P*aOn#TO#T%ea#U%eaV%ea$w%ea!a%ea~O]%fO~PF|OV#ga$w#ga~PDTO[%sO~OZ#rO[#qO]%vO%O#oO~O^!hOh!POn%zOr-TOu%xOw}O!P-_O!Q-`O!W-^O!]-eO%O,dO%Y!fO]%[P~O^&OOh!POr!jOw}O!P!OO!Q!kO!WaO!]!QO%Y!fO^%ZXj%ZX~O%O%}O~PKfOjcO^qa]qanqa!Vqa~O^#uO!W&SO~O^!hOh!POr-TOw}O{&WO!P-_O!Q-`O!W-^O!]-eO%O,xO%Y!fO~Oi&^O~PL{O^!hOh!POr!jOw}O!Q!kO!WaO!]!QO%O!eO%Y!fO~O!P#hO~PMwOi&eO%O,yO%Y!fO~O#T&gOV#ZX$w#ZX~P?tO]&kO%O#oO~O^!hOh!POr-TOw}O!P-_O!Q-`O!]-eO%O!eO%Y!fO~O!W&lO#T&mO~P! _O]&qO%O#oO~O#T&sOV#eX$w#eX~P?tO]&vO%O#oO~OjeX~P$XOjcO!|,XO~P2gOn!lO#W&yO#W%]X~O^#VOn#TO!Q#cO!W#SO!|,XO#R#dO%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YO%p#[O%q#]OV`X#T%eX#U%eX~OZ&zOj$`O$w`X~P!#cOi'OO#p'PO#q'QO~OZ#ROjcO~P!#cO#T'TO#U#iO~O#W'UO~OV'WO!QnO~P*aOV'XO~OjcO~O!|#`OV#za$w#za~PBROi'[O#p']O#q'^O~On#TO!|#`OV%eX$w%eX!a%eX~PBRO!|#`OV$Za$w$Za~PBRO${$rO$|$rO$}'`O~O]${O~O%O!eO]%ZXn%ZX!V%ZX~PKfO!|#`Oi!_Xn!_X!a!`X~PBROi!_Xn!_X!a!`X~O!a'aO~On'bOi%cX~Oi'dO~On'eO!V%bX!a%bX~O!V'gO~O]'jOn'kO!|,YO~PBROn'nO!V'mO!a'oO!|#`O~PBRO!QnO!V'qO!a'rO~P*aO!|#`On$ma#T$ma#U$maV$ma$w$ma!a$ma~PBRO]'sOu'tO~O%Y#XO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YOV!xiZ!xi^!xin!xi!Q!xi!W!xi!|!xi#R!xi#T!xi#U!xi$w!xi%`!xi%f!xi%g!xi%i!xi%p!xi%q!xi~O!V!xii!xi!a!xi~P!+YO%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YOV!xiZ!xi^!xin!xi!Q!xi!W!xi#R!xi#T!xi#U!xi$w!xi%p!xi%q!xi!V!xii!xi!a!xi~O!|!xi~P!-TO!|#`O~P!-TO%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YO%p#[OV!xiZ!xi^!xin!xi!Q!xi!W!xi#R!xi#T!xi#U!xi$w!xi%q!xi~O!|#`O!V!xii!xi!a!xi~P!/VO!|#`OV#Pi$w#Pi!a#Pi~PBRO]'uOn'wOu'vO~OZ#rO[#qO]'zO%O#oO~Ou'|O~P?tOn'}O]%[X~O](PO~OZeX^mX^!TXj!TX!W!TX~OjcOV$]i$w$]i~O%`(ZOV%^X$w%^Xn%^X!V%^X~Oi(`O~PL{O[(aO!W!tOVlX$wlX~On(bO~P?tO[(aOVlX$wlX~Oi(hO%O,yO%Y!fO~O!V(iO~O#T(kO~O](nO%O#oO~O[oO^YOaoOdoOh!POr!pOu-bOw}O!P!OO!QnO!V-UO!WaO!]!QO!phO!qhO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~O%O+zO~P!4vO](sO%O#oO~O#T(tOV#ea$w#ea~O](xO%O#oO~O#k(yOV#ii$w#ii~O[oO^YOaoOdoOh!POr!pOw}O!P!OO!Q-PO!WaO!]!QO!phO!qhO%O+xO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~O^(|O%O%_O~O#p%dP#q%dP~P/uOi)PO#p'PO#q'QO~O!a)RO~O!QnO#y)VO~P*aOV)WO!|#`O~PBROj#wa~P;_OV)WO!QnO~P*aOi)]O#p']O#q'^O~O[oO^YOaoOdoOh!POr!pOw}O!P!OO!QnO!WaO!]!QO!phO!qhO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~O%O,eO~P!:lO!a)bO~Oj!qO!QnO~P*aOj!qO!QnOi%ca~P*aOn)iOi%ca~O!V%ba!a%ba~P?tOn)lO!V%ba!a%ba~O])nO~O])oO~O!V)pO~O!QnO!V)rO!a)sO~P*aO!V)rO!a)sO!|#`O~PBRO])uOn)vO~O])wOn)xO~O^!hOh!POr-TOu%xOw}O!P-_O!Q-`O!W-^O!]-eO%O,dO%Y!fO~O]%[a~P!>nOn)|O]%[a~O]${O]tXntX~OjcOV$^q$w$^q~On*PO{&WO~P?tOn*SO!V%rX~O!V*UO~OjcOV$]q$w$]q~O%`(ZOV|a$w|an|a!V|a~O[*]OVla$wla~O[*]O!W!tOVla$wla~On*PO{&WO!W*`O^%WXj%WX~P! _OjcO#j!UO~OjcO!|,XO~PBROZ*dO^#VO!W#SO%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YO%p#[O%q#]O~O!|#`O~P!BoO#^*eO~P?tO!a*fO~Oj$`O!|,XO~P!BoO#W*hO~Oj#wi~P;_OV*kO!|#`O~PBROn#TO!Q#cO!|#`O!a$QX#T%eX~PBRO#T*lO~O#W*lO~O!a*mO~O!|#`Oi!_in!_i~PBRO!|#`Oi!bXn!bX!a!cX~PBROi!bXn!bX!a!cX~O!a*nO~Oj!qO!QnOi%ci~P*aO!V%bi!a%bi~P?tO!V*qO!a*rO!|#`O~PBRO!V*qO!|#`O~PBRO]*tO~O]*uO~O]*uOu*vO~O]%[i~P!>nO%O!eO!V%ra~On*|O!V%ra~O[+OOVli$wli~O%O+yO~P!4vO#k+QOV#iy$w#iy~O^+RO%O%_O~O]+SO~O!|,XOj#xq~PBROj#wq~P;_O!V+ZO!|#`O~PBRO]+[On+]O~O%O!eO!V%ri~O^#QOn'eO!V%bX~O#^+`O~P?tOj+aO~O^#VO!W#SO!|#`O%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YO%p#[O%q#]O~OZ+cO~P!JvO!|#`O!a$Qi~PBRO!|#`Oi!bin!bi~PBRO!V+dO!|#`O~PBRO]+eO~O]+fO~Oi+iO#p+jO#q+kO~O^+lO%O%_O~Oi+pO#p+jO#q+kO~O!a+rO~O#^+sO~P?tO!a+tO~O]+uO~OZeX^eX^!TXj!TX!WeX!W!TX!|eX%YeX%`eX%feX%geX%ieX%jeX%keX%leX%meX%neX%oeX%peX%qeXVeXneX!QeX#ReX#TeX#UeX$weX~O]eX]!TX!VeXieX!aeX~P!NUOjeX~P!NUOZeX^eX^!TXj!TX!WeX!W!TX!|eX%YeX%`eX%feX%geX%ieX%jeX%keX%leX%meX%neX%oeX%peX%qeXn!TX!VeX~O]eX!V!TX~P#!gOh!TXr!TXw!TX{!TX!P!TX!Q!TX!]!TX%O!TX%Y!TX~P#!gOZeX^eX^!TXj!TXneX!WeX!W!TX!|eX%YeX%`eX%feX%geX%ieX%jeX%keX%leX%meX%neX%oeX%peX%qeX~O]eXueX~P#$xO]$mXn$mXu$mX~PF|Oj$mXn$mX~P!7`On+|O]%eau%ea~On+}Oj%ea~O[oO^YOaoOdoOh!POr!pOw}O!P!OO!Q-OO!WaO!]!QO!phO!qhO%O+yO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~OZeX]!TX^UXhUXnUXn!TXrUXuUXwUX!PUX!QUX!WUX!W!TX!]UX%OUX%YUX~OnUX!QeX!aeX#TeX#WUX~P#$xOn+|O!|,YO]%eXu%eX~PBROn+}O!|,XOj%eX~PBRO^&OOV%ZXj%ZX$w%ZX]%ZXn%ZX!V%ZXu%ZX%`%ZX#T%ZX[%ZX!a%ZX~P?wO!|,YO]$man$mau$ma~PBRO!|,XOj$man$ma~PBRO%Y#XO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YOZ!xi]!xi^!xi!W!xi!|!xi%`!xi%f!xi%g!xi%i!xi%p!xi%q!xi~Oj!xi~P!+YOn!xiu!xi~P#,hO%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YOZ!xi]!xi^!xi!W!xi!|!xi%p!xi%q!xi~O%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YOV!xiZ!xi^!xij!xin!xi!Q!xi!W!xi#R!xi#T!xi#U!xi$w!xi%p!xi%q!xi~O!|!xi~P#/_On!xiu!xi~P#.TO%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YOZ!xi]!xi^!xi!W!xi%p!xi%q!xi~O!|,WO~P#1^O!|,XO~P#/_O!|,YOn!xiu!xi~P#1^O%Y#XO%`#ZO%fiO%giO%i#ZO%j#YO%k#XO%l#XO%m#YO%n#YO%o#YO%p#[OZ!xi]!xi^!xi!W!xi%q!xi~O!|,WO~P#3QO!|,XOj!xi~P!/VO!|,YOn!xiu!xi~P#3QO!|,XOj#Pi~PBROV!TXZeX^mX!W!TX$w!TX~O%`!TX~P#5RO[!TXhmXnmXrmXwmX!PmX!QmX!WmX!]mX%OmX%YmX~P#5ROn#TO!Q,aO!|,XO#R#dOj`X#T%eX#U%eX~PBRO[oO^YOaoOdoOh!POr!pOw}O!P#hO!WaO!]!QO!phO!qhO%UTO%VUO%YVO%fiO%giO%hjO%ikO%jlO~O!Q-OO%O+yO~P#6{O!Q-PO%O+xO~P#6{O!Q-QO%O+{O~P#6{O#T,bO#U,bO~O#W,cO~O^!hOh!POr-TOw}O!P-_O!Q-WO!W-^O!]-eO%O!eO%Y!fO~O^!hOh!POr-TOw}O!Q-`O!W-^O!]-eO%O!eO%Y!fO~O!P-VO~P#9zO%O+wO~P!4vO!P-XO~O!V-YO!|#`O~PBRO!V-ZO~O!V-[O~O!W-dO~OP%ka%Oa~",goto:"!FW%sPP%tP%wP%zP'SP'XPPPP'`'cP'u'uP)w'u-_PPP0j0m0qP1V4b1VP7s8WP1VP8a8d8hP8p8w1VPP1V8{<`?vPPCY-_-_-_PCdCuCxPC{DQ'u'uDV'uES'u'u'u'uGUIW'uPPJR'uJUMjMjMj'u! r! r!#SP!$`!%d!&d'cP'cPP'cP!&yP!'V!'^!&yP!'a!'h!'n!'w!&yP!'z!(R!&y!(U!(fPP!&yP!(x!)UPP!&y!)Y!)c!&yP!)g!)gP!&yP!&yP!)j!)m!&v!&yP!&yPPP!&yP!&yP!)q!)q!)w!)}!*U!*[!*d!*j!*p!*w!*}!+T!+Z!.q!.x!/O!/X!/m!/s!/z!0Q!0W!0^!0d!0jPPPPPPPPP!0p!1f!1k!1{!2kPP!7P!:^P!>u!?Z!?_!@Z!@fP!@p!D_!Df!Di!DuPPPPPPPPPPPP!FSR!aPRyO!WXOScw!R!T!U!W#O#k#n#u$R$X&O&j&u&|'W'Y']'})W)|*k*w+gQ#pzU#r{#s%uQ#x|U$T!S$U&pQ$^!VQ$y!lR)U'RVROS#nQ#t{T%t#s%uR#t{qrOScw!U!V!W#O#k#n&|'W'Y)W*k+g%PoOSYacmnw!U!V!W!X!Z!_!q#O#Q#S#T#V#^#_#`#a#b#c#i#j#k#n$f%c&g&l&s&x&y&|'P'R'T'U'W'X'Y']'a'b'o'r'w(k(t)V)W)i)s*`*h*k*l*n*o*r+g+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,{,|,}-O-P-Q-^%O]OSYacmnw!U!V!W!X!Z!_!q#O#Q#S#T#V#^#_#`#a#b#c#i#j#k#n$f%c&g&l&s&x&y&|'P'R'T'U'W'X'Y']'a'b'o'r'w(k(t)V)W)i)s*`*h*k*l*n*o*r+g+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,{,|,}-O-P-Q-^#u!iW^!O!h!t!z#e#h#u#v#y#|#}$P$Q$T$W$v$x%W%Y%a%x%y&O&S&W&]&`&b&d&m'e'|'}(S([(c(i(o(|)l)|*P*Q*S*p*w*|+R+^+j+l,h-U-V-W-X-Y-Z-[-]-_-d'cbOSWYacmnw!O!U!V!W!X!Z!_!h!q!t!z#O#Q#S#T#V#^#_#`#a#b#c#e#h#i#j#k#n#u#v#y#|$P$Q$T$W$f$v$x%W%Y%a%c%x%y&O&W&]&`&g&l&m&s&x&y&|'P'R'T'U'W'X'Y']'a'b'e'o'r'w'|'}(S([(c(i(k(o(t(|)V)W)i)l)s)|*Q*`*h*k*l*n*o*p*r*w+R+g+j+l+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,h,{,|,}-O-P-Q-U-V-W-X-Y-Z-[-]-^-_-dR$O!PT&c#}&dW%`#R&z*d+cQ&Q#vS&V#y&]S&`#}&dR*Y(b'cZOSWYacmnw!O!U!V!W!X!Z!_!h!q!t!z#O#Q#S#T#V#^#_#`#a#b#c#e#h#i#j#k#n#u#v#y#|$P$Q$T$W$f$v$x%W%Y%a%c%x%y&O&W&]&`&g&l&m&s&x&y&|'P'R'T'U'W'X'Y']'a'b'e'o'r'w'|'}(S([(c(i(k(o(t(|)V)W)i)l)s)|*Q*`*h*k*l*n*o*p*r*w+R+g+j+l+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,h,{,|,}-O-P-Q-U-V-W-X-Y-Z-[-]-^-_-d%fWOSWYacmnw!O!U!V!W!X!Z!_!q!z#O#Q#S#T#V#^#_#`#a#b#c#h#i#j#k#n#v#|$f$v$x%W%Y%c&g&l&s&x&y&|'P'R'T'U'W'X'Y']'a'b'o'r'w(i(k(t)V)W)i)s*`*h*k*l*n*o*r+g+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,{,|,}-O-P-Q-^S&b#}&d!{-]!h!t#e#u#y$P$Q$T$W%a%x%y&O&W&]&`&m'e'|'}(S([(c(o(|)l)|*Q*p*w+R+j+l,h-U-V-W-X-Y-Z-[-]-_-dQ#v|S$v!j!pU&P#v$v,hZ,h#x&Q&U&V-TS%{#u&OV){'})|*wR#z}T&[#y&]]&X#y&](S([(o*QZ&Z#y&](S(o*QT([&Y(]'s_OSWYacmnw!O!U!V!W!X!Z!_!h!q!t!z#O#Q#S#T#V#^#_#`#a#b#c#e#h#i#j#k#n#u#v#y#|#}$P$Q$T$W$f$v$x%W%Y%a%c%x%y&O&S&W&]&`&b&d&g&l&m&s&x&y&|'P'R'T'U'W'X'Y']'a'b'e'o'r'w'|'}(S([(c(i(k(o(t(|)V)W)i)l)s)|*P*Q*S*`*h*k*l*n*o*p*r*w*|+R+^+g+j+l+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,h,{,|,}-O-P-Q-U-V-W-X-Y-Z-[-]-^-_-d'r_OSWYacmnw!O!U!V!W!X!Z!_!h!q!t!z#O#Q#S#T#V#^#_#`#a#b#c#e#h#i#j#k#n#u#v#y#|#}$P$Q$T$W$f$v$x%W%Y%a%c%x%y&O&S&W&]&`&b&d&g&l&m&s&x&y&|'P'R'T'U'W'X'Y']'a'b'e'o'r'w'|'}(S([(c(i(k(o(t(|)V)W)i)l)s)|*P*Q*S*`*h*k*l*n*o*p*r*w*|+R+^+g+j+l+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,h,{,|,}-O-P-Q-U-V-W-X-Y-Z-[-]-^-_-dR!w^'bbOSWYacmnw!O!U!V!W!X!Z!_!h!q!t!z#O#Q#S#T#V#^#_#`#a#b#c#e#h#i#j#k#n#u#v#y#|$P$Q$T$W$f$v$x%W%Y%a%c%x%y&O&W&]&`&g&l&m&s&x&y&|'P'R'T'U'W'X'Y']'a'b'e'o'r'w'|'}(S([(c(i(k(o(t(|)V)W)i)l)s)|*Q*`*h*k*l*n*o*p*r*w+R+g+j+l+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,h,{,|,}-O-P-Q-U-V-W-X-Y-Z-[-]-^-_-dS&a#}&dR(d&bS!u]fX!x`&_(e(oQ!r[Q%O!qQ)d'aU)f'b)i*oR+X*nR%R!qR%P!qV)h'b)i*oV)g'b)i*odtOScw#O#k#n&|'Y+gQ$h!WQ&R#wQ&w$[S'S$c$iQ(V&TQ*O(RQ*V(WQ*b(yQ*c(zR+_+Q%PfOSYacmnw!U!V!W!X!Z!_!q#O#Q#S#T#V#^#_#`#a#b#c#i#j#k#n$f%c&g&l&s&x&y&|'P'R'T'U'W'X'Y']'a'b'o'r'w(k(t)V)W)i)s*`*h*k*l*n*o*r+g+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,{,|,}-O-P-Q-^%PgOSYacmnw!U!V!W!X!Z!_!q#O#Q#S#T#V#^#_#`#a#b#c#i#j#k#n$f%c&g&l&s&x&y&|'P'R'T'U'W'X'Y']'a'b'o'r'w(k(t)V)W)i)s*`*h*k*l*n*o*r+g+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,{,|,}-O-P-Q-^!q#Weg!o!y$[$_$c$j$m$q$}%^%b%d%m'V'p(z({)S)Y)^)c)e)q)t*i*s+T+V+W+Y,f,g,i,j,w,z-aR#fh#^mOSacmnw!X!Z!_!q#O#S#T#^#_#`#a#b#c#i#j#k#n$f%c&g&l&s&y&|'P'T'U'X'Y']'a'b'o'r(k(t)i)s*`*h*l*n*o*r+g-^!W#_e!y$j$m$q$}%b%d%j%k%l%m'V'p({)Y)^)c)e)q)t*s+T+V+W+Y-aW,T!o,n,q,tj,U$[$_$c(z)S*i,g,j,o,r,u,w,z[,V%^,f,i,p,s,v`,{Y,Q,T,W,Z,^,{-Ox,|!U!V!W&x'R'W)V)W*k+},R,U,X,[,_,a,b,c,|-Pg,}#Q#V'w+|,S,V,Y,],`,}-Q#^mOSacmnw!X!Z!_!q#O#S#T#^#_#`#a#b#c#i#j#k#n$f%c&g&l&s&y&|'P'T'U'X'Y']'a'b'o'r(k(t)i)s*`*h*l*n*o*r+g-^`,{Y,Q,T,W,Z,^,{-Ox,|!U!V!W&x'R'W)V)W*k+},R,U,X,[,_,a,b,c,|-Pg,}#Q#V'w+|,S,V,Y,],`,}-Q!Y#^e!y$j$m$q$}%b%d%i%j%k%l%m'V'p({)Y)^)c)e)q)t*s+T+V+W+Y-aY,Q!o,k,n,q,tl,R$[$_$c(z)S*i,g,j,l,o,r,u,w,z_,S%^,f,i,m,p,s,v!W#_e!y$j$m$q$}%b%d%j%k%l%m'V'p({)Y)^)c)e)q)t*s+T+V+W+Y-aW,T!o,n,q,tj,U$[$_$c(z)S*i,g,j,o,r,u,w,z],V%^,f,i,p,s,v!S#ae!y$j$m$q$}%b%d%l%m'V'p({)Y)^)c)e)q)t*s+T+V+W+Y-aS,Z!o,tf,[$[$_$c(z)S*i,g,j,u,w,zX,]%^,f,i,v!Q#be!y$j$m$q$}%b%d%m'V'p({)Y)^)c)e)q)t*s+T+V+W+Y-aQ,^!od,_$[$_$c(z)S*i,g,j,w,zV,`%^,f,iprOScw!U!V!W#O#k#n&|'W'Y)W*k+gR)a']etOScw#O#k#n&|'Y+gQ$S!RT&i$R&jR$S!RQ$V!ST&o$U&pQ&U#xR&m$TS(T&S&lV*{*S*|+^R$V!SQ$Y!TT&t$X&uR$Y!TdsOScw#O#k#n&|'Y+gT$p![!]dtOScw#O#k#n&|'Y+gQ*b(yR+_+QQ$a!VQ&{$_Q)T'RR*g)ST&|$`&}Q+b+SQ+m+fR+v+uT+g+a+hR$i!WR$l!YT'Y$k'ZXuOSw#nQ$s!`R'_$sSSO#nR!dSQ%u#sR'y%uUwOS#nR#mwQ&d#}R(g&dQ(c&`R*Z(cS!mX$^R$z!mQ(O%{R)}(OQ&]#yR(_&]Q(]&YR*X(]'r^OSWYacmnw!O!U!V!W!X!Z!_!h!q!t!z#O#Q#S#T#V#^#_#`#a#b#c#e#h#i#j#k#n#u#v#y#|#}$P$Q$T$W$f$v$x%W%Y%a%c%x%y&O&S&W&]&`&b&d&g&l&m&s&x&y&|'P'R'T'U'W'X'Y']'a'b'e'o'r'w'|'}(S([(c(i(k(o(t(|)V)W)i)l)s)|*P*Q*S*`*h*k*l*n*o*p*r*w*|+R+^+g+j+l+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,h,{,|,}-O-P-Q-U-V-W-X-Y-Z-[-]-^-_-dR!v^S'f%T+PR)m'fQ'c%RR)j'cW#Oc&|'Y+gR%[#O^#Ue$[$_$c$m)^,zU%e#U,O,PQ,O,fR,P,gQ&j$RR(m&jS*Q(S(oR*y*QQ*T(TR*}*TQ&p$UR(r&pQ&u$XR(w&uQ&}$`R)O&}Q+h+aR+o+hQ'Z$kR)['ZQ!cRQ#luQ#nyQ%Z!|Q&x$]Q'R$bQ'x%tQ(^&[Q(f&cQ(l&iQ(q&oR(v&tVxOS#nWuOSw#nY!|c#O&|'Y+gR%r#kdtOScw#O#k#n&|'Y+gQ$]!UQ$b!VQ$g!WQ)X'WQ*j)WR+U*kdeOScw#O#k#n&|'Y+gQ!oYQ!ya`#gmn,{,|,}-O-P-QQ$[!UQ$_!VQ$c!WQ$j!Xd$m!Z#i#j&g&s'P'T'U(k(tQ$q!_Q$}!qQ%^#QQ%b#SQ%d#TW%h#^,Q,R,SQ%i#_Q%j#`Q%k#aQ%l#bQ%m#cQ'V$fQ'p%cQ(z&xQ({&yQ)S'RQ)Y'XQ)^']Q)c'aU)e'b)i*oQ)q'oQ)t'rQ*i)VQ*s)sQ+T*hQ+V*lQ+W*nQ+Y*rS,f#V'wS,g,b,cQ,i+|Q,j+}Q,k,TQ,l,UQ,m,VQ,n,WQ,o,XQ,p,YQ,q,ZQ,r,[Q,s,]Q,t,^Q,u,_Q,v,`Q,w,aU,z'W)W*kV-a&l*`-^#bZW!O!h!t!z#e#h#u#v#y#|$P$Q$T$W$v$x%W%Y%a%x%y&O&W&]&`&m'e'|'}(S([(c(i(o(|)l)|*Q*p*w+R+j+l,h-U-V-W-X-Y-Z-[-]-_-d%P[OSYacmnw!U!V!W!X!Z!_!q#O#Q#S#T#V#^#_#`#a#b#c#i#j#k#n$f%c&g&l&s&x&y&|'P'R'T'U'W'X'Y']'a'b'o'r'w(k(t)V)W)i)s*`*h*k*l*n*o*r+g+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,{,|,}-O-P-Q-^$zdOSacmnw!U!V!W!X!Z!_!q#O#Q#S#T#V#^#_#`#a#b#c#i#j#k#n$f%c&g&l&s&x&y&|'P'R'T'U'W'X'Y']'a'b'o'r'w(k(t)V)W)i)s*h*k*l*n*o*r+g+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,{,|,}-O-P-Q-^S!gW-]Q!nYS#{!O-_Q$u!hS%T!t+jS%X!z-UQ%n#e[%o#h#|$x-V-W-XW%w#u'})|*wU&P#v$v,h[&X#y&](S([(o*QQ&f$PQ&h$QQ&n$TQ&r$WS'h%W-YS'i%Y-ZW'l%a(|+R+lS'{%x%yQ(Q&OQ(Y&WQ(d&`Q(p&mU)k'e)l*pQ)z'|Q*[(cS*^(i-[Q+P*`R-c-dS#w|!pS$w!j-TQ&T#xQ(R&QQ(W&UR(X&VT%|#u&OhqOScw!U!V#O#k#n&|'Y+gU$Q!R$R&jU$W!T$X&uQ$e!WY%y#u&O'})|*wQ)`']V-S'W)W*kS&[#y&]S*R(S(oR*z*QY&Y#y&](S(o*QR*W(['``OSWYacmnw!O!U!V!W!X!Z!_!h!q!t!z#O#Q#S#T#V#^#_#`#a#b#c#e#h#i#j#k#n#u#v#y#|$P$Q$T$W$f$v$x%W%Y%a%c%x%y&O&W&]&`&g&m&s&x&y&|'P'R'T'U'W'X'Y']'a'b'e'o'r'w'|'}(S([(c(i(k(o(t(|)V)W)i)l)s)|*Q*`*h*k*l*n*o*p*r*w+R+g+j+l+|+},Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,h,{,|,}-O-P-Q-U-V-W-X-Y-Z-[-]-^-_-dS&_#}&dW(S&S*S*|+^Q(e&bQ(o&lR*x*PS%U!t*`R+q+jR%S!qQ#PcQ(}&|Q)Z'YR+n+ghpOScw!U!V#O#k#n&|'Y+gQ$d!WQ$n!ZQ%g#VU%p#i'T,bU%q#j'U,cQ(j&gQ(u&sQ)Q'PQ)_']Q)y'wQ*_(kQ*a(tV-R'W)W*kT(U&S&l",nodeNames:"⚠ LineComment BlockComment SourceFile PackageClause package DefName ; ImportDecl import ImportSpec . String ) ( SpecList ExprStatement Number Bool Nil Rune VariableName TypedLiteral StructType struct } { StructBody FieldDecl FieldName , PointerType * FunctionType func Parameters Parameter ... InterfaceType interface InterfaceBody MethodElem UnderlyingType ~ TypeElem LogicOp ChannelType chan <- ParenthesizedType QualifiedType TypeName ParameterizedType ] [ TypeArgs ArrayType SliceType MapType map LiteralValue Element Key : Element Key ParenthesizedExpr FunctionLiteral Block Conversion SelectorExpr IndexExpr SliceExpr TypeAssertion CallExpr ParameterizedExpr Arguments CallExpr make new Arguments UnaryExp ArithOp LogicOp BitOp DerefOp BinaryExp ArithOp BitOp BitOp CompareOp LogicOp LogicOp SendStatement IncDecStatement IncDecOp Assignment = UpdateOp VarDecl := ConstDecl const ConstSpec SpecList TypeDecl type TypeSpec TypeParams TypeParam SpecList VarDecl var VarSpec SpecList LabeledStatement LabelName IfStatement if else SwitchStatement switch SwitchBlock Case case default TypeSwitchStatement SwitchBlock Case ForStatement for ForClause RangeClause range GoStatement go SelectStatement select SelectBlock Case ReceiveStatement ReturnStatement return GotoStatement break continue goto FallthroughStatement fallthrough DeferStatement defer FunctionDecl MethodDecl",maxTerm:218,context:iO,nodeProps:[["isolate",-3,2,12,20,""],["group",-18,12,17,18,19,20,21,22,66,67,69,70,71,72,73,74,77,81,86,"Expr",-20,16,68,93,94,96,99,101,105,111,115,117,120,126,129,134,136,141,143,147,149,"Statement",-12,23,31,33,38,46,49,50,51,52,56,57,58,"Type"],["openedBy",13,"(",25,"{",53,"["],["closedBy",14,")",26,"}",54,"]"]],propSources:[XO],skippedNodes:[0,1,2,153],repeatNodeCount:23,tokenData:":b~RvXY#iYZ#i]^#ipq#iqr#zrs$Xuv&Pvw&^wx&yxy(qyz(vz{({{|)T|})e}!O)j!O!P)u!P!Q+}!Q!R,y!R![-t![!]2^!]!^2k!^!_2p!_!`3]!`!a3e!c!}3x!}#O4j#P#Q4o#Q#R4t#R#S4|#S#T9X#T#o3x#o#p9q#p#q9v#q#r:W#r#s:]$g;'S3x;'S;=`4d<%lO3x~#nS$y~XY#iYZ#i]^#ipq#iU$PP%hQ!_!`$SS$XO!|S~$^W[~OY$XZr$Xrs$vs#O$X#O#P${#P;'S$X;'S;=`%y<%lO$X~${O[~~%ORO;'S$X;'S;=`%X;=`O$X~%^X[~OY$XZr$Xrs$vs#O$X#O#P${#P;'S$X;'S;=`%y;=`<%l$X<%lO$X~%|P;=`<%l$X~&UP%l~!_!`&X~&^O#U~~&cR%j~vw&l!_!`&X#Q#R&q~&qO%p~~&vP%o~!_!`&X~'OWd~OY&yZw&ywx'hx#O&y#O#P'm#P;'S&y;'S;=`(k<%lO&y~'mOd~~'pRO;'S&y;'S;=`'y;=`O&y~(OXd~OY&yZw&ywx'hx#O&y#O#P'm#P;'S&y;'S;=`(k;=`<%l&y<%lO&y~(nP;=`<%l&y~(vO^~~({O]~~)QP%Y~!_!`&X~)YQ%f~{|)`!_!`&X~)eO#R~~)jOn~~)oQ%g~}!O)`!_!`&X~)zRZS!O!P*T!Q![*`#R#S+w~*WP!O!P*Z~*`Ou~Q*eTaQ!Q![*`!g!h*t#R#S+w#X#Y*t#]#^+rQ*wS{|+T}!O+T!Q![+^#R#S+lQ+WQ!Q![+^#R#S+lQ+cRaQ!Q![+^#R#S+l#]#^+rQ+oP!Q![+^Q+wOaQQ+zP!Q![*`~,SR%k~z{,]!P!Q,b!_!`&X~,bO$z~~,gSP~OY,bZ;'S,b;'S;=`,s<%lO,b~,vP;=`<%l,bQ-O[aQ!O!P*`!Q![-t!d!e.c!g!h*t!q!r/Z!z!{/x#R#S.]#U#V.c#X#Y*t#]#^+r#c#d/Z#l#m/xQ-yUaQ!O!P*`!Q![-t!g!h*t#R#S.]#X#Y*t#]#^+rQ.`P!Q![-tQ.fR!Q!R.o!R!S.o#R#S/QQ.tSaQ!Q!R.o!R!S.o#R#S/Q#]#^+rQ/TQ!Q!R.o!R!S.oQ/^Q!Q!Y/d#R#S/rQ/iRaQ!Q!Y/d#R#S/r#]#^+rQ/uP!Q!Y/dQ/{T!O!P0[!Q![1c!c!i1c#R#S2Q#T#Z1cQ0_S!Q![0k!c!i0k#R#S1V#T#Z0kQ0pVaQ!Q![0k!c!i0k!r!s*t#R#S1V#T#Z0k#]#^+r#d#e*tQ1YR!Q![0k!c!i0k#T#Z0kQ1hWaQ!O!P0k!Q![1c!c!i1c!r!s*t#R#S2Q#T#Z1c#]#^+r#d#e*tQ2TR!Q![1c!c!i1c#T#Z1c~2cP!a~!_!`2f~2kO#W~~2pOV~~2uR!|S}!O3O!^!_3T!_!`$S~3TO!Q~~3YP%m~!_!`&X~3bP#T~!_!`$S~3jQ!|S!_!`$S!`!a3p~3uP%n~!_!`&X~3}V%O~!Q![3x!c!}3x#R#S3x#T#o3x$g;'S3x;'S;=`4d<%lO3x~4gP;=`<%l3x~4oO!W~~4tO!V~~4yP%i~!_!`&X~5RV%O~!Q![5h!c!}3x#R#S3x#T#o3x$g;'S3x;'S;=`4d<%lO3x~5o^aQ%O~!O!P*`!Q![5h!c!g3x!g!h6k!h!}3x#R#S4|#T#X3x#X#Y6k#Y#]3x#]#^8k#^#o3x$g;'S3x;'S;=`4d<%lO3x~6pX%O~{|+T}!O+T!Q![7]!c!}3x#R#S8P#T#o3x$g;'S3x;'S;=`4d<%lO3x~7dXaQ%O~!Q![7]!c!}3x#R#S8P#T#]3x#]#^8k#^#o3x$g;'S3x;'S;=`4d<%lO3x~8UV%O~!Q![7]!c!}3x#R#S3x#T#o3x$g;'S3x;'S;=`4d<%lO3x~8rVaQ%O~!Q![3x!c!}3x#R#S3x#T#o3x$g;'S3x;'S;=`4d<%lO3x~9[TO#S9X#S#T$v#T;'S9X;'S;=`9k<%lO9X~9nP;=`<%l9X~9vOj~~9{Q%`~!_!`&X#p#q:R~:WO%q~~:]Oi~~:bO{~",tokenizers:[aO,1,2,new Y("j~RQYZXz{^~^O$|~~aP!P!Qd~iO$}~~",25,181)],topRules:{SourceFile:[0,3]},dynamicPrecedences:{19:1,51:-1,55:2,69:-1,108:-1},specialized:[{term:184,get:Q=>nO[Q]||-1}],tokenPrec:5451}),oO=[X("func ${name}(${params}) ${type} {\n ${}\n}",{label:"func",detail:"declaration",type:"keyword"}),X("func (${receiver}) ${name}(${params}) ${type} {\n ${}\n}",{label:"func",detail:"method declaration",type:"keyword"}),X("var ${name} = ${value}",{label:"var",detail:"declaration",type:"keyword"}),X("type ${name} ${type}",{label:"type",detail:"declaration",type:"keyword"}),X("const ${name} = ${value}",{label:"const",detail:"declaration",type:"keyword"}),X("type ${name} = ${type}",{label:"type",detail:"alias declaration",type:"keyword"}),X("for ${init}; ${test}; ${update} {\n ${}\n}",{label:"for",detail:"loop",type:"keyword"}),X("for ${i} := range ${value} {\n ${}\n}",{label:"for",detail:"range",type:"keyword"}),X(`select {
|
|
2
|
-
\${}
|
|
3
|
-
}`,{label:"select",detail:"statement",type:"keyword"}),X("case ${}:\n${}",{label:"case",type:"keyword"}),X("switch ${} {\n ${}\n}",{label:"switch",detail:"statement",type:"keyword"}),X("switch ${}.(${type}) {\n ${}\n}",{label:"switch",detail:"type statement",type:"keyword"}),X("if ${} {\n ${}\n}",{label:"if",detail:"block",type:"keyword"}),X(`if \${} {
|
|
4
|
-
\${}
|
|
5
|
-
} else {
|
|
6
|
-
\${}
|
|
7
|
-
}`,{label:"if",detail:"/ else block",type:"keyword"}),X('import ${name} "${module}"\n${}',{label:"import",detail:"declaration",type:"keyword"})],S=new b,T=new Set(["SourceFile","Block","FunctionDecl","MethodDecl","FunctionLiteral","ForStatement","SwitchStatement","TypeSwitchStatement","IfStatement"]);function o(Q,e){return(n,a)=>{O:for(let t=n.node.firstChild,c=0,i=null;;){for(;!t;){if(!c)break O;c--,t=i.nextSibling,i=i.parent}e&&t.name==e||t.name=="SpecList"?(c++,i=t,t=t.firstChild):(t.name=="DefName"&&a(t,Q),t=t.nextSibling)}return!0}}const cO={FunctionDecl:o("function"),VarDecl:o("var","VarSpec"),ConstDecl:o("constant","ConstSpec"),TypeDecl:o("type","TypeSpec"),ImportDecl:o("constant","ImportSpec"),Parameter:o("var"),__proto__:null};function W(Q,e){let n=S.get(e);if(n)return n;let a=[],t=!0;function c(i,P){let V=Q.sliceString(i.from,i.to);a.push({label:V,type:P})}return e.cursor(Z.IncludeAnonymous).iterate(i=>{if(t)t=!1;else if(i.name){let P=cO[i.name];if(P&&P(i,c)||T.has(i.name))return!1}else if(i.to-i.from>8192){for(let P of W(Q,i.node))a.push(P);return!1}}),S.set(e,a),a}const p=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,m=["String","LineComment","BlockComment","DefName","LabelName","FieldName",".","?."],rO=Q=>{let e=U(Q.state).resolveInner(Q.pos,-1);if(m.indexOf(e.name)>-1)return null;let n=e.name=="VariableName"||e.to-e.from<20&&p.test(Q.state.sliceDoc(e.from,e.to));if(!n&&!Q.explicit)return null;let a=[];for(let t=e;t;t=t.parent)T.has(t.name)&&(a=a.concat(W(Q.state.doc,t)));return{options:a,from:n?e.from:Q.pos,validFor:p}},r=d.define({name:"go",parser:PO.configure({props:[u.add({IfStatement:l({except:/^\s*({|else\b)/}),LabeledStatement:j,"SwitchBlock SelectBlock":Q=>{let e=Q.textAfter,n=/^\s*\}/.test(e),a=/^\s*(case|default)\b/.test(e);return Q.baseIndent+(n||a?0:Q.unit)},Block:g({closing:"}"}),BlockComment:()=>null,Statement:l({except:/^{/})}),y.add({"Block SwitchBlock SelectBlock LiteralValue InterfaceType StructType SpecList":G,BlockComment(Q){return{from:Q.from+2,to:Q.to-2}}})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case\b|default\b|\})$/}});let lO=Q=>({label:Q,type:"keyword"});const $O="interface struct chan map package go return break continue goto fallthrough else defer range true false nil".split(" ").map(lO);function TO(){let Q=oO.concat($O);return new k(r,[r.data.of({autocomplete:h(m,f(Q))}),r.data.of({autocomplete:rO})])}export{TO as go,r as goLanguage,rO as localCompletionSource,oO as snippets};
|