dorkos 0.87.0 → 0.88.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/dist/bin/cli.js +1345 -39
  2. package/dist/client/assets/{AboutPage-BSUaz4JJ.js → AboutPage-xqba6OSc.js} +1 -1
  3. package/dist/client/assets/AdapterIcon-BfxdKjYz.js +1 -0
  4. package/dist/client/assets/{AppearancePage-CXOeapnY.js → AppearancePage-MXRyK6j4.js} +1 -1
  5. package/dist/client/assets/{BaseTanStackRouterDevtoolsPanel-B-iktbLX-BnlmhnMf.js → BaseTanStackRouterDevtoolsPanel-B-iktbLX-D6lj5D9_.js} +3 -3
  6. package/dist/client/assets/{BlintzCanvas-CPvaejf6.js → BlintzCanvas-BmTo8WiT.js} +1 -1
  7. package/dist/client/assets/{CanvasCsvContent-BQMcLeXX.js → CanvasCsvContent-C57uDWEL.js} +1 -1
  8. package/dist/client/assets/{CanvasFileContent-DZAWEzyp.js → CanvasFileContent-1qt_NtYW.js} +2 -2
  9. package/dist/client/assets/{CanvasModel3dContent-CU-0WLIz.js → CanvasModel3dContent-CJ2bwQjt.js} +2 -2
  10. package/dist/client/assets/{CodeMirrorDiff-B705Z174.js → CodeMirrorDiff-6LU4OiJj.js} +1 -1
  11. package/dist/client/assets/{CodeMirrorEditor-CnoVRaAX.js → CodeMirrorEditor-Jq49Np0j.js} +1 -1
  12. package/dist/client/assets/{ConnectionAccessLists-CLulSQsd.js → ConnectionAccessLists-uBJL31Ay.js} +1 -1
  13. package/dist/client/assets/ConnectionsPage-BAcGLK2V.js +11 -0
  14. package/dist/client/assets/{ConventionPage-CPTqeeNZ.js → ConventionPage-DdKmGIcU.js} +3 -3
  15. package/dist/client/assets/{FloatingTanStackRouterDevtools-CqogiFob-C3cf2ADt.js → FloatingTanStackRouterDevtools-CqogiFob-9LderCq4.js} +1 -1
  16. package/dist/client/assets/HandlePage-C6lAHsBo.js +1 -0
  17. package/dist/client/assets/{LexicalField-ClgIzBq7.js → LexicalField-DsPLNKLN.js} +1 -1
  18. package/dist/client/assets/{ManagesPage-CKzcFzKR.js → ManagesPage-C34dzjEv.js} +1 -1
  19. package/dist/client/assets/{Model3dViewer-CVVsdftR.js → Model3dViewer-PXpUR_oW.js} +1 -1
  20. package/dist/client/assets/NamePage-C0Mhnk4v.js +1 -0
  21. package/dist/client/assets/{NotificationsPage-D3m6Jrm2.js → NotificationsPage-CTPdo_E9.js} +1 -1
  22. package/dist/client/assets/{PermissionsPage-CviWqCJ3.js → PermissionsPage-Ij8O_uFN.js} +1 -1
  23. package/dist/client/assets/{PersonalityPopover-BN1CFq8D.js → PersonalityPopover-D0pS2YVR.js} +1 -1
  24. package/dist/client/assets/PhotoPage-DK8jrI66.js +1 -0
  25. package/dist/client/assets/{RoomsPage-CoZd-4Xe.js → RoomsPage-C_jMQGJC.js} +1 -1
  26. package/dist/client/assets/{RunsOnPopover-91nKS6qj.js → RunsOnPopover-Dj0c45ua.js} +1 -1
  27. package/dist/client/assets/{SessionsPage-DDrQLNW-.js → SessionsPage-BMABy-lt.js} +2 -2
  28. package/dist/client/assets/{SkillsPage-2H6QD77F.js → SkillsPage-CSUclnmu.js} +1 -1
  29. package/dist/client/assets/{TasksPage-ocRUPiec.js → TasksPage-COCsTj5k.js} +1 -1
  30. package/dist/client/assets/{ToolsPage-q3wxIc3n.js → ToolsPage-CIgwvhZM.js} +2 -2
  31. package/dist/client/assets/{TopologyGraph-DeRqfLBW.js → TopologyGraph-BOcP_UPd.js} +3 -3
  32. package/dist/client/assets/{agent-browser-C7Q5muxI.js → agent-browser-Cm6bXvCt.js} +1 -1
  33. package/dist/client/assets/{highlighted-body-KPVGNVTW-CYowLe07.js → highlighted-body-KPVGNVTW-CmLzbGDT.js} +1 -1
  34. package/dist/client/assets/{index-BX9en7bH.js → index-20DQ0WIE.js} +1 -1
  35. package/dist/client/assets/{index-6F4HxV-x.js → index-B5b98af8.js} +1 -1
  36. package/dist/client/assets/{index-SGZRUhq4.js → index-B9kyvuKW.js} +1 -1
  37. package/dist/client/assets/{index-CpZi173j.js → index-BndjtRZA.js} +1 -1
  38. package/dist/client/assets/{index-CCLVR1so.js → index-BvuOztsk.js} +1 -1
  39. package/dist/client/assets/{index-BwbRY8dK.js → index-BxfmjO0b.js} +1 -1
  40. package/dist/client/assets/{index-qWahGPGi.js → index-C4GR43mL.js} +1 -1
  41. package/dist/client/assets/{index-1dt_mWBC.js → index-C7jBVjvK.js} +1 -1
  42. package/dist/client/assets/{index-DsRm4kZF.js → index-CLJKvTfN.js} +1 -1
  43. package/dist/client/assets/{index-GiEn7nQQ.js → index-CQzyikQJ.js} +1 -1
  44. package/dist/client/assets/{index-BeqTVkgE.js → index-CRom-Nt5.js} +1 -1
  45. package/dist/client/assets/{index-VLhj4QNP.js → index-CV_tZl11.js} +1 -1
  46. package/dist/client/assets/{index-otf5JgVx.js → index-Cd9I6lUD.js} +1 -1
  47. package/dist/client/assets/{index-CKHPMgwE.js → index-CqP01Nbn.js} +1 -1
  48. package/dist/client/assets/{index-sMuUIc_W.js → index-D1Y7OlGq.js} +2 -2
  49. package/dist/client/assets/index-D5zhwLA1.js +1 -0
  50. package/dist/client/assets/{index-snpaQsNQ.js → index-D6Noae7w.js} +1 -1
  51. package/dist/client/assets/{index-CxZB8Cqj.js → index-DArP7LVM.js} +1 -1
  52. package/dist/client/assets/{index-BkFaL4dr.js → index-DBrS_qK1.js} +1 -1
  53. package/dist/client/assets/{index-D8fmSjjO.js → index-DIAn8UxO.js} +1 -1
  54. package/dist/client/assets/{index-34_CucI4.js → index-DOZ6l8Os.js} +1 -1
  55. package/dist/client/assets/{index-CbxbAPgT.js → index-DWOxbvGH.js} +1 -1
  56. package/dist/client/assets/{index-D_Pj9S7y.js → index-D_3Gtukh.js} +1 -1
  57. package/dist/client/assets/{index-Da-4WWcu.js → index-DpN4Unzc.js} +1 -1
  58. package/dist/client/assets/{index-DT3ci-3h.js → index-DrRfKYSH.js} +1 -1
  59. package/dist/client/assets/index-DtWF2VPM.css +1 -0
  60. package/dist/client/assets/{index-D45q57-5.js → index-Gs10j_MB.js} +1 -1
  61. package/dist/client/assets/{index-CvQeke9n.js → index-GxKQ7usg.js} +3 -3
  62. package/dist/client/assets/{index-B4TIVWAq.js → index-_1qDsPCM.js} +431 -436
  63. package/dist/client/assets/{index-CuEwCZKH.js → index-irBM12M1.js} +5 -5
  64. package/dist/client/assets/{index-BzVyUKXW.js → index-mHL0gmHU.js} +3 -3
  65. package/dist/client/assets/{index-Cm0G2vDh.js → index-noUdLKRN.js} +1 -1
  66. package/dist/client/assets/{index-Bv_P5_tJ.js → index-r8MCK2Zn.js} +1 -1
  67. package/dist/client/assets/{index-B029XwR8.js → index-rEcs1cWl.js} +1 -1
  68. package/dist/client/assets/{index-CEw2JwVz.js → index-vlk24smC.js} +1 -1
  69. package/dist/client/assets/{index-C0oow5Fn.js → index-wIEie2VH.js} +1 -1
  70. package/dist/client/assets/{index-DDagpuEn.js → index-wpJKx9Mi.js} +1 -1
  71. package/dist/client/assets/{room-files-source-C3tzeG6y.js → room-files-source-Tt08gsJM.js} +2 -2
  72. package/dist/client/assets/{soul-file-tc6-HkDy.js → soul-file-BWnNRUqb.js} +1 -1
  73. package/dist/client/assets/{use-personality-commit-vpAu5T8A.js → use-personality-commit-CKnXk3oQ.js} +1 -1
  74. package/dist/client/index.html +2 -2
  75. package/dist/drizzle/0116_unshared_connections_ready.sql +27 -0
  76. package/dist/drizzle/0117_session_limits.sql +12 -0
  77. package/dist/drizzle/meta/0116_snapshot.json +9146 -0
  78. package/dist/drizzle/meta/0117_snapshot.json +9226 -0
  79. package/dist/drizzle/meta/_journal.json +14 -0
  80. package/dist/server/index.js +35580 -32939
  81. package/dist/server/index.js.map +2 -2
  82. package/package.json +5 -5
  83. package/dist/client/assets/ConnectionsPage-5Yc0-dNp.js +0 -1
  84. package/dist/client/assets/HandlePage-CUJPQsdv.js +0 -1
  85. package/dist/client/assets/NamePage-CYHYXhrs.js +0 -1
  86. package/dist/client/assets/PhotoPage-ytqVZP3t.js +0 -1
  87. package/dist/client/assets/index-BUcM96PD.css +0 -1
  88. package/dist/client/assets/index-CqfEH_t6.js +0 -1
