@powerhousedao/connect 1.0.0-dev.200 → 1.0.0-dev.201
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/PeopleFill-DQQdtDDe.js +2 -0
- package/dist/assets/PeopleFill-DQQdtDDe.js.map +1 -0
- package/dist/assets/PlusSquare-3oD1-vzk.js +2 -0
- package/dist/assets/PlusSquare-3oD1-vzk.js.map +1 -0
- package/dist/assets/PlusSquare-CspgRMoS-3oD1-vzk.js +2 -0
- package/dist/assets/PlusSquare-CspgRMoS-3oD1-vzk.js.map +1 -0
- package/dist/assets/{app-D5JkX4Uj.js → app-B4OFGo2O.js} +88 -88
- package/dist/assets/app-B4OFGo2O.js.map +1 -0
- package/dist/assets/{app-loader-DW3rvYVW.js → app-loader-Bfb1rJhE.js} +3 -3
- package/dist/assets/app-loader-Bfb1rJhE.js.map +1 -0
- package/dist/assets/app-loader-CcY7cVzc.css +1 -0
- package/dist/assets/{browser-BY_9pOaF.js → browser-CNIY9JaP.js} +2 -2
- package/dist/assets/{browser-BY_9pOaF.js.map → browser-CNIY9JaP.js.map} +1 -1
- package/dist/assets/{ccip-CSm_dBY-.js → ccip-BVfRrR8h.js} +2 -2
- package/dist/assets/{ccip-CSm_dBY-.js.map → ccip-BVfRrR8h.js.map} +1 -1
- package/dist/assets/content-XRS-E3Xz.js +7 -0
- package/dist/assets/content-XRS-E3Xz.js.map +1 -0
- package/dist/assets/{editor-DOC8FvI_.js → editor-8j593VN0.js} +2 -2
- package/dist/assets/{editor-DOC8FvI_.js.map → editor-8j593VN0.js.map} +1 -1
- package/dist/assets/{editor-CTeXLKFR.js → editor-BZo1P0Ae.js} +2 -2
- package/dist/assets/editor-BZo1P0Ae.js.map +1 -0
- package/dist/assets/{editor-BtO6Gypb.js → editor-Bo9Aijfe.js} +2 -2
- package/dist/assets/{editor-BtO6Gypb.js.map → editor-Bo9Aijfe.js.map} +1 -1
- package/dist/assets/{editor-DZFHIVmh.js → editor-ehywSkYm.js} +27 -27
- package/dist/assets/editor-ehywSkYm.js.map +1 -0
- package/dist/assets/editors-DVl-l3r5.js +3 -0
- package/dist/assets/{editors-BOSfNWsm.js.map → editors-DVl-l3r5.js.map} +1 -1
- package/dist/assets/{getEnsName-UdBChzmd.js → getEnsName-Cub4UekZ.js} +10 -10
- package/dist/assets/{getEnsName-UdBChzmd.js.map → getEnsName-Cub4UekZ.js.map} +1 -1
- package/dist/assets/{index-olgtq3p2.js → index-1TcnY8Is.js} +2 -2
- package/dist/assets/{index-olgtq3p2.js.map → index-1TcnY8Is.js.map} +1 -1
- package/dist/assets/index-BEgT5b-5.js +3 -0
- package/dist/assets/{index-D0RJI-lW.js.map → index-BEgT5b-5.js.map} +1 -1
- package/dist/assets/{isAddressEqual-B0vzZnZp.js → isAddressEqual-BPfaWlY1.js} +2 -2
- package/dist/assets/{isAddressEqual-B0vzZnZp.js.map → isAddressEqual-BPfaWlY1.js.map} +1 -1
- package/dist/assets/{json-_CDXNk-y.js → json-D0_QOK7W.js} +3 -3
- package/dist/assets/{json-_CDXNk-y.js.map → json-D0_QOK7W.js.map} +1 -1
- package/dist/assets/{main.vaE8bYXL.js → main.VYW2kwWP.js} +2 -2
- package/dist/assets/{main.vaE8bYXL.js.map → main.VYW2kwWP.js.map} +1 -1
- package/dist/assets/react-error-boundary.esm-qNZlhEqp.js +2 -0
- package/dist/assets/{react-error-boundary.esm-CGkLiKiB.js.map → react-error-boundary.esm-qNZlhEqp.js.map} +1 -1
- package/dist/assets/root-jEsJBgjx.js +17 -0
- package/dist/assets/root-jEsJBgjx.js.map +1 -0
- package/dist/assets/router-BXAzgRkG.js +12 -0
- package/dist/assets/router-BXAzgRkG.js.map +1 -0
- package/dist/index.html +3 -3
- package/dist/service-worker.js +1 -1
- package/dist/studio/index.d.ts +1 -0
- package/dist/studio/index.js +4 -0
- package/dist/studio/server.d.ts +1 -0
- package/dist/swEnv.js +2 -2
- package/dist/vite-envs.sh +5 -5
- package/package.json +8 -8
- package/dist/assets/app-D5JkX4Uj.js.map +0 -1
- package/dist/assets/app-loader-D4PbvzrB.css +0 -1
- package/dist/assets/app-loader-DW3rvYVW.js.map +0 -1
- package/dist/assets/content-CZbRXB00.js +0 -7
- package/dist/assets/content-CZbRXB00.js.map +0 -1
- package/dist/assets/editor-CTeXLKFR.js.map +0 -1
- package/dist/assets/editor-DZFHIVmh.js.map +0 -1
- package/dist/assets/editors-BOSfNWsm.js +0 -3
- package/dist/assets/index-D0RJI-lW.js +0 -3
- package/dist/assets/react-error-boundary.esm-CGkLiKiB.js +0 -2
- package/dist/assets/root-Uu_62bEJ.js +0 -17
- package/dist/assets/root-Uu_62bEJ.js.map +0 -1
- package/dist/assets/router-WBIxvb9L.js +0 -12
- package/dist/assets/router-WBIxvb9L.js.map +0 -1
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import{jsx as t,jsxs as m,Fragment as T}from"react/jsx-runtime";import*as y from"react";import{useState as H,createElement as X,useRef as D,useLayoutEffect as We,useEffect as w,useCallback as I,useMemo as Ye,Suspense as Je}from"react";import{u as Ze}from"./router-BXAzgRkG.js";import{t as E,ah as k,ai as O,aj as P,ak as Ge,F as B,al as Ve,am as Q,an as j,ao as ze,ap as Xe,aq as Fe,ar as qe,as as $e,at as _e,au as en,av as nn,aw as tn,ax as ue,ay as an,a4 as W,f as ge,az as sn,aA as rn,aB as on,aC as ln,aD as cn,aE as V,aF as z,aG as dn,a as F,u as un,aH as gn,aI as pe,aJ as pn,aK as mn,aL as An,aM as me,aN as Cn,aO as hn}from"./app-B4OFGo2O.js";import{o as q,s as fn,n as vn}from"./app-loader-Bfb1rJhE.js";import{P as Ae,m as xn,p as Nn,e as yn,N as oe,u as En,a as wn,b as Bn,E as Mn}from"./react-error-boundary.esm-qNZlhEqp.js";import Ln from"react-dom";import"./main.VYW2kwWP.js";import"./PeopleFill-DQQdtDDe.js";import"./getEnsName-Cub4UekZ.js";function Sn(n){const{uiNode:e,position:a,className:r,getParentNode:o}=n,i=o(e),{isDropTarget:l,dropProps:s}=Ae({...n,uiNode:i});return t("div",{...s,className:E("absolute left-0 z-10 flex h-0.5 w-full",a==="before"?"top-0":"bottom-0",l&&"bg-blue-800",r)})}function Ce(n){const{uiNode:e,nodeOptions:a,level:r=0,isAllowedToCreateDocuments:o,customDocumentIconSrc:i,setSelectedNode:l,getIsInSelectedNodePath:s,getIsSelected:u,onClick:p,onAddFolder:v,onRenameNode:N,onDuplicateNode:C,onDeleteNode:M,onDeleteDrive:b,showDriveSettingsModal:L,onAddTrigger:d,onRemoveTrigger:h,onAddInvalidTrigger:g}=n,[A,c]=H(k),[f,S]=H(!1),[U,$]=H(!0),[Y,J]=H(!1),{dragProps:he}=xn(n),{isDropTarget:fe,dropProps:ve}=Ae(n),_=10,K=e.kind!==O?e.children:null,ee=!!K&&K.length>0,ne=u(e),xe=s(e),Z=f?U:xe,G=e.kind===P,Ne=G&&e.sharingType===q,ye=G&&e.sharingType===fn,Ee=G&&e.sharingType===vn,we=Re(),te=E("text-gray-600 transition-colors group-hover/node:text-gray-900",ne&&"text-gray-900"),Be={[ze]:()=>C(e),[Xe]:()=>{l(e),$(!0),c(j)},[Fe]:()=>c(Q),[qe]:()=>{e.kind===P?b(e):M(e)},[$e]:()=>{e.kind===P&&L(e)},[_e]:()=>d(e.driveId),[en]:()=>h(e.driveId),[nn]:()=>g(e.driveId)},Me=a[e.sharingType][e.kind],Le=Object.entries(Ge).map(([x,R])=>({...R,id:x})).filter(x=>Me.includes(x.id));function Se(x){const R=Be[x];if(!R){console.error(`No handler found for dropdown menu item: ${x}`);return}R(),J(!1)}function ae(x){A===j?(v(x,e),l(e)):N(x,e),c(k)}const He=x=>{if(x.stopPropagation(),p==null||p(x),A!==Q){if(l(e),!f){S(!0);return}$(R=>!R)}};function se(){c(k)}function be(){return Ee?Ke:ye?Ue:Ne?De:e.kind===O?Te:Z?re:Ie}function Re(){return!!(fe||A===Q||A===j||Y||ne)}const Ie=t(B,{className:te,name:"FolderClose",size:20}),re=t(B,{className:te,name:"FolderOpen",size:22}),Te=t("img",{alt:"file icon",className:"size-7 object-contain",src:Nn(e.kind===O?e.documentType:yn,i)}),De=t(B,{name:"Hdd"}),Ue=t(B,{name:"Server"}),Ke="icon"in e&&e.icon?t("img",{alt:"drive icon",className:"size-6 object-contain",src:e.icon}):t(B,{name:"M"}),ke=t(B,{className:E(Z&&"rotate-90","ease pointer-events-none transition delay-75"),name:"Caret"}),Qe=t("div",{className:"mr-2 w-5 flex-none",children:be()}),je=m("div",{className:"group/node grid w-full grid-cols-[1fr,auto] items-center justify-between",children:[t("p",{className:"mr-1 truncate",children:e.name}),o?t(Ve,{items:Le,onItemClick:Se,onOpenChange:J,open:Y,children:t("button",{className:E("hidden group-hover/node:block",Y&&"block"),onClick:x=>{x.stopPropagation(),J(!0)},children:t(B,{className:"text-gray-600",name:"VerticalDots"})})}):null]}),Oe=t(oe,{defaultValue:e.name,onCancel:se,onSubmit:ae}),Pe=m("div",{className:"flex cursor-pointer items-center gap-2 px-1 py-2",style:{paddingLeft:`${(r+1)*_+20}px`},children:[re,t(oe,{defaultValue:"New Folder",onCancel:se,onSubmit:ae})]});return m(T,{children:[m("div",{...he,...ve,className:E("flex cursor-pointer select-none items-center rounded-lg px-1 py-2 text-gray-800 transition-colors hover:bg-gray-300",we&&"bg-gray-300 text-gray-900"),onClick:He,style:{transform:"translate(0, 0)",position:"relative",paddingLeft:`${r*_+(ee?0:20)}px`},children:[t(Sn,{...n,position:"before"}),ee?ke:null,Qe,A===k&&je,A===Q&&Oe]}),m("div",{className:E("max-h-0 overflow-hidden transition-[max-height] duration-300 ease-in-out",Z&&"max-h-screen"),children:[A===j&&Pe,K==null?void 0:K.map(x=>X(Ce,{...n,key:x.id,level:r+1,uiNode:x}))]})]})}function Hn(n){const{driveNodes:e,selectedDriveNode:a,label:r,groupSharingType:o,className:i,disableAddDrives:l,isAllowedToCreateDocuments:s,showAddDriveModal:u}=n,p=e.length>0,v=(a==null?void 0:a.sharingType)===o;function N(){u(o)}return m("div",{className:E("border-y border-gray-100 pl-4 pr-1 first-of-type:border-b-0 last-of-type:border-t-0",p&&"pb-2",v&&"bg-gray-100",i),children:[m("div",{className:tn("flex items-center justify-between py-1.5 pr-2"),children:[t("p",{className:"text-sm font-medium leading-6 text-gray-500",children:r}),t("div",{className:"size-4 text-gray-600",children:!l&&s?t("button",{className:E("mr-2 transition hover:text-gray-800"),onClick:N,children:t(B,{name:"PlusCircle",size:16})}):null})]}),e.map(C=>X(Ce,{...n,key:C.id,uiNode:C}))]})}const bn="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAARwAAABMCAYAAAC/DQijAAAACXBIWXMAACxLAAAsSwGlPZapAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAABWsSURBVHgB7Z3PbxtJdsff6yZlZ+1gKSwmGAMLmM7Ys/6xQaSM7UwOgalLgJzGOu4llpBDkJPt/AGR9BfYDhDkaPq0yCGwfAqQBVb0IZlF7Ik1yNqeWA7UA+zsTJDDcHbtGVlkV+17Vd0kxR/dVd1NipLrAxOkyWaz1T++/er7XlUBOBwOxxCq3/2sVt39tzkoEASHw+Hoo/rdRlWK1jagBPy9b2cDXGxCAXjgcDgcfYQtUZPCAyl8KV4fX4KCcILjcDgGCfGaDBHogSjwIygI16RyOBx7qH69UQ0FbEuQSiGQHj6054PZv9iEnLgIx+Fw7KG166/IkKRBqIeU0pMhlK9BAbgIx+FwdKh++XG1BeE2KY1WB7JxECXS669LvvjDYHYhl3nsIhyHw9FhtyVWZBuAIxwplIcD/H/ydGZbLX8FcuIiHIfDoXh3++MqCcI2eMq7oXy4QIyjHP7HKXLAhV+d+PMGZMRFOA6HQxPiho5qyLdh/0ZFOaQ+lKkS/EzviRBuQQ6c4DgcDnj3fz5ZkcI/GZvFSCIDWnRQtvmZnBz+THpzJ371H5lFxzWpHI63nD949vgqScF9UO0mCnE8ToXrlDinxlE1sejhYfQ5UuLKW/7qh396DyxxguNwvMW88+TJHJTw5yQks0oN2KdR7R7ZeS1JX2IPh8VGeTsgmx6UFr44ddmqNscJjsPxlvLuk+fVEHY36GWVoxjJgkLo1yodrkwXlN2oh5dRRrL+/HP6/8JXp/4sMP1NJzgOx1vIO//+dE6U5X0Sl5NaBShqUdFMJDRKVLpZKtBNLf0xQiQ8LEgy8ENv8Yv3zSIdZxo7HG8ZP/j4+bUQ4ecUuJxUHTTZENbPkTlMkqIe+j31EL6Ms1aCl+NsFn+n7VXbCBsntn5xw+S3XYTjcLwlVDa2K57fWqHI5UYctXSildi38fm/OppR8Y4HURNKaNNYNbsExn2s4vdBezy3/+/9yzeTtsEJjsPxFlD52VYNS/IuKUM16q7ATSKMmlCoC/2kTlSx+MRNJuzNUEXGsfZ29P897fvwsxYjDHyEm7/+0cX1YdvhBMfhOMRU/nW7Jn1JUY280issgNqL6QgIdlPh8XsY9aPSyhJnqSKBAuXfDHyvm06Hugf+2lfn5oPe7XGC43AcMir3tyvtEsyRoqyQKVzrF5aB1Hf8uReLEf+Lmk2csYJoGf15j1Cx+OgMlhYg/n/URGOB0s2zhwLkvf8/d7nOSznBcTgOEcce/Pq6J8NV6cH3dUZJC0FHBDrFe1o8OqIRC5EWDugKSNyMAo5opNIinZ2K0+P0LPYUCe4RMN1E4wipSZ/fcYLjcBwijv/LF1/TxV9RxXqddDdK6IlYoEdUuqnwbto7FopOFBR15lRiohpjQkcq0bow8nxkz/e1n8PriDyeKMJyaXGH4xBBarBM2tKAdpTajtPdQvWDknrYie57lOKW8XL8nbizJsRDU/BzG3VHTvpcp8R9NSiXWreIU+f6+7r/VZRa5/W3o2WE1yBpWnYRjsNxCDn60y+rpXJ4g2KKjygcOdkZXiKuFo66KEA3S7W3SdWfoerxgDxlJMceTuzpRAN26ahKR06e/JpU7x+Oe3A7mJ9XA3c5wXE4Djnf++cvVtHHa+TkVLsdM3u8lt4xbzzdvNJ+TOzBYNfnga65rIQnNppBp9mVtyNlE315pz3Tvt2MhCYG3z9/cRUKhv6QpgDR9NELfInNp08f5R582eFwZIcjHs+HFRKGJexNYevMEkc/Wlx89n47Pgz2RDZRhmp4pitengRoXX7vyHJz/tTQoUjxzPmLEibDJv2FDR/lg89++bgBDodj4hz76ZdL4OMt0o+K7MlQxa/jzFO3uK+n6nhPwR9Eza+OADXB8240r5y+l/T7kxSc3p8NaCPXtp4+qoPD4ZgoHO34iBv0sir3RDpRQV9ci6O8HBia4Yq9HpUN8+Tn6LcWmgvngrTf3ifB6fx84M/4C59t/iIAh8MxMVh0qP2zgWwo9wpNJDJx/Q2HM6p0p9NjHGVvRTE9f0ovF5t/eSow+d19TovLarjb3iYfaQUcDsfE2PnJieDIm5l5SmF/qlLlMpqHKuyktXWqO36tUuaUDue0eDvuUQ6f43ewYCo2zFTU4ZBWrjrRcTgmS3N5tila4aIMIeBam1hQpIgnwVOvpXo/rs+JB1ZvY+C15EJz8ZTVPFVTU/jHovPeuQ+ugsPhmBg7yycCGYYLIvSasg1qoPRIdGQc4UA8Xo7QhYAkRN/4UGaxCcCSqao09hDvVufmKuBwOCYGi44ncS2ObOImVBzNdAfm0lGO3JU3m4snAsjAtHVtqJRb5Vzz3jgcDnu+W/7BbRKWdRHSf2TctIqEpnc0wLZXf/2TH9YhI9PXl0rKJRflOByT542PyyQuTdmCjkGsm1hxpOMHwhNrkIMSWLL17HFid4hqtVYpHX81hyEu0WZfgwzM7JZ4fNRVcDgck4NMZO+fvrkjfPh7DLlq2O+OAqh6U4X3dv4qW1Mqxlpw0giCBrvWDX6890cfrHsC75IjbBWx0J93BTJSnatVjrReLQmJf4wgarSfKgO/j8DbuEkvNlGIh7tHfr8RbDas3PaYsz++WDNddqfU3gw2N4f+ztmzH1al377K2017YI4rQfl9OtxNvb16W188/2QdxgT/LVLCHD2u8Dak7LuAnh/6Zb9hW0dls8+gVApM13/hwqW5EKXRuZZ0LPrJsr1n5z6sQrtdNflKUvcfPp/Lrd9QMsXX5wX3h4qg4xOQCjTJbXmI5dJ6EfVsOzvidvmIf50M1QoILvjDqNAPgp2/fmcVcmJd+JcW4fRzmg4WCtgAS1oz7VnTE4LhkyKUsEIXSA2ygFini2fN9qDZ7D/pwcLLvm4d9ttNJxnIujdTulfECcYn9Mzuq+sk8ldpG+YgC8g3GLxnUjnOzeVyq7RtfhPC+tazR8smS1qdy4jLJtt7hkSMmvlPwJAZxHkWD+6jSBtjVupB+2/r6eOF3rd6jssN431F65kBvJm372LpH1+vUDyzEo9po7szhH/35m9mb0NOxu7hqAtM4j3b7x1rlasmy52ZuzR35sLFjZBFLavYMOQdcREinWB31d1pAtB237LfblnlEoJwN9xQF0MOfvTjS9fLrVfbvL7MYqM2ibZfyrtnzl/aTtt30U3E/IJAs+2yikIYKYzWS55FFcwppKMyn9Mzu6+fRMfFvHVAx2GXxDFvTVt7d/cOtOEblalS4+GoQf0KiawnYhqT6V0HS1oeVtOW4QsGdunuk0do+lHCE26MW3TOXPiAm5o3IDMUWvPJdeGytU/Gd08WaSHkbdvmbto2mVSO043zIRivstuESF7MUjDRM2q2e6HFuYWQW2zU8aRzWoLZ3z0MFiq+cUJWbs42ySTeVHU3yjDG9Z2/nQ2gACYiOCrK0W1/Y6RIbovzSa0umLGgLpwneSOIUXBkQ1HfEhSAlOK2zXaykPLds1CR7t+mlBOesqwNMKfC/lbaQtp3skDKOaNsKLKnZoYn4AHkgI+NBFHMOU03zjyiQxmqe/FEeChKhfmGE0uL86A8UBAsNnL8WSwyTOVG0aJD61vKF9kMwMbufZOLh09oQdFbnrunMQknfJsMW5sbkCinN3/IZKiCJaV2yeTYGh//0M8X4fCxKTTi1MdgCTIQekfXyTMOKNIJWuJoLiHt5cCNacw7UE4uZa4u5iKbVygNjUQrZDUqJUiEmor3JyI2MXTCD2teWfs4YbLgKLHN4EH5IZis11QAmi9zjPOkz+sxHBspb2Wqa7uJTfHqyHz42yPz/BoKYmKCQ+ndqs3y6A3+kXzhj+eCTYKaV6129vZwDxRyXx/XBU8ifD3pc33hy7E0EZPgm8PpIYaujY9D587JpM+PmkUqA4iU5pLVenP5N1gZ43ldOfKmtARZWKVrcLU4sWEmIjjWGQRCSDHwh4atcMX6gtU1LHXK5a9Fj3XUNSTmkN9xOsPfMLgaSj2Pj8qobdTeQMaokPYfWYdBnguKMhwD3VUsfZxa0odCZPajakkf2hjRufwb8pPGGXnSvv4IpoSJCE4o0TqTotr5PahmDYXoYAFdZGut18dPcR3Hi2ePV6PH4otnj07RyXTTZl1jjaxYFC1N9aGrEXKooLFQg/3aAq4b2nr6ePbFs09O0fN869vjs2q/2W/rXL+XYOfjyGpSsyB7oWjyeoU0F4G8/s0olNjnhW6Y09JdaOyC8965y1dthYILmPqL/qwvGsTllyQwUeXzAC+fP75Ny8wbn/QFRTnd7YMmC6IvSnwxz6rHs8c8CPVClrolvc7BVG8Woeaq5ta3x+b7PQnel7zf/LA0by86e7u52Po4KXVZmZuKM+FMbeSH5hmqXP7N4O9Cg88DFngl9nRe8HnCYm8dnUeUMjY7i2asgsM1BZ4nMvgfgxccWqRx+UI2qSKlZTalAOPOaKMiCHsw4IuWBfGzz/ZWC/OJu/X8ERvj9p3khtyRSahrYAVtm/AXRwk1w9tMUcUiWG3boGDb+Di7I0RFVwJnz+zIMHH/mF2kWFx0w6LCVcd8HvQeA97nLPae8BeyiA5KrMIUYN2XKq0mwvfDShtkTQB8JKWoQQb80G/s+U0u/xem4S0GL589WgVD+CCeuXBxxeykVU3DG5ALdUEv9AvNwHaRGL13/oOKB3gdzKlw6Lw3OrTsQIuwlrZtavvogqD91rCp5/G019KI/88+Dvk7ZpHriMpgrgT2whzTq42IYqIuDUZClrf+JoZvMiryToCPDW3bIi1s3N2CQTnB7GQC1hFO6LW3kx5cWi0kmYSZC8uw3n/Ch1aRhbA/+FKaNmGMitASMbygmXAmXAVLju4c7VwkUVq3Zv5taNrMpEFRjlUU1u+12Pg4dFevDns/rRI4NVIcYQzbdGkoxr/hG+XjVZMlOTLn5AdYIMFMPMfNdNXh0MlHd//BE8Si2lN6aHUg9Pql8QkT+rZNlL20yi3j7VORClplc/Zgmy6mk9i8ywFkqCDvu7htfBwSjuHGcMq5wbM/QjJDbyJ+iKb7rhD/xpPyjs3yoS8tfT7v+zAFFD48RR7YTxlx9ze+cKitunLm/CWrZgSFmxXTbsa5QtMhZngqUn5KX6xBBmz7F5Gn0gB7WDBqhsuqi7v3GLOPI82+P6S5CJAYwUX7m5p+m0mFgdFNpN73ttlNriD/xjZKKrfKm9SigIPG1AjOqParahbs2vSYlTWwxFRs9LLJRWjJX85g9gE2bbZvz89ZmqmZmgaWgkjNqCo9BfH/bXycKNPSiP8f+SyQvG3qmSK3hIhliD+kukoY7Pii/Bv62wKb5XeO7jTLu1MVLxgxLdPErI1qv/Z6Eg5LLDMTtic946GdiPZnS2x8nCFdERIjOPSj5ENak3lYz3HD6HBc9TdpWEfKU8L+Co4qeNP1MiOXKZmNmjYpEOQsHBRQWrXb+a4JlggQuU58Gx9nSFeExII/r+Wp9frhTCNpuf6e4xYddoutv3kL2EfBwbqqAj5g84tTqD0V5psJtK1W0eF+3TWN63EGBuNK6huGQewV8XNaxW5vYZxxhgr3J7o5yOyf4KCsJhWXOfLD493aLL9f5e/G/ap6DPu0HuIkMJ/u/a6XKGq9zTXTQbeK8m/eJuwFB8Xy8Iel2ht2FQglOlHKisRvbBbfL7/MwsfppLDTUv79GTf0kn2cPc01wzKM/fJvDjL208Q8/a/6sPdJPHgE+Q2wIOoQ2Uhaxg/9pk36T/VFGiN4gARQIvsr5lW4XCUOlqD0qlZZPhxs2nRS1wbp8WgwriAt5d8vBgKwkZKPrPW8NvFwnH+TgcLyallK3eMoJ+nAqVLu8xfBlLbF9B+HHc4gCQs1iPor2d61jYsymSMjBNu4HkcPxrWeMqTogBhwdS6dn83RXVh6eo6blGE4/yYThXo4tqXujMmwDzZd9F0avUvbsxzawHAmgz1fsRzac9SsBqY+TrcOKqGuZrQYJIoE9xw3rc52/k02ChWcqNR9DF4OTqzrwWGCq1GtvgCe1UBNeugLi2pmHH0cLXycmh5QLKHiW/YZxmnvxx+HYU1Oef3NQWcMpYp4hw6d1ZAUaV4OzyxIJ8JVMEL1jq6DJWcu/MmS0YJlf3Nr89GBONl0z+KkZkQ/sprWxO2l3Wpft+qnLUdfpOY+Dg/5mnxTGdWfTvjQoAzU6N73ZBYLVbmc+lc5/yYjhafFVV2N7eBMKVGONvyKWdcw9EwK3l2TB4ZYhYOEtOvkZzqyIUcZnkTDm0C0bh8fpPy2WT2OlIlDdvSPFhlD0W8DEtdL0Q1iYjGhwvk3mRlLHQ6dOFY9X6PvjDzR2fCz6TWNAo1nz7QdmD2uXj0oWPeeJ8E2mblRtNu37MbhxeDFf/9n4rZYjHOc4N/gyKQBv5/iBxrN/uD8m+yMRXB2eUiAgqMc2lCLg8wT2aXPnskDe1nN00SiZzqWzbSQxVfjAddHiQ7vU561UwrrAeEbaQvYzlc1FJn8t0rILxbOv8nOWLqb8p2ETtg7xpO5RyR5OW/K7Xq5VVqx8SOiaWfXJeIDn+s/uHNiqV1lY5BHJAzVCHQ2VSQZxxred+x9NTV75nlqapLIopSfq/cQroStdqYhPYeOc9SHTT3OSDClWcYdOWWOEQKdf5OLsXVtKDrK0WEyWs20oFcJPIj7XRKXDTUqIT1nG5EQg4PW7ysm8tUaYI2av3yJbxzq5sH7LIPY8GgAppGh1bzjQ5hJSX2nduRMw/k3uRib4Kj2cvFeTsYLpwAy1BhNF3gzd3Ml2+8aD53JWM5X1U9zVJ1PjBK+HPvB+Tf5GGvnzXF4Oa1yezHrVBlZMZ0FYpqxnaGiGPSA8TbfyOXjGEYfGUc2VDj/Jh9jFRzVDBJofUdIinJ4nVmnysiCAHnH5g49zfCIipmmn8mCntxv0dZkt553vAfT6AMxc7PN+Tc5GfvwFL70V8GWlCiHT+JJiA5fnP/77JMbcIhg8bSdddQePe/W1tNsBZJZfRzT6CPM6sM4/yY3YxecqM3cAEvSamN4vWrK3rHcsfU0t4clsulHzZ4pSqfGIdgcEfKsnXnKB7L6OKMK/oYul6HZ5vyb/ExkAK4snTpNK4ZZFPjiyTw9bi/R9LvDprk9bMSCzUO8FiI80fS0HBHmHVgtkyBYzIiRtdnm/Jv8lOhI1WHM8MV7+vzFNbSd8SCUe0bpH0V0N106e/bDVd15U/WnMqoX4cpTKb0H0pfr2UTGYv9l8A5C6W16KOumy9uOSxyZ4XUWdwzxKnjyilGHTC0Im1yQ+eb18XqRozeyIND5csfyfLHct+oGFdh84+UvHzVMlx33cdOM99wbB7kqoKYdHh2OpyWRKCue6M48KDwk49kLWq+PBW6Y0+HwQOK831DuHd9Xohfw7A4HreLaMR38DlI0mCvSt8MtAAAAAElFTkSuQmCC",Rn="data:image/png;base64,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",In="data:image/png;base64,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",Tn="data:image/png;base64,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",Dn=({onLogin:n})=>m(T,{children:[m("button",{className:"group/sidebar-footer hidden w-full cursor-pointer items-baseline justify-start text-sm font-semibold leading-10 text-gray-600 expanded:flex",onClick:n,children:[t("span",{children:"Login with"}),t("img",{className:"ml-2 h-5 group-hover/sidebar-footer:hidden",src:Tn}),t("img",{className:"ml-2 hidden h-5 group-hover/sidebar-footer:block",src:bn})]}),m("button",{"aria-label":"Login with Renown",className:"group/sidebar-footer hidden w-full cursor-pointer place-items-center p-1 collapsed:grid",onClick:n,children:[t("img",{className:"group-hover/sidebar-footer:hidden",src:In}),t("img",{className:"hidden group-hover/sidebar-footer:block",src:Rn})]})]}),Un=({address:n})=>{const e=En({address:n}),a=e.isLoading,r=e.data??void 0,o=wn(n);return m("div",{className:`flex gap-2 rounded-sm py-2.5 collapsed:justify-center
|
|
2
|
+
collapsed:px-1 expanding:justify-center expanding:px-1`,children:[t(Bn,{address:n,size:"40px"}),m("div",{className:"grid w-full items-center font-semibold collapsed:hidden expanding:hidden",children:[a?m(T,{children:[t("p",{className:"mb-2 h-4 w-4/5 animate-pulse rounded bg-gray-400"}),t("p",{className:"h-3 w-4/5 animate-pulse rounded bg-gray-400"})]}):null,!a&&!!r&&m(T,{children:[t("p",{className:"mb-2 h-4 text-sm text-gray-800 duration-1000 animate-in fade-in",children:r}),t("p",{className:"h-3 text-xs text-gray-600 duration-1000 animate-in fade-in",children:o})]}),!a&&!r&&t("p",{className:"text-sm text-gray-800 duration-1000 animate-in fade-in",children:o})]})]})};function Kn(n,e,a){const r=D(null);e&&n.current&&(r.current=window.getComputedStyle(n.current).animation),We(()=>{if(e&&n.current){const o=window.getComputedStyle(n.current);if(o.animationName!=="none"&&o.animation!==r.current){const i=s=>{s.target===n.current&&(l.removeEventListener("animationend",i),Ln.flushSync(()=>{a()}))},l=n.current;return l.addEventListener("animationend",i),()=>{l.removeEventListener("animationend",i)}}else a()}},[n,e,a])}function kn({className:n,...e}){return t("div",{className:E("shrink-0",n),...e})}function Qn({className:n,...e}){return t("div",{className:E("shrink-0",n),...e})}const jn=({collapsed:n=!1,maxWidth:e="304px",minWidth:a="80px",className:r,children:o,...i})=>{const l=D(null),[s,u]=H(n?"collapsed":"expanded");return Kn(l,["collapsing","expanding"].includes(s),()=>{u(p=>p==="collapsing"?"collapsed":p==="expanding"?"expanded":p)}),w(()=>{n&&s!=="collapsed"?u("collapsing"):!n&&s!=="expanded"&&u("expanding")},[n]),t("div",{...i,className:E(` group ${s} flex
|
|
3
|
+
h-full flex-col overflow-hidden transition-none duration-300`,r,["collapsing","expanding"].includes(s)&&"animate-out fade-out",["collapsed","expanded"].includes(s)&&"animate-in fade-in",s==="collapsed"&&"bg-transparent shadow-none",s==="expanded"&&"shadow-sidebar"),ref:l,style:{width:["collapsed","expanding"].includes(s)?a:e},children:o})},On=({address:n,className:e,onLogin:a,onClickSettings:r,...o})=>m(Qn,{...o,className:E("bg-gray-50 p-4 collapsed:px-1 expanding:px-1",e),children:[t("div",{className:"collapsed:bg-transparent collapsing:bg-transparent expanding:bg-transparent",children:n?t(Un,{address:n}):t(Dn,{onLogin:a})}),m("button",{className:"mt-3 flex w-full cursor-pointer gap-3 outline-none collapsed:px-3 expanding:px-3",onClick:r,children:[t(B,{className:"text-gray-600",name:"Settings"}),t("span",{className:"text-sm font-semibold leading-6 text-gray-800 collapsed:hidden expanding:hidden",children:"Settings"})]})]}),Pn=({onToggle:n,className:e,children:a,...r})=>m(kn,{...r,className:E("mb-4 flex justify-between gap-4 px-4 pt-11 collapsed:justify-center",e),children:[t("div",{className:"collapsed:hidden expanding:hidden",children:a||t("input",{className:"flex-1 rounded-md border border-gray-100 px-5 py-3 leading-none text-gray-600 placeholder-shown:bg-transparent",placeholder:"Create new document"})}),t("button",{className:`rounded-md border border-gray-100 p-3 outline-none hover:bg-slate-50
|
|
4
|
+
collapsed:rotate-180 collapsed:border-gray-100/10 collapsed:bg-gray-100
|
|
5
|
+
collapsed:shadow-sidebar collapsed:hover:bg-slate-50
|
|
6
|
+
expanding:hidden`,onClick:()=>n(),children:t(B,{className:"text-gray-600",name:"ArrowLeft",size:16})})]});function Wn({className:n,children:e,...a}){const[r,o]=H(!1);function i(s){o(s.scrollHeight-s.scrollTop-s.clientHeight>1)}const l=D(null);return w(()=>{if(!l.current)return;const s=new ResizeObserver(u=>{const p=u.pop();if(!p)return;const{target:v}=p;i(v)});return s.observe(l.current),()=>{s.disconnect()}},[l.current]),m(T,{children:[t("div",{className:E("no-scrollbar flex-1 overflow-auto text-gray-900 transition-shadow",n),onScroll:s=>i(s.currentTarget),ref:l,...a,children:e}),r?t("div",{className:"pointer-events-none z-10 -mt-12 h-12 w-full",style:{boxShadow:"inset 0px -33px 32px -16px rgba(0,0,0,0.1)"}}):null]})}const Yn=({onToggle:n,address:e,headerContent:a,onClickSettings:r,collapsed:o=!1,maxWidth:i="304px",minWidth:l="58px",onLogin:s,...u})=>m(jn,{...u,collapsed:o,maxWidth:i,minWidth:l,children:[m(Wn,{children:[t(Pn,{onToggle:n,children:a}),t("div",{className:"hidden expanded:block",children:u.children})]}),t(On,{address:e,onClickSettings:r,onLogin:s})]}),Jn=n=>y.createElement("svg",{width:107,height:20,viewBox:"0 0 107 20",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...n},y.createElement("path",{d:"M0.666504 10.1087C0.666504 8.30419 1.056 6.69918 1.83499 5.29371C2.61398 3.8709 3.6959 2.76908 5.08077 1.98827C6.48295 1.1901 8.0669 0.791016 9.83261 0.791016C11.9965 0.791016 13.8487 1.36361 15.3894 2.50881C16.9301 3.654 17.9601 5.21563 18.4794 7.1937H13.5977C13.2342 6.43023 12.7149 5.84896 12.0397 5.44988C11.3819 5.05079 10.6289 4.85125 9.78067 4.85125C8.41311 4.85125 7.30522 5.32842 6.45699 6.28275C5.60876 7.23708 5.18464 8.51241 5.18464 10.1087C5.18464 11.7051 5.60876 12.9804 6.45699 13.9347C7.30522 14.8891 8.41311 15.3662 9.78067 15.3662C10.6289 15.3662 11.3819 15.1667 12.0397 14.7676C12.7149 14.3685 13.2342 13.7872 13.5977 13.0238H18.4794C17.9601 15.0018 16.9301 16.5635 15.3894 17.7087C13.8487 18.8365 11.9965 19.4004 9.83261 19.4004C8.0669 19.4004 6.48295 19.01 5.08077 18.2292C3.6959 17.431 2.61398 16.3292 1.83499 14.9238C1.056 13.5183 0.666504 11.9133 0.666504 10.1087Z"}),y.createElement("path",{d:"M26.7553 19.4785C25.3358 19.4785 24.0548 19.1749 22.9123 18.5676C21.7871 17.9603 20.8956 17.0927 20.2378 15.9648C19.5973 14.837 19.277 13.5183 19.277 12.0087C19.277 10.5165 19.6059 9.20646 20.2638 8.07862C20.9216 6.93343 21.8217 6.05718 22.9642 5.44988C24.1068 4.84258 25.3878 4.53893 26.8073 4.53893C28.2267 4.53893 29.5078 4.84258 30.6503 5.44988C31.7928 6.05718 32.693 6.93343 33.3508 8.07862C34.0086 9.20646 34.3375 10.5165 34.3375 12.0087C34.3375 13.5009 33.9999 14.8197 33.3248 15.9648C32.667 17.0927 31.7582 17.9603 30.5983 18.5676C29.4558 19.1749 28.1748 19.4785 26.7553 19.4785ZM26.7553 15.6265C27.6036 15.6265 28.322 15.3142 28.9105 14.6895C29.5164 14.0649 29.8193 13.1713 29.8193 12.0087C29.8193 10.8462 29.5251 9.95257 28.9365 9.32792C28.3652 8.70327 27.6555 8.39095 26.8073 8.39095C25.9417 8.39095 25.2233 8.70327 24.6521 9.32792C24.0808 9.93522 23.7952 10.8288 23.7952 12.0087C23.7952 13.1713 24.0721 14.0649 24.6261 14.6895C25.1973 15.3142 25.9071 15.6265 26.7553 15.6265Z"}),y.createElement("path",{d:"M44.483 4.59098C46.1795 4.59098 47.5297 5.14623 48.5337 6.25672C49.5551 7.34986 50.0658 8.85944 50.0658 10.7854V19.2703H45.6515V11.3841C45.6515 10.4124 45.4005 9.6576 44.8985 9.11971C44.3964 8.58181 43.7213 8.31286 42.8731 8.31286C42.0249 8.31286 41.3497 8.58181 40.8477 9.11971C40.3457 9.6576 40.0947 10.4124 40.0947 11.3841V19.2703H35.6545V4.74714H40.0947V6.67315C40.5448 6.03115 41.1507 5.52796 41.9123 5.16358C42.674 4.78185 43.5309 4.59098 44.483 4.59098Z"}),y.createElement("path",{d:"M60.9412 4.59098C62.6376 4.59098 63.9879 5.14623 64.9919 6.25672C66.0133 7.34986 66.5239 8.85944 66.5239 10.7854V19.2703H62.1096V11.3841C62.1096 10.4124 61.8586 9.6576 61.3566 9.11971C60.8546 8.58181 60.1795 8.31286 59.3313 8.31286C58.483 8.31286 57.8079 8.58181 57.3059 9.11971C56.8039 9.6576 56.5529 10.4124 56.5529 11.3841V19.2703H52.1126V4.74714H56.5529V6.67315C57.0029 6.03115 57.6088 5.52796 58.3705 5.16358C59.1322 4.78185 59.9891 4.59098 60.9412 4.59098Z"}),y.createElement("path",{d:"M82.2291 11.7745C82.2291 12.1909 82.2031 12.6247 82.1512 13.0758H72.1022C72.1715 13.9781 72.4571 14.6722 72.9591 15.158C73.4784 15.6265 74.1103 15.8607 74.8546 15.8607C75.9625 15.8607 76.7329 15.3923 77.1656 14.4553H81.8915C81.6491 15.4096 81.2077 16.2685 80.5672 17.032C79.944 17.7954 79.1564 18.3941 78.2043 18.8278C77.2522 19.2616 76.1876 19.4785 75.0104 19.4785C73.5909 19.4785 72.3272 19.1749 71.2194 18.5676C70.1115 17.9603 69.2459 17.0927 68.6227 15.9648C67.9995 14.837 67.6879 13.5183 67.6879 12.0087C67.6879 10.4991 67.9909 9.18044 68.5968 8.05259C69.2199 6.92475 70.0855 6.05718 71.1934 5.44988C72.3013 4.84258 73.5736 4.53893 75.0104 4.53893C76.4126 4.53893 77.659 4.8339 78.7496 5.42385C79.8402 6.0138 80.6884 6.85534 81.2943 7.94848C81.9175 9.04163 82.2291 10.317 82.2291 11.7745ZM77.685 10.6033C77.685 9.83979 77.4253 9.23249 76.906 8.78135C76.3866 8.33022 75.7375 8.10465 74.9585 8.10465C74.2141 8.10465 73.5823 8.32154 73.063 8.75533C72.561 9.18911 72.2494 9.80509 72.1282 10.6033H77.685Z"}),y.createElement("path",{d:"M82.65 12.0087C82.65 10.4991 82.9529 9.18044 83.5588 8.05259C84.182 6.92475 85.0389 6.05718 86.1295 5.44988C87.2374 4.84258 88.5011 4.53893 89.9206 4.53893C91.7382 4.53893 93.2529 5.01609 94.4647 5.97042C95.6937 6.92475 96.4987 8.26949 96.8795 10.0046H92.1537C91.7555 8.89414 90.9852 8.33889 89.8427 8.33889C89.0291 8.33889 88.3799 8.65989 87.8952 9.3019C87.4105 9.92655 87.1681 10.8288 87.1681 12.0087C87.1681 13.1886 87.4105 14.0996 87.8952 14.7416C88.3799 15.3662 89.0291 15.6786 89.8427 15.6786C90.9852 15.6786 91.7555 15.1233 92.1537 14.0128H96.8795C96.4987 15.7133 95.6937 17.0493 94.4647 18.021C93.2356 18.9927 91.7209 19.4785 89.9206 19.4785C88.5011 19.4785 87.2374 19.1749 86.1295 18.5676C85.0389 17.9603 84.182 17.0927 83.5588 15.9648C82.9529 14.837 82.65 13.5183 82.65 12.0087Z"}),y.createElement("path",{d:"M106.291 15.4964V19.2703H104.032C102.423 19.2703 101.167 18.8799 100.267 18.0991C99.3672 17.3009 98.9171 16.0082 98.9171 14.221V8.443H97.1514V4.74714H98.9171V1.20745H103.357V4.74714H106.266V8.443H103.357V14.2731C103.357 14.7069 103.461 15.0192 103.669 15.2101C103.877 15.4009 104.223 15.4964 104.708 15.4964H106.291Z"})),Zn=n=>y.createElement("svg",{width:26,height:26,viewBox:"0 0 26 26",fill:"none",xmlns:"http://www.w3.org/2000/svg",...n},y.createElement("path",{d:"M20.105 7.37978C19.9097 7.18452 19.9097 6.86795 20.105 6.67269L22.5725 4.20504C24.9229 6.75889 26.0649 10.0248 25.9972 13.2723L20.105 7.37978ZM16.1222 10.6556C15.927 10.8509 15.927 11.1674 16.1222 11.3627L24.2614 19.5023C25.125 18.0079 25.667 16.378 25.8875 14.7149L19.3289 8.15595C19.1336 7.96068 18.817 7.96068 18.6218 8.15595L16.1222 10.6556ZM0.00284613 12.729C-0.0649083 15.9752 1.07706 19.2411 3.42753 21.7962L5.89504 19.3285C6.09029 19.1333 6.09029 18.8167 5.89504 18.6214L0.00284613 12.729ZM4.20485 22.5723C6.75858 24.9229 10.0256 26.0649 13.2716 25.9972L7.37946 20.1047C7.1842 19.9094 6.8676 19.9094 6.67234 20.1047L4.20485 22.5723ZM13.0519 18.5174C13.2472 18.3222 13.2472 18.0056 13.0519 17.8103L1.73982 6.49772C0.87626 7.99209 0.334223 9.62072 0.113713 11.2851L9.84523 21.0171C10.0405 21.2124 10.3571 21.2124 10.5524 21.0171L13.0519 18.5174ZM9.60276 7.08454C9.78969 6.88798 9.7858 6.57823 9.594 6.38642L5.55009 2.34233C4.93783 2.77105 4.35391 3.25889 3.80695 3.80588C3.25998 4.35287 2.77216 4.93684 2.34346 5.54912L6.3864 9.59111C6.57859 9.78325 6.88907 9.7867 7.08548 9.59887L8.47817 8.26702L9.60276 7.08454ZM11.2072 21.6733C11.012 21.8685 11.012 22.1851 11.2072 22.3804L14.7142 25.8875C16.3785 25.667 18.0071 25.1249 19.5013 24.2613L14.4139 19.1736C14.2186 18.9783 13.902 18.9783 13.7067 19.1736L11.2072 21.6733ZM23.6565 20.4496L11.0843 7.87683C10.8891 7.68156 10.5725 7.68156 10.3772 7.87683L7.87766 10.3765C7.68241 10.5718 7.68241 10.8883 7.87766 11.0836L20.4499 23.6564C21.0622 23.2277 21.6461 22.7398 22.193 22.1929C22.74 21.6459 23.2278 21.0619 23.6565 20.4496ZM17.8445 7.37855C18.0397 7.18329 18.0397 6.86672 17.8445 6.67146L11.2858 0.112477C9.62151 0.332998 7.99294 0.875053 6.49865 1.73866L14.6378 9.87821C14.8331 10.0735 15.1497 10.0735 15.3449 9.87821L17.8445 7.37855ZM21.7951 3.42769C19.2414 1.07712 15.9744 -0.0649114 12.7284 0.00284625L18.6205 5.89529C18.8158 6.09056 19.1324 6.09056 19.3277 5.89529L21.7951 3.42769Z",fill:"url(#paint0_linear_526_12008)"}),y.createElement("defs",null,y.createElement("linearGradient",{id:"paint0_linear_526_12008",x1:13,y1:0,x2:13,y2:26,gradientUnits:"userSpaceOnUse"},y.createElement("stop",{stopColor:"currentColor"}),y.createElement("stop",{offset:1,stopColor:"currentColor"})))),Gn=()=>{const{t:n}=ue();return m("div",{children:[t("p",{className:"font-medium",children:n("notifications.reloadApp")}),m("button",{onClick:()=>location.reload(),className:"underline decoration-solid underline-offset-2",children:[n("common.reloadConnect")," 🔄"]})]})};function Vn(){return{getDriveIdBySlug:async(n,e)=>{if(!n)return;const a=n.split("/");a.pop(),a.pop(),a.push("drives");const r=a.join("/");return(await(await fetch(r,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({query:`
|
|
7
|
+
query getDriveIdBySlug($slug: String!) {
|
|
8
|
+
driveIdBySlug(slug: $slug)
|
|
9
|
+
}
|
|
10
|
+
`,variables:{slug:e}})})).json()).data.driveIdBySlug}}}const zn=1e5,Xn=(n,e)=>e?n.toLocaleLowerCase().includes(`transmitter ${e} not found`):!1,Fn=()=>{const[n,e]=H([]),[a,r]=H(new Map),{addTrigger:o,removeTrigger:i,registerNewPullResponderTrigger:l,renameDrive:s,addRemoteDrive:u,documentDrives:p,setDriveSharingType:v}=an(),{getDriveIdBySlug:N}=Vn(),C=D(new Map),M=I(async(d,h,g)=>{e(c=>[...c,g]);const A=h.data;try{let c=a.get(g);c||(c=await l(d,A.url,{pullInterval:Number(A.interval)||3e3}),a.set(g,c),r(a)),await i(d,h.id),await o(d,c),C.current.delete(g)}catch(c){const f=C.current.get(g)||1;C.current.set(g,f===zn?f:f*10),W.error(c)}finally{e(c=>c.filter(f=>f!==g))}},[a,i,o,C,l]),b=I(async(d,h,g)=>{var A;e(c=>[...c,g]);try{const c=p.find(f=>f.state.global.id===d);if(!c)return;if(await i(d,h.id),await s(d,c.state.global.name+` (${c.state.global.id})`),await v(d,q),(A=h.data)!=null&&A.url&&c.state.global.slug){const f=await N(h.data.url,c.state.global.slug);if(f){const S=h.data.url.split("/");S[S.length-1]=f;const U=S.join("/");await u(U,{availableOffline:!0,sharingType:"PUBLIC",listeners:[],triggers:[]})}}}catch(c){W.error(c)}finally{e(c=>c.filter(f=>f!==g))}},[p,i,s,v,N,u]),L=I(async(d,h,g,A)=>{var c;switch(g){case 400:{if(Xn(A,(c=h.data)==null?void 0:c.listenerId)){if(!(localStorage.getItem("AUTO_REGISTER_PULL_RESPONDER")!=="false"))return;const S=`strands:${d}:${g}`;if(n.includes(S)||!h.data)return;const U=C.current.get(S)||0;setTimeout(()=>M(d,h,S),U)}break}case 404:{const f=`strands:${d}:${g}`;if(n.includes(f))return;setTimeout(()=>b(d,h,f),0);break}}},[b,M,n]);return Ye(()=>({strandsErrorHandler:L}),[L])},ie=window.__VITE_ENVS.APP_VERSION,le=window.navigator.userAgent.includes("Electron"),qn=window.navigator.appVersion.includes("Mac"),ce={"staging/makerdao":"deployments/staging/makerdao","staging/arbitrum":"arb-ltip","staging/powerhouse":"staging",makerdao:"deployments/makerdao",arbitrum:"deployments/arbitrum",arbgrants:"deployments/arbitrum",localhost:"develop"},$n=()=>{const n="https://raw.githubusercontent.com/powerhouse-inc/connect",e=window.location.href,a=Object.keys(ce).find(o=>e.includes(o)),r=a?ce[a]:void 0;if(r)return`${n}/${r}/package.json`},_n=async()=>{const n=$n();if(!n)return;const a=await(await fetch(n)).json(),{version:r}=a;return r},et=async()=>{const n=await _n();return n?{isLatest:n===ie,currentVersion:ie,latestVersion:n}:null},nt=()=>{const{t:n}=ue(),{documentDrives:e,driveNodes:a,setDriveNodes:r,makeUiDriveNodes:o,onSyncStatus:i}=ge(),l=D([...a]),s=D([]),[,,u]=sn(),{readDrives:p}=rn(),v=Fn(),N=on(),[C]=ln();async function M(){const d=await et();if(d!==null){if(d.isLatest)return!0;window.__VITE_ENVS.MODE==="development"||C.studioMode?console.warn(`Connect is outdated:
|
|
11
|
+
Current: ${d.currentVersion}
|
|
12
|
+
Latest: ${d.latestVersion}`):V(t(Gn,{}),{type:"connect-warning",toastId:"outdated-app",autoClose:!1})}}w(()=>{M().catch(console.error)},[]),w(()=>u(v),[u,e,v]);const b=I(async(d,h)=>{d.forEach(g=>{const A=l.current.find(c=>c.id===g.id);if(A){if(g.sharingType!==q&&g.syncStatus===cn&&s.current.includes(g))return s.current=s.current.filter(c=>c.id!==g.id),V(h("notifications.driveSyncSuccess"),{type:"connect-success"});(g.syncStatus===z||g.syncStatus===dn)&&g.syncStatus!==A.syncStatus&&s.current.push(g)}}),l.current=[...d],s.current.length>0&&await M()&&s.current.forEach(A=>{V(h(`notifications.${A.syncStatus===z?"driveSyncConflict":"driveSyncError"}`,{drive:A.name}),{type:"connect-warning",toastId:`${A.syncStatus===z?"driveSyncConflict":"driveSyncError"}-${A.id}`})})},[]);w(()=>{b(a,n).catch(console.error)},[a,n,b]);const L=I(async d=>{const h=await o(d);r(h)},[o,r]);w(()=>{const d=[...p,...e];L(d).catch(console.error)},[e,p,L]),w(()=>N?i(()=>L(e)):void 0,[N,e,i,L])};function tt(n){const e=n[0];if(!e)return;if(e.kind!==P)throw new Error("Node path is invalid, first node is not a drive node.");const a=at(e),r=n.slice(1).map(i=>encodeURIComponent(i.slug||i.name));return[a,...r].join("/")}function at(n){const e=n.slug||n.name||n.id;return`/d/${encodeURIComponent(e)}`}function de(n,e,a){if(!e)return null;const r=decodeURIComponent(e),o=n.find(s=>(s==null?void 0:s.id)===r||(s==null?void 0:s.slug)===r||(s==null?void 0:s.name)===r);if(!o)return null;if(!a)return o;const i=a.split("/").filter(Boolean).map(decodeURIComponent);let l=o;for(const s of i){if(l.kind===O)break;const u=l.children.find(p=>p.slug===s||p.name===s);if(!u){console.error("Node not found:",s);break}l=u}return l}const st=()=>{const n=F(),e=un(),{search:a,pathname:r}=e,o=gn(),{driveNodes:i,selectedNode:l,selectedNodePath:s,setSelectedNode:u}=pe(),p=o.driveId,v=o["*"],N=de(i,p,v),C=tt(s);w(()=>{!C||C===r||n({pathname:C,search:a})},[a,n,C]),w(()=>{l||!N||u(N)},[l,N,u]),w(()=>{const M=de(i,p,v);M&&u(M)},[i,p,v,u])};function rt(){const n=ge(),{driveNodesBySharingType:e}=n;return t(T,{children:pn.map(({label:a,sharingType:r,disableAddDrives:o})=>X(Hn,{...n,driveNodes:e[r],label:a,groupSharingType:r,key:r,disableAddDrives:o}))})}function ot(){const[n,e]=mn(Cn),{showModal:a}=An(),r=F(),{setSelectedNode:o}=pe(),{user:i,openRenown:l}=me(),s=localStorage.getItem("CONNECT_DEBUG")==="true";function u(){e(C=>!C)}const p=()=>{a("settingsModal",{onRefresh:()=>r(0)})},v=I(()=>{o(null),r("/")},[r,o]);return t(Yn,{id:"sidebar",collapsed:n,onToggle:u,onClickSettings:p,headerContent:m("div",{className:"flex h-full items-center",children:[t(B,{name:"Connect",className:"!h-[30px] !w-[100px] cursor-pointer",onClick:v}),s&&t("button",{id:"connect-debug-button",className:"ml-6",onClick:()=>a("debugSettingsModal",{}),children:t("img",{src:"settings.png",className:"h-5 text-gray-600"})})]}),address:i==null?void 0:i.address,onLogin:l,children:t(Mn,{fallback:t("div",{className:"text-center",children:"There was an error loading drives"}),onError:W.error,children:t(rt,{})})})}function ht(){nt(),st();const n=F(),{login:e}=me();w(()=>{var o;(o=window.electronAPI)==null||o.ready()},[]);const[a,r]=Ze();return w(()=>{const o=a.get("user");if(o&&e){const i=decodeURIComponent(o);a.delete("user"),r(a),e(i).catch(W.error)}},[e,a,r]),w(()=>{var i;return(i=window.electronAPI)==null?void 0:i.handleURL((l,s)=>{n(`/${s}`)})},[n]),m("div",{className:"h-screen",children:[le&&m("div",{className:`h-8 w-full
|
|
13
|
+
${qn&&"justify-center"}
|
|
14
|
+
flex items-center bg-gray-50`,children:[t(Zn,{className:"ml-1 mr-0.5 p-1.5"}),t(Jn,{className:"h-3 w-fit"})]}),t("div",{className:`flex items-stretch overflow-auto
|
|
15
|
+
${le?"h-app-height":"h-screen"}
|
|
16
|
+
`,role:"presentation",tabIndex:0,children:m(Je,{children:[t(ot,{}),t("div",{className:"relative flex-1 overflow-auto",children:t(hn,{})})]})})]})}export{ht as default};
|
|
17
|
+
//# sourceMappingURL=root-jEsJBgjx.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"root-jEsJBgjx.js","sources":["../../../../packages/design-system/dist/connect/components/tree-view/drop-indicator.js","../../../../packages/design-system/dist/connect/components/tree-view/tree-view.js","../../../../packages/design-system/dist/connect/components/drive-view/drive-view.js","../../../../packages/design-system/dist/assets/renown-hover.png.js","../../../../packages/design-system/dist/assets/renown-short-hover.png.js","../../../../packages/design-system/dist/assets/renown-short.png.js","../../../../packages/design-system/dist/assets/renown.png.js","../../../../packages/design-system/dist/connect/components/sidebar/sidebar-login.js","../../../../packages/design-system/dist/connect/components/sidebar/sidebar-user.js","../../../../packages/design-system/dist/powerhouse/hooks/animation.js","../../../../packages/design-system/dist/powerhouse/components/sidebar/sidebar.js","../../../../packages/design-system/dist/connect/components/sidebar/sidebar-footer.js","../../../../packages/design-system/dist/connect/components/sidebar/sidebar-header.js","../../../../packages/design-system/dist/powerhouse/components/sidebar/sidebar-panel.js","../../../../packages/design-system/dist/connect/components/sidebar/sidebar.js","../../assets/icons/connect.svg?react","../../assets/icons/logo.svg?react","../../src/components/toast/reload-connect-toast.tsx","../../src/hooks/useSwitchboard.ts","../../src/hooks/useClientErrorHandler.ts","../../src/hooks/utils.ts","../../src/hooks/useLoadInitialData.tsx","../../src/hooks/useNodeNavigation.ts","../../src/components/drive-container.tsx","../../src/components/sidebar.tsx","../../src/components/root.tsx"],"sourcesContent":["import { jsx as l } from \"react/jsx-runtime\";\nimport { twMerge as a } from \"tailwind-merge\";\nimport { useDrop as m } from \"../../hooks/drag-and-drop/use-drop.js\";\nfunction N(o) {\n const { uiNode: t, position: e, className: r, getParentNode: i } = o, s = i(t), { isDropTarget: n, dropProps: p } = m({\n ...o,\n uiNode: s\n });\n return /* @__PURE__ */ l(\n \"div\",\n {\n ...p,\n className: a(\n \"absolute left-0 z-10 flex h-0.5 w-full\",\n e === \"before\" ? \"top-0\" : \"bottom-0\",\n n && \"bg-blue-800\",\n r\n )\n }\n );\n}\nexport {\n N as DropIndicator\n};\n//# sourceMappingURL=drop-indicator.js.map\n","import { jsx as o, jsxs as d, Fragment as Ee } from \"react/jsx-runtime\";\nimport { useState as m, createElement as xe } from \"react\";\nimport { twMerge as a } from \"tailwind-merge\";\nimport { DropIndicator as Te } from \"./drop-indicator.js\";\nimport { READ as u, FILE as x, DRIVE as T, WRITE as p, CREATE as f } from \"../../constants/nodes.js\";\nimport { nodeOptionsMap as ye, DUPLICATE as Ce, NEW_FOLDER as we, RENAME as Me, DELETE as Oe, SETTINGS as Re, ADD_TRIGGER as Se, REMOVE_TRIGGER as ke, ADD_INVALID_TRIGGER as be } from \"../../constants/options.js\";\nimport { useDrag as Ae } from \"../../hooks/drag-and-drop/use-drag.js\";\nimport { useDrop as Le } from \"../../hooks/drag-and-drop/use-drop.js\";\nimport { LOCAL as Fe, CLOUD as Pe, PUBLIC as Ge } from \"../../constants/drives.js\";\nimport { getDocumentIconSrc as Ve } from \"../../utils/get-document-icon-src.js\";\nimport { DEFAULT as je } from \"../../constants/documents.js\";\nimport { Icon as r } from \"../../../powerhouse/components/icon/icon.js\";\nimport { ConnectDropdownMenu as _e } from \"../dropdown-menu/dropdown-menu.js\";\nimport { NodeInput as A } from \"../node-input/node-input.js\";\nfunction ze(s) {\n const {\n uiNode: e,\n nodeOptions: L,\n level: g = 0,\n isAllowedToCreateDocuments: F,\n customDocumentIconSrc: P,\n setSelectedNode: h,\n getIsInSelectedNodePath: G,\n getIsSelected: V,\n onClick: I,\n onAddFolder: j,\n onRenameNode: _,\n onDuplicateNode: z,\n onDeleteNode: H,\n onDeleteDrive: U,\n showDriveSettingsModal: $,\n onAddTrigger: W,\n onRemoveTrigger: B,\n onAddInvalidTrigger: K\n } = s, [t, l] = m(\n u\n ), [y, q] = m(!1), [J, C] = m(!0), [D, v] = m(!1), { dragProps: Q } = Ae(s), { isDropTarget: X, dropProps: Y } = Le(s), w = 10, c = e.kind !== x ? e.children : null, M = !!c && c.length > 0, O = V(e), Z = G(e), N = y ? J : Z, E = e.kind === T, ee = E && e.sharingType === Fe, ne = E && e.sharingType === Pe, oe = E && e.sharingType === Ge, te = le(), R = a(\n \"text-gray-600 transition-colors group-hover/node:text-gray-900\",\n O && \"text-gray-900\"\n ), re = {\n [Ce]: () => z(e),\n [we]: () => {\n h(e), C(!0), l(f);\n },\n [Me]: () => l(p),\n [Oe]: () => {\n e.kind === T ? U(e) : H(e);\n },\n [Re]: () => {\n e.kind === T && $(e);\n },\n [Se]: () => W(e.driveId),\n [ke]: () => B(e.driveId),\n [be]: () => K(e.driveId)\n }, ie = L[e.sharingType][e.kind], se = Object.entries(ye).map(([n, i]) => ({\n ...i,\n id: n\n })).filter((n) => ie.includes(n.id));\n function ce(n) {\n const i = re[n];\n if (!i) {\n console.error(`No handler found for dropdown menu item: ${n}`);\n return;\n }\n i(), v(!1);\n }\n function S(n) {\n t === f ? (j(n, e), h(e)) : _(n, e), l(u);\n }\n const de = (n) => {\n if (n.stopPropagation(), I == null || I(n), t !== p) {\n if (h(e), !y) {\n q(!0);\n return;\n }\n C((i) => !i);\n }\n };\n function k() {\n l(u);\n }\n function ae() {\n return oe ? ge : ne ? fe : ee ? pe : e.kind === x ? ue : N ? b : me;\n }\n function le() {\n return !!(X || t === p || t === f || D || O);\n }\n const me = /* @__PURE__ */ o(r, { className: R, name: \"FolderClose\", size: 20 }), b = /* @__PURE__ */ o(r, { className: R, name: \"FolderOpen\", size: 22 }), ue = /* @__PURE__ */ o(\n \"img\",\n {\n alt: \"file icon\",\n className: \"size-7 object-contain\",\n src: Ve(\n e.kind === x ? e.documentType : je,\n P\n )\n }\n ), pe = /* @__PURE__ */ o(r, { name: \"Hdd\" }), fe = /* @__PURE__ */ o(r, { name: \"Server\" }), ge = \"icon\" in e && e.icon ? /* @__PURE__ */ o(\n \"img\",\n {\n alt: \"drive icon\",\n className: \"size-6 object-contain\",\n src: e.icon\n }\n ) : /* @__PURE__ */ o(r, { name: \"M\" }), he = /* @__PURE__ */ o(\n r,\n {\n className: a(\n N && \"rotate-90\",\n \"ease pointer-events-none transition delay-75\"\n ),\n name: \"Caret\"\n }\n ), Ie = /* @__PURE__ */ o(\"div\", { className: \"mr-2 w-5 flex-none\", children: ae() }), De = /* @__PURE__ */ d(\"div\", { className: \"group/node grid w-full grid-cols-[1fr,auto] items-center justify-between\", children: [\n /* @__PURE__ */ o(\"p\", { className: \"mr-1 truncate\", children: e.name }),\n F ? /* @__PURE__ */ o(\n _e,\n {\n items: se,\n onItemClick: ce,\n onOpenChange: v,\n open: D,\n children: /* @__PURE__ */ o(\n \"button\",\n {\n className: a(\n \"hidden group-hover/node:block\",\n D && \"block\"\n ),\n onClick: (n) => {\n n.stopPropagation(), v(!0);\n },\n children: /* @__PURE__ */ o(r, { className: \"text-gray-600\", name: \"VerticalDots\" })\n }\n )\n }\n ) : null\n ] }), ve = /* @__PURE__ */ o(\n A,\n {\n defaultValue: e.name,\n onCancel: k,\n onSubmit: S\n }\n ), Ne = /* @__PURE__ */ d(\n \"div\",\n {\n className: \"flex cursor-pointer items-center gap-2 px-1 py-2\",\n style: {\n paddingLeft: `${(g + 1) * w + 20}px`\n },\n children: [\n b,\n /* @__PURE__ */ o(\n A,\n {\n defaultValue: \"New Folder\",\n onCancel: k,\n onSubmit: S\n }\n )\n ]\n }\n );\n return /* @__PURE__ */ d(Ee, { children: [\n /* @__PURE__ */ d(\n \"div\",\n {\n ...Q,\n ...Y,\n className: a(\n \"flex cursor-pointer select-none items-center rounded-lg px-1 py-2 text-gray-800 transition-colors hover:bg-gray-300\",\n te && \"bg-gray-300 text-gray-900\"\n ),\n onClick: de,\n style: {\n transform: \"translate(0, 0)\",\n position: \"relative\",\n paddingLeft: `${g * w + (M ? 0 : 20)}px`\n },\n children: [\n /* @__PURE__ */ o(Te, { ...s, position: \"before\" }),\n M ? he : null,\n Ie,\n t === u && De,\n t === p && ve\n ]\n }\n ),\n /* @__PURE__ */ d(\n \"div\",\n {\n className: a(\n \"max-h-0 overflow-hidden transition-[max-height] duration-300 ease-in-out\",\n N && \"max-h-screen\"\n ),\n children: [\n t === f && Ne,\n c == null ? void 0 : c.map((n) => /* @__PURE__ */ xe(\n ze,\n {\n ...s,\n key: n.id,\n level: g + 1,\n uiNode: n\n }\n ))\n ]\n }\n )\n ] });\n}\nexport {\n ze as ConnectTreeView\n};\n//# sourceMappingURL=tree-view.js.map\n","import { jsxs as s, jsx as e } from \"react/jsx-runtime\";\nimport { createElement as y } from \"react\";\nimport { twMerge as a, twJoin as b } from \"tailwind-merge\";\nimport { ConnectTreeView as u } from \"../tree-view/tree-view.js\";\nimport { Icon as v } from \"../../../powerhouse/components/icon/icon.js\";\nfunction A(i) {\n const {\n driveNodes: t,\n selectedDriveNode: r,\n label: l,\n groupSharingType: o,\n className: d,\n disableAddDrives: m,\n isAllowedToCreateDocuments: c,\n showAddDriveModal: p\n } = i, g = t.length > 0, h = (r == null ? void 0 : r.sharingType) === o;\n function f() {\n p(o);\n }\n return /* @__PURE__ */ s(\n \"div\",\n {\n className: a(\n \"border-y border-gray-100 pl-4 pr-1 first-of-type:border-b-0 last-of-type:border-t-0\",\n g && \"pb-2\",\n h && \"bg-gray-100\",\n d\n ),\n children: [\n /* @__PURE__ */ s(\"div\", { className: b(\"flex items-center justify-between py-1.5 pr-2\"), children: [\n /* @__PURE__ */ e(\"p\", { className: \"text-sm font-medium leading-6 text-gray-500\", children: l }),\n /* @__PURE__ */ e(\"div\", { className: \"size-4 text-gray-600\", children: !m && c ? /* @__PURE__ */ e(\n \"button\",\n {\n className: a(\"mr-2 transition hover:text-gray-800\"),\n onClick: f,\n children: /* @__PURE__ */ e(v, { name: \"PlusCircle\", size: 16 })\n }\n ) : null })\n ] }),\n t.map((n) => /* @__PURE__ */ y(u, { ...i, key: n.id, uiNode: n }))\n ]\n }\n );\n}\nexport {\n A as DriveView\n};\n//# sourceMappingURL=drive-view.js.map\n","const f = \"data:image/png;base64,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\";\nexport {\n f as default\n};\n//# sourceMappingURL=renown-hover.png.js.map\n","const A = \"data:image/png;base64,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\";\nexport {\n A as default\n};\n//# sourceMappingURL=renown-short-hover.png.js.map\n","const A = \"data:image/png;base64,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\";\nexport {\n A as default\n};\n//# sourceMappingURL=renown-short.png.js.map\n","const A = \"data:image/png;base64,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\";\nexport {\n A as default\n};\n//# sourceMappingURL=renown.png.js.map\n","import { jsxs as e, Fragment as i, jsx as r } from \"react/jsx-runtime\";\nimport s from \"../../../assets/renown-hover.png.js\";\nimport n from \"../../../assets/renown-short-hover.png.js\";\nimport t from \"../../../assets/renown-short.png.js\";\nimport a from \"../../../assets/renown.png.js\";\nconst p = ({ onLogin: o }) => /* @__PURE__ */ e(i, { children: [\n /* @__PURE__ */ e(\n \"button\",\n {\n className: \"group/sidebar-footer hidden w-full cursor-pointer items-baseline justify-start text-sm font-semibold leading-10 text-gray-600 expanded:flex\",\n onClick: o,\n children: [\n /* @__PURE__ */ r(\"span\", { children: \"Login with\" }),\n /* @__PURE__ */ r(\n \"img\",\n {\n className: \"ml-2 h-5 group-hover/sidebar-footer:hidden\",\n src: a\n }\n ),\n /* @__PURE__ */ r(\n \"img\",\n {\n className: \"ml-2 hidden h-5 group-hover/sidebar-footer:block\",\n src: s\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ e(\n \"button\",\n {\n \"aria-label\": \"Login with Renown\",\n className: \"group/sidebar-footer hidden w-full cursor-pointer place-items-center p-1 collapsed:grid\",\n onClick: o,\n children: [\n /* @__PURE__ */ r(\"img\", { className: \"group-hover/sidebar-footer:hidden\", src: t }),\n /* @__PURE__ */ r(\n \"img\",\n {\n className: \"hidden group-hover/sidebar-footer:block\",\n src: n\n }\n )\n ]\n }\n )\n] });\nexport {\n p as SidebarLogin\n};\n//# sourceMappingURL=sidebar-login.js.map\n","import { jsxs as n, jsx as e, Fragment as i } from \"react/jsx-runtime\";\nimport { useEnsName as m } from \"wagmi\";\nimport { formatEthAddress as o } from \"../../utils/address.js\";\nimport { ENSAvatar as l } from \"../ens-avatar/ens-avatar.js\";\nconst N = ({ address: s }) => {\n const r = m({ address: s }), a = r.isLoading, d = r.data ?? void 0, t = o(s);\n return /* @__PURE__ */ n(\n \"div\",\n {\n className: `flex gap-2 rounded-sm py-2.5 collapsed:justify-center\n collapsed:px-1 expanding:justify-center expanding:px-1`,\n children: [\n /* @__PURE__ */ e(l, { address: s, size: \"40px\" }),\n /* @__PURE__ */ n(\"div\", { className: \"grid w-full items-center font-semibold collapsed:hidden expanding:hidden\", children: [\n a ? /* @__PURE__ */ n(i, { children: [\n /* @__PURE__ */ e(\"p\", { className: \"mb-2 h-4 w-4/5 animate-pulse rounded bg-gray-400\" }),\n /* @__PURE__ */ e(\"p\", { className: \"h-3 w-4/5 animate-pulse rounded bg-gray-400\" })\n ] }) : null,\n !a && !!d && /* @__PURE__ */ n(i, { children: [\n /* @__PURE__ */ e(\"p\", { className: \"mb-2 h-4 text-sm text-gray-800 duration-1000 animate-in fade-in\", children: d }),\n /* @__PURE__ */ e(\"p\", { className: \"h-3 text-xs text-gray-600 duration-1000 animate-in fade-in\", children: t })\n ] }),\n !a && !d && /* @__PURE__ */ e(\"p\", { className: \"text-sm text-gray-800 duration-1000 animate-in fade-in\", children: t })\n ] })\n ]\n }\n );\n};\nexport {\n N as SidebarUser\n};\n//# sourceMappingURL=sidebar-user.js.map\n","import { useState as a, useCallback as s, useRef as l, useLayoutEffect as d } from \"react\";\nimport f from \"react-dom\";\nfunction g(t, n = !0) {\n const [e, i] = a(!0);\n return c(\n t,\n e && n,\n s(() => i(!1), [])\n ), e && n;\n}\nfunction p(t, n) {\n const [e, i] = a(!1), [o, r] = a(\"idle\");\n return !n && t.current && o === \"idle\" && (i(!0), r(\"exiting\")), !t.current && o === \"exited\" && r(\"idle\"), c(\n t,\n e,\n s(() => {\n r(\"exited\"), i(!1);\n }, [])\n ), e;\n}\nfunction c(t, n, e) {\n const i = l(null);\n n && t.current && (i.current = window.getComputedStyle(t.current).animation), d(() => {\n if (n && t.current) {\n const o = window.getComputedStyle(t.current);\n if (o.animationName !== \"none\" && o.animation !== i.current) {\n const r = (m) => {\n m.target === t.current && (u.removeEventListener(\"animationend\", r), f.flushSync(() => {\n e();\n }));\n }, u = t.current;\n return u.addEventListener(\"animationend\", r), () => {\n u.removeEventListener(\"animationend\", r);\n };\n } else\n e();\n }\n }, [t, n, e]);\n}\nexport {\n c as useAnimation,\n g as useEnterAnimation,\n p as useExitAnimation\n};\n//# sourceMappingURL=animation.js.map\n","import { jsx as s } from \"react/jsx-runtime\";\nimport { useRef as f, useState as u, useEffect as x } from \"react\";\nimport { twMerge as o } from \"tailwind-merge\";\nimport { useAnimation as m } from \"../../hooks/animation.js\";\nfunction v({ className: n, ...a }) {\n return /* @__PURE__ */ s(\"div\", { className: o(\"shrink-0\", n), ...a });\n}\nfunction N({ className: n, ...a }) {\n return /* @__PURE__ */ s(\"div\", { className: o(\"shrink-0\", n), ...a });\n}\nconst S = ({\n collapsed: n = !1,\n maxWidth: a = \"304px\",\n minWidth: t = \"80px\",\n className: r,\n children: p,\n ...c\n}) => {\n const l = f(null), [e, i] = u(\n n ? \"collapsed\" : \"expanded\"\n );\n return m(l, [\"collapsing\", \"expanding\"].includes(e), () => {\n i(\n (d) => d === \"collapsing\" ? \"collapsed\" : d === \"expanding\" ? \"expanded\" : d\n );\n }), x(() => {\n n && e !== \"collapsed\" ? i(\"collapsing\") : !n && e !== \"expanded\" && i(\"expanding\");\n }, [n]), /* @__PURE__ */ s(\n \"div\",\n {\n ...c,\n className: o(\n ` group ${e} flex\n h-full flex-col overflow-hidden transition-none duration-300`,\n r,\n [\"collapsing\", \"expanding\"].includes(e) && \"animate-out fade-out\",\n [\"collapsed\", \"expanded\"].includes(e) && \"animate-in fade-in\",\n e === \"collapsed\" && \"bg-transparent shadow-none\",\n e === \"expanded\" && \"shadow-sidebar\"\n ),\n ref: l,\n style: {\n width: [\"collapsed\", \"expanding\"].includes(e) ? t : a\n },\n children: p\n }\n );\n};\nexport {\n S as Sidebar,\n N as SidebarFooter,\n v as SidebarHeader\n};\n//# sourceMappingURL=sidebar.js.map\n","import { jsxs as r, jsx as e } from \"react/jsx-runtime\";\nimport { twMerge as p } from \"tailwind-merge\";\nimport { SidebarLogin as s } from \"./sidebar-login.js\";\nimport { SidebarUser as l } from \"./sidebar-user.js\";\nimport { SidebarFooter as d } from \"../../../powerhouse/components/sidebar/sidebar.js\";\nimport { Icon as m } from \"../../../powerhouse/components/icon/icon.js\";\nconst S = ({\n address: n,\n className: a,\n onLogin: t,\n onClickSettings: o,\n ...i\n}) => /* @__PURE__ */ r(\n d,\n {\n ...i,\n className: p(\n \"bg-gray-50 p-4 collapsed:px-1 expanding:px-1\",\n a\n ),\n children: [\n /* @__PURE__ */ e(\"div\", { className: \"collapsed:bg-transparent collapsing:bg-transparent expanding:bg-transparent\", children: n ? /* @__PURE__ */ e(l, { address: n }) : /* @__PURE__ */ e(s, { onLogin: t }) }),\n /* @__PURE__ */ r(\n \"button\",\n {\n className: \"mt-3 flex w-full cursor-pointer gap-3 outline-none collapsed:px-3 expanding:px-3\",\n onClick: o,\n children: [\n /* @__PURE__ */ e(m, { className: \"text-gray-600\", name: \"Settings\" }),\n /* @__PURE__ */ e(\"span\", { className: \"text-sm font-semibold leading-6 text-gray-800 collapsed:hidden expanding:hidden\", children: \"Settings\" })\n ]\n }\n )\n ]\n }\n);\nexport {\n S as ConnectSidebarFooter\n};\n//# sourceMappingURL=sidebar-footer.js.map\n","import { jsxs as n, jsx as e } from \"react/jsx-runtime\";\nimport { twMerge as l } from \"tailwind-merge\";\nimport { SidebarHeader as t } from \"../../../powerhouse/components/sidebar/sidebar.js\";\nimport { Icon as s } from \"../../../powerhouse/components/icon/icon.js\";\nconst b = ({\n onToggle: r,\n className: a,\n children: d,\n ...o\n}) => /* @__PURE__ */ n(\n t,\n {\n ...o,\n className: l(\n \"mb-4 flex justify-between gap-4 px-4 pt-11 collapsed:justify-center\",\n a\n ),\n children: [\n /* @__PURE__ */ e(\"div\", { className: \"collapsed:hidden expanding:hidden\", children: d || /* @__PURE__ */ e(\n \"input\",\n {\n className: \"flex-1 rounded-md border border-gray-100 px-5 py-3 leading-none text-gray-600 placeholder-shown:bg-transparent\",\n placeholder: \"Create new document\"\n }\n ) }),\n /* @__PURE__ */ e(\n \"button\",\n {\n className: `rounded-md border border-gray-100 p-3 outline-none hover:bg-slate-50\n collapsed:rotate-180 collapsed:border-gray-100/10 collapsed:bg-gray-100\n collapsed:shadow-sidebar collapsed:hover:bg-slate-50\n expanding:hidden`,\n onClick: () => r(),\n children: /* @__PURE__ */ e(s, { className: \"text-gray-600\", name: \"ArrowLeft\", size: 16 })\n }\n )\n ]\n }\n);\nexport {\n b as ConnectSidebarHeader\n};\n//# sourceMappingURL=sidebar-header.js.map\n","import { jsxs as p, Fragment as m, jsx as o } from \"react/jsx-runtime\";\nimport { useState as x, useRef as h, useEffect as b } from \"react\";\nimport { twMerge as d } from \"tailwind-merge\";\nfunction w({\n className: s,\n children: l,\n ...c\n}) {\n const [i, a] = x(!1);\n function t(e) {\n a(\n e.scrollHeight - e.scrollTop - e.clientHeight > 1\n );\n }\n const r = h(null);\n return b(() => {\n if (!r.current)\n return;\n const e = new ResizeObserver((u) => {\n const n = u.pop();\n if (!n)\n return;\n const { target: f } = n;\n t(f);\n });\n return e.observe(r.current), () => {\n e.disconnect();\n };\n }, [r.current]), /* @__PURE__ */ p(m, { children: [\n /* @__PURE__ */ o(\n \"div\",\n {\n className: d(\n \"no-scrollbar flex-1 overflow-auto text-gray-900 transition-shadow\",\n s\n ),\n onScroll: (e) => t(e.currentTarget),\n ref: r,\n ...c,\n children: l\n }\n ),\n i ? /* @__PURE__ */ o(\n \"div\",\n {\n className: \"pointer-events-none z-10 -mt-12 h-12 w-full\",\n style: {\n boxShadow: \"inset 0px -33px 32px -16px rgba(0,0,0,0.1)\"\n }\n }\n ) : null\n ] });\n}\nexport {\n w as SidebarPanel\n};\n//# sourceMappingURL=sidebar-panel.js.map\n","import { jsxs as i, jsx as e } from \"react/jsx-runtime\";\nimport { ConnectSidebarFooter as p } from \"./sidebar-footer.js\";\nimport { ConnectSidebarHeader as b } from \"./sidebar-header.js\";\nimport { Sidebar as f } from \"../../../powerhouse/components/sidebar/sidebar.js\";\nimport { SidebarPanel as h } from \"../../../powerhouse/components/sidebar/sidebar-panel.js\";\nconst k = ({\n onToggle: o,\n address: d,\n headerContent: n,\n onClickSettings: t,\n collapsed: a = !1,\n maxWidth: c = \"304px\",\n minWidth: m = \"58px\",\n onLogin: l,\n ...r\n}) => /* @__PURE__ */ i(\n f,\n {\n ...r,\n collapsed: a,\n maxWidth: c,\n minWidth: m,\n children: [\n /* @__PURE__ */ i(h, { children: [\n /* @__PURE__ */ e(b, { onToggle: o, children: n }),\n /* @__PURE__ */ e(\"div\", { className: \"hidden expanded:block\", children: r.children })\n ] }),\n /* @__PURE__ */ e(\n p,\n {\n address: d,\n onClickSettings: t,\n onLogin: l\n }\n )\n ]\n }\n);\nexport {\n k as ConnectSidebar\n};\n//# sourceMappingURL=sidebar.js.map\n","import * as React from \"react\";\nconst SvgConnect = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 107, height: 20, viewBox: \"0 0 107 20\", fill: \"currentColor\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M0.666504 10.1087C0.666504 8.30419 1.056 6.69918 1.83499 5.29371C2.61398 3.8709 3.6959 2.76908 5.08077 1.98827C6.48295 1.1901 8.0669 0.791016 9.83261 0.791016C11.9965 0.791016 13.8487 1.36361 15.3894 2.50881C16.9301 3.654 17.9601 5.21563 18.4794 7.1937H13.5977C13.2342 6.43023 12.7149 5.84896 12.0397 5.44988C11.3819 5.05079 10.6289 4.85125 9.78067 4.85125C8.41311 4.85125 7.30522 5.32842 6.45699 6.28275C5.60876 7.23708 5.18464 8.51241 5.18464 10.1087C5.18464 11.7051 5.60876 12.9804 6.45699 13.9347C7.30522 14.8891 8.41311 15.3662 9.78067 15.3662C10.6289 15.3662 11.3819 15.1667 12.0397 14.7676C12.7149 14.3685 13.2342 13.7872 13.5977 13.0238H18.4794C17.9601 15.0018 16.9301 16.5635 15.3894 17.7087C13.8487 18.8365 11.9965 19.4004 9.83261 19.4004C8.0669 19.4004 6.48295 19.01 5.08077 18.2292C3.6959 17.431 2.61398 16.3292 1.83499 14.9238C1.056 13.5183 0.666504 11.9133 0.666504 10.1087Z\" }), /* @__PURE__ */ React.createElement(\"path\", { d: \"M26.7553 19.4785C25.3358 19.4785 24.0548 19.1749 22.9123 18.5676C21.7871 17.9603 20.8956 17.0927 20.2378 15.9648C19.5973 14.837 19.277 13.5183 19.277 12.0087C19.277 10.5165 19.6059 9.20646 20.2638 8.07862C20.9216 6.93343 21.8217 6.05718 22.9642 5.44988C24.1068 4.84258 25.3878 4.53893 26.8073 4.53893C28.2267 4.53893 29.5078 4.84258 30.6503 5.44988C31.7928 6.05718 32.693 6.93343 33.3508 8.07862C34.0086 9.20646 34.3375 10.5165 34.3375 12.0087C34.3375 13.5009 33.9999 14.8197 33.3248 15.9648C32.667 17.0927 31.7582 17.9603 30.5983 18.5676C29.4558 19.1749 28.1748 19.4785 26.7553 19.4785ZM26.7553 15.6265C27.6036 15.6265 28.322 15.3142 28.9105 14.6895C29.5164 14.0649 29.8193 13.1713 29.8193 12.0087C29.8193 10.8462 29.5251 9.95257 28.9365 9.32792C28.3652 8.70327 27.6555 8.39095 26.8073 8.39095C25.9417 8.39095 25.2233 8.70327 24.6521 9.32792C24.0808 9.93522 23.7952 10.8288 23.7952 12.0087C23.7952 13.1713 24.0721 14.0649 24.6261 14.6895C25.1973 15.3142 25.9071 15.6265 26.7553 15.6265Z\" }), /* @__PURE__ */ React.createElement(\"path\", { d: \"M44.483 4.59098C46.1795 4.59098 47.5297 5.14623 48.5337 6.25672C49.5551 7.34986 50.0658 8.85944 50.0658 10.7854V19.2703H45.6515V11.3841C45.6515 10.4124 45.4005 9.6576 44.8985 9.11971C44.3964 8.58181 43.7213 8.31286 42.8731 8.31286C42.0249 8.31286 41.3497 8.58181 40.8477 9.11971C40.3457 9.6576 40.0947 10.4124 40.0947 11.3841V19.2703H35.6545V4.74714H40.0947V6.67315C40.5448 6.03115 41.1507 5.52796 41.9123 5.16358C42.674 4.78185 43.5309 4.59098 44.483 4.59098Z\" }), /* @__PURE__ */ React.createElement(\"path\", { d: \"M60.9412 4.59098C62.6376 4.59098 63.9879 5.14623 64.9919 6.25672C66.0133 7.34986 66.5239 8.85944 66.5239 10.7854V19.2703H62.1096V11.3841C62.1096 10.4124 61.8586 9.6576 61.3566 9.11971C60.8546 8.58181 60.1795 8.31286 59.3313 8.31286C58.483 8.31286 57.8079 8.58181 57.3059 9.11971C56.8039 9.6576 56.5529 10.4124 56.5529 11.3841V19.2703H52.1126V4.74714H56.5529V6.67315C57.0029 6.03115 57.6088 5.52796 58.3705 5.16358C59.1322 4.78185 59.9891 4.59098 60.9412 4.59098Z\" }), /* @__PURE__ */ React.createElement(\"path\", { d: \"M82.2291 11.7745C82.2291 12.1909 82.2031 12.6247 82.1512 13.0758H72.1022C72.1715 13.9781 72.4571 14.6722 72.9591 15.158C73.4784 15.6265 74.1103 15.8607 74.8546 15.8607C75.9625 15.8607 76.7329 15.3923 77.1656 14.4553H81.8915C81.6491 15.4096 81.2077 16.2685 80.5672 17.032C79.944 17.7954 79.1564 18.3941 78.2043 18.8278C77.2522 19.2616 76.1876 19.4785 75.0104 19.4785C73.5909 19.4785 72.3272 19.1749 71.2194 18.5676C70.1115 17.9603 69.2459 17.0927 68.6227 15.9648C67.9995 14.837 67.6879 13.5183 67.6879 12.0087C67.6879 10.4991 67.9909 9.18044 68.5968 8.05259C69.2199 6.92475 70.0855 6.05718 71.1934 5.44988C72.3013 4.84258 73.5736 4.53893 75.0104 4.53893C76.4126 4.53893 77.659 4.8339 78.7496 5.42385C79.8402 6.0138 80.6884 6.85534 81.2943 7.94848C81.9175 9.04163 82.2291 10.317 82.2291 11.7745ZM77.685 10.6033C77.685 9.83979 77.4253 9.23249 76.906 8.78135C76.3866 8.33022 75.7375 8.10465 74.9585 8.10465C74.2141 8.10465 73.5823 8.32154 73.063 8.75533C72.561 9.18911 72.2494 9.80509 72.1282 10.6033H77.685Z\" }), /* @__PURE__ */ React.createElement(\"path\", { d: \"M82.65 12.0087C82.65 10.4991 82.9529 9.18044 83.5588 8.05259C84.182 6.92475 85.0389 6.05718 86.1295 5.44988C87.2374 4.84258 88.5011 4.53893 89.9206 4.53893C91.7382 4.53893 93.2529 5.01609 94.4647 5.97042C95.6937 6.92475 96.4987 8.26949 96.8795 10.0046H92.1537C91.7555 8.89414 90.9852 8.33889 89.8427 8.33889C89.0291 8.33889 88.3799 8.65989 87.8952 9.3019C87.4105 9.92655 87.1681 10.8288 87.1681 12.0087C87.1681 13.1886 87.4105 14.0996 87.8952 14.7416C88.3799 15.3662 89.0291 15.6786 89.8427 15.6786C90.9852 15.6786 91.7555 15.1233 92.1537 14.0128H96.8795C96.4987 15.7133 95.6937 17.0493 94.4647 18.021C93.2356 18.9927 91.7209 19.4785 89.9206 19.4785C88.5011 19.4785 87.2374 19.1749 86.1295 18.5676C85.0389 17.9603 84.182 17.0927 83.5588 15.9648C82.9529 14.837 82.65 13.5183 82.65 12.0087Z\" }), /* @__PURE__ */ React.createElement(\"path\", { d: \"M106.291 15.4964V19.2703H104.032C102.423 19.2703 101.167 18.8799 100.267 18.0991C99.3672 17.3009 98.9171 16.0082 98.9171 14.221V8.443H97.1514V4.74714H98.9171V1.20745H103.357V4.74714H106.266V8.443H103.357V14.2731C103.357 14.7069 103.461 15.0192 103.669 15.2101C103.877 15.4009 104.223 15.4964 104.708 15.4964H106.291Z\" }));\nexport default SvgConnect;\n","import * as React from \"react\";\nconst SvgLogo = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 26, height: 26, viewBox: \"0 0 26 26\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M20.105 7.37978C19.9097 7.18452 19.9097 6.86795 20.105 6.67269L22.5725 4.20504C24.9229 6.75889 26.0649 10.0248 25.9972 13.2723L20.105 7.37978ZM16.1222 10.6556C15.927 10.8509 15.927 11.1674 16.1222 11.3627L24.2614 19.5023C25.125 18.0079 25.667 16.378 25.8875 14.7149L19.3289 8.15595C19.1336 7.96068 18.817 7.96068 18.6218 8.15595L16.1222 10.6556ZM0.00284613 12.729C-0.0649083 15.9752 1.07706 19.2411 3.42753 21.7962L5.89504 19.3285C6.09029 19.1333 6.09029 18.8167 5.89504 18.6214L0.00284613 12.729ZM4.20485 22.5723C6.75858 24.9229 10.0256 26.0649 13.2716 25.9972L7.37946 20.1047C7.1842 19.9094 6.8676 19.9094 6.67234 20.1047L4.20485 22.5723ZM13.0519 18.5174C13.2472 18.3222 13.2472 18.0056 13.0519 17.8103L1.73982 6.49772C0.87626 7.99209 0.334223 9.62072 0.113713 11.2851L9.84523 21.0171C10.0405 21.2124 10.3571 21.2124 10.5524 21.0171L13.0519 18.5174ZM9.60276 7.08454C9.78969 6.88798 9.7858 6.57823 9.594 6.38642L5.55009 2.34233C4.93783 2.77105 4.35391 3.25889 3.80695 3.80588C3.25998 4.35287 2.77216 4.93684 2.34346 5.54912L6.3864 9.59111C6.57859 9.78325 6.88907 9.7867 7.08548 9.59887L8.47817 8.26702L9.60276 7.08454ZM11.2072 21.6733C11.012 21.8685 11.012 22.1851 11.2072 22.3804L14.7142 25.8875C16.3785 25.667 18.0071 25.1249 19.5013 24.2613L14.4139 19.1736C14.2186 18.9783 13.902 18.9783 13.7067 19.1736L11.2072 21.6733ZM23.6565 20.4496L11.0843 7.87683C10.8891 7.68156 10.5725 7.68156 10.3772 7.87683L7.87766 10.3765C7.68241 10.5718 7.68241 10.8883 7.87766 11.0836L20.4499 23.6564C21.0622 23.2277 21.6461 22.7398 22.193 22.1929C22.74 21.6459 23.2278 21.0619 23.6565 20.4496ZM17.8445 7.37855C18.0397 7.18329 18.0397 6.86672 17.8445 6.67146L11.2858 0.112477C9.62151 0.332998 7.99294 0.875053 6.49865 1.73866L14.6378 9.87821C14.8331 10.0735 15.1497 10.0735 15.3449 9.87821L17.8445 7.37855ZM21.7951 3.42769C19.2414 1.07712 15.9744 -0.0649114 12.7284 0.00284625L18.6205 5.89529C18.8158 6.09056 19.1324 6.09056 19.3277 5.89529L21.7951 3.42769Z\", fill: \"url(#paint0_linear_526_12008)\" }), /* @__PURE__ */ React.createElement(\"defs\", null, /* @__PURE__ */ React.createElement(\"linearGradient\", { id: \"paint0_linear_526_12008\", x1: 13, y1: 0, x2: 13, y2: 26, gradientUnits: \"userSpaceOnUse\" }, /* @__PURE__ */ React.createElement(\"stop\", { stopColor: \"currentColor\" }), /* @__PURE__ */ React.createElement(\"stop\", { offset: 1, stopColor: \"currentColor\" }))));\nexport default SvgLogo;\n","import { useTranslation } from 'react-i18next';\n\nexport const ReloadConnectToast = () => {\n const { t } = useTranslation();\n\n return (\n <div>\n <p className=\"font-medium\">{t('notifications.reloadApp')}</p>\n <button\n onClick={() => location.reload()}\n className=\"underline decoration-solid underline-offset-2\"\n >\n {t('common.reloadConnect')} 🔄\n </button>\n </div>\n );\n};\n","export function useSwitchboard() {\n return {\n getDriveIdBySlug: async (driveUrl: string, slug: string) => {\n if (!driveUrl) {\n return;\n }\n\n const urlParts = driveUrl.split('/');\n urlParts.pop(); // remove id\n urlParts.pop(); // remove /d\n urlParts.push('drives'); // add /drives\n const drivesUrl = urlParts.join('/');\n const result = await fetch(drivesUrl, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n query: `\n query getDriveIdBySlug($slug: String!) {\n driveIdBySlug(slug: $slug)\n }\n `,\n variables: {\n slug,\n },\n }),\n });\n\n const data = (await result.json()) as {\n data: { driveIdBySlug: string };\n };\n\n return data.data.driveIdBySlug;\n },\n };\n}\n","import { LOCAL } from '@powerhousedao/design-system';\nimport { PullResponderTrigger } from 'document-drive';\nimport {\n PullResponderTriggerData,\n Trigger,\n} from 'document-model-libs/document-drive';\nimport { useCallback, useMemo, useRef, useState } from 'react';\nimport { logger } from 'src/services/logger';\nimport { useDocumentDriveServer } from './useDocumentDriveServer';\nimport { useSwitchboard } from './useSwitchboard';\n\nexport type ClientErrorHandler = {\n strandsErrorHandler: (\n driveId: string,\n trigger: Trigger,\n status: number,\n errorMessage: string,\n ) => Promise<void>;\n};\n\nconst DELAY_LIMIT = 100000;\n\nconst isListenerIdNotFound = (errorMessage: string, listenerId?: string) => {\n if (!listenerId) return false;\n\n return errorMessage\n .toLocaleLowerCase()\n .includes(`transmitter ${listenerId} not found`);\n};\n\nexport const useClientErrorHandler = (): ClientErrorHandler => {\n const [handlingInProgress, setHandlingInProgress] = useState<string[]>([]);\n const [pullResponderTriggerMap, setPullResponderTriggerMap] = useState<\n Map<string, PullResponderTrigger>\n >(new Map());\n const {\n addTrigger,\n removeTrigger,\n registerNewPullResponderTrigger,\n renameDrive,\n addRemoteDrive,\n documentDrives,\n setDriveSharingType,\n } = useDocumentDriveServer();\n\n const { getDriveIdBySlug } = useSwitchboard();\n\n const pullResponderRegisterDelay = useRef<Map<string, number>>(new Map());\n\n const handleStrands400 = useCallback(\n async (driveId: string, trigger: Trigger, handlerCode: string) => {\n setHandlingInProgress(state => [...state, handlerCode]);\n\n const triggerData =\n trigger.data as unknown as PullResponderTriggerData;\n\n try {\n let pullResponderTrigger =\n pullResponderTriggerMap.get(handlerCode);\n\n if (!pullResponderTrigger) {\n pullResponderTrigger =\n await registerNewPullResponderTrigger(\n driveId,\n triggerData.url,\n {\n pullInterval:\n Number(triggerData.interval) || 3000,\n },\n );\n\n pullResponderTriggerMap.set(\n handlerCode,\n pullResponderTrigger,\n );\n setPullResponderTriggerMap(pullResponderTriggerMap);\n }\n\n await removeTrigger(driveId, trigger.id);\n await addTrigger(driveId, pullResponderTrigger);\n\n pullResponderRegisterDelay.current.delete(handlerCode);\n } catch (error) {\n const delay =\n pullResponderRegisterDelay.current.get(handlerCode) || 1;\n pullResponderRegisterDelay.current.set(\n handlerCode,\n delay === DELAY_LIMIT ? delay : delay * 10,\n );\n\n logger.error(error);\n } finally {\n setHandlingInProgress(state =>\n state.filter(code => code !== handlerCode),\n );\n }\n },\n [\n pullResponderTriggerMap,\n removeTrigger,\n addTrigger,\n pullResponderRegisterDelay,\n registerNewPullResponderTrigger,\n ],\n );\n\n const handleDriveNotFound = useCallback(\n async (driveId: string, trigger: Trigger, handlerCode: string) => {\n setHandlingInProgress(state => [...state, handlerCode]);\n try {\n // get local drive by id\n const drive = documentDrives.find(\n drive => drive.state.global.id === driveId,\n );\n if (!drive) return;\n await removeTrigger(driveId, trigger.id);\n\n await renameDrive(\n driveId,\n drive.state.global.name + ` (${drive.state.global.id})`,\n );\n\n await setDriveSharingType(driveId, LOCAL);\n\n if (trigger.data?.url && drive.state.global.slug) {\n const newId = await getDriveIdBySlug(\n trigger.data.url,\n drive.state.global.slug,\n );\n if (newId) {\n const urlParts = trigger.data.url.split('/');\n urlParts[urlParts.length - 1] = newId;\n const newUrl = urlParts.join('/');\n\n await addRemoteDrive(newUrl, {\n availableOffline: true,\n sharingType: 'PUBLIC',\n listeners: [],\n triggers: [],\n });\n }\n }\n } catch (e: unknown) {\n logger.error(e);\n } finally {\n setHandlingInProgress(state =>\n state.filter(code => code !== handlerCode),\n );\n }\n },\n [\n documentDrives,\n removeTrigger,\n renameDrive,\n setDriveSharingType,\n getDriveIdBySlug,\n addRemoteDrive,\n ],\n );\n\n const strandsErrorHandler: ClientErrorHandler['strandsErrorHandler'] =\n useCallback(\n async (driveId, trigger, status, errorMessage) => {\n switch (status) {\n case 400: {\n if (\n isListenerIdNotFound(\n errorMessage,\n trigger.data?.listenerId,\n )\n ) {\n const autoRegisterPullResponder =\n localStorage.getItem(\n 'AUTO_REGISTER_PULL_RESPONDER',\n ) !== 'false';\n\n if (!autoRegisterPullResponder) return;\n const handlerCode = `strands:${driveId}:${status}`;\n\n if (handlingInProgress.includes(handlerCode))\n return;\n if (!trigger.data) return;\n\n const delay =\n pullResponderRegisterDelay.current.get(\n handlerCode,\n ) || 0;\n\n setTimeout(\n () =>\n handleStrands400(\n driveId,\n trigger,\n handlerCode,\n ),\n delay,\n );\n }\n\n break;\n }\n\n case 404: {\n const handlerCode = `strands:${driveId}:${status}`;\n if (handlingInProgress.includes(handlerCode)) return;\n setTimeout(\n () =>\n handleDriveNotFound(\n driveId,\n trigger,\n handlerCode,\n ),\n 0,\n );\n break;\n }\n }\n },\n [handleDriveNotFound, handleStrands400, handlingInProgress],\n );\n\n return useMemo(() => ({ strandsErrorHandler }), [strandsErrorHandler]);\n};\n","const currentVersion = import.meta.env.APP_VERSION;\n\nexport const isElectron = window.navigator.userAgent.includes('Electron');\n\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport const isMac = window.navigator.appVersion.includes('Mac');\n\nconst urlBranchMap: Record<string, string> = {\n 'staging/makerdao': 'deployments/staging/makerdao',\n 'staging/arbitrum': 'arb-ltip',\n 'staging/powerhouse': 'staging',\n makerdao: 'deployments/makerdao',\n arbitrum: 'deployments/arbitrum',\n arbgrants: 'deployments/arbitrum',\n localhost: 'develop',\n};\n\nconst getGithubLinkFromUrl = () => {\n const githubLink =\n 'https://raw.githubusercontent.com/powerhouse-inc/connect';\n const url = window.location.href;\n\n const env = Object.keys(urlBranchMap).find(env => url.includes(env));\n const value = env ? urlBranchMap[env] : undefined;\n if (!value) {\n return undefined;\n } else {\n return `${githubLink}/${value}/package.json`;\n }\n};\n\nconst fetchLatestVersion = async () => {\n const link = getGithubLinkFromUrl();\n if (!link) {\n return undefined;\n }\n const result = await fetch(link);\n const data = await result.json();\n const { version } = data as { version: string };\n return version;\n};\n\nexport const isLatestVersion = async () => {\n const deployed = await fetchLatestVersion();\n\n if (deployed) {\n return {\n isLatest: deployed === currentVersion,\n currentVersion,\n latestVersion: deployed,\n };\n }\n\n return null;\n};\n","import {\n CONFLICT,\n ERROR,\n LOCAL,\n SUCCESS,\n toast,\n UiDriveNode,\n} from '@powerhousedao/design-system';\nimport { DocumentDriveDocument } from 'document-model-libs/document-drive';\nimport { TFunction } from 'i18next';\nimport { useCallback, useEffect, useRef } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { ReloadConnectToast } from 'src/components/toast/reload-connect-toast';\nimport { useReadModeContext } from 'src/context/read-mode';\nimport { useUiNodes } from 'src/hooks/useUiNodes';\nimport { useAsyncReactor } from 'src/store/reactor';\nimport { useClientErrorHandler } from './useClientErrorHandler';\nimport { useConnectConfig } from './useConnectConfig';\nimport { useDocumentDrives } from './useDocumentDrives';\nimport { isLatestVersion } from './utils';\n\nexport const useLoadInitialData = () => {\n const { t } = useTranslation();\n const {\n documentDrives,\n driveNodes,\n setDriveNodes,\n makeUiDriveNodes,\n onSyncStatus,\n } = useUiNodes();\n const prevDrivesState = useRef([...driveNodes]);\n const drivesWithError = useRef<UiDriveNode[]>([]);\n const [, , serverSubscribeUpdates] = useDocumentDrives();\n const { readDrives } = useReadModeContext();\n const clientErrorHandler = useClientErrorHandler();\n const reactor = useAsyncReactor();\n const [connectConfig] = useConnectConfig();\n\n async function checkLatestVersion() {\n const result = await isLatestVersion();\n if (result === null) return;\n if (result.isLatest) {\n return true;\n }\n\n if (\n import.meta.env.MODE === 'development' ||\n connectConfig.studioMode\n ) {\n console.warn(\n `Connect is outdated: \\nCurrent: ${result.currentVersion}\\nLatest: ${result.latestVersion}`,\n );\n } else {\n toast(<ReloadConnectToast />, {\n type: 'connect-warning',\n toastId: 'outdated-app',\n autoClose: false,\n });\n }\n }\n\n useEffect(() => {\n checkLatestVersion().catch(console.error);\n }, []);\n\n useEffect(() => {\n const unsubscribe = serverSubscribeUpdates(clientErrorHandler);\n return unsubscribe;\n }, [serverSubscribeUpdates, documentDrives, clientErrorHandler]);\n\n const checkDrivesErrors = useCallback(\n async (driveNodes: UiDriveNode[], t: TFunction) => {\n driveNodes.forEach(drive => {\n const prevDrive = prevDrivesState.current.find(\n prevDrive => prevDrive.id === drive.id,\n );\n\n if (!prevDrive) return;\n\n if (\n drive.sharingType !== LOCAL &&\n drive.syncStatus === SUCCESS &&\n drivesWithError.current.includes(drive)\n ) {\n // remove the drive from the error list\n drivesWithError.current = drivesWithError.current.filter(\n d => d.id !== drive.id,\n );\n\n return toast(t('notifications.driveSyncSuccess'), {\n type: 'connect-success',\n });\n }\n\n if (\n (drive.syncStatus === CONFLICT ||\n drive.syncStatus === ERROR) &&\n drive.syncStatus !== prevDrive.syncStatus\n ) {\n // add the drive to the error list\n drivesWithError.current.push(drive);\n }\n });\n\n prevDrivesState.current = [...driveNodes];\n\n if (drivesWithError.current.length > 0) {\n const isCurrent = await checkLatestVersion();\n if (isCurrent) {\n drivesWithError.current.forEach(drive => {\n toast(\n t(\n `notifications.${drive.syncStatus === CONFLICT ? 'driveSyncConflict' : 'driveSyncError'}`,\n { drive: drive.name },\n ),\n {\n type: 'connect-warning',\n toastId: `${drive.syncStatus === CONFLICT ? 'driveSyncConflict' : 'driveSyncError'}-${drive.id}`,\n },\n );\n });\n }\n }\n },\n [],\n );\n\n useEffect(() => {\n checkDrivesErrors(driveNodes, t).catch(console.error);\n }, [driveNodes, t, checkDrivesErrors]);\n\n const updateUiDriveNodes = useCallback(\n async (documentDrives: DocumentDriveDocument[]) => {\n const uiDriveNodes = await makeUiDriveNodes(documentDrives);\n setDriveNodes(uiDriveNodes);\n },\n [makeUiDriveNodes, setDriveNodes],\n );\n useEffect(() => {\n const drives: DocumentDriveDocument[] = [\n ...readDrives,\n ...documentDrives,\n ];\n updateUiDriveNodes(drives).catch(console.error);\n }, [documentDrives, readDrives, updateUiDriveNodes]);\n\n useEffect(() => {\n if (!reactor) {\n return;\n }\n\n const unsub = onSyncStatus(() => updateUiDriveNodes(documentDrives));\n return unsub;\n }, [reactor, documentDrives, onSyncStatus, updateUiDriveNodes]);\n};\n","import {\n DRIVE,\n FILE,\n UiDriveNode,\n UiNode,\n useUiNodesContext,\n} from '@powerhousedao/design-system';\nimport { useEffect } from 'react';\nimport { useLocation, useNavigate, useParams } from 'react-router-dom';\n\ntype RouteParams = {\n driveId?: string;\n '*'?: string;\n};\n\nfunction buildPathname(selectedNodePath: UiNode[]) {\n const driveNode = selectedNodePath[0];\n if (!driveNode) {\n return;\n }\n if (driveNode.kind !== DRIVE) {\n throw new Error(\n 'Node path is invalid, first node is not a drive node.',\n );\n }\n const driveNodeComponent = makeDriveNodeUrlComponent(driveNode);\n const nodePathComponents = selectedNodePath\n .slice(1)\n .map(node => encodeURIComponent(node.slug || node.name));\n const pathname = [driveNodeComponent, ...nodePathComponents].join('/');\n return pathname;\n}\n\nfunction makeDriveNodeUrlComponent(driveNode: UiDriveNode) {\n const component = driveNode.slug || driveNode.name || driveNode.id;\n\n return `/d/${encodeURIComponent(component)}`;\n}\n\nfunction getSelectedNodeFromPathname(\n driveNodes: (UiDriveNode | null)[],\n driveIdFromPathname: string | undefined,\n nodeNamesFromPathname: string | undefined,\n) {\n if (!driveIdFromPathname) {\n return null;\n }\n\n const driveId = decodeURIComponent(driveIdFromPathname);\n const driveNode = driveNodes.find(\n node =>\n node?.id === driveId ||\n node?.slug === driveId ||\n node?.name === driveId,\n );\n\n if (!driveNode) return null;\n if (!nodeNamesFromPathname) return driveNode;\n\n const nodeNames = nodeNamesFromPathname\n .split('/')\n .filter(Boolean)\n .map(decodeURIComponent);\n\n let selectedNode: UiNode = driveNode;\n\n for (const nodeName of nodeNames) {\n if (selectedNode.kind === FILE) break;\n\n const nextNode: UiNode | undefined = selectedNode.children.find(\n node => node.slug === nodeName || node.name === nodeName,\n );\n\n if (!nextNode) {\n console.error('Node not found:', nodeName);\n break;\n }\n\n selectedNode = nextNode;\n }\n\n return selectedNode;\n}\n\nexport const useNodeNavigation = () => {\n const navigate = useNavigate();\n const location = useLocation();\n const { search, pathname } = location;\n const params = useParams<RouteParams>();\n const { driveNodes, selectedNode, selectedNodePath, setSelectedNode } =\n useUiNodesContext();\n const driveIdFromPathname = params.driveId;\n const nodeNamesFromPathname = params['*'];\n const selectedNodeFromPathname = getSelectedNodeFromPathname(\n driveNodes,\n driveIdFromPathname,\n nodeNamesFromPathname,\n );\n const selectedNodePathname = buildPathname(selectedNodePath);\n\n // when selectedNodePathname changes, navigate to the new path\n useEffect(() => {\n if (!selectedNodePathname || selectedNodePathname === pathname) return;\n\n navigate({ pathname: selectedNodePathname, search });\n }, [search, navigate, selectedNodePathname]);\n\n // on first load, set the selected node from the pathname\n // defaults to setting the first drive node if no drive node is found\n useEffect(() => {\n if (selectedNode || !selectedNodeFromPathname) return;\n\n setSelectedNode(selectedNodeFromPathname);\n }, [selectedNode, selectedNodeFromPathname, setSelectedNode]);\n\n // respond to changes in the url (browser back and forward buttons)\n // update the selected node accordingly\n useEffect(() => {\n const selectedNodeFromPathname = getSelectedNodeFromPathname(\n driveNodes,\n driveIdFromPathname,\n nodeNamesFromPathname,\n );\n\n if (!selectedNodeFromPathname) return;\n\n setSelectedNode(selectedNodeFromPathname);\n }, [\n driveNodes,\n driveIdFromPathname,\n nodeNamesFromPathname,\n setSelectedNode,\n ]);\n};\n","import { DriveView } from '@powerhousedao/design-system';\nimport { useUiNodes } from 'src/hooks/useUiNodes';\nimport { driveSections } from 'src/utils/drive-sections';\n\nexport default function DriveContainer() {\n const uiNodes = useUiNodes();\n const { driveNodesBySharingType } = uiNodes;\n\n return (\n <>\n {driveSections.map(({ label, sharingType, disableAddDrives }) => (\n <DriveView\n {...uiNodes}\n driveNodes={driveNodesBySharingType[sharingType]}\n label={label}\n groupSharingType={sharingType}\n key={sharingType}\n disableAddDrives={disableAddDrives}\n />\n ))}\n </>\n );\n}\n","import {\n ConnectSidebar,\n Icon,\n useUiNodesContext,\n} from '@powerhousedao/design-system';\nimport { useAtom } from 'jotai';\nimport { useCallback } from 'react';\nimport { ErrorBoundary } from 'react-error-boundary';\nimport { useNavigate } from 'react-router-dom';\nimport { useLogin } from 'src/hooks/useLogin';\nimport { logger } from 'src/services/logger';\nimport { sidebarCollapsedAtom } from 'src/store';\nimport DriveContainer from './drive-container';\nimport { useModal } from './modal';\n\nexport default function Sidebar() {\n const [collapsed, setCollapsed] = useAtom(sidebarCollapsedAtom);\n const { showModal } = useModal();\n const navigate = useNavigate();\n const { setSelectedNode } = useUiNodesContext();\n\n const { user, openRenown } = useLogin();\n\n const connectDebug = localStorage.getItem('CONNECT_DEBUG') === 'true';\n\n function toggleCollapse() {\n setCollapsed(value => !value);\n }\n\n const onClickSettings = () => {\n showModal('settingsModal', { onRefresh: () => navigate(0) });\n };\n\n const onRootClick = useCallback(() => {\n setSelectedNode(null);\n navigate('/');\n }, [navigate, setSelectedNode]);\n\n const headerContent = (\n <div className=\"flex h-full items-center\">\n <Icon\n name=\"Connect\"\n className=\"!h-[30px] !w-[100px] cursor-pointer\"\n onClick={onRootClick}\n />\n {connectDebug && (\n <button\n id=\"connect-debug-button\"\n className=\"ml-6\"\n onClick={() => showModal('debugSettingsModal', {})}\n >\n <img src=\"settings.png\" className=\"h-5 text-gray-600\" />\n </button>\n )}\n </div>\n );\n\n return (\n <ConnectSidebar\n id=\"sidebar\"\n collapsed={collapsed}\n onToggle={toggleCollapse}\n onClickSettings={onClickSettings}\n headerContent={headerContent}\n address={user?.address}\n onLogin={openRenown}\n >\n <ErrorBoundary\n fallback={\n <div className=\"text-center\">\n There was an error loading drives\n </div>\n }\n onError={logger.error}\n >\n <DriveContainer />\n </ErrorBoundary>\n </ConnectSidebar>\n );\n}\n","import IconConnect from '@/assets/icons/connect.svg?react';\nimport IconLogo from '@/assets/icons/logo.svg?react';\nimport { Suspense, useEffect } from 'react';\nimport { Outlet, useNavigate, useSearchParams } from 'react-router-dom';\nimport { useLoadInitialData } from 'src/hooks/useLoadInitialData';\nimport { useLogin } from 'src/hooks/useLogin';\nimport { useNodeNavigation } from 'src/hooks/useNodeNavigation';\nimport { isElectron, isMac } from 'src/hooks/utils';\nimport { logger } from 'src/services/logger';\nimport Sidebar from './sidebar';\n\nexport default function Root() {\n useLoadInitialData();\n useNodeNavigation();\n\n const navigate = useNavigate();\n const { login } = useLogin();\n\n useEffect(() => {\n window.electronAPI?.ready();\n }, []);\n\n const [searchParams, setSearchParams] = useSearchParams();\n\n useEffect(() => {\n const userStr = searchParams.get('user');\n if (userStr && login) {\n const userDid = decodeURIComponent(userStr);\n searchParams.delete('user');\n setSearchParams(searchParams);\n login(userDid).catch(logger.error);\n }\n }, [login, searchParams, setSearchParams]);\n\n useEffect(() => {\n const unsubscribe = window.electronAPI?.handleURL((_e, url) => {\n navigate(`/${url}`);\n });\n\n return unsubscribe;\n }, [navigate]);\n\n return (\n <div className=\"h-screen\">\n {isElectron && (\n <div\n className={`h-8 w-full\n ${isMac && 'justify-center'}\n flex items-center bg-gray-50`}\n >\n <IconLogo className=\"ml-1 mr-0.5 p-1.5\" />\n <IconConnect className=\"h-3 w-fit\" />\n </div>\n )}\n <div\n className={`flex items-stretch overflow-auto\n ${isElectron ? 'h-app-height' : 'h-screen'}\n `}\n role=\"presentation\"\n tabIndex={0}\n >\n <Suspense>\n <Sidebar />\n <div className=\"relative flex-1 overflow-auto\">\n <Outlet />\n </div>\n </Suspense>\n </div>\n </div>\n );\n}\n"],"names":["N","o","t","e","i","s","n","p","m","l","a","ze","L","g","F","P","h","G","V","I","j","_","z","H","U","$","W","B","K","u","y","q","J","C","D","v","Q","Ae","X","Y","Le","w","c","x","M","O","Z","E","T","ee","Fe","ne","Pe","oe","Ge","te","le","R","re","Ce","we","f","Me","Oe","Re","Se","ke","be","ie","se","ye","ce","S","de","k","ae","ge","fe","pe","ue","b","me","r","Ve","je","he","Ie","De","d","_e","ve","A","Ne","Ee","Te","xe","SvgConnect","props","React","SvgLogo","ReloadConnectToast","useTranslation","jsx","jsxs","useSwitchboard","driveUrl","slug","urlParts","drivesUrl","DELAY_LIMIT","isListenerIdNotFound","errorMessage","listenerId","useClientErrorHandler","handlingInProgress","setHandlingInProgress","useState","pullResponderTriggerMap","setPullResponderTriggerMap","addTrigger","removeTrigger","registerNewPullResponderTrigger","renameDrive","addRemoteDrive","documentDrives","setDriveSharingType","useDocumentDriveServer","getDriveIdBySlug","pullResponderRegisterDelay","useRef","handleStrands400","useCallback","driveId","trigger","handlerCode","state","triggerData","pullResponderTrigger","error","delay","logger","code","handleDriveNotFound","drive","LOCAL","_a","newId","newUrl","strandsErrorHandler","status","useMemo","currentVersion","isElectron","isMac","urlBranchMap","getGithubLinkFromUrl","githubLink","url","env","value","fetchLatestVersion","link","data","version","isLatestVersion","deployed","useLoadInitialData","driveNodes","setDriveNodes","makeUiDriveNodes","onSyncStatus","useUiNodes","prevDrivesState","drivesWithError","serverSubscribeUpdates","useDocumentDrives","readDrives","useReadModeContext","clientErrorHandler","reactor","useAsyncReactor","connectConfig","useConnectConfig","checkLatestVersion","result","toast","useEffect","checkDrivesErrors","prevDrive","SUCCESS","CONFLICT","ERROR","updateUiDriveNodes","uiDriveNodes","drives","buildPathname","selectedNodePath","driveNode","DRIVE","driveNodeComponent","makeDriveNodeUrlComponent","nodePathComponents","node","component","getSelectedNodeFromPathname","driveIdFromPathname","nodeNamesFromPathname","nodeNames","selectedNode","nodeName","FILE","nextNode","useNodeNavigation","navigate","useNavigate","location","useLocation","search","pathname","params","useParams","setSelectedNode","useUiNodesContext","selectedNodeFromPathname","selectedNodePathname","DriveContainer","uiNodes","driveNodesBySharingType","Fragment","label","sharingType","disableAddDrives","createElement","DriveView","Sidebar","collapsed","setCollapsed","useAtom","sidebarCollapsedAtom","showModal","useModal","user","openRenown","useLogin","connectDebug","toggleCollapse","onClickSettings","onRootClick","ConnectSidebar","Icon","ErrorBoundary","Root","login","searchParams","setSearchParams","useSearchParams","userStr","userDid","IconLogo","IconConnect","Suspense","Outlet"],"mappings":"47BAGA,SAASA,GAAEC,EAAG,CACZ,KAAM,CAAE,OAAQC,EAAG,SAAUC,EAAG,UAAW,EAAG,cAAeC,CAAG,EAAGH,EAAGI,EAAID,EAAEF,CAAC,EAAG,CAAE,aAAcI,EAAG,UAAWC,CAAG,EAAGC,GAAE,CACpH,GAAGP,EACH,OAAQI,CACZ,CAAG,EACD,OAAuBI,EACrB,MACA,CACE,GAAGF,EACH,UAAWG,EACT,yCACAP,IAAM,SAAW,QAAU,WAC3BG,GAAK,cACL,CACR,CACA,CACG,CACH,CCNA,SAASK,GAAGN,EAAG,CACb,KAAM,CACJ,OAAQF,EACR,YAAaS,EACb,MAAOC,EAAI,EACX,2BAA4BC,EAC5B,sBAAuBC,EACvB,gBAAiBC,EACjB,wBAAyBC,EACzB,cAAeC,EACf,QAASC,EACT,YAAaC,EACb,aAAcC,EACd,gBAAiBC,EACjB,aAAcC,EACd,cAAeC,EACf,uBAAwBC,EACxB,aAAcC,EACd,gBAAiBC,EACjB,oBAAqBC,CACtB,EAAGvB,EAAG,CAACH,EAAGO,CAAC,EAAID,EACdqB,CACJ,EAAK,CAACC,EAAGC,CAAC,EAAIvB,EAAE,EAAE,EAAG,CAACwB,EAAGC,CAAC,EAAIzB,EAAE,EAAE,EAAG,CAAC0B,EAAGC,CAAC,EAAI3B,EAAE,EAAE,EAAG,CAAE,UAAW4B,EAAG,EAAGC,GAAGhC,CAAC,EAAG,CAAE,aAAciC,GAAG,UAAWC,EAAG,EAAGC,GAAGnC,CAAC,EAAGoC,EAAI,GAAIC,EAAIvC,EAAE,OAASwC,EAAIxC,EAAE,SAAW,KAAMyC,GAAI,CAAC,CAACF,GAAKA,EAAE,OAAS,EAAGG,GAAI3B,EAAEf,CAAC,EAAG2C,GAAI7B,EAAEd,CAAC,EAAGH,EAAI8B,EAAIE,EAAIc,GAAGC,EAAI5C,EAAE,OAAS6C,EAAGC,GAAKF,GAAK5C,EAAE,cAAgB+C,EAAIC,GAAKJ,GAAK5C,EAAE,cAAgBiD,GAAIC,GAAKN,GAAK5C,EAAE,cAAgBmD,GAAIC,GAAKC,KAAMC,GAAI/C,EACjW,iEACAmC,IAAK,eACN,EAAEa,GAAK,CACN,CAACC,EAAE,EAAG,IAAMrC,EAAEnB,CAAC,EACf,CAACyD,EAAE,EAAG,IAAM,CACV5C,EAAEb,CAAC,EAAG8B,EAAE,EAAE,EAAGxB,EAAEoD,CAAC,CACjB,EACD,CAACC,EAAE,EAAG,IAAMrD,EAAEF,CAAC,EACf,CAACwD,EAAE,EAAG,IAAM,CACV5D,EAAE,OAAS6C,EAAIxB,EAAErB,CAAC,EAAIoB,EAAEpB,CAAC,CAC1B,EACD,CAAC6D,EAAE,EAAG,IAAM,CACV7D,EAAE,OAAS6C,GAAKvB,EAAEtB,CAAC,CACpB,EACD,CAAC8D,EAAE,EAAG,IAAMvC,EAAEvB,EAAE,OAAO,EACvB,CAAC+D,EAAE,EAAG,IAAMvC,EAAExB,EAAE,OAAO,EACvB,CAACgE,EAAE,EAAG,IAAMvC,EAAEzB,EAAE,OAAO,CAC3B,EAAKiE,GAAKxD,EAAET,EAAE,WAAW,EAAEA,EAAE,IAAI,EAAGkE,GAAK,OAAO,QAAQC,EAAE,EAAE,IAAI,CAAC,CAAChE,EAAGF,CAAC,KAAO,CACzE,GAAGA,EACH,GAAIE,CACR,EAAI,EAAE,OAAQA,GAAM8D,GAAG,SAAS9D,EAAE,EAAE,CAAC,EACnC,SAASiE,GAAGjE,EAAG,CACb,MAAMF,EAAIsD,GAAGpD,CAAC,EACd,GAAI,CAACF,EAAG,CACN,QAAQ,MAAM,4CAA4CE,CAAC,EAAE,EAC7D,MACN,CACIF,EAAG,EAAE+B,EAAE,EAAE,CACb,CACE,SAASqC,GAAElE,EAAG,CACZJ,IAAM2D,GAAKzC,EAAEd,EAAGH,CAAC,EAAGa,EAAEb,CAAC,GAAKkB,EAAEf,EAAGH,CAAC,EAAGM,EAAEoB,CAAC,CAC5C,CACE,MAAM4C,GAAMnE,GAAM,CAChB,GAAIA,EAAE,gBAAiB,EAAEa,GAAK,MAAQA,EAAEb,CAAC,EAAGJ,IAAMK,EAAG,CACnD,GAAIS,EAAEb,CAAC,EAAG,CAAC2B,EAAG,CACZC,EAAE,EAAE,EACJ,MACR,CACME,EAAG7B,GAAM,CAACA,CAAC,CACjB,CACG,EACD,SAASsE,IAAI,CACXjE,EAAEoB,CAAC,CACP,CACE,SAAS8C,IAAK,CACZ,OAAOtB,GAAKuB,GAAKzB,GAAK0B,GAAK5B,GAAK6B,GAAK3E,EAAE,OAASwC,EAAIoC,GAAK/E,EAAIgF,GAAIC,EACrE,CACE,SAASzB,IAAK,CACZ,MAAO,CAAC,EAAElB,IAAKpC,IAAMK,GAAKL,IAAM2D,GAAK3B,GAAKW,GAC9C,CACE,MAAMoC,GAAqBhF,EAAEiF,EAAG,CAAE,UAAWzB,GAAG,KAAM,cAAe,KAAM,GAAI,EAAGuB,GAAoB/E,EAAEiF,EAAG,CAAE,UAAWzB,GAAG,KAAM,aAAc,KAAM,GAAI,EAAGsB,GAAqB9E,EAC/K,MACA,CACE,IAAK,YACL,UAAW,wBACX,IAAKkF,GACHhF,EAAE,OAASwC,EAAIxC,EAAE,aAAeiF,GAChCrE,CACR,CACA,CACA,EAAK+D,GAAqB7E,EAAEiF,EAAG,CAAE,KAAM,KAAO,CAAA,EAAGL,GAAqB5E,EAAEiF,EAAG,CAAE,KAAM,QAAQ,CAAE,EAAGN,GAAK,SAAUzE,GAAKA,EAAE,KAAuBF,EACzI,MACA,CACE,IAAK,aACL,UAAW,wBACX,IAAKE,EAAE,IACb,CACA,EAAsBF,EAAEiF,EAAG,CAAE,KAAM,GAAK,CAAA,EAAGG,GAAqBpF,EAC5DiF,EACA,CACE,UAAWxE,EACTV,GAAK,YACL,8CACD,EACD,KAAM,OACZ,CACA,EAAKsF,GAAqBrF,EAAE,MAAO,CAAE,UAAW,qBAAsB,SAAU0E,GAAI,CAAA,CAAE,EAAGY,GAAqBC,EAAE,MAAO,CAAE,UAAW,2EAA4E,SAAU,CACtMvF,EAAE,IAAK,CAAE,UAAW,gBAAiB,SAAUE,EAAE,KAAM,EACvEW,EAAoBb,EAClBwF,GACA,CACE,MAAOpB,GACP,YAAaE,GACb,aAAcpC,EACd,KAAMD,EACN,SAA0BjC,EACxB,SACA,CACE,UAAWS,EACT,gCACAwB,GAAK,OACN,EACD,QAAU5B,GAAM,CACdA,EAAE,gBAAe,EAAI6B,EAAE,EAAE,CAC1B,EACD,SAA0BlC,EAAEiF,EAAG,CAAE,UAAW,gBAAiB,KAAM,cAAgB,CAAA,CAC/F,CACA,CACA,CACA,EAAQ,IACR,CAAK,CAAA,EAAGQ,GAAqBzF,EACzB0F,GACA,CACE,aAAcxF,EAAE,KAChB,SAAUuE,GACV,SAAUF,EAChB,CACG,EAAEoB,GAAqBJ,EACtB,MACA,CACE,UAAW,mDACX,MAAO,CACL,YAAa,IAAI3E,EAAI,GAAK4B,EAAI,EAAE,IACjC,EACD,SAAU,CACRuC,GACgB/E,EACd0F,GACA,CACE,aAAc,aACd,SAAUjB,GACV,SAAUF,EACtB,CACA,CACA,CACA,CACG,EACD,OAAuBgB,EAAEK,EAAI,CAAE,SAAU,CACvBL,EACd,MACA,CACE,GAAGpD,GACH,GAAGG,GACH,UAAW7B,EACT,sHACA6C,IAAM,2BACP,EACD,QAASkB,GACT,MAAO,CACL,UAAW,kBACX,SAAU,WACV,YAAa,GAAG5D,EAAI4B,GAAKG,GAAI,EAAI,GAAG,IACrC,EACD,SAAU,CACQ3C,EAAE6F,GAAI,CAAE,GAAGzF,EAAG,SAAU,QAAQ,CAAE,EAClDuC,GAAIyC,GAAK,KACTC,GACApF,IAAM2B,GAAK0D,GACXrF,IAAMK,GAAKmF,EACrB,CACA,CACK,EACeF,EACd,MACA,CACE,UAAW9E,EACT,2EACAV,GAAK,cACN,EACD,SAAU,CACRE,IAAM2D,GAAK+B,GACXlD,GAAK,KAAO,OAASA,EAAE,IAAKpC,GAAsByF,EAChDpF,GACA,CACE,GAAGN,EACH,IAAKC,EAAE,GACP,MAAOO,EAAI,EACX,OAAQP,CACtB,CACW,CAAA,CACX,CACA,CACA,CACA,EAAK,CACL,CC9MA,SAASqF,GAAEvF,EAAG,CACZ,KAAM,CACJ,WAAYF,EACZ,kBAAmBgF,EACnB,MAAOzE,EACP,iBAAkB,EAClB,UAAW+E,EACX,iBAAkBhF,EAClB,2BAA4BkC,EAC5B,kBAAmBnC,CACpB,EAAGH,EAAGS,EAAIX,EAAE,OAAS,EAAGc,GAAKkE,GAAK,KAAO,OAASA,EAAE,eAAiB,EACtE,SAASrB,GAAI,CACXtD,EAAE,CAAC,CACP,CACE,OAAuBF,EACrB,MACA,CACE,UAAWK,EACT,sFACAG,GAAK,OACLG,GAAK,cACLwE,CACD,EACD,SAAU,CACQnF,EAAE,MAAO,CAAE,UAAW2E,GAAE,+CAA+C,EAAG,SAAU,CAClF7E,EAAE,IAAK,CAAE,UAAW,8CAA+C,SAAUM,EAAG,EAChFN,EAAE,MAAO,CAAE,UAAW,uBAAwB,SAAU,CAACK,GAAKkC,EAAoBvC,EAChG,SACA,CACE,UAAWO,EAAE,qCAAqC,EAClD,QAASmD,EACT,SAA0B1D,EAAEgC,EAAG,CAAE,KAAM,aAAc,KAAM,EAAI,CAAA,CAC7E,CACW,EAAG,IAAM,CAAA,CACpB,EAAW,EACHjC,EAAE,IAAKI,GAAsBwB,EAAED,GAAG,CAAE,GAAGzB,EAAG,IAAKE,EAAE,GAAI,OAAQA,CAAC,CAAE,CAAC,CACzE,CACA,CACG,CACH,CC5CA,MAAMuD,GAAI,64OCAJ8B,GAAI,i3KCAJA,GAAI,69HCAJA,GAAI,qoMCKJpF,GAAI,CAAC,CAAE,QAASN,CAAG,IAAqBE,EAAEC,EAAG,CAAE,SAAU,CAC7CD,EACd,SACA,CACE,UAAW,8IACX,QAASF,EACT,SAAU,CACQiF,EAAE,OAAQ,CAAE,SAAU,YAAY,CAAE,EACpCA,EACd,MACA,CACE,UAAW,6CACX,IAAKxE,EACjB,CACS,EACewE,EACd,MACA,CACE,UAAW,mDACX,IAAK7E,EACjB,CACA,CACA,CACA,CACG,EACeF,EACd,SACA,CACE,aAAc,oBACd,UAAW,0FACX,QAASF,EACT,SAAU,CACQiF,EAAE,MAAO,CAAE,UAAW,oCAAqC,IAAKhF,GAAG,EACnEgF,EACd,MACA,CACE,UAAW,0CACX,IAAK5E,EACjB,CACA,CACA,CACA,CACA,CACA,EAAG,EC5CGN,GAAI,CAAC,CAAE,QAASK,KAAQ,CAC5B,MAAM6E,EAAI1E,GAAE,CAAE,QAASH,CAAC,CAAE,EAAG,EAAI6E,EAAE,UAAWM,EAAIN,EAAE,MAAQ,OAAQhF,EAAID,GAAEI,CAAC,EAC3E,OAAuBC,EACrB,MACA,CACE,UAAW;AAAA,oEAEX,SAAU,CACQH,EAAEM,GAAG,CAAE,QAASJ,EAAG,KAAM,OAAQ,EACjCC,EAAE,MAAO,CAAE,UAAW,2EAA4E,SAAU,CAC1H,EAAoBA,EAAEF,EAAG,CAAE,SAAU,CACnBD,EAAE,IAAK,CAAE,UAAW,kDAAkD,CAAE,EACxEA,EAAE,IAAK,CAAE,UAAW,6CAA+C,CAAA,CACpF,CAAA,CAAE,EAAI,KACP,CAAC,GAAK,CAAC,CAACqF,GAAqBlF,EAAEF,EAAG,CAAE,SAAU,CAC5BD,EAAE,IAAK,CAAE,UAAW,kEAAmE,SAAUqF,EAAG,EACpGrF,EAAE,IAAK,CAAE,UAAW,6DAA8D,SAAUD,CAAG,CAAA,CAC3H,EAAa,EACH,CAAC,GAAK,CAACsF,GAAqBrF,EAAE,IAAK,CAAE,UAAW,yDAA0D,SAAUD,CAAG,CAAA,CACjI,CAAW,CAAA,CACX,CACA,CACG,CACH,ECPA,SAASwC,GAAExC,EAAGI,EAAGH,EAAG,CAClB,MAAMC,EAAIK,EAAE,IAAI,EAChBH,GAAKJ,EAAE,UAAYE,EAAE,QAAU,OAAO,iBAAiBF,EAAE,OAAO,EAAE,WAAYsF,GAAE,IAAM,CACpF,GAAIlF,GAAKJ,EAAE,QAAS,CAClB,MAAM,EAAI,OAAO,iBAAiBA,EAAE,OAAO,EAC3C,GAAI,EAAE,gBAAkB,QAAU,EAAE,YAAcE,EAAE,QAAS,CAC3D,MAAM8E,EAAK1E,GAAM,CACfA,EAAE,SAAWN,EAAE,UAAY2B,EAAE,oBAAoB,eAAgBqD,CAAC,EAAGrB,GAAE,UAAU,IAAM,CACrF1D,EAAG,CACf,CAAW,EACX,EAAW0B,EAAI3B,EAAE,QACT,OAAO2B,EAAE,iBAAiB,eAAgBqD,CAAC,EAAG,IAAM,CAClDrD,EAAE,oBAAoB,eAAgBqD,CAAC,CACxC,CACF,MACC/E,EAAG,CACX,CACG,EAAE,CAACD,EAAGI,EAAGH,CAAC,CAAC,CACd,CClCA,SAASgC,GAAE,CAAE,UAAW,EAAG,GAAGzB,CAAC,EAAI,CACjC,OAAuBL,EAAE,MAAO,CAAE,UAAWJ,EAAE,WAAY,CAAC,EAAG,GAAGS,EAAG,CACvE,CACA,SAASV,GAAE,CAAE,UAAW,EAAG,GAAGU,CAAC,EAAI,CACjC,OAAuBL,EAAE,MAAO,CAAE,UAAWJ,EAAE,WAAY,CAAC,EAAG,GAAGS,EAAG,CACvE,CACA,MAAM8D,GAAI,CAAC,CACT,UAAW,EAAI,GACf,SAAU9D,EAAI,QACd,SAAUR,EAAI,OACd,UAAW,EACX,SAAUK,EACV,GAAGmC,CACL,IAAM,CACJ,MAAM,EAAImB,EAAE,IAAI,EAAG,CAAC1D,EAAGC,CAAC,EAAIyB,EAC1B,EAAI,YAAc,UACnB,EACD,OAAOrB,GAAE,EAAG,CAAC,aAAc,WAAW,EAAE,SAASL,CAAC,EAAG,IAAM,CACzDC,EACGoF,GAAMA,IAAM,aAAe,YAAcA,IAAM,YAAc,WAAaA,CAC5E,CACL,CAAG,EAAG7C,EAAE,IAAM,CACV,GAAKxC,IAAM,YAAcC,EAAE,YAAY,EAAI,CAAC,GAAKD,IAAM,YAAcC,EAAE,WAAW,CACtF,EAAK,CAAC,CAAC,CAAC,EAAmBC,EACvB,MACA,CACE,GAAGqC,EACH,UAAWzC,EACT,UAAUE,CAAC;AAAA,+EAEX,EACA,CAAC,aAAc,WAAW,EAAE,SAASA,CAAC,GAAK,uBAC3C,CAAC,YAAa,UAAU,EAAE,SAASA,CAAC,GAAK,qBACzCA,IAAM,aAAe,6BACrBA,IAAM,YAAc,gBACrB,EACD,IAAK,EACL,MAAO,CACL,MAAO,CAAC,YAAa,WAAW,EAAE,SAASA,CAAC,EAAID,EAAIQ,CACrD,EACD,SAAUH,CAChB,CACG,CACH,ECzCMiE,GAAI,CAAC,CACT,QAAS,EACT,UAAW9D,EACX,QAASR,EACT,gBAAiBD,EACjB,GAAGG,CACL,IAAsB8E,EACpBM,GACA,CACE,GAAGpF,EACH,UAAWG,EACT,+CACAG,CACD,EACD,SAAU,CACQP,EAAE,MAAO,CAAE,UAAW,8EAA+E,SAAU,EAAoBA,EAAEM,GAAG,CAAE,QAAS,CAAC,CAAE,EAAoBN,EAAEE,GAAG,CAAE,QAASH,CAAG,CAAA,EAAG,EAChMgF,EACd,SACA,CACE,UAAW,mFACX,QAASjF,EACT,SAAU,CACQE,EAAEK,EAAG,CAAE,UAAW,gBAAiB,KAAM,WAAY,EACrDL,EAAE,OAAQ,CAAE,UAAW,kFAAmF,SAAU,UAAY,CAAA,CAC5J,CACA,CACA,CACA,CACA,CACA,EC/BM6E,GAAI,CAAC,CACT,SAAUE,EACV,UAAWxE,EACX,SAAU8E,EACV,GAAGvF,CACL,IAAsBK,EACpBJ,GACA,CACE,GAAGD,EACH,UAAWQ,EACT,sEACAC,CACD,EACD,SAAU,CACQP,EAAE,MAAO,CAAE,UAAW,oCAAqC,SAAUqF,GAAqBrF,EACxG,QACA,CACE,UAAW,iHACX,YAAa,qBACvB,CACA,EAAS,EACaA,EACd,SACA,CACE,UAAW;AAAA;AAAA;AAAA,kCAIX,QAAS,IAAM+E,EAAG,EAClB,SAA0B/E,EAAEE,EAAG,CAAE,UAAW,gBAAiB,KAAM,YAAa,KAAM,EAAI,CAAA,CACpG,CACA,CACA,CACA,CACA,ECnCA,SAASoC,GAAE,CACT,UAAWpC,EACX,SAAUI,EACV,GAAGiC,CACL,EAAG,CACD,KAAM,CAACtC,EAAGM,CAAC,EAAIiC,EAAE,EAAE,EACnB,SAASzC,EAAEC,EAAG,CACZO,EACEP,EAAE,aAAeA,EAAE,UAAYA,EAAE,aAAe,CACjD,CACL,CACE,MAAM+E,EAAIlE,EAAE,IAAI,EAChB,OAAOgE,EAAE,IAAM,CACb,GAAI,CAACE,EAAE,QACL,OACF,MAAM/E,EAAI,IAAI,eAAgB,GAAM,CAClC,MAAMG,EAAI,EAAE,IAAK,EACjB,GAAI,CAACA,EACH,OACF,KAAM,CAAE,OAAQuD,CAAC,EAAKvD,EACtBJ,EAAE2D,CAAC,CACT,CAAK,EACD,OAAO1D,EAAE,QAAQ+E,EAAE,OAAO,EAAG,IAAM,CACjC/E,EAAE,WAAY,CACf,CACL,EAAK,CAAC+E,EAAE,OAAO,CAAC,EAAmB3E,EAAEC,EAAG,CAAE,SAAU,CAChCP,EACd,MACA,CACE,UAAWuF,EACT,oEACAnF,CACD,EACD,SAAWF,GAAMD,EAAEC,EAAE,aAAa,EAClC,IAAK+E,EACL,GAAGxC,EACH,SAAUjC,CAClB,CACK,EACDL,EAAoBH,EAClB,MACA,CACE,UAAW,8CACX,MAAO,CACL,UAAW,4CACrB,CACA,CACA,EAAQ,IACR,EAAK,CACL,CC/CA,MAAMyE,GAAI,CAAC,CACT,SAAUzE,EACV,QAASuF,EACT,cAAelF,EACf,gBAAiBJ,EACjB,UAAWQ,EAAI,GACf,SAAUgC,EAAI,QACd,SAAUlC,EAAI,OACd,QAASC,EACT,GAAGyE,CACL,IAAsB9E,EACpByD,GACA,CACE,GAAGqB,EACH,UAAWxE,EACX,SAAUgC,EACV,SAAUlC,EACV,SAAU,CACQJ,EAAEY,GAAG,CAAE,SAAU,CACfb,EAAE6E,GAAG,CAAE,SAAU/E,EAAG,SAAUK,EAAG,EACjCH,EAAE,MAAO,CAAE,UAAW,wBAAyB,SAAU+E,EAAE,QAAU,CAAA,CAC7F,EAAS,EACa/E,EACdI,GACA,CACE,QAASiF,EACT,gBAAiBtF,EACjB,QAASO,CACnB,CACA,CACA,CACA,CACA,ECpCMuF,GAAcC,GAA0BC,EAAM,cAAc,MAAO,CAAE,MAAO,IAAK,OAAQ,GAAI,QAAS,aAAc,KAAM,eAAgB,MAAO,6BAA8B,GAAGD,CAAO,EAAkBC,EAAM,cAAc,OAAQ,CAAE,EAAG,03BAA43B,CAAA,EAAmBA,EAAM,cAAc,OAAQ,CAAE,EAAG,69BAA69B,CAAE,EAAmBA,EAAM,cAAc,OAAQ,CAAE,EAAG,8cAA8c,CAAE,EAAmBA,EAAM,cAAc,OAAQ,CAAE,EAAG,gdAAkd,CAAA,EAAmBA,EAAM,cAAc,OAAQ,CAAE,EAAG,8+BAA8+B,CAAE,EAAmBA,EAAM,cAAc,OAAQ,CAAE,EAAG,sxBAAwxB,CAAA,EAAmBA,EAAM,cAAc,OAAQ,CAAE,EAAG,8TAA8T,CAAE,CAAC,ECA12KC,GAAWF,GAA0BC,EAAM,cAAc,MAAO,CAAE,MAAO,GAAI,OAAQ,GAAI,QAAS,YAAa,KAAM,OAAQ,MAAO,6BAA8B,GAAGD,CAAO,EAAkBC,EAAM,cAAc,OAAQ,CAAE,EAAG,w5DAAy5D,KAAM,+BAAiC,CAAA,EAAmBA,EAAM,cAAc,OAAQ,KAAsBA,EAAM,cAAc,iBAAkB,CAAE,GAAI,0BAA2B,GAAI,GAAI,GAAI,EAAG,GAAI,GAAI,GAAI,GAAI,cAAe,gBAAgB,EAAoBA,EAAM,cAAc,OAAQ,CAAE,UAAW,cAAc,CAAE,EAAmBA,EAAM,cAAc,OAAQ,CAAE,OAAQ,EAAG,UAAW,cAAgB,CAAA,CAAC,CAAC,CAAC,ECCzgFE,GAAqB,IAAM,CAC9B,KAAA,CAAE,EAAAlG,CAAE,EAAImG,GAAe,EAE7B,SACK,MACG,CAAA,SAAA,CAAAC,EAAC,IAAE,CAAA,UAAU,cAAe,SAAApG,EAAE,yBAAyB,EAAE,EACzDqG,EAAC,SAAA,CACG,QAAS,IAAM,SAAS,OAAO,EAC/B,UAAU,gDAET,SAAA,CAAArG,EAAE,sBAAsB,EAAE,KAAA,CAAA,CAAA,CAC/B,EACJ,CAER,EChBO,SAASsG,IAAiB,CACtB,MAAA,CACH,iBAAkB,MAAOC,EAAkBC,IAAiB,CACxD,GAAI,CAACD,EACD,OAGE,MAAAE,EAAWF,EAAS,MAAM,GAAG,EACnCE,EAAS,IAAI,EACbA,EAAS,IAAI,EACbA,EAAS,KAAK,QAAQ,EAChB,MAAAC,EAAYD,EAAS,KAAK,GAAG,EAsBnC,OAJc,MAjBC,MAAM,MAAMC,EAAW,CAClC,OAAQ,OACR,QAAS,CACL,eAAgB,kBACpB,EACA,KAAM,KAAK,UAAU,CACjB,MAAO;AAAA;AAAA;AAAA;AAAA,sBAKP,UAAW,CACP,KAAAF,CAAA,CAEP,CAAA,CAAA,CACJ,GAE0B,KAAK,GAIpB,KAAK,aAAA,CAEzB,CACJ,CChBA,MAAMG,GAAc,IAEdC,GAAuB,CAACC,EAAsBC,IAC3CA,EAEED,EACF,oBACA,SAAS,eAAeC,CAAU,YAAY,EAJ3B,GAOfC,GAAwB,IAA0B,CAC3D,KAAM,CAACC,EAAoBC,CAAqB,EAAIC,EAAmB,CAAA,CAAE,EACnE,CAACC,EAAyBC,CAA0B,EAAIF,EAE5D,IAAI,GAAK,EACL,CACF,WAAAG,EACA,cAAAC,EACA,gCAAAC,EACA,YAAAC,EACA,eAAAC,EACA,eAAAC,EACA,oBAAAC,GACAC,GAAuB,EAErB,CAAE,iBAAAC,CAAiB,EAAIvB,GAAe,EAEtCwB,EAA6BC,EAAgC,IAAA,GAAK,EAElEC,EAAmBC,EACrB,MAAOC,EAAiBC,EAAkBC,IAAwB,CAC9DnB,EAA+BoB,GAAA,CAAC,GAAGA,EAAOD,CAAW,CAAC,EAEtD,MAAME,EACFH,EAAQ,KAER,GAAA,CACI,IAAAI,EACApB,EAAwB,IAAIiB,CAAW,EAEtCG,IACDA,EACI,MAAMhB,EACFW,EACAI,EAAY,IACZ,CACI,aACI,OAAOA,EAAY,QAAQ,GAAK,GAAA,CAE5C,EAEoBnB,EAAA,IACpBiB,EACAG,CACJ,EACAnB,EAA2BD,CAAuB,GAGhD,MAAAG,EAAcY,EAASC,EAAQ,EAAE,EACjC,MAAAd,EAAWa,EAASK,CAAoB,EAEnBT,EAAA,QAAQ,OAAOM,CAAW,QAChDI,EAAO,CACZ,MAAMC,EACFX,EAA2B,QAAQ,IAAIM,CAAW,GAAK,EAC3DN,EAA2B,QAAQ,IAC/BM,EACAK,IAAU9B,GAAc8B,EAAQA,EAAQ,EAC5C,EAEAC,EAAO,MAAMF,CAAK,CAAA,QACpB,CACEvB,EACIoB,GAAAA,EAAM,OAAOM,GAAQA,IAASP,CAAW,CAC7C,CAAA,CAER,EACA,CACIjB,EACAG,EACAD,EACAS,EACAP,CAAA,CAER,EAEMqB,EAAsBX,EACxB,MAAOC,EAAiBC,EAAkBC,IAAwB,OAC9DnB,EAA+BoB,GAAA,CAAC,GAAGA,EAAOD,CAAW,CAAC,EAClD,GAAA,CAEA,MAAMS,EAAQnB,EAAe,KACzBmB,GAASA,EAAM,MAAM,OAAO,KAAOX,CACvC,EACA,GAAI,CAACW,EAAO,OAUZ,GATM,MAAAvB,EAAcY,EAASC,EAAQ,EAAE,EAEjC,MAAAX,EACFU,EACAW,EAAM,MAAM,OAAO,KAAO,KAAKA,EAAM,MAAM,OAAO,EAAE,GACxD,EAEM,MAAAlB,EAAoBO,EAASY,CAAK,GAEpCC,EAAAZ,EAAQ,OAAR,MAAAY,EAAc,KAAOF,EAAM,MAAM,OAAO,KAAM,CAC9C,MAAMG,EAAQ,MAAMnB,EAChBM,EAAQ,KAAK,IACbU,EAAM,MAAM,OAAO,IACvB,EACA,GAAIG,EAAO,CACP,MAAMvC,EAAW0B,EAAQ,KAAK,IAAI,MAAM,GAAG,EAClC1B,EAAAA,EAAS,OAAS,CAAC,EAAIuC,EAC1B,MAAAC,EAASxC,EAAS,KAAK,GAAG,EAEhC,MAAMgB,EAAewB,EAAQ,CACzB,iBAAkB,GAClB,YAAa,SACb,UAAW,CAAC,EACZ,SAAU,CAAA,CAAC,CACd,CAAA,CACL,QAEChJ,EAAY,CACjByI,EAAO,MAAMzI,CAAC,CAAA,QAChB,CACEgH,EACIoB,GAAAA,EAAM,OAAOM,GAAQA,IAASP,CAAW,CAC7C,CAAA,CAER,EACA,CACIV,EACAJ,EACAE,EACAG,EACAE,EACAJ,CAAA,CAER,EAEMyB,EACFjB,EACI,MAAOC,EAASC,EAASgB,EAAQtC,IAAiB,OAC9C,OAAQsC,EAAQ,CACZ,IAAK,KAAK,CAEF,GAAAvC,GACIC,GACAkC,EAAAZ,EAAQ,OAAR,YAAAY,EAAc,UAAA,EAEpB,CAME,GAAI,EAJA,aAAa,QACT,8BAAA,IACE,SAEsB,OAChC,MAAMX,EAAc,WAAWF,CAAO,IAAIiB,CAAM,GAI5C,GAFAnC,EAAmB,SAASoB,CAAW,GAEvC,CAACD,EAAQ,KAAM,OAEb,MAAAM,EACFX,EAA2B,QAAQ,IAC/BM,CAAA,GACC,EAET,WACI,IACIJ,EACIE,EACAC,EACAC,CACJ,EACJK,CACJ,CAAA,CAGJ,KAAA,CAGJ,IAAK,KAAK,CACN,MAAML,EAAc,WAAWF,CAAO,IAAIiB,CAAM,GAC5C,GAAAnC,EAAmB,SAASoB,CAAW,EAAG,OAC9C,WACI,IACIQ,EACIV,EACAC,EACAC,CACJ,EACJ,CACJ,EACA,KAAA,CACJ,CAER,EACA,CAACQ,EAAqBZ,EAAkBhB,CAAkB,CAC9D,EAEJ,OAAOoC,GAAQ,KAAO,CAAE,oBAAAF,CAAwB,GAAA,CAACA,CAAmB,CAAC,CACzE,EC9NMG,GAAiB,OAAA,YAAA,YAEVC,GAAa,OAAO,UAAU,UAAU,SAAS,UAAU,EAG3DC,GAAQ,OAAO,UAAU,WAAW,SAAS,KAAK,EAEzDC,GAAuC,CACzC,mBAAoB,+BACpB,mBAAoB,WACpB,qBAAsB,UACtB,SAAU,uBACV,SAAU,uBACV,UAAW,uBACX,UAAW,SACf,EAEMC,GAAuB,IAAM,CAC/B,MAAMC,EACF,2DACEC,EAAM,OAAO,SAAS,KAEtBC,EAAM,OAAO,KAAKJ,EAAY,EAAE,KAAKI,GAAOD,EAAI,SAASC,CAAG,CAAC,EAC7DC,EAAQD,EAAMJ,GAAaI,CAAG,EAAI,OACxC,GAAKC,EAGM,MAAA,GAAGH,CAAU,IAAIG,CAAK,eAErC,EAEMC,GAAqB,SAAY,CACnC,MAAMC,EAAON,GAAqB,EAClC,GAAI,CAACM,EACM,OAGL,MAAAC,EAAO,MADE,MAAM,MAAMD,CAAI,GACL,KAAK,EACzB,CAAE,QAAAE,GAAYD,EACb,OAAAC,CACX,EAEaC,GAAkB,SAAY,CACjC,MAAAC,EAAW,MAAML,GAAmB,EAE1C,OAAIK,EACO,CACH,SAAUA,IAAad,GACvB,eAAAA,GACA,cAAec,CACnB,EAGG,IACX,ECjCaC,GAAqB,IAAM,CAC9B,KAAA,CAAE,EAAApK,CAAE,EAAImG,GAAe,EACvB,CACF,eAAAuB,EACA,WAAA2C,EACA,cAAAC,EACA,iBAAAC,EACA,aAAAC,GACAC,GAAW,EACTC,EAAkB3C,EAAO,CAAC,GAAGsC,CAAU,CAAC,EACxCM,EAAkB5C,EAAsB,EAAE,EAC1C,CAAK,CAAA,CAAA6C,CAAsB,EAAIC,GAAkB,EACjD,CAAE,WAAAC,CAAW,EAAIC,GAAmB,EACpCC,EAAqBjE,GAAsB,EAC3CkE,EAAUC,GAAgB,EAC1B,CAACC,CAAa,EAAIC,GAAiB,EAEzC,eAAeC,GAAqB,CAC1B,MAAAC,EAAS,MAAMpB,GAAgB,EACrC,GAAIoB,IAAW,KACf,IAAIA,EAAO,SACA,MAAA,GAIP,OAAyB,YAAA,OAAA,eACzBH,EAAc,WAEN,QAAA,KACJ;AAAA,WAAmCG,EAAO,cAAc;AAAA,UAAaA,EAAO,aAAa,EAC7F,EAEMC,EAAAnF,EAACF,KAAmB,EAAI,CAC1B,KAAM,kBACN,QAAS,eACT,UAAW,EAAA,CACd,EACL,CAGJsF,EAAU,IAAM,CACOH,IAAE,MAAM,QAAQ,KAAK,CAC5C,EAAG,EAAE,EAELG,EAAU,IACcZ,EAAuBI,CAAkB,EAE9D,CAACJ,EAAwBlD,EAAgBsD,CAAkB,CAAC,EAE/D,MAAMS,EAAoBxD,EACtB,MAAOoC,EAA2BrK,IAAiB,CAC/CqK,EAAW,QAAiBxB,GAAA,CAClB,MAAA6C,EAAYhB,EAAgB,QAAQ,KACtCgB,GAAaA,EAAU,KAAO7C,EAAM,EACxC,EAEA,GAAK6C,EAGD,IAAA7C,EAAM,cAAgBC,GACtBD,EAAM,aAAe8C,IACrBhB,EAAgB,QAAQ,SAAS9B,CAAK,EAGtB,OAAA8B,EAAA,QAAUA,EAAgB,QAAQ,OAC9CrF,GAAKA,EAAE,KAAOuD,EAAM,EACxB,EAEO0C,EAAMvL,EAAE,gCAAgC,EAAG,CAC9C,KAAM,iBAAA,CACT,GAIA6I,EAAM,aAAe+C,GAClB/C,EAAM,aAAegD,KACzBhD,EAAM,aAAe6C,EAAU,YAGff,EAAA,QAAQ,KAAK9B,CAAK,EACtC,CACH,EAEe6B,EAAA,QAAU,CAAC,GAAGL,CAAU,EAEpCM,EAAgB,QAAQ,OAAS,GACf,MAAMU,EAAmB,GAEvBV,EAAA,QAAQ,QAAiB9B,GAAA,CACrC0C,EACIvL,EACI,iBAAiB6I,EAAM,aAAe+C,EAAW,oBAAsB,gBAAgB,GACvF,CAAE,MAAO/C,EAAM,IAAK,CACxB,EACA,CACI,KAAM,kBACN,QAAS,GAAGA,EAAM,aAAe+C,EAAW,oBAAsB,gBAAgB,IAAI/C,EAAM,EAAE,EAAA,CAEtG,CAAA,CACH,CAGb,EACA,CAAA,CACJ,EAEA2C,EAAU,IAAM,CACZC,EAAkBpB,EAAYrK,CAAC,EAAE,MAAM,QAAQ,KAAK,CACrD,EAAA,CAACqK,EAAYrK,EAAGyL,CAAiB,CAAC,EAErC,MAAMK,EAAqB7D,EACvB,MAAOP,GAA4C,CACzC,MAAAqE,EAAe,MAAMxB,EAAiB7C,CAAc,EAC1D4C,EAAcyB,CAAY,CAC9B,EACA,CAACxB,EAAkBD,CAAa,CACpC,EACAkB,EAAU,IAAM,CACZ,MAAMQ,EAAkC,CACpC,GAAGlB,EACH,GAAGpD,CACP,EACAoE,EAAmBE,CAAM,EAAE,MAAM,QAAQ,KAAK,CAC/C,EAAA,CAACtE,EAAgBoD,EAAYgB,CAAkB,CAAC,EAEnDN,EAAU,IACDP,EAIST,EAAa,IAAMsB,EAAmBpE,CAAc,CAAC,EAH/D,OAKL,CAACuD,EAASvD,EAAgB8C,EAAcsB,CAAkB,CAAC,CAClE,EC3IA,SAASG,GAAcC,EAA4B,CACzC,MAAAC,EAAYD,EAAiB,CAAC,EACpC,GAAI,CAACC,EACD,OAEA,GAAAA,EAAU,OAASC,EACnB,MAAM,IAAI,MACN,uDACJ,EAEE,MAAAC,EAAqBC,GAA0BH,CAAS,EACxDI,EAAqBL,EACtB,MAAM,CAAC,EACP,IAAYM,GAAA,mBAAmBA,EAAK,MAAQA,EAAK,IAAI,CAAC,EAEpD,MADU,CAACH,EAAoB,GAAGE,CAAkB,EAAE,KAAK,GAAG,CAEzE,CAEA,SAASD,GAA0BH,EAAwB,CACvD,MAAMM,EAAYN,EAAU,MAAQA,EAAU,MAAQA,EAAU,GAEzD,MAAA,MAAM,mBAAmBM,CAAS,CAAC,EAC9C,CAEA,SAASC,GACLrC,EACAsC,EACAC,EACF,CACE,GAAI,CAACD,EACM,OAAA,KAGL,MAAAzE,EAAU,mBAAmByE,CAAmB,EAChDR,EAAY9B,EAAW,KACzBmC,IACIA,GAAA,YAAAA,EAAM,MAAOtE,IACbsE,GAAA,YAAAA,EAAM,QAAStE,IACfsE,GAAA,YAAAA,EAAM,QAAStE,CACvB,EAEI,GAAA,CAACiE,EAAkB,OAAA,KACnB,GAAA,CAACS,EAA8B,OAAAT,EAE7B,MAAAU,EAAYD,EACb,MAAM,GAAG,EACT,OAAO,OAAO,EACd,IAAI,kBAAkB,EAE3B,IAAIE,EAAuBX,EAE3B,UAAWY,KAAYF,EAAW,CAC1B,GAAAC,EAAa,OAASE,EAAM,MAE1B,MAAAC,EAA+BH,EAAa,SAAS,KAC/CN,GAAAA,EAAK,OAASO,GAAYP,EAAK,OAASO,CACpD,EAEA,GAAI,CAACE,EAAU,CACH,QAAA,MAAM,kBAAmBF,CAAQ,EACzC,KAAA,CAGWD,EAAAG,CAAA,CAGZ,OAAAH,CACX,CAEO,MAAMI,GAAoB,IAAM,CACnC,MAAMC,EAAWC,EAAY,EACvBC,EAAWC,GAAY,EACvB,CAAE,OAAAC,EAAQ,SAAAC,CAAA,EAAaH,EACvBI,EAASC,GAAuB,EAChC,CAAE,WAAArD,EAAY,aAAAyC,EAAc,iBAAAZ,EAAkB,gBAAAyB,CAAA,EAChDC,GAAkB,EAChBjB,EAAsBc,EAAO,QAC7Bb,EAAwBa,EAAO,GAAG,EAClCI,EAA2BnB,GAC7BrC,EACAsC,EACAC,CACJ,EACMkB,EAAuB7B,GAAcC,CAAgB,EAG3DV,EAAU,IAAM,CACR,CAACsC,GAAwBA,IAAyBN,GAEtDL,EAAS,CAAE,SAAUW,EAAsB,OAAAP,CAAA,CAAQ,CACpD,EAAA,CAACA,EAAQJ,EAAUW,CAAoB,CAAC,EAI3CtC,EAAU,IAAM,CACRsB,GAAgB,CAACe,GAErBF,EAAgBE,CAAwB,CACzC,EAAA,CAACf,EAAce,EAA0BF,CAAe,CAAC,EAI5DnC,EAAU,IAAM,CACZ,MAAMqC,EAA2BnB,GAC7BrC,EACAsC,EACAC,CACJ,EAEKiB,GAELF,EAAgBE,CAAwB,CAAA,EACzC,CACCxD,EACAsC,EACAC,EACAe,CAAA,CACH,CACL,ECjIA,SAAwBI,IAAiB,CACrC,MAAMC,EAAUvD,GAAW,EACrB,CAAE,wBAAAwD,GAA4BD,EAGhC,OAAA5H,EAAA8H,EAAA,CACK,YAAc,IAAI,CAAC,CAAE,MAAAC,EAAO,YAAAC,EAAa,iBAAAC,CACtC,IAAAC,EAACC,GAAA,CACI,GAAGP,EACJ,WAAYC,EAAwBG,CAAW,EAC/C,MAAAD,EACA,iBAAkBC,EAClB,IAAKA,EACL,iBAAAC,CAAA,CAEP,CAAA,EACL,CAER,CCPA,SAAwBG,IAAU,CAC9B,KAAM,CAACC,EAAWC,CAAY,EAAIC,GAAQC,EAAoB,EACxD,CAAE,UAAAC,CAAU,EAAIC,GAAS,EACzB3B,EAAWC,EAAY,EACvB,CAAE,gBAAAO,CAAgB,EAAIC,GAAkB,EAExC,CAAE,KAAAmB,EAAM,WAAAC,CAAW,EAAIC,GAAS,EAEhCC,EAAe,aAAa,QAAQ,eAAe,IAAM,OAE/D,SAASC,GAAiB,CACTT,EAAA7E,GAAS,CAACA,CAAK,CAAA,CAGhC,MAAMuF,EAAkB,IAAM,CAC1BP,EAAU,gBAAiB,CAAE,UAAW,IAAM1B,EAAS,CAAC,EAAG,CAC/D,EAEMkC,EAAcpH,EAAY,IAAM,CAClC0F,EAAgB,IAAI,EACpBR,EAAS,GAAG,CAAA,EACb,CAACA,EAAUQ,CAAe,CAAC,EAsB1B,OAAAvH,EAACkJ,GAAA,CACG,GAAG,UACH,UAAAb,EACA,SAAUU,EACV,gBAAAC,EACA,cAxBJ/I,EAAC,MAAI,CAAA,UAAU,2BACX,SAAA,CAAAD,EAACmJ,EAAA,CACG,KAAK,UACL,UAAU,sCACV,QAASF,CAAA,CACb,EACCH,GACG9I,EAAC,SAAA,CACG,GAAG,uBACH,UAAU,OACV,QAAS,IAAMyI,EAAU,qBAAsB,EAAE,EAEjD,SAACzI,EAAA,MAAA,CAAI,IAAI,eAAe,UAAU,mBAAoB,CAAA,CAAA,CAAA,CAC1D,EAER,EAUI,QAAS2I,GAAA,YAAAA,EAAM,QACf,QAASC,EAET,SAAA5I,EAACoJ,GAAA,CACG,SACIpJ,EAAC,MAAI,CAAA,UAAU,cAAc,SAE7B,oCAAA,EAEJ,QAASsC,EAAO,MAEhB,WAACqF,GAAe,CAAA,CAAA,CAAA,CAAA,CACpB,CACJ,CAER,CCpEA,SAAwB0B,IAAO,CACRrF,GAAA,EACD8C,GAAA,EAElB,MAAMC,EAAWC,EAAY,EACvB,CAAE,MAAAsC,CAAM,EAAIT,GAAS,EAE3BzD,EAAU,IAAM,QACZzC,EAAA,OAAO,cAAP,MAAAA,EAAoB,OACxB,EAAG,EAAE,EAEL,KAAM,CAAC4G,EAAcC,CAAe,EAAIC,GAAgB,EAExD,OAAArE,EAAU,IAAM,CACN,MAAAsE,EAAUH,EAAa,IAAI,MAAM,EACvC,GAAIG,GAAWJ,EAAO,CACZ,MAAAK,EAAU,mBAAmBD,CAAO,EAC1CH,EAAa,OAAO,MAAM,EAC1BC,EAAgBD,CAAY,EAC5BD,EAAMK,CAAO,EAAE,MAAMrH,EAAO,KAAK,CAAA,CAEtC,EAAA,CAACgH,EAAOC,EAAcC,CAAe,CAAC,EAEzCpE,EAAU,IAAM,OAKL,OAJazC,EAAA,OAAO,cAAP,YAAAA,EAAoB,UAAU,CAACxD,EAAIoE,IAAQ,CAClDwD,EAAA,IAAIxD,CAAG,EAAE,CAAA,EAGf,EACR,CAACwD,CAAQ,CAAC,EAGT9G,EAAC,MAAI,CAAA,UAAU,WACV,SAAA,CACGiD,IAAAjD,EAAC,MAAA,CACG,UAAW;AAAA,sBACTkD,IAAS,gBAAgB;AAAA,kDAG3B,SAAA,CAACnD,EAAA4J,GAAA,CAAS,UAAU,mBAAoB,CAAA,EACxC5J,EAAC6J,GAAY,CAAA,UAAU,WAAY,CAAA,CAAA,CAAA,CACvC,EAEJ7J,EAAC,MAAA,CACG,UAAW;AAAA,0BACDkD,GAAa,eAAiB,UAAU;AAAA,sBAElD,KAAK,eACL,SAAU,EAEV,WAAC4G,GACG,CAAA,SAAA,CAAA9J,EAACoI,GAAQ,EAAA,IACR,MAAI,CAAA,UAAU,gCACX,SAAApI,EAAC+J,KAAO,CACZ,CAAA,CAAA,CACJ,CAAA,CAAA,CAAA,CACJ,EACJ,CAER"}
|