import{r as e}from"./QTnfLwEv.js";import{A as t,Ct as n,D as r,G as i,H as a,J as o,P as s,Q as c,T as l,Y as u,Z as d,_ as f,b as p,c as m,d as h,gt as g,it as _,lt as v,o as y,s as ee,u as b,v as x,vt as S,w as C,wt as w,x as T,xt as E,y as D}from"./CaGtQlYh.js";import{E as O,Ht as k,It as A,L as j,Mt as M,Ot as te,T as ne,Vt as N,Wt as re,Y as ie,a as ae,h as oe,jt as se,k as ce,m as le,n as ue,p as de,r as fe,t as pe}from"#entry";import{n as me,r as he,t as P}from"./CIa-1CJu.js";import{t as ge}from"./CJgAejf_.js";import{i as _e,r as ve}from"./DohEsvF1.js";import{b as ye,l as be,s as xe,x as Se}from"./CsU6pgHx.js";import{a as Ce,i as we,t as Te}from"./DhTvfVif.js";import{t as Ee}from"./CuyTkb7v.js";import{t as De}from"./CX_RojMw.js";import{t as Oe}from"./BcteWY0Z.js";import{t as ke}from"./DAvMhUmu.js";import{t as Ae}from"./DBeOglbT.js";var je=`[object AsyncFunction]`,Me=`[object Function]`,Ne=`[object GeneratorFunction]`,Pe=`[object Proxy]`;function Fe(e){if(!Ee(e))return!1;var t=we(e);return t==Me||t==Ne||t==je||t==Pe}var Ie=Ce[`__core-js_shared__`],Le=function(){var e=/[^.]+$/.exec(Ie&&Ie.keys&&Ie.keys.IE_PROTO||``);return e?`Symbol(src)_1.`+e:``}();function Re(e){return!!Le&&Le in e}var ze=Function.prototype.toString;function Be(e){if(e!=null){try{return ze.call(e)}catch{}try{return e+``}catch{}}return``}var Ve=/[\\^$.*+?()[\]{}|]/g,He=/^\[object .+?Constructor\]$/,Ue=Function.prototype,We=Object.prototype,Ge=Ue.toString,Ke=We.hasOwnProperty,qe=RegExp(`^`+Ge.call(Ke).replace(Ve,`\\$&`).replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,`$1.*?`)+`$`);function Je(e){return!Ee(e)||Re(e)?!1:(Fe(e)?qe:He).test(Be(e))}function Ye(e,t){return e?.[t]}function Xe(e,t){var n=Ye(e,t);return Je(n)?n:void 0}function Ze(){}function Qe(e,t,n,r){for(var i=e.length,a=n+(r?1:-1);r?a--:++a-1}function rt(e,t){return e===t||e!==e&&t!==t}var it=Xe(Object,`create`);function at(){this.__data__=it?it(null):{},this.size=0}function ot(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=+!!t,t}var st=`__lodash_hash_undefined__`,ct=Object.prototype.hasOwnProperty;function lt(e){var t=this.__data__;if(it){var n=t[e];return n===st?void 0:n}return ct.call(t,e)?t[e]:void 0}var ut=Object.prototype.hasOwnProperty;function dt(e){var t=this.__data__;return it?t[e]!==void 0:ut.call(t,e)}var ft=`__lodash_hash_undefined__`;function pt(e,t){var n=this.__data__;return this.size+=+!this.has(e),n[e]=it&&t===void 0?ft:t,this}function mt(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t-1}function xt(e,t){var n=this.__data__,r=gt(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}function St(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t=Vt){var l=t?null:Bt(e);if(l)return Rt(l);o=!1,i=Lt,c=new It}else c=t?[]:s;outer:for(;++r(a(),T(`div`,Wt,[x(`div`,Gt,[x(`div`,Kt,[(a(!0),T(h,null,i(e.tabs,t=>(a(),T(`button`,{key:t.type,class:E([`flex cursor-pointer items-center gap-2 rounded-md border-none bg-transparent px-3 py-1.5 text-[0.8125rem] font-medium text-base-content/60 transition-all duration-200 hover:bg-base-content/5 hover:text-base-content`,{"bg-primary! text-primary-content! shadow-[0_2px_8px_var(--color-primary)/30]":e.activeTab===t.type}]),onClick:e=>n(`update:activeTab`,t.type)},[x(`span`,null,w(t.name),1),x(`span`,Jt,w(t.count),1)],10,qt))),128))]),x(`div`,Yt,[x(`span`,Xt,w(S(r)(`quickFilter`)),1),x(`label`,Zt,[x(`input`,{type:`checkbox`,class:`peer h-0 w-0 opacity-0`,checked:e.enableQuickFilter,onChange:o[0]||=e=>n(`update:enableQuickFilter`,e.target.checked)},null,40,Qt),o[9]||=x(`span`,{class:`absolute inset-0 rounded-full bg-base-content/20 transition-all duration-200 peer-checked:bg-primary before:absolute before:top-1/2 before:left-0.5 before:h-3.5 before:w-3.5 before:-translate-y-1/2 before:rounded-full before:bg-base-100 before:shadow-sm before:transition-all before:duration-200 before:content-[''] peer-checked:before:left-[calc(100%-2px)] peer-checked:before:-translate-x-full`},null,-1)])]),x(`div`,$t,[x(`select`,{class:`w-full cursor-pointer appearance-none rounded-lg border border-base-content/12 bg-base-200/60 bg-[length:1rem] bg-[right_0.5rem_center] bg-no-repeat py-1.5 pr-7 pl-3 text-[0.8125rem] text-base-content transition-all duration-200 focus:border-primary focus:shadow-[0_0_0_2px_var(--color-primary)/20] focus:outline-none`,style:{"background-image":`url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")`},value:e.sourceIPFilter,onChange:o[1]||=e=>n(`update:sourceIPFilter`,e.target.value)},[x(`option`,tn,w(S(r)(`all`)),1),(a(!0),T(h,null,i(e.uniqueSourceIPs,e=>(a(),T(`option`,{key:e,value:e},w(e),9,nn))),128))],40,en)]),x(`div`,rn,[x(`span`,an,w(S(r)(`sortBy`)),1),x(`select`,{class:`w-full max-w-32 cursor-pointer appearance-none rounded-lg border border-base-content/12 bg-base-200/60 bg-[length:1rem] bg-[right_0.5rem_center] bg-no-repeat py-1.5 pr-7 pl-3 text-[0.8125rem] text-base-content transition-all duration-200 focus:border-primary focus:shadow-[0_0_0_2px_var(--color-primary)/20] focus:outline-none`,style:{"background-image":`url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")`},value:e.sortColumn,onChange:o[2]||=e=>n(`update:sortColumn`,e.target.value)},[(a(!0),T(h,null,i(e.sortableColumns,e=>(a(),T(`option`,{key:e.id,value:e.sortId},w(S(r)(e.key)),9,sn))),128))],40,on),x(`button`,{class:`flex h-8 w-8 shrink-0 cursor-pointer items-center justify-center rounded-lg border border-base-content/12 bg-base-200/60 text-base-content transition-all duration-200 hover:border-base-content/20 hover:bg-base-300`,onClick:o[3]||=e=>n(`toggleSortOrder`)},[e.sortDesc?(a(),D(S(de),{key:0,size:18})):(a(),D(S(le),{key:1,size:18}))])]),x(`div`,cn,[x(`input`,{type:`search`,class:`min-w-0 flex-1 rounded-lg border border-base-content/12 bg-base-200/60 px-3 py-2 text-[0.8125rem] text-base-content transition-all duration-200 placeholder:text-base-content/40 focus:border-primary focus:bg-base-100 focus:shadow-[0_0_0_2px_var(--color-primary)/20] focus:outline-none`,placeholder:S(r)(`search`),value:e.globalFilter,onInput:o[4]||=e=>n(`update:globalFilter`,e.target.value)},null,40,ln),x(`button`,{class:E([`flex h-8 w-8 shrink-0 cursor-pointer items-center justify-center rounded-lg border border-base-content/12 bg-base-200/60 text-base-content transition-all duration-200 hover:border-base-content/20 hover:bg-base-300`,{"border-warning/30 bg-warning/15 text-warning hover:bg-warning/25":e.paused}]),onClick:o[5]||=e=>n(`togglePaused`)},[e.paused?(a(),D(S(ne),{key:0,size:18})):(a(),D(S(O),{key:1,size:18}))],2),x(`button`,{class:`flex h-8 w-8 shrink-0 cursor-pointer items-center justify-center rounded-lg border border-base-content/12 bg-base-200/60 text-base-content transition-all duration-200 hover:border-error/30 hover:bg-error/15 hover:text-error disabled:cursor-not-allowed disabled:opacity-50`,disabled:e.isClosingConnections,onClick:o[6]||=e=>n(`closeConnections`)},[e.isClosingConnections?(a(),T(`span`,dn)):(a(),D(S(ae),{key:1,size:18}))],8,un),x(`button`,{class:`flex h-8 w-8 shrink-0 cursor-pointer items-center justify-center rounded-lg border border-base-content/12 bg-base-200/60 text-base-content transition-all duration-200 hover:border-base-content/20 hover:bg-base-300`,onClick:o[7]||=e=>n(`openSettings`)},[l(S(oe),{size:18})])])]),e.displayMode===`card`?(a(),T(`div`,fn,[x(`div`,pn,[x(`span`,mn,w(S(r)(`groupBy`)),1),x(`select`,{class:`cursor-pointer appearance-none rounded-lg border border-base-content/12 bg-base-200/60 bg-[length:1rem] bg-[right_0.5rem_center] bg-no-repeat py-1.5 pr-7 pl-3 text-[0.8125rem] text-base-content transition-all duration-200 focus:border-primary focus:outline-none`,style:{"background-image":`url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")`},value:e.groupingColumn??``,onChange:o[8]||=e=>n(`update:groupingColumn`,e.target.value||null)},[x(`option`,gn,w(S(r)(`none`)),1),(a(!0),T(h,null,i(e.groupableColumns,e=>(a(),T(`option`,{key:e.id,value:e.id},w(S(r)(e.key)),9,_n))),128))],40,hn)])])):p(``,!0)]))}}),{__name:`ConnectionsToolbar`}),yn={class:`conn-table-container min-h-0 flex-1 rounded-xl`},bn={class:`sticky top-0 z-10 bg-base-200`},xn={class:`flex items-center gap-1.5`},Sn=[`onClick`],Cn=[`onClick`],wn=[`onClick`],Tn=[`colspan`],En={class:`flex items-center gap-2`},Dn={class:`conn-group-icon flex h-6 w-6 items-center justify-center rounded-md`},On={class:`font-semibold text-primary`},kn={class:`conn-group-count text-xs`},An=[`onClick`],jn={key:1,class:`conn-cards`},Mn=[`onClick`],Nn={class:`conn-card-group-icon`},Pn={class:`conn-card-group-title`},Fn={class:`conn-card-group-count`},In=[`onClick`],Ln={class:`conn-card__main`},Rn={class:`conn-card__host`},zn={class:`conn-card__process`},Bn={class:`conn-card__aux`},Vn={key:2,class:`conn-empty flex items-center justify-center px-4 py-12 text-sm`},Hn=Object.assign(pe(r({__name:`ConnectionsTable`,props:{columns:{},rowModel:{},sortColumn:{},sortDesc:{type:Boolean},groupingColumn:{},expandedGroups:{},tableSizeClass:{}},emits:[`headerClick`,`toggleGrouping`,`toggleGroupExpanded`,`rowClick`],setup(e,{emit:t}){let r=e,s=t,c=e=>e.render();c.props=[`render`];let{t:l}=te(),u=ge();function d(e){return e.sortable&&!!e.sortId}function m(e,t){return e.sortId?t===e.sortId:!1}let g=f(()=>u.connectionsDisplayMode),_=f(()=>g.value===`card`),v=f(()=>g.value===`table`),y=new Set([`close`,`host`,`process`,`hostProcess`]);function ee(e,t){if(e.renderText)return e.renderText(t);let n=e.render(t);return typeof n==`string`?n:``}function C(e,t){return t.filter(e=>!y.has(e.id)).map(t=>ee(t,e)).filter(e=>e.length>0).join(` · `)}function O(e,t){let n=t.find(e=>e.id===`close`);return n?n.render(e):null}function k(e,t){let n=t.find(e=>e.id===`hostProcess`);if(n){let t=n.renderText?n.renderText(e):``,r=t.indexOf(` (`);return r===-1?t:t.slice(0,r)}let r=t.find(e=>e.id===`host`);if(r){let t=r.render(e);return typeof t==`string`?t:``}return``}function A(e,t){let n=t.find(e=>e.id===`hostProcess`);if(n){let t=n.renderText?n.renderText(e):``,r=t.indexOf(` (`);return r===-1?``:t.slice(r+2,-1)}let r=t.find(e=>e.id===`process`);if(r){let t=r.render(e);return typeof t==`string`?t:``}return``}return(t,u)=>(a(),T(`div`,yn,[S(_)?(a(),T(`div`,jn,[(a(!0),T(h,null,i(e.rowModel,(t,i)=>(a(),T(h,{key:t.type===`group`?`group-${t.key}`:t.original.id},[t.type===`group`?(a(),T(`div`,{key:0,class:`conn-card-group`,onClick:e=>s(`toggleGroupExpanded`,t.key)},[x(`div`,Nn,[e.expandedGroups[t.key]?(a(),D(S(ue),{key:0,size:14})):(a(),D(S(fe),{key:1,size:14}))]),x(`span`,Pn,w(t.key),1),x(`span`,Fn,`(`+w(t.subRows.length)+`)`,1)],8,Mn)):(a(),T(`div`,{key:1,class:`conn-card`,style:n({animationDelay:`${i%20*12}ms`}),onClick:e=>s(`rowClick`,t.original)},[x(`div`,Ln,[x(`span`,Rn,w(k(t.original,r.columns)),1),x(`span`,zn,w(A(t.original,r.columns)),1),(a(),D(o(c),{render:()=>O(t.original,r.columns),class:`conn-card__action`},null,8,[`render`]))]),x(`div`,Bn,w(C(t.original,r.columns)),1)],12,In))],64))),128))])):(a(),T(`table`,{key:0,class:E([`table w-full border-collapse`,[e.tableSizeClass,S(v)?`force-table`:``]])},[x(`thead`,{class:E([`md:table-header-group`,S(v)?`table-header-group`:`hidden`])},[x(`tr`,bn,[(a(!0),T(h,null,i(e.columns,t=>(a(),T(`th`,{key:t.id,class:`conn-th resize-x overflow-hidden text-left text-xs font-semibold tracking-wide whitespace-nowrap uppercase`},[x(`div`,xn,[x(`div`,{class:E([`flex-1`,{"cursor-pointer transition-colors duration-200 select-none hover:text-primary":d(t)}]),onClick:e=>s(`headerClick`,t.id)},w(S(l)(t.key)),11,Sn),m(t,e.sortColumn)&&!e.sortDesc?(a(),D(S(le),{key:0,class:`text-primary`,size:14})):m(t,e.sortColumn)&&e.sortDesc?(a(),D(S(de),{key:1,class:`text-primary`,size:14})):p(``,!0),t.groupable?(a(),T(`button`,{key:2,class:`conn-group-btn flex cursor-pointer items-center justify-center rounded border-none bg-transparent p-1 transition-all duration-200`,onClick:b(e=>s(`toggleGrouping`,t.id),[`stop`])},[e.groupingColumn===t.id?(a(),D(S(ue),{key:0,size:16})):(a(),D(S(fe),{key:1,size:16}))],8,Cn)):p(``,!0)])]))),128))])],2),x(`tbody`,null,[(a(!0),T(h,null,i(e.rowModel,(t,r)=>(a(),T(h,{key:t.type===`group`?`group-${t.key}`:t.original.id},[t.type===`group`?(a(),T(`tr`,{key:0,class:`conn-group-row cursor-pointer transition-colors duration-200`,onClick:e=>s(`toggleGroupExpanded`,t.key)},[x(`td`,{colspan:e.columns.length,class:`conn-group-cell px-3.5 py-2.5`},[x(`div`,En,[x(`div`,Dn,[e.expandedGroups[t.key]?(a(),D(S(ue),{key:0,size:16})):(a(),D(S(fe),{key:1,size:16}))]),x(`span`,On,w(t.key),1),x(`span`,kn,`(`+w(t.subRows.length)+`)`,1)])],8,Tn)],8,wn)):(a(),T(`tr`,{key:1,class:`conn-data-row cursor-pointer transition-all duration-200`,style:n({animationDelay:`${r%20*12}ms`}),onClick:e=>s(`rowClick`,t.original)},[(a(!0),T(h,null,i(e.columns,e=>(a(),T(`td`,{key:e.id,class:`conn-td break-words`},[x(`span`,{class:E([`conn-td-label mb-0.5 block text-[0.6875rem] tracking-wide uppercase md:hidden`,{hidden:S(v)}])},w(S(l)(e.key)),3),(a(),D(o(c),{render:()=>e.render(t.original)},null,8,[`render`]))]))),128))],12,An))],64))),128))])],2)),e.rowModel.length===0?(a(),T(`div`,Vn,[x(`span`,null,w(S(l)(`noData`)),1)])):p(``,!0)]))}}),[[`__scopeId`,`data-v-e0ec8bf8`]]),{__name:`ConnectionsTable`});function Un(e,t,n){return(t=Xn(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Wn(){return Wn=Object.assign?Object.assign.bind():function(e){for(var t=1;t`&&(t=t.substring(1)),e)try{if(e.matches)return e.matches(t);if(e.msMatchesSelector)return e.msMatchesSelector(t);if(e.webkitMatchesSelector)return e.webkitMatchesSelector(t)}catch{return!1}return!1}}function cr(e){return e.host&&e!==document&&e.host.nodeType&&e.host!==e?e.host:e.parentNode}function lr(e,t,n,r){if(e){n||=document;do{if(t!=null&&(t[0]===`>`?e.parentNode===n&&sr(e,t):sr(e,t))||r&&e===n)return e;if(e===n)break}while(e=cr(e))}return null}var ur=/\s+/g;function L(e,t,n){e&&t&&(e.classList?e.classList[n?`add`:`remove`](t):e.className=((` `+e.className+` `).replace(ur,` `).replace(` `+t+` `,` `)+(n?` `+t:``)).replace(ur,` `))}function R(e,t,n){var r=e&&e.style;if(r){if(n===void 0)return document.defaultView&&document.defaultView.getComputedStyle?n=document.defaultView.getComputedStyle(e,``):e.currentStyle&&(n=e.currentStyle),t===void 0?n:n[t];!(t in r)&&t.indexOf(`webkit`)===-1&&(t=`-webkit-`+t),r[t]=n+(typeof n==`string`?``:`px`)}}function dr(e,t){var n=``;if(typeof e==`string`)n=e;else do{var r=R(e,`transform`);r&&r!==`none`&&(n=r+` `+n)}while(!t&&(e=e.parentNode));var i=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return i&&new i(n)}function fr(e,t,n){if(e){var r=e.getElementsByTagName(t),i=0,a=r.length;if(n)for(;i=a:i<=a,!o)return r;if(r===pr())break;r=yr(r,!1)}return!1}function hr(e,t,n,r){for(var i=0,a=0,o=e.children;a2&&arguments[2]!==void 0?arguments[2]:{},r=n.evt,i=qn(n,Fr);Nr.pluginEvent.bind(Q)(e,t,Kn({dragEl:W,parentEl:G,ghostEl:K,rootEl:q,nextEl:Ir,lastDownEl:Lr,cloneEl:J,cloneHidden:Rr,dragStarted:Qr,putSortable:X,activeSortable:Q.active,originalEvent:r,oldIndex:zr,oldDraggableIndex:Br,newIndex:Y,newDraggableIndex:Vr,hideGhostForTarget:gi,unhideGhostForTarget:_i,cloneNowHidden:function(){Rr=!0},cloneNowShown:function(){Rr=!1},dispatchSortableEvent:function(e){U({sortable:t,name:e,originalEvent:r})}},i))};function U(e){Pr(Kn({putSortable:X,cloneEl:J,targetEl:W,rootEl:q,oldIndex:zr,oldDraggableIndex:Br,newIndex:Y,newDraggableIndex:Vr},e))}var W,G,K,q,Ir,Lr,J,Rr,zr,Y,Br,Vr,Hr,X,Ur=!1,Wr=!1,Gr=[],Kr,qr,Jr,Yr,Xr,Zr,Qr,$r,ei,ti=!1,ni=!1,ri,Z,ii=[],ai=!1,oi=[],si=typeof document<`u`,ci=ir,li=tr||er?`cssFloat`:`float`,ui=si&&!ar&&!ir&&`draggable`in document.createElement(`div`),di=function(){if(si){if(er)return!1;var e=document.createElement(`x`);return e.style.cssText=`pointer-events:auto`,e.style.pointerEvents===`auto`}}(),fi=function(e,t){var n=R(e),r=parseInt(n.width)-parseInt(n.paddingLeft)-parseInt(n.paddingRight)-parseInt(n.borderLeftWidth)-parseInt(n.borderRightWidth),i=hr(e,0,t),a=hr(e,1,t),o=i&&R(i),s=a&&R(a),c=o&&parseInt(o.marginLeft)+parseInt(o.marginRight)+z(i).width,l=s&&parseInt(s.marginLeft)+parseInt(s.marginRight)+z(a).width;if(n.display===`flex`)return n.flexDirection===`column`||n.flexDirection===`column-reverse`?`vertical`:`horizontal`;if(n.display===`grid`)return n.gridTemplateColumns.split(` `).length<=1?`vertical`:`horizontal`;if(i&&o.float&&o.float!==`none`){var u=o.float===`left`?`left`:`right`;return a&&(s.clear===`both`||s.clear===u)?`vertical`:`horizontal`}return i&&(o.display===`block`||o.display===`flex`||o.display===`table`||o.display===`grid`||c>=r&&n[li]===`none`||a&&n[li]===`none`&&c+l>r)?`vertical`:`horizontal`},pi=function(e,t,n){var r=n?e.left:e.top,i=n?e.right:e.bottom,a=n?e.width:e.height,o=n?t.left:t.top,s=n?t.right:t.bottom,c=n?t.width:t.height;return r===o||i===s||r+a/2===o+c/2},mi=function(e,t){var n;return Gr.some(function(r){var i=r[V].options.emptyInsertThreshold;if(!(!i||gr(r))){var a=z(r),o=e>=a.left-i&&e<=a.right+i,s=t>=a.top-i&&t<=a.bottom+i;if(o&&s)return n=r}}),n},hi=function(e){function t(e,n){return function(r,i,a,o){var s=r.options.group.name&&i.options.group.name&&r.options.group.name===i.options.group.name;if(e==null&&(n||s))return!0;if(e==null||e===!1)return!1;if(n&&e===`clone`)return e;if(typeof e==`function`)return t(e(r,i,a,o),n)(r,i,a,o);var c=(n?r:i).options.group.name;return e===!0||typeof e==`string`&&e===c||e.join&&e.indexOf(c)>-1}}var n={},r=e.group;(!r||Zn(r)!=`object`)&&(r={name:r}),n.name=r.name,n.checkPull=t(r.pull,!0),n.checkPut=t(r.put),n.revertClone=r.revertClone,e.group=n},gi=function(){!di&&K&&R(K,`display`,`none`)},_i=function(){!di&&K&&R(K,`display`,``)};si&&!ar&&document.addEventListener(`click`,function(e){if(Wr)return e.preventDefault(),e.stopPropagation&&e.stopPropagation(),e.stopImmediatePropagation&&e.stopImmediatePropagation(),Wr=!1,!1},!0);var vi=function(e){if(W){e=e.touches?e.touches[0]:e;var t=mi(e.clientX,e.clientY);if(t){var n={};for(var r in e)e.hasOwnProperty(r)&&(n[r]=e[r]);n.target=n.rootEl=t,n.preventDefault=void 0,n.stopPropagation=void 0,t[V]._onDragOver(n)}}},yi=function(e){W&&W.parentNode[V]._isOutsideThisEl(e.target)};function Q(e,t){if(!(e&&e.nodeType&&e.nodeType===1))throw`Sortable: \`el\` must be an HTMLElement, not ${{}.toString.call(e)}`;this.el=e,this.options=t=Wn({},t),e[V]=this;var n={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(e.nodeName)?`>li`:`>*`,swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return fi(e,this.options)},ghostClass:`sortable-ghost`,chosenClass:`sortable-chosen`,dragClass:`sortable-drag`,ignore:`a, img`,filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(e,t){e.setData(`Text`,t.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:`data-id`,delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:`sortable-fallback`,fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:Q.supportPointer!==!1&&`PointerEvent`in window&&(!rr||ir),emptyInsertThreshold:5};for(var r in Nr.initializePlugins(this,e,n),n)!(r in t)&&(t[r]=n[r]);for(var i in hi(t),this)i.charAt(0)===`_`&&typeof this[i]==`function`&&(this[i]=this[i].bind(this));this.nativeDraggable=t.forceFallback?!1:ui,this.nativeDraggable&&(this.options.touchStartThreshold=1),t.supportPointer?F(e,`pointerdown`,this._onTapStart):(F(e,`mousedown`,this._onTapStart),F(e,`touchstart`,this._onTapStart)),this.nativeDraggable&&(F(e,`dragover`,this),F(e,`dragenter`,this)),Gr.push(this.el),t.store&&t.store.get&&this.sort(t.store.get(this)||[]),Wn(this,Or())}Q.prototype={constructor:Q,_isOutsideThisEl:function(e){!this.el.contains(e)&&e!==this.el&&($r=null)},_getDirection:function(e,t){return typeof this.options.direction==`function`?this.options.direction.call(this,e,t,W):this.options.direction},_onTapStart:function(e){if(e.cancelable){var t=this,n=this.el,r=this.options,i=r.preventOnFilter,a=e.type,o=e.touches&&e.touches[0]||e.pointerType&&e.pointerType===`touch`&&e,s=(o||e).target,c=e.target.shadowRoot&&(e.path&&e.path[0]||e.composedPath&&e.composedPath()[0])||s,l=r.filter;if(ki(n),!W&&!(/mousedown|pointerdown/.test(a)&&e.button!==0||r.disabled)&&!c.isContentEditable&&!(!this.nativeDraggable&&rr&&s&&s.tagName.toUpperCase()===`SELECT`)&&(s=lr(s,r.draggable,n,!1),!(s&&s.animated)&&Lr!==s)){if(zr=B(s),Br=B(s,r.draggable),typeof l==`function`){if(l.call(this,e,s,this)){U({sortable:t,rootEl:c,name:`filter`,targetEl:s,toEl:n,fromEl:n}),H(`filter`,t,{evt:e}),i&&e.preventDefault();return}}else if(l&&(l=l.split(`,`).some(function(r){if(r=lr(c,r.trim(),n,!1),r)return U({sortable:t,rootEl:r,name:`filter`,targetEl:s,fromEl:n,toEl:n}),H(`filter`,t,{evt:e}),!0}),l)){i&&e.preventDefault();return}r.handle&&!lr(c,r.handle,n,!1)||this._prepareDragStart(e,o,s)}}},_prepareDragStart:function(e,t,n){var r=this,i=r.el,a=r.options,o=i.ownerDocument,s;if(n&&!W&&n.parentNode===i){var c=z(n);if(q=i,W=n,G=W.parentNode,Ir=W.nextSibling,Lr=n,Hr=a.group,Q.dragged=W,Kr={target:W,clientX:(t||e).clientX,clientY:(t||e).clientY},Xr=Kr.clientX-c.left,Zr=Kr.clientY-c.top,this._lastX=(t||e).clientX,this._lastY=(t||e).clientY,W.style[`will-change`]=`all`,s=function(){if(H(`delayEnded`,r,{evt:e}),Q.eventCanceled){r._onDrop();return}r._disableDelayedDragEvents(),!nr&&r.nativeDraggable&&(W.draggable=!0),r._triggerDragStart(e,t),U({sortable:r,name:`choose`,originalEvent:e}),L(W,a.chosenClass,!0)},a.ignore.split(`,`).forEach(function(e){fr(W,e.trim(),Si)}),F(o,`dragover`,vi),F(o,`mousemove`,vi),F(o,`touchmove`,vi),a.supportPointer?(F(o,`pointerup`,r._onDrop),!this.nativeDraggable&&F(o,`pointercancel`,r._onDrop)):(F(o,`mouseup`,r._onDrop),F(o,`touchend`,r._onDrop),F(o,`touchcancel`,r._onDrop)),nr&&this.nativeDraggable&&(this.options.touchStartThreshold=4,W.draggable=!0),H(`delayStart`,this,{evt:e}),a.delay&&(!a.delayOnTouchOnly||t)&&(!this.nativeDraggable||!(tr||er))){if(Q.eventCanceled){this._onDrop();return}a.supportPointer?(F(o,`pointerup`,r._disableDelayedDrag),F(o,`pointercancel`,r._disableDelayedDrag)):(F(o,`mouseup`,r._disableDelayedDrag),F(o,`touchend`,r._disableDelayedDrag),F(o,`touchcancel`,r._disableDelayedDrag)),F(o,`mousemove`,r._delayedDragTouchMoveHandler),F(o,`touchmove`,r._delayedDragTouchMoveHandler),a.supportPointer&&F(o,`pointermove`,r._delayedDragTouchMoveHandler),r._dragStartTimer=setTimeout(s,a.delay)}else s()}},_delayedDragTouchMoveHandler:function(e){var t=e.touches?e.touches[0]:e;Math.max(Math.abs(t.clientX-this._lastX),Math.abs(t.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){W&&Si(W),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var e=this.el.ownerDocument;I(e,`mouseup`,this._disableDelayedDrag),I(e,`touchend`,this._disableDelayedDrag),I(e,`touchcancel`,this._disableDelayedDrag),I(e,`pointerup`,this._disableDelayedDrag),I(e,`pointercancel`,this._disableDelayedDrag),I(e,`mousemove`,this._delayedDragTouchMoveHandler),I(e,`touchmove`,this._delayedDragTouchMoveHandler),I(e,`pointermove`,this._delayedDragTouchMoveHandler)},_triggerDragStart:function(e,t){t||=e.pointerType==`touch`&&e,!this.nativeDraggable||t?this.options.supportPointer?F(document,`pointermove`,this._onTouchMove):t?F(document,`touchmove`,this._onTouchMove):F(document,`mousemove`,this._onTouchMove):(F(W,`dragend`,this),F(q,`dragstart`,this._onDragStart));try{document.selection?Ai(function(){document.selection.empty()}):window.getSelection().removeAllRanges()}catch{}},_dragStarted:function(e,t){if(Ur=!1,q&&W){H(`dragStarted`,this,{evt:t}),this.nativeDraggable&&F(document,`dragover`,yi);var n=this.options;!e&&L(W,n.dragClass,!1),L(W,n.ghostClass,!0),Q.active=this,e&&this._appendGhost(),U({sortable:this,name:`start`,originalEvent:t})}else this._nulling()},_emulateDragOver:function(){if(qr){this._lastX=qr.clientX,this._lastY=qr.clientY,gi();for(var e=document.elementFromPoint(qr.clientX,qr.clientY),t=e;e&&e.shadowRoot&&(e=e.shadowRoot.elementFromPoint(qr.clientX,qr.clientY),e!==t);)t=e;if(W.parentNode[V]._isOutsideThisEl(e),t)do{if(t[V]){var n=void 0;if(n=t[V]._onDragOver({clientX:qr.clientX,clientY:qr.clientY,target:e,rootEl:t}),n&&!this.options.dragoverBubble)break}e=t}while(t=cr(t));_i()}},_onTouchMove:function(e){if(Kr){var t=this.options,n=t.fallbackTolerance,r=t.fallbackOffset,i=e.touches?e.touches[0]:e,a=K&&dr(K,!0),o=K&&a&&a.a,s=K&&a&&a.d,c=ci&&Z&&_r(Z),l=(i.clientX-Kr.clientX+r.x)/(o||1)+(c?c[0]-ii[0]:0)/(o||1),u=(i.clientY-Kr.clientY+r.y)/(s||1)+(c?c[1]-ii[1]:0)/(s||1);if(!Q.active&&!Ur){if(n&&Math.max(Math.abs(i.clientX-this._lastX),Math.abs(i.clientY-this._lastY))=0&&(U({sortable:this,name:`update`,toEl:G,originalEvent:e}),U({sortable:this,name:`sort`,toEl:G,originalEvent:e})):(Y>=0&&(U({rootEl:G,name:`add`,toEl:G,fromEl:q,originalEvent:e}),U({sortable:this,name:`remove`,toEl:G,originalEvent:e}),U({rootEl:G,name:`sort`,toEl:G,fromEl:q,originalEvent:e}),U({sortable:this,name:`sort`,toEl:G,originalEvent:e})),X&&X.save()),Q.active&&((Y==null||Y===-1)&&(Y=zr,Vr=Br),U({sortable:this,name:`end`,toEl:G,originalEvent:e}),this.save()))),this._nulling()},_nulling:function(){H(`nulling`,this),q=W=G=K=Ir=J=Lr=Rr=Kr=qr=Qr=Y=Vr=zr=Br=$r=ei=X=Hr=Q.dragged=Q.ghost=Q.clone=Q.active=null;var e=this.el;oi.forEach(function(t){e.contains(t)&&(t.checked=!0)}),oi.length=Jr=Yr=0},handleEvent:function(e){switch(e.type){case`drop`:case`dragend`:this._onDrop(e);break;case`dragenter`:case`dragover`:W&&(this._onDragOver(e),bi(e));break;case`selectstart`:e.preventDefault();break}},toArray:function(){for(var e=[],t,n=this.el.children,r=0,i=n.length,a=this.options;ri.right+a||e.clientY>r.bottom&&e.clientX>r.left:e.clientY>i.bottom+a||e.clientX>r.right&&e.clientY>r.top}function Ei(e,t,n,r,i,a,o,s){var c=r?e.clientY:e.clientX,l=r?n.height:n.width,u=r?n.top:n.left,d=r?n.bottom:n.right,f=!1;if(!o){if(s&&riu+l*a/2:cd-ri)return-ei}else if(c>u+l*(1-i)/2&&cd-l*a/2)?c>u+l/2?1:-1:0}function Di(e){return B(W){Yi(t,e.oldIndex,e.newIndex,e)}},c=()=>{r?.destroy(),r=void 0},l=e=>{!e||r!==void 0||(r=new Q(e,{...s,...o}))},d=()=>{let t=typeof e==`string`?i?.querySelector(e):M(e);t&&l(t)},f=(e,t)=>{if(t!==void 0)r?.option(e,t);else return r?.option(e)},p;return a&&typeof e!=`string`?p=u(()=>M(e),e=>{c(),e&&l(e)},{immediate:!0,flush:`post`}):N(d),k(()=>{p?.(),c()}),{stop:()=>{c()},start:d,option:f}}function qi(e,t,n){let r=e.children[n];e.insertBefore(t,r)}function Ji(e){e.parentNode&&e.parentNode.removeChild(e)}function Yi(e,t,n,r=null){r!=null&&(Ji(r.item),qi(r.from,r.item,t));let i=_(e),a=i?[...g(e)]:g(e);if(n>=0&&n{a.splice(n,0,r),i&&(e.value=a)})}}function Xi(){return{handle:`.drag-handle`,animation:150,watchElement:!0}}var Zi={class:`flex flex-col gap-4`},Qi={class:`flex flex-col`},$i={class:`flex flex-col`},ea={value:`xs`},ta={value:`sm`},na={value:`md`},ra={value:`lg`},ia={class:`flex items-center justify-between`},aa={class:`text-sm font-medium text-base-content`},oa={class:`flex gap-1 rounded-lg border border-base-content/12 bg-base-200/60 p-1`},sa=[`value`],ca={class:`flex flex-col`},la={class:`flex flex-col gap-4`},ua={class:`group flex h-10 w-full overflow-hidden rounded-lg border border-base-content/15 transition-all duration-200 focus-within:border-primary focus-within:ring-2 focus-within:ring-primary/20`},da={value:``,disabled:``,selected:``},fa=[`value`],pa=[`placeholder`],ma={class:`flex flex-col gap-2`},ha={class:`min-w-0 flex-1 overflow-hidden text-sm text-ellipsis whitespace-nowrap`},ga=[`onClick`],_a={class:`flex flex-col`},va={class:`flex items-center gap-3`},ya={class:`text-sm text-base-content`},ba={class:`relative inline-block h-5 w-9 cursor-pointer`},xa=[`checked`,`onChange`],Sa=Object.assign(r({__name:`ConnectionsSettingsModal`,props:{allColumns:{},untaggedSourceIPs:{}},setup(e,{expose:t}){let n=e,{t:r}=te(),o=ge(),s=v(),u=v(null),p=v(``),g=v(``),b=f({get:()=>{let e=o.connectionsTableColumnOrder,t=n.allColumns.map(e=>e.id),r=e.filter(e=>t.includes(e)),i=t.filter(t=>!e.includes(t));return[...r,...i]},set:e=>{o.connectionsTableColumnOrder=[...e]}});function O(e){return n.allColumns.find(t=>t.id===e)}Ki(u,b,Xi());function k(e){o.connectionsTableColumnVisibility={...o.connectionsTableColumnVisibility,[e]:!o.connectionsTableColumnVisibility[e]}}function A(){g.value&&p.value&&(o.clientSourceIPTags.some(e=>e.tagName===g.value||e.sourceIP===p.value)||(o.clientSourceIPTags=[...o.clientSourceIPTags,{tagName:g.value,sourceIP:p.value}]),g.value=``,p.value=``)}function M(e){o.clientSourceIPTags=o.clientSourceIPTags.filter(t=>t.tagName!==e)}function ne(){o.connectionsTableColumnVisibility={...he},o.connectionsTableColumnOrder=[...me]}return t({open:()=>s.value?.open(),close:()=>s.value?.close()}),(t,n)=>{let f=ke,v=De,te=Ae;return a(),D(te,{ref_key:`modalRef`,ref:s,title:S(r)(`connectionsSettings`)},{icon:d(()=>[l(S(ce),{size:24})]),default:d(()=>[x(`div`,Zi,[x(`div`,Qi,[l(f,{"with-divider":``},{default:d(()=>[C(w(S(r)(`quickFilter`)),1)]),_:1}),c(x(`input`,{"onUpdate:modelValue":n[0]||=e=>S(o).quickFilterRegex=e,type:`text`,class:`w-full rounded-lg border border-base-content/15 bg-base-200/80 px-3 py-2 text-sm text-base-content transition-all duration-200 focus:border-primary focus:ring-2 focus:ring-primary/20 focus:outline-none`,placeholder:`DIRECT|direct|dns-out`},null,512),[[m,S(o).quickFilterRegex]])]),x(`div`,$i,[l(f,{"with-divider":``},{default:d(()=>[C(w(S(r)(`tableSize`)),1)]),_:1}),c(x(`select`,{"onUpdate:modelValue":n[1]||=e=>S(o).connectionsTableSize=e,class:`w-full cursor-pointer appearance-none rounded-lg border border-base-content/15 bg-base-200 px-3 py-2 pr-8 text-sm text-base-content transition-all duration-200 hover:bg-base-300/50 focus:border-primary focus:outline-none`,style:{"background-image":`url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%222%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E')`,"background-position":`right 0.5rem center`,"background-repeat":`no-repeat`}},[x(`option`,ea,w(S(r)(`xs`)),1),x(`option`,ta,w(S(r)(`sm`)),1),x(`option`,na,w(S(r)(`md`)),1),x(`option`,ra,w(S(r)(`lg`)),1)],512),[[ee,S(o).connectionsTableSize]])]),x(`div`,ia,[x(`span`,aa,w(S(r)(`displayMode`)),1),x(`div`,oa,[(a(),T(h,null,i([`auto`,`table`,`card`],e=>x(`label`,{key:e,class:E([`cursor-pointer rounded-md px-3 py-1 text-[0.8125rem] font-medium text-base-content/60 transition-all duration-200 hover:bg-base-content/5 hover:text-base-content`,{"bg-primary! text-primary-content!":S(o).connectionsDisplayMode===e}])},[c(x(`input`,{"onUpdate:modelValue":n[2]||=e=>S(o).connectionsDisplayMode=e,type:`radio`,value:e,class:`sr-only`},null,8,sa),[[y,S(o).connectionsDisplayMode]]),C(` `+w(S(r)(e===`table`?`tableMode`:e===`card`?`cardMode`:`auto`)),1)],2)),64))])]),x(`div`,ca,[l(f,{"with-divider":``},{default:d(()=>[C(w(S(r)(`tagClientSourceIPWithName`)),1)]),_:1}),x(`div`,la,[x(`div`,ua,[c(x(`select`,{"onUpdate:modelValue":n[3]||=e=>_(p)?p.value=e:null,class:`w-24 shrink-0 cursor-pointer appearance-none border-none bg-base-300/50 px-3 py-2 pr-8 text-sm text-base-content transition-all duration-200 hover:bg-base-300 focus:outline-none sm:w-32`,style:{"background-image":`url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%222%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E')`,"background-position":`right 0.5rem center`,"background-repeat":`no-repeat`}},[x(`option`,da,w(S(r)(`ipShort`)),1),(a(!0),T(h,null,i(e.untaggedSourceIPs,e=>(a(),T(`option`,{key:e,value:e},w(e||S(r)(`inner`)),9,fa))),128))],512),[[ee,S(p)]]),n[5]||=x(`div`,{class:`h-6 shrink-0 self-center border-r border-base-content/10`},null,-1),c(x(`input`,{"onUpdate:modelValue":n[4]||=e=>_(g)?g.value=e:null,class:`min-w-0 flex-1 shrink border-none bg-base-200/80 px-3 py-2 text-sm text-base-content transition-all duration-200 focus:outline-none`,placeholder:S(r)(`name`)},null,8,pa),[[m,S(g)]]),l(v,{class:`shrink-0 rounded-none bg-primary px-3 font-semibold text-primary-content transition-colors duration-200 hover:bg-primary/90 sm:px-4`,onClick:A},{default:d(()=>[C(w(S(r)(`tag`)),1)]),_:1})]),x(`div`,ma,[(a(!0),T(h,null,i(S(o).clientSourceIPTags,e=>(a(),T(`div`,{key:e.tagName,class:`flex items-center justify-between gap-2 rounded-lg bg-primary px-3 py-2 text-primary-content`},[x(`span`,ha,w(e.tagName)+` (`+w(e.sourceIP)+`)`,1),x(`button`,{class:`flex h-5 w-5 cursor-pointer items-center justify-center rounded-full border-none bg-transparent text-inherit opacity-70 transition-opacity duration-200 hover:opacity-100`,onClick:t=>M(e.tagName)},[l(S(ae),{size:12})],8,ga)]))),128))])])]),x(`div`,_a,[l(f,{"with-divider":``},{default:d(()=>[C(w(S(r)(`columns`)),1)]),_:1}),x(`div`,{ref_key:`columnListRef`,ref:u,class:`flex flex-col gap-1`},[(a(!0),T(h,null,i(S(b),e=>(a(),T(`div`,{key:e,class:`flex items-center justify-between gap-2 rounded-lg bg-base-200/80 px-3 py-2 transition-colors duration-200 hover:bg-base-content/8`},[x(`div`,va,[l(S(j),{class:`drag-handle shrink-0 cursor-grab text-base-content/40 transition-colors duration-200 hover:text-base-content/70 active:cursor-grabbing`,size:16}),x(`span`,ya,w(S(r)(O(e)?.key||e)),1)]),x(`label`,ba,[x(`input`,{type:`checkbox`,class:`peer h-0 w-0 opacity-0`,checked:S(o).connectionsTableColumnVisibility[e],onChange:t=>k(e)},null,40,xa),n[6]||=x(`span`,{class:`absolute inset-0 rounded-full bg-base-content/20 transition-all duration-200 peer-checked:bg-primary before:absolute before:top-1/2 before:left-0.5 before:h-3.5 before:w-3.5 before:-translate-y-1/2 before:rounded-full before:bg-base-100 before:shadow-sm before:transition-all before:duration-200 before:content-[''] peer-checked:before:left-[calc(100%-2px)] peer-checked:before:-translate-x-full`},null,-1)])]))),128))],512)]),l(v,{class:`cursor-pointer rounded-lg border-none bg-neutral px-4 py-2 text-sm text-neutral-content transition-all duration-200 hover:opacity-90`,onClick:ne},{default:d(()=>[C(w(S(r)(`reset`)),1)]),_:1})])]),_:1},8,[`title`])}}}),{__name:`ConnectionsSettingsModal`}),Ca=e(ye(),1),wa={key:0,class:`flex max-h-[70vh] flex-col gap-4 overflow-x-hidden overflow-y-auto`},Ta={class:`rounded-lg border border-base-content/8 bg-base-200/80 p-3`},Ea={class:`mb-2 text-sm font-semibold text-primary`},Da={class:`grid grid-cols-[auto_1fr] gap-x-4 gap-y-1 text-sm`},Oa={class:`min-w-0 font-mono break-all text-base-content`},ka={class:`text-base-content/60`},Aa={class:`min-w-0 break-all text-base-content`},ja={class:`text-base-content/60`},Ma={class:`min-w-0 break-all text-base-content`},Na={class:`text-base-content/60`},Pa={class:`min-w-0 break-all text-base-content`},Fa={class:`rounded-lg border border-base-content/8 bg-base-200/80 p-3`},Ia={class:`mb-2 text-sm font-semibold text-primary`},La={class:`grid grid-cols-[auto_1fr] gap-x-4 gap-y-1 text-sm`},Ra={class:`text-base-content/60`},za={class:`min-w-0 break-all text-base-content`},Ba={class:`text-base-content/60`},Va={class:`min-w-0 break-all text-base-content`},Ha={class:`text-base-content/60`},Ua={class:`min-w-0 break-all text-base-content`},Wa={class:`text-base-content/60`},Ga={class:`min-w-0 break-all text-base-content`},Ka={class:`rounded-lg border border-base-content/8 bg-base-200/80 p-3`},qa={class:`mb-2 text-sm font-semibold text-primary`},Ja={class:`grid grid-cols-[auto_1fr] gap-x-4 gap-y-1 text-sm`},Ya={class:`text-base-content/60`},Xa={class:`min-w-0 break-all text-base-content`},Za={class:`text-base-content/60`},Qa={class:`min-w-0 break-all text-base-content`},$a={class:`text-base-content/60`},eo={class:`min-w-0 break-all text-base-content`},to={class:`text-base-content/60`},no={class:`min-w-0 break-all text-base-content`},ro={class:`text-base-content/60`},io={class:`min-w-0 break-all text-base-content`},ao={class:`rounded-lg border border-base-content/8 bg-base-200/80 p-3`},oo={class:`mb-2 text-sm font-semibold text-primary`},so={class:`grid grid-cols-[auto_1fr] gap-x-4 gap-y-1 text-sm`},co={class:`text-base-content/60`},lo={class:`min-w-0 font-mono break-all text-base-content`},uo={class:`text-base-content/60`},fo={class:`min-w-0 font-mono break-all text-base-content`},po={class:`text-base-content/60`},mo={class:`min-w-0 font-mono break-all text-base-content`},ho={class:`rounded-lg border border-base-content/8 bg-base-200/80 p-3`},go={class:`mb-2 text-sm font-semibold text-primary`},_o={class:`grid grid-cols-[auto_1fr] gap-x-4 gap-y-1 text-sm`},vo={class:`text-base-content/60`},yo={class:`min-w-0 break-all text-base-content`},bo={class:`text-base-content/60`},xo={class:`min-w-0 font-mono break-all text-base-content`},So={class:`text-base-content/60`},Co={class:`min-w-0 break-all text-base-content`},wo={class:`rounded-lg border border-base-content/8 bg-base-200/80 p-3`},To={class:`mb-2 text-sm font-semibold text-primary`},Eo={class:`grid grid-cols-[auto_1fr] gap-x-4 gap-y-1 text-sm`},Do={class:`text-base-content/60`},Oo={class:`min-w-0 break-all text-base-content`},ko={class:`text-base-content/60`},Ao={class:`min-w-0 text-xs break-all text-base-content`},jo={class:`min-w-0 break-all text-base-content`},Mo={class:`rounded-lg border border-base-content/8 bg-base-200/80 p-3`},No={class:`mb-2 text-sm font-semibold text-primary`},Po={class:`flex flex-wrap gap-1`},Fo={key:0,class:`rounded-lg border border-base-content/8 bg-base-200/80 p-3`},Io={class:`mb-2 text-sm font-semibold text-primary`},Lo={class:`grid grid-cols-[auto_1fr] gap-x-4 gap-y-1 text-sm`},Ro={class:`text-base-content/60`},zo={class:`min-w-0 break-all text-base-content`},Bo={class:`text-base-content/60`},Vo={class:`min-w-0 break-all text-base-content`},Ho=Object.assign(r({__name:`ConnectionDetailsModal`,props:{connection:{}},setup(e,{expose:t}){let n=v(),{t:r}=te();return t({open:()=>n.value?.open(),close:()=>n.value?.close()}),(t,o)=>{let s=Ae;return a(),D(s,{ref_key:`modalRef`,ref:n,title:S(r)(`connectionsDetails`)},{icon:d(()=>[l(S(ce),{size:24})]),default:d(()=>[e.connection?(a(),T(`div`,wa,[x(`div`,Ta,[x(`div`,Ea,w(S(r)(`basic`)),1),x(`div`,Da,[o[0]||=x(`div`,{class:`text-base-content/60`},`ID`,-1),x(`div`,Oa,w(e.connection.id),1),x(`div`,ka,w(S(r)(`start`)),1),x(`div`,Aa,w(S(Ca.default)(e.connection.start).format(`HH:mm:ss`)),1),x(`div`,ja,w(S(r)(`rule`)),1),x(`div`,Ma,w(e.connection.rule),1),x(`div`,Na,w(S(r)(`rulePayload`)),1),x(`div`,Pa,w(e.connection.rulePayload||`-`),1)])]),x(`div`,Fa,[x(`div`,Ia,w(S(r)(`traffic`)),1),x(`div`,La,[x(`div`,Ra,w(S(r)(`download`)),1),x(`div`,za,w(S(Se)(e.connection.download)),1),x(`div`,Ba,w(S(r)(`upload`)),1),x(`div`,Va,w(S(Se)(e.connection.upload)),1),x(`div`,Ha,w(S(r)(`dlSpeed`)),1),x(`div`,Ua,w(S(Se)(e.connection.downloadSpeed))+`/s `,1),x(`div`,Wa,w(S(r)(`ulSpeed`)),1),x(`div`,Ga,w(S(Se)(e.connection.uploadSpeed))+`/s `,1)])]),x(`div`,Ka,[x(`div`,qa,w(S(r)(`metadata`)),1),x(`div`,Ja,[x(`div`,Ya,w(S(r)(`network`)),1),x(`div`,Xa,w(e.connection.metadata.network),1),x(`div`,Za,w(S(r)(`type`)),1),x(`div`,Qa,w(e.connection.metadata.type),1),x(`div`,$a,w(S(r)(`host`)),1),x(`div`,eo,w(e.connection.metadata.host||`-`),1),x(`div`,to,w(S(r)(`sniffHost`)),1),x(`div`,no,w(e.connection.metadata.sniffHost||`-`),1),x(`div`,ro,w(S(r)(`dnsMode`)),1),x(`div`,io,w(e.connection.metadata.dnsMode||`-`),1)])]),x(`div`,ao,[x(`div`,oo,w(S(r)(`sourceAndDestination`)),1),x(`div`,so,[x(`div`,co,w(S(r)(`source`)),1),x(`div`,lo,w(`${e.connection.metadata.sourceIP}:${e.connection.metadata.sourcePort}`),1),x(`div`,uo,w(S(r)(`destination`)),1),x(`div`,fo,w(e.connection.metadata.destinationIP?`${e.connection.metadata.destinationIP}:${e.connection.metadata.destinationPort}`:`${e.connection.metadata.host}:${e.connection.metadata.destinationPort}`),1),x(`div`,po,w(S(r)(`remoteDestination`)),1),x(`div`,mo,w(e.connection.metadata.remoteDestination||`-`),1)])]),x(`div`,ho,[x(`div`,go,w(S(r)(`inbound`)),1),x(`div`,_o,[x(`div`,vo,w(S(r)(`inboundName`)),1),x(`div`,yo,w(e.connection.metadata.inboundName||`-`),1),x(`div`,bo,w(S(r)(`inboundIP`)),1),x(`div`,xo,w(e.connection.metadata.inboundIP?`${e.connection.metadata.inboundIP}:${e.connection.metadata.inboundPort}`:`-`),1),x(`div`,So,w(S(r)(`inboundUser`)),1),x(`div`,Co,w(e.connection.metadata.inboundUser||`-`),1)])]),x(`div`,wo,[x(`div`,To,w(S(r)(`process`)),1),x(`div`,Eo,[x(`div`,Do,w(S(r)(`processName`)),1),x(`div`,Oo,w(e.connection.metadata.process||`-`),1),x(`div`,ko,w(S(r)(`processPath`)),1),x(`div`,Ao,w(e.connection.metadata.processPath||`-`),1),o[1]||=x(`div`,{class:`text-base-content/60`},`UID`,-1),x(`div`,jo,w(e.connection.metadata.uid||`-`),1)])]),x(`div`,Mo,[x(`div`,No,w(S(r)(`chains`)),1),x(`div`,Po,[(a(!0),T(h,null,i(e.connection.chains,(e,t)=>(a(),T(`span`,{key:t,class:`inline-flex items-center rounded-md bg-neutral px-2 py-1 text-xs font-medium text-neutral-content`},w(e),1))),128))])]),e.connection.metadata.specialProxy||e.connection.metadata.specialRules?(a(),T(`div`,Fo,[x(`div`,Io,w(S(r)(`special`)),1),x(`div`,Lo,[x(`div`,Ro,w(S(r)(`specialProxy`)),1),x(`div`,zo,w(e.connection.metadata.specialProxy||`-`),1),x(`div`,Bo,w(S(r)(`specialRules`)),1),x(`div`,Vo,w(e.connection.metadata.specialRules||`-`),1)])])):p(``,!0)])):p(``,!0)]),_:1},8,[`title`])}}}),{__name:`ConnectionDetailsModal`});function Uo(e,n){let r=[t(`div`,{class:`conn-primary`},e)];return n&&r.push(t(`div`,{class:`conn-aux`},n)),t(`div`,{class:`conn-cell-stack`},r)}var Wo={class:`flex h-full min-h-0 flex-col gap-3`},Go={class:`flex shrink-0 justify-center md:hidden`},Ko={class:`min-h-0 flex-1 overflow-auto rounded-xl border border-base-content/10 bg-base-200/50`},qo={class:`hidden shrink-0 items-center justify-between gap-4 md:flex`},Jo={class:`flex items-center gap-3`},Yo=[`value`],Xo={class:`text-xs whitespace-nowrap text-base-content/60`},Zo=r({__name:`connections`,setup(e){let{t:n,locale:r}=te();re({title:f(()=>n(`connections`))});let o=Te(),s=ge(),d=v(),p=v(),m=v(null),g=v(`active`),y=v(``),b=A(`enableQuickFilter`,!1),C=v(``),E=A(`connectionsTableSortColumn`,`ConnectTime`),D=A(`connectionsTableSortDesc`,!0),O=A(`connectionsTableGrouping`,null),k=v({}),j=v(0),M=A(`connectionsTablePageSize`,50),ne=v(!1),N=e=>Se(e).toString(),oe=/^.*[/\\](.*)$/;function se(e){return e.metadata.process||e.metadata.processPath?.replace(oe,`$1`)||`-`}function ce(e){return`${e.metadata.host||xe(e.metadata.destinationIP)}:${e.metadata.destinationPort}`}function le(e){return e.rulePayload?`${e.rule} : ${e.rulePayload}`:e.rule}function ue(e){let t=e.metadata.sourceIP||n(`inner`);return s.clientSourceIPTags.find(e=>e.sourceIP===t)?.tagName||t}function de(e){return e.metadata.remoteDestination||e.metadata.destinationIP||e.metadata.host}function fe(e){return e.metadata.inboundUser||e.metadata.inboundIP||e.metadata.inboundName||e.metadata.type||`-`}function pe(e){_e(e)}let me=[{id:P.Close,key:`close`,groupable:!1,sortable:!1,render:e=>t(`button`,{class:`conn-close-btn`,onClick:t=>{t.stopPropagation(),pe(e.id)}},t(ae,{size:14}))},{id:P.Type,key:`type`,groupable:!0,sortable:!0,sortId:`Type`,render:e=>`${e.metadata.type}(${e.metadata.network})`,groupValue:e=>`${e.metadata.type}(${e.metadata.network})`},{id:P.Process,key:`process`,groupable:!0,sortable:!0,sortId:`Process`,render:e=>se(e),groupValue:e=>se(e)},{id:P.Host,key:`host`,groupable:!0,sortable:!0,sortId:`Host`,render:e=>ce(e),groupValue:e=>ce(e)},{id:P.SniffHost,key:`sniffHost`,groupable:!0,sortable:!1,render:e=>e.metadata.sniffHost||`-`,groupValue:e=>e.metadata.sniffHost||`-`},{id:P.Rule,key:`rule`,groupable:!0,sortable:!1,render:e=>le(e),groupValue:e=>le(e)},{id:P.Chains,key:`chains`,groupable:!0,sortable:!1,render:e=>{let n=[...e.chains].reverse(),r=[];return n.forEach((e,n)=>{n>0&&r.push(t(ie,{class:`inline-block`,size:18})),r.push(t(`span`,{class:`align-middle`},e))}),t(`span`,r)},renderText:e=>e.chains.length?[...e.chains].reverse().join(` → `):``,groupValue:e=>e.chains.join(` > `)},{id:P.ConnectTime,key:`connectTime`,groupable:!1,sortable:!0,sortId:`ConnectTime`,render:e=>be(e.start,r.value)},{id:P.DlSpeed,key:`dlSpeed`,groupable:!1,sortable:!0,sortId:`DlSpeed`,render:e=>`${N(e.downloadSpeed)}/s`},{id:P.UlSpeed,key:`ulSpeed`,groupable:!1,sortable:!0,sortId:`UlSpeed`,render:e=>`${N(e.uploadSpeed)}/s`},{id:P.Download,key:`dl`,groupable:!1,sortable:!0,sortId:`Download`,render:e=>N(e.download)},{id:P.Upload,key:`ul`,groupable:!1,sortable:!0,sortId:`Upload`,render:e=>N(e.upload)},{id:P.SourceIP,key:`sourceIP`,groupable:!0,sortable:!0,sortId:`SourceIP`,render:e=>ue(e),groupValue:e=>ue(e)},{id:P.SourcePort,key:`sourcePort`,groupable:!1,sortable:!1,render:e=>String(e.metadata.sourcePort)},{id:P.Destination,key:`destination`,groupable:!0,sortable:!1,render:e=>de(e),groupValue:e=>de(e)},{id:P.InboundUser,key:`inboundUser`,groupable:!0,sortable:!0,render:e=>fe(e),groupValue:e=>fe(e)},{id:P.HostProcess,key:`hostProcess`,groupable:!0,sortable:!0,sortId:`Host`,render:e=>{let t=ce(e),n=se(e);return Uo(t,n===`-`?``:n)},renderText:e=>{let t=se(e),n=t===`-`?``:t;return n?`${ce(e)} (${n})`:ce(e)},groupValue:e=>ce(e)},{id:P.RuleChains,key:`ruleChains`,groupable:!0,sortable:!1,render:e=>Uo(le(e),e.chains.length?[...e.chains].reverse().join(` → `):``),renderText:e=>{let t=le(e),n=e.chains.length?[...e.chains].reverse().join(` → `):``;return n?`${t} → ${n}`:t},groupValue:e=>le(e)},{id:P.Traffic,key:`traffic`,groupable:!1,sortable:!0,sortId:`DlSpeed`,render:e=>Uo(`↓ ${N(e.downloadSpeed)}/s · ↑ ${N(e.uploadSpeed)}/s`,`∑ ↓${N(e.download)} · ↑${N(e.upload)}`),renderText:e=>`↓${N(e.downloadSpeed)}/s · ↑${N(e.uploadSpeed)}/s · ∑↓${N(e.download)} ↑${N(e.upload)}`},{id:P.Flow,key:`flowDirection`,groupable:!0,sortable:!0,sortId:`SourceIP`,render:e=>{let t=`${ue(e)}:${e.metadata.sourcePort}`,n=de(e);return Uo(t,n?`→ ${n}`:``)},renderText:e=>{let t=de(e),n=t?` → ${t}`:``;return`${ue(e)}:${e.metadata.sourcePort}${n}`},groupValue:e=>ue(e)}],he=f(()=>{let e=s.connectionsTableColumnOrder,t=s.connectionsTableColumnVisibility;return[...me].sort((t,n)=>{let r=e.indexOf(t.id),i=e.indexOf(n.id);return(r===-1?1/0:r)-(i===-1?1/0:i)}).filter(e=>t[e.id]===!0)}),ye=f(()=>me.filter(e=>e.sortable)),Ce=f(()=>me.filter(e=>e.groupable)),we=f(()=>[{type:`active`,name:n(`active`),count:o.activeConnections.length},{type:`closed`,name:n(`closed`),count:o.closedConnections.length}]),Ee=f(()=>Ut(o.allConnections.map(e=>{let t=e.metadata.sourceIP||n(`inner`);return s.clientSourceIPTags.find(e=>e.sourceIP===t)?.tagName||t})).sort()),De=f(()=>Ut(o.allConnections.map(e=>e.metadata.sourceIP)).sort().filter(e=>!s.clientSourceIPTags.some(t=>t.sourceIP===e))),ke=f(()=>s.tableSizeClassName(s.connectionsTableSize)),Ae=f(()=>{let e=g.value===`active`?o.activeConnections:o.closedConnections;if(b.value&&s.quickFilterRegex)try{let t=new RegExp(s.quickFilterRegex,`i`);e=e.filter(e=>!e.chains.some(e=>t.test(e)))}catch{}if(C.value&&(e=e.filter(e=>{let t=e.metadata.sourceIP||n(`inner`);return(s.clientSourceIPTags.find(e=>e.sourceIP===t)?.tagName||t)===C.value})),y.value){let t=y.value.toLowerCase();e=e.filter(e=>e.metadata.host?.toLowerCase().includes(t)||e.metadata.process?.toLowerCase().includes(t)||e.metadata.sourceIP?.toLowerCase().includes(t)||e.rule?.toLowerCase().includes(t)||e.chains.some(e=>e.toLowerCase().includes(t)))}return[...e].sort((e,t)=>{let n=0;switch(E.value){case`ConnectTime`:n=new Date(e.start).getTime()-new Date(t.start).getTime();break;case`DlSpeed`:n=e.downloadSpeed-t.downloadSpeed;break;case`UlSpeed`:n=e.uploadSpeed-t.uploadSpeed;break;case`Download`:n=e.download-t.download;break;case`Upload`:n=e.upload-t.upload;break;case`Host`:n=(e.metadata.host||``).localeCompare(t.metadata.host||``);break;case`Type`:n=e.metadata.type.localeCompare(t.metadata.type);break;case`Process`:n=(e.metadata.process||``).localeCompare(t.metadata.process||``);break;case`SourceIP`:n=(e.metadata.sourceIP||``).localeCompare(t.metadata.sourceIP||``);break}return D.value?-n:n})}),je=f(()=>Math.max(1,Math.ceil(Ae.value.length/M.value))),Me=f(()=>{let e=j.value,t=je.value,n=[];n.push(0);for(let r=Math.max(1,e-1);r<=Math.min(t-2,e+1);r++)n.includes(r)||n.push(r);return t>1&&!n.includes(t-1)&&n.push(t-1),n.sort((e,t)=>e-t)}),Ne=f(()=>{let e=j.value*M.value;return Ae.value.slice(e,e+M.value)}),Pe=f(()=>{let e=Ae.value.length;return`${j.value*M.value+1}-${Math.min((j.value+1)*M.value,e)} / ${e}`});u([g,y,C,b],()=>{j.value=0});let Fe=f(()=>O.value?me.find(e=>e.id===O.value):null),Ie=f(()=>{let e=Fe.value;if(!e?.groupValue)return Ne.value.map(e=>({type:`data`,original:e,depth:0}));let t=new Map;for(let n of Ae.value){let r=e.groupValue(n),i=t.get(r);i?i.push(n):t.set(r,[n])}let n=[];for(let[e,r]of t)if(n.push({type:`group`,key:e,depth:0,subRows:r}),k.value[e])for(let e of r)n.push({type:`data`,original:e,depth:1});return n});function Le(e){let t=me.find(t=>t.id===e);!t?.sortable||!t.sortId||(E.value===t.sortId?D.value?D.value=!1:(E.value=``,D.value=!0):(E.value=t.sortId,D.value=!0))}function Re(e){O.value===e?O.value=null:O.value=e,k.value={}}function ze(e){k.value[e]=!k.value[e]}function Be(){D.value=!D.value}async function Ve(){ne.value=!0;try{y.value?await Promise.allSettled(Ae.value.map(e=>_e(e.id))):await ve()}finally{ne.value=!1}}function He(e){m.value=e,p.value?.open()}return(e,t)=>{let n=vn,r=Oe,u=Hn,f=Sa,v=Ho;return a(),T(`div`,Wo,[l(n,{class:`shrink-0`,tabs:S(we),"active-tab":S(g),"enable-quick-filter":S(b),"source-i-p-filter":S(C),"unique-source-i-ps":S(Ee),"sort-column":S(E),"sort-desc":S(D),"sortable-columns":S(ye),"global-filter":S(y),paused:S(o).paused,"is-closing-connections":S(ne),"display-mode":S(s).connectionsDisplayMode,"groupable-columns":S(Ce),"grouping-column":S(O),"onUpdate:activeTab":t[0]||=e=>g.value=e,"onUpdate:enableQuickFilter":t[1]||=e=>b.value=e,"onUpdate:sourceIPFilter":t[2]||=e=>C.value=e,"onUpdate:sortColumn":t[3]||=e=>E.value=e,"onUpdate:globalFilter":t[4]||=e=>y.value=e,"onUpdate:groupingColumn":t[5]||=e=>O.value=e,onToggleSortOrder:Be,onTogglePaused:t[6]||=e=>S(o).paused=!S(o).paused,onCloseConnections:Ve,onOpenSettings:t[7]||=e=>S(d)?.open()},null,8,[`tabs`,`active-tab`,`enable-quick-filter`,`source-i-p-filter`,`unique-source-i-ps`,`sort-column`,`sort-desc`,`sortable-columns`,`global-filter`,`paused`,`is-closing-connections`,`display-mode`,`groupable-columns`,`grouping-column`]),x(`div`,Go,[l(r,{"current-page":S(j),"total-pages":S(je),"visible-pages":S(Me),onGoToPage:t[8]||=e=>j.value=e,onPrevious:t[9]||=e=>j.value--,onNext:t[10]||=e=>j.value++},null,8,[`current-page`,`total-pages`,`visible-pages`])]),x(`div`,Ko,[l(u,{columns:S(he),"row-model":S(Ie),"sort-column":S(E),"sort-desc":S(D),"grouping-column":S(O),"expanded-groups":S(k),"table-size-class":S(ke),onHeaderClick:Le,onToggleGrouping:Re,onToggleGroupExpanded:ze,onRowClick:He},null,8,[`columns`,`row-model`,`sort-column`,`sort-desc`,`grouping-column`,`expanded-groups`,`table-size-class`])]),x(`div`,qo,[x(`div`,Jo,[c(x(`select`,{"onUpdate:modelValue":t[11]||=e=>_(M)?M.value=e:null,class:`cursor-pointer rounded-md border border-base-content/10 bg-base-100 px-2.5 py-1.5 text-[0.8125rem] text-base-content transition-colors duration-200 focus:border-primary focus:outline-none`},[(a(),T(h,null,i([20,50,100,200],e=>x(`option`,{key:e,value:e},w(e),9,Yo)),64))],512),[[ee,S(M),void 0,{number:!0}]]),x(`span`,Xo,w(S(Pe)),1)]),l(r,{"current-page":S(j),"total-pages":S(je),"visible-pages":S(Me),onGoToPage:t[12]||=e=>j.value=e,onPrevious:t[13]||=e=>j.value--,onNext:t[14]||=e=>j.value++},null,8,[`current-page`,`total-pages`,`visible-pages`])]),l(f,{ref_key:`settingsModal`,ref:d,"all-columns":me,"untagged-source-i-ps":S(De)},null,8,[`untagged-source-i-ps`]),l(v,{ref_key:`detailsModal`,ref:p,connection:S(m)},null,8,[`connection`])])}}});export{Zo as default};