@@ -1 +1 @@
1
- import{L as k,E as $,a as z}from"./index-D_Pj9S7y.js";import{s as R,t,a as Y,L as W,i as Z,c as x,f as G,l as _,e as V,K as E,I as U}from"./index-BzVyUKXW.js";import"./index-B4TIVWAq.js";const T=135,m=1,q=136,C=137,P=2,N=138,F=3,I=4,X=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],D=58,K=40,b=95,B=91,c=45,L=46,A=35,J=37,H=38,M=92,ee=10,Oe=42;function Q(e){return e>=65&&e<=90||e>=97&&e<=122||e>=161}function j(e){return e>=48&&e<=57}function S(e){return j(e)||e>=97&&e<=102||e>=65&&e<=70}const v=(e,r,i)=>(O,a)=>{for(let o=!1,l=0,n=0;;n++){let{next:s}=O;if(Q(s)||s==c||s==b||o&&j(s))!o&&(s!=c||n>0)&&(o=!0),l===n&&s==c&&l++,O.advance();else if(s==M&&O.peek(1)!=ee){if(O.advance(),S(O.next)){do O.advance();while(S(O.next));O.next==32&&O.advance()}else O.next>-1&&O.advance();o=!0}else{o&&O.acceptToken(l==2&&a.canShift(P)?r:s==K?i:e);break}}},ae=new $(v(q,P,C),{contextual:!0}),re=new $(v(N,F,I),{contextual:!0}),te=new $(e=>{if(X.includes(e.peek(-1))){let{next:r}=e;(Q(r)||r==b||r==A||r==L||r==Oe||r==B||r==D&&Q(e.peek(1))||r==c||r==H)&&e.acceptToken(T)}}),oe=new $(e=>{if(!X.includes(e.peek(-1))){let{next:r}=e;if(r==J&&(e.advance(),e.acceptToken(m)),Q(r)){do e.advance();while(Q(e.next)||j(e.next));e.acceptToken(m)}}}),le=R({"AtKeyword import charset namespace keyframes media supports font-feature-values":t.definitionKeyword,"from to selector scope MatchFlag":t.keyword,NamespaceName:t.namespace,KeyframeName:t.labelName,KeyframeRangeName:t.operatorKeyword,TagName:t.tagName,ClassName:t.className,PseudoClassName:t.constant(t.className),IdName:t.labelName,"FeatureName PropertyName":t.propertyName,AttributeName:t.attributeName,NumberLiteral:t.number,KeywordQuery:t.keyword,UnaryQueryOp:t.operatorKeyword,"CallTag ValueName FontName":t.atom,VariableName:t.variableName,Callee:t.operatorKeyword,Unit:t.unit,"UniversalSelector NestingSelector":t.definitionOperator,"MatchOp CompareOp":t.compareOperator,"ChildOp SiblingOp, LogicOp":t.logicOperator,BinOp:t.arithmeticOperator,Important:t.modifier,Comment:t.blockComment,ColorLiteral:t.color,"ParenthesizedContent StringLiteral":t.string,":":t.punctuation,"PseudoOp #":t.derefOperator,"; , |":t.separator,"( )":t.paren,"[ ]":t.squareBracket,"{ }":t.brace}),ie={__proto__:null,lang:44,"nth-child":44,"nth-last-child":44,"nth-of-type":44,"nth-last-of-type":44,dir:44,"host-context":44,if:90,url:132,"url-prefix":132,domain:132,regexp:132},ne={__proto__:null,or:104,and:104,not:112,only:112,layer:186},se={__proto__:null,selector:118,layer:182},de={__proto__:null,"@import":178,"@media":190,"@charset":194,"@namespace":198,"@keyframes":204,"@supports":216,"@scope":220,"@font-feature-values":226},Qe={__proto__:null,to:223},ce=k.deserialize({version:14,states:"IpQYQdOOO#}QdOOP$UO`OOO%OQaO'#CfOOQP'#Ce'#CeO%VQdO'#CgO%[Q`O'#CgO%aQaO'#FdO&XQdO'#CkO&xQaO'#CcO'SQdO'#CnO'_QdO'#DtO'dQdO'#DvO'oQdO'#D}O'oQdO'#EQOOQP'#Fd'#FdO)OQhO'#EsOOQS'#Fc'#FcOOQS'#Ev'#EvQYQdOOO)VQdO'#EWO*cQhO'#E^O)VQdO'#E`O*jQdO'#EbO*uQdO'#EeO)zQhO'#EkO*}QdO'#EmO+YQdO'#EpO+_QaO'#CfO+fQ`O'#ETO+kQ`O'#FnO+vQdO'#FnQOQ`OOP,QO&jO'#CaPOOO)CAR)CAROOQP'#Ci'#CiOOQP,59R,59RO%VQdO,59ROOQP'#Cm'#CmOOQP,59V,59VO&XQdO,59VO,]QdO,59YO'_QdO,5:`O'dQdO,5:bO'oQdO,5:iO'oQdO,5:kO'oQdO,5:lO'oQdO'#E}O,hQ`O,58}O,pQdO'#ESOOQS,58},58}OOQP'#Cq'#CqOOQO'#Dr'#DrOOQP,59Y,59YO,wQ`O,59YO,|Q`O,59YOOQP'#Du'#DuOOQP,5:`,5:`O-RQpO'#DwO-^QdO'#DxO-cQ`O'#DxO-hQpO,5:bO.RQaO,5:iO.iQaO,5:lOOQW'#D^'#D^O/eQhO'#DgO/xQhO,5;_O)zQhO'#DeO0VQ`O'#DkO0[QhO'#DnOOQW'#Fj'#FjOOQS,5;_,5;_O0aQ`O'#DhOOQS-E8t-E8tOOQ['#Cv'#CvO0fQdO'#CwO0|QdO'#C}O1dQdO'#DQO1zQ!pO'#DSO4TQ!jO,5:rOOQO'#DX'#DXO,|Q`O'#DWO4eQ!nO'#FgO6hQ`O'#DYO6mQ`O'#DoOOQ['#Fg'#FgO6rQhO'#FqO7QQ`O,5:xO7VQ!bO,5:zOOQS'#Ed'#EdO7_Q`O,5:|O7dQdO,5:|OOQO'#Eg'#EgO7lQ`O,5;PO7qQhO,5;VO'oQdO'#DjOOQS,5;X,5;XO0aQ`O,5;XO7yQdO,5;XOOQS'#FU'#FUO8RQdO'#ErO7QQ`O,5;[O8ZQdO,5:oO8kQdO'#FPO8xQ`O,5<YO8xQ`O,5<YPOOO'#Eu'#EuP9TO&jO,58{POOO,58{,58{OOQP1G.m1G.mOOQP1G.q1G.qOOQP1G.t1G.tO,wQ`O1G.tO,|Q`O1G.tOOQP1G/z1G/zO9`QpO1G/|O9hQaO1G0TO:OQaO1G0VO:fQaO1G0WO:|QaO,5;iOOQO-E8{-E8{OOQS1G.i1G.iO;WQ`O,5:nO;]QdO'#DsO;dQdO'#CuOOQO'#Dz'#DzOOQO,5:d,5:dO-^QdO,5:dOOQP1G/|1G/|O)VQdO1G/|O;kQ!jO'#D^O;yQ!bO,59yO<RQhO,5:ROOQO'#Fk'#FkO;|Q!bO,59}O<ZQhO'#FVO)zQhO,59{O)zQhO'#FVO=OQhO1G0yOOQS1G0y1G0yO=YQhO,5:PO>QQhO'#DlOOQW,5:V,5:VOOQW,5:Y,5:YOOQW,5:S,5:SO>[Q!fO'#FhOOQS'#Fh'#FhOOQS'#Ex'#ExO?lQdO,59cOOQ[,59c,59cO@SQdO,59iOOQ[,59i,59iO@jQdO,59lOOQ[,59l,59lOOQ[,59n,59nO)VQdO,59pOAQQhO'#EYOOQW'#EY'#EYOAlQ`O1G0^O4^QhO1G0^OOQ[,59r,59rO)zQhO'#D[OOQ[,59t,59tOAqQ#tO,5:ZOA|QhO'#FROBZQ`O,5<]OOQS1G0d1G0dOOQS1G0f1G0fOOQS1G0h1G0hOBfQ`O1G0hOBkQdO'#EhOOQS1G0k1G0kOOQS1G0q1G0qOBvQaO,5:UO7QQ`O1G0sOOQS1G0s1G0sO0aQ`O1G0sOOQS-E9S-E9SOOQS1G0v1G0vOB}Q!fO1G0ZOCeQ`O'#EVOOQO1G0Z1G0ZOOQO,5;k,5;kOCjQdO,5;kOOQO-E8}-E8}OCwQ`O1G1tPOOO-E8s-E8sPOOO1G.g1G.gOOQP7+$`7+$`OOQP7+%h7+%hO)VQdO7+%hOOQS1G0Y1G0YODSQaO'#FmOD^Q`O,5:_ODcQ!fO'#EwOEaQdO'#FfOEkQ`O,59aOOQO1G0O1G0OOEpQ!bO7+%hO)VQdO1G/eOE{QhO1G/iOOQW1G/m1G/mOOQW1G/g1G/gOF^QhO,5;qOOQW-E9T-E9TOOQS7+&e7+&eOGRQhO'#D^OGaQhO'#FlOGlQ`O'#FlOGqQ`O,5:WOOQS-E8v-E8vOOQ[1G.}1G.}OOQ[1G/T1G/TOOQ[1G/W1G/WOOQ[1G/[1G/[OGvQdO,5:tOOQS7+%x7+%xOG{Q`O7+%xOHQQhO'#D]OHYQ`O,59vO)zQhO,59vOOQ[1G/u1G/uOHbQ`O1G/uOHgQhO,5;mOOQO-E9P-E9POOQS7+&S7+&SOHuQbO'#DSOOQO'#Ej'#EjOITQ`O'#EiOOQO'#Ei'#EiOI`Q`O'#FSOIhQdO,5;SOOQS,5;S,5;SOOQ[1G/p1G/pOOQS7+&_7+&_O7QQ`O7+&_OIsQ!fO'#FOO)VQdO'#FOOJzQdO7+%uOOQO7+%u7+%uOOQO,5:q,5:qOOQO1G1V1G1VOK_Q!bO<<ISOKjQdO'#E|OKtQ`O,5<XOOQP1G/y1G/yOOQS-E8u-E8uOK|QdO'#E{OLWQ`O,5<QOOQ]1G.{1G.{OOQP<<IS<<ISOL`Q`O<<ISOLeQdO7+%POOQO'#D`'#D`OLlQ!bO7+%TOLtQhO'#EzOMRQ`O,5<WO)VQdO,5<WOOQW1G/r1G/rOOQO'#E['#E[OMZQ`O1G0`OOQS<<Id<<IdO)VQdO,59wOMzQhO1G/bOOQ[1G/b1G/bONRQ`O1G/bOOQW-E8w-E8wOOQ[7+%a7+%aOOQO,5;T,5;TOBnQdO'#FTOI`Q`O,5;nOOQS,5;n,5;nOOQS-E9Q-E9QOOQS1G0n1G0nOOQS<<Iy<<IyONZQ!fO,5;jOOQS-E8|-E8|OOQO<<Ia<<IaOOQPAN>nAN>nO! bQ`OAN>nO! gQaO,5;hOOQO-E8z-E8zO! qQdO,5;gOOQO-E8y-E8yOOQW<<Hk<<HkOOQW<<Ho<<HoO! {QhO<<HoO!!^QhO,5;fO!!iQ`O,5;fOOQO-E8x-E8xO!!nQdO1G1rOGvQdO'#FQO!!xQ`O7+%zOOQW7+%z7+%zO!#QQ!bO1G/cOOQ[7+$|7+$|O!#]QhO7+$|P!#dQ`O'#EyOOQO,5;o,5;oOOQO-E9R-E9ROOQS1G1Y1G1YOOQPG24YG24YO!#iQ`OAN>ZO)VQdO1G1QO!#nQ`O7+'^OOQO,5;l,5;lOOQO-E9O-E9OOOQW<<If<<IfOOQ[<<Hh<<HhPOQW,5;e,5;eOOQWG23uG23uO!#vQdO7+&l",stateData:"!$Z~O$QOS$RQQ~OWVO^_O`WOcYOdYOl`OmZOp[O!r]O!u^O!{dO#ReO#TfO#VgO#YhO#`iO#bjO#ekO#|RO$XTO~OQmOWVO^_O`WOcYOdYOl`OmZOp[O!r]O!u^O!{dO#ReO#TfO#VgO#YhO#`iO#bjO#ekO#|lO$XTO~O#z$bP~P!jO$RqO~O`YXcYXdYXmYXpYXsYX!aYX!rYX!uYX#{YX$X[X~OgYX~P$ZO#|sO~O$XuO~O$XuO`$WXc$WXd$WXm$WXp$WXs$WX!a$WX!r$WX!u$WX#{$WXg$WX~O#|vO~O`xOcyOdyOmzOp{O!r|O!u!OO#{}O~Os!RO!a!PO~P&^Of!XO#|!TO#}!UO~O#|!YO~OW!^O#|![O$X!]O~OWVO^_O`WOcYOdYOmZOp[O!r]O!u^O#|RO$XTO~OS!fOc!gOd!gOh!cOs!RO!Y!eO!]!jO$O!bO~On!iO~P(dOQ!tOh!mOp!nOs!oOu!wOw!wO}!uO!d!vO#|!lO#}!rO$]!pO~OS!fOc!gOd!gOh!cO!Y!eO!]!jO$O!bO~Os$eP~P)zOw!|O!d!vO#|!{O~Ow#OO#|#OO~Oh#ROs!RO#c#TO~O#|#VO~Oc!xX~P$ZOc#YO~On#ZO#z$bXr$bX~O#z$bXr$bX~P!jO$S#^O$T#^O$U#`O~Of#eO#|!TO#}!UO~Os!RO!a!PO~Or$bP~P!jOh#oO~Oh#pO~Oo!kX!o!kX$X!mX~O#|#qO~O$X#sO~Oo#tO!o#uO~O`xOcyOdyOmzOp{O~Os!qa!a!qa!r!qa!u!qa#{!qag!qa~P-pOs!ta!a!ta!r!ta!u!ta#{!tag!ta~P-pOS!fOc!gOd!gOh!cO!Y!eO!]!jO~OR#yOu#yOw#yO$O#vO$]!pO~P/POn$PO!U#|O!a#}O~P(dOh$RO~O$O$TO~Oh#RO~O`$WOc$WOg$ZOl$WOm$WOn$WO~P)VO`$WOc$WOl$WOm$WOn$WOo$]O~P)VO`$WOc$WOl$WOm$WOn$WOr$_O~P)VOP$`OSvXcvXdvXhvXnvXyvX!YvX!]vX!}vX#PvX$OvX!WvXQvX`vXgvXlvXmvXpvXsvXuvXwvX}vX!dvX#|vX#}vX$]vXovXrvX!avX#zvX$dvX!pvX~Oy$aO!}$bO#P$cOn$eP~P)zOh#pOS$ZXc$ZXd$ZXn$ZXy$ZX!Y$ZX!]$ZX!}$ZX#P$ZX$O$ZXQ$ZX`$ZXg$ZXl$ZXm$ZXp$ZXs$ZXu$ZXw$ZX}$ZX!d$ZX#|$ZX#}$ZX$]$ZXo$ZXr$ZX!a$ZX#z$ZX$d$ZX!p$ZX~Oh$gO~Oh$iO~O!U#|O!a$jOs$eXn$eX~Os!RO~On$mOy$aO~On$nO~Ow$oO!d!vO~Os$pO~Os!RO!U#|O~Os!RO#c$vO~O#|#VOs#fX~O$d$zOn!wa#z!war!wa~P)VOn#sX#z#sXr#sX~P!jOn#ZO#z$bar$ba~O$S#^O$T#^O$U%RO~Oo%TO!o%UO~Os!qi!a!qi!r!qi!u!qi#{!qig!qi~P-pOs!si!a!si!r!si!u!si#{!sig!si~P-pOs!ti!a!ti!r!ti!u!ti#{!tig!ti~P-pOs#qa!a#qa~P&^Or%VO~Og$aP~P'oOg$YP~P)VOc!SXg!QX!U!QX!W!SX~Oc%_O!W%`O~Og%aO!U#|O~O!U#|OS#yXc#yXd#yXh#yXn#yXs#yX!Y#yX!]#yX!a#yX$O#yX~On%eO!a#}O~P(dO!U#|OS!Xac!Xad!Xah!Xan!Xas!Xa!Y!Xa!]!Xa!a!Xa$O!Xag!Xa~O$O%fOg$`P~P/POy$aOQ$[X`$[Xc$[Xg$[Xh$[Xl$[Xm$[Xn$[Xp$[Xs$[Xu$[Xw$[X}$[X!d$[X#|$[X#}$[X$]$[Xo$[Xr$[X~O`$WOc$WOg%kOl$WOm$WOn$WO~P)VO`$WOc$WOl$WOm$WOn$WOo%lO~P)VO`$WOc$WOl$WOm$WOn$WOr%mO~P)VOh%oOS!|Xc!|Xd!|Xn!|X!Y!|X!]!|X$O!|X~On%pO~Og%uOw%vO!e%vO~Os#uX!a#uXn#uX~P)zO!a$jOs$ean$ea~On%yO~Or&QO#|%{O$]%zO~Og&RO~P&^Oy$aO!a&VO$d$zOn!wi#z!wir!wi~P)VO$c&YO~On#sa#z#sar#sa~P!jOn#ZO#z$bir$bi~O!a&]Og$aX~P&^Og&_O~Oy$aOQ#kXg#kXh#kXp#kXs#kXu#kXw#kX}#kX!a#kX!d#kX#|#kX#}#kX$]#kX~O!a&aOg$YX~P)VOg&cO~Oo&dOy$aO!p&eO~OR#yOu#yOw#yO$O&gO$]!pO~O!U#|OS#yac#yad#yah#yan#yas#ya!Y#ya!]#ya!a#ya$O#ya~Oc!SXg!QX!U!QX!a!QX~O!U#|O!a&iOg$`X~Oc&kO~Og&lO~O#|&mO~On&oO~Oc&pO!U#|O~Og&rOn&qO~Og&uO~O!U#|Os#ua!a#uan#ua~OP$`OsvX!avXgvX~O$]%zOs#]X!a#]X~Os!RO!a&wO~Or&{O#|%{O$]%zO~Oy$aOQ#rXh#rXn#rXp#rXs#rXu#rXw#rX}#rX!a#rX!d#rX#z#rX#|#rX#}#rX$]#rX$d#rXr#rX~O!a&VO$d$zOn!wq#z!wqr!wq~P)VOo'QOy$aO!p'RO~Og#pX!a#pX~P'oO!a&]Og$aa~Og#oX!a#oX~P)VO!a&aOg$Ya~Oo'QO~Og'WO~P)VOg'XO!W'YO~O$O%fOg#nX!a#nX~P/PO!a&iOg$`a~O`'_Og'aO~OS#mac#mad#mah#ma!Y#ma!]#ma$O#ma~Og'cO~PMcOg'cOn'dO~Oy$aOQ#rah#ran#rap#ras#rau#raw#ra}#ra!a#ra!d#ra#z#ra#|#ra#}#ra$]#ra$d#rar#ra~Oo'iO~Og#pa!a#pa~P&^Og#oa!a#oa~P)VOR#yOu#yOw#yO$O&gO$]%zO~O!U#|Og#na!a#na~Oc'kO~O!a&iOg$`i~P)VO`'_Og'oO~Oy$aOg!Pin!Pi~Og'pO~PMcOn'qO~Og'rO~O!a&iOg$`q~Og#nq!a#nq~P)VO$Q!e$R$]`$]y!u~",goto:"4h$fPPPPP$gP$jP$s%V$s%i%{P$sP&R$sPP&XPPP&_&i&iPPPPP&iPP&iP'VP&iP&i(Q&iP(n(q(w(w)Z(wP(wP(wP(w(wP)j(w)vP(w)yPP*m*s$s*y$s+P+P+V+ZPP$sP$s$sP+a,],j,q$jP,zP,}P$jP$jP$jP-T$jP-W-Z-^-e$jP$jPP$jP-j$jP-m-s.S.j.x/O/Y/`/f/l/r/|0S0Y0`0f0lPPPPPPPPPPP0r0{P1q1t2vP3O3x4R4U4XPP4_RrQ_aOPco!R#Z$}q_OP]^co|}!O!P!R#R#Z#o$}&]qSOP]^co|}!O!P!R#R#Z#o$}&]qUOP]^co|}!O!P!R#R#Z#o$}&]QtTR#auQwWR#bxQ!VYR#cyQ#c!XS$f!s!tR%S#e!V!wdf!m!n!o#Y#p#u$Y$[$^$a$y%U%Z%_&V&W&a&f&k&p'U'^'k's!U!wdf!m!n!o#Y#p#u$Y$[$^$a$y%U%Z%_&V&W&a&f&k&p'U'^'k'sU#y!c%`'YU%}$p&P&wR&v%|!V!sdf!m!n!o#Y#p#u$Y$[$^$a$y%U%Z%_&V&W&a&f&k&p'U'^'k'sR$h!uQ%s$gR&s%tq!h`ei!c!d!e!q#|#}$O$R$e$g$j%t&iQ#w!cQ%h$RQ&h%`Q'[&iR'j'YQ#UjQ$U!jQ$t#TR&T$vR$S!f!U!wdf!m!n!o#Y#p#u$Y$[$^$a$y%U%Z%_&V&W&a&f&k&p'U'^'k'sQ!|gR$o!}Q!WYR#dyQ#c!WR%S#dQ!ZZR#fzQ!_[R#g{T!^[{Q#r!]R%]#sQ!SXQ!i`Q#SjQ#m!QQ$P!dQ$l!yQ$r#QQ$u#UQ$x#XQ%e$OQ&S$tQ&y&OQ&|&TR'h&xSnP!RQ#]oQ$|#ZR&Z$}ZmPo!R#Z$}Q${#YQ&X$yR'P&WR$e!qQ&n%oR'm'_R!}gR#PhR$q#PS&O$p&PR'f&wV%|$p&P&wR#XkQ#_qR%Q#_QcOSoP!RU!kco$}R$}#ZQ%Z#pY&`%Z&f'U'^'sQ&f%_Q'U&aQ'^&kR's'kQ$Y!mQ$[!nQ$^!oV%j$Y$[$^Q%t$gR&t%tQ&j%gS']&j'lR'l'^Q&b%ZR'V&bQ&^%WR'T&^Q!QXR#l!QQ&W$yR'O&WQ#[nS%O#[%PR%P#]Q'`&nR'n'`Q$k!xR%x$kQ&P$pR&z&PQ&x&OR'g&xQ#WkR$w#WQ$O!dR%d$O_bOPco!R#Z$}^XOPco!R#Z$}Q!`]Q!a^Q#h|Q#i}Q#j!OQ#k!PQ$s#RQ%W#oR'S&]R%[#pQ!qdQ!zf[$V!m!n!o$Y$[$^Q$y#Yd%Y#p%Z%_&a&f&k'U'^'k'sQ%^#uQ%n$aS&U$y&WQ&[%UQ&}&VR'b&p]$X!m!n!o$Y$[$^Q!d`U!xe!q$eQ#QiQ#x!cS#{!d$OQ$Q!eQ%b#|Q%c#}Q%g$RS%r$g%tQ%w$jR'Z&iQ#z!cQ&h%`R'j'YR%i$RR%X#oQpPR#n!RQ!yeQ$d!qR%q$e",nodeNames:"⚠ Unit VariableName VariableName QueryCallee Comment StyleSheet RuleSet UniversalSelector TagSelector TagName NamespacedTagSelector NamespaceName TagName NestingSelector ClassSelector . ClassName PseudoClassSelector : :: PseudoClassName PseudoClassName ) ( ArgList ValueName ParenthesizedValue AtKeyword # ; ] [ BracketedValue } { BracedValue ColorLiteral NumberLiteral StringLiteral BinaryExpression BinOp CallExpression Callee IfExpression if ArgList IfBranch KeywordQuery FeatureQuery FeatureName BinaryQuery LogicOp ComparisonQuery CompareOp UnaryQuery UnaryQueryOp ParenthesizedQuery SelectorQuery selector ParenthesizedSelector CallQuery ArgList , PseudoQuery CallLiteral CallTag ParenthesizedContent PseudoClassName ArgList IdSelector IdName AttributeSelector AttributeName NamespacedAttribute NamespaceName AttributeName MatchOp MatchFlag ChildSelector ChildOp DescendantSelector SiblingSelector SiblingOp Block Declaration PropertyName Important ImportStatement import Layer layer LayerName layer MediaStatement media CharsetStatement charset NamespaceStatement namespace NamespaceName KeyframesStatement keyframes KeyframeName KeyframeList KeyframeSelector KeyframeRangeName SupportsStatement supports ScopeStatement scope to FontFeatureStatement font-feature-values FontName AtRule Styles",maxTerm:159,nodeProps:[["isolate",-2,5,39,""],["openedBy",23,"(",31,"[",34,"{"],["closedBy",24,")",32,"]",35,"}"]],propSources:[le],skippedNodes:[0,5,117],repeatNodeCount:17,tokenData:"K`~R!bOX%ZX^&R^p%Zpq&Rqr)ers)vst+jtu2Xuv%Zvw3Rwx3dxy5Ryz5dz{5i{|6S|}:u}!O;W!O!P;u!P!Q<^!Q![=V![!]>Q!]!^>|!^!_?_!_!`@Z!`!a@n!a!b%Z!b!cAo!c!k%Z!k!lC|!l!u%Z!u!vC|!v!}%Z!}#OD_#O#P%Z#P#QDp#Q#R2X#R#]%Z#]#^ER#^#g%Z#g#hC|#h#o%Z#o#pIf#p#qIw#q#rJ`#r#sJq#s#y%Z#y#z&R#z$f%Z$f$g&R$g#BY%Z#BY#BZ&R#BZ$IS%Z$IS$I_&R$I_$I|%Z$I|$JO&R$JO$JT%Z$JT$JU&R$JU$KV%Z$KV$KW&R$KW&FU%Z&FU&FV&R&FV;'S%Z;'S;=`KY<%lO%Z`%^SOy%jz;'S%j;'S;=`%{<%lO%j`%oS!e`Oy%jz;'S%j;'S;=`%{<%lO%j`&OP;=`<%l%j~&Wh$Q~OX%jX^'r^p%jpq'rqy%jz#y%j#y#z'r#z$f%j$f$g'r$g#BY%j#BY#BZ'r#BZ$IS%j$IS$I_'r$I_$I|%j$I|$JO'r$JO$JT%j$JT$JU'r$JU$KV%j$KV$KW'r$KW&FU%j&FU&FV'r&FV;'S%j;'S;=`%{<%lO%j~'yh$Q~!e`OX%jX^'r^p%jpq'rqy%jz#y%j#y#z'r#z$f%j$f$g'r$g#BY%j#BY#BZ'r#BZ$IS%j$IS$I_'r$I_$I|%j$I|$JO'r$JO$JT%j$JT$JU'r$JU$KV%j$KV$KW'r$KW&FU%j&FU&FV'r&FV;'S%j;'S;=`%{<%lO%jj)jS$dYOy%jz;'S%j;'S;=`%{<%lO%j~)yWOY)vZr)vrs*cs#O)v#O#P*h#P;'S)v;'S;=`+d<%lO)v~*hOw~~*kRO;'S)v;'S;=`*t;=`O)v~*wXOY)vZr)vrs*cs#O)v#O#P*h#P;'S)v;'S;=`+d;=`<%l)v<%lO)v~+gP;=`<%l)vj+oYmYOy%jz!Q%j!Q![,_![!c%j!c!i,_!i#T%j#T#Z,_#Z;'S%j;'S;=`%{<%lO%jj,dY!e`Oy%jz!Q%j!Q![-S![!c%j!c!i-S!i#T%j#T#Z-S#Z;'S%j;'S;=`%{<%lO%jj-XY!e`Oy%jz!Q%j!Q![-w![!c%j!c!i-w!i#T%j#T#Z-w#Z;'S%j;'S;=`%{<%lO%jj.OYuY!e`Oy%jz!Q%j!Q![.n![!c%j!c!i.n!i#T%j#T#Z.n#Z;'S%j;'S;=`%{<%lO%jj.uYuY!e`Oy%jz!Q%j!Q![/e![!c%j!c!i/e!i#T%j#T#Z/e#Z;'S%j;'S;=`%{<%lO%jj/jY!e`Oy%jz!Q%j!Q![0Y![!c%j!c!i0Y!i#T%j#T#Z0Y#Z;'S%j;'S;=`%{<%lO%jj0aYuY!e`Oy%jz!Q%j!Q![1P![!c%j!c!i1P!i#T%j#T#Z1P#Z;'S%j;'S;=`%{<%lO%jj1UY!e`Oy%jz!Q%j!Q![1t![!c%j!c!i1t!i#T%j#T#Z1t#Z;'S%j;'S;=`%{<%lO%jj1{SuY!e`Oy%jz;'S%j;'S;=`%{<%lO%jd2[UOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%jd2uS!oS!e`Oy%jz;'S%j;'S;=`%{<%lO%jb3WS^QOy%jz;'S%j;'S;=`%{<%lO%j~3gWOY3dZw3dwx*cx#O3d#O#P4P#P;'S3d;'S;=`4{<%lO3d~4SRO;'S3d;'S;=`4];=`O3d~4`XOY3dZw3dwx*cx#O3d#O#P4P#P;'S3d;'S;=`4{;=`<%l3d<%lO3d~5OP;=`<%l3dj5WShYOy%jz;'S%j;'S;=`%{<%lO%j~5iOg~n5pUWQyWOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%jj6ZWyW!uQOy%jz!O%j!O!P6s!P!Q%j!Q![9x![;'S%j;'S;=`%{<%lO%jj6xU!e`Oy%jz!Q%j!Q![7[![;'S%j;'S;=`%{<%lO%jj7cY!e`$]YOy%jz!Q%j!Q![7[![!g%j!g!h8R!h#X%j#X#Y8R#Y;'S%j;'S;=`%{<%lO%jj8WY!e`Oy%jz{%j{|8v|}%j}!O8v!O!Q%j!Q![9_![;'S%j;'S;=`%{<%lO%jj8{U!e`Oy%jz!Q%j!Q![9_![;'S%j;'S;=`%{<%lO%jj9fU!e`$]YOy%jz!Q%j!Q![9_![;'S%j;'S;=`%{<%lO%jj:P[!e`$]YOy%jz!O%j!O!P7[!P!Q%j!Q![9x![!g%j!g!h8R!h#X%j#X#Y8R#Y;'S%j;'S;=`%{<%lO%jj:zS!aYOy%jz;'S%j;'S;=`%{<%lO%jj;]WyWOy%jz!O%j!O!P6s!P!Q%j!Q![9x![;'S%j;'S;=`%{<%lO%jj;zU`YOy%jz!Q%j!Q![7[![;'S%j;'S;=`%{<%lO%j~<cTyWOy%jz{<r{;'S%j;'S;=`%{<%lO%j~<yS!e`$R~Oy%jz;'S%j;'S;=`%{<%lO%jj=[[$]YOy%jz!O%j!O!P7[!P!Q%j!Q![9x![!g%j!g!h8R!h#X%j#X#Y8R#Y;'S%j;'S;=`%{<%lO%jj>VUcYOy%jz![%j![!]>i!];'S%j;'S;=`%{<%lO%jj>pSdY!e`Oy%jz;'S%j;'S;=`%{<%lO%jj?RSnYOy%jz;'S%j;'S;=`%{<%lO%jh?dU!WWOy%jz!_%j!_!`?v!`;'S%j;'S;=`%{<%lO%jh?}S!WW!e`Oy%jz;'S%j;'S;=`%{<%lO%jl@bS!WW!oSOy%jz;'S%j;'S;=`%{<%lO%jj@uV!rQ!WWOy%jz!_%j!_!`?v!`!aA[!a;'S%j;'S;=`%{<%lO%jbAcS!rQ!e`Oy%jz;'S%j;'S;=`%{<%lO%jjArYOy%jz}%j}!OBb!O!c%j!c!}CP!}#T%j#T#oCP#o;'S%j;'S;=`%{<%lO%jjBgW!e`Oy%jz!c%j!c!}CP!}#T%j#T#oCP#o;'S%j;'S;=`%{<%lO%jjCW[lY!e`Oy%jz}%j}!OCP!O!Q%j!Q![CP![!c%j!c!}CP!}#T%j#T#oCP#o;'S%j;'S;=`%{<%lO%jhDRS!pWOy%jz;'S%j;'S;=`%{<%lO%jjDdSpYOy%jz;'S%j;'S;=`%{<%lO%jnDuSo^Oy%jz;'S%j;'S;=`%{<%lO%jjEWU!pWOy%jz#a%j#a#bEj#b;'S%j;'S;=`%{<%lO%jbEoU!e`Oy%jz#d%j#d#eFR#e;'S%j;'S;=`%{<%lO%jbFWU!e`Oy%jz#c%j#c#dFj#d;'S%j;'S;=`%{<%lO%jbFoU!e`Oy%jz#f%j#f#gGR#g;'S%j;'S;=`%{<%lO%jbGWU!e`Oy%jz#h%j#h#iGj#i;'S%j;'S;=`%{<%lO%jbGoU!e`Oy%jz#T%j#T#UHR#U;'S%j;'S;=`%{<%lO%jbHWU!e`Oy%jz#b%j#b#cHj#c;'S%j;'S;=`%{<%lO%jbHoU!e`Oy%jz#h%j#h#iIR#i;'S%j;'S;=`%{<%lO%jbIYS$cQ!e`Oy%jz;'S%j;'S;=`%{<%lO%jjIkSsYOy%jz;'S%j;'S;=`%{<%lO%jfI|U$XUOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%jjJeSrYOy%jz;'S%j;'S;=`%{<%lO%jfJvU!uQOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%j`K]P;=`<%l%Z",tokenizers:[te,oe,ae,re,1,2,3,4,new z("m~RRYZ[z{a~~g~aO$T~~dP!P!Qg~lO$U~~",28,142)],topRules:{StyleSheet:[0,6],Styles:[1,116]},dynamicPrecedences:{84:1},specialized:[{term:137,get:e=>ie[e]||-1},{term:138,get:e=>ne[e]||-1},{term:4,get:e=>se[e]||-1},{term:28,get:e=>de[e]||-1},{term:136,get:e=>Qe[e]||-1}],tokenPrec:2256});let p=null;function u(){if(!p&&typeof document=="object"&&document.body){let{style:e}=document.body,r=[],i=new Set;for(let O in e)O!="cssText"&&O!="cssFloat"&&typeof e[O]=="string"&&(/[A-Z]/.test(O)&&(O=O.replace(/[A-Z]/g,a=>"-"+a.toLowerCase())),i.has(O)||(r.push(O),i.add(O)));p=r.sort().map(O=>({type:"property",label:O,apply:O+": "}))}return p||[]}const g=["active","after","any-link","autofill","backdrop","before","checked","cue","default","defined","disabled","empty","enabled","file-selector-button","first","first-child","first-letter","first-line","first-of-type","focus","focus-visible","focus-within","fullscreen","has","host","host-context","hover","in-range","indeterminate","invalid","is","lang","last-child","last-of-type","left","link","marker","modal","not","nth-child","nth-last-child","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","part","placeholder","placeholder-shown","read-only","read-write","required","right","root","scope","selection","slotted","target","target-text","valid","visited","where"].map(e=>({type:"class",label:e})),y=["above","absolute","activeborder","additive","activecaption","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","antialiased","appworkspace","asterisks","attr","auto","auto-flow","avoid","avoid-column","avoid-page","avoid-region","axis-pan","background","backwards","baseline","below","bidi-override","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","clear","clip","close-quote","col-resize","collapse","color","color-burn","color-dodge","column","column-reverse","compact","condensed","contain","content","contents","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","darken","dashed","decimal","decimal-leading-zero","default","default-button","dense","destination-atop","destination-in","destination-out","destination-over","difference","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic-abegede-gez","ethiopic-halehame-aa-er","ethiopic-halehame-gez","ew-resize","exclusion","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fill-box","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","graytext","grid","groove","hand","hard-light","help","hidden","hide","higher","highlight","highlighttext","horizontal","hsl","hsla","hue","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-grid","inline-table","inset","inside","intrinsic","invert","italic","justify","keep-all","landscape","large","larger","left","level","lighter","lighten","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-hexadecimal","lower-latin","lower-norwegian","lowercase","ltr","luminosity","manipulation","match","matrix","matrix3d","medium","menu","menutext","message-box","middle","min-intrinsic","mix","monospace","move","multiple","multiple_mask_images","multiply","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","opacity","open-quote","optimizeLegibility","optimizeSpeed","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","perspective","pinch-zoom","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","saturation","scale","scale3d","scaleX","scaleY","scaleZ","screen","scroll","scrollbar","scroll-position","se-resize","self-start","self-end","semi-condensed","semi-expanded","separate","serif","show","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","soft-light","solid","source-atop","source-in","source-out","source-over","space","space-around","space-between","space-evenly","spell-out","square","start","static","status-bar","stretch","stroke","stroke-box","sub","subpixel-antialiased","svg_masks","super","sw-resize","symbolic","symbols","system-ui","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","text","text-bottom","text-top","textarea","textfield","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","to","top","transform","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","unidirectional-pan","unset","up","upper-latin","uppercase","url","var","vertical","vertical-text","view-box","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"].map(e=>({type:"keyword",label:e})).concat(["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"].map(e=>({type:"constant",label:e}))),$e=["a","abbr","address","article","aside","b","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","dd","del","details","dfn","dialog","div","dl","dt","em","figcaption","figure","footer","form","header","hgroup","h1","h2","h3","h4","h5","h6","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","main","meter","nav","ol","output","p","pre","ruby","section","select","small","source","span","strong","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","tr","u","ul"].map(e=>({type:"type",label:e})),pe=["@charset","@color-profile","@container","@counter-style","@font-face","@font-feature-values","@font-palette-values","@import","@keyframes","@layer","@media","@namespace","@page","@position-try","@property","@scope","@starting-style","@supports","@view-transition"].map(e=>({type:"keyword",label:e})),d=/^(\w[\w-]*|-\w[\w-]*|)$/,ue=/^-(-[\w-]*)?$/;function je(e,r){var i;if((e.name=="("||e.type.isError)&&(e=e.parent||e),e.name!="ArgList")return!1;let O=(i=e.parent)===null||i===void 0?void 0:i.firstChild;return(O==null?void 0:O.name)!="Callee"?!1:r.sliceString(O.from,O.to)=="var"}const h=new E,me=["Declaration"];function Se(e){for(let r=e;;){if(r.type.isTop)return r;if(!(r=r.parent))return e}}function w(e,r,i){if(r.to-r.from>4096){let O=h.get(r);if(O)return O;let a=[],o=new Set,l=r.cursor(U.IncludeAnonymous);if(l.firstChild())do for(let n of w(e,l.node,i))o.has(n.label)||(o.add(n.label),a.push(n));while(l.nextSibling());return h.set(r,a),a}else{let O=[],a=new Set;return r.cursor().iterate(o=>{var l;if(i(o)&&o.matchContext(me)&&((l=o.node.nextSibling)===null||l===void 0?void 0:l.name)==":"){let n=e.sliceString(o.from,o.to);a.has(n)||(a.add(n),O.push({label:n,type:"variable"}))}}),O}}const ge=e=>r=>{let{state:i,pos:O}=r,a=V(i).resolveInner(O,-1),o=a.type.isError&&a.from==a.to-1&&i.doc.sliceString(a.from,a.to)=="-";if(a.name=="PropertyName"||(o||a.name=="TagName")&&/^(Block|Styles)$/.test(a.resolve(a.to).name))return{from:a.from,options:u(),validFor:d};if(a.name=="ValueName")return{from:a.from,options:y,validFor:d};if(a.name=="PseudoClassName")return{from:a.from,options:g,validFor:d};if(e(a)||(r.explicit||o)&&je(a,i.doc))return{from:e(a)||o?a.from:O,options:w(i.doc,Se(a),e),validFor:ue};if(a.name=="TagName"){for(let{parent:s}=a;s;s=s.parent)if(s.name=="Block")return{from:a.from,options:u(),validFor:d};return{from:a.from,options:$e,validFor:d}}if(a.name=="AtKeyword")return{from:a.from,options:pe,validFor:d};if(!r.explicit)return null;let l=a.resolve(O),n=l.childBefore(O);return n&&n.name==":"&&l.name=="PseudoClassSelector"?{from:O,options:g,validFor:d}:n&&n.name==":"&&l.name=="Declaration"||l.name=="ArgList"?{from:O,options:y,validFor:d}:l.name=="Block"||l.name=="Styles"?{from:O,options:u(),validFor:d}:null},ye=ge(e=>e.name=="VariableName"),f=W.define({name:"css",parser:ce.configure({props:[Z.add({Declaration:x()}),G.add({"Block KeyframeList":_})]}),languageData:{commentTokens:{block:{open:"/*",close:"*/"}},indentOnInput:/^\s*\}$/,wordChars:"-"}});function Xe(){return new Y(f,f.data.of({autocomplete:ye}))}export{Xe as css,ye as cssCompletionSource,f as cssLanguage,ge as defineCSSCompletionSource};
1
+ import{L as k,E as $,a as z}from"./index-D_3Gtukh.js";import{s as R,t,a as Y,L as W,i as Z,c as x,f as G,l as _,e as V,K as E,I as U}from"./index-mHL0gmHU.js";import"./index-_1qDsPCM.js";const T=135,m=1,q=136,C=137,P=2,N=138,F=3,I=4,X=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],D=58,K=40,b=95,B=91,c=45,L=46,A=35,J=37,H=38,M=92,ee=10,Oe=42;function Q(e){return e>=65&&e<=90||e>=97&&e<=122||e>=161}function j(e){return e>=48&&e<=57}function S(e){return j(e)||e>=97&&e<=102||e>=65&&e<=70}const v=(e,r,i)=>(O,a)=>{for(let o=!1,l=0,n=0;;n++){let{next:s}=O;if(Q(s)||s==c||s==b||o&&j(s))!o&&(s!=c||n>0)&&(o=!0),l===n&&s==c&&l++,O.advance();else if(s==M&&O.peek(1)!=ee){if(O.advance(),S(O.next)){do O.advance();while(S(O.next));O.next==32&&O.advance()}else O.next>-1&&O.advance();o=!0}else{o&&O.acceptToken(l==2&&a.canShift(P)?r:s==K?i:e);break}}},ae=new $(v(q,P,C),{contextual:!0}),re=new $(v(N,F,I),{contextual:!0}),te=new $(e=>{if(X.includes(e.peek(-1))){let{next:r}=e;(Q(r)||r==b||r==A||r==L||r==Oe||r==B||r==D&&Q(e.peek(1))||r==c||r==H)&&e.acceptToken(T)}}),oe=new $(e=>{if(!X.includes(e.peek(-1))){let{next:r}=e;if(r==J&&(e.advance(),e.acceptToken(m)),Q(r)){do e.advance();while(Q(e.next)||j(e.next));e.acceptToken(m)}}}),le=R({"AtKeyword import charset namespace keyframes media supports font-feature-values":t.definitionKeyword,"from to selector scope MatchFlag":t.keyword,NamespaceName:t.namespace,KeyframeName:t.labelName,KeyframeRangeName:t.operatorKeyword,TagName:t.tagName,ClassName:t.className,PseudoClassName:t.constant(t.className),IdName:t.labelName,"FeatureName PropertyName":t.propertyName,AttributeName:t.attributeName,NumberLiteral:t.number,KeywordQuery:t.keyword,UnaryQueryOp:t.operatorKeyword,"CallTag ValueName FontName":t.atom,VariableName:t.variableName,Callee:t.operatorKeyword,Unit:t.unit,"UniversalSelector NestingSelector":t.definitionOperator,"MatchOp CompareOp":t.compareOperator,"ChildOp SiblingOp, LogicOp":t.logicOperator,BinOp:t.arithmeticOperator,Important:t.modifier,Comment:t.blockComment,ColorLiteral:t.color,"ParenthesizedContent StringLiteral":t.string,":":t.punctuation,"PseudoOp #":t.derefOperator,"; , |":t.separator,"( )":t.paren,"[ ]":t.squareBracket,"{ }":t.brace}),ie={__proto__:null,lang:44,"nth-child":44,"nth-last-child":44,"nth-of-type":44,"nth-last-of-type":44,dir:44,"host-context":44,if:90,url:132,"url-prefix":132,domain:132,regexp:132},ne={__proto__:null,or:104,and:104,not:112,only:112,layer:186},se={__proto__:null,selector:118,layer:182},de={__proto__:null,"@import":178,"@media":190,"@charset":194,"@namespace":198,"@keyframes":204,"@supports":216,"@scope":220,"@font-feature-values":226},Qe={__proto__:null,to:223},ce=k.deserialize({version:14,states:"IpQYQdOOO#}QdOOP$UO`OOO%OQaO'#CfOOQP'#Ce'#CeO%VQdO'#CgO%[Q`O'#CgO%aQaO'#FdO&XQdO'#CkO&xQaO'#CcO'SQdO'#CnO'_QdO'#DtO'dQdO'#DvO'oQdO'#D}O'oQdO'#EQOOQP'#Fd'#FdO)OQhO'#EsOOQS'#Fc'#FcOOQS'#Ev'#EvQYQdOOO)VQdO'#EWO*cQhO'#E^O)VQdO'#E`O*jQdO'#EbO*uQdO'#EeO)zQhO'#EkO*}QdO'#EmO+YQdO'#EpO+_QaO'#CfO+fQ`O'#ETO+kQ`O'#FnO+vQdO'#FnQOQ`OOP,QO&jO'#CaPOOO)CAR)CAROOQP'#Ci'#CiOOQP,59R,59RO%VQdO,59ROOQP'#Cm'#CmOOQP,59V,59VO&XQdO,59VO,]QdO,59YO'_QdO,5:`O'dQdO,5:bO'oQdO,5:iO'oQdO,5:kO'oQdO,5:lO'oQdO'#E}O,hQ`O,58}O,pQdO'#ESOOQS,58},58}OOQP'#Cq'#CqOOQO'#Dr'#DrOOQP,59Y,59YO,wQ`O,59YO,|Q`O,59YOOQP'#Du'#DuOOQP,5:`,5:`O-RQpO'#DwO-^QdO'#DxO-cQ`O'#DxO-hQpO,5:bO.RQaO,5:iO.iQaO,5:lOOQW'#D^'#D^O/eQhO'#DgO/xQhO,5;_O)zQhO'#DeO0VQ`O'#DkO0[QhO'#DnOOQW'#Fj'#FjOOQS,5;_,5;_O0aQ`O'#DhOOQS-E8t-E8tOOQ['#Cv'#CvO0fQdO'#CwO0|QdO'#C}O1dQdO'#DQO1zQ!pO'#DSO4TQ!jO,5:rOOQO'#DX'#DXO,|Q`O'#DWO4eQ!nO'#FgO6hQ`O'#DYO6mQ`O'#DoOOQ['#Fg'#FgO6rQhO'#FqO7QQ`O,5:xO7VQ!bO,5:zOOQS'#Ed'#EdO7_Q`O,5:|O7dQdO,5:|OOQO'#Eg'#EgO7lQ`O,5;PO7qQhO,5;VO'oQdO'#DjOOQS,5;X,5;XO0aQ`O,5;XO7yQdO,5;XOOQS'#FU'#FUO8RQdO'#ErO7QQ`O,5;[O8ZQdO,5:oO8kQdO'#FPO8xQ`O,5<YO8xQ`O,5<YPOOO'#Eu'#EuP9TO&jO,58{POOO,58{,58{OOQP1G.m1G.mOOQP1G.q1G.qOOQP1G.t1G.tO,wQ`O1G.tO,|Q`O1G.tOOQP1G/z1G/zO9`QpO1G/|O9hQaO1G0TO:OQaO1G0VO:fQaO1G0WO:|QaO,5;iOOQO-E8{-E8{OOQS1G.i1G.iO;WQ`O,5:nO;]QdO'#DsO;dQdO'#CuOOQO'#Dz'#DzOOQO,5:d,5:dO-^QdO,5:dOOQP1G/|1G/|O)VQdO1G/|O;kQ!jO'#D^O;yQ!bO,59yO<RQhO,5:ROOQO'#Fk'#FkO;|Q!bO,59}O<ZQhO'#FVO)zQhO,59{O)zQhO'#FVO=OQhO1G0yOOQS1G0y1G0yO=YQhO,5:PO>QQhO'#DlOOQW,5:V,5:VOOQW,5:Y,5:YOOQW,5:S,5:SO>[Q!fO'#FhOOQS'#Fh'#FhOOQS'#Ex'#ExO?lQdO,59cOOQ[,59c,59cO@SQdO,59iOOQ[,59i,59iO@jQdO,59lOOQ[,59l,59lOOQ[,59n,59nO)VQdO,59pOAQQhO'#EYOOQW'#EY'#EYOAlQ`O1G0^O4^QhO1G0^OOQ[,59r,59rO)zQhO'#D[OOQ[,59t,59tOAqQ#tO,5:ZOA|QhO'#FROBZQ`O,5<]OOQS1G0d1G0dOOQS1G0f1G0fOOQS1G0h1G0hOBfQ`O1G0hOBkQdO'#EhOOQS1G0k1G0kOOQS1G0q1G0qOBvQaO,5:UO7QQ`O1G0sOOQS1G0s1G0sO0aQ`O1G0sOOQS-E9S-E9SOOQS1G0v1G0vOB}Q!fO1G0ZOCeQ`O'#EVOOQO1G0Z1G0ZOOQO,5;k,5;kOCjQdO,5;kOOQO-E8}-E8}OCwQ`O1G1tPOOO-E8s-E8sPOOO1G.g1G.gOOQP7+$`7+$`OOQP7+%h7+%hO)VQdO7+%hOOQS1G0Y1G0YODSQaO'#FmOD^Q`O,5:_ODcQ!fO'#EwOEaQdO'#FfOEkQ`O,59aOOQO1G0O1G0OOEpQ!bO7+%hO)VQdO1G/eOE{QhO1G/iOOQW1G/m1G/mOOQW1G/g1G/gOF^QhO,5;qOOQW-E9T-E9TOOQS7+&e7+&eOGRQhO'#D^OGaQhO'#FlOGlQ`O'#FlOGqQ`O,5:WOOQS-E8v-E8vOOQ[1G.}1G.}OOQ[1G/T1G/TOOQ[1G/W1G/WOOQ[1G/[1G/[OGvQdO,5:tOOQS7+%x7+%xOG{Q`O7+%xOHQQhO'#D]OHYQ`O,59vO)zQhO,59vOOQ[1G/u1G/uOHbQ`O1G/uOHgQhO,5;mOOQO-E9P-E9POOQS7+&S7+&SOHuQbO'#DSOOQO'#Ej'#EjOITQ`O'#EiOOQO'#Ei'#EiOI`Q`O'#FSOIhQdO,5;SOOQS,5;S,5;SOOQ[1G/p1G/pOOQS7+&_7+&_O7QQ`O7+&_OIsQ!fO'#FOO)VQdO'#FOOJzQdO7+%uOOQO7+%u7+%uOOQO,5:q,5:qOOQO1G1V1G1VOK_Q!bO<<ISOKjQdO'#E|OKtQ`O,5<XOOQP1G/y1G/yOOQS-E8u-E8uOK|QdO'#E{OLWQ`O,5<QOOQ]1G.{1G.{OOQP<<IS<<ISOL`Q`O<<ISOLeQdO7+%POOQO'#D`'#D`OLlQ!bO7+%TOLtQhO'#EzOMRQ`O,5<WO)VQdO,5<WOOQW1G/r1G/rOOQO'#E['#E[OMZQ`O1G0`OOQS<<Id<<IdO)VQdO,59wOMzQhO1G/bOOQ[1G/b1G/bONRQ`O1G/bOOQW-E8w-E8wOOQ[7+%a7+%aOOQO,5;T,5;TOBnQdO'#FTOI`Q`O,5;nOOQS,5;n,5;nOOQS-E9Q-E9QOOQS1G0n1G0nOOQS<<Iy<<IyONZQ!fO,5;jOOQS-E8|-E8|OOQO<<Ia<<IaOOQPAN>nAN>nO! bQ`OAN>nO! gQaO,5;hOOQO-E8z-E8zO! qQdO,5;gOOQO-E8y-E8yOOQW<<Hk<<HkOOQW<<Ho<<HoO! {QhO<<HoO!!^QhO,5;fO!!iQ`O,5;fOOQO-E8x-E8xO!!nQdO1G1rOGvQdO'#FQO!!xQ`O7+%zOOQW7+%z7+%zO!#QQ!bO1G/cOOQ[7+$|7+$|O!#]QhO7+$|P!#dQ`O'#EyOOQO,5;o,5;oOOQO-E9R-E9ROOQS1G1Y1G1YOOQPG24YG24YO!#iQ`OAN>ZO)VQdO1G1QO!#nQ`O7+'^OOQO,5;l,5;lOOQO-E9O-E9OOOQW<<If<<IfOOQ[<<Hh<<HhPOQW,5;e,5;eOOQWG23uG23uO!#vQdO7+&l",stateData:"!$Z~O$QOS$RQQ~OWVO^_O`WOcYOdYOl`OmZOp[O!r]O!u^O!{dO#ReO#TfO#VgO#YhO#`iO#bjO#ekO#|RO$XTO~OQmOWVO^_O`WOcYOdYOl`OmZOp[O!r]O!u^O!{dO#ReO#TfO#VgO#YhO#`iO#bjO#ekO#|lO$XTO~O#z$bP~P!jO$RqO~O`YXcYXdYXmYXpYXsYX!aYX!rYX!uYX#{YX$X[X~OgYX~P$ZO#|sO~O$XuO~O$XuO`$WXc$WXd$WXm$WXp$WXs$WX!a$WX!r$WX!u$WX#{$WXg$WX~O#|vO~O`xOcyOdyOmzOp{O!r|O!u!OO#{}O~Os!RO!a!PO~P&^Of!XO#|!TO#}!UO~O#|!YO~OW!^O#|![O$X!]O~OWVO^_O`WOcYOdYOmZOp[O!r]O!u^O#|RO$XTO~OS!fOc!gOd!gOh!cOs!RO!Y!eO!]!jO$O!bO~On!iO~P(dOQ!tOh!mOp!nOs!oOu!wOw!wO}!uO!d!vO#|!lO#}!rO$]!pO~OS!fOc!gOd!gOh!cO!Y!eO!]!jO$O!bO~Os$eP~P)zOw!|O!d!vO#|!{O~Ow#OO#|#OO~Oh#ROs!RO#c#TO~O#|#VO~Oc!xX~P$ZOc#YO~On#ZO#z$bXr$bX~O#z$bXr$bX~P!jO$S#^O$T#^O$U#`O~Of#eO#|!TO#}!UO~Os!RO!a!PO~Or$bP~P!jOh#oO~Oh#pO~Oo!kX!o!kX$X!mX~O#|#qO~O$X#sO~Oo#tO!o#uO~O`xOcyOdyOmzOp{O~Os!qa!a!qa!r!qa!u!qa#{!qag!qa~P-pOs!ta!a!ta!r!ta!u!ta#{!tag!ta~P-pOS!fOc!gOd!gOh!cO!Y!eO!]!jO~OR#yOu#yOw#yO$O#vO$]!pO~P/POn$PO!U#|O!a#}O~P(dOh$RO~O$O$TO~Oh#RO~O`$WOc$WOg$ZOl$WOm$WOn$WO~P)VO`$WOc$WOl$WOm$WOn$WOo$]O~P)VO`$WOc$WOl$WOm$WOn$WOr$_O~P)VOP$`OSvXcvXdvXhvXnvXyvX!YvX!]vX!}vX#PvX$OvX!WvXQvX`vXgvXlvXmvXpvXsvXuvXwvX}vX!dvX#|vX#}vX$]vXovXrvX!avX#zvX$dvX!pvX~Oy$aO!}$bO#P$cOn$eP~P)zOh#pOS$ZXc$ZXd$ZXn$ZXy$ZX!Y$ZX!]$ZX!}$ZX#P$ZX$O$ZXQ$ZX`$ZXg$ZXl$ZXm$ZXp$ZXs$ZXu$ZXw$ZX}$ZX!d$ZX#|$ZX#}$ZX$]$ZXo$ZXr$ZX!a$ZX#z$ZX$d$ZX!p$ZX~Oh$gO~Oh$iO~O!U#|O!a$jOs$eXn$eX~Os!RO~On$mOy$aO~On$nO~Ow$oO!d!vO~Os$pO~Os!RO!U#|O~Os!RO#c$vO~O#|#VOs#fX~O$d$zOn!wa#z!war!wa~P)VOn#sX#z#sXr#sX~P!jOn#ZO#z$bar$ba~O$S#^O$T#^O$U%RO~Oo%TO!o%UO~Os!qi!a!qi!r!qi!u!qi#{!qig!qi~P-pOs!si!a!si!r!si!u!si#{!sig!si~P-pOs!ti!a!ti!r!ti!u!ti#{!tig!ti~P-pOs#qa!a#qa~P&^Or%VO~Og$aP~P'oOg$YP~P)VOc!SXg!QX!U!QX!W!SX~Oc%_O!W%`O~Og%aO!U#|O~O!U#|OS#yXc#yXd#yXh#yXn#yXs#yX!Y#yX!]#yX!a#yX$O#yX~On%eO!a#}O~P(dO!U#|OS!Xac!Xad!Xah!Xan!Xas!Xa!Y!Xa!]!Xa!a!Xa$O!Xag!Xa~O$O%fOg$`P~P/POy$aOQ$[X`$[Xc$[Xg$[Xh$[Xl$[Xm$[Xn$[Xp$[Xs$[Xu$[Xw$[X}$[X!d$[X#|$[X#}$[X$]$[Xo$[Xr$[X~O`$WOc$WOg%kOl$WOm$WOn$WO~P)VO`$WOc$WOl$WOm$WOn$WOo%lO~P)VO`$WOc$WOl$WOm$WOn$WOr%mO~P)VOh%oOS!|Xc!|Xd!|Xn!|X!Y!|X!]!|X$O!|X~On%pO~Og%uOw%vO!e%vO~Os#uX!a#uXn#uX~P)zO!a$jOs$ean$ea~On%yO~Or&QO#|%{O$]%zO~Og&RO~P&^Oy$aO!a&VO$d$zOn!wi#z!wir!wi~P)VO$c&YO~On#sa#z#sar#sa~P!jOn#ZO#z$bir$bi~O!a&]Og$aX~P&^Og&_O~Oy$aOQ#kXg#kXh#kXp#kXs#kXu#kXw#kX}#kX!a#kX!d#kX#|#kX#}#kX$]#kX~O!a&aOg$YX~P)VOg&cO~Oo&dOy$aO!p&eO~OR#yOu#yOw#yO$O&gO$]!pO~O!U#|OS#yac#yad#yah#yan#yas#ya!Y#ya!]#ya!a#ya$O#ya~Oc!SXg!QX!U!QX!a!QX~O!U#|O!a&iOg$`X~Oc&kO~Og&lO~O#|&mO~On&oO~Oc&pO!U#|O~Og&rOn&qO~Og&uO~O!U#|Os#ua!a#uan#ua~OP$`OsvX!avXgvX~O$]%zOs#]X!a#]X~Os!RO!a&wO~Or&{O#|%{O$]%zO~Oy$aOQ#rXh#rXn#rXp#rXs#rXu#rXw#rX}#rX!a#rX!d#rX#z#rX#|#rX#}#rX$]#rX$d#rXr#rX~O!a&VO$d$zOn!wq#z!wqr!wq~P)VOo'QOy$aO!p'RO~Og#pX!a#pX~P'oO!a&]Og$aa~Og#oX!a#oX~P)VO!a&aOg$Ya~Oo'QO~Og'WO~P)VOg'XO!W'YO~O$O%fOg#nX!a#nX~P/PO!a&iOg$`a~O`'_Og'aO~OS#mac#mad#mah#ma!Y#ma!]#ma$O#ma~Og'cO~PMcOg'cOn'dO~Oy$aOQ#rah#ran#rap#ras#rau#raw#ra}#ra!a#ra!d#ra#z#ra#|#ra#}#ra$]#ra$d#rar#ra~Oo'iO~Og#pa!a#pa~P&^Og#oa!a#oa~P)VOR#yOu#yOw#yO$O&gO$]%zO~O!U#|Og#na!a#na~Oc'kO~O!a&iOg$`i~P)VO`'_Og'oO~Oy$aOg!Pin!Pi~Og'pO~PMcOn'qO~Og'rO~O!a&iOg$`q~Og#nq!a#nq~P)VO$Q!e$R$]`$]y!u~",goto:"4h$fPPPPP$gP$jP$s%V$s%i%{P$sP&R$sPP&XPPP&_&i&iPPPPP&iPP&iP'VP&iP&i(Q&iP(n(q(w(w)Z(wP(wP(wP(w(wP)j(w)vP(w)yPP*m*s$s*y$s+P+P+V+ZPP$sP$s$sP+a,],j,q$jP,zP,}P$jP$jP$jP-T$jP-W-Z-^-e$jP$jPP$jP-j$jP-m-s.S.j.x/O/Y/`/f/l/r/|0S0Y0`0f0lPPPPPPPPPPP0r0{P1q1t2vP3O3x4R4U4XPP4_RrQ_aOPco!R#Z$}q_OP]^co|}!O!P!R#R#Z#o$}&]qSOP]^co|}!O!P!R#R#Z#o$}&]qUOP]^co|}!O!P!R#R#Z#o$}&]QtTR#auQwWR#bxQ!VYR#cyQ#c!XS$f!s!tR%S#e!V!wdf!m!n!o#Y#p#u$Y$[$^$a$y%U%Z%_&V&W&a&f&k&p'U'^'k's!U!wdf!m!n!o#Y#p#u$Y$[$^$a$y%U%Z%_&V&W&a&f&k&p'U'^'k'sU#y!c%`'YU%}$p&P&wR&v%|!V!sdf!m!n!o#Y#p#u$Y$[$^$a$y%U%Z%_&V&W&a&f&k&p'U'^'k'sR$h!uQ%s$gR&s%tq!h`ei!c!d!e!q#|#}$O$R$e$g$j%t&iQ#w!cQ%h$RQ&h%`Q'[&iR'j'YQ#UjQ$U!jQ$t#TR&T$vR$S!f!U!wdf!m!n!o#Y#p#u$Y$[$^$a$y%U%Z%_&V&W&a&f&k&p'U'^'k'sQ!|gR$o!}Q!WYR#dyQ#c!WR%S#dQ!ZZR#fzQ!_[R#g{T!^[{Q#r!]R%]#sQ!SXQ!i`Q#SjQ#m!QQ$P!dQ$l!yQ$r#QQ$u#UQ$x#XQ%e$OQ&S$tQ&y&OQ&|&TR'h&xSnP!RQ#]oQ$|#ZR&Z$}ZmPo!R#Z$}Q${#YQ&X$yR'P&WR$e!qQ&n%oR'm'_R!}gR#PhR$q#PS&O$p&PR'f&wV%|$p&P&wR#XkQ#_qR%Q#_QcOSoP!RU!kco$}R$}#ZQ%Z#pY&`%Z&f'U'^'sQ&f%_Q'U&aQ'^&kR's'kQ$Y!mQ$[!nQ$^!oV%j$Y$[$^Q%t$gR&t%tQ&j%gS']&j'lR'l'^Q&b%ZR'V&bQ&^%WR'T&^Q!QXR#l!QQ&W$yR'O&WQ#[nS%O#[%PR%P#]Q'`&nR'n'`Q$k!xR%x$kQ&P$pR&z&PQ&x&OR'g&xQ#WkR$w#WQ$O!dR%d$O_bOPco!R#Z$}^XOPco!R#Z$}Q!`]Q!a^Q#h|Q#i}Q#j!OQ#k!PQ$s#RQ%W#oR'S&]R%[#pQ!qdQ!zf[$V!m!n!o$Y$[$^Q$y#Yd%Y#p%Z%_&a&f&k'U'^'k'sQ%^#uQ%n$aS&U$y&WQ&[%UQ&}&VR'b&p]$X!m!n!o$Y$[$^Q!d`U!xe!q$eQ#QiQ#x!cS#{!d$OQ$Q!eQ%b#|Q%c#}Q%g$RS%r$g%tQ%w$jR'Z&iQ#z!cQ&h%`R'j'YR%i$RR%X#oQpPR#n!RQ!yeQ$d!qR%q$e",nodeNames:"⚠ Unit VariableName VariableName QueryCallee Comment StyleSheet RuleSet UniversalSelector TagSelector TagName NamespacedTagSelector NamespaceName TagName NestingSelector ClassSelector . ClassName PseudoClassSelector : :: PseudoClassName PseudoClassName ) ( ArgList ValueName ParenthesizedValue AtKeyword # ; ] [ BracketedValue } { BracedValue ColorLiteral NumberLiteral StringLiteral BinaryExpression BinOp CallExpression Callee IfExpression if ArgList IfBranch KeywordQuery FeatureQuery FeatureName BinaryQuery LogicOp ComparisonQuery CompareOp UnaryQuery UnaryQueryOp ParenthesizedQuery SelectorQuery selector ParenthesizedSelector CallQuery ArgList , PseudoQuery CallLiteral CallTag ParenthesizedContent PseudoClassName ArgList IdSelector IdName AttributeSelector AttributeName NamespacedAttribute NamespaceName AttributeName MatchOp MatchFlag ChildSelector ChildOp DescendantSelector SiblingSelector SiblingOp Block Declaration PropertyName Important ImportStatement import Layer layer LayerName layer MediaStatement media CharsetStatement charset NamespaceStatement namespace NamespaceName KeyframesStatement keyframes KeyframeName KeyframeList KeyframeSelector KeyframeRangeName SupportsStatement supports ScopeStatement scope to FontFeatureStatement font-feature-values FontName AtRule Styles",maxTerm:159,nodeProps:[["isolate",-2,5,39,""],["openedBy",23,"(",31,"[",34,"{"],["closedBy",24,")",32,"]",35,"}"]],propSources:[le],skippedNodes:[0,5,117],repeatNodeCount:17,tokenData:"K`~R!bOX%ZX^&R^p%Zpq&Rqr)ers)vst+jtu2Xuv%Zvw3Rwx3dxy5Ryz5dz{5i{|6S|}:u}!O;W!O!P;u!P!Q<^!Q![=V![!]>Q!]!^>|!^!_?_!_!`@Z!`!a@n!a!b%Z!b!cAo!c!k%Z!k!lC|!l!u%Z!u!vC|!v!}%Z!}#OD_#O#P%Z#P#QDp#Q#R2X#R#]%Z#]#^ER#^#g%Z#g#hC|#h#o%Z#o#pIf#p#qIw#q#rJ`#r#sJq#s#y%Z#y#z&R#z$f%Z$f$g&R$g#BY%Z#BY#BZ&R#BZ$IS%Z$IS$I_&R$I_$I|%Z$I|$JO&R$JO$JT%Z$JT$JU&R$JU$KV%Z$KV$KW&R$KW&FU%Z&FU&FV&R&FV;'S%Z;'S;=`KY<%lO%Z`%^SOy%jz;'S%j;'S;=`%{<%lO%j`%oS!e`Oy%jz;'S%j;'S;=`%{<%lO%j`&OP;=`<%l%j~&Wh$Q~OX%jX^'r^p%jpq'rqy%jz#y%j#y#z'r#z$f%j$f$g'r$g#BY%j#BY#BZ'r#BZ$IS%j$IS$I_'r$I_$I|%j$I|$JO'r$JO$JT%j$JT$JU'r$JU$KV%j$KV$KW'r$KW&FU%j&FU&FV'r&FV;'S%j;'S;=`%{<%lO%j~'yh$Q~!e`OX%jX^'r^p%jpq'rqy%jz#y%j#y#z'r#z$f%j$f$g'r$g#BY%j#BY#BZ'r#BZ$IS%j$IS$I_'r$I_$I|%j$I|$JO'r$JO$JT%j$JT$JU'r$JU$KV%j$KV$KW'r$KW&FU%j&FU&FV'r&FV;'S%j;'S;=`%{<%lO%jj)jS$dYOy%jz;'S%j;'S;=`%{<%lO%j~)yWOY)vZr)vrs*cs#O)v#O#P*h#P;'S)v;'S;=`+d<%lO)v~*hOw~~*kRO;'S)v;'S;=`*t;=`O)v~*wXOY)vZr)vrs*cs#O)v#O#P*h#P;'S)v;'S;=`+d;=`<%l)v<%lO)v~+gP;=`<%l)vj+oYmYOy%jz!Q%j!Q![,_![!c%j!c!i,_!i#T%j#T#Z,_#Z;'S%j;'S;=`%{<%lO%jj,dY!e`Oy%jz!Q%j!Q![-S![!c%j!c!i-S!i#T%j#T#Z-S#Z;'S%j;'S;=`%{<%lO%jj-XY!e`Oy%jz!Q%j!Q![-w![!c%j!c!i-w!i#T%j#T#Z-w#Z;'S%j;'S;=`%{<%lO%jj.OYuY!e`Oy%jz!Q%j!Q![.n![!c%j!c!i.n!i#T%j#T#Z.n#Z;'S%j;'S;=`%{<%lO%jj.uYuY!e`Oy%jz!Q%j!Q![/e![!c%j!c!i/e!i#T%j#T#Z/e#Z;'S%j;'S;=`%{<%lO%jj/jY!e`Oy%jz!Q%j!Q![0Y![!c%j!c!i0Y!i#T%j#T#Z0Y#Z;'S%j;'S;=`%{<%lO%jj0aYuY!e`Oy%jz!Q%j!Q![1P![!c%j!c!i1P!i#T%j#T#Z1P#Z;'S%j;'S;=`%{<%lO%jj1UY!e`Oy%jz!Q%j!Q![1t![!c%j!c!i1t!i#T%j#T#Z1t#Z;'S%j;'S;=`%{<%lO%jj1{SuY!e`Oy%jz;'S%j;'S;=`%{<%lO%jd2[UOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%jd2uS!oS!e`Oy%jz;'S%j;'S;=`%{<%lO%jb3WS^QOy%jz;'S%j;'S;=`%{<%lO%j~3gWOY3dZw3dwx*cx#O3d#O#P4P#P;'S3d;'S;=`4{<%lO3d~4SRO;'S3d;'S;=`4];=`O3d~4`XOY3dZw3dwx*cx#O3d#O#P4P#P;'S3d;'S;=`4{;=`<%l3d<%lO3d~5OP;=`<%l3dj5WShYOy%jz;'S%j;'S;=`%{<%lO%j~5iOg~n5pUWQyWOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%jj6ZWyW!uQOy%jz!O%j!O!P6s!P!Q%j!Q![9x![;'S%j;'S;=`%{<%lO%jj6xU!e`Oy%jz!Q%j!Q![7[![;'S%j;'S;=`%{<%lO%jj7cY!e`$]YOy%jz!Q%j!Q![7[![!g%j!g!h8R!h#X%j#X#Y8R#Y;'S%j;'S;=`%{<%lO%jj8WY!e`Oy%jz{%j{|8v|}%j}!O8v!O!Q%j!Q![9_![;'S%j;'S;=`%{<%lO%jj8{U!e`Oy%jz!Q%j!Q![9_![;'S%j;'S;=`%{<%lO%jj9fU!e`$]YOy%jz!Q%j!Q![9_![;'S%j;'S;=`%{<%lO%jj:P[!e`$]YOy%jz!O%j!O!P7[!P!Q%j!Q![9x![!g%j!g!h8R!h#X%j#X#Y8R#Y;'S%j;'S;=`%{<%lO%jj:zS!aYOy%jz;'S%j;'S;=`%{<%lO%jj;]WyWOy%jz!O%j!O!P6s!P!Q%j!Q![9x![;'S%j;'S;=`%{<%lO%jj;zU`YOy%jz!Q%j!Q![7[![;'S%j;'S;=`%{<%lO%j~<cTyWOy%jz{<r{;'S%j;'S;=`%{<%lO%j~<yS!e`$R~Oy%jz;'S%j;'S;=`%{<%lO%jj=[[$]YOy%jz!O%j!O!P7[!P!Q%j!Q![9x![!g%j!g!h8R!h#X%j#X#Y8R#Y;'S%j;'S;=`%{<%lO%jj>VUcYOy%jz![%j![!]>i!];'S%j;'S;=`%{<%lO%jj>pSdY!e`Oy%jz;'S%j;'S;=`%{<%lO%jj?RSnYOy%jz;'S%j;'S;=`%{<%lO%jh?dU!WWOy%jz!_%j!_!`?v!`;'S%j;'S;=`%{<%lO%jh?}S!WW!e`Oy%jz;'S%j;'S;=`%{<%lO%jl@bS!WW!oSOy%jz;'S%j;'S;=`%{<%lO%jj@uV!rQ!WWOy%jz!_%j!_!`?v!`!aA[!a;'S%j;'S;=`%{<%lO%jbAcS!rQ!e`Oy%jz;'S%j;'S;=`%{<%lO%jjArYOy%jz}%j}!OBb!O!c%j!c!}CP!}#T%j#T#oCP#o;'S%j;'S;=`%{<%lO%jjBgW!e`Oy%jz!c%j!c!}CP!}#T%j#T#oCP#o;'S%j;'S;=`%{<%lO%jjCW[lY!e`Oy%jz}%j}!OCP!O!Q%j!Q![CP![!c%j!c!}CP!}#T%j#T#oCP#o;'S%j;'S;=`%{<%lO%jhDRS!pWOy%jz;'S%j;'S;=`%{<%lO%jjDdSpYOy%jz;'S%j;'S;=`%{<%lO%jnDuSo^Oy%jz;'S%j;'S;=`%{<%lO%jjEWU!pWOy%jz#a%j#a#bEj#b;'S%j;'S;=`%{<%lO%jbEoU!e`Oy%jz#d%j#d#eFR#e;'S%j;'S;=`%{<%lO%jbFWU!e`Oy%jz#c%j#c#dFj#d;'S%j;'S;=`%{<%lO%jbFoU!e`Oy%jz#f%j#f#gGR#g;'S%j;'S;=`%{<%lO%jbGWU!e`Oy%jz#h%j#h#iGj#i;'S%j;'S;=`%{<%lO%jbGoU!e`Oy%jz#T%j#T#UHR#U;'S%j;'S;=`%{<%lO%jbHWU!e`Oy%jz#b%j#b#cHj#c;'S%j;'S;=`%{<%lO%jbHoU!e`Oy%jz#h%j#h#iIR#i;'S%j;'S;=`%{<%lO%jbIYS$cQ!e`Oy%jz;'S%j;'S;=`%{<%lO%jjIkSsYOy%jz;'S%j;'S;=`%{<%lO%jfI|U$XUOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%jjJeSrYOy%jz;'S%j;'S;=`%{<%lO%jfJvU!uQOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%j`K]P;=`<%l%Z",tokenizers:[te,oe,ae,re,1,2,3,4,new z("m~RRYZ[z{a~~g~aO$T~~dP!P!Qg~lO$U~~",28,142)],topRules:{StyleSheet:[0,6],Styles:[1,116]},dynamicPrecedences:{84:1},specialized:[{term:137,get:e=>ie[e]||-1},{term:138,get:e=>ne[e]||-1},{term:4,get:e=>se[e]||-1},{term:28,get:e=>de[e]||-1},{term:136,get:e=>Qe[e]||-1}],tokenPrec:2256});let p=null;function u(){if(!p&&typeof document=="object"&&document.body){let{style:e}=document.body,r=[],i=new Set;for(let O in e)O!="cssText"&&O!="cssFloat"&&typeof e[O]=="string"&&(/[A-Z]/.test(O)&&(O=O.replace(/[A-Z]/g,a=>"-"+a.toLowerCase())),i.has(O)||(r.push(O),i.add(O)));p=r.sort().map(O=>({type:"property",label:O,apply:O+": "}))}return p||[]}const g=["active","after","any-link","autofill","backdrop","before","checked","cue","default","defined","disabled","empty","enabled","file-selector-button","first","first-child","first-letter","first-line","first-of-type","focus","focus-visible","focus-within","fullscreen","has","host","host-context","hover","in-range","indeterminate","invalid","is","lang","last-child","last-of-type","left","link","marker","modal","not","nth-child","nth-last-child","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","part","placeholder","placeholder-shown","read-only","read-write","required","right","root","scope","selection","slotted","target","target-text","valid","visited","where"].map(e=>({type:"class",label:e})),y=["above","absolute","activeborder","additive","activecaption","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","antialiased","appworkspace","asterisks","attr","auto","auto-flow","avoid","avoid-column","avoid-page","avoid-region","axis-pan","background","backwards","baseline","below","bidi-override","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","clear","clip","close-quote","col-resize","collapse","color","color-burn","color-dodge","column","column-reverse","compact","condensed","contain","content","contents","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","darken","dashed","decimal","decimal-leading-zero","default","default-button","dense","destination-atop","destination-in","destination-out","destination-over","difference","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic-abegede-gez","ethiopic-halehame-aa-er","ethiopic-halehame-gez","ew-resize","exclusion","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fill-box","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","graytext","grid","groove","hand","hard-light","help","hidden","hide","higher","highlight","highlighttext","horizontal","hsl","hsla","hue","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-grid","inline-table","inset","inside","intrinsic","invert","italic","justify","keep-all","landscape","large","larger","left","level","lighter","lighten","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-hexadecimal","lower-latin","lower-norwegian","lowercase","ltr","luminosity","manipulation","match","matrix","matrix3d","medium","menu","menutext","message-box","middle","min-intrinsic","mix","monospace","move","multiple","multiple_mask_images","multiply","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","opacity","open-quote","optimizeLegibility","optimizeSpeed","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","perspective","pinch-zoom","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","saturation","scale","scale3d","scaleX","scaleY","scaleZ","screen","scroll","scrollbar","scroll-position","se-resize","self-start","self-end","semi-condensed","semi-expanded","separate","serif","show","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","soft-light","solid","source-atop","source-in","source-out","source-over","space","space-around","space-between","space-evenly","spell-out","square","start","static","status-bar","stretch","stroke","stroke-box","sub","subpixel-antialiased","svg_masks","super","sw-resize","symbolic","symbols","system-ui","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","text","text-bottom","text-top","textarea","textfield","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","to","top","transform","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","unidirectional-pan","unset","up","upper-latin","uppercase","url","var","vertical","vertical-text","view-box","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"].map(e=>({type:"keyword",label:e})).concat(["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"].map(e=>({type:"constant",label:e}))),$e=["a","abbr","address","article","aside","b","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","dd","del","details","dfn","dialog","div","dl","dt","em","figcaption","figure","footer","form","header","hgroup","h1","h2","h3","h4","h5","h6","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","main","meter","nav","ol","output","p","pre","ruby","section","select","small","source","span","strong","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","tr","u","ul"].map(e=>({type:"type",label:e})),pe=["@charset","@color-profile","@container","@counter-style","@font-face","@font-feature-values","@font-palette-values","@import","@keyframes","@layer","@media","@namespace","@page","@position-try","@property","@scope","@starting-style","@supports","@view-transition"].map(e=>({type:"keyword",label:e})),d=/^(\w[\w-]*|-\w[\w-]*|)$/,ue=/^-(-[\w-]*)?$/;function je(e,r){var i;if((e.name=="("||e.type.isError)&&(e=e.parent||e),e.name!="ArgList")return!1;let O=(i=e.parent)===null||i===void 0?void 0:i.firstChild;return(O==null?void 0:O.name)!="Callee"?!1:r.sliceString(O.from,O.to)=="var"}const h=new E,me=["Declaration"];function Se(e){for(let r=e;;){if(r.type.isTop)return r;if(!(r=r.parent))return e}}function w(e,r,i){if(r.to-r.from>4096){let O=h.get(r);if(O)return O;let a=[],o=new Set,l=r.cursor(U.IncludeAnonymous);if(l.firstChild())do for(let n of w(e,l.node,i))o.has(n.label)||(o.add(n.label),a.push(n));while(l.nextSibling());return h.set(r,a),a}else{let O=[],a=new Set;return r.cursor().iterate(o=>{var l;if(i(o)&&o.matchContext(me)&&((l=o.node.nextSibling)===null||l===void 0?void 0:l.name)==":"){let n=e.sliceString(o.from,o.to);a.has(n)||(a.add(n),O.push({label:n,type:"variable"}))}}),O}}const ge=e=>r=>{let{state:i,pos:O}=r,a=V(i).resolveInner(O,-1),o=a.type.isError&&a.from==a.to-1&&i.doc.sliceString(a.from,a.to)=="-";if(a.name=="PropertyName"||(o||a.name=="TagName")&&/^(Block|Styles)$/.test(a.resolve(a.to).name))return{from:a.from,options:u(),validFor:d};if(a.name=="ValueName")return{from:a.from,options:y,validFor:d};if(a.name=="PseudoClassName")return{from:a.from,options:g,validFor:d};if(e(a)||(r.explicit||o)&&je(a,i.doc))return{from:e(a)||o?a.from:O,options:w(i.doc,Se(a),e),validFor:ue};if(a.name=="TagName"){for(let{parent:s}=a;s;s=s.parent)if(s.name=="Block")return{from:a.from,options:u(),validFor:d};return{from:a.from,options:$e,validFor:d}}if(a.name=="AtKeyword")return{from:a.from,options:pe,validFor:d};if(!r.explicit)return null;let l=a.resolve(O),n=l.childBefore(O);return n&&n.name==":"&&l.name=="PseudoClassSelector"?{from:O,options:g,validFor:d}:n&&n.name==":"&&l.name=="Declaration"||l.name=="ArgList"?{from:O,options:y,validFor:d}:l.name=="Block"||l.name=="Styles"?{from:O,options:u(),validFor:d}:null},ye=ge(e=>e.name=="VariableName"),f=W.define({name:"css",parser:ce.configure({props:[Z.add({Declaration:x()}),G.add({"Block KeyframeList":_})]}),languageData:{commentTokens:{block:{open:"/*",close:"*/"}},indentOnInput:/^\s*\}$/,wordChars:"-"}});function Xe(){return new Y(f,f.data.of({autocomplete:ye}))}export{Xe as css,ye as cssCompletionSource,f as cssLanguage,ge as defineCSSCompletionSource};
@@ -1,6 +1,6 @@
1
- import{e6 as le,e7 as O,aY as ce,e8 as Y,aE as q,ah as de,ag as ue,r as d,cV as me,j as s,e9 as he,ea as fe,eb as ge,ec as ye,ed as K,ee as xe,B as x,am as Oe,ef as ve,aD as Ee,aj as _e,eg as be,eh as Te,ei as pe,ej as Re,ek as I,el as G,em as we}from"./index-B4TIVWAq.js";/**
1
+ import{dz as le,dA as O,aY as ce,dB as Y,aE as G,ah as de,ag as ue,r as d,cZ as me,j as s,dC as he,dD as fe,dE as ge,dF as ye,dG as $,dH as xe,B as x,am as Oe,dI as ve,aD as Ee,aj as _e,dJ as be,dK as Te,dL as pe,dM as Re,dN as I,dO as q,dP as we}from"./index-_1qDsPCM.js";/**
2
2
  * @license lucide-react v1.47.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
5
5
  * See the LICENSE file in the root directory of this source tree.
6
- */const V={name:"share-2",size:24,node:[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]]};V.node;const Ne=le(V),Ce=["CONFLICT","COPY_INTO_SELF","DIR_NOT_EMPTY","NOT_FOUND","REFUSE_ROOT","OUTSIDE_BOUNDARY"];function Se(e){const t=O(e);return t!==void 0&&Ce.includes(t)?t:void 0}const De="Can’t copy a folder into itself",Fe={CONFLICT:"That name already exists",COPY_INTO_SELF:De,DIR_NOT_EMPTY:"This folder isn’t empty",NOT_FOUND:"That item no longer exists",REFUSE_ROOT:"Can’t modify the working directory root",OUTSIDE_BOUNDARY:"That path is outside the working directory"};function We(e,t){const i=Se(e);ce.error(i?Fe[i]:t)}const Ae=new Map([["ROOM_UPLOAD_TOO_MANY_FILES",`One upload can carry up to ${Y} files, so nothing was uploaded. Try again with fewer.`],["FILE_TOO_LARGE","A file is bigger than this room allows, so nothing was changed."],["REPO_CAP_EXCEEDED","This room’s files are already as large as they are allowed to get, so nothing was changed. Delete something first."],["MAIN_CHECKOUT_DIRTY","Somebody changed this room’s files outside DorkOS, so changes are paused until that is sorted out. The warning above the files says how."],["MERGE_IN_FLIGHT","Somebody else is changing this room’s files right now, so nothing was changed. Try again in a moment."],["PEOPLE_ONLY","Only a person can change a room’s files this way. An agent brings its work in by merging."],["ROOM_FILE_PATH_INVALID","That name can’t be used in a room’s files, so nothing was changed."],["ROOM_FILE_NOT_READABLE","That isn’t something that can be changed here."],["ROOM_FILE_NOT_FOUND","That isn’t in the room’s files any more, so nothing was changed. The list has been refreshed."],["ATTACHMENT_NOT_FOUND","That file isn’t in this room’s chat any more."],["ROOM_HAS_NO_REPO","This room doesn’t have files of its own any more."],["ROOM_REPOS_DISABLED","Rooms can’t have files of their own on this install right now, so nothing was changed."],["ROOM_REPO_GIT_UNAVAILABLE","This computer doesn’t have git installed, and a room’s files are a git repository."],["ROOM_NOT_FOUND","This room isn’t there any more."],["ROOM_ARCHIVED","This room is archived, so its files can’t be changed."]]),Ie=new Set(["FILE_TOO_LARGE","ROOM_FILE_PATH_INVALID","ROOM_FILE_NOT_READABLE"]);function Le(e){return e.replace(/`([^`]*)`/g,"“$1”").trim()}function Me(e){const t=O(e);if(t===void 0)return;const i=Ae.get(t);if(i!==void 0)return Q(e)??i}function Q(e){const t=O(e);if(!(t===void 0||!Ie.has(t))&&!(!(e instanceof Error)||e.message.trim()===""))return Le(e.message)}function Ze(e){return`There’s already something called “${e}” there, so nothing was changed. Pick another name.`}const je="—";function ke(e){if(e==null)return{label:je,title:null};const t=q(e.at);return{label:`${e.author} · ${t}`,title:`${e.subject} · ${e.author}, ${t}`}}function Pe(e){return/\.(md|markdown|mdx)$/i.test(e)}function Ue(e){return e<1024?`${e} bytes`:e<1024*1024?`${Math.round(e/1024)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`}function ze(e,t){return e.editable&&e.save!==void 0&&t!==void 0&&t.body.kind==="text"}function et({source:e,path:t,isNew:i=!1,onCreated:a,onClose:c}){const r=e.read,o=de(),n=["file-explorer","preview",e.scopeKey,t],m=ue({queryKey:n,queryFn:()=>r(t),enabled:t!==null&&r!==void 0&&!i}),h=i&&t!==null?{path:t,size:0,commit:null,lastCommit:null,body:{kind:"text",text:""}}:m.data,[v,L]=d.useState(!1),[M,j]=d.useState(null),F=e.showToEveryone,J=d.useCallback(async l=>{if(F!==void 0){L(!0),j(null);try{await F(l),c()}catch(u){j(u instanceof Error&&u.message.trim().length>0?u.message:"DorkOS couldn’t reach the server. Check your connection and try again.")}finally{L(!1)}}},[F,c]),[g,w]=d.useState(i),[b,T]=d.useState(""),[k,N]=d.useState({text:"",commit:null}),[E,y]=d.useState(null),[A,f]=d.useState(null),[P,p]=d.useState(!1),[W,C]=d.useState(!1),U=d.useRef(null),z=d.useRef(null),B=d.useRef(!1),_=g&&b!==k.text,Z=_||g&&i,$=W&&_,S=d.useCallback(()=>{w(!1),T(""),N({text:"",commit:null}),y(null),f(null),p(!1),C(!1)},[]),[ee,te]=d.useState(t);ee!==t&&(te(t),(g||b!==""||E!==null||A!==null||P)&&S(),i&&w(!0));const R=me({mutationFn:l=>e.save({path:t,baseCommit:l.baseCommit,text:l.text}),onSuccess:(l,u)=>{if(l.status==="saved"){N({text:u.text,commit:l.commit}),y(null),f(null),p(!0),i&&(a==null||a()),o.invalidateQueries({queryKey:n}),o.invalidateQueries({queryKey:["file-explorer","tree",e.scopeKey]});return}if(p(!1),l.status==="conflict"){y(re=>({commit:l.commit,lastCommit:l.lastCommit,again:re!==null})),f(null);return}y(null),f(l.reason)},onError:()=>{p(!1),y(null),f("That didn’t save. Try again in a moment.")}}),H=ze(e,h),se=()=>{h===void 0||h.body.kind!=="text"||(T(h.body.text),N({text:h.body.text,commit:h.commit??null}),y(null),f(null),p(!1),w(!0))},ne=()=>{if(i){S(),c();return}w(!1),T(""),y(null),f(null),C(!1)},ie=async()=>{const l=await m.refetch();if(l.isError||l.data===void 0){f("Their version couldn’t be fetched just now, so nothing here changed.");return}const u=l.data;if(u.body.kind!=="text"){f(u.body.kind==="not-readable"?`${u.body.reason} What you typed is still here. Save it over their change, or close this and copy it out first.`:"Their version isn’t something that can be shown here, so nothing here changed.");return}T(u.body.text),N({text:u.body.text,commit:u.commit??null}),y(null),f(null)},oe=()=>{E!==null&&R.mutate({text:b,baseCommit:E.commit})},ae=()=>{if(_){C(!0);return}S(),c()};return d.useEffect(()=>{var l,u;g?(l=U.current)==null||l.focus():B.current&&((u=z.current)==null||u.focus()),B.current=g},[g]),s.jsx(he,{open:t!==null,onOpenChange:l=>!l&&ae(),children:s.jsxs(fe,{className:"max-h-[80vh] sm:max-w-2xl",children:[s.jsxs(ge,{children:[s.jsx(ye,{className:"truncate font-mono text-sm",children:t===null?"":K(t)}),s.jsx(xe,{className:"truncate text-xs",children:i&&t!==null?`${t} · New file`:$e(h,t)})]}),!g&&(e.showToEveryone!==void 0||H)&&s.jsxs("div",{className:"flex justify-end gap-1 px-4",children:[e.showToEveryone!==void 0&&t!==null&&s.jsxs(x,{type:"button",variant:"ghost",size:"sm",disabled:v,className:"text-muted-foreground hover:text-foreground gap-1.5",onClick:()=>void J(t),children:[s.jsx(Ne,{className:"size-(--size-icon-xs)"}),v?"Putting it there…":"Put on the canvas"]}),H&&s.jsxs(x,{ref:z,type:"button",variant:"ghost",size:"sm",className:"text-muted-foreground hover:text-foreground gap-1.5",onClick:se,children:[s.jsx(Oe,{className:"size-(--size-icon-xs)"}),"Edit"]})]}),M!==null&&s.jsx("p",{role:"status",className:"text-destructive px-4 pb-1 text-xs",children:M}),E!==null&&s.jsx(Be,{conflict:E,onTakeTheirs:()=>void ie(),onKeepMine:oe,busy:R.isPending||m.isFetching}),A!==null&&s.jsx("p",{role:"alert",className:"bg-destructive/10 text-destructive mx-4 rounded-md px-3 py-2 text-sm",children:A}),s.jsx(ve,{className:"min-h-0 flex-1 overflow-auto",children:m.isPending&&!i?s.jsx("div",{className:"flex h-32 items-center justify-center",children:s.jsx(Ee,{size:"md",className:"text-muted-foreground",label:"Loading the file"})}):m.isError&&!i||h===void 0?s.jsx(D,{children:"This file couldn’t be read."}):g?s.jsx("textarea",{ref:U,"aria-label":`${t===null?"File":K(t)} contents`,value:b,onChange:l=>T(l.target.value),spellCheck:!1,autoComplete:"off",className:_e("text-foreground/90 border-border/60 bg-background field-sizing-content","focus-visible:border-ring focus-visible:ring-ring/50 min-h-64 w-full","resize-none rounded-md border px-3 py-2 font-mono text-xs","whitespace-pre-wrap focus-visible:ring-[3px] focus-visible:outline-none")}):s.jsx(He,{file:h})}),g&&s.jsxs(be,{className:"items-center gap-2 sm:justify-between",children:[s.jsx("span",{className:"text-muted-foreground text-xs","aria-live":"polite",children:R.isPending?"Saving…":$?"You haven’t saved your changes.":P&&!_?"Saved":_?"Not saved yet":""}),s.jsx("span",{className:"flex gap-2",children:$?s.jsxs(s.Fragment,{children:[s.jsx(x,{type:"button",variant:"ghost",size:"sm",onClick:()=>C(!1),children:"Keep editing"}),s.jsx(x,{type:"button",variant:"destructive",size:"sm",onClick:()=>{S(),c()},children:"Discard changes"})]}):s.jsxs(s.Fragment,{children:[s.jsx(x,{type:"button",variant:"ghost",size:"sm",onClick:ne,children:_?"Discard":i?"Cancel":"Done"}),s.jsx(x,{type:"button",size:"sm",disabled:!Z||R.isPending||E!==null,onClick:()=>R.mutate({text:b,baseCommit:k.commit}),children:"Save"})]})})]})]})})}function Be({conflict:e,onTakeTheirs:t,onKeepMine:i,busy:a}){const c=e.lastCommit,r=c===null?"Somebody":c.author;return s.jsxs("div",{role:"alert",className:"border-border/60 bg-muted/40 mx-4 space-y-2 rounded-md border px-3 py-2 text-sm",children:[s.jsx("p",{children:e.again?`${r} changed this file again while you were deciding, so it still isn’t saved.`:`${r} changed this file while you were editing it, so nothing was saved.`}),c!==null&&s.jsxs("p",{className:"text-muted-foreground text-xs",children:[c.subject," · ",q(c.at)]}),s.jsxs("div",{className:"flex flex-wrap gap-2",children:[s.jsx(x,{type:"button",variant:"outline",size:"sm",disabled:a,onClick:t,children:"Open their version"}),s.jsx(x,{type:"button",variant:"destructive",size:"sm",disabled:a,onClick:i,children:"Save mine over it"})]}),s.jsx("p",{className:"text-muted-foreground text-xs",children:"Opening theirs replaces what you typed here."})]})}function $e(e,t){if(t===null)return"";const i=e===void 0?null:ke(e.lastCommit);return i===null?t:`${t} · ${i.label}`}function He({file:e}){switch(e.body.kind){case"text":return Pe(e.path)?s.jsx(pe,{content:e.body.text,className:"text-sm",errorFallback:"This file couldn’t be displayed."}):s.jsx("pre",{className:"text-foreground/90 overflow-x-auto font-mono text-xs whitespace-pre",children:e.body.text});case"binary":return s.jsx(D,{children:"This isn’t a text file, so it can’t be shown or edited here."});case"too-large":return s.jsxs(D,{children:["This file is larger than ",Ue(e.body.maxBytes),", so it isn’t shown here."]});case"not-readable":return s.jsx(D,{children:e.body.reason})}}function D({children:e}){return s.jsxs("div",{className:"text-muted-foreground flex h-32 flex-col items-center justify-center gap-2 px-6 text-center text-sm",children:[s.jsx(Te,{className:"size-(--size-icon-md) opacity-60"}),s.jsx("span",{children:e})]})}const Ke=new Map([["REQUEST_TOO_LARGE","That is too much text to send in one go, so nothing was saved. A room’s files are for documents people read. Anything this big belongs in the room’s attachments."],["FILE_TOO_LARGE","This file would be bigger than this room allows, so nothing was saved."],["REPO_CAP_EXCEEDED","This room’s files are already as large as they are allowed to get, so nothing was saved."],["MAIN_CHECKOUT_DIRTY","Somebody changed this room’s files outside DorkOS, so saving is paused until that is sorted out. The warning above the files says how."],["MERGE_IN_FLIGHT","Somebody else is writing to this room’s files right now. Nothing was saved. Try again in a moment."],["PEOPLE_ONLY","Only a person can save a room’s files this way. An agent brings its work in by merging."],["ROOM_FILE_NOT_TEXT","This file has something in it that is not text, so it cannot be saved from here."],["ROOM_FILE_PATH_INVALID","That file name could mean somewhere else, so nothing was saved."],["ROOM_FILE_NOT_FOUND","This file is not in the room’s files any more, so there was nothing to save over."],["ROOM_FILE_NOT_READABLE","This is not a file that can be edited here."],["ROOM_HAS_NO_REPO","This room does not have files of its own any more."],["ROOM_REPOS_DISABLED","Rooms cannot have files of their own on this install right now, so nothing was saved."],["ROOM_REPO_GIT_UNAVAILABLE","This computer doesn’t have git installed, and a room’s files are a git repository."],["ROOM_NOT_FOUND","This room is not there any more."],["ROOM_ARCHIVED","This room is archived, so its files cannot be changed."]]);function Ye(e){return e===void 0?void 0:Ke.get(e)}function X(e){if(typeof e!="object"||e===null)return null;const t=Re.safeParse(e.body);return t.success?t.data.conflict:null}const qe=15e3;function Ge(e,t,i){const a=JSON.stringify(I.entries(t));let c=0,r=null;const o=e.getQueryCache().subscribe(n=>{if(n.type!=="updated"||JSON.stringify(n.query.queryKey)!==a||r!==null)return;const m=Math.max(0,qe-(Date.now()-c));r=setTimeout(()=>{r=null,c=Date.now(),i()},m)});return()=>{r!==null&&clearTimeout(r),o()}}function Ve(e){return{name:e.name,path:e.path,type:e.kind==="dir"?"dir":"file",size:e.size,isSymlink:e.kind==="symlink",lastCommit:e.lastCommit}}const Qe=new Map([["ROOM_FILE_NOT_READABLE","This isn’t a file that can be shown here."],["ROOM_FILE_NOT_FOUND","This file isn’t in the room’s files any more."]]);function tt(e){const{transport:t,queryClient:i,roomId:a,canChange:c=!0}=e,r=async o=>{try{return{status:"changed",commit:(await o()).commit}}catch(n){return Xe(n,i,a)}};return{scopeKey:`room:${a}`,cwd:null,writable:c,provenance:!0,filtersHidden:!1,preview:"inline",async showToEveryone(o){await t.openRoomCanvasDocument(a,{type:"file",sourcePath:o})},editable:c,changes:c?{maxUploadFiles:Y,upload:o=>r(()=>t.uploadRoomFiles(a,{dir:o.dir,baseCommit:o.baseCommit,replace:o.replace,files:o.files})),move:o=>r(()=>t.moveRoomFile(a,o)),remove:o=>r(()=>t.deleteRoomFile(a,o))}:void 0,async list(o){try{const n=await t.readRoomFiles(a,o===""?void 0:o);return{entries:n.entries.map(Ve),commit:n.commit}}catch(n){if(O(n)!==we)throw n;return{entries:[],absent:!0}}},async read(o){try{const n=await t.readRoomFileContent(a,o);return{path:n.path,size:n.size,lastCommit:n.lastCommit,commit:n.commit,body:n.body.kind==="text"?{kind:"text",text:n.body.text}:n.body.kind==="binary"?{kind:"binary"}:{kind:"too-large",maxBytes:n.body.maxBytes}}}catch(n){const m=Qe.get(O(n)??"");if(m===void 0)throw n;return{path:o,size:0,lastCommit:null,commit:null,body:{kind:"not-readable",reason:m}}}},async save(o){try{const n=await t.saveRoomFile(a,{path:o.path,baseCommit:o.baseCommit,text:o.text});return{status:"saved",commit:n.commit,lastCommit:n.lastCommit,committed:n.committed}}catch(n){const m=O(n);if(m===G){const v=X(n);return v!==null?{status:"conflict",commit:v.commit,lastCommit:v.lastCommit}:{status:"refused",reason:"Somebody changed this file while you were editing it, so nothing was saved. Close this and open it again to see their version."}}m==="MAIN_CHECKOUT_DIRTY"&&i.invalidateQueries({queryKey:I.repoStatus(a)});const h=Q(n)??Ye(m);if(h===void 0)throw n;return{status:"refused",reason:h}}},events(o){return Ge(i,a,o)}}}function Xe(e,t,i){const a=O(e);if(a===G){const r=X(e);return r!==null?{status:"conflict",path:r.path,commit:r.commit,lastCommit:r.lastCommit}:{status:"refused",reason:"Somebody changed these files after you opened them, so nothing was changed. Look at the new version, then try again."}}if(a==="ROOM_FILE_EXISTS"){const r=e instanceof Error?e.message.replace(/`([^`]*)`/g,"“$1”"):"";return{status:"exists",reason:r.trim()!==""?r:"Something with that name is already there."}}a==="MAIN_CHECKOUT_DIRTY"&&t.invalidateQueries({queryKey:I.repoStatus(i)});const c=Me(e);if(c===void 0)throw e;return{status:"refused",reason:c}}export{De as C,et as F,je as N,qe as R,Xe as a,tt as c,Se as g,Ze as n,ke as p,Me as r,We as t,Ge as w};
6
+ */const V={name:"share-2",size:24,node:[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]]};V.node;const Ne=le(V),Ce=["CONFLICT","COPY_INTO_SELF","DIR_NOT_EMPTY","NOT_FOUND","REFUSE_ROOT","OUTSIDE_BOUNDARY"];function Se(e){const t=O(e);return t!==void 0&&Ce.includes(t)?t:void 0}const De="Can’t copy a folder into itself",Fe={CONFLICT:"That name already exists",COPY_INTO_SELF:De,DIR_NOT_EMPTY:"This folder isn’t empty",NOT_FOUND:"That item no longer exists",REFUSE_ROOT:"Can’t modify the working directory root",OUTSIDE_BOUNDARY:"That path is outside the working directory"};function We(e,t){const i=Se(e);ce.error(i?Fe[i]:t)}const Ae=new Map([["ROOM_UPLOAD_TOO_MANY_FILES",`One upload can carry up to ${Y} files, so nothing was uploaded. Try again with fewer.`],["FILE_TOO_LARGE","A file is bigger than this room allows, so nothing was changed."],["REPO_CAP_EXCEEDED","This room’s files are already as large as they are allowed to get, so nothing was changed. Delete something first."],["MAIN_CHECKOUT_DIRTY","Somebody changed this room’s files outside DorkOS, so changes are paused until that is sorted out. The warning above the files says how."],["MERGE_IN_FLIGHT","Somebody else is changing this room’s files right now, so nothing was changed. Try again in a moment."],["PEOPLE_ONLY","Only a person can change a room’s files this way. An agent brings its work in by merging."],["ROOM_FILE_PATH_INVALID","That name can’t be used in a room’s files, so nothing was changed."],["ROOM_FILE_NOT_READABLE","That isn’t something that can be changed here."],["ROOM_FILE_NOT_FOUND","That isn’t in the room’s files any more, so nothing was changed. The list has been refreshed."],["ATTACHMENT_NOT_FOUND","That file isn’t in this room’s chat any more."],["ROOM_HAS_NO_REPO","This room doesn’t have files of its own any more."],["ROOM_REPOS_DISABLED","Rooms can’t have files of their own on this install right now, so nothing was changed."],["ROOM_REPO_GIT_UNAVAILABLE","This computer doesn’t have git installed, and a room’s files are a git repository."],["ROOM_NOT_FOUND","This room isn’t there any more."],["ROOM_ARCHIVED","This room is archived, so its files can’t be changed."]]),Ie=new Set(["FILE_TOO_LARGE","ROOM_FILE_PATH_INVALID","ROOM_FILE_NOT_READABLE"]);function Le(e){return e.replace(/`([^`]*)`/g,"“$1”").trim()}function Me(e){const t=O(e);if(t===void 0)return;const i=Ae.get(t);if(i!==void 0)return Q(e)??i}function Q(e){const t=O(e);if(!(t===void 0||!Ie.has(t))&&!(!(e instanceof Error)||e.message.trim()===""))return Le(e.message)}function Ze(e){return`There’s already something called “${e}” there, so nothing was changed. Pick another name.`}const je="—";function ke(e){if(e==null)return{label:je,title:null};const t=G(e.at);return{label:`${e.author} · ${t}`,title:`${e.subject} · ${e.author}, ${t}`}}function Pe(e){return/\.(md|markdown|mdx)$/i.test(e)}function Ue(e){return e<1024?`${e} bytes`:e<1024*1024?`${Math.round(e/1024)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`}function ze(e,t){return e.editable&&e.save!==void 0&&t!==void 0&&t.body.kind==="text"}function et({source:e,path:t,isNew:i=!1,onCreated:a,onClose:c}){const r=e.read,o=de(),n=["file-explorer","preview",e.scopeKey,t],m=ue({queryKey:n,queryFn:()=>r(t),enabled:t!==null&&r!==void 0&&!i}),h=i&&t!==null?{path:t,size:0,commit:null,lastCommit:null,body:{kind:"text",text:""}}:m.data,[v,L]=d.useState(!1),[M,j]=d.useState(null),F=e.showToEveryone,J=d.useCallback(async l=>{if(F!==void 0){L(!0),j(null);try{await F(l),c()}catch(u){j(u instanceof Error&&u.message.trim().length>0?u.message:"DorkOS couldn’t reach the server. Check your connection and try again.")}finally{L(!1)}}},[F,c]),[g,w]=d.useState(i),[b,T]=d.useState(""),[k,N]=d.useState({text:"",commit:null}),[E,y]=d.useState(null),[A,f]=d.useState(null),[P,p]=d.useState(!1),[W,C]=d.useState(!1),U=d.useRef(null),z=d.useRef(null),B=d.useRef(!1),_=g&&b!==k.text,Z=_||g&&i,H=W&&_,S=d.useCallback(()=>{w(!1),T(""),N({text:"",commit:null}),y(null),f(null),p(!1),C(!1)},[]),[ee,te]=d.useState(t);ee!==t&&(te(t),(g||b!==""||E!==null||A!==null||P)&&S(),i&&w(!0));const R=me({mutationFn:l=>e.save({path:t,baseCommit:l.baseCommit,text:l.text}),onSuccess:(l,u)=>{if(l.status==="saved"){N({text:u.text,commit:l.commit}),y(null),f(null),p(!0),i&&(a==null||a()),o.invalidateQueries({queryKey:n}),o.invalidateQueries({queryKey:["file-explorer","tree",e.scopeKey]});return}if(p(!1),l.status==="conflict"){y(re=>({commit:l.commit,lastCommit:l.lastCommit,again:re!==null})),f(null);return}y(null),f(l.reason)},onError:()=>{p(!1),y(null),f("That didn’t save. Try again in a moment.")}}),K=ze(e,h),se=()=>{h===void 0||h.body.kind!=="text"||(T(h.body.text),N({text:h.body.text,commit:h.commit??null}),y(null),f(null),p(!1),w(!0))},ne=()=>{if(i){S(),c();return}w(!1),T(""),y(null),f(null),C(!1)},ie=async()=>{const l=await m.refetch();if(l.isError||l.data===void 0){f("Their version couldn’t be fetched just now, so nothing here changed.");return}const u=l.data;if(u.body.kind!=="text"){f(u.body.kind==="not-readable"?`${u.body.reason} What you typed is still here. Save it over their change, or close this and copy it out first.`:"Their version isn’t something that can be shown here, so nothing here changed.");return}T(u.body.text),N({text:u.body.text,commit:u.commit??null}),y(null),f(null)},oe=()=>{E!==null&&R.mutate({text:b,baseCommit:E.commit})},ae=()=>{if(_){C(!0);return}S(),c()};return d.useEffect(()=>{var l,u;g?(l=U.current)==null||l.focus():B.current&&((u=z.current)==null||u.focus()),B.current=g},[g]),s.jsx(he,{open:t!==null,onOpenChange:l=>!l&&ae(),children:s.jsxs(fe,{className:"max-h-[80vh] sm:max-w-2xl",children:[s.jsxs(ge,{children:[s.jsx(ye,{className:"truncate font-mono text-sm",children:t===null?"":$(t)}),s.jsx(xe,{className:"truncate text-xs",children:i&&t!==null?`${t} · New file`:He(h,t)})]}),!g&&(e.showToEveryone!==void 0||K)&&s.jsxs("div",{className:"flex justify-end gap-1 px-4",children:[e.showToEveryone!==void 0&&t!==null&&s.jsxs(x,{type:"button",variant:"ghost",size:"sm",disabled:v,className:"text-muted-foreground hover:text-foreground gap-1.5",onClick:()=>void J(t),children:[s.jsx(Ne,{className:"size-(--size-icon-xs)"}),v?"Putting it there…":"Put on the canvas"]}),K&&s.jsxs(x,{ref:z,type:"button",variant:"ghost",size:"sm",className:"text-muted-foreground hover:text-foreground gap-1.5",onClick:se,children:[s.jsx(Oe,{className:"size-(--size-icon-xs)"}),"Edit"]})]}),M!==null&&s.jsx("p",{role:"status",className:"text-destructive px-4 pb-1 text-xs",children:M}),E!==null&&s.jsx(Be,{conflict:E,onTakeTheirs:()=>void ie(),onKeepMine:oe,busy:R.isPending||m.isFetching}),A!==null&&s.jsx("p",{role:"alert",className:"bg-destructive/10 text-destructive mx-4 rounded-md px-3 py-2 text-sm",children:A}),s.jsx(ve,{className:"min-h-0 flex-1 overflow-auto",children:m.isPending&&!i?s.jsx("div",{className:"flex h-32 items-center justify-center",children:s.jsx(Ee,{size:"md",className:"text-muted-foreground",label:"Loading the file"})}):m.isError&&!i||h===void 0?s.jsx(D,{children:"This file couldn’t be read."}):g?s.jsx("textarea",{ref:U,"aria-label":`${t===null?"File":$(t)} contents`,value:b,onChange:l=>T(l.target.value),spellCheck:!1,autoComplete:"off",className:_e("text-foreground/90 border-border/60 bg-background field-sizing-content","focus-visible:border-ring focus-visible:ring-ring/50 min-h-64 w-full","resize-none rounded-md border px-3 py-2 font-mono text-xs","whitespace-pre-wrap focus-visible:ring-[3px] focus-visible:outline-none")}):s.jsx(Ke,{file:h})}),g&&s.jsxs(be,{className:"items-center gap-2 sm:justify-between",children:[s.jsx("span",{className:"text-muted-foreground text-xs","aria-live":"polite",children:R.isPending?"Saving…":H?"You haven’t saved your changes.":P&&!_?"Saved":_?"Not saved yet":""}),s.jsx("span",{className:"flex gap-2",children:H?s.jsxs(s.Fragment,{children:[s.jsx(x,{type:"button",variant:"ghost",size:"sm",onClick:()=>C(!1),children:"Keep editing"}),s.jsx(x,{type:"button",variant:"destructive",size:"sm",onClick:()=>{S(),c()},children:"Discard changes"})]}):s.jsxs(s.Fragment,{children:[s.jsx(x,{type:"button",variant:"ghost",size:"sm",onClick:ne,children:_?"Discard":i?"Cancel":"Done"}),s.jsx(x,{type:"button",size:"sm",disabled:!Z||R.isPending||E!==null,onClick:()=>R.mutate({text:b,baseCommit:k.commit}),children:"Save"})]})})]})]})})}function Be({conflict:e,onTakeTheirs:t,onKeepMine:i,busy:a}){const c=e.lastCommit,r=c===null?"Somebody":c.author;return s.jsxs("div",{role:"alert",className:"border-border/60 bg-muted/40 mx-4 space-y-2 rounded-md border px-3 py-2 text-sm",children:[s.jsx("p",{children:e.again?`${r} changed this file again while you were deciding, so it still isn’t saved.`:`${r} changed this file while you were editing it, so nothing was saved.`}),c!==null&&s.jsxs("p",{className:"text-muted-foreground text-xs",children:[c.subject," · ",G(c.at)]}),s.jsxs("div",{className:"flex flex-wrap gap-2",children:[s.jsx(x,{type:"button",variant:"outline",size:"sm",disabled:a,onClick:t,children:"Open their version"}),s.jsx(x,{type:"button",variant:"destructive",size:"sm",disabled:a,onClick:i,children:"Save mine over it"})]}),s.jsx("p",{className:"text-muted-foreground text-xs",children:"Opening theirs replaces what you typed here."})]})}function He(e,t){if(t===null)return"";const i=e===void 0?null:ke(e.lastCommit);return i===null?t:`${t} · ${i.label}`}function Ke({file:e}){switch(e.body.kind){case"text":return Pe(e.path)?s.jsx(pe,{content:e.body.text,className:"text-sm",errorFallback:"This file couldn’t be displayed."}):s.jsx("pre",{className:"text-foreground/90 overflow-x-auto font-mono text-xs whitespace-pre",children:e.body.text});case"binary":return s.jsx(D,{children:"This isn’t a text file, so it can’t be shown or edited here."});case"too-large":return s.jsxs(D,{children:["This file is larger than ",Ue(e.body.maxBytes),", so it isn’t shown here."]});case"not-readable":return s.jsx(D,{children:e.body.reason})}}function D({children:e}){return s.jsxs("div",{className:"text-muted-foreground flex h-32 flex-col items-center justify-center gap-2 px-6 text-center text-sm",children:[s.jsx(Te,{className:"size-(--size-icon-md) opacity-60"}),s.jsx("span",{children:e})]})}const $e=new Map([["REQUEST_TOO_LARGE","That is too much text to send in one go, so nothing was saved. A room’s files are for documents people read. Anything this big belongs in the room’s attachments."],["FILE_TOO_LARGE","This file would be bigger than this room allows, so nothing was saved."],["REPO_CAP_EXCEEDED","This room’s files are already as large as they are allowed to get, so nothing was saved."],["MAIN_CHECKOUT_DIRTY","Somebody changed this room’s files outside DorkOS, so saving is paused until that is sorted out. The warning above the files says how."],["MERGE_IN_FLIGHT","Somebody else is writing to this room’s files right now. Nothing was saved. Try again in a moment."],["PEOPLE_ONLY","Only a person can save a room’s files this way. An agent brings its work in by merging."],["ROOM_FILE_NOT_TEXT","This file has something in it that is not text, so it cannot be saved from here."],["ROOM_FILE_PATH_INVALID","That file name could mean somewhere else, so nothing was saved."],["ROOM_FILE_NOT_FOUND","This file is not in the room’s files any more, so there was nothing to save over."],["ROOM_FILE_NOT_READABLE","This is not a file that can be edited here."],["ROOM_HAS_NO_REPO","This room does not have files of its own any more."],["ROOM_REPOS_DISABLED","Rooms cannot have files of their own on this install right now, so nothing was saved."],["ROOM_REPO_GIT_UNAVAILABLE","This computer doesn’t have git installed, and a room’s files are a git repository."],["ROOM_NOT_FOUND","This room is not there any more."],["ROOM_ARCHIVED","This room is archived, so its files cannot be changed."]]);function Ye(e){return e===void 0?void 0:$e.get(e)}function X(e){if(typeof e!="object"||e===null)return null;const t=Re.safeParse(e.body);return t.success?t.data.conflict:null}const Ge=15e3;function qe(e,t,i){const a=JSON.stringify(I.entries(t));let c=0,r=null;const o=e.getQueryCache().subscribe(n=>{if(n.type!=="updated"||JSON.stringify(n.query.queryKey)!==a||r!==null)return;const m=Math.max(0,Ge-(Date.now()-c));r=setTimeout(()=>{r=null,c=Date.now(),i()},m)});return()=>{r!==null&&clearTimeout(r),o()}}function Ve(e){return{name:e.name,path:e.path,type:e.kind==="dir"?"dir":"file",size:e.size,isSymlink:e.kind==="symlink",lastCommit:e.lastCommit}}const Qe=new Map([["ROOM_FILE_NOT_READABLE","This isn’t a file that can be shown here."],["ROOM_FILE_NOT_FOUND","This file isn’t in the room’s files any more."]]);function tt(e){const{transport:t,queryClient:i,roomId:a,canChange:c=!0}=e,r=async o=>{try{return{status:"changed",commit:(await o()).commit}}catch(n){return Xe(n,i,a)}};return{scopeKey:`room:${a}`,cwd:null,writable:c,provenance:!0,filtersHidden:!1,preview:"inline",async showToEveryone(o){await t.openRoomCanvasDocument(a,{type:"file",sourcePath:o})},editable:c,changes:c?{maxUploadFiles:Y,upload:o=>r(()=>t.uploadRoomFiles(a,{dir:o.dir,baseCommit:o.baseCommit,replace:o.replace,files:o.files})),move:o=>r(()=>t.moveRoomFile(a,o)),remove:o=>r(()=>t.deleteRoomFile(a,o))}:void 0,async list(o){try{const n=await t.readRoomFiles(a,o===""?void 0:o);return{entries:n.entries.map(Ve),commit:n.commit}}catch(n){if(O(n)!==we)throw n;return{entries:[],absent:!0}}},async read(o){try{const n=await t.readRoomFileContent(a,o);return{path:n.path,size:n.size,lastCommit:n.lastCommit,commit:n.commit,body:n.body.kind==="text"?{kind:"text",text:n.body.text}:n.body.kind==="binary"?{kind:"binary"}:{kind:"too-large",maxBytes:n.body.maxBytes}}}catch(n){const m=Qe.get(O(n)??"");if(m===void 0)throw n;return{path:o,size:0,lastCommit:null,commit:null,body:{kind:"not-readable",reason:m}}}},async save(o){try{const n=await t.saveRoomFile(a,{path:o.path,baseCommit:o.baseCommit,text:o.text});return{status:"saved",commit:n.commit,lastCommit:n.lastCommit,committed:n.committed}}catch(n){const m=O(n);if(m===q){const v=X(n);return v!==null?{status:"conflict",commit:v.commit,lastCommit:v.lastCommit}:{status:"refused",reason:"Somebody changed this file while you were editing it, so nothing was saved. Close this and open it again to see their version."}}m==="MAIN_CHECKOUT_DIRTY"&&i.invalidateQueries({queryKey:I.repoStatus(a)});const h=Q(n)??Ye(m);if(h===void 0)throw n;return{status:"refused",reason:h}}},events(o){return qe(i,a,o)}}}function Xe(e,t,i){const a=O(e);if(a===q){const r=X(e);return r!==null?{status:"conflict",path:r.path,commit:r.commit,lastCommit:r.lastCommit}:{status:"refused",reason:"Somebody changed these files after you opened them, so nothing was changed. Look at the new version, then try again."}}if(a==="ROOM_FILE_EXISTS"){const r=e instanceof Error?e.message.replace(/`([^`]*)`/g,"“$1”"):"";return{status:"exists",reason:r.trim()!==""?r:"Something with that name is already there."}}a==="MAIN_CHECKOUT_DIRTY"&&t.invalidateQueries({queryKey:I.repoStatus(i)});const c=Me(e);if(c===void 0)throw e;return{status:"refused",reason:c}}export{De as C,et as F,je as N,Ge as R,Xe as a,tt as c,Se as g,Ze as n,ke as p,Me as r,We as t,qe as w};
@@ -1 +1 @@
1
- import{A as e,F as n}from"./index-B4TIVWAq.js";function s(t,o){return n(o,t)}function u(t,o){return{traits:o,soulContent:s(o,e(t.soulContent??""))}}export{u as p,s};
1
+ import{A as e,F as n}from"./index-_1qDsPCM.js";function s(t,o){return n(o,t)}function u(t,o){return{traits:o,soulContent:s(o,e(t.soulContent??""))}}export{u as p,s};
@@ -1 +1 @@
1
- import{D as d,r as t}from"./index-B4TIVWAq.js";import{p as E}from"./soul-file-tc6-HkDy.js";const C=400;function A(u,s){const f=(u==null?void 0:u.traits)??d,[a,c]=t.useState(null),r=t.useRef(null),n=t.useRef(null),o=t.useRef({agent:u,update:s});t.useEffect(()=>{o.current={agent:u,update:s}});const m=(u==null?void 0:u.id)??null;t.useEffect(()=>{r.current!==null&&(clearTimeout(r.current),r.current=null),n.current=null,c(null)},[m]);const l=t.useCallback(()=>{r.current!==null&&(clearTimeout(r.current),r.current=null);const e=n.current;if(n.current=null,e===null)return;const{agent:i,update:p}=o.current;i!==null&&p(E(i,e))},[]);t.useEffect(()=>()=>l(),[l]);const T=t.useCallback(e=>{c(e),n.current=e,r.current!==null&&clearTimeout(r.current),r.current=setTimeout(l,C)},[l]);return{traits:a??f,onTraitsChange:T}}export{A as u};
1
+ import{D as d,r as t}from"./index-_1qDsPCM.js";import{p as E}from"./soul-file-BWnNRUqb.js";const C=400;function A(u,s){const f=(u==null?void 0:u.traits)??d,[a,c]=t.useState(null),r=t.useRef(null),n=t.useRef(null),o=t.useRef({agent:u,update:s});t.useEffect(()=>{o.current={agent:u,update:s}});const m=(u==null?void 0:u.id)??null;t.useEffect(()=>{r.current!==null&&(clearTimeout(r.current),r.current=null),n.current=null,c(null)},[m]);const l=t.useCallback(()=>{r.current!==null&&(clearTimeout(r.current),r.current=null);const e=n.current;if(n.current=null,e===null)return;const{agent:i,update:p}=o.current;i!==null&&p(E(i,e))},[]);t.useEffect(()=>()=>l(),[l]);const T=t.useCallback(e=>{c(e),n.current=e,r.current!==null&&clearTimeout(r.current),r.current=setTimeout(l,C)},[l]);return{traits:a??f,onTraitsChange:T}}export{A as u};
@@ -524,8 +524,8 @@
524
524
  }
525
525
  })();
526
526
  </script>
527
- <script type="module" crossorigin src="/assets/index-B4TIVWAq.js"></script>
528
- <link rel="stylesheet" crossorigin href="/assets/index-BUcM96PD.css">
527
+ <script type="module" crossorigin src="/assets/index-_1qDsPCM.js"></script>
528
+ <link rel="stylesheet" crossorigin href="/assets/index-DtWF2VPM.css">
529
529
  </head>
530
530
  <body>
531
531
  <div id="root"></div>
@@ -0,0 +1,27 @@
1
+ -- HAND-WRITTEN data migration (DOR-2418). A connection used to be created as
2
+ -- `migration_needs_reconcile` even though nobody held access to it, so every
3
+ -- account an owner connected and never shared still reads "needs review": the
4
+ -- Connections list asks for a review of nothing, and an agent request cannot
5
+ -- be given it. New connections start `ready` now (connection-store.ts); this
6
+ -- settles the ones created before that.
7
+ --
8
+ -- A connection is `ready` when there is nothing to reconcile: no live grant of
9
+ -- any kind (named agent, session or every agent), no legacy agent attachment
10
+ -- and no attached legacy per-session link. Those legacy links are left for
11
+ -- review on purpose: the legacy migration marks such connections so the owner
12
+ -- re-confirms that access.
13
+ UPDATE connections
14
+ SET grant_reconciliation_status = 'ready'
15
+ WHERE grant_reconciliation_status = 'migration_needs_reconcile'
16
+ AND NOT EXISTS (
17
+ SELECT 1 FROM connection_operation_grants g
18
+ WHERE g.connection_id = connections.id AND g.revoked_at IS NULL
19
+ )
20
+ AND NOT EXISTS (
21
+ SELECT 1 FROM agent_connection_attachments a
22
+ WHERE a.connection_id = connections.id
23
+ )
24
+ AND NOT EXISTS (
25
+ SELECT 1 FROM session_connection_overrides s
26
+ WHERE s.connection_id = connections.id AND s.state = 'attached'
27
+ );
@@ -0,0 +1,12 @@
1
+ CREATE TABLE `session_limits` (
2
+ `session_id` text PRIMARY KEY NOT NULL,
3
+ `since` text NOT NULL,
4
+ `window` text NOT NULL,
5
+ `scope` text NOT NULL,
6
+ `resets_at` text,
7
+ `account_id` text,
8
+ `account_path` text,
9
+ `plan` text NOT NULL,
10
+ `state` text NOT NULL,
11
+ `updated_at` text NOT NULL
12
+ );