redis-smq-web-ui 9.0.1 → 9.0.2-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./QueuesView-CUNsPD9U.js","./QueuesView-DC-q0QNm.css"])))=>i.map(i=>d[i]);
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./QueuesView-DLQWQwCh.js","./QueuesView-DC-q0QNm.css"])))=>i.map(i=>d[i]);
2
2
  (function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))n(i);new MutationObserver(i=>{for(const r of i)if(r.type==="childList")for(const o of r.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&n(o)}).observe(document,{childList:!0,subtree:!0});function s(i){const r={};return i.integrity&&(r.integrity=i.integrity),i.referrerPolicy&&(r.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?r.credentials="include":i.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function n(i){if(i.ep)return;i.ep=!0;const r=s(i);fetch(i.href,r)}})();function i1(e){if(Object.prototype.hasOwnProperty.call(e,"__esModule"))return e;var t=e.default;if(typeof t=="function"){var s=function n(){var i=!1;try{i=this instanceof n}catch{}return i?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};s.prototype=t.prototype}else s={};return Object.defineProperty(s,"__esModule",{value:!0}),Object.keys(e).forEach(function(n){var i=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(s,n,i.get?i:{enumerable:!0,get:function(){return e[n]}})}),s}var Da={exports:{}},Wt="top",cs="bottom",ds="right",zt="left",_o="auto",Zi=[Wt,cs,ds,zt],ii="start",Mi="end",Yh="clippingParents",qu="viewport",Ai="popper",Zh="reference",Fl=Zi.reduce(function(e,t){return e.concat([t+"-"+ii,t+"-"+Mi])},[]),Lu=[].concat(Zi,[_o]).reduce(function(e,t){return e.concat([t,t+"-"+ii,t+"-"+Mi])},[]),Jh="beforeRead",Xh="read",ep="afterRead",tp="beforeMain",sp="main",np="afterMain",ip="beforeWrite",rp="write",ap="afterWrite",op=[Jh,Xh,ep,tp,sp,np,ip,rp,ap];function Ks(e){return e?(e.nodeName||"").toLowerCase():null}function fs(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function ri(e){var t=fs(e).Element;return e instanceof t||e instanceof Element}function Es(e){var t=fs(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Fu(e){if(typeof ShadowRoot>"u")return!1;var t=fs(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function r1(e){var t=e.state;Object.keys(t.elements).forEach(function(s){var n=t.styles[s]||{},i=t.attributes[s]||{},r=t.elements[s];!Es(r)||!Ks(r)||(Object.assign(r.style,n),Object.keys(i).forEach(function(o){var l=i[o];l===!1?r.removeAttribute(o):r.setAttribute(o,l===!0?"":l)}))})}function a1(e){var t=e.state,s={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,s.popper),t.styles=s,t.elements.arrow&&Object.assign(t.elements.arrow.style,s.arrow),function(){Object.keys(t.elements).forEach(function(n){var i=t.elements[n],r=t.attributes[n]||{},o=Object.keys(t.styles.hasOwnProperty(n)?t.styles[n]:s[n]),l=o.reduce(function(u,d){return u[d]="",u},{});!Es(i)||!Ks(i)||(Object.assign(i.style,l),Object.keys(r).forEach(function(u){i.removeAttribute(u)}))})}}const Vu={name:"applyStyles",enabled:!0,phase:"write",fn:r1,effect:a1,requires:["computeStyles"]};function js(e){return e.split("-")[0]}var Xn=Math.max,Ka=Math.min,Ii=Math.round;function Vl(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(t){return t.brand+"/"+t.version}).join(" "):navigator.userAgent}function lp(){return!/^((?!chrome|android).)*safari/i.test(Vl())}function qi(e,t,s){t===void 0&&(t=!1),s===void 0&&(s=!1);var n=e.getBoundingClientRect(),i=1,r=1;t&&Es(e)&&(i=e.offsetWidth>0&&Ii(n.width)/e.offsetWidth||1,r=e.offsetHeight>0&&Ii(n.height)/e.offsetHeight||1);var o=ri(e)?fs(e):window,l=o.visualViewport,u=!lp()&&s,d=(n.left+(u&&l?l.offsetLeft:0))/i,c=(n.top+(u&&l?l.offsetTop:0))/r,h=n.width/i,m=n.height/r;return{width:h,height:m,top:c,right:d+h,bottom:c+m,left:d,x:d,y:c}}function Qu(e){var t=qi(e),s=e.offsetWidth,n=e.offsetHeight;return Math.abs(t.width-s)<=1&&(s=t.width),Math.abs(t.height-n)<=1&&(n=t.height),{x:e.offsetLeft,y:e.offsetTop,width:s,height:n}}function up(e,t){var s=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(s&&Fu(s)){var n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function on(e){return fs(e).getComputedStyle(e)}function o1(e){return["table","td","th"].indexOf(Ks(e))>=0}function kn(e){return((ri(e)?e.ownerDocument:e.document)||window.document).documentElement}function Eo(e){return Ks(e)==="html"?e:e.assignedSlot||e.parentNode||(Fu(e)?e.host:null)||kn(e)}function Sd(e){return!Es(e)||on(e).position==="fixed"?null:e.offsetParent}function l1(e){var t=/firefox/i.test(Vl()),s=/Trident/i.test(Vl());if(s&&Es(e)){var n=on(e);if(n.position==="fixed")return null}var i=Eo(e);for(Fu(i)&&(i=i.host);Es(i)&&["html","body"].indexOf(Ks(i))<0;){var r=on(i);if(r.transform!=="none"||r.perspective!=="none"||r.contain==="paint"||["transform","perspective"].indexOf(r.willChange)!==-1||t&&r.willChange==="filter"||t&&r.filter&&r.filter!=="none")return i;i=i.parentNode}return null}function zr(e){for(var t=fs(e),s=Sd(e);s&&o1(s)&&on(s).position==="static";)s=Sd(s);return s&&(Ks(s)==="html"||Ks(s)==="body"&&on(s).position==="static")?t:s||l1(e)||t}function ju(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function Ar(e,t,s){return Xn(e,Ka(t,s))}function u1(e,t,s){var n=Ar(e,t,s);return n>s?s:n}function cp(){return{top:0,right:0,bottom:0,left:0}}function dp(e){return Object.assign({},cp(),e)}function fp(e,t){return t.reduce(function(s,n){return s[n]=e,s},{})}var c1=function(t,s){return t=typeof t=="function"?t(Object.assign({},s.rects,{placement:s.placement})):t,dp(typeof t!="number"?t:fp(t,Zi))};function d1(e){var t,s=e.state,n=e.name,i=e.options,r=s.elements.arrow,o=s.modifiersData.popperOffsets,l=js(s.placement),u=ju(l),d=[zt,ds].indexOf(l)>=0,c=d?"height":"width";if(!(!r||!o)){var h=c1(i.padding,s),m=Qu(r),p=u==="y"?Wt:zt,v=u==="y"?cs:ds,E=s.rects.reference[c]+s.rects.reference[u]-o[u]-s.rects.popper[c],_=o[u]-s.rects.reference[u],S=zr(r),C=S?u==="y"?S.clientHeight||0:S.clientWidth||0:0,A=E/2-_/2,g=h[p],$=C-m[c]-h[v],L=C/2-m[c]/2+A,V=Ar(g,L,$),I=u;s.modifiersData[n]=(t={},t[I]=V,t.centerOffset=V-L,t)}}function f1(e){var t=e.state,s=e.options,n=s.element,i=n===void 0?"[data-popper-arrow]":n;i!=null&&(typeof i=="string"&&(i=t.elements.popper.querySelector(i),!i)||up(t.elements.popper,i)&&(t.elements.arrow=i))}const hp={name:"arrow",enabled:!0,phase:"main",fn:d1,effect:f1,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Li(e){return e.split("-")[1]}var h1={top:"auto",right:"auto",bottom:"auto",left:"auto"};function p1(e,t){var s=e.x,n=e.y,i=t.devicePixelRatio||1;return{x:Ii(s*i)/i||0,y:Ii(n*i)/i||0}}function xd(e){var t,s=e.popper,n=e.popperRect,i=e.placement,r=e.variation,o=e.offsets,l=e.position,u=e.gpuAcceleration,d=e.adaptive,c=e.roundOffsets,h=e.isFixed,m=o.x,p=m===void 0?0:m,v=o.y,E=v===void 0?0:v,_=typeof c=="function"?c({x:p,y:E}):{x:p,y:E};p=_.x,E=_.y;var S=o.hasOwnProperty("x"),C=o.hasOwnProperty("y"),A=zt,g=Wt,$=window;if(d){var L=zr(s),V="clientHeight",I="clientWidth";if(L===fs(s)&&(L=kn(s),on(L).position!=="static"&&l==="absolute"&&(V="scrollHeight",I="scrollWidth")),L=L,i===Wt||(i===zt||i===ds)&&r===Mi){g=cs;var w=h&&L===$&&$.visualViewport?$.visualViewport.height:L[V];E-=w-n.height,E*=u?1:-1}if(i===zt||(i===Wt||i===cs)&&r===Mi){A=ds;var O=h&&L===$&&$.visualViewport?$.visualViewport.width:L[I];p-=O-n.width,p*=u?1:-1}}var x=Object.assign({position:l},d&&h1),F=c===!0?p1({x:p,y:E},fs(s)):{x:p,y:E};if(p=F.x,E=F.y,u){var H;return Object.assign({},x,(H={},H[g]=C?"0":"",H[A]=S?"0":"",H.transform=($.devicePixelRatio||1)<=1?"translate("+p+"px, "+E+"px)":"translate3d("+p+"px, "+E+"px, 0)",H))}return Object.assign({},x,(t={},t[g]=C?E+"px":"",t[A]=S?p+"px":"",t.transform="",t))}function m1(e){var t=e.state,s=e.options,n=s.gpuAcceleration,i=n===void 0?!0:n,r=s.adaptive,o=r===void 0?!0:r,l=s.roundOffsets,u=l===void 0?!0:l,d={placement:js(t.placement),variation:Li(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:i,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,xd(Object.assign({},d,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:o,roundOffsets:u})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,xd(Object.assign({},d,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:u})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}const Bu={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:m1,data:{}};var Ea={passive:!0};function g1(e){var t=e.state,s=e.instance,n=e.options,i=n.scroll,r=i===void 0?!0:i,o=n.resize,l=o===void 0?!0:o,u=fs(t.elements.popper),d=[].concat(t.scrollParents.reference,t.scrollParents.popper);return r&&d.forEach(function(c){c.addEventListener("scroll",s.update,Ea)}),l&&u.addEventListener("resize",s.update,Ea),function(){r&&d.forEach(function(c){c.removeEventListener("scroll",s.update,Ea)}),l&&u.removeEventListener("resize",s.update,Ea)}}const Uu={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:g1,data:{}};var v1={left:"right",right:"left",bottom:"top",top:"bottom"};function Ra(e){return e.replace(/left|right|bottom|top/g,function(t){return v1[t]})}var b1={start:"end",end:"start"};function $d(e){return e.replace(/start|end/g,function(t){return b1[t]})}function Ku(e){var t=fs(e),s=t.pageXOffset,n=t.pageYOffset;return{scrollLeft:s,scrollTop:n}}function Hu(e){return qi(kn(e)).left+Ku(e).scrollLeft}function y1(e,t){var s=fs(e),n=kn(e),i=s.visualViewport,r=n.clientWidth,o=n.clientHeight,l=0,u=0;if(i){r=i.width,o=i.height;var d=lp();(d||!d&&t==="fixed")&&(l=i.offsetLeft,u=i.offsetTop)}return{width:r,height:o,x:l+Hu(e),y:u}}function _1(e){var t,s=kn(e),n=Ku(e),i=(t=e.ownerDocument)==null?void 0:t.body,r=Xn(s.scrollWidth,s.clientWidth,i?i.scrollWidth:0,i?i.clientWidth:0),o=Xn(s.scrollHeight,s.clientHeight,i?i.scrollHeight:0,i?i.clientHeight:0),l=-n.scrollLeft+Hu(e),u=-n.scrollTop;return on(i||s).direction==="rtl"&&(l+=Xn(s.clientWidth,i?i.clientWidth:0)-r),{width:r,height:o,x:l,y:u}}function Gu(e){var t=on(e),s=t.overflow,n=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(s+i+n)}function pp(e){return["html","body","#document"].indexOf(Ks(e))>=0?e.ownerDocument.body:Es(e)&&Gu(e)?e:pp(Eo(e))}function Sr(e,t){var s;t===void 0&&(t=[]);var n=pp(e),i=n===((s=e.ownerDocument)==null?void 0:s.body),r=fs(n),o=i?[r].concat(r.visualViewport||[],Gu(n)?n:[]):n,l=t.concat(o);return i?l:l.concat(Sr(Eo(o)))}function Ql(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function E1(e,t){var s=qi(e,!1,t==="fixed");return s.top=s.top+e.clientTop,s.left=s.left+e.clientLeft,s.bottom=s.top+e.clientHeight,s.right=s.left+e.clientWidth,s.width=e.clientWidth,s.height=e.clientHeight,s.x=s.left,s.y=s.top,s}function Td(e,t,s){return t===qu?Ql(y1(e,s)):ri(t)?E1(t,s):Ql(_1(kn(e)))}function w1(e){var t=Sr(Eo(e)),s=["absolute","fixed"].indexOf(on(e).position)>=0,n=s&&Es(e)?zr(e):e;return ri(n)?t.filter(function(i){return ri(i)&&up(i,n)&&Ks(i)!=="body"}):[]}function C1(e,t,s,n){var i=t==="clippingParents"?w1(e):[].concat(t),r=[].concat(i,[s]),o=r[0],l=r.reduce(function(u,d){var c=Td(e,d,n);return u.top=Xn(c.top,u.top),u.right=Ka(c.right,u.right),u.bottom=Ka(c.bottom,u.bottom),u.left=Xn(c.left,u.left),u},Td(e,o,n));return l.width=l.right-l.left,l.height=l.bottom-l.top,l.x=l.left,l.y=l.top,l}function mp(e){var t=e.reference,s=e.element,n=e.placement,i=n?js(n):null,r=n?Li(n):null,o=t.x+t.width/2-s.width/2,l=t.y+t.height/2-s.height/2,u;switch(i){case Wt:u={x:o,y:t.y-s.height};break;case cs:u={x:o,y:t.y+t.height};break;case ds:u={x:t.x+t.width,y:l};break;case zt:u={x:t.x-s.width,y:l};break;default:u={x:t.x,y:t.y}}var d=i?ju(i):null;if(d!=null){var c=d==="y"?"height":"width";switch(r){case ii:u[d]=u[d]-(t[c]/2-s[c]/2);break;case Mi:u[d]=u[d]+(t[c]/2-s[c]/2);break}}return u}function Fi(e,t){t===void 0&&(t={});var s=t,n=s.placement,i=n===void 0?e.placement:n,r=s.strategy,o=r===void 0?e.strategy:r,l=s.boundary,u=l===void 0?Yh:l,d=s.rootBoundary,c=d===void 0?qu:d,h=s.elementContext,m=h===void 0?Ai:h,p=s.altBoundary,v=p===void 0?!1:p,E=s.padding,_=E===void 0?0:E,S=dp(typeof _!="number"?_:fp(_,Zi)),C=m===Ai?Zh:Ai,A=e.rects.popper,g=e.elements[v?C:m],$=C1(ri(g)?g:g.contextElement||kn(e.elements.popper),u,c,o),L=qi(e.elements.reference),V=mp({reference:L,element:A,placement:i}),I=Ql(Object.assign({},A,V)),w=m===Ai?I:L,O={top:$.top-w.top+S.top,bottom:w.bottom-$.bottom+S.bottom,left:$.left-w.left+S.left,right:w.right-$.right+S.right},x=e.modifiersData.offset;if(m===Ai&&x){var F=x[i];Object.keys(O).forEach(function(H){var z=[ds,cs].indexOf(H)>=0?1:-1,fe=[Wt,cs].indexOf(H)>=0?"y":"x";O[H]+=F[fe]*z})}return O}function A1(e,t){t===void 0&&(t={});var s=t,n=s.placement,i=s.boundary,r=s.rootBoundary,o=s.padding,l=s.flipVariations,u=s.allowedAutoPlacements,d=u===void 0?Lu:u,c=Li(n),h=c?l?Fl:Fl.filter(function(v){return Li(v)===c}):Zi,m=h.filter(function(v){return d.indexOf(v)>=0});m.length===0&&(m=h);var p=m.reduce(function(v,E){return v[E]=Fi(e,{placement:E,boundary:i,rootBoundary:r,padding:o})[js(E)],v},{});return Object.keys(p).sort(function(v,E){return p[v]-p[E]})}function S1(e){if(js(e)===_o)return[];var t=Ra(e);return[$d(e),t,$d(t)]}function x1(e){var t=e.state,s=e.options,n=e.name;if(!t.modifiersData[n]._skip){for(var i=s.mainAxis,r=i===void 0?!0:i,o=s.altAxis,l=o===void 0?!0:o,u=s.fallbackPlacements,d=s.padding,c=s.boundary,h=s.rootBoundary,m=s.altBoundary,p=s.flipVariations,v=p===void 0?!0:p,E=s.allowedAutoPlacements,_=t.options.placement,S=js(_),C=S===_,A=u||(C||!v?[Ra(_)]:S1(_)),g=[_].concat(A).reduce(function(Ie,tt){return Ie.concat(js(tt)===_o?A1(t,{placement:tt,boundary:c,rootBoundary:h,padding:d,flipVariations:v,allowedAutoPlacements:E}):tt)},[]),$=t.rects.reference,L=t.rects.popper,V=new Map,I=!0,w=g[0],O=0;O<g.length;O++){var x=g[O],F=js(x),H=Li(x)===ii,z=[Wt,cs].indexOf(F)>=0,fe=z?"width":"height",ie=Fi(t,{placement:x,boundary:c,rootBoundary:h,altBoundary:m,padding:d}),G=z?H?ds:zt:H?cs:Wt;$[fe]>L[fe]&&(G=Ra(G));var X=Ra(G),Z=[];if(r&&Z.push(ie[F]<=0),l&&Z.push(ie[G]<=0,ie[X]<=0),Z.every(function(Ie){return Ie})){w=x,I=!1;break}V.set(x,Z)}if(I)for(var W=v?3:1,se=function(tt){var ve=g.find(function(Q){var K=V.get(Q);if(K)return K.slice(0,tt).every(function(le){return le})});if(ve)return w=ve,"break"},ue=W;ue>0;ue--){var Re=se(ue);if(Re==="break")break}t.placement!==w&&(t.modifiersData[n]._skip=!0,t.placement=w,t.reset=!0)}}const gp={name:"flip",enabled:!0,phase:"main",fn:x1,requiresIfExists:["offset"],data:{_skip:!1}};function Od(e,t,s){return s===void 0&&(s={x:0,y:0}),{top:e.top-t.height-s.y,right:e.right-t.width+s.x,bottom:e.bottom-t.height+s.y,left:e.left-t.width-s.x}}function Nd(e){return[Wt,ds,cs,zt].some(function(t){return e[t]>=0})}function $1(e){var t=e.state,s=e.name,n=t.rects.reference,i=t.rects.popper,r=t.modifiersData.preventOverflow,o=Fi(t,{elementContext:"reference"}),l=Fi(t,{altBoundary:!0}),u=Od(o,n),d=Od(l,i,r),c=Nd(u),h=Nd(d);t.modifiersData[s]={referenceClippingOffsets:u,popperEscapeOffsets:d,isReferenceHidden:c,hasPopperEscaped:h},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":c,"data-popper-escaped":h})}const vp={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:$1};function T1(e,t,s){var n=js(e),i=[zt,Wt].indexOf(n)>=0?-1:1,r=typeof s=="function"?s(Object.assign({},t,{placement:e})):s,o=r[0],l=r[1];return o=o||0,l=(l||0)*i,[zt,ds].indexOf(n)>=0?{x:l,y:o}:{x:o,y:l}}function O1(e){var t=e.state,s=e.options,n=e.name,i=s.offset,r=i===void 0?[0,0]:i,o=Lu.reduce(function(c,h){return c[h]=T1(h,t.rects,r),c},{}),l=o[t.placement],u=l.x,d=l.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=u,t.modifiersData.popperOffsets.y+=d),t.modifiersData[n]=o}const bp={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:O1};function N1(e){var t=e.state,s=e.name;t.modifiersData[s]=mp({reference:t.rects.reference,element:t.rects.popper,placement:t.placement})}const Wu={name:"popperOffsets",enabled:!0,phase:"read",fn:N1,data:{}};function k1(e){return e==="x"?"y":"x"}function P1(e){var t=e.state,s=e.options,n=e.name,i=s.mainAxis,r=i===void 0?!0:i,o=s.altAxis,l=o===void 0?!1:o,u=s.boundary,d=s.rootBoundary,c=s.altBoundary,h=s.padding,m=s.tether,p=m===void 0?!0:m,v=s.tetherOffset,E=v===void 0?0:v,_=Fi(t,{boundary:u,rootBoundary:d,padding:h,altBoundary:c}),S=js(t.placement),C=Li(t.placement),A=!C,g=ju(S),$=k1(g),L=t.modifiersData.popperOffsets,V=t.rects.reference,I=t.rects.popper,w=typeof E=="function"?E(Object.assign({},t.rects,{placement:t.placement})):E,O=typeof w=="number"?{mainAxis:w,altAxis:w}:Object.assign({mainAxis:0,altAxis:0},w),x=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,F={x:0,y:0};if(L){if(r){var H,z=g==="y"?Wt:zt,fe=g==="y"?cs:ds,ie=g==="y"?"height":"width",G=L[g],X=G+_[z],Z=G-_[fe],W=p?-I[ie]/2:0,se=C===ii?V[ie]:I[ie],ue=C===ii?-I[ie]:-V[ie],Re=t.elements.arrow,Ie=p&&Re?Qu(Re):{width:0,height:0},tt=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:cp(),ve=tt[z],Q=tt[fe],K=Ar(0,V[ie],Ie[ie]),le=A?V[ie]/2-W-K-ve-O.mainAxis:se-K-ve-O.mainAxis,Ee=A?-V[ie]/2+W+K+Q+O.mainAxis:ue+K+Q+O.mainAxis,J=t.elements.arrow&&zr(t.elements.arrow),k=J?g==="y"?J.clientTop||0:J.clientLeft||0:0,R=(H=x?.[g])!=null?H:0,j=G+le-R-k,ne=G+Ee-R,re=Ar(p?Ka(X,j):X,G,p?Xn(Z,ne):Z);L[g]=re,F[g]=re-G}if(l){var oe,pe=g==="x"?Wt:zt,me=g==="x"?cs:ds,Y=L[$],de=$==="y"?"height":"width",Me=Y+_[pe],Ce=Y-_[me],Oe=[Wt,zt].indexOf(S)!==-1,Qe=(oe=x?.[$])!=null?oe:0,He=Oe?Me:Y-V[de]-I[de]-Qe+O.altAxis,st=Oe?Y+V[de]+I[de]-Qe-O.altAxis:Ce,et=p&&Oe?u1(He,Y,st):Ar(p?He:Me,Y,p?st:Ce);L[$]=et,F[$]=et-Y}t.modifiersData[n]=F}}const yp={name:"preventOverflow",enabled:!0,phase:"main",fn:P1,requiresIfExists:["offset"]};function D1(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function R1(e){return e===fs(e)||!Es(e)?Ku(e):D1(e)}function M1(e){var t=e.getBoundingClientRect(),s=Ii(t.width)/e.offsetWidth||1,n=Ii(t.height)/e.offsetHeight||1;return s!==1||n!==1}function I1(e,t,s){s===void 0&&(s=!1);var n=Es(t),i=Es(t)&&M1(t),r=kn(t),o=qi(e,i,s),l={scrollLeft:0,scrollTop:0},u={x:0,y:0};return(n||!n&&!s)&&((Ks(t)!=="body"||Gu(r))&&(l=R1(t)),Es(t)?(u=qi(t,!0),u.x+=t.clientLeft,u.y+=t.clientTop):r&&(u.x=Hu(r))),{x:o.left+l.scrollLeft-u.x,y:o.top+l.scrollTop-u.y,width:o.width,height:o.height}}function q1(e){var t=new Map,s=new Set,n=[];e.forEach(function(r){t.set(r.name,r)});function i(r){s.add(r.name);var o=[].concat(r.requires||[],r.requiresIfExists||[]);o.forEach(function(l){if(!s.has(l)){var u=t.get(l);u&&i(u)}}),n.push(r)}return e.forEach(function(r){s.has(r.name)||i(r)}),n}function L1(e){var t=q1(e);return op.reduce(function(s,n){return s.concat(t.filter(function(i){return i.phase===n}))},[])}function F1(e){var t;return function(){return t||(t=new Promise(function(s){Promise.resolve().then(function(){t=void 0,s(e())})})),t}}function V1(e){var t=e.reduce(function(s,n){var i=s[n.name];return s[n.name]=i?Object.assign({},i,n,{options:Object.assign({},i.options,n.options),data:Object.assign({},i.data,n.data)}):n,s},{});return Object.keys(t).map(function(s){return t[s]})}var kd={placement:"bottom",modifiers:[],strategy:"absolute"};function Pd(){for(var e=arguments.length,t=new Array(e),s=0;s<e;s++)t[s]=arguments[s];return!t.some(function(n){return!(n&&typeof n.getBoundingClientRect=="function")})}function wo(e){e===void 0&&(e={});var t=e,s=t.defaultModifiers,n=s===void 0?[]:s,i=t.defaultOptions,r=i===void 0?kd:i;return function(l,u,d){d===void 0&&(d=r);var c={placement:"bottom",orderedModifiers:[],options:Object.assign({},kd,r),modifiersData:{},elements:{reference:l,popper:u},attributes:{},styles:{}},h=[],m=!1,p={state:c,setOptions:function(S){var C=typeof S=="function"?S(c.options):S;E(),c.options=Object.assign({},r,c.options,C),c.scrollParents={reference:ri(l)?Sr(l):l.contextElement?Sr(l.contextElement):[],popper:Sr(u)};var A=L1(V1([].concat(n,c.options.modifiers)));return c.orderedModifiers=A.filter(function(g){return g.enabled}),v(),p.update()},forceUpdate:function(){if(!m){var S=c.elements,C=S.reference,A=S.popper;if(Pd(C,A)){c.rects={reference:I1(C,zr(A),c.options.strategy==="fixed"),popper:Qu(A)},c.reset=!1,c.placement=c.options.placement,c.orderedModifiers.forEach(function(O){return c.modifiersData[O.name]=Object.assign({},O.data)});for(var g=0;g<c.orderedModifiers.length;g++){if(c.reset===!0){c.reset=!1,g=-1;continue}var $=c.orderedModifiers[g],L=$.fn,V=$.options,I=V===void 0?{}:V,w=$.name;typeof L=="function"&&(c=L({state:c,options:I,name:w,instance:p})||c)}}}},update:F1(function(){return new Promise(function(_){p.forceUpdate(),_(c)})}),destroy:function(){E(),m=!0}};if(!Pd(l,u))return p;p.setOptions(d).then(function(_){!m&&d.onFirstUpdate&&d.onFirstUpdate(_)});function v(){c.orderedModifiers.forEach(function(_){var S=_.name,C=_.options,A=C===void 0?{}:C,g=_.effect;if(typeof g=="function"){var $=g({state:c,name:S,instance:p,options:A}),L=function(){};h.push($||L)}})}function E(){h.forEach(function(_){return _()}),h=[]}return p}}var Q1=wo(),j1=[Uu,Wu,Bu,Vu],B1=wo({defaultModifiers:j1}),U1=[Uu,Wu,Bu,Vu,bp,gp,yp,hp,vp],K1=wo({defaultModifiers:U1});const H1=Object.freeze(Object.defineProperty({__proto__:null,afterMain:np,afterRead:ep,afterWrite:ap,applyStyles:Vu,arrow:hp,auto:_o,basePlacements:Zi,beforeMain:tp,beforeRead:Jh,beforeWrite:ip,bottom:cs,clippingParents:Yh,computeStyles:Bu,createPopper:K1,createPopperBase:Q1,createPopperLite:B1,detectOverflow:Fi,end:Mi,eventListeners:Uu,flip:gp,hide:vp,left:zt,main:sp,modifierPhases:op,offset:bp,placements:Lu,popper:Ai,popperGenerator:wo,popperOffsets:Wu,preventOverflow:yp,read:Xh,reference:Zh,right:ds,start:ii,top:Wt,variationPlacements:Fl,viewport:qu,write:rp},Symbol.toStringTag,{value:"Module"})),G1=i1(H1);/*!
3
3
  * Bootstrap v5.3.8 (https://getbootstrap.com/)
4
4
  * Copyright 2011-2025 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
@@ -40,4 +40,4 @@ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./QueuesView-CUNsPD9U.
40
40
  * vee-validate v4.15.1
41
41
  * (c) 2025 Abdelrahman Awad
42
42
  * @license MIT
43
- */const Qh=e=>e!==null&&!!e&&typeof e=="object"&&!Array.isArray(e);function Cv(e){return Number(e)>=0}function TN(e){return typeof e=="object"&&e!==null}function ON(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}function jh(e){if(!TN(e)||ON(e)!=="[object Object]")return!1;if(Object.getPrototypeOf(e)===null)return!0;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function Av(e,t){return Object.keys(t).forEach(s=>{if(jh(t[s])&&jh(e[s])){e[s]||(e[s]={}),Av(e[s],t[s]);return}e[s]=t[s]}),e}function NN(e){const t=e.split(".");if(!t.length)return"";let s=String(t[0]);for(let n=1;n<t.length;n++){if(Cv(t[n])){s+=`[${t[n]}]`;continue}s+=`.${t[n]}`}return s}function Dc(e,t){return{__type:"VVTypedSchema",async parse(n){const i=await e.safeParseAsync(n,t);if(i.success)return{value:i.data,errors:[]};const r={};return Sv(i.error.issues,r),{errors:Object.values(r)}},cast(n){try{return e.parse(n)}catch{const r=xv(e);return Qh(r)&&Qh(n)?Av(r,n):n}},describe(n){try{if(!n)return{required:!e.isOptional(),exists:!0};const i=kN(n,e);return i?{required:!i.isOptional(),exists:!0}:{required:!1,exists:!1}}catch{return{required:!1,exists:!1}}}}}function Sv(e,t){e.forEach(s=>{const n=NN(s.path.join("."));s.code==="invalid_union"&&(Sv(s.unionErrors.flatMap(i=>i.issues),t),!n)||(t[n]||(t[n]={errors:[],path:n}),t[n].errors.push(s.message))})}function xv(e){if(e instanceof Et)return Object.fromEntries(Object.entries(e.shape).map(([t,s])=>s instanceof bo?[t,s._def.defaultValue()]:s instanceof Et?[t,xv(s)]:[t,void 0]))}function kN(e,t){if(!Bh(t))return null;if(aa(e))return t.shape[zo(e)];const s=(e||"").split(/\.|\[(\d+)\]/).filter(Boolean);let n=t;for(let i=0;i<=s.length;i++){const r=s[i];if(!r||!n)return n;if(Bh(n)){n=n.shape[r]||null;continue}Cv(r)&&PN(n)&&(n=n._def.type)}return null}function $v(e){return e._def.typeName}function PN(e){return $v(e)===Be.ZodArray}function Bh(e){return $v(e)===Be.ZodObject}function Uh(e){return!e||!e.length?!1:!e.toLowerCase().replace(/(?:[a-z][a-z0-9]?)+(?:[-_.]?[a-z0-9])*/g,"").length}function DN(e){const t=Pc({name:yo().min(1,"Queue name is required").max(100,"Queue name must be less than 100 characters").refine(Uh,{message:"Name must start with a letter and contain only letters, numbers, and single separators (-, _, .). It cannot end with a separator."}),ns:yo().min(1,"Namespace is required").max(100,"Namespace must be less than 100 characters").refine(Uh,{message:"Namespace must start with a letter and contain only letters, numbers, and single separators (-, _, .). It cannot end with a separator."}),type:Vh(Ht,{errorMap:()=>({message:"Please select a valid queue type"})}),deliveryModel:Vh(us,{errorMap:()=>({message:"Please select a valid delivery model"})})}),s=Dc(t),n={name:"",ns:"",type:Ht.FIFO_QUEUE,deliveryModel:us.POINT_TO_POINT},i={...n,...e},{errors:r,values:o,meta:l,resetForm:u,handleSubmit:d,setFieldValue:c,setValues:h}=Yo({validationSchema:s,initialValues:i});return{errors:r,values:o,meta:l,resetForm:u,resetFormWithValues:p=>{const v=p?{...n,...p}:i;u({values:v})},handleSubmit:d,setFieldValue:c,setValues:h,initialValues:i,defaultInitialValues:n,validationSchema:s}}function RN(e){const t=tO({mutation:{onSuccess:async()=>{await e()}}}),s=b(()=>t.isPending.value),n=b(()=>t.error.value?.error);return{createQueue:t.mutateAsync,isCreatingQueue:s,createQueueError:n,createQueueMutation:t}}const MN={class:"form-content"},IN={class:"form-section"},qN={class:"form-grid"},LN={class:"form-group"},FN={class:"form-group"},VN={class:"form-section"},QN={class:"form-grid"},jN={class:"form-group"},BN=["value"],UN=["value"],KN=["value"],HN={class:"form-group"},GN=["value"],WN=["value"],zN={key:0,class:"error-section"},YN={class:"error-content"},ZN={class:"error-text"},JN={class:"error-message"},XN=["disabled"],ek=Ue({__name:"CreateQueueModal",props:{isVisible:{type:Boolean},namespace:{}},emits:["close","created"],setup(e,{emit:t}){const s={mounted:A=>A.focus()},n=e,i=t,{errors:r,resetForm:o,initialValues:l,validationSchema:u}=DN({ns:n.namespace}),{meta:d,handleSubmit:c}=Yo({initialValues:l,validationSchema:u}),h=be(null),{createQueue:m,isCreatingQueue:p,createQueueError:v,createQueueMutation:E}=RN(async()=>{h.value&&i("created",h.value),o(),h.value=null,i("close")}),_=b(()=>{if(!v.value)return"";const A=dt(v.value);return typeof A=="string"?A:A?.message??"Failed to create queue"});Ye(()=>n.isVisible,A=>{A||(o(),h.value=null,E.reset())});const S=c(async A=>{const g=A;h.value=g;const $={queue:{ns:g.ns,name:g.name},queueType:g.type,queueDeliveryModel:g.deliveryModel};await m({data:$})});function C(){i("close")}return(A,g)=>(N(),at(Ss,{"is-visible":e.isVisible,title:"Create New Queue",subtitle:"Configure your message queue settings",icon:"bi bi-plus-circle-fill",onClose:C},{body:qe(()=>[a("form",{onSubmit:g[0]||(g[0]=Ft((...$)=>T(S)&&T(S)(...$),["prevent"]))},[a("div",MN,[a("section",IN,[g[6]||(g[6]=a("div",{class:"section-header"},[a("h3",{class:"section-title"},[a("i",{class:"bi bi-info-circle-fill section-icon"}),te(" Basic Information ")]),a("p",{class:"section-description"}," Define the queue name and namespace ")],-1)),a("div",qN,[a("div",LN,[g[2]||(g[2]=a("label",{for:"name",class:"form-label"},[a("i",{class:"bi bi-tag-fill label-icon"}),te(" Queue Name "),a("span",{class:"required-indicator"},"*")],-1)),ss(we(T(Ns),{id:"name",name:"name",type:"text",placeholder:"e.g. user-notifications",class:De(["form-control",{error:T(r).name}]),autocomplete:"off","aria-describedby":"name-help name-error"},null,8,["class"]),[[s]]),we(T(Jn),{id:"name-error",name:"name",class:"field-error"}),g[3]||(g[3]=a("div",{id:"name-help",class:"field-help"},[a("i",{class:"bi bi-lightbulb help-icon"}),te(" Use letters, numbers, underscores, and hyphens only ")],-1))]),a("div",FN,[g[4]||(g[4]=a("label",{for:"ns",class:"form-label"},[a("i",{class:"bi bi-folder-fill label-icon"}),te(" Namespace "),a("span",{class:"required-indicator"},"*")],-1)),we(T(Ns),{id:"ns",name:"ns",type:"text",placeholder:"e.g. production",class:De(["form-control",{error:T(r).ns}]),autocomplete:"off","aria-describedby":"ns-help ns-error"},null,8,["class"]),we(T(Jn),{id:"ns-error",name:"ns",class:"field-error"}),g[5]||(g[5]=a("div",{id:"ns-help",class:"field-help"},[a("i",{class:"bi bi-lightbulb help-icon"}),te(" Organize queues by environment or application ")],-1))])])]),a("section",VN,[g[13]||(g[13]=a("div",{class:"section-header"},[a("h3",{class:"section-title"},[a("i",{class:"bi bi-gear-fill section-icon"}),te(" Queue Configuration ")]),a("p",{class:"section-description"}," Choose how messages are processed and delivered ")],-1)),a("div",QN,[a("div",jN,[g[8]||(g[8]=a("label",{for:"type",class:"form-label"},[a("i",{class:"bi bi-list-ol label-icon"}),te(" Queue Type "),a("span",{class:"required-indicator"},"*")],-1)),we(T(Ns),{id:"type",name:"type",as:"select",class:De(["form-select",{error:T(r).type}]),"aria-describedby":"type-help type-error"},{default:qe(()=>[g[7]||(g[7]=a("option",{value:""},"Select processing order",-1)),a("option",{value:T(Ht).FIFO_QUEUE},"FIFO Queue",8,BN),a("option",{value:T(Ht).LIFO_QUEUE},"LIFO Queue",8,UN),a("option",{value:T(Ht).PRIORITY_QUEUE}," Priority Queue ",8,KN)]),_:1},8,["class"]),we(T(Jn),{id:"type-error",name:"type",class:"field-error"}),g[9]||(g[9]=a("div",{id:"type-help",class:"field-help"},[a("div",{class:"help-options"},[a("div",{class:"help-option"},[a("strong",null,"FIFO:"),te(" First message in, first message out ")]),a("div",{class:"help-option"},[a("strong",null,"LIFO:"),te(" Last message in, first message out ")]),a("div",{class:"help-option"},[a("strong",null,"Priority:"),te(" Higher priority messages processed first ")])])],-1))]),a("div",HN,[g[11]||(g[11]=a("label",{for:"deliveryModel",class:"form-label"},[a("i",{class:"bi bi-arrow-left-right label-icon"}),te(" Delivery Model "),a("span",{class:"required-indicator"},"*")],-1)),we(T(Ns),{id:"deliveryModel",name:"deliveryModel",as:"select",class:De(["form-select",{error:T(r).deliveryModel}]),"aria-describedby":"deliveryModel-help deliveryModel-error"},{default:qe(()=>[g[10]||(g[10]=a("option",{value:""},"Select delivery pattern",-1)),a("option",{value:T(us).POINT_TO_POINT}," Point to Point ",8,GN),a("option",{value:T(us).PUB_SUB}," Publish/Subscribe ",8,WN)]),_:1},8,["class"]),we(T(Jn),{id:"deliveryModel-error",name:"deliveryModel",class:"field-error"}),g[12]||(g[12]=a("div",{id:"deliveryModel-help",class:"field-help"},[a("div",{class:"help-options"},[a("div",{class:"help-option"},[a("strong",null,"Point to Point:"),te(" One-to-one message delivery ")]),a("div",{class:"help-option"},[a("strong",null,"Pub/Sub:"),te(" One-to-many message broadcasting ")])])],-1))])])]),T(v)?(N(),P("div",zN,[a("div",YN,[g[15]||(g[15]=a("div",{class:"error-icon"},[a("i",{class:"bi bi-exclamation-triangle-fill"})],-1)),a("div",ZN,[g[14]||(g[14]=a("h4",{class:"error-title"},"Creation Failed",-1)),a("p",JN,q(_.value),1)])])])):he("",!0)])],32)]),footer:qe(()=>[a("button",{type:"button",class:"btn btn-secondary",onClick:C},[...g[16]||(g[16]=[a("i",{class:"bi bi-x-circle me-2"},null,-1),te(" Cancel ",-1)])]),a("button",{type:"submit",class:"btn btn-primary",disabled:T(p)||!T(d).valid,onClick:g[1]||(g[1]=(...$)=>T(S)&&T(S)(...$))},[T(p)?(N(),P(Ae,{key:0},[g[17]||(g[17]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),g[18]||(g[18]=te(" Creating Queue... ",-1))],64)):(N(),P(Ae,{key:1},[g[19]||(g[19]=a("i",{class:"bi bi-check-circle me-2"},null,-1)),g[20]||(g[20]=te(" Create Queue ",-1))],64))],8,XN)]),_:1},8,["is-visible"]))}}),Tv=Xe(ek,[["__scopeId","data-v-aeb7b34f"]]),tk={class:"home-page"},sk={class:"hero-section"},nk={class:"hero-content"},ik={class:"hero-text"},rk={class:"hero-stats"},ak={class:"stat-item"},ok={class:"stat-value"},lk={class:"stat-item"},uk={class:"stat-value"},ck={class:"stat-item"},dk={class:"stat-value"},fk={class:"hero-actions"},hk={class:"dashboard-main"},pk={key:0,class:"loading-section"},mk={key:1,class:"dashboard-content"},gk={class:"actions-section"},vk={class:"actions-grid"},bk=["onClick"],yk={class:"action-icon"},_k={class:"action-content"},Ek={class:"action-title"},wk={class:"action-description"},Ck={class:"getting-started-section"},Ak={class:"getting-started-card"},Sk={class:"getting-started-content"},xk={class:"getting-started-actions"},$k=Ue({__name:"HomeView",setup(e){const t=os(),s=fn(),n=be(!1),i=be({totalQueues:0,totalMessages:0,currentlyInProcess:0,pendingMessages:0,activeConsumers:0,lastUpdated:new Date}),r=[{title:"Create Queue",description:"Set up a new message queue",icon:"bi-plus-circle-fill",color:"info",action:()=>{n.value=!0}},{title:"Set up Exchange",description:"Bind your queue to an exchange",icon:"bi-diagram-3",color:"info",action:()=>t.push({name:"Exchanges"})},{title:"View Queues",description:"Manage existing queues",icon:"bi-list-ul",color:"info",action:()=>t.push({name:"Queues"})},{title:"Documentation",description:"Learn more about RedisSMQ",icon:"bi-book-fill",color:"info",action:()=>window.open("https://github.com/weyoss/redis-smq/tree/master/packages/redis-smq/docs/README.md","_blank")}],o=be(!0),l=b(()=>({totalQueues:i.value.totalQueues.toLocaleString(),totalMessages:i.value.totalMessages.toLocaleString(),pendingMessages:i.value.pendingMessages.toLocaleString(),currentlyInProcess:i.value.currentlyInProcess.toLocaleString(),activeConsumers:i.value.activeConsumers.toLocaleString()})),u=async()=>{try{o.value=!0;const c=(await s.fetchQuery({queryKey:nv(),queryFn:()=>sv()})).data;if(!c||c.length===0){Object.assign(i.value,{totalQueues:0,totalMessages:0,pendingMessages:0,currentlyInProcess:0,activeConsumers:0,lastUpdated:new Date});return}const h=c.map(async v=>{const E=s.fetchQuery({queryKey:rv(v.ns,v.name),queryFn:()=>iv(v.ns,v.name)}),_=s.fetchQuery({queryKey:ov(v.ns,v.name),queryFn:()=>av(v.ns,v.name)}),[S,C]=await Promise.all([E,_]),A=S.data,g=C.data??{};return{details:A,consumers:g}}),p=(await Promise.all(h)).reduce((v,E)=>(E.details&&(v.totalMessages+=E.details.messagesCount??0,v.pendingMessages+=E.details.pendingMessagesCount??0,v.currentlyInProcess+=E.details.processingMessagesCount??0),E.consumers&&(v.activeConsumers+=Object.keys(E.consumers).length),v),{totalMessages:0,pendingMessages:0,currentlyInProcess:0,activeConsumers:0});i.value={...p,totalQueues:c.length,lastUpdated:new Date}}catch(d){console.error("Failed to load dashboard data:",d)}finally{o.value=!1}};return Bt(()=>{u()}),(d,c)=>(N(),P("div",tk,[a("section",sk,[a("div",nk,[a("div",ik,[c[6]||(c[6]=a("h1",{class:"hero-title"},[a("span",{class:"hero-icon"},"🚀"),te(" Welcome to RedisSMQ ")],-1)),c[7]||(c[7]=a("p",{class:"hero-subtitle"}," Powerful Redis-based message queue management made simple ",-1)),a("div",rk,[a("div",ak,[a("span",ok,q(l.value.totalQueues),1),c[3]||(c[3]=a("span",{class:"stat-label"},"Active Queues",-1))]),a("div",lk,[a("span",uk,q(l.value.totalMessages),1),c[4]||(c[4]=a("span",{class:"stat-label"},"Messages Processed",-1))]),a("div",ck,[a("span",dk,q(l.value.activeConsumers),1),c[5]||(c[5]=a("span",{class:"stat-label"},"Active Consumers",-1))])])]),a("div",fk,[a("button",{class:"btn btn-primary btn-lg hero-btn",onClick:c[0]||(c[0]=h=>T(t).push({name:"Queues"}))},[...c[8]||(c[8]=[a("i",{class:"bi bi-plus-circle me-2"},null,-1),te(" Get Started ",-1)])])])])]),a("main",hk,[o.value?(N(),P("div",pk,[...c[9]||(c[9]=[a("div",{class:"loading-content"},[a("div",{class:"spinner-border text-primary mb-3",role:"status","aria-live":"polite","aria-label":"Loading dashboard"}),a("h5",{class:"loading-title"},"Loading dashboard..."),a("p",{class:"loading-subtitle"},"Fetching system information")],-1)])])):(N(),P("div",mk,[a("section",gk,[c[11]||(c[11]=a("div",{class:"section-header"},[a("h2",{class:"section-title"},[a("i",{class:"bi bi-lightning-fill me-2"}),te(" Quick Actions ")])],-1)),a("div",vk,[(N(),P(Ae,null,bt(r,h=>a("div",{key:h.title,class:De(["action-card",`action-${h.color}`]),onClick:h.action},[a("div",yk,[a("i",{class:De(h.icon)},null,2)]),a("div",_k,[a("h3",Ek,q(h.title),1),a("p",wk,q(h.description),1)]),c[10]||(c[10]=a("div",{class:"action-arrow"},[a("i",{class:"bi bi-arrow-right"})],-1))],10,bk)),64))])]),a("section",Ck,[a("div",Ak,[a("div",Sk,[c[14]||(c[14]=ai('<h2 class="getting-started-title" data-v-61ad89e8><i class="bi bi-rocket-takeoff me-2" data-v-61ad89e8></i> Getting Started </h2><p class="getting-started-description" data-v-61ad89e8> New to RedisSMQ? Follow these steps to set up your first message queue and start processing messages. </p><div class="getting-started-steps" data-v-61ad89e8><div class="step-item" data-v-61ad89e8><div class="step-number" data-v-61ad89e8>1</div><div class="step-content" data-v-61ad89e8><h4 class="step-title" data-v-61ad89e8>Create a Queue</h4><p class="step-description" data-v-61ad89e8> Create a new queue to hold your messages. </p></div></div><div class="step-item" data-v-61ad89e8><div class="step-number" data-v-61ad89e8>2</div><div class="step-content" data-v-61ad89e8><h4 class="step-title" data-v-61ad89e8>Publish a Message</h4><p class="step-description" data-v-61ad89e8> Send messages directly to your queue or publish them through an exchange. </p></div></div><div class="step-item" data-v-61ad89e8><div class="step-number" data-v-61ad89e8>3</div><div class="step-content" data-v-61ad89e8><h4 class="step-title" data-v-61ad89e8>Consume Messages</h4><p class="step-description" data-v-61ad89e8> Build a consumer in your application to process messages from the queue. </p></div></div><div class="step-item" data-v-61ad89e8><div class="step-number" data-v-61ad89e8>4</div><div class="step-content" data-v-61ad89e8><h4 class="step-title" data-v-61ad89e8>Monitor &amp; Manage</h4><p class="step-description" data-v-61ad89e8> Use the Web UI to monitor your queues, exchanges, and messages in real-time. </p></div></div></div>',3)),a("div",xk,[i.value.totalQueues===0?(N(),P("button",{key:0,class:"btn btn-primary",onClick:c[1]||(c[1]=h=>n.value=!0)},[...c[12]||(c[12]=[a("i",{class:"bi bi-plus-circle me-2"},null,-1),te(" Create Your First Queue ",-1)])])):he("",!0),c[13]||(c[13]=a("a",{href:"https://github.com/weyoss/redis-smq/tree/master/packages/redis-smq/docs/README.md",target:"_blank",rel:"noopener noreferrer",class:"btn btn-outline-secondary"},[a("i",{class:"bi bi-book me-2"}),te(" Read Documentation ")],-1))])])])])]))]),we(Tv,{"is-visible":n.value,onClose:c[2]||(c[2]=h=>n.value=!1),onCreated:u},null,8,["is-visible"])]))}}),Tk=Xe($k,[["__scopeId","data-v-61ad89e8"]]),Ba=[{path:"/",name:"Home",component:Tk,meta:{title:"Home"}},{path:"/ns",name:"Namespaces",component:()=>Pf(()=>Promise.resolve().then(()=>pL),void 0,import.meta.url),meta:{title:"Namespace Management",breadcrumbs:"Namespaces"}},{path:"/queues",name:"Queues",component:()=>Pf(()=>import("./QueuesView-CUNsPD9U.js"),__vite__mapDeps([0,1]),import.meta.url),meta:{title:"Queue Management",breadcrumbs:"Queues"}},{path:"/exchanges",name:"Exchanges",component:YT}],Ov=6e4,Nv=36e5,ka=43200,Kh=1440,Hh=Symbol.for("constructDateFrom");function Zo(e,t){return typeof e=="function"?e(t):e&&typeof e=="object"&&Hh in e?e[Hh](t):e instanceof Date?new e.constructor(t):new Date(t)}function Hs(e,t){return Zo(e,e)}let Ok={};function Nk(){return Ok}function Gh(e){const t=Hs(e),s=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return s.setUTCFullYear(t.getFullYear()),+e-+s}function Rc(e,...t){const s=Zo.bind(null,e||t.find(n=>typeof n=="object"));return t.map(s)}function Ua(e,t){const s=+Hs(e)-+Hs(t);return s<0?-1:s>0?1:s}function kk(e){return Zo(e,Date.now())}function Pk(e,t,s){const[n,i]=Rc(s?.in,e,t),r=n.getFullYear()-i.getFullYear(),o=n.getMonth()-i.getMonth();return r*12+o}function Dk(e){return t=>{const n=(e?Math[e]:Math.trunc)(t);return n===0?0:n}}function Rk(e,t){return+Hs(e)-+Hs(t)}function Mk(e,t){const s=Hs(e);return s.setHours(23,59,59,999),s}function Ik(e,t){const s=Hs(e),n=s.getMonth();return s.setFullYear(s.getFullYear(),n+1,0),s.setHours(23,59,59,999),s}function qk(e,t){const s=Hs(e);return+Mk(s)==+Ik(s)}function Lk(e,t,s){const[n,i,r]=Rc(s?.in,e,e,t),o=Ua(i,r),l=Math.abs(Pk(i,r));if(l<1)return 0;i.getMonth()===1&&i.getDate()>27&&i.setDate(30),i.setMonth(i.getMonth()-o*l);let u=Ua(i,r)===-o;qk(n)&&l===1&&Ua(n,r)===1&&(u=!1);const d=o*(l-+u);return d===0?0:d}function Fk(e,t,s){const n=Rk(e,t)/1e3;return Dk(s?.roundingMethod)(n)}const Vk={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Qk=(e,t,s)=>{let n;const i=Vk[e];return typeof i=="string"?n=i:t===1?n=i.one:n=i.other.replace("{{count}}",t.toString()),s?.addSuffix?s.comparison&&s.comparison>0?"in "+n:n+" ago":n};function Il(e){return(t={})=>{const s=t.width?String(t.width):e.defaultWidth;return e.formats[s]||e.formats[e.defaultWidth]}}const jk={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Bk={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Uk={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Kk={date:Il({formats:jk,defaultWidth:"full"}),time:Il({formats:Bk,defaultWidth:"full"}),dateTime:Il({formats:Uk,defaultWidth:"full"})},Hk={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Gk=(e,t,s,n)=>Hk[e];function gr(e){return(t,s)=>{const n=s?.context?String(s.context):"standalone";let i;if(n==="formatting"&&e.formattingValues){const o=e.defaultFormattingWidth||e.defaultWidth,l=s?.width?String(s.width):o;i=e.formattingValues[l]||e.formattingValues[o]}else{const o=e.defaultWidth,l=s?.width?String(s.width):e.defaultWidth;i=e.values[l]||e.values[o]}const r=e.argumentCallback?e.argumentCallback(t):t;return i[r]}}const Wk={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},zk={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Yk={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},Zk={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},Jk={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},Xk={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},eP=(e,t)=>{const s=Number(e),n=s%100;if(n>20||n<10)switch(n%10){case 1:return s+"st";case 2:return s+"nd";case 3:return s+"rd"}return s+"th"},tP={ordinalNumber:eP,era:gr({values:Wk,defaultWidth:"wide"}),quarter:gr({values:zk,defaultWidth:"wide",argumentCallback:e=>e-1}),month:gr({values:Yk,defaultWidth:"wide"}),day:gr({values:Zk,defaultWidth:"wide"}),dayPeriod:gr({values:Jk,defaultWidth:"wide",formattingValues:Xk,defaultFormattingWidth:"wide"})};function vr(e){return(t,s={})=>{const n=s.width,i=n&&e.matchPatterns[n]||e.matchPatterns[e.defaultMatchWidth],r=t.match(i);if(!r)return null;const o=r[0],l=n&&e.parsePatterns[n]||e.parsePatterns[e.defaultParseWidth],u=Array.isArray(l)?nP(l,h=>h.test(o)):sP(l,h=>h.test(o));let d;d=e.valueCallback?e.valueCallback(u):u,d=s.valueCallback?s.valueCallback(d):d;const c=t.slice(o.length);return{value:d,rest:c}}}function sP(e,t){for(const s in e)if(Object.prototype.hasOwnProperty.call(e,s)&&t(e[s]))return s}function nP(e,t){for(let s=0;s<e.length;s++)if(t(e[s]))return s}function iP(e){return(t,s={})=>{const n=t.match(e.matchPattern);if(!n)return null;const i=n[0],r=t.match(e.parsePattern);if(!r)return null;let o=e.valueCallback?e.valueCallback(r[0]):r[0];o=s.valueCallback?s.valueCallback(o):o;const l=t.slice(i.length);return{value:o,rest:l}}}const rP=/^(\d+)(th|st|nd|rd)?/i,aP=/\d+/i,oP={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},lP={any:[/^b/i,/^(a|c)/i]},uP={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},cP={any:[/1/i,/2/i,/3/i,/4/i]},dP={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},fP={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},hP={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},pP={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},mP={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},gP={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},vP={ordinalNumber:iP({matchPattern:rP,parsePattern:aP,valueCallback:e=>parseInt(e,10)}),era:vr({matchPatterns:oP,defaultMatchWidth:"wide",parsePatterns:lP,defaultParseWidth:"any"}),quarter:vr({matchPatterns:uP,defaultMatchWidth:"wide",parsePatterns:cP,defaultParseWidth:"any",valueCallback:e=>e+1}),month:vr({matchPatterns:dP,defaultMatchWidth:"wide",parsePatterns:fP,defaultParseWidth:"any"}),day:vr({matchPatterns:hP,defaultMatchWidth:"wide",parsePatterns:pP,defaultParseWidth:"any"}),dayPeriod:vr({matchPatterns:mP,defaultMatchWidth:"any",parsePatterns:gP,defaultParseWidth:"any"})},bP={code:"en-US",formatDistance:Qk,formatLong:Kk,formatRelative:Gk,localize:tP,match:vP,options:{weekStartsOn:0,firstWeekContainsDate:1}};function yP(e,t,s){const n=Nk(),i=s?.locale??n.locale??bP,r=2520,o=Ua(e,t);if(isNaN(o))throw new RangeError("Invalid time value");const l=Object.assign({},s,{addSuffix:s?.addSuffix,comparison:o}),[u,d]=Rc(s?.in,...o>0?[t,e]:[e,t]),c=Fk(d,u),h=(Gh(d)-Gh(u))/1e3,m=Math.round((c-h)/60);let p;if(m<2)return s?.includeSeconds?c<5?i.formatDistance("lessThanXSeconds",5,l):c<10?i.formatDistance("lessThanXSeconds",10,l):c<20?i.formatDistance("lessThanXSeconds",20,l):c<40?i.formatDistance("halfAMinute",0,l):c<60?i.formatDistance("lessThanXMinutes",1,l):i.formatDistance("xMinutes",1,l):m===0?i.formatDistance("lessThanXMinutes",1,l):i.formatDistance("xMinutes",m,l);if(m<45)return i.formatDistance("xMinutes",m,l);if(m<90)return i.formatDistance("aboutXHours",1,l);if(m<Kh){const v=Math.round(m/60);return i.formatDistance("aboutXHours",v,l)}else{if(m<r)return i.formatDistance("xDays",1,l);if(m<ka){const v=Math.round(m/Kh);return i.formatDistance("xDays",v,l)}else if(m<ka*2)return p=Math.round(m/ka),i.formatDistance("aboutXMonths",p,l)}if(p=Lk(d,u),p<12){const v=Math.round(m/ka);return i.formatDistance("xMonths",v,l)}else{const v=p%12,E=Math.trunc(p/12);return v<3?i.formatDistance("aboutXYears",E,l):v<9?i.formatDistance("overXYears",E,l):i.formatDistance("almostXYears",E+1,l)}}function Xs(e,t){return yP(e,kk(e),t)}function _P(e,t){const s=()=>Zo(t?.in,NaN),i=AP(e);let r;if(i.date){const d=SP(i.date,2);r=xP(d.restDateString,d.year)}if(!r||isNaN(+r))return s();const o=+r;let l=0,u;if(i.time&&(l=$P(i.time),isNaN(l)))return s();if(i.timezone){if(u=TP(i.timezone),isNaN(u))return s()}else{const d=new Date(o+l),c=Hs(0);return c.setFullYear(d.getUTCFullYear(),d.getUTCMonth(),d.getUTCDate()),c.setHours(d.getUTCHours(),d.getUTCMinutes(),d.getUTCSeconds(),d.getUTCMilliseconds()),c}return Hs(o+l+u)}const Pa={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},EP=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,wP=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,CP=/^([+-])(\d{2})(?::?(\d{2}))?$/;function AP(e){const t={},s=e.split(Pa.dateTimeDelimiter);let n;if(s.length>2)return t;if(/:/.test(s[0])?n=s[0]:(t.date=s[0],n=s[1],Pa.timeZoneDelimiter.test(t.date)&&(t.date=e.split(Pa.timeZoneDelimiter)[0],n=e.substr(t.date.length,e.length))),n){const i=Pa.timezone.exec(n);i?(t.time=n.replace(i[1],""),t.timezone=i[1]):t.time=n}return t}function SP(e,t){const s=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+t)+"})|(\\d{2}|[+-]\\d{"+(2+t)+"})$)"),n=e.match(s);if(!n)return{year:NaN,restDateString:""};const i=n[1]?parseInt(n[1]):null,r=n[2]?parseInt(n[2]):null;return{year:r===null?i:r*100,restDateString:e.slice((n[1]||n[2]).length)}}function xP(e,t){if(t===null)return new Date(NaN);const s=e.match(EP);if(!s)return new Date(NaN);const n=!!s[4],i=br(s[1]),r=br(s[2])-1,o=br(s[3]),l=br(s[4]),u=br(s[5])-1;if(n)return DP(t,l,u)?OP(t,l,u):new Date(NaN);{const d=new Date(0);return!kP(t,r,o)||!PP(t,i)?new Date(NaN):(d.setUTCFullYear(t,r,Math.max(i,o)),d)}}function br(e){return e?parseInt(e):1}function $P(e){const t=e.match(wP);if(!t)return NaN;const s=ql(t[1]),n=ql(t[2]),i=ql(t[3]);return RP(s,n,i)?s*Nv+n*Ov+i*1e3:NaN}function ql(e){return e&&parseFloat(e.replace(",","."))||0}function TP(e){if(e==="Z")return 0;const t=e.match(CP);if(!t)return 0;const s=t[1]==="+"?-1:1,n=parseInt(t[2]),i=t[3]&&parseInt(t[3])||0;return MP(n,i)?s*(n*Nv+i*Ov):NaN}function OP(e,t,s){const n=new Date(0);n.setUTCFullYear(e,0,4);const i=n.getUTCDay()||7,r=(t-1)*7+s+1-i;return n.setUTCDate(n.getUTCDate()+r),n}const NP=[31,null,31,30,31,30,31,31,30,31,30,31];function kv(e){return e%400===0||e%4===0&&e%100!==0}function kP(e,t,s){return t>=0&&t<=11&&s>=1&&s<=(NP[t]||(kv(e)?29:28))}function PP(e,t){return t>=1&&t<=(kv(e)?366:365)}function DP(e,t,s){return t>=1&&t<=53&&s>=0&&s<=6}function RP(e,t,s){return e===24?t===0&&s===0:s>=0&&s<60&&t>=0&&t<60&&e>=0&&e<25}function MP(e,t){return t>=0&&t<=59}function Wh(e){const t=Date.now()-e,s=Math.floor(t/1e3),n=Math.floor(s/60),i=Math.floor(n/60),r=Math.floor(i/24);return r>0?`${r}d ${i%24}h`:i>0?`${i}h ${n%60}m`:n>0?`${n}m ${s%60}s`:`${s}s`}function Mc(e){if(!e)return"N/A";try{const t=typeof e=="string"?_P(e):new Date(e);return`${t.toLocaleString()} (${Xs(t,{addSuffix:!0})})`}catch{return"Invalid Date"}}const IP={class:"dialog-body"},qP={class:"confirmation-message"},LP={key:0,class:"message-preview"},FP={class:"actions"},VP=["disabled"],QP=["disabled"],jP={key:0,class:"spinner-border spinner-border-sm me-2",role:"status","aria-hidden":"true"},BP=Ue({__name:"ConfirmationDialogModal",props:{isVisible:{type:Boolean},title:{},message:{},confirmText:{default:"Confirm"},variant:{default:"primary"},isLoading:{type:Boolean,default:!1}},emits:["close","confirm"],setup(e,{emit:t}){const s=e,n=t;function i(){s.isLoading||n("close")}function r(){s.isLoading||n("confirm")}const o=b(()=>{switch(s.variant){case"danger":return"btn-danger";case"warning":return"btn-warning";case"secondary":return"btn-secondary";case"primary":default:return"btn-primary"}}),l=b(()=>{switch(s.variant){case"danger":return"bi-exclamation-triangle-fill";case"warning":return"bi-exclamation-circle-fill";default:return"bi-question-circle-fill"}});return(u,d)=>(N(),at(Ss,{"is-visible":e.isVisible,title:e.title,subtitle:void 0,icon:`bi ${l.value}`,size:"sm",onClose:i},{body:qe(()=>[a("div",IP,[a("p",qP,q(e.message),1),u.$slots["message-preview"]?(N(),P("div",LP,[Pi(u.$slots,"message-preview",{},void 0,!0)])):he("",!0)])]),footer:qe(()=>[a("div",FP,[a("button",{class:"btn btn-outline-secondary",type:"button",disabled:e.isLoading,onClick:i}," Cancel ",8,VP),a("button",{class:De(["btn",o.value]),type:"button",disabled:e.isLoading,onClick:r},[e.isLoading?(N(),P("span",jP)):he("",!0),te(" "+q(e.isLoading?"Processing...":e.confirmText),1)],10,QP)])]),_:3},8,["is-visible","title","icon"]))}}),zh=Xe(BP,[["__scopeId","data-v-7963a349"]]),UP={class:"vm-body"},KP={class:"status-bar"},HP={class:"status-info"},GP={class:"text-muted ms-3"},WP={key:0,class:"queue-info"},zP={class:"badge bg-light text-dark"},YP={class:"modal-tabs"},ZP=["disabled"],JP=["disabled"],XP=["disabled"],eD=["disabled"],tD=["disabled"],sD={class:"tab-panels"},nD={key:0,class:"tab-content"},iD={class:"info-grid"},rD={class:"info-section"},aD={class:"info-items"},oD={class:"info-item"},lD={class:"info-item"},uD={class:"info-value"},cD={class:"info-item"},dD={class:"info-value"},fD={class:"info-item"},hD={class:"info-value"},pD={class:"info-section"},mD={class:"info-items"},gD={class:"info-item"},vD={class:"info-value"},bD={class:"info-item"},yD={class:"info-value"},_D={class:"info-item"},ED={class:"info-value"},wD={class:"info-item"},CD={class:"info-value"},AD={class:"info-item"},SD={class:"info-value"},xD={key:0,class:"info-section"},$D={class:"info-items"},TD={class:"info-item"},OD={class:"info-value"},ND={class:"info-item"},kD={class:"info-value"},PD={key:1,class:"info-section"},DD={class:"info-items"},RD={class:"info-item"},MD={class:"info-value"},ID={key:1,class:"tab-content"},qD={class:"body-section"},LD={class:"d-flex justify-content-between align-items-center mb-3"},FD=["disabled"],VD={class:"message-body"},QD={key:2,class:"tab-content"},jD={class:"info-grid"},BD={class:"info-section"},UD={class:"info-items"},KD={class:"info-item"},HD={class:"info-value"},GD={class:"info-item"},WD={class:"info-value"},zD={class:"info-item"},YD={class:"info-value"},ZD={class:"info-item"},JD={class:"info-section"},XD={class:"info-items"},eR={class:"info-item"},tR={class:"info-value"},sR={class:"info-item"},nR={class:"info-value"},iR={class:"info-item"},rR={class:"info-value"},aR={class:"info-item"},oR={class:"info-value"},lR={class:"info-item"},uR={class:"info-value"},cR={class:"info-item"},dR={class:"info-value"},fR={key:3,class:"tab-content"},hR={class:"info-grid"},pR={class:"info-section"},mR={class:"info-items"},gR={class:"info-item"},vR={class:"info-value"},bR={class:"info-item"},yR={class:"info-value"},_R={class:"info-item"},ER={class:"info-value"},wR={class:"info-item"},CR={class:"info-section"},AR={class:"info-items"},SR={class:"info-item"},xR={class:"info-value"},$R={class:"info-item"},TR={class:"info-value"},OR={class:"info-item"},NR={class:"info-value"},kR={class:"info-item"},PR={class:"info-value"},DR={key:0,class:"info-section"},RR={class:"info-items"},MR={class:"info-item"},IR={class:"d-flex align-items-center"},qR={class:"info-value"},LR={key:1,class:"info-section"},FR={class:"info-items"},VR={class:"info-item"},QR={class:"d-flex align-items-center"},jR={class:"info-value"},BR={key:4,class:"timeline-section"},UR={class:"timeline"},KR={class:"timeline-content"},HR={class:"timeline-title"},GR={class:"timeline-time"},WR={class:"footer-info"},zR={class:"text-muted"},YR={class:"footer-actions"},ZR=["disabled"],JR=["disabled"],XR=["disabled"],eM=Ue({__name:"ViewMessageModal",props:{message:{},show:{type:Boolean},isDeleting:{type:Boolean,default:!1},isRequeuing:{type:Boolean,default:!1}},emits:["close","update:show","delete-message","requeue-message"],setup(e,{emit:t}){const s=e,n=t,i=be("overview"),r=be(!1),o=be(!1),l=b(()=>{if(!s.message?.createdAt)return"N/A";const O=new Date(s.message.createdAt);return`${O.toLocaleString()} (${Xs(O,{addSuffix:!0})})`}),u=b(()=>{if(!s.message?.messageState.publishedAt)return"Not published";const O=new Date(s.message.messageState.publishedAt);return`${O.toLocaleString()} (${Xs(O,{addSuffix:!0})})`}),d=b(()=>{if(!s.message?.messageState.scheduledAt)return"Not scheduled";const O=new Date(s.message.messageState.scheduledAt);return`${O.toLocaleString()} (${Xs(O,{addSuffix:!0})})`}),c=b(()=>{if(!s.message?.messageState.lastRetriedAttemptAt)return"Never";const O=new Date(s.message.messageState.lastRetriedAttemptAt);return`${O.toLocaleString()} (${Xs(O,{addSuffix:!0})})`}),h=b(()=>{if(!s.message?.messageState.processingStartedAt)return"N/A";const O=new Date(s.message.messageState.processingStartedAt);return`${O.toLocaleString()} (${Xs(O,{addSuffix:!0})})`}),m=b(()=>{if(!s.message?.messageState.acknowledgedAt)return"N/A";const O=new Date(s.message.messageState.acknowledgedAt);return`${O.toLocaleString()} (${Xs(O,{addSuffix:!0})})`}),p=b(()=>{if(!s.message?.messageState.deadLetteredAt)return"N/A";const O=new Date(s.message.messageState.deadLetteredAt);return`${O.toLocaleString()} (${Xs(O,{addSuffix:!0})})`}),v=b(()=>{if(!s.message?.messageState.lastRequeuedAt)return"Never";const O=new Date(s.message.messageState.lastRequeuedAt);return`${O.toLocaleString()} (${Xs(O,{addSuffix:!0})})`}),E=b(()=>{if(!s.message)return"";switch(s.message.status){case 0:return"badge bg-secondary";case 1:return"badge bg-warning";case 2:return"badge bg-info";case 3:return"badge bg-success";case 4:return"badge bg-warning";case 5:return"badge bg-warning";case 6:return"badge bg-danger";default:return"badge bg-secondary"}}),_=b(()=>{if(!s.message)return"";switch(s.message.status){case 0:return"Scheduled";case 1:return"Pending";case 2:return"Processing";case 3:return"Acknowledged";case 4:return"Unack Delaying";case 5:return"Unack Requeuing";case 6:return"Dead Lettered";default:return"Unknown"}}),S=b(()=>!s.message?.priority&&s.message?.priority!==0?"Normal":["Highest","Very High","High","Above Normal","Normal","Low","Very Low","Lowest"][s.message.priority]||"Normal"),C=b(()=>{if(!s.message?.body)return"";try{if(typeof s.message.body=="string"){const O=JSON.parse(s.message.body);return JSON.stringify(O,null,2)}return JSON.stringify(s.message.body,null,2)}catch{return String(s.message.body)}}),A=b(()=>s.message?.status===6),g=b(()=>s.isDeleting||s.isRequeuing),$=b(()=>s.message?[{type:"Created",timestamp:s.message.createdAt,icon:"bi-plus-circle-fill",color:"text-primary"},{type:"Scheduled",timestamp:s.message.messageState.scheduledAt,icon:"bi-calendar-plus-fill",color:"text-info"},{type:"Last Scheduled",timestamp:s.message.messageState.lastScheduledAt,icon:"bi-calendar-check-fill",color:"text-info"},{type:"Published",timestamp:s.message.messageState.publishedAt,icon:"bi-send-fill",color:"text-primary"},{type:"Processing Started",timestamp:s.message.messageState.processingStartedAt,icon:"bi-play-circle-fill",color:"text-warning"},{type:"Acknowledged",timestamp:s.message.messageState.acknowledgedAt,icon:"bi-check2-circle",color:"text-success"},{type:"Unacknowledged",timestamp:s.message.messageState.unacknowledgedAt,icon:"bi-arrow-counterclockwise",color:"text-warning"},{type:"Last Unacknowledged",timestamp:s.message.messageState.lastUnacknowledgedAt,icon:"bi-arrow-counterclockwise",color:"text-warning"},{type:"Requeued",timestamp:s.message.messageState.requeuedAt,icon:"bi-arrow-repeat",color:"text-secondary"},{type:"Last Requeued",timestamp:s.message.messageState.lastRequeuedAt,icon:"bi-arrow-repeat",color:"text-secondary"},{type:"Last Retry Attempt",timestamp:s.message.messageState.lastRetriedAttemptAt,icon:"bi-bootstrap-reboot",color:"text-warning"},{type:"Dead-lettered",timestamp:s.message.messageState.deadLetteredAt,icon:"bi-x-octagon-fill",color:"text-danger"}].filter(x=>!!x.timestamp).sort((x,F)=>Number(x.timestamp)-Number(F.timestamp)):[]);function L(){g.value||(n("close"),n("update:show",!1))}function V(O){navigator.clipboard.writeText(O).then(()=>{})}function I(){s.message?.id&&n("delete-message",s.message.id),r.value=!1}function w(){s.message?.id&&n("requeue-message",s.message.id),o.value=!1}return(O,x)=>(N(),P(Ae,null,[we(Ss,{"is-visible":!!e.message&&e.show,title:"Message Details",subtitle:e.message?`ID: ${e.message.id}`:void 0,icon:"bi bi-envelope-fill",size:"lg",onClose:L},{body:qe(()=>[a("div",UP,[a("div",KP,[a("div",HP,[a("span",{class:De(E.value)},q(_.value),3),a("span",GP,[x[12]||(x[12]=a("i",{class:"bi bi-clock me-1"},null,-1)),te(" "+q(l.value),1)])]),e.message?(N(),P("div",WP,[a("span",zP,[x[13]||(x[13]=a("i",{class:"bi bi-collection me-1"},null,-1)),te(" "+q(e.message.destinationQueue.name)+"@"+q(e.message.destinationQueue.ns),1)])])):he("",!0)]),a("div",YP,[a("button",{class:De(["tab-button",{active:i.value==="overview"}]),disabled:g.value,onClick:x[0]||(x[0]=F=>i.value="overview")},[...x[14]||(x[14]=[a("i",{class:"bi bi-info-circle me-1"},null,-1),te(" Overview ",-1)])],10,ZP),a("button",{class:De(["tab-button",{active:i.value==="body"}]),disabled:g.value,onClick:x[1]||(x[1]=F=>i.value="body")},[...x[15]||(x[15]=[a("i",{class:"bi bi-file-text me-1"},null,-1),te(" Message Body ",-1)])],10,JP),a("button",{class:De(["tab-button",{active:i.value==="state"}]),disabled:g.value,onClick:x[2]||(x[2]=F=>i.value="state")},[...x[16]||(x[16]=[a("i",{class:"bi bi-gear me-1"},null,-1),te(" State ",-1)])],10,XP),a("button",{class:De(["tab-button",{active:i.value==="scheduling"}]),disabled:g.value,onClick:x[3]||(x[3]=F=>i.value="scheduling")},[...x[17]||(x[17]=[a("i",{class:"bi bi-calendar me-1"},null,-1),te(" Scheduling ",-1)])],10,eD),a("button",{class:De(["tab-button",{active:i.value==="timeline"}]),disabled:g.value,onClick:x[4]||(x[4]=F=>i.value="timeline")},[...x[18]||(x[18]=[a("i",{class:"bi bi-clock-history me-2"},null,-1),te(" Timeline ",-1)])],10,tD)]),a("div",sD,[i.value==="overview"?(N(),P("div",nD,[a("div",iD,[a("div",rD,[x[23]||(x[23]=a("h6",{class:"section-title"},"Basic Information",-1)),a("div",aD,[a("div",oD,[x[19]||(x[19]=a("span",{class:"info-label"},"Status:",-1)),a("span",{class:De(E.value)},q(_.value),3)]),a("div",lD,[x[20]||(x[20]=a("span",{class:"info-label"},"Priority:",-1)),a("span",uD,q(S.value),1)]),a("div",cD,[x[21]||(x[21]=a("span",{class:"info-label"},"TTL:",-1)),a("span",dD,q(e.message.ttl)+"ms",1)]),a("div",fD,[x[22]||(x[22]=a("span",{class:"info-label"},"Consumer Group:",-1)),a("span",hD,q(e.message.consumerGroupId||"None"),1)])])]),a("div",pD,[x[29]||(x[29]=a("h6",{class:"section-title"},"Retry Configuration",-1)),a("div",mD,[a("div",gD,[x[24]||(x[24]=a("span",{class:"info-label"},"Retry Threshold:",-1)),a("span",vD,q(e.message.retryThreshold),1)]),a("div",bD,[x[25]||(x[25]=a("span",{class:"info-label"},"Retry Delay:",-1)),a("span",yD,q(e.message.retryDelay)+"ms",1)]),a("div",_D,[x[26]||(x[26]=a("span",{class:"info-label"},"Consume Timeout:",-1)),a("span",ED,q(e.message.consumeTimeout)+"ms",1)]),a("div",wD,[x[27]||(x[27]=a("span",{class:"info-label"},"Current Attempts:",-1)),a("span",CD,q(e.message.messageState.attempts),1)]),a("div",AD,[x[28]||(x[28]=a("span",{class:"info-label"},"Requeue Count:",-1)),a("span",SD,q(e.message.messageState.requeueCount),1)])])]),e.message?.exchange?(N(),P("div",xD,[x[32]||(x[32]=a("h6",{class:"section-title"},"Exchange Information",-1)),a("div",$D,[a("div",TD,[x[30]||(x[30]=a("span",{class:"info-label"},"Exchange Params:",-1)),a("span",OD,q(e.message.exchange.name)+"@"+q(e.message.exchange.ns),1)]),a("div",ND,[x[31]||(x[31]=a("span",{class:"info-label"},"Type:",-1)),a("span",kD,q(T(Te)[e.message.exchange.type]),1)])])])):he("",!0),e.message?.queue?(N(),P("div",PD,[x[34]||(x[34]=a("h6",{class:"section-title"},"Queue Information",-1)),a("div",DD,[a("div",RD,[x[33]||(x[33]=a("span",{class:"info-label"},"Queue Params:",-1)),a("span",MD,q(e.message.queue.name)+"@"+q(e.message.queue.ns),1)])])])):he("",!0)])])):he("",!0),i.value==="body"?(N(),P("div",ID,[a("div",qD,[a("div",LD,[x[36]||(x[36]=a("h6",{class:"section-title mb-0"},"Message Body",-1)),a("button",{class:"btn btn-sm btn-outline-primary",disabled:g.value,onClick:x[5]||(x[5]=F=>V(C.value))},[...x[35]||(x[35]=[a("i",{class:"bi bi-clipboard me-1"},null,-1),te(" Copy ",-1)])],8,FD)]),a("pre",VD,[a("code",null,q(C.value),1)])])])):he("",!0),i.value==="state"?(N(),P("div",QD,[a("div",jD,[a("div",BD,[x[41]||(x[41]=a("h6",{class:"section-title"},"Message State",-1)),a("div",UD,[a("div",KD,[x[37]||(x[37]=a("span",{class:"info-label"},"UUID:",-1)),a("code",HD,q(e.message.messageState.uuid),1)]),a("div",GD,[x[38]||(x[38]=a("span",{class:"info-label"},"Published At:",-1)),a("span",WD,q(u.value),1)]),a("div",zD,[x[39]||(x[39]=a("span",{class:"info-label"},"Attempts:",-1)),a("span",YD,q(e.message.messageState.attempts),1)]),a("div",ZD,[x[40]||(x[40]=a("span",{class:"info-label"},"Expired:",-1)),a("span",{class:De(["badge",e.message.messageState.expired?"bg-danger":"bg-success"])},q(e.message.messageState.expired?"Yes":"No"),3)])])]),a("div",JD,[x[48]||(x[48]=a("h6",{class:"section-title"},"Timing Information",-1)),a("div",XD,[a("div",eR,[x[42]||(x[42]=a("span",{class:"info-label"},"Processing Started At:",-1)),a("span",tR,q(h.value),1)]),a("div",sR,[x[43]||(x[43]=a("span",{class:"info-label"},"Acknowledged At:",-1)),a("span",nR,q(m.value),1)]),a("div",iR,[x[44]||(x[44]=a("span",{class:"info-label"},"Last Retried At:",-1)),a("span",rR,q(c.value),1)]),a("div",aR,[x[45]||(x[45]=a("span",{class:"info-label"},"Last Requeued At:",-1)),a("span",oR,q(v.value),1)]),a("div",lR,[x[46]||(x[46]=a("span",{class:"info-label"},"Dead-Lettered At:",-1)),a("span",uR,q(p.value),1)]),a("div",cR,[x[47]||(x[47]=a("span",{class:"info-label"},"Scheduled Times:",-1)),a("span",dR,q(e.message.messageState.scheduledTimes),1)])])])])])):he("",!0),i.value==="scheduling"?(N(),P("div",fR,[a("div",hR,[a("div",pR,[x[53]||(x[53]=a("h6",{class:"section-title"},"Schedule Configuration",-1)),a("div",mR,[a("div",gR,[x[49]||(x[49]=a("span",{class:"info-label"},"Scheduled At:",-1)),a("span",vR,q(d.value),1)]),a("div",bR,[x[50]||(x[50]=a("span",{class:"info-label"},"Scheduled Cron:",-1)),a("span",yR,q(e.message.scheduledCron||"None"),1)]),a("div",_R,[x[51]||(x[51]=a("span",{class:"info-label"},"Scheduled Delay:",-1)),a("span",ER,q(e.message.scheduledDelay?`${e.message.scheduledDelay} ms`:"None"),1)]),a("div",wR,[x[52]||(x[52]=a("span",{class:"info-label"},"Cron Fired:",-1)),a("span",{class:De(["badge",e.message.messageState.scheduledCronFired?"bg-success":"bg-secondary"])},q(e.message.messageState.scheduledCronFired?"Yes":"No"),3)])])]),a("div",CR,[x[58]||(x[58]=a("h6",{class:"section-title"},"Repeat Configuration",-1)),a("div",AR,[a("div",SR,[x[54]||(x[54]=a("span",{class:"info-label"},"Repeat Period:",-1)),a("span",xR,q(e.message.scheduledRepeatPeriod?`${e.message.scheduledRepeatPeriod} ms`:"None"),1)]),a("div",$R,[x[55]||(x[55]=a("span",{class:"info-label"},"Repeat Count:",-1)),a("span",TR,q(e.message.scheduledRepeat),1)]),a("div",OR,[x[56]||(x[56]=a("span",{class:"info-label"},"Current Repeat:",-1)),a("span",NR,q(e.message.messageState.scheduledRepeatCount),1)]),a("div",kR,[x[57]||(x[57]=a("span",{class:"info-label"},"Last Scheduled At:",-1)),a("span",PR,q(e.message.messageState.lastScheduledAt?new Date(e.message.messageState.lastScheduledAt).toLocaleString():"Never"),1)])])]),e.message?.messageState.scheduledMessageParentId?(N(),P("div",DR,[x[61]||(x[61]=a("h6",{class:"section-title"},"Scheduled Message Reference",-1)),a("div",RR,[a("div",MR,[x[60]||(x[60]=a("span",{class:"info-label"},"Scheduled Message Parent ID:",-1)),a("div",IR,[a("code",qR,q(e.message.messageState.scheduledMessageParentId),1),a("button",{class:"btn btn-sm btn-outline-secondary ms-2",title:"Copy Scheduled Message Parent ID",onClick:x[6]||(x[6]=F=>V(e.message.messageState.scheduledMessageParentId))},[...x[59]||(x[59]=[a("i",{class:"bi bi-clipboard"},null,-1)])])])])])])):he("",!0),e.message?.messageState.requeuedMessageParentId?(N(),P("div",LR,[x[64]||(x[64]=a("h6",{class:"section-title"},"Requeued Message Reference",-1)),a("div",FR,[a("div",VR,[x[63]||(x[63]=a("span",{class:"info-label"},"Requeued Message Parent ID:",-1)),a("div",QR,[a("code",jR,q(e.message.messageState.requeuedMessageParentId),1),a("button",{class:"btn btn-sm btn-outline-secondary ms-2",title:"Copy Requeued Message Parent ID",onClick:x[7]||(x[7]=F=>V(e.message.messageState.requeuedMessageParentId))},[...x[62]||(x[62]=[a("i",{class:"bi bi-clipboard"},null,-1)])])])])])])):he("",!0)])])):he("",!0),i.value==="timeline"?(N(),P("div",BR,[a("ul",UR,[(N(!0),P(Ae,null,bt($.value,F=>(N(),P("li",{key:`${F.type}-${F.timestamp}`,class:"timeline-item"},[a("div",{class:De(["timeline-marker",F.color])},[a("i",{class:De(F.icon)},null,2)],2),a("div",KR,[a("h5",HR,q(F.type),1),a("p",GR,q(T(Mc)(F.timestamp)),1)])]))),128))])])):he("",!0)])])]),footer:qe(()=>[a("div",WR,[a("small",zR,[x[65]||(x[65]=a("i",{class:"bi bi-info-circle me-1"},null,-1)),te(" Message created "+q(l.value),1)])]),a("div",YR,[A.value?(N(),P("button",{key:0,type:"button",class:"btn btn-warning",disabled:g.value,onClick:x[8]||(x[8]=F=>o.value=!0)},[e.isRequeuing?(N(),P(Ae,{key:0},[x[66]||(x[66]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),x[67]||(x[67]=te(" Requeuing... ",-1))],64)):(N(),P(Ae,{key:1},[x[68]||(x[68]=a("i",{class:"bi bi-arrow-clockwise me-2"},null,-1)),x[69]||(x[69]=te(" Requeue Message ",-1))],64))],8,ZR)):he("",!0),a("button",{type:"button",class:"btn btn-danger",disabled:g.value,onClick:x[9]||(x[9]=F=>r.value=!0)},[e.isDeleting?(N(),P(Ae,{key:0},[x[70]||(x[70]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),x[71]||(x[71]=te(" Deleting... ",-1))],64)):(N(),P(Ae,{key:1},[x[72]||(x[72]=a("i",{class:"bi bi-trash me-2"},null,-1)),x[73]||(x[73]=te(" Delete Message ",-1))],64))],8,JR),a("button",{type:"button",class:"btn btn-secondary",disabled:g.value,onClick:L}," Close ",8,XR)])]),_:1},8,["is-visible","subtitle"]),we(zh,{"is-visible":r.value,title:"Delete Message",message:"Are you sure you want to delete this message? This action cannot be undone.","confirm-text":"Delete Message",variant:"danger","is-loading":e.isDeleting,onConfirm:I,onClose:x[10]||(x[10]=F=>r.value=!1)},{"message-preview":qe(()=>[x[74]||(x[74]=a("strong",null,"Message ID: ",-1)),a("code",null,q(e.message?.id),1)]),_:1},8,["is-visible","is-loading"]),we(zh,{"is-visible":o.value,title:"Requeue Message",message:"Are you sure you want to requeue this dead-lettered message? It will be moved back to the pending queue for processing.","confirm-text":"Requeue Message",variant:"warning","is-loading":e.isRequeuing,onConfirm:w,onClose:x[11]||(x[11]=F=>o.value=!1)},{"message-preview":qe(()=>[x[75]||(x[75]=a("strong",null,"Message ID: ",-1)),a("code",null,q(e.message?.id),1)]),_:1},8,["is-visible","is-loading"])],64))}}),tM=Xe(eM,[["__scopeId","data-v-65801e3a"]]),sM={class:"messages-component","aria-live":"polite"},nM={key:0,class:"messages-controls"},iM={class:"controls-left"},rM={key:0,class:"pagination-info"},aM={class:"info-text"},oM={class:"controls-right"},lM={key:0,class:"page-size-selector"},uM=["value"],cM=["disabled"],dM={class:"messages-content"},fM={key:0,class:"state-card loading-state"},hM={key:1,class:"state-card error-state"},pM={class:"state-content"},mM={class:"state-text"},gM={class:"state-message"},vM={class:"state-actions"},bM={key:2,class:"state-card empty-state"},yM={class:"state-content"},_M={class:"state-title"},EM={key:3,class:"messages-list",role:"list","aria-label":"Messages list"},wM=["aria-label","onClick","onKeydown"],CM={class:"message-header"},AM={class:"message-id-section"},SM={class:"message-id"},xM={class:"message-date"},$M={class:"message-metadata"},TM={key:0,class:"metadata-item"},OM={class:"metadata-value priority-badge"},NM={key:1,class:"metadata-item"},kM={class:"metadata-value"},PM={key:2,class:"metadata-item"},DM={class:"message-body"},RM={class:"body-content"},MM={key:1,class:"messages-pagination"},IM={class:"pagination-nav","aria-label":"Messages pagination"},qM={class:"pagination"},LM=["disabled"],FM=["disabled"],VM=["title","onClick"],QM=["disabled"],jM=["disabled"],BM=Ue({__name:"MessageList",props:{messages:{},isLoading:{type:Boolean},error:{},pagination:{},showPagination:{type:Boolean},emptyMessage:{default:"No messages found"},icon:{default:"bi-envelope"},isDeleting:{type:Boolean},isRequeuing:{type:Boolean}},emits:["refresh","delete-message","requeue-message","page-change","page-size-change","first-page","previous-page","next-page","last-page"],setup(e,{emit:t}){const s=e,n=t,i=be(!1),r=be(null),o=b(()=>s.messages.length>0),l=b(()=>s.pagination.currentPage>1),u=b(()=>s.pagination.currentPage<s.pagination.totalPages),d=b(()=>{const S=[],A=Math.floor(2.5),{currentPage:g,totalPages:$}=s.pagination;let L=Math.max(1,g-A),V=Math.min($,L+5-1);V-L+1<5&&(L=Math.max(1,V-5+1));for(let I=L;I<=V;I++)S.push(I);return S});function c(S){r.value=S,i.value=!0}function h(){i.value=!1}function m(S){n("delete-message",S),h()}function p(S){n("requeue-message",S),h()}function v(S){const C=S.target;n("page-size-change",Number(C.value))}function E(S){if(typeof S=="string")return S.length>100?`${S.substring(0,100)}...`:S;if(S==null)return"null";try{const C=JSON.stringify(S);return C.length>100?`${C.substring(0,100)}...`:C}catch{return String(S)}}function _(S,C){(S.key==="Enter"||S.key===" ")&&(S.preventDefault(),c(C))}return(S,C)=>(N(),P("section",sM,[o.value||e.showPagination?(N(),P("div",nM,[a("div",iM,[e.showPagination&&e.pagination&&e.pagination.hasItems?(N(),P("div",rM,[a("span",aM," Showing "+q(e.pagination.start)+"-"+q(e.pagination.end)+" of "+q(e.pagination.totalCount)+" messages ",1)])):he("",!0)]),a("div",oM,[e.showPagination&&e.pagination?(N(),P("div",lM,[C[7]||(C[7]=a("label",{for:"pageSize",class:"selector-label"},"Per page:",-1)),a("select",{id:"pageSize",class:"form-select form-select-sm",value:e.pagination.pageSize,onChange:v},[...C[6]||(C[6]=[a("option",{value:"10"},"10",-1),a("option",{value:"20"},"20",-1),a("option",{value:"50"},"50",-1),a("option",{value:"100"},"100",-1)])],40,uM)])):he("",!0),a("button",{class:De(["btn btn-refresh",{"btn-loading":e.isLoading}]),disabled:e.isLoading,onClick:C[0]||(C[0]=A=>n("refresh"))},[e.isLoading?(N(),P(Ae,{key:0},[C[8]||(C[8]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),C[9]||(C[9]=te(" Refreshing... ",-1))],64)):(N(),P(Ae,{key:1},[C[10]||(C[10]=a("i",{class:"bi bi-arrow-clockwise me-2"},null,-1)),C[11]||(C[11]=te(" Refresh ",-1))],64))],10,cM)])])):he("",!0),a("div",dM,[e.isLoading&&!o.value?(N(),P("div",fM,[...C[12]||(C[12]=[a("div",{class:"state-content"},[a("div",{class:"spinner-border text-primary mb-3",role:"status"}),a("h5",{class:"state-title"},"Loading messages..."),a("p",{class:"state-subtitle"},"Please wait while we fetch your messages")],-1)])])):e.error?(N(),P("div",hM,[a("div",pM,[C[14]||(C[14]=a("div",{class:"state-icon","aria-hidden":"true"},[a("i",{class:"bi bi-exclamation-triangle-fill text-danger"})],-1)),a("div",mM,[C[13]||(C[13]=a("h5",{class:"state-title"},"Failed to load messages",-1)),a("p",gM,q(e.error.message),1)])]),a("div",vM,[a("button",{class:"btn btn-primary",onClick:C[1]||(C[1]=A=>n("refresh"))},[...C[15]||(C[15]=[a("i",{class:"bi bi-arrow-clockwise me-2"},null,-1),te(" Try Again ",-1)])])])])):o.value?(N(),P("div",EM,[(N(!0),P(Ae,null,bt(e.messages,A=>(N(),P("div",{key:A.id,class:"message-card",role:"button",tabindex:"0","aria-label":`View message ${A.id} details`,onClick:g=>c(A),onKeydown:g=>_(g,A)},[a("div",CM,[a("div",AM,[a("span",SM,q(A.id),1),a("span",xM,q(T(Mc)(A.createdAt)),1)]),a("div",$M,[A.priority!==void 0&&A.priority!==null?(N(),P("div",TM,[C[18]||(C[18]=a("span",{class:"metadata-label"},"Priority:",-1)),a("span",OM,q(A.priority),1)])):he("",!0),A.consumerGroupId?(N(),P("div",NM,[C[19]||(C[19]=a("span",{class:"metadata-label"},"Group:",-1)),a("span",kM,q(A.consumerGroupId),1)])):he("",!0),A.status!==void 0?(N(),P("div",PM,[C[20]||(C[20]=a("span",{class:"metadata-label"},"Status:",-1)),a("span",{class:De(["metadata-value status-badge",`status-${A.status}`])},q(T(ev)[A.status]),3)])):he("",!0)])]),a("div",DM,[a("pre",RM,q(E(A.body)),1)])],40,wM))),128))])):(N(),P("div",bM,[a("div",yM,[C[16]||(C[16]=a("div",{class:"state-icon","aria-hidden":"true"},"📭",-1)),a("h4",_M,q(e.emptyMessage),1),C[17]||(C[17]=a("p",{class:"state-subtitle"}," Messages will appear here when they are available ",-1))])]))]),e.showPagination&&e.pagination&&e.pagination.totalPages>1?(N(),P("div",MM,[a("nav",IM,[a("ul",qM,[a("li",{class:De(["page-item",{disabled:!l.value}])},[a("button",{class:"page-link",disabled:!l.value,title:"First page",onClick:C[2]||(C[2]=A=>n("first-page"))},[...C[21]||(C[21]=[a("i",{class:"bi bi-chevron-double-left"},null,-1)])],8,LM)],2),a("li",{class:De(["page-item",{disabled:!l.value}])},[a("button",{class:"page-link",disabled:!l.value,title:"Previous page",onClick:C[3]||(C[3]=A=>n("previous-page"))},[...C[22]||(C[22]=[a("i",{class:"bi bi-chevron-left"},null,-1)])],8,FM)],2),(N(!0),P(Ae,null,bt(d.value,A=>(N(),P("li",{key:A,class:De(["page-item",{active:A===e.pagination.currentPage}])},[a("button",{class:"page-link",title:`Go to page ${A}`,onClick:g=>n("page-change",A)},q(A),9,VM)],2))),128)),a("li",{class:De(["page-item",{disabled:!u.value}])},[a("button",{class:"page-link",disabled:!u.value,title:"Next page",onClick:C[4]||(C[4]=A=>n("next-page"))},[...C[23]||(C[23]=[a("i",{class:"bi bi-chevron-right"},null,-1)])],8,QM)],2),a("li",{class:De(["page-item",{disabled:!u.value}])},[a("button",{class:"page-link",disabled:!u.value,title:"Last page",onClick:C[5]||(C[5]=A=>n("last-page"))},[...C[24]||(C[24]=[a("i",{class:"bi bi-chevron-double-right"},null,-1)])],8,jM)],2)])])])):he("",!0),we(tM,{show:i.value,message:r.value,"is-deleting":e.isDeleting,"is-requeuing":e.isRequeuing,onClose:h,onDeleteMessage:m,onRequeueMessage:p},null,8,["show","message","is-deleting","is-requeuing"])]))}}),oa=Xe(BM,[["__scopeId","data-v-4aecad5a"]]),Jo=Vo("selectedNamespace",()=>{const e=be(null);function t(n){e.value=n}function s(){e.value=null}return{selectedNamespace:e,selectNamespace:t,clearSelectedNamespace:s}}),It=Vo("selectedQueue",()=>{const e=Jo(),t=be(null),s=b(()=>e.selectedNamespace&&t.value?{ns:e.selectedNamespace,name:t.value}:null);function n(r,o){e.selectNamespace(r),t.value=o}function i(){t.value=null,e.clearSelectedNamespace()}return{selectedQueue:s,selectQueue:n,clearSelectedQueue:i}}),Dn=Vo("queueProperties",()=>{const e=It(),t=b(()=>e.selectedQueue),s=nO(b(()=>t.value?.ns||""),b(()=>t.value?.name||""),{query:{enabled:b(()=>!!t.value)}}),n=b(()=>s.data.value),i=b(()=>s.isLoading.value),r=b(()=>s.error.value),o=b(()=>n.value?.data.deliveryModel===us.PUB_SUB),l=b(()=>n.value?.data.deliveryModel===us.POINT_TO_POINT),u=b(()=>n.value?.data.queueType),d=b(()=>n.value?.data.deliveryModel),c=b(()=>!!n.value?.data);async function h(){await s.refetch()}return{queuePropertiesQuery:s,queueProperties:n,isLoadingQueueProperties:i,queuePropertiesError:r,isPubSubQueue:o,isPointToPointQueue:l,queueType:u,queueDeliveryModel:d,hasQueueProperties:c,refreshQueueProperties:h}}),UM=(e,t,s,n)=>(e=T(e),t=T(t),s=T(s),Je({url:`/api/v1/namespaces/${e}/queues/${t}/acknowledged-messages`,method:"GET",params:T(s),signal:n})),KM=e=>(e=T(e),Je({url:`/api/v1/messages/${e}`,method:"DELETE"})),HM=e=>{const t=["deleteApiV1MessagesId"],{mutation:s}=e?e.mutation&&"mutationKey"in e.mutation&&e.mutation.mutationKey?e:{...e,mutation:{...e.mutation,mutationKey:t}}:{mutation:{mutationKey:t}};return{mutationFn:i=>{const{id:r}=i??{};return KM(r)},...s}},GM=(e,t)=>{const s=HM(e);return Nt(s)},WM=(e,t)=>(e=T(e),Je({url:`/api/v1/messages/${e}/requeue`,method:"POST",signal:t})),zM=e=>{const t=["postApiV1MessagesIdRequeue"],{mutation:s}=e?e.mutation&&"mutationKey"in e.mutation&&e.mutation.mutationKey?e:{...e,mutation:{...e.mutation,mutationKey:t}}:{mutation:{mutationKey:t}};return{mutationFn:i=>{const{id:r}=i??{};return WM(r)},...s}},YM=(e,t)=>{const s=zM(e);return Nt(s)};function la(e,t,s=20,n=be({})){const i=fn(),r=As({currentPage:1,pageSize:s}),o=b(()=>{if(!e.value)return["disabled"];const z=[t.queryKeyPrefix,e.value.ns,e.value.name],fe=Object.entries(n.value);return fe.length>0&&fe.forEach(([ie,G])=>{G!=null&&z.push(ie,String(G))}),z});function l(z){return z?.data?.totalItems??0}const{data:u,error:d,fetchNextPage:c,hasNextPage:h,isLoading:m,isFetchingNextPage:p,refetch:v}=uC({queryKey:o,initialPageParam:1,enabled:b(()=>!!(e.value?.ns&&e.value?.name)),retry:(z,fe)=>{const ie=fe;return(ie?.status??ie?.response?.status)===422?!1:z<3},queryFn:async({pageParam:z=1})=>{if(!e.value)throw new Error("Queue parameters are required");return t.queryFn({ns:e.value.ns,name:e.value.name,page:Number(z),pageSize:r.pageSize,extraParams:n.value})},getNextPageParam:(z,fe)=>{const ie=z?.data?.items??[],G=l(fe?.[0]),X=fe.flatMap(Z=>Z?.data?.items??[]).length;if(!(!ie.length||G&&X>=G))return fe.length+1}}),E=async()=>{await i.invalidateQueries({queryKey:o.value})},_=t.enableDelete?GM({mutation:{onSuccess:E}}):null,S=t.enableRequeue?YM({mutation:{onSuccess:E}}):null,C=b(()=>u.value?.pages.flatMap(z=>z?.data?.items??[])??[]),A=b(()=>l(u.value?.pages?.[0]??{})),g=b(()=>_?.isPending.value??!1),$=b(()=>S?.isPending.value??!1),L=b(()=>{const z=d.value||_?.error.value||S?.error.value;return dt(z)}),V=b(()=>{const z=(r.currentPage-1)*r.pageSize,fe=z+r.pageSize;return C.value.slice(z,fe)}),I=b(()=>{const z=A.value||0,fe=z>0?Math.ceil(z/r.pageSize):1,ie=z>0?(r.currentPage-1)*r.pageSize+1:0,G=Math.min(ie+r.pageSize-1,z);return{currentPage:r.currentPage,pageSize:r.pageSize,totalCount:z,totalPages:fe,start:ie,end:G,hasItems:z>0}});async function w(z){if(z<1)return;r.currentPage=z;const fe=z*r.pageSize;for(;C.value.length<fe&&h.value&&!p.value;)await c()}async function O(z){r.pageSize=z,r.currentPage=1,await v()}async function x(){r.currentPage=1,await v()}async function F(z){if(!_)throw new Error("Delete operation is not enabled for this message type");await _.mutateAsync({id:z})}async function H(z){if(!S)throw new Error("Requeue operation is not enabled for this message type");await S.mutateAsync({id:z})}return Ye(()=>[e.value&&[e.value.ns,e.value.name],n.value],async()=>{e.value&&(r.currentPage=1,await v())},{deep:!0}),{messages:V,pagination:I,isLoading:m,isDeleting:g,isRequeuing:$,error:L,goToPage:w,setPageSize:O,refresh:x,deleteMessage:t.enableDelete?F:void 0,requeueMessage:t.enableRequeue?H:void 0,hasNextPage:h,isFetchingNextPage:p,totalMessages:A,allMessages:C}}function ZM(e,t=20){return la(e,{queryFn:async({ns:n,name:i,page:r,pageSize:o})=>UM(n,i,{page:r,pageSize:o}),queryKeyPrefix:"acknowledged-messages",enableDelete:!0,enableRequeue:!0},t)}const JM=e=>Je({url:"/api/v1/config",method:"GET",signal:e}),XM=()=>["api","v1","config"],eI=e=>{const{query:t}={};return{queryKey:XM(),queryFn:({signal:i})=>JM(i),...t}};function Pv(e,t){const s=eI(),n=Jt(s);return n.queryKey=T(s).queryKey,n}const tI={key:0,class:"ack-loading-alert",role:"status","aria-live":"polite"},sI={key:1,class:"ack-error-alert",role:"alert","aria-live":"polite"},nI={class:"ack-alert-row"},iI={class:"ack-alert-text"},rI={class:"ack-alert-message"},aI={class:"ack-alert-actions"},oI={key:2,class:"ack-disabled-alert",role:"status","aria-live":"polite"},lI=Ue({__name:"AcknowledgedMessagesView",setup(e){const t=It(),s=Dn(),n=Xt(),i=ps(),r=b(()=>i.params.ns),o=b(()=>i.params.queue),l=b(()=>({ns:r.value,name:o.value}));Ye([r,o],([H,z])=>{H&&z&&t.selectQueue(H,z)},{immediate:!0});const u=b(()=>t.selectedQueue),{messages:d,pagination:c,isLoading:h,isDeleting:m,error:p,goToPage:v,setPageSize:E,refresh:_,deleteMessage:S}=ZM(l,20),C=b(()=>u.value?`Acknowledged Messages - ${`${u.value.name}@${u.value.ns}`}`:"Acknowledged Messages"),A=b(()=>{if(u.value)return s.isPubSubQueue?"Pub/Sub Queue":"Point-2-Point Queue"});At(()=>{n.setPageHeader({title:C.value,subtitle:A.value,icon:"bi bi-check-circle"})}),At(()=>{if(!u.value){n.setEmptyState(!0,{icon:"bi bi-inbox",title:"No Queue Selected",message:"Please select a queue from the sidebar to view its acknowledged messages."}),n.setPageActions([]),n.setLoadingState(!1),n.setErrorState(null);return}n.setLoadingState(!1),n.setErrorState(null),n.setEmptyState(!1),n.setPageActions([])});const{data:g,isLoading:$,error:L,refetch:V}=Pv(),I=b(()=>{const H=g.value?.data?.messageAudit?.acknowledgedMessages?.enabled;return typeof H=="boolean"?H:null}),w=b(()=>dt(L.value));async function O(H){S&&await S(H)}function x(H){v(H)}async function F(H){await E(H)}return(H,z)=>(N(),at(ms,{"show-section-header":!1},{default:qe(()=>[T($)?(N(),P("div",tI,[...z[5]||(z[5]=[a("div",{class:"ack-alert-row"},[a("i",{class:"bi bi-arrow-repeat ack-alert-icon","aria-hidden":"true"}),a("div",{class:"ack-alert-text"},[a("strong",null,"Loading configuration…"),a("p",{class:"ack-alert-message"}," Checking server settings for acknowledged messages storage. ")]),a("div",{class:"ack-alert-actions"},[a("span",{class:"spinner-border spinner-border-sm","aria-hidden":"true"})])],-1)])])):T(L)?(N(),P("div",sI,[a("div",nI,[z[8]||(z[8]=a("i",{class:"bi bi-exclamation-triangle-fill ack-alert-icon","aria-hidden":"true"},null,-1)),a("div",iI,[z[6]||(z[6]=a("strong",null,"Could not load server configuration",-1)),a("p",rI,q(w.value),1)]),a("div",aI,[a("button",{class:"btn btn-sm btn-outline-primary",type:"button",onClick:z[0]||(z[0]=fe=>T(V)())},[...z[7]||(z[7]=[a("i",{class:"bi bi-arrow-clockwise me-1"},null,-1),te(" Retry ",-1)])])])])])):I.value===!1?(N(),P("div",oI,[...z[9]||(z[9]=[a("div",{class:"ack-alert-row"},[a("i",{class:"bi bi-info-circle-fill ack-alert-icon","aria-hidden":"true"}),a("div",{class:"ack-alert-text"},[a("strong",null,"Acknowledged messages audit is disabled"),a("p",{class:"ack-alert-message"}," Acknowledged message auditing is disabled in the RedisSMQ configuration. This view will remain empty until auditing is enabled. ")])],-1)])])):he("",!0),u.value?(N(),at(oa,{key:3,messages:T(d),"is-loading":T(h),error:T(p),pagination:T(c),"show-pagination":!0,"empty-message":"No acknowledged messages found for this queue. Messages appear here when they have been successfully processed and acknowledged by consumers.",icon:"bi-check-circle","is-deleting":T(m),"is-requeuing":!1,onRefresh:T(_),onDeleteMessage:O,onPageChange:x,onPageSizeChange:F,onFirstPage:z[1]||(z[1]=fe=>x(1)),onPreviousPage:z[2]||(z[2]=fe=>x(T(c).currentPage-1)),onNextPage:z[3]||(z[3]=fe=>x(T(c).currentPage+1)),onLastPage:z[4]||(z[4]=fe=>x(T(c).totalPages))},null,8,["messages","is-loading","error","pagination","is-deleting","onRefresh"])):he("",!0)]),_:1}))}}),uI=Xe(lI,[["__scopeId","data-v-685bdbeb"]]),cI=(e,t,s,n)=>(e=T(e),t=T(t),s=T(s),Je({url:`/api/v1/namespaces/${e}/queues/${t}/dead-lettered-messages`,method:"GET",params:T(s),signal:n}));function dI(e,t=20){return la(e,{queryFn:async({ns:n,name:i,page:r,pageSize:o})=>cI(n,i,{page:r,pageSize:o}),queryKeyPrefix:"dead-lettered-messages",enableDelete:!0,enableRequeue:!0},t)}const fI={key:0,class:"dl-loading-alert",role:"status","aria-live":"polite"},hI={key:1,class:"dl-error-alert",role:"alert","aria-live":"polite"},pI={class:"dl-alert-row"},mI={class:"dl-alert-text"},gI={class:"dl-alert-message"},vI={class:"dl-alert-actions"},bI={key:2,class:"dl-disabled-alert",role:"status","aria-live":"polite"},yI=Ue({__name:"DeadLetteredMessagesView",setup(e){const t=It(),s=Dn(),n=Xt(),i=ps(),r=b(()=>i.params.ns),o=b(()=>i.params.queue),l=b(()=>({ns:r.value,name:o.value}));Ye([r,o],([ie,G])=>{ie&&G&&t.selectQueue(ie,G)},{immediate:!0});const u=b(()=>t.selectedQueue),{messages:d,pagination:c,isLoading:h,isDeleting:m,isRequeuing:p,error:v,goToPage:E,setPageSize:_,refresh:S,deleteMessage:C,requeueMessage:A}=dI(l,20),g=b(()=>u.value?`Dead-Lettered Messages - ${`${u.value.name}@${u.value.ns}`}`:"Dead-Lettered Messages"),$=b(()=>{if(u.value)return s.isPubSubQueue?"Pub/Sub Queue":"Point-2-Point Queue"});At(()=>{n.setPageHeader({title:g.value,subtitle:$.value,icon:"bi bi-x-circle"})}),At(()=>{if(!u.value){n.setEmptyState(!0,{icon:"bi bi-inbox",title:"No Queue Selected",message:"Please select a queue from the sidebar to view its dead-lettered messages."}),n.setPageActions([]),n.setLoadingState(!1),n.setErrorState(null);return}n.setLoadingState(!1),n.setErrorState(null),n.setEmptyState(!1),n.setPageActions([])});const{data:L,isLoading:V,error:I,refetch:w}=Pv(),O=b(()=>{const ie=L.value?.data?.messageAudit.deadLetteredMessages?.enabled;return typeof ie=="boolean"?ie:null}),x=b(()=>dt(I));async function F(ie){C&&await C(ie)}async function H(ie){A&&await A(ie)}function z(ie){E(ie)}async function fe(ie){await _(ie)}return(ie,G)=>(N(),at(ms,{"show-section-header":!1},{default:qe(()=>[T(V)?(N(),P("div",fI,[...G[5]||(G[5]=[a("div",{class:"dl-alert-row"},[a("i",{class:"bi bi-arrow-repeat dl-alert-icon","aria-hidden":"true"}),a("div",{class:"dl-alert-text"},[a("strong",null,"Loading configuration…"),a("p",{class:"dl-alert-message"}," Checking server settings for dead-lettered messages storage. ")]),a("div",{class:"dl-alert-actions"},[a("span",{class:"spinner-border spinner-border-sm","aria-hidden":"true"})])],-1)])])):T(I)?(N(),P("div",hI,[a("div",pI,[G[8]||(G[8]=a("i",{class:"bi bi-exclamation-triangle-fill dl-alert-icon","aria-hidden":"true"},null,-1)),a("div",mI,[G[6]||(G[6]=a("strong",null,"Could not load server configuration",-1)),a("p",gI,q(x.value),1)]),a("div",vI,[a("button",{class:"btn btn-sm btn-outline-primary",type:"button",onClick:G[0]||(G[0]=X=>T(w)())},[...G[7]||(G[7]=[a("i",{class:"bi bi-arrow-clockwise me-1"},null,-1),te(" Retry ",-1)])])])])])):O.value===!1?(N(),P("div",bI,[...G[9]||(G[9]=[a("div",{class:"dl-alert-row"},[a("i",{class:"bi bi-info-circle-fill dl-alert-icon","aria-hidden":"true"}),a("div",{class:"dl-alert-text"},[a("strong",null,"Dead-lettered messages audit is disabled"),a("p",{class:"dl-alert-message"}," Dead-lettered message auditing is disabled in the RedisSMQ configuration. This view will remain empty until auditing is enabled. ")])],-1)])])):he("",!0),u.value?(N(),at(oa,{key:3,messages:T(d),"is-loading":T(h),error:T(v),pagination:T(c),"show-pagination":!0,"empty-message":"No dead-lettered messages found for this queue. Messages appear here when they fail processing and exceed retry limits.",icon:"bi-x-circle","is-deleting":T(m),"is-requeuing":T(p),onRefresh:T(S),onDeleteMessage:F,onRequeueMessage:H,onPageChange:z,onPageSizeChange:fe,onFirstPage:G[1]||(G[1]=X=>z(1)),onPreviousPage:G[2]||(G[2]=X=>z(T(c).currentPage-1)),onNextPage:G[3]||(G[3]=X=>z(T(c).currentPage+1)),onLastPage:G[4]||(G[4]=X=>z(T(c).totalPages))},null,8,["messages","is-loading","error","pagination","is-deleting","is-requeuing","onRefresh"])):he("",!0)]),_:1}))}}),_I=Xe(yI,[["__scopeId","data-v-87bf9c6f"]]),EI=e=>Je({url:"/api/v1/namespaces",method:"GET",signal:e}),wI=()=>["api","v1","namespaces"],CI=e=>{const{query:t}={};return{queryKey:wI(),queryFn:({signal:i})=>EI(i),...t}};function AI(e,t){const s=CI(),n=Jt(s);return n.queryKey=T(s).queryKey,n}const SI=e=>(e=T(e),Je({url:`/api/v1/namespaces/${e}`,method:"DELETE"})),xI=e=>{const t=["deleteApiV1NamespacesNs"],{mutation:s}=e?e.mutation&&"mutationKey"in e.mutation&&e.mutation.mutationKey?e:{...e,mutation:{...e.mutation,mutationKey:t}}:{mutation:{mutationKey:t}};return{mutationFn:i=>{const{ns:r}=i??{};return SI(r)},...s}},$I=(e,t)=>{const s=xI(e);return Nt(s)},TI=(e,t)=>(e=T(e),Je({url:`/api/v1/namespaces/${e}/queues`,method:"GET",signal:t})),OI=e=>["api","v1","namespaces",e,"queues"],NI=(e,t)=>{const{query:s}=t??{};return{queryKey:OI(e),queryFn:({signal:r})=>TI(e,r),enabled:b(()=>!!T(e)),...s}};function kI(e,t,s){const n=NI(e,t),i=Jt(n);return i.queryKey=T(n).queryKey,i}const PI=(e,t)=>(e=T(e),Je({url:`/api/v1/namespaces/${e}/exchanges`,method:"GET",signal:t})),Cr=e=>["api","v1","namespaces",e,"exchanges"],DI=(e,t)=>{const{query:s}=t??{};return{queryKey:Cr(e),queryFn:({signal:r})=>PI(e,r),enabled:b(()=>!!T(e)),...s}};function RI(e,t,s){const n=DI(e,t),i=Jt(n);return i.queryKey=T(n).queryKey,i}function Dv(){const e=Jo(),t=b(()=>e.selectedNamespace),s=AI(),n=kI(b(()=>t.value||""),{query:{enabled:b(()=>!!t.value)}}),i=$I({mutation:{onSuccess:async()=>{e.clearSelectedNamespace(),await s.refetch()}}}),r=b(()=>s.data.value),o=b(()=>n.data.value),l=b(()=>s.isLoading.value),u=b(()=>n.isLoading.value),d=b(()=>i.isPending.value),c=b(()=>l.value||u.value||d.value),h=b(()=>s.error.value),m=b(()=>n.error.value),p=b(()=>i.error.value),v=b(()=>h.value||m.value||p.value),E=b(()=>r.value?.data.length?[...r.value.data].sort((w,O)=>w.localeCompare(O)):[]),_=b(()=>o.value?.data.length?[...o.value.data].sort((w,O)=>w.name.localeCompare(O.name)):[]),S=b(()=>!!r.value?.data&&r.value.data.length>0),C=b(()=>!!o.value?.data&&o.value.data.length>0),A=b(()=>w=>r.value?.data?r.value.data.includes(w):!1);async function g(){await s.refetch()}async function $(w){if(w||t.value){const x=t.value;w&&w!==t.value&&e.selectNamespace(w);try{await n.refetch()}finally{w&&w!==x&&(x?e.selectNamespace(x):e.clearSelectedNamespace())}}}async function L(w){await i.mutateAsync({ns:w})}function V(w){const O=w||t.value;if(!O)return Promise.resolve([]);const x=[s.refetch()];return O===t.value&&x.push(n.refetch()),Promise.all(x)}function I(w){return!!w&&w.trim().length>0}return{namespacesQuery:s,namespaceQueuesQuery:n,deleteNamespaceMutation:i,namespaces:r,namespaceQueues:o,isLoading:c,isLoadingNamespaces:l,isLoadingNamespaceQueues:u,isDeletingNamespace:d,error:v,namespacesError:h,namespaceQueuesError:m,deleteNamespaceError:p,sortedNamespaces:E,sortedNamespaceQueues:_,hasNamespaces:S,hasNamespaceQueues:C,namespaceExists:A,refreshNamespaces:g,refreshNamespaceQueues:$,deleteNamespace:L,refetchNamespaceData:V,isValidNamespace:I}}function Rv(e){const t=aO({mutation:{onSuccess:async()=>{await e()}}}),s=b(()=>t.isPending.value),n=b(()=>t.error.value?.error);return{deleteQueue:t.mutateAsync,isDeletingQueue:s,deleteQueueError:n,deleteQueueMutation:t}}const MI={class:"dialog-body"},II={class:"confirmation-message"},qI={class:"queue-details",role:"group","aria-label":"Queue details"},LI={class:"queue-info"},FI={class:"info-item"},VI=["title"],QI={class:"info-item"},jI=["title"],BI={class:"actions"},UI=["disabled"],KI=["disabled"],HI=Ue({__name:"DeleteQueueModal",props:{isVisible:{type:Boolean},isDeleting:{type:Boolean},queue:{}},emits:["cancel","confirm"],setup(e,{emit:t}){const s=e,n=t;function i(){s.isDeleting||n("cancel")}function r(){s.isDeleting||n("confirm")}return(o,l)=>(N(),at(Ss,{"is-visible":e.isVisible,title:"Delete Queue",subtitle:"This action cannot be undone",icon:"bi bi-exclamation-triangle-fill",size:"sm",onClose:i},{body:qe(()=>[a("div",MI,[a("section",II,[l[2]||(l[2]=a("p",{class:"message-text"}," Are you sure you want to permanently delete the following queue? ",-1)),a("div",qI,[a("div",LI,[a("div",FI,[l[0]||(l[0]=a("span",{class:"info-label"},"Queue Name:",-1)),a("span",{class:"info-value queue-name",title:e.queue.name},q(e.queue.name),9,VI)]),a("div",QI,[l[1]||(l[1]=a("span",{class:"info-label"},"Namespace:",-1)),a("span",{class:"info-value namespace",title:e.queue.ns},q(e.queue.ns),9,jI)])])])]),l[3]||(l[3]=a("section",{class:"warning-section","aria-live":"polite"},[a("div",{class:"warning-content"},[a("div",{class:"warning-icon","aria-hidden":"true"},[a("i",{class:"bi bi-shield-exclamation"})]),a("div",{class:"warning-text"},[a("h4",{class:"warning-title"},"Warning"),a("ul",{class:"warning-list"},[a("li",null,"All messages in this queue will be permanently lost"),a("li",null," Ensure all consumers connected to this queue are disconnected "),a("li",null,"This action cannot be reversed")])])])],-1))])]),footer:qe(()=>[a("div",BI,[a("button",{type:"button",class:"btn btn-outline-secondary",disabled:e.isDeleting,onClick:i},[...l[4]||(l[4]=[a("i",{class:"bi bi-x-circle me-2","aria-hidden":"true"},null,-1),te(" Cancel ",-1)])],8,UI),a("button",{type:"button",class:"btn btn-danger",disabled:e.isDeleting,onClick:r},[e.isDeleting?(N(),P(Ae,{key:0},[l[5]||(l[5]=a("span",{class:"spinner-border spinner-border-sm me-2",role:"status","aria-hidden":"true"},null,-1)),l[6]||(l[6]=te(" Deleting Queue... ",-1))],64)):(N(),P(Ae,{key:1},[l[7]||(l[7]=a("i",{class:"bi bi-trash-fill me-2","aria-hidden":"true"},null,-1)),l[8]||(l[8]=te(" Delete Queue ",-1))],64))],8,KI)])]),_:1},8,["is-visible"]))}}),Mv=Xe(HI,[["__scopeId","data-v-6e38dfa1"]]),GI=["onKeydown"],WI={class:"queue-content"},zI={class:"queue-info"},YI={class:"queue-header"},ZI=["title"],JI={class:"queue-details"},XI={class:"queue-namespace"},eq={class:"namespace-text"},tq={class:"queue-actions"},sq=Ue({__name:"QueueListItem",props:{queue:{}},emits:["select","delete"],setup(e,{emit:t}){const s=e,n=t;function i(){n("select",s.queue.ns,s.queue.name)}function r(){n("delete",s.queue.ns,s.queue.name)}return(o,l)=>(N(),P("li",{class:"queue-item",tabindex:"0",onClick:i,onKeydown:[an(i,["enter"]),an(Ft(i,["prevent"]),["space"])]},[a("div",WI,[l[1]||(l[1]=a("div",{class:"queue-icon"},[a("i",{class:"bi bi-collection"})],-1)),a("div",zI,[a("div",YI,[a("h5",{class:"queue-name",title:`${e.queue.ns}:${e.queue.name}`},q(e.queue.name),9,ZI)]),a("div",JI,[a("div",XI,[l[0]||(l[0]=a("i",{class:"bi bi-tag-fill namespace-icon"},null,-1)),a("span",eq,q(e.queue.ns),1)])])])]),l[4]||(l[4]=a("div",{class:"queue-status"},[a("span",{class:"status-indicator active",title:"Queue is active"},[a("i",{class:"bi bi-circle-fill"})])],-1)),a("div",tq,[a("button",{class:"action-btn view-btn",title:"View Queue Details",onClick:Ft(i,["stop"])},[...l[2]||(l[2]=[a("i",{class:"bi bi-eye-fill"},null,-1)])]),a("button",{class:"action-btn delete-btn",title:"Delete Queue",onClick:Ft(r,["stop"])},[...l[3]||(l[3]=[a("i",{class:"bi bi-trash3-fill"},null,-1)])])]),l[5]||(l[5]=a("div",{class:"hover-indicator"},[a("i",{class:"bi bi-chevron-right"})],-1))],40,GI))}}),nq=Xe(sq,[["__scopeId","data-v-f4df47cc"]]),iq={key:0,class:"alert alert-warning alert-dismissible fade show error-banner"},rq={class:"d-flex align-items-center"},aq={class:"content-card namespace-summary"},oq={class:"summary-content"},lq={class:"summary-stats"},uq={class:"stat-item"},cq={class:"stat-content"},dq={class:"stat-number"},fq={class:"stat-label"},hq={class:"stat-item"},pq={class:"stat-content"},mq={class:"stat-number"},gq={class:"content-card queues-card"},vq={class:"queues-header"},bq={class:"queues-count"},yq={class:"queues-list"},_q=Ue({__name:"NamespaceQueuesView",setup(e){const t=ps(),s=os(),n=Dv(),i=Jo(),r=It(),o=Xt(),l=Rv(async()=>{d.value=!1,c.value=null,await n.refreshNamespaceQueues(h.value)}),u=be(!1),d=be(!1),c=be(null),h=b(()=>t.params.ns),m=b(()=>n.sortedNamespaceQueues.value),p=b(()=>n.isLoadingNamespaceQueues.value),v=b(()=>n.namespaceQueuesError.value),E=b(()=>m.value.length>0),_=b(()=>h.value?n.namespaceExists.value(h.value):!1),S=b(()=>l.isDeletingQueue.value),C=b(()=>l.deleteQueueError.value);function A(F,H){r.selectQueue(F,H),s.push({name:"Queue",params:{ns:F,queue:H}})}function g(){i.clearSelectedNamespace(),s.push({name:"Namespaces"})}function $(){u.value=!0}function L(){u.value=!1}function V(F,H){c.value={ns:F,name:H},d.value=!0}function I(){d.value=!1,c.value=null}async function w(){c.value&&await l.deleteQueueMutation.mutateAsync({ns:c.value.ns,name:c.value.name})}function O(){n.refreshNamespaceQueues(h.value)}const x=b(()=>[{id:"refresh-queues",label:"Refresh",icon:"bi bi-arrow-clockwise",variant:"secondary",disabled:p.value,handler:O},{id:"create-queue",label:"Create Queue",icon:"bi bi-plus-circle",variant:"primary",disabled:!1,loading:!1,handler:$}]);return At(()=>{o.setPageHeader({title:h.value,subtitle:"Manage queues in this namespace",icon:"bi bi-folder-fill"}),o.setPageActions(x.value),o.setLoadingState(p.value),p.value||(_.value?v.value?(o.setErrorState(dt(v.value)),o.setEmptyState(!1)):E.value?(o.setErrorState(null),o.setEmptyState(!1)):(o.setErrorState(null),o.setEmptyState(!0,{icon:"bi bi-inbox",title:"No queues in this namespace",message:`Create your first queue in the "${h.value}" namespace to start managing messages.`,actionLabel:"Create Your First Queue",actionHandler:$})):(o.setEmptyState(!0,{icon:"bi bi-folder-x",title:"Namespace Not Found",message:`The namespace "${h.value}" does not exist or has been deleted.`,actionLabel:"Back to Namespaces",actionHandler:g}),o.setPageActions([])))}),Ye(h,F=>{F&&i.selectNamespace(F)},{immediate:!0}),Bt(()=>{h.value&&i.selectNamespace(h.value)}),(F,H)=>(N(),P("div",null,[we(ms,null,{default:qe(()=>[C.value&&!d.value?(N(),P("div",iq,[a("div",rq,[H[2]||(H[2]=a("i",{class:"bi bi-exclamation-triangle me-2"},null,-1)),a("span",null,"Failed to delete queue: "+q(T(dt)(C.value)),1)]),a("button",{type:"button",class:"btn-close",onClick:H[0]||(H[0]=z=>T(l).deleteQueueMutation.reset())})])):he("",!0),a("div",aq,[a("div",oq,[a("div",lq,[a("div",uq,[H[3]||(H[3]=a("div",{class:"stat-icon"},[a("i",{class:"bi bi-list-ul"})],-1)),a("div",cq,[a("div",dq,q(m.value.length),1),a("div",fq," Queue"+q(m.value.length!==1?"s":""),1)])]),a("div",hq,[H[5]||(H[5]=a("div",{class:"stat-icon"},[a("i",{class:"bi bi-folder-fill"})],-1)),a("div",pq,[a("div",mq,q(h.value),1),H[4]||(H[4]=a("div",{class:"stat-label"},"Namespace",-1))])])])])]),a("div",gq,[a("div",vq,[a("h5",bq,q(m.value.length)+" Queue"+q(m.value.length!==1?"s":""),1)]),a("div",yq,[(N(!0),P(Ae,null,bt(m.value,z=>(N(),at(nq,{key:`${z.ns}-${z.name}`,queue:z,onSelect:A,onDelete:V},null,8,["queue"]))),128))])])]),_:1}),we(Tv,{"is-visible":u.value,namespace:h.value,onClose:L,onCreated:H[1]||(H[1]=z=>T(n).refreshNamespaceQueues(h.value))},null,8,["is-visible","namespace"]),c.value?(N(),at(Mv,{key:0,"is-visible":d.value,"is-deleting":S.value,queue:c.value,onCancel:I,onConfirm:w},null,8,["is-visible","is-deleting","queue"])):he("",!0)]))}}),Eq=Xe(_q,[["__scopeId","data-v-125bc741"]]),wq=["aria-label"],Cq={key:0,class:"deleting-overlay"},Aq={class:"card-header"},Sq={class:"header-content"},xq={class:"header-text"},$q={class:"namespace-name"},Tq={class:"header-actions"},Oq={class:"card-body"},Nq={class:"stats-section",role:"group","aria-label":"Namespace stats"},kq={class:"stat-item"},Pq={class:"stat-value"},Dq={class:"stat-label"},Rq={class:"stat-item"},Mq={class:"stat-value"},Iq={class:"stat-label"},qq={class:"queues-section"},Lq={key:0,class:"queues-list",role:"list"},Fq=["onClick","onKeydown"],Vq={class:"queue-name"},Qq={key:1,class:"no-queues-message"},jq={class:"card-footer"},Bq={class:"footer-actions"},Uq=Ue({__name:"NamespaceCard",props:{namespace:{},queueCount:{},exchangeCount:{default:0},recentQueues:{},isDeleting:{type:Boolean}},emits:["click","delete","view-exchanges","queue-click"],setup(e,{emit:t}){const s=e,n=t;function i(o){n("queue-click",o)}function r(o){o.stopPropagation(),n("view-exchanges",s.namespace)}return(o,l)=>(N(),P("article",{class:De(["namespace-card",{"is-deleting":e.isDeleting}]),tabindex:"0","aria-label":`View details for namespace ${e.namespace}`,onClick:l[2]||(l[2]=u=>n("click",e.namespace)),onKeydown:[l[3]||(l[3]=an(u=>n("click",e.namespace),["enter"])),l[4]||(l[4]=an(Ft(u=>n("click",e.namespace),["prevent"]),["space"]))]},[e.isDeleting?(N(),P("div",Cq,[...l[5]||(l[5]=[a("div",{class:"spinner-border text-light",role:"status","aria-live":"polite","aria-label":"Deleting namespace"},null,-1),a("span",{class:"deleting-text"},"Deleting...",-1)])])):he("",!0),a("header",Aq,[a("div",Sq,[l[7]||(l[7]=a("div",{class:"header-icon","aria-hidden":"true"},[a("i",{class:"bi bi-folder2-open"})],-1)),a("div",xq,[a("h3",$q,q(e.namespace),1),l[6]||(l[6]=a("span",{class:"namespace-label"},"Namespace",-1))])]),a("div",Tq,[a("button",{type:"button",class:"btn-action btn-exchanges","aria-label":"View exchanges",title:"View exchanges in this namespace",onClick:Ft(r,["stop"])},[...l[8]||(l[8]=[a("i",{class:"bi bi-diagram-3","aria-hidden":"true"},null,-1)])]),a("button",{type:"button",class:"btn-action btn-delete","aria-label":"Delete namespace",title:"Delete namespace",onClick:l[0]||(l[0]=Ft(u=>n("delete",e.namespace),["stop"]))},[...l[9]||(l[9]=[a("i",{class:"bi bi-trash","aria-hidden":"true"},null,-1)])])])]),a("main",Oq,[a("div",Nq,[a("div",kq,[a("span",Pq,q(e.queueCount),1),a("span",Dq,q(e.queueCount===1?"Queue":"Queues"),1)]),a("div",Rq,[a("span",Mq,q(e.exchangeCount),1),a("span",Iq,q(e.exchangeCount===1?"Exchange":"Exchanges"),1)])]),a("div",qq,[l[11]||(l[11]=a("h4",{class:"queues-title"},[a("i",{class:"bi bi-card-list me-2","aria-hidden":"true"}),te(" Sample Queues ")],-1)),e.recentQueues.length?(N(),P("ul",Lq,[(N(!0),P(Ae,null,bt(e.recentQueues,u=>(N(),P("li",{key:`${u.name}@${u.ns}`,class:"queue-item",role:"listitem"},[a("a",{href:"#",class:"queue-link",onClick:Ft(d=>i(u),["prevent","stop"]),onKeydown:an(Ft(d=>i(u),["prevent","stop"]),["enter"])},[a("span",Vq,q(u.name),1),l[10]||(l[10]=a("i",{class:"bi bi-box-arrow-up-right queue-icon","aria-hidden":"true"},null,-1))],40,Fq)]))),128))])):(N(),P("p",Qq,"No queues in this namespace."))])]),a("footer",jq,[a("div",Bq,[a("button",{type:"button",class:"footer-action",onClick:l[1]||(l[1]=Ft(u=>n("click",e.namespace),["stop"]))},[...l[12]||(l[12]=[a("span",{class:"footer-text"},"View all queues",-1),a("i",{class:"bi bi-arrow-right","aria-hidden":"true"},null,-1)])]),a("button",{type:"button",class:"footer-action",onClick:Ft(r,["stop"])},[...l[13]||(l[13]=[a("span",{class:"footer-text"},"View exchanges",-1),a("i",{class:"bi bi-diagram-3","aria-hidden":"true"},null,-1)])])])])],42,wq))}}),Kq=Xe(Uq,[["__scopeId","data-v-b80eed74"]]),Hq={class:"dialog-body"},Gq={class:"confirmation-message"},Wq={class:"message-text"},zq=["title"],Yq={class:"namespace-details",role:"group","aria-label":"Namespace details"},Zq={class:"detail-item"},Jq={class:"detail-value"},Xq={key:0,class:"error-section",role:"alert"},eL={class:"error-content"},tL={class:"error-text"},sL={class:"error-message"},nL={class:"actions"},iL=["disabled"],rL=["disabled"],aL=Ue({__name:"DeleteNamespaceModal",props:{isVisible:{type:Boolean},namespace:{},queueCount:{},isDeleting:{type:Boolean},error:{}},emits:["cancel","confirm"],setup(e,{emit:t}){const s=e,n=t;function i(){s.isDeleting||n("cancel")}function r(){s.isDeleting||n("confirm")}return(o,l)=>(N(),at(Ss,{"is-visible":e.isVisible,title:"Delete Namespace",subtitle:"This action cannot be undone",icon:"bi bi-exclamation-triangle-fill",size:"sm",onClose:i},{body:qe(()=>[a("div",Hq,[a("section",Gq,[a("p",Wq,[l[0]||(l[0]=te(" Are you sure you want to permanently delete the namespace ",-1)),a("strong",{class:"namespace-identifier",title:e.namespace??""},q(e.namespace),9,zq),l[1]||(l[1]=te(" ? ",-1))]),a("div",Yq,[a("div",Zq,[l[2]||(l[2]=a("span",{class:"detail-label"},"Queues in namespace:",-1)),a("span",Jq,q(e.queueCount),1)])])]),l[5]||(l[5]=a("section",{class:"warning-section","aria-live":"polite"},[a("div",{class:"warning-content"},[a("div",{class:"warning-icon","aria-hidden":"true"},[a("i",{class:"bi bi-shield-exclamation"})]),a("div",{class:"warning-text"},[a("h4",{class:"warning-title"},"Warning"),a("ul",{class:"warning-list"},[a("li",null," All queues in this namespace will be permanently deleted "),a("li",null,"All messages in these queues will be lost"),a("li",null," Ensure all consumers connected to these queues are disconnected "),a("li",null,"This action cannot be reversed")])])])],-1)),e.error?(N(),P("section",Xq,[a("div",eL,[l[4]||(l[4]=a("div",{class:"error-icon","aria-hidden":"true"},[a("i",{class:"bi bi-exclamation-circle-fill"})],-1)),a("div",tL,[l[3]||(l[3]=a("h4",{class:"error-title"},"Deletion Failed",-1)),a("p",sL,q(e.error),1)])])])):he("",!0)])]),footer:qe(()=>[a("div",nL,[a("button",{class:"btn btn-outline-secondary",type:"button",disabled:e.isDeleting,onClick:i},[...l[6]||(l[6]=[a("i",{class:"bi bi-x-circle me-2","aria-hidden":"true"},null,-1),te(" Cancel ",-1)])],8,iL),a("button",{class:"btn btn-danger",type:"button",disabled:e.isDeleting,onClick:r},[e.isDeleting?(N(),P(Ae,{key:0},[l[7]||(l[7]=a("span",{class:"spinner-border spinner-border-sm me-2",role:"status","aria-hidden":"true"},null,-1)),l[8]||(l[8]=te(" Deleting... ",-1))],64)):(N(),P(Ae,{key:1},[l[9]||(l[9]=a("i",{class:"bi bi-trash-fill me-2","aria-hidden":"true"},null,-1)),l[10]||(l[10]=te(" Delete Namespace ",-1))],64))],8,rL)])]),_:1},8,["is-visible"]))}}),oL=Xe(aL,[["__scopeId","data-v-221b2a02"]]);function lL(){const e=JT(),t=b(()=>e.data.value),s=b(()=>e.isLoading.value),n=b(()=>e.error.value),i=b(()=>t.value?.data.length?[...t.value.data].sort((u,d)=>u.name.localeCompare(d.name)):[]),r=b(()=>u=>t.value?.data?t.value.data.filter(d=>d.ns===u).length:0);function o(u){return t.value?.data?t.value.data.filter(d=>d.ns===u):[]}function l(u,d){return o(u).find(h=>h.name===d)}return{queuesQuery:e,queues:t,isLoadingQueues:s,queuesError:n,sortedQueues:i,getNamespaceQueueCount:r,getQueuesInNamespace:o,findQueueInNamespace:l,refetchQueues:e.refetch}}const uL={key:0,class:"alert alert-warning alert-dismissible fade show mb-4",role:"alert"},cL={class:"namespaces-grid"},dL="Namespaces",fL="Organize and manage your message queue namespaces",hL=Ue({__name:"NamespacesView",setup(e){const t=os(),s=Dv(),n=lL(),i=It(),r=Jo(),o=Xt(),{data:l,isLoading:u,refetch:d}=Hg(),c=be(!1),h=be(null),m=b(()=>s.sortedNamespaces.value),p=b(()=>s.isLoadingNamespaces.value||u.value),v=b(()=>s.namespacesError.value),E=b(()=>s.isDeletingNamespace.value),_=b(()=>dt(s.deleteNamespaceError.value?.error)),S=b(()=>m.value.length>0),C=b(()=>l.value?.data||[]),A=H=>C.value.filter(z=>z.ns===H).length,g=b(()=>[{id:"refresh-namespaces",label:"Refresh",icon:"bi bi-arrow-clockwise",variant:"primary",disabled:p.value,loading:p.value,handler:$,tooltip:"Refresh namespaces and exchanges data"}]);function $(){s.refreshNamespaces(),d()}function L(){t.push({name:"Queues"})}function V(H){r.selectNamespace(H),t.push({name:"Namespace Queues",params:{ns:H}})}function I(H){r.selectNamespace(H),t.push({name:"Namespace Exchanges",params:{ns:H}})}function w(H){i.selectQueue(H.ns,H.name),t.push({name:"Queue",params:{ns:H.ns,queue:H.name}})}function O(H){h.value=H,c.value=!0}function x(){c.value=!1,h.value=null}async function F(){if(h.value)try{await s.deleteNamespace(h.value),x(),d()}catch(H){console.error("Failed to delete namespace:",H)}}return At(()=>{o.setPageHeader({title:dL,subtitle:fL,icon:"bi bi-folder"}),o.setPageActions(g.value),o.setLoadingState(p.value),v.value?(o.setErrorState(dt(v.value)),o.setEmptyState(!1)):!p.value&&!S.value?(o.setErrorState(null),o.setEmptyState(!0,{icon:"bi bi-folder-plus",title:"No Namespaces Found",message:"Namespaces are created automatically when you create queues. Start by creating your first queue.",actionLabel:"Create Queue",actionHandler:L})):(o.setErrorState(null),o.setEmptyState(!1))}),At(()=>{i.clearSelectedQueue()}),Bt(()=>{$()}),(H,z)=>(N(),P("div",null,[we(ms,null,{default:qe(()=>[_.value&&!c.value?(N(),P("div",uL,[z[1]||(z[1]=a("i",{class:"bi bi-exclamation-triangle-fill me-2"},null,-1)),te(" "+q(T(dt)(_.value))+" ",1),a("button",{type:"button",class:"btn-close","aria-label":"Close",onClick:z[0]||(z[0]=fe=>T(s).deleteNamespaceMutation.reset())})])):he("",!0),a("div",cL,[(N(!0),P(Ae,null,bt(m.value,fe=>(N(),at(Kq,{key:fe,namespace:fe,"queue-count":T(n).getNamespaceQueueCount.value(fe),"exchange-count":A(fe),"recent-queues":T(n).getQueuesInNamespace(fe).slice(0,3),"is-deleting":E.value&&h.value===fe,onClick:ie=>V(fe),onQueueClick:w,onDelete:O,onViewExchanges:I},null,8,["namespace","queue-count","exchange-count","recent-queues","is-deleting","onClick"]))),128))])]),_:1}),we(oL,{"is-visible":c.value,namespace:h.value,"queue-count":h.value?T(n).getNamespaceQueueCount.value(h.value):0,"is-deleting":E.value,error:_.value,onCancel:x,onConfirm:F},null,8,["is-visible","namespace","queue-count","is-deleting","error"])]))}}),Iv=Xe(hL,[["__scopeId","data-v-d9e0902c"]]),pL=Object.freeze(Object.defineProperty({__proto__:null,default:Iv},Symbol.toStringTag,{value:"Module"})),mL=(e,t,s)=>(e=T(e),t=T(t),Je({url:`/api/v1/namespaces/${e}/queues/${t}/consumer-groups`,method:"GET",signal:s})),gL=(e,t)=>["api","v1","namespaces",e,"queues",t,"consumer-groups"],vL=(e,t,s)=>{const{query:n}=s??{};return{queryKey:gL(e,t),queryFn:({signal:o})=>mL(e,t,o),enabled:b(()=>!!(T(e)&&T(t))),...n}};function bL(e,t,s,n){const i=vL(e,t,s),r=Jt(i);return r.queryKey=T(i).queryKey,r}const yL=(e,t,s,n)=>(e=T(e),t=T(t),s=T(s),Je({url:`/api/v1/namespaces/${e}/queues/${t}/consumer-groups`,method:"POST",headers:{"Content-Type":"application/json"},data:s,signal:n})),_L=e=>{const t=["postApiV1NamespacesNsQueuesNameConsumerGroups"],{mutation:s}=e?e.mutation&&"mutationKey"in e.mutation&&e.mutation.mutationKey?e:{...e,mutation:{...e.mutation,mutationKey:t}}:{mutation:{mutationKey:t}};return{mutationFn:i=>{const{ns:r,name:o,data:l}=i??{};return yL(r,o,l)},...s}},EL=(e,t)=>{const s=_L(e);return Nt(s)},wL=(e,t,s)=>(e=T(e),t=T(t),s=T(s),Je({url:`/api/v1/namespaces/${e}/queues/${t}/consumer-groups/${s}`,method:"DELETE"})),CL=e=>{const t=["deleteApiV1NamespacesNsQueuesNameConsumerGroupsConsumerGroupId"],{mutation:s}=e?e.mutation&&"mutationKey"in e.mutation&&e.mutation.mutationKey?e:{...e,mutation:{...e.mutation,mutationKey:t}}:{mutation:{mutationKey:t}};return{mutationFn:i=>{const{ns:r,name:o,consumerGroupId:l}=i??{};return wL(r,o,l)},...s}},AL=(e,t)=>{const s=CL(e);return Nt(s)};function qv(){const e=It(),t=Dn(),s=b(()=>e.selectedQueue),n=bL(b(()=>s.value?.ns||""),b(()=>s.value?.name||""),{query:{enabled:b(()=>!!s.value&&t.isPubSubQueue)}}),i=EL({mutation:{onSuccess:async()=>{await n.refetch()}}}),r=AL({mutation:{onSuccess:async()=>{await n.refetch()}}}),o=b(()=>n.data.value),l=b(()=>n.isLoading.value),u=b(()=>i.isPending.value),d=b(()=>r.isPending.value),c=b(()=>l.value||u.value||d.value),h=b(()=>n.error.value),m=b(()=>i.error.value),p=b(()=>r.error.value),v=b(()=>h.value||m.value||p.value),E=b(()=>t.isPubSubQueue&&!!o.value?.data&&Array.isArray(o.value.data)&&o.value.data.length>0),_=b(()=>o.value?.data?[...o.value.data].sort((O,x)=>O.localeCompare(x)):[]);async function S(O){if(!s.value)throw new Error("No queue selected");const x={consumerGroupId:O};await i.mutateAsync({ns:s.value.ns,name:s.value.name,data:x})}async function C(O){if(!s.value)throw new Error("No queue selected");await r.mutateAsync({ns:s.value.ns,name:s.value.name,consumerGroupId:O})}async function A(){await n.refetch()}function g(){return!s.value||!t.isPubSubQueue?Promise.resolve():n.refetch()}function $(){i.reset()}function L(){r.reset()}function V(){i.reset(),r.reset()}function I(O){return/^[a-zA-Z0-9_-]+$/.test(O)&&O.length>=1&&O.length<=50}function w(O){return o.value?.data?o.value.data.includes(O):!1}return{consumerGroupsQuery:n,createConsumerGroupMutation:i,deleteConsumerGroupMutation:r,consumerGroups:o,isLoading:c,isLoadingConsumerGroups:l,isCreatingConsumerGroup:u,isDeletingConsumerGroup:d,error:v,consumerGroupsError:h,createConsumerGroupError:m,deleteConsumerGroupError:p,hasConsumerGroups:E,sortedConsumerGroups:_,createConsumerGroup:S,deleteConsumerGroup:C,refreshConsumerGroups:A,refetchConsumerGroupsData:g,resetCreateConsumerGroupMutation:$,resetDeleteConsumerGroupMutation:L,resetAllMutations:V,isValidConsumerGroupId:I,consumerGroupExists:w}}const SL={class:"consumer-group-selector"},xL={key:0,class:"section-header"},$L={key:0,class:"section-meta"},TL={key:1,class:"state-container loading-state"},OL={key:2,class:"consumer-groups-grid"},NL=["aria-label","onClick","onKeydown"],kL={class:"card-header"},PL={class:"group-info"},DL={class:"group-name"},RL={key:3,class:"state-container empty-state"},ML={class:"state-content"},IL={class:"state-description"},qL={key:0,class:"state-actions"},LL=Ue({__name:"ConsumerGroupSelector",props:{showSectionHeader:{type:Boolean,default:!0}},setup(e){const t=It(),s=qv(),n=os(),i=b(()=>t.selectedQueue),r=b(()=>s.sortedConsumerGroups.value),o=b(()=>s.hasConsumerGroups.value),l=b(()=>s.isLoading.value),u=b(()=>{const m=r.value.length;return`${m} group${m!==1?"s":""} found`}),d=b(()=>i.value?`${i.value.ns}/${i.value.name}`:"");function c(m){i.value&&n.push({name:"Pending Messages",params:{ns:i.value.ns,queue:i.value.name},query:{consumerGroupId:m}})}function h(){i.value&&s.consumerGroupsQuery.refetch()}return(m,p)=>(N(),P("div",SL,[e.showSectionHeader?(N(),P("header",xL,[p[0]||(p[0]=a("h2",{class:"section-title"},"Consumer Groups",-1)),o.value&&!l.value?(N(),P("div",$L,q(u.value),1)):he("",!0)])):he("",!0),l.value?(N(),P("div",TL,[...p[1]||(p[1]=[a("div",{class:"state-content"},[a("div",{class:"loading-spinner"},[a("i",{class:"bi bi-arrow-clockwise"})]),a("p",{class:"state-text"},"Loading consumer groups...")],-1)])])):o.value?(N(),P("div",OL,[(N(!0),P(Ae,null,bt(r.value,v=>(N(),P("article",{key:v,class:"consumer-group-card",role:"button",tabindex:"0","aria-label":`View pending messages for consumer group ${v}`,onClick:E=>c(v),onKeydown:[an(E=>c(v),["enter"]),an(Ft(E=>c(v),["prevent"]),["space"])]},[a("div",kL,[p[3]||(p[3]=a("div",{class:"group-icon"},[a("i",{class:"bi bi-people-fill"})],-1)),a("div",PL,[a("h3",DL,q(v),1),p[2]||(p[2]=a("span",{class:"group-type"},"Consumer Group",-1))])]),p[4]||(p[4]=a("div",{class:"card-footer"},[a("span",{class:"action-hint"},[a("i",{class:"bi bi-eye"}),te(" View pending messages ")]),a("i",{class:"bi bi-arrow-right action-arrow"})],-1))],40,NL))),128))])):(N(),P("div",RL,[a("div",ML,[p[8]||(p[8]=a("div",{class:"state-icon"},[a("i",{class:"bi bi-people"})],-1)),p[9]||(p[9]=a("h3",{class:"state-title"},"No Consumer Groups Found",-1)),a("p",IL,[i.value?(N(),P(Ae,{key:0},[p[5]||(p[5]=te(" The queue ",-1)),a("strong",null,q(d.value),1),p[6]||(p[6]=te(" doesn't have any consumer groups yet. Consumer groups are created automatically when consumers start subscribing to this pub/sub queue. ",-1))],64)):(N(),P(Ae,{key:1},[te(" Select a pub/sub queue to view its consumer groups. ")],64))]),i.value?(N(),P("div",qL,[a("button",{type:"button",class:"btn btn-secondary",onClick:h},[...p[7]||(p[7]=[a("i",{class:"bi bi-arrow-clockwise"},null,-1),te(" Refresh ",-1)])])])):he("",!0),p[10]||(p[10]=a("details",{class:"help-section"},[a("summary",{class:"help-summary"},[a("i",{class:"bi bi-question-circle"}),te(" What are consumer groups? ")]),a("div",{class:"help-content"},[a("p",null," Consumer groups allow multiple consumers to work together to process messages from a pub/sub queue. Each message is delivered to only one consumer within the group, enabling load balancing and parallel processing. "),a("ul",null,[a("li",null," Consumer groups are created automatically when consumers connect "),a("li",null," Each group maintains its own message offset and processing state "),a("li",null,"Groups enable horizontal scaling of message processing")])])],-1))])]))]))}}),FL=Xe(LL,[["__scopeId","data-v-2c88981d"]]),VL=(e,t,s,n)=>(e=T(e),t=T(t),s=T(s),Je({url:`/api/v1/namespaces/${e}/queues/${t}/pending-messages`,method:"GET",params:T(s),signal:n}));function QL(e,t,s=20){const n=b(()=>{const r={};return t.value&&(r.consumerGroupId=t.value),r});return la(e,{queryFn:async({ns:r,name:o,page:l,pageSize:u,extraParams:d={}})=>{const c={page:l,pageSize:u};return d.consumerGroupId&&(c.consumerGroupId=String(d.consumerGroupId)),VL(r,o,c)},queryKeyPrefix:"pending-messages",enableDelete:!0,enableRequeue:!1},s,n)}const jL={key:0,class:"loading-state"},BL=Ue({__name:"PendingMessagesView",setup(e){const t=It(),s=Dn(),n=Xt(),i=ps(),r=b(()=>i.params.ns),o=b(()=>i.params.queue),l=b(()=>i.query.consumerGroupId),u=b(()=>!r.value||!o.value?null:{ns:r.value,name:o.value});Ye([r,o],([Z,W])=>{Z&&W&&t.selectQueue(Z,W)},{immediate:!0});const d=b(()=>t.selectedQueue),c=b(()=>s.isPubSubQueue),h=b(()=>s.isLoadingQueueProperties),m=b(()=>s.queueProperties),p=b(()=>d.value&&m.value&&c.value&&!l.value),v=b(()=>d.value&&m.value&&(!c.value||l.value)),E=b(()=>d.value&&h.value),_=b(()=>v.value?u.value:null),{messages:S,pagination:C,isLoading:A,isDeleting:g,isRequeuing:$,error:L,goToPage:V,setPageSize:I,refresh:w,deleteMessage:O,requeueMessage:x}=QL(_,l,20),F=b(()=>{if(!d.value)return"Pending Messages";const Z=`${d.value.name}@${d.value.ns}`;return c.value&&l.value?`Pending Messages - ${Z} (${l.value})`:`Pending Messages - ${Z}`}),H=b(()=>{if(d.value)return h.value?"Loading queue properties...":c.value&&l.value?`Pub/Sub Queue • Consumer Group: ${l.value}`:c.value?"Pub/Sub Queue • Select Consumer Group":"Point-2-Point Queue"}),z=b(()=>c.value&&l.value?`No pending messages found for consumer group "${l.value}". Messages appear here when they are waiting to be processed by consumers in this group.`:"No pending messages found for this queue. Messages appear here when they are waiting to be processed.");At(()=>{n.setPageHeader({title:F.value,subtitle:H.value,icon:"bi bi-hourglass-split"})}),At(()=>{if(!d.value){n.setEmptyState(!0,{icon:"bi bi-inbox",title:"No Queue Selected",message:"Please select a queue from the sidebar to view its pending messages."}),n.setPageActions([]),n.setLoadingState(!1),n.setErrorState(null);return}if(h.value){n.setLoadingState(!0),n.setErrorState(null),n.setEmptyState(!1),n.setPageActions([]);return}n.setLoadingState(!1),n.setErrorState(null),n.setEmptyState(!1),n.setPageActions([])});async function fe(Z){O&&await O(Z)}async function ie(Z){x&&await x(Z)}function G(Z){V(Z)}async function X(Z){await I(Z)}return(Z,W)=>(N(),at(ms,{"show-section-header":!1},{default:qe(()=>[E.value?(N(),P("div",jL,[...W[4]||(W[4]=[a("div",{class:"d-flex justify-content-center align-items-center py-5"},[a("div",{class:"spinner-border text-primary me-3",role:"status"},[a("span",{class:"visually-hidden"},"Loading...")]),a("span",{class:"text-muted"},"Loading queue properties...")],-1)])])):p.value?(N(),at(FL,{key:1,"show-section-header":!1})):v.value?(N(),at(oa,{key:2,messages:T(S),"is-loading":T(A),error:T(L),pagination:T(C),"show-pagination":!0,"empty-message":z.value,icon:"bi-hourglass-split","is-deleting":T(g),"is-requeuing":T($),onRefresh:T(w),onDeleteMessage:fe,onRequeueMessage:ie,onPageChange:G,onPageSizeChange:X,onFirstPage:W[0]||(W[0]=se=>G(1)),onPreviousPage:W[1]||(W[1]=se=>G(T(C).currentPage-1)),onNextPage:W[2]||(W[2]=se=>G(T(C).currentPage+1)),onLastPage:W[3]||(W[3]=se=>G(T(C).totalPages))},null,8,["messages","is-loading","error","pagination","empty-message","is-deleting","is-requeuing","onRefresh"])):he("",!0)]),_:1}))}}),UL=Xe(BL,[["__scopeId","data-v-30086d3d"]]);function KL(e){Ye(e.map(t=>t.isVisible),t=>{if(t.some(n=>n)){const n=i=>{if(i.key==="Escape"){for(const r of e)if(r.isVisible.value){r.onEscape();break}}};return window.addEventListener("keydown",n),()=>{window.removeEventListener("keydown",n)}}},{immediate:!0})}const HL={class:"queue-info-card"},GL={class:"card-header"},WL={class:"header-actions"},zL=["disabled"],YL={class:"card-content"},ZL={key:0,class:"content-state loading-state"},JL={key:1,class:"content-state error-state",role:"alert"},XL={class:"error-content"},eF={key:2,class:"queue-details-wrapper"},tF={class:"info-section"},sF={class:"info-grid"},nF={class:"info-item"},iF={class:"info-content"},rF={class:"info-details"},aF={class:"info-value"},oF=["title"],lF={class:"info-item"},uF={class:"info-content"},cF={class:"info-details"},dF={class:"info-value"},fF=["title"],hF={class:"info-item"},pF={class:"info-content"},mF={class:"info-details"},gF={class:"info-value"},vF=["title"],bF={class:"info-item"},yF={class:"info-content"},_F={class:"info-details"},EF={class:"info-value"},wF=["title"],CF={class:"info-section"},AF={class:"info-grid"},SF={class:"info-item"},xF={class:"info-content"},$F={class:"info-details"},TF={class:"info-value"},OF={class:"rate-limit"},NF={class:"info-section"},kF={class:"info-grid stats-grid"},PF=["role","onClick"],DF={class:"info-content"},RF={class:"info-details"},MF={class:"info-label"},IF={class:"info-value stat-value"},qF={key:0,class:"info-arrow","aria-hidden":"true"},LF={key:3,class:"content-state empty-state"},FF=Ue({__name:"QueuePropertiesCard",setup(e){const t=It(),s=Dn(),n=os(),i=b(()=>t.selectedQueue),r=b(()=>s.queueProperties?.data),o=b(()=>s.isLoadingQueueProperties),l=b(()=>{const A=s.queuePropertiesError?.error;return A?`Failed to load queue information: ${A.message}`:null}),u=b(()=>r.value?[{label:"Pending",value:r.value.pendingMessagesCount,icon:"bi-clock-history",iconClass:"pending-icon",routeName:"Pending Messages"},{label:"Dead-lettered",value:r.value.deadLetteredMessagesCount,icon:"bi-x-octagon-fill",iconClass:"dead-lettered-icon",routeName:"Dead-Lettered Messages"},{label:"Processing",value:r.value.processingMessagesCount,icon:"bi-hourglass-split",iconClass:"processing-icon",routeName:null},{label:"Acknowledged",value:r.value.acknowledgedMessagesCount,icon:"bi-check-circle-fill",iconClass:"acknowledged-icon",routeName:"Acknowledged Messages"},{label:"Scheduled",value:r.value.scheduledMessagesCount,icon:"bi-calendar-plus-fill",iconClass:"scheduled-icon",routeName:"Scheduled Messages"},{label:"Requeued",value:r.value.requeuedMessagesCount,icon:"bi-arrow-repeat",iconClass:"requeued-icon",routeName:null},{label:"Delayed",value:r.value.delayedMessagesCount,icon:"bi-stopwatch-fill",iconClass:"delayed-icon",routeName:null},{label:"Total Messages",value:r.value.messagesCount,icon:"bi-collection-fill",iconClass:"total-icon",routeName:"Messages"}]:[]);function d(A){!A||!i.value||n.push({name:A,params:{ns:i.value.ns,queue:i.value.name}})}function c(){s.refreshQueueProperties()}function h(A){return A===null||typeof A>"u"?"0":A.toLocaleString()}function m(A){switch(A){case Ht.FIFO_QUEUE:return"FIFO";case Ht.LIFO_QUEUE:return"LIFO";case Ht.PRIORITY_QUEUE:return"Priority";default:return"Unknown"}}function p(A){switch(A){case Ht.FIFO_QUEUE:return"queue-type-fifo";case Ht.LIFO_QUEUE:return"queue-type-lifo";case Ht.PRIORITY_QUEUE:return"queue-type-priority";default:return"queue-type-unknown"}}function v(A){switch(A){case Ht.FIFO_QUEUE:return"First In, First Out - Messages processed in order";case Ht.LIFO_QUEUE:return"Last In, First Out - Most recent messages processed first";case Ht.PRIORITY_QUEUE:return"Priority-based - Higher priority messages processed first";default:return"Unknown queue processing order"}}function E(A){switch(A){case us.POINT_TO_POINT:return"Point-to-Point";case us.PUB_SUB:return"Pub/Sub";default:return"Unknown"}}function _(A){switch(A){case us.POINT_TO_POINT:return"delivery-model-p2p";case us.PUB_SUB:return"delivery-model-pubsub";default:return"delivery-model-unknown"}}function S(A){switch(A){case us.POINT_TO_POINT:return"One-to-one message delivery between producer and consumer";case us.PUB_SUB:return"One-to-many message delivery to multiple subscribers";default:return"Unknown message delivery pattern"}}function C(A){if(!A||!A.limit||!A.interval)return"None";const g=A.interval/1e3;return`${A.limit} msg / ${g}s`}return(A,g)=>(N(),P("div",HL,[a("header",GL,[g[0]||(g[0]=a("div",{class:"header-content"},[a("h3",{class:"card-title"},[a("i",{class:"bi bi-info-circle-fill title-icon"}),te(" Queue Details ")]),a("p",{class:"card-subtitle"}," Configuration and real-time statistics for the selected queue ")],-1)),a("div",WL,[a("button",{class:"btn btn-refresh",disabled:o.value,"aria-label":"Refresh queue information",title:"Refresh queue information",onClick:c},[a("i",{class:De(["bi bi-arrow-clockwise",{spinning:o.value}])},null,2)],8,zL)])]),a("main",YL,[o.value?(N(),P("div",ZL,[...g[1]||(g[1]=[a("div",{class:"state-content"},[a("div",{class:"spinner-border text-primary mb-2",role:"status","aria-live":"polite","aria-label":"Loading queue"}),a("h5",{class:"state-title"},"Loading...")],-1)])])):l.value?(N(),P("div",JL,[a("div",XL,[g[2]||(g[2]=a("i",{class:"bi bi-exclamation-triangle-fill text-danger me-2","aria-hidden":"true"},null,-1)),a("span",null,q(l.value),1)]),a("button",{class:"btn btn-sm btn-primary mt-2",onClick:c},[...g[3]||(g[3]=[a("i",{class:"bi bi-arrow-clockwise me-1","aria-hidden":"true"},null,-1),te(" Retry ",-1)])])])):i.value&&r.value?(N(),P("div",eF,[a("section",tF,[g[12]||(g[12]=a("h4",{class:"section-title"},[a("i",{class:"bi bi-gear-fill","aria-hidden":"true"}),te(" Configuration ")],-1)),a("div",sF,[a("div",nF,[a("div",iF,[g[5]||(g[5]=a("div",{class:"info-icon queue-name-icon"},[a("i",{class:"bi bi-tag-fill","aria-hidden":"true"})],-1)),a("div",rF,[g[4]||(g[4]=a("div",{class:"info-label"},"Queue Name",-1)),a("div",aF,[a("span",{class:"queue-name",title:i.value.name},q(i.value.name),9,oF)])])])]),a("div",lF,[a("div",uF,[g[7]||(g[7]=a("div",{class:"info-icon namespace-icon"},[a("i",{class:"bi bi-folder-fill","aria-hidden":"true"})],-1)),a("div",cF,[g[6]||(g[6]=a("div",{class:"info-label"},"Namespace",-1)),a("div",dF,[a("span",{class:"namespace",title:i.value.ns},q(i.value.ns),9,fF)])])])]),a("div",hF,[a("div",pF,[g[9]||(g[9]=a("div",{class:"info-icon queue-type-icon"},[a("i",{class:"bi bi-list-ol","aria-hidden":"true"})],-1)),a("div",mF,[g[8]||(g[8]=a("div",{class:"info-label"},"Queue Type",-1)),a("div",gF,[a("span",{class:De(["queue-type-badge",p(r.value.queueType)]),title:v(r.value.queueType)},q(m(r.value.queueType)),11,vF)])])])]),a("div",bF,[a("div",yF,[g[11]||(g[11]=a("div",{class:"info-icon delivery-model-icon"},[a("i",{class:"bi bi-arrow-left-right","aria-hidden":"true"})],-1)),a("div",_F,[g[10]||(g[10]=a("div",{class:"info-label"},"Delivery Model",-1)),a("div",EF,[a("span",{class:De(["delivery-model-badge",_(r.value.deliveryModel)]),title:S(r.value.deliveryModel)},q(E(r.value.deliveryModel)),11,wF)])])])])])]),a("section",CF,[g[15]||(g[15]=a("h4",{class:"section-title"},[a("i",{class:"bi bi-speedometer2","aria-hidden":"true"}),te(" Rate Limit ")],-1)),a("div",AF,[a("div",SF,[a("div",xF,[g[14]||(g[14]=a("div",{class:"info-icon rate-limit-icon"},[a("i",{class:"bi bi-speedometer2","aria-hidden":"true"})],-1)),a("div",$F,[g[13]||(g[13]=a("div",{class:"info-label"},"Current Limit",-1)),a("div",TF,[a("span",OF,q(C(r.value.rateLimit)),1)])])])])])]),a("section",NF,[g[17]||(g[17]=a("h4",{class:"section-title"},[a("i",{class:"bi bi-bar-chart-line-fill","aria-hidden":"true"}),te(" Message Statistics ")],-1)),a("div",kF,[(N(!0),P(Ae,null,bt(u.value,$=>(N(),P("div",{key:$.label,class:De(["info-item stat-item",{clickable:!!$.routeName}]),role:$.routeName?"link":"listitem",onClick:L=>d($.routeName)},[a("div",DF,[a("div",{class:De(["info-icon",$.iconClass])},[a("i",{class:De($.icon),"aria-hidden":"true"},null,2)],2),a("div",RF,[a("div",MF,q($.label),1),a("div",IF,q(h($.value)),1)]),$.routeName?(N(),P("div",qF,[...g[16]||(g[16]=[a("i",{class:"bi bi-chevron-right"},null,-1)])])):he("",!0)])],10,PF))),128))])])])):(N(),P("div",LF,[...g[18]||(g[18]=[a("div",{class:"state-content"},[a("div",{class:"empty-icon","aria-hidden":"true"},"📋"),a("h4",{class:"state-title"},"No Queue Selected"),a("p",{class:"state-subtitle"},"Select a queue to view its properties")],-1)])]))])]))}}),VF=Xe(FF,[["__scopeId","data-v-38070cee"]]),QF=Pc({consumerGroupName:yo().min(2,{message:"Name must be at least 2 characters"}).max(64,{message:"Name must be at most 64 characters"}).regex(/^[a-zA-Z0-9_-]+$/,{message:"Only letters, numbers, underscores, and hyphens are allowed"})});function jF(){const e=Dc(QF),{errors:t,values:s,meta:n,resetForm:i,handleSubmit:r,setFieldValue:o,setValues:l}=Yo({validationSchema:e});return{errors:t,values:s,meta:n,resetForm:i,handleSubmit:r,setFieldValue:o,setValues:l,validationSchema:e}}const BF={class:"form-content"},UF={class:"form-section"},KF={class:"form-group"},HF={key:0,class:"error-section"},GF={class:"error-content"},WF={class:"error-text"},zF={class:"error-message"},YF=["disabled"],ZF=["disabled"],JF=Ue({__name:"CreateConsumerGroupModal",props:{isVisible:{type:Boolean},isCreating:{type:Boolean},createError:{}},emits:["close","submit"],setup(e,{emit:t}){const s={mounted:c=>c.focus()},n=e,{errors:i,resetForm:r,validationSchema:o}=jF();Ye(()=>n.isVisible,c=>{c||r()});const l=t;function u(c){l("submit",c)}function d(){l("close")}return(c,h)=>(N(),at(Ss,{"is-visible":e.isVisible,title:"Create Consumer Group",subtitle:"Add a new consumer group for message processing",icon:"bi bi-people-fill",size:"md",onClose:d},{body:qe(()=>[we(T(yv),{id:"create-consumer-group-form","validation-schema":T(o),onSubmit:u},{default:qe(()=>[a("div",BF,[a("section",UF,[h[2]||(h[2]=a("div",{class:"section-header"},[a("h3",{class:"section-title"},[a("i",{class:"bi bi-info-circle-fill section-icon"}),te(" Group Information ")]),a("p",{class:"section-description"}," Define the consumer group identifier ")],-1)),a("div",KF,[h[0]||(h[0]=a("label",{for:"consumerGroupName",class:"form-label"},[a("i",{class:"bi bi-tag-fill label-icon"}),te(" Consumer Group Name "),a("span",{class:"required-indicator"},"*")],-1)),ss(we(T(Ns),{id:"consumerGroupName",name:"consumerGroupName",type:"text",placeholder:"e.g. email-processors",class:De(["form-control",{error:T(i).consumerGroupName}]),autocomplete:"off","aria-describedby":"consumerGroupName-help consumerGroupName-error"},null,8,["class"]),[[s]]),we(T(Jn),{id:"consumerGroupName-error",name:"consumerGroupName",class:"field-error"}),h[1]||(h[1]=a("div",{id:"consumerGroupName-help",class:"field-help"},[a("i",{class:"bi bi-lightbulb help-icon"}),te(" Use letters, numbers, underscores, and hyphens only ")],-1))])]),h[5]||(h[5]=a("section",{class:"benefits-section"},[a("div",{class:"benefits-header"},[a("h4",{class:"benefits-title"},[a("i",{class:"bi bi-check-circle-fill me-2"}),te(" Consumer Group Benefits ")])]),a("div",{class:"benefits-list"},[a("div",{class:"benefit-item"},[a("i",{class:"bi bi-arrow-right benefit-icon"}),a("span",null,"Parallel message processing across multiple consumers")]),a("div",{class:"benefit-item"},[a("i",{class:"bi bi-arrow-right benefit-icon"}),a("span",null,"Automatic load balancing and fault tolerance")]),a("div",{class:"benefit-item"},[a("i",{class:"bi bi-arrow-right benefit-icon"}),a("span",null,"Scalable message consumption patterns")])])],-1)),e.createError?(N(),P("div",HF,[a("div",GF,[h[4]||(h[4]=a("div",{class:"error-icon"},[a("i",{class:"bi bi-exclamation-triangle-fill"})],-1)),a("div",WF,[h[3]||(h[3]=a("h4",{class:"error-title"},"Creation Failed",-1)),a("p",zF,q(e.createError),1)])])])):he("",!0)])]),_:1},8,["validation-schema"])]),footer:qe(()=>[a("button",{type:"button",class:"btn btn-secondary",disabled:e.isCreating,onClick:d},[...h[6]||(h[6]=[a("i",{class:"bi bi-x-circle me-2"},null,-1),te(" Cancel ",-1)])],8,YF),a("button",{type:"submit",class:"btn btn-primary",disabled:e.isCreating,form:"create-consumer-group-form"},[e.isCreating?(N(),P(Ae,{key:0},[h[7]||(h[7]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),h[8]||(h[8]=te(" Creating Group... ",-1))],64)):(N(),P(Ae,{key:1},[h[9]||(h[9]=a("i",{class:"bi bi-check-circle me-2"},null,-1)),h[10]||(h[10]=te(" Create Consumer Group ",-1))],64))],8,ZF)]),_:1},8,["is-visible"]))}}),XF=Xe(JF,[["__scopeId","data-v-0a3bbba0"]]),e2={class:"dialog-body"},t2={class:"confirmation-message"},s2={class:"consumer-group-details"},n2={class:"group-info"},i2={class:"group-content"},r2=["title"],a2={key:0,class:"error-section",role:"alert"},o2={class:"error-content"},l2={class:"error-text"},u2={class:"error-message"},c2={class:"actions"},d2=["disabled"],f2=["disabled"],h2=Ue({__name:"DeleteConsumerGroupModal",props:{isVisible:{type:Boolean},isPending:{type:Boolean},error:{},consumerGroup:{}},emits:["close","delete"],setup(e,{emit:t}){const s=t;function n(){s("delete")}function i(){s("close")}return(r,o)=>(N(),at(Ss,{"is-visible":e.isVisible,title:"Delete Consumer Group",subtitle:"This action cannot be undone",icon:"bi bi-exclamation-triangle-fill",size:"sm",onClose:i},{body:qe(()=>[a("div",e2,[a("section",t2,[o[2]||(o[2]=a("p",{class:"message-text"}," Are you sure you want to permanently delete the following consumer group? ",-1)),a("div",s2,[a("div",n2,[o[1]||(o[1]=a("div",{class:"group-icon"},[a("i",{class:"bi bi-people-fill","aria-hidden":"true"})],-1)),a("div",i2,[o[0]||(o[0]=a("div",{class:"group-label"},"Consumer Group",-1)),a("div",{class:"group-name",title:e.consumerGroup},q(e.consumerGroup),9,r2)])])])]),o[5]||(o[5]=a("section",{class:"warning-section","aria-live":"polite"},[a("div",{class:"warning-content"},[a("div",{class:"warning-icon"},[a("i",{class:"bi bi-shield-exclamation","aria-hidden":"true"})]),a("div",{class:"warning-text"},[a("h4",{class:"warning-title"},"Warning"),a("ul",{class:"warning-list"},[a("li",null,"All consumers in this group will be disconnected"),a("li",null,"Message processing for this group will stop immediately"),a("li",null,"This action cannot be reversed")])])])],-1)),e.error?(N(),P("section",a2,[a("div",o2,[o[4]||(o[4]=a("div",{class:"error-icon"},[a("i",{class:"bi bi-exclamation-circle-fill","aria-hidden":"true"})],-1)),a("div",l2,[o[3]||(o[3]=a("h4",{class:"error-title"},"Deletion Failed",-1)),a("p",u2,q(e.error),1)])])])):he("",!0)])]),footer:qe(()=>[a("div",c2,[a("button",{type:"button",class:"btn btn-outline-secondary",disabled:e.isPending,onClick:i},[...o[6]||(o[6]=[a("i",{class:"bi bi-x-circle me-2","aria-hidden":"true"},null,-1),te(" Cancel ",-1)])],8,d2),a("button",{type:"button",class:"btn btn-danger",disabled:e.isPending,onClick:n},[e.isPending?(N(),P(Ae,{key:0},[o[7]||(o[7]=a("span",{class:"spinner-border spinner-border-sm me-2",role:"status","aria-hidden":"true"},null,-1)),o[8]||(o[8]=te(" Deleting Group... ",-1))],64)):(N(),P(Ae,{key:1},[o[9]||(o[9]=a("i",{class:"bi bi-trash-fill me-2","aria-hidden":"true"},null,-1)),o[10]||(o[10]=te(" Delete Consumer Group ",-1))],64))],8,f2)])]),_:1},8,["is-visible"]))}}),p2=Xe(h2,[["__scopeId","data-v-5d5b710f"]]);function m2(){const e=ps(),t=b(()=>{const u=e.params.ns;return Array.isArray(u)?u[0]:u}),s=b(()=>{const u=e.params.queue;return Array.isArray(u)?u[0]:u}),n=b(()=>!!(t.value&&s.value)),i=b(()=>!!(t.value&&t.value.length>0)),r=b(()=>!!(s.value&&s.value.length>0)),o=b(()=>t.value||"Unknown"),l=b(()=>s.value||"Unknown");return{ns:t,queueName:s,hasValidParams:n,isValidNamespace:i,isValidQueueName:r,displayNamespace:o,displayQueueName:l}}const g2={key:0,class:"consumer-groups-card"},v2={class:"card-header"},b2={class:"header-actions"},y2=["disabled"],_2={class:"card-content"},E2={key:0,class:"content-state not-supported-state"},w2={key:0,class:"content-state loading-state"},C2={key:1,class:"content-state error-state"},A2={class:"error-content"},S2={class:"error-text"},x2={class:"error-message"},$2={key:2,class:"content-state empty-state"},T2={class:"state-content"},O2=["disabled"],N2={key:3,class:"consumer-groups-content"},k2={class:"groups-header"},P2={class:"groups-count"},D2={class:"count-number"},R2={class:"count-label"},M2=["disabled"],I2={class:"consumer-groups-list"},q2={class:"group-info"},L2={class:"group-details"},F2={class:"group-name"},V2={class:"group-actions"},Q2=["disabled","onClick"],j2=Ue({__name:"ConsumerGroupsCard",setup(e){const t=It(),s=Dn(),n=qv(),i=be(!1),r=be(!1),o=be(null),{ns:l,queueName:u}=m2();Ye([l,u],([w,O])=>{w&&O&&t.selectQueue(w,O)},{immediate:!0});function d(w){o.value=w,r.value=!0}function c(){r.value=!1,o.value=null}const h=b(()=>s.isPubSubQueue),m=b(()=>!h.value||!n.consumerGroups.value?.data?[]:n.sortedConsumerGroups.value),p=b(()=>n.hasConsumerGroups.value),v=b(()=>{const w=n.consumerGroupsError.value?.error;if(w)return w.message?w.message:"Failed to load consumer groups"}),E=b(()=>{const w=n.createConsumerGroupError.value?.error;if(w)return w.message?w.message:"Failed to create consumer group"}),_=b(()=>{const w=n.deleteConsumerGroupError.value?.error;if(w)return w.message?w.message:"Failed to delete consumer group"}),S=b(()=>n.isDeletingConsumerGroup.value),C=b(()=>n.isCreatingConsumerGroup.value),A=b(()=>n.isLoadingConsumerGroups.value);function g(){n.refreshConsumerGroups()}async function $(w){try{const O=w;await n.createConsumerGroup(O.consumerGroupName),i.value=!1}catch(O){console.error("Failed to create consumer group:",O)}}async function L(){if(o.value)try{await n.deleteConsumerGroup(o.value),c()}catch(w){console.error("Failed to delete consumer group:",w)}}function V(){i.value=!1,n.resetCreateConsumerGroupMutation()}function I(){c(),n.resetDeleteConsumerGroupMutation()}return(w,O)=>T(t).selectedQueue?(N(),P("div",g2,[a("header",v2,[O[2]||(O[2]=a("div",{class:"header-content"},[a("h3",{class:"card-title"},[a("i",{class:"bi bi-people-fill title-icon"}),te(" Consumer Groups ")]),a("p",{class:"card-subtitle"}," Manage message consumer groups for pub/sub queues ")],-1)),a("div",b2,[h.value?(N(),P("button",{key:0,class:"btn btn-refresh",disabled:A.value,title:"Refresh consumer groups",onClick:g},[a("i",{class:De(["bi bi-arrow-clockwise",{spinning:A.value}])},null,2)],8,y2)):he("",!0)])]),a("main",_2,[h.value?(N(),P(Ae,{key:1},[A.value?(N(),P("div",w2,[...O[4]||(O[4]=[a("div",{class:"state-content"},[a("div",{class:"spinner-border text-primary mb-3"}),a("h5",{class:"state-title"},"Loading consumer groups..."),a("p",{class:"state-subtitle"}," Please wait while we fetch the consumer groups ")],-1)])])):v.value?(N(),P("div",C2,[a("div",A2,[O[6]||(O[6]=a("div",{class:"error-icon"},[a("i",{class:"bi bi-exclamation-triangle-fill text-danger"})],-1)),a("div",S2,[O[5]||(O[5]=a("h5",{class:"error-title"},"Failed to load consumer groups",-1)),a("p",x2,q(v.value),1)])]),a("div",{class:"error-actions"},[a("button",{class:"btn btn-primary",onClick:g},[...O[7]||(O[7]=[a("i",{class:"bi bi-arrow-clockwise me-2"},null,-1),te(" Try Again ",-1)])])])])):p.value?(N(),P("div",N2,[a("div",k2,[a("div",P2,[a("span",D2,q(m.value.length),1),a("span",R2,"Consumer Group"+q(m.value.length!==1?"s":""),1)]),a("button",{class:"btn btn-primary btn-create",disabled:C.value,onClick:O[1]||(O[1]=x=>i.value=!0)},[C.value?(N(),P(Ae,{key:0},[O[13]||(O[13]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),O[14]||(O[14]=te(" Creating... ",-1))],64)):(N(),P(Ae,{key:1},[O[15]||(O[15]=a("i",{class:"bi bi-plus-circle me-2"},null,-1)),O[16]||(O[16]=te(" Create Group ",-1))],64))],8,M2)]),a("div",I2,[(N(!0),P(Ae,null,bt(m.value,x=>(N(),P("div",{key:x,class:"consumer-group-item"},[a("div",q2,[O[18]||(O[18]=a("div",{class:"group-icon"},[a("i",{class:"bi bi-people-fill"})],-1)),a("div",L2,[a("div",F2,q(x),1),O[17]||(O[17]=a("div",{class:"group-description"}," Consumer group for message processing ",-1))])]),a("div",V2,[a("button",{class:"btn btn-outline-danger btn-delete",disabled:S.value,title:"Delete consumer group",onClick:F=>d(x)},[S.value&&o.value===x?(N(),P(Ae,{key:0},[O[19]||(O[19]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),O[20]||(O[20]=te(" Deleting... ",-1))],64)):(N(),P(Ae,{key:1},[O[21]||(O[21]=a("i",{class:"bi bi-trash me-2"},null,-1)),O[22]||(O[22]=te(" Delete ",-1))],64))],8,Q2)])]))),128))])])):(N(),P("div",$2,[a("div",T2,[O[12]||(O[12]=ai('<div class="empty-icon" data-v-2744aa11>👥</div><h4 class="state-title" data-v-2744aa11>No Consumer Groups</h4><p class="state-subtitle" data-v-2744aa11> Organize consumers into groups to load-balance message consumption from a queue. Each message is delivered to only one consumer within a group. </p><div class="empty-benefits" data-v-2744aa11><div class="benefit-item" data-v-2744aa11><i class="bi bi-check-circle-fill benefit-icon" data-v-2744aa11></i><span data-v-2744aa11>Load-balance message processing within a group</span></div><div class="benefit-item" data-v-2744aa11><i class="bi bi-check-circle-fill benefit-icon" data-v-2744aa11></i><span data-v-2744aa11>Ensure each message is processed only once per group</span></div><div class="benefit-item" data-v-2744aa11><i class="bi bi-check-circle-fill benefit-icon" data-v-2744aa11></i><span data-v-2744aa11>Build fault-tolerant and scalable consumer systems</span></div></div>',4)),a("button",{class:"btn btn-primary btn-create-first",disabled:C.value,onClick:O[0]||(O[0]=x=>i.value=!0)},[C.value?(N(),P(Ae,{key:0},[O[8]||(O[8]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),O[9]||(O[9]=te(" Creating... ",-1))],64)):(N(),P(Ae,{key:1},[O[10]||(O[10]=a("i",{class:"bi bi-plus-circle me-2"},null,-1)),O[11]||(O[11]=te(" Create Your First Consumer Group ",-1))],64))],8,O2)])]))],64)):(N(),P("div",E2,[...O[3]||(O[3]=[ai('<div class="state-content" data-v-2744aa11><div class="not-supported-icon" data-v-2744aa11><i class="bi bi-info-circle-fill" data-v-2744aa11></i></div><h4 class="state-title" data-v-2744aa11>Consumer Groups Not Supported</h4><p class="state-subtitle" data-v-2744aa11> Point-to-point queues use direct messaging where messages are delivered directly to individual consumers. </p><div class="state-info" data-v-2744aa11><div class="info-item" data-v-2744aa11><i class="bi bi-arrow-right me-2" data-v-2744aa11></i><span data-v-2744aa11>Messages are consumed by a single consumer</span></div><div class="info-item" data-v-2744aa11><i class="bi bi-arrow-right me-2" data-v-2744aa11></i><span data-v-2744aa11>No message broadcasting or group management needed</span></div></div></div>',1)])]))]),we(XF,{"is-visible":i.value,"is-creating":C.value,"create-error":E.value,onSubmit:$,onClose:V},null,8,["is-visible","is-creating","create-error"]),we(p2,{error:_.value,"is-pending":S.value,"consumer-group":String(o.value),"is-visible":r.value,onClose:I,onDelete:L},null,8,["error","is-pending","consumer-group","is-visible"])])):he("",!0)}}),B2=Xe(j2,[["__scopeId","data-v-2744aa11"]]),U2=(e,t,s)=>(e=T(e),t=T(t),Je({url:`/api/v1/namespaces/${e}/queues/${t}/rate-limit`,method:"GET",signal:s})),K2=(e,t)=>["api","v1","namespaces",e,"queues",t,"rate-limit"],H2=(e,t,s)=>{const{query:n}=s??{};return{queryKey:K2(e,t),queryFn:({signal:o})=>U2(e,t,o),enabled:b(()=>!!(T(e)&&T(t))),...n}};function G2(e,t,s,n){const i=H2(e,t,s),r=Jt(i);return r.queryKey=T(i).queryKey,r}const W2=(e,t,s)=>(e=T(e),t=T(t),s=T(s),Je({url:`/api/v1/namespaces/${e}/queues/${t}/rate-limit`,method:"PUT",headers:{"Content-Type":"application/json"},data:s})),z2=e=>{const t=["putApiV1NamespacesNsQueuesNameRateLimit"],{mutation:s}=e?e.mutation&&"mutationKey"in e.mutation&&e.mutation.mutationKey?e:{...e,mutation:{...e.mutation,mutationKey:t}}:{mutation:{mutationKey:t}};return{mutationFn:i=>{const{ns:r,name:o,data:l}=i??{};return W2(r,o,l)},...s}},Y2=(e,t)=>{const s=z2(e);return Nt(s)},Z2=(e,t)=>(e=T(e),t=T(t),Je({url:`/api/v1/namespaces/${e}/queues/${t}/rate-limit`,method:"DELETE"})),J2=e=>{const t=["deleteApiV1NamespacesNsQueuesNameRateLimit"],{mutation:s}=e?e.mutation&&"mutationKey"in e.mutation&&e.mutation.mutationKey?e:{...e,mutation:{...e.mutation,mutationKey:t}}:{mutation:{mutationKey:t}};return{mutationFn:i=>{const{ns:r,name:o}=i??{};return Z2(r,o)},...s}},X2=(e,t)=>{const s=J2(e);return Nt(s)};function eV(){const e=It(),t=G2(b(()=>e.selectedQueue?.ns||""),b(()=>e.selectedQueue?.name||""),{query:{enabled:b(()=>!!e.selectedQueue?.ns&&!!e.selectedQueue?.name),retry:!1}}),s=Y2({mutation:{onSuccess:async()=>{await t.refetch()}}}),n=X2({mutation:{onSuccess:async()=>{await t.refetch()}}}),i=b(()=>t.data.value),r=b(()=>t.isLoading.value),o=b(()=>s.isPending.value),l=b(()=>n.isPending.value),u=b(()=>r.value||o.value||l.value),d=b(()=>t.error.value),c=b(()=>s.error.value),h=b(()=>n.error.value),m=b(()=>d.value||c.value||h.value),p=b(()=>!!i.value?.data);async function v($){if(!e.selectedQueue)throw new Error("No queue selected");await s.mutateAsync({...e.selectedQueue,data:$})}async function E(){if(!e.selectedQueue)throw new Error("No queue selected");await n.mutateAsync(e.selectedQueue)}async function _(){await t.refetch()}function S(){return e.selectedQueue?t.refetch():Promise.resolve()}function C(){s.reset()}function A(){n.reset()}function g(){s.reset(),n.reset()}return{rateLimitQuery:t,setRateLimitMutation:s,clearRateLimitMutation:n,rateLimit:i,isLoading:u,isLoadingRateLimit:r,isUpdatingRateLimit:o,isClearingRateLimit:l,error:m,rateLimitError:d,setRateLimitError:c,clearRateLimitError:h,hasRateLimit:p,setRateLimit:v,clearRateLimit:E,refreshRateLimit:_,refetchRateLimitData:S,resetSetRateLimitMutation:C,resetClearRateLimitMutation:A,resetAllMutations:g}}const tV={class:"body"},sV={class:"message"},nV={class:"subject"},iV=["disabled"],rV=Ue({__name:"ClearRateLimitConfirmationModal",props:{isVisible:{type:Boolean},queueName:{},queueNs:{},isProcessing:{type:Boolean,default:!1}},emits:["close","confirm"],setup(e,{emit:t}){const s=e,n=t,i=b(()=>{const u=(s.queueName??"").trim(),d=(s.queueNs??"").trim();return u&&d?`"${u}@${d}"`:u?`"${u}"`:d?`"@${d}"`:"this queue"});function r(){n("close")}function o(){n("close")}function l(){s.isProcessing||n("confirm")}return(u,d)=>(N(),at(Ss,{"is-visible":e.isVisible,title:"Clear rate limit",icon:"bi bi-exclamation-triangle-fill",size:"sm",onClose:r},{body:qe(()=>[a("div",tV,[a("p",sV,[d[0]||(d[0]=te(" Are you sure you want to clear the rate limit for ",-1)),a("strong",nV,q(i.value),1),d[1]||(d[1]=te("? ",-1))]),d[2]||(d[2]=a("div",{class:"callout warning",role:"note","aria-label":"Warning"},[a("i",{class:"bi bi-info-circle me-2","aria-hidden":"true"}),a("span",null," This will remove any active throttling and allow messages to be without rate restriction until a new limit is applied. ")],-1))])]),footer:qe(()=>[a("button",{type:"button",class:"btn btn-outline-secondary",onClick:o}," Cancel "),a("button",{type:"button",class:"btn btn-danger",disabled:e.isProcessing,onClick:l},[e.isProcessing?(N(),P(Ae,{key:0},[d[3]||(d[3]=a("span",{class:"spinner-border spinner-border-sm me-2",role:"status","aria-hidden":"true"},null,-1)),d[4]||(d[4]=te(" Clearing... ",-1))],64)):(N(),P(Ae,{key:1},[d[5]||(d[5]=a("i",{class:"bi bi-trash me-2","aria-hidden":"true"},null,-1)),d[6]||(d[6]=te(" Clear rate limit ",-1))],64))],8,iV)]),_:1},8,["is-visible"]))}}),aV=Xe(rV,[["__scopeId","data-v-22e684ae"]]),oV={key:0,class:"rate-limit-card"},lV={class:"card-header"},uV={class:"header-actions"},cV=["disabled"],dV={class:"card-content"},fV={key:0,class:"content-state loading-state"},hV={key:1,class:"content-state error-state"},pV={class:"error-content"},mV={class:"error-text"},gV={class:"error-message"},vV={key:2,class:"rate-limit-content"},bV={key:0,class:"rate-limit-display"},yV={key:0,class:"no-limit-section"},_V={class:"no-limit-actions"},EV=["disabled"],wV={key:1,class:"rate-limit-info"},CV={class:"rate-limit-status"},AV={class:"rate-limit-details"},SV={class:"rate-limit-value"},xV={class:"rate-limit-interval"},$V={class:"rate-limit-actions"},TV=["disabled"],OV=["disabled"],NV={key:1,class:"rate-limit-form"},kV={class:"form-header"},PV={class:"form-title"},DV={class:"form-body"},RV={class:"form-grid"},MV={class:"form-group"},IV={class:"form-group"},qV={class:"input-group"},LV={class:"rate-limit-preview"},FV={class:"preview-content"},VV={class:"preview-text"},QV={class:"form-footer"},jV=["disabled"],BV=["disabled"],UV={key:1,class:"content-state empty-state"},KV=Ue({__name:"QueueRateLimitCard",setup(e){const t=It(),s=eV(),n=b(()=>t.selectedQueue),i=Pc({limit:Fh().int("Rate limit must be a whole number").positive("Rate limit must be greater than 0").max(1e6,"Rate limit must be less than 1,000,000"),interval:Fh().int("Interval must be a whole number").positive("Interval must be greater than 0"),intervalUnit:yo().refine(I=>["1000","60000","3600000"].includes(I),{message:"Please select a valid time unit"})}),r=Dc(i),o={limit:100,interval:1,intervalUnit:"1000"},l=be(!1),u=b(()=>s.isClearingRateLimit.value||s.isUpdatingRateLimit.value),d=be(!1),c=be(o),h=b(()=>s.isLoadingRateLimit.value),m=b(()=>{const I=s.setRateLimitError,w=s.clearRateLimitError,O=I.value?.error||w.value?.error;return O?`Failed to load rate limit settings: ${O.message} (${O.code})`:null}),p=b(()=>s.rateLimit.value?.data||null),v=b(()=>s.hasRateLimit.value);function E(I){if(!I)return"1 second";if(I>=36e5&&I%36e5===0){const w=I/36e5;return`${w} hour${w>1?"s":""}`}else if(I>=6e4&&I%6e4===0){const w=I/6e4;return`${w} minute${w>1?"s":""}`}else{const w=I/1e3;return`${w} second${w>1?"s":""}`}}function _(I){switch(I){case"3600000":return"hour";case"60000":return"minute";default:return"second"}}function S(I){return I?I>=36e5&&I%36e5===0?{interval:I/36e5,intervalUnit:"3600000"}:I>=6e4&&I%6e4===0?{interval:I/6e4,intervalUnit:"60000"}:{interval:I/1e3,intervalUnit:"1000"}:{interval:1,intervalUnit:"1000"}}Ye(p,I=>{if(I){const{interval:w,intervalUnit:O}=S(I.interval);c.value={limit:I.limit,interval:w,intervalUnit:O}}else c.value=o},{immediate:!0});function C(){s.refreshRateLimit()}function A(){if(v.value&&p.value){const{interval:I,intervalUnit:w}=S(p.value.interval);c.value={limit:p.value.limit,interval:I,intervalUnit:w}}else c.value=o;l.value=!0}async function g(I){const{interval:w,limit:O,intervalUnit:x}=I;try{const F=w*parseInt(x);if(F<1e3){alert("Minimum interval is 1 second (1000ms)");return}const H={limit:O,interval:F};await s.setRateLimit(H),l.value=!1}catch(F){console.error("Error saving rate limit:",F)}}async function $(){try{await s.clearRateLimit(),d.value=!1}catch(I){console.error("Error clearing rate limit:",I)}}function L(){d.value=!0}function V(){l.value=!1}return Bt(()=>{C()}),(I,w)=>n.value?(N(),P("div",oV,[a("header",lV,[w[1]||(w[1]=a("div",{class:"header-content"},[a("h3",{class:"card-title"},[a("i",{class:"bi bi-speedometer2 title-icon"}),te(" Rate Limiting ")]),a("p",{class:"card-subtitle"},"Control message processing speed")],-1)),a("div",uV,[a("button",{class:"btn btn-refresh",disabled:h.value,title:"Refresh rate limit settings",onClick:C},[a("i",{class:De(["bi bi-arrow-clockwise",{spinning:h.value}])},null,2)],8,cV)])]),a("main",dV,[n.value?(N(),P(Ae,{key:0},[h.value?(N(),P("div",fV,[...w[2]||(w[2]=[a("div",{class:"state-content"},[a("div",{class:"spinner-border text-primary mb-3"}),a("h5",{class:"state-title"},"Loading rate limit settings..."),a("p",{class:"state-subtitle"}," Please wait while we fetch the configuration ")],-1)])])):m.value?(N(),P("div",hV,[a("div",pV,[w[4]||(w[4]=a("div",{class:"error-icon"},[a("i",{class:"bi bi-exclamation-triangle-fill text-danger"})],-1)),a("div",mV,[w[3]||(w[3]=a("h5",{class:"error-title"},"Failed to load rate limit settings",-1)),a("p",gV,q(m.value),1)])]),a("div",{class:"error-actions"},[a("button",{class:"btn btn-primary",onClick:C},[...w[5]||(w[5]=[a("i",{class:"bi bi-arrow-clockwise me-2"},null,-1),te(" Try Again ",-1)])])])])):(N(),P("div",vV,[l.value?he("",!0):(N(),P("div",bV,[v.value?(N(),P("div",wV,[a("div",CV,[w[9]||(w[9]=a("div",{class:"status-indicator"},[a("div",{class:"status-badge active"},[a("i",{class:"bi bi-check-circle-fill me-1"}),te(" Active ")])],-1)),a("div",AV,[a("h4",SV,[te(q(p.value?.limit||0)+" messages ",1),a("span",xV," per "+q(E(p.value?.interval)),1)]),w[8]||(w[8]=a("p",{class:"rate-limit-description"}," Current rate limiting configuration for this queue ",-1))])]),a("div",$V,[a("button",{class:"btn btn-outline-primary btn-edit",disabled:u.value,onClick:A},[...w[10]||(w[10]=[a("i",{class:"bi bi-pencil me-2"},null,-1),te(" Edit ",-1)])],8,TV),a("button",{class:"btn btn-outline-danger btn-clear",disabled:u.value,onClick:L},[...w[11]||(w[11]=[a("i",{class:"bi bi-trash me-2"},null,-1),te(" Clear ",-1)])],8,OV)])])):(N(),P("div",yV,[w[7]||(w[7]=ai('<div class="no-limit-content" data-v-43b7689a><div class="no-limit-icon" data-v-43b7689a>⚡</div><div class="no-limit-text" data-v-43b7689a><h4 class="no-limit-title" data-v-43b7689a>No Rate Limit Configured</h4><p class="no-limit-description" data-v-43b7689a> Messages are processed without speed restrictions. Set a rate limit to control processing speed and prevent system overload. </p></div></div>',1)),a("div",_V,[a("button",{class:"btn btn-primary btn-set-limit",disabled:u.value,onClick:A},[...w[6]||(w[6]=[a("i",{class:"bi bi-plus-circle me-2"},null,-1),te(" Set Rate Limit ",-1)])],8,EV)])]))])),l.value?(N(),P("div",NV,[a("div",kV,[a("h4",PV,q(v.value?"Edit Rate Limit":"Set Rate Limit"),1),w[12]||(w[12]=a("p",{class:"form-subtitle"}," Configure the maximum number of messages processed per time interval ",-1))]),we(T(yv),{"initial-values":c.value,"validation-schema":T(r),onSubmit:g},{default:qe(()=>[a("div",DV,[a("div",RV,[a("div",MV,[w[13]||(w[13]=a("label",{for:"limit",class:"form-label"},[a("i",{class:"bi bi-hash me-1"}),te(" Message Limit ")],-1)),we(T(Ns),{id:"limit",name:"limit",type:"number",class:"form-control",min:"1",max:"1000000",required:"",disabled:u.value,placeholder:"e.g. 100"},null,8,["disabled"]),we(T(Jn),{name:"limit",class:"field-error"}),w[14]||(w[14]=a("div",{class:"field-help"},"Maximum messages to process",-1))]),a("div",IV,[w[16]||(w[16]=a("label",{for:"interval",class:"form-label"},[a("i",{class:"bi bi-clock me-1"}),te(" Time Interval ")],-1)),a("div",qV,[we(T(Ns),{id:"interval",name:"interval",type:"number",class:"form-control",min:"1",required:"",disabled:u.value,placeholder:"e.g. 1"},null,8,["disabled"]),we(T(Ns),{name:"intervalUnit",as:"select",class:"form-select"},{default:qe(()=>[...w[15]||(w[15]=[a("option",{value:"1000"},"Seconds",-1),a("option",{value:"60000"},"Minutes",-1),a("option",{value:"3600000"},"Hours",-1)])]),_:1})]),we(T(Jn),{name:"interval",class:"field-error"}),w[17]||(w[17]=a("div",{class:"field-help"},"Minimum interval is 1 second",-1))])]),a("div",LV,[a("div",FV,[w[20]||(w[20]=a("i",{class:"bi bi-info-circle preview-icon"},null,-1)),a("div",VV,[w[18]||(w[18]=te(" This will limit the queue to processing ",-1)),we(T(Ns),{name:"limit"},{default:qe(({field:O})=>[a("strong",null,q(O.value||0),1)]),_:1}),w[19]||(w[19]=te(" messages per ",-1)),we(T(Ns),{name:"interval"},{default:qe(({field:O})=>[a("strong",null,q(O.value||1),1)]),_:1}),we(T(Ns),{name:"intervalUnit"},{default:qe(({field:O})=>[a("strong",null,q(_(O.value))+"(s)",1)]),_:1})])])])]),a("div",QV,[a("button",{type:"button",class:"btn btn-outline-secondary btn-cancel",disabled:u.value,onClick:V}," Cancel ",8,jV),a("button",{type:"submit",class:"btn btn-primary btn-save",disabled:u.value},[u.value?(N(),P(Ae,{key:0},[w[21]||(w[21]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),w[22]||(w[22]=te(" Saving... ",-1))],64)):(N(),P(Ae,{key:1},[w[23]||(w[23]=a("i",{class:"bi bi-check-lg me-2"},null,-1)),w[24]||(w[24]=te(" Save Rate Limit ",-1))],64))],8,BV)])]),_:1},8,["initial-values","validation-schema"])])):he("",!0)]))],64)):(N(),P("div",UV,[...w[25]||(w[25]=[a("div",{class:"state-content"},[a("div",{class:"empty-icon"},"🎯"),a("h4",{class:"state-title"},"No Queue Selected"),a("p",{class:"state-subtitle"}," Select a queue to configure its rate limiting settings ")],-1)])]))]),we(aV,{"is-visible":d.value,"queue-name":n.value?.name??null,"queue-ns":n.value?.ns??null,"is-processing":u.value,onClose:w[0]||(w[0]=O=>d.value=!1),onConfirm:$},null,8,["is-visible","queue-name","queue-ns","is-processing"])])):he("",!0)}}),HV=Xe(KV,[["__scopeId","data-v-43b7689a"]]),Ll=5e3;function GV(){const e=It(),t=be(Ll),s=lO(b(()=>e.selectedQueue?.ns||""),b(()=>e.selectedQueue?.name||""),{query:{enabled:b(()=>!!e.selectedQueue?.ns&&!!e.selectedQueue?.name),refetchInterval:b(()=>t.value),refetchIntervalInBackground:!1}}),n=b(()=>s.data.value),i=b(()=>s.isLoading.value),r=b(()=>s.isRefetching.value),o=b(()=>s.error.value),l=b(()=>n.value?.data?Object.entries(n.value.data).map(([X,Z])=>({id:X,consumerId:X,...Z})):[]),u=b(()=>n.value?.data||{}),d=b(()=>Object.keys(u.value)),c=b(()=>l.value.length>0),h=b(()=>[...l.value].sort((X,Z)=>X.id.localeCompare(Z.id))),m=b(()=>[...l.value].sort((X,Z)=>Z.createdAt-X.createdAt)),p=b(()=>[...l.value].sort((X,Z)=>X.hostname.localeCompare(Z.hostname))),v=b(()=>l.value.length),E=b(()=>{const X={};return l.value.forEach(Z=>{X[Z.hostname]||(X[Z.hostname]=[]),X[Z.hostname].push(Z)}),X}),_=b(()=>[...new Set(l.value.map(X=>X.hostname))].sort()),S=b(()=>{const X={total:l.value.length,uniqueHostnames:_.value.length,averageCreatedAt:0,oldestConsumer:null,newestConsumer:null};if(l.value.length>0){const Z=l.value.reduce((se,ue)=>se+ue.createdAt,0);X.averageCreatedAt=Z/l.value.length;const W=[...l.value].sort((se,ue)=>se.createdAt-ue.createdAt);X.oldestConsumer=W[0],X.newestConsumer=W[W.length-1]}return X});async function C(){await s.refetch()}function A(){return e.selectedQueue?s.refetch():Promise.resolve()}function g(){t.value=Ll,console.log(`Real-time updates enabled with ${Ll}ms interval`)}function $(){t.value=!1,console.log("Real-time updates disabled")}function L(X){return l.value.find(Z=>Z.id===X)||null}function V(X){return u.value[X]||null}function I(X){return l.value.filter(Z=>Z.hostname===X)}function w(X){return l.value.filter(Z=>Z.pid===X)}function O(X){return l.value.filter(Z=>Z.createdAt>X)}function x(X){return l.value.filter(Z=>Z.createdAt<X)}function F(X){const Z=X.toLowerCase();return l.value.filter(W=>W.id.toLowerCase().includes(Z)||W.hostname.toLowerCase().includes(Z)||W.pid.toString().includes(Z)||W.ipAddress.some(se=>se.includes(X)))}function H(X){return!!X&&X.trim().length>0}function z(X){return X in u.value}function fe(){return!!e.selectedQueue?.ns&&!!e.selectedQueue?.name}function ie(){return e.selectedQueue?`${e.selectedQueue.ns}/${e.selectedQueue.name}`:""}function G(X){return Date.now()-X.createdAt}return{queuesStore:e,consumersQuery:s,consumers:n,consumersArray:l,consumersObject:u,consumerIds:d,isLoadingConsumers:i,isRefetchingConsumers:r,consumersError:o,hasConsumers:c,sortedConsumers:h,sortedConsumersByCreatedAt:m,sortedConsumersByHostname:p,consumerCount:v,consumersByHostname:E,uniqueHostnames:_,consumerStats:S,refreshConsumers:C,refetchConsumersData:A,enableRealTimeUpdates:g,disableRealTimeUpdates:$,findConsumerById:L,getConsumerData:V,getConsumersByHostname:I,getConsumersByPid:w,getConsumersCreatedAfter:O,getConsumersCreatedBefore:x,searchConsumers:F,isValidConsumerId:H,hasConsumerWithId:z,isValidQueue:fe,getQueueDisplayName:ie,getConsumerUptime:G}}const WV={key:0,class:"queue-consumers-card"},zV={class:"card-header"},YV={class:"header-actions"},ZV=["title"],JV=["disabled"],XV={class:"card-content"},eQ={key:0,class:"content-state loading-state"},tQ={key:1,class:"content-state error-state",role:"alert"},sQ={class:"error-content"},nQ={class:"error-text"},iQ={class:"error-message"},rQ={key:2,class:"content-state empty-state"},aQ={class:"state-content"},oQ={class:"empty-info"},lQ={class:"info-item"},uQ={key:3,class:"consumers-content"},cQ={class:"consumers-stats",role:"group","aria-label":"Consumers statistics"},dQ={class:"stat-item"},fQ={class:"stat-content"},hQ={class:"stat-number"},pQ={class:"stat-item"},mQ={class:"stat-content"},gQ={class:"stat-number"},vQ={key:0,class:"stat-item"},bQ={class:"stat-content"},yQ={class:"stat-number"},_Q={class:"consumers-filters"},EQ={class:"filter-group"},wQ={class:"filter-group"},CQ=["value"],AQ={class:"consumers-header"},SQ={class:"consumers-count"},xQ={key:0,class:"filtered-count"},$Q={class:"indicator-text"},TQ={class:"consumers-list"},OQ={class:"consumer-header"},NQ={class:"consumer-id"},kQ=["title"],PQ={class:"consumer-status"},DQ=["title"],RQ={class:"consumer-details"},MQ={class:"detail-row"},IQ={class:"detail-item"},qQ=["title"],LQ={class:"detail-item"},FQ=["title"],VQ={class:"detail-row"},QQ={class:"detail-item"},jQ={class:"detail-value uptime"},BQ={class:"detail-item"},UQ={class:"detail-value created-at"},KQ={class:"detail-row"},HQ={class:"detail-item ip-addresses"},GQ={class:"ip-list"},WQ=Ue({__name:"QueueConsumersCard",setup(e){const t=It(),s=GV(),n=be(!0),i=be(""),r=be(""),o=b(()=>s.consumersArray.value),l=b(()=>s.isLoadingConsumers.value),u=b(()=>s.isRefetchingConsumers.value),d=b(()=>s.consumersError.value),c=b(()=>s.hasConsumers.value),h=b(()=>s.consumerStats.value),m=b(()=>s.uniqueHostnames.value),p=b(()=>{let A=o.value;return i.value&&(A=A.filter(g=>g.hostname===i.value)),r.value.trim()&&(A=s.searchConsumers(r.value)),A});function v(){s.refreshConsumers()}function E(){n.value=!n.value,n.value?s.enableRealTimeUpdates():s.disableRealTimeUpdates()}function _(){i.value="",r.value=""}function S(A){const $=s.getConsumerUptime(A)/(1e3*60);return $<1?"status-new":$<60?"status-active":"status-stable"}function C(A){const $=s.getConsumerUptime(A)/(1e3*60);return $<1?"New":$<60?"Active":"Stable"}return Bt(()=>{n.value&&s.enableRealTimeUpdates()}),uc(()=>{s.disableRealTimeUpdates()}),(A,g)=>T(t).selectedQueue?(N(),P("div",WV,[a("header",zV,[g[2]||(g[2]=a("div",{class:"header-content"},[a("h3",{class:"card-title"},[a("i",{class:"bi bi-people-fill title-icon"}),te(" Queue Consumers ")]),a("p",{class:"card-subtitle"}," Active consumers processing messages from this queue ")],-1)),a("div",YV,[a("button",{class:De(["btn btn-toggle",{active:n.value}]),title:n.value?"Disable real-time updates":"Enable real-time updates",onClick:E},[a("i",{class:De(["bi",n.value?"bi-pause-fill":"bi-play-fill"])},null,2)],10,ZV),a("button",{class:"btn btn-refresh",disabled:l.value,title:"Refresh consumers",onClick:v},[a("i",{class:De(["bi bi-arrow-clockwise",{spinning:u.value}])},null,2)],8,JV)])]),a("main",XV,[l.value?(N(),P("div",eQ,[...g[3]||(g[3]=[a("div",{class:"state-content"},[a("div",{class:"spinner-border text-primary mb-3",role:"status","aria-live":"polite","aria-label":"Loading consumers"}),a("h5",{class:"state-title"},"Loading consumers..."),a("p",{class:"state-subtitle"}," Please wait while we fetch the active consumers ")],-1)])])):d.value?(N(),P("div",tQ,[a("div",sQ,[g[5]||(g[5]=a("div",{class:"error-icon"},[a("i",{class:"bi bi-exclamation-triangle-fill text-danger","aria-hidden":"true"})],-1)),a("div",nQ,[g[4]||(g[4]=a("h5",{class:"error-title"},"Failed to load consumers",-1)),a("p",iQ,q(T(dt)(d.value)?.message),1)])]),a("div",{class:"error-actions"},[a("button",{class:"btn btn-primary",onClick:v},[...g[6]||(g[6]=[a("i",{class:"bi bi-arrow-clockwise me-2"},null,-1),te(" Try Again ",-1)])])])])):c.value?(N(),P("div",uQ,[a("div",cQ,[a("div",dQ,[g[13]||(g[13]=a("div",{class:"stat-icon total-icon","aria-hidden":"true"},[a("i",{class:"bi bi-people-fill"})],-1)),a("div",fQ,[a("div",hQ,q(h.value.total),1),g[12]||(g[12]=a("div",{class:"stat-label"},"Total Consumers",-1))])]),a("div",pQ,[g[15]||(g[15]=a("div",{class:"stat-icon hostnames-icon","aria-hidden":"true"},[a("i",{class:"bi bi-hdd-network-fill"})],-1)),a("div",mQ,[a("div",gQ,q(h.value.uniqueHostnames),1),g[14]||(g[14]=a("div",{class:"stat-label"},"Unique Hosts",-1))])]),h.value.newestConsumer?(N(),P("div",vQ,[g[17]||(g[17]=a("div",{class:"stat-icon newest-icon","aria-hidden":"true"},[a("i",{class:"bi bi-clock-fill"})],-1)),a("div",bQ,[a("div",yQ,q(T(Wh)(h.value.newestConsumer?.createdAt)),1),g[16]||(g[16]=a("div",{class:"stat-label"},"Newest Consumer",-1))])])):he("",!0)]),a("div",_Q,[a("div",EQ,[g[18]||(g[18]=a("label",{class:"filter-label",for:"consumers-search"},"Search:",-1)),ss(a("input",{id:"consumers-search","onUpdate:modelValue":g[0]||(g[0]=$=>r.value=$),type:"text",class:"form-control filter-input",placeholder:"Search by ID, hostname, PID, or IP..."},null,512),[[rn,r.value]])]),a("div",wQ,[g[20]||(g[20]=a("label",{class:"filter-label",for:"hostname-select"},"Hostname:",-1)),ss(a("select",{id:"hostname-select","onUpdate:modelValue":g[1]||(g[1]=$=>i.value=$),class:"form-select filter-select"},[g[19]||(g[19]=a("option",{value:""},"All Hostnames",-1)),(N(!0),P(Ae,null,bt(m.value,$=>(N(),P("option",{key:$,value:$},q($),9,CQ))),128))],512),[[Um,i.value]])]),i.value||r.value?(N(),P("button",{key:0,class:"btn btn-outline-secondary btn-clear-filters",onClick:_},[...g[21]||(g[21]=[a("i",{class:"bi bi-x-circle me-1","aria-hidden":"true"},null,-1),te(" Clear ",-1)])])):he("",!0)]),a("div",AQ,[a("h5",SQ,[te(q(p.value.length)+" Consumer"+q(p.value.length!==1?"s":"")+" ",1),p.value.length!==o.value.length?(N(),P("span",xQ," (filtered from "+q(o.value.length)+") ",1)):he("",!0)]),a("div",{class:De(["real-time-indicator",{active:n.value}]),role:"status","aria-live":"polite"},[g[22]||(g[22]=a("i",{class:"bi bi-circle-fill indicator-dot","aria-hidden":"true"},null,-1)),a("span",$Q,q(n.value?"Live":"Paused"),1)],2)]),a("div",TQ,[(N(!0),P(Ae,null,bt(p.value,$=>(N(),P("div",{key:$.id,class:"consumer-item"},[a("div",OQ,[a("div",NQ,[g[23]||(g[23]=a("i",{class:"bi bi-person-fill consumer-icon","aria-hidden":"true"},null,-1)),a("span",{class:"id-text",title:$.id},q($.id),9,kQ)]),a("div",PQ,[a("span",{class:De(["status-badge",S($)]),title:`Consumer status: ${C($)}`},q(C($)),11,DQ)])]),a("div",RQ,[a("div",MQ,[a("div",IQ,[g[24]||(g[24]=a("i",{class:"bi bi-hdd-network detail-icon","aria-hidden":"true"},null,-1)),g[25]||(g[25]=a("span",{class:"detail-label"},"Hostname:",-1)),a("span",{class:"detail-value hostname",title:$.hostname},q($.hostname),9,qQ)]),a("div",LQ,[g[26]||(g[26]=a("i",{class:"bi bi-gear detail-icon","aria-hidden":"true"},null,-1)),g[27]||(g[27]=a("span",{class:"detail-label"},"PID:",-1)),a("span",{class:"detail-value pid",title:String($.pid)},q($.pid),9,FQ)])]),a("div",VQ,[a("div",QQ,[g[28]||(g[28]=a("i",{class:"bi bi-clock detail-icon","aria-hidden":"true"},null,-1)),g[29]||(g[29]=a("span",{class:"detail-label"},"Uptime:",-1)),a("span",jQ,q(T(Wh)($.createdAt)),1)]),a("div",BQ,[g[30]||(g[30]=a("i",{class:"bi bi-calendar detail-icon","aria-hidden":"true"},null,-1)),g[31]||(g[31]=a("span",{class:"detail-label"},"Started:",-1)),a("span",UQ,q(T(Mc)($.createdAt)),1)])]),a("div",KQ,[a("div",HQ,[g[32]||(g[32]=a("i",{class:"bi bi-router detail-icon","aria-hidden":"true"},null,-1)),g[33]||(g[33]=a("span",{class:"detail-label"},"IP Addresses:",-1)),a("div",GQ,[(N(!0),P(Ae,null,bt($.ipAddress,L=>(N(),P("span",{key:L,class:"ip-badge"},q(L),1))),128))])])])])]))),128))])])):(N(),P("div",rQ,[a("div",aQ,[g[9]||(g[9]=a("div",{class:"empty-icon","aria-hidden":"true"},"👥",-1)),g[10]||(g[10]=a("h4",{class:"state-title"},"No Active Consumers",-1)),g[11]||(g[11]=a("p",{class:"state-subtitle"}," No consumers are currently connected to this queue. Start a consumer application to begin processing messages. ",-1)),a("div",oQ,[g[8]||(g[8]=a("div",{class:"info-item"},[a("i",{class:"bi bi-info-circle me-2","aria-hidden":"true"}),a("span",null,"Consumers will appear here when they connect to the queue")],-1)),a("div",lQ,[g[7]||(g[7]=a("i",{class:"bi bi-info-circle me-2","aria-hidden":"true"},null,-1)),a("span",null,"Real-time updates are "+q(n.value?"enabled":"disabled"),1)])])])]))])])):he("",!0)}}),zQ=Xe(WQ,[["__scopeId","data-v-a0e686b6"]]),YQ={class:"queue-properties-view"},ZQ={key:0,class:"details-grid"},JQ={class:"details-column-main"},XQ={class:"details-column-secondary"},e4="Queue Details & Management",t4=Ue({__name:"QueuePropertiesView",setup(e){const t=ps(),s=os(),n=Xt(),i=It(),r=Dn(),o=b(()=>t.params.ns),l=b(()=>t.params.queue),u=b(()=>i.selectedQueue),d=b(()=>r.isLoadingQueueProperties),c=b(()=>r.queuePropertiesError),{deleteQueue:h,isDeletingQueue:m,deleteQueueError:p,deleteQueueMutation:v}=Rv(async()=>{await s.push({name:"Queues"})}),E=be(!1);function _(){v.reset(),E.value=!0}function S(){E.value=!1}async function C(){u.value&&await h({ns:u.value.ns,name:u.value.name})}const A=b(()=>{const I=p.value||c.value;return dt(I)}),g=b(()=>c.value?.error?.message==="QueueNotFoundError"),$=b(()=>`${l.value} @ ${o.value}`),L=b(()=>[{id:"delete-queue",label:"Delete",icon:"bi bi-trash",variant:"danger",disabled:d.value||m.value,loading:m.value,handler:_}]);function V(){i.clearSelectedQueue(),s.push({name:"Queues"})}return At(()=>{n.setPageHeader({title:$.value,subtitle:e4,icon:"bi bi-card-list"}),n.setLoadingState(d.value),g.value?(n.setEmptyState(!0,{icon:"bi bi-question-circle",title:"Queue Not Found",message:`The queue "${l.value}" in namespace "${o.value}" could not be found. It may have been deleted.`,actionLabel:"Back to Queues",actionHandler:V}),n.setPageActions([])):A.value&&!E.value?(n.setErrorState(A.value),n.setPageActions([])):(n.setEmptyState(!1),n.setErrorState(null),n.setPageActions(L.value))}),Ye([o,l],([I,w])=>{I&&w?i.selectQueue(I,w):i.clearSelectedQueue()},{immediate:!0}),KL([{isVisible:E,onEscape:S}]),(I,w)=>(N(),P("div",YQ,[we(ms,null,{default:qe(()=>[u.value?(N(),P("div",ZQ,[a("div",JQ,[we(VF),we(B2)]),a("div",XQ,[we(HV),we(zQ)])])):he("",!0)]),_:1}),we(Mv,{queue:{ns:o.value,name:l.value},"is-deleting":T(m),"is-visible":E.value,onCancel:S,onConfirm:C},null,8,["queue","is-deleting","is-visible"])]))}}),s4=Xe(t4,[["__scopeId","data-v-8e3989c7"]]),n4=(e,t,s,n)=>(e=T(e),t=T(t),s=T(s),Je({url:`/api/v1/namespaces/${e}/queues/${t}/scheduled-messages`,method:"GET",params:T(s),signal:n}));function i4(e,t=20){return la(e,{queryFn:async({ns:n,name:i,page:r,pageSize:o})=>n4(n,i,{page:r,pageSize:o}),queryKeyPrefix:"scheduled-messages",enableDelete:!0,enableRequeue:!1},t)}const r4=Ue({__name:"ScheduledMessagesView",setup(e){const t=ps(),s=Xt(),n=It(),i=Dn(),r=b(()=>({ns:t.params.ns,name:t.params.queue}));Ye(r,$=>{$.ns&&$.name&&n.selectQueue($.ns,$.name)},{immediate:!0,deep:!0});const o=b(()=>n.selectedQueue),{messages:l,pagination:u,isLoading:d,isDeleting:c,error:h,goToPage:m,setPageSize:p,refresh:v,deleteMessage:E}=i4(r,20),_=b(()=>o.value?`Scheduled Messages - ${`${o.value.name}@${o.value.ns}`}`:"Scheduled Messages"),S=b(()=>{if(o.value)return i.isPubSubQueue?"Pub/Sub Queue":"Point-2-Point Queue"});At(()=>{s.setPageHeader({title:_.value,subtitle:S.value,icon:"bi bi-clock"})}),At(()=>{if(!o.value){s.setEmptyState(!0,{icon:"bi bi-inbox",title:"No Queue Selected",message:"Please select a queue from the sidebar to view its scheduled messages."}),s.setPageActions([]),s.setLoadingState(!1),s.setErrorState(null);return}s.setLoadingState(!1),s.setErrorState(null),s.setEmptyState(!1),s.setPageActions([])});async function C($){E&&await E($)}function A($){m($)}async function g($){await p($)}return($,L)=>(N(),at(ms,{"show-section-header":!1},{default:qe(()=>[o.value?(N(),at(oa,{key:0,messages:T(l),"is-loading":T(d),error:T(h),pagination:T(u),"show-pagination":!0,"empty-message":"No scheduled messages found for this queue. Messages appear here when they are scheduled for future delivery.",icon:"bi-clock","is-deleting":T(c),"is-requeuing":!1,onRefresh:T(v),onDeleteMessage:C,onPageChange:A,onPageSizeChange:g,onFirstPage:L[0]||(L[0]=V=>A(1)),onPreviousPage:L[1]||(L[1]=V=>A(T(u).currentPage-1)),onNextPage:L[2]||(L[2]=V=>A(T(u).currentPage+1)),onLastPage:L[3]||(L[3]=V=>A(T(u).totalPages))},null,8,["messages","is-loading","error","pagination","is-deleting","onRefresh"])):he("",!0)]),_:1}))}}),a4=(e,t,s,n)=>(e=T(e),t=T(t),s=T(s),Je({url:`/api/v1/namespaces/${e}/queues/${t}/messages`,method:"GET",params:T(s),signal:n}));function o4(e,t=20){return la(e,{queryFn:async({ns:n,name:i,page:r,pageSize:o})=>a4(n,i,{page:r,pageSize:o}),queryKeyPrefix:"queue-messages",enableDelete:!0,enableRequeue:!0},t)}const l4=Ue({__name:"QueueMessagesView",setup(e){const t=ps(),s=Xt(),n=It(),i=b(()=>({ns:t.params.ns,name:t.params.queue}));Ye(i,$=>{$.ns&&$.name&&n.selectQueue($.ns,$.name)},{immediate:!0,deep:!0});const{messages:r,pagination:o,isLoading:l,isDeleting:u,isRequeuing:d,error:c,goToPage:h,setPageSize:m,refresh:p,deleteMessage:v,requeueMessage:E}=o4(i,20),_=b(()=>i.value.ns?`Queue Messages - ${i.value.name}@${i.value.ns}`:"Queue Messages");At(()=>{s.setPageHeader({title:_.value,subtitle:"View and manage messages for this queue.",icon:"bi bi-clock"}),s.setLoadingState(!1),s.setErrorState(null),s.setEmptyState(!1),s.setPageActions([])});async function S($){v&&await v($)}async function C($){E&&await E($)}function A($){h($)}async function g($){await m($)}return($,L)=>(N(),at(ms,{"show-section-header":!1},{default:qe(()=>[we(oa,{messages:T(r),"is-loading":T(l),error:T(c),pagination:T(o),"show-pagination":!0,"empty-message":"No messages found for this queue",icon:"bi-clock","is-deleting":T(u),"is-requeuing":T(d),onRefresh:T(p),onDeleteMessage:S,onRequeueMessage:C,onPageChange:A,onPageSizeChange:g,onFirstPage:L[0]||(L[0]=V=>A(1)),onPreviousPage:L[1]||(L[1]=V=>A(T(o).currentPage-1)),onNextPage:L[2]||(L[2]=V=>A(T(o).currentPage+1)),onLastPage:L[3]||(L[3]=V=>A(T(o).totalPages))},null,8,["messages","is-loading","error","pagination","is-deleting","is-requeuing","onRefresh"])]),_:1}))}}),u4={class:"bind-queue-content"},c4={class:"modal-description","aria-live":"polite"},d4={key:0,class:"error-alert",role:"alert"},f4={class:"error-text"},h4={class:"form-group"},p4=["disabled","aria-invalid"],m4={key:0,id:"queueName-error",class:"field-error",role:"alert"},g4={key:0,class:"form-group"},v4=["disabled","aria-invalid"],b4={key:0,id:"routingKey-error",class:"field-error",role:"alert"},y4={key:1,class:"form-group"},_4=["disabled","aria-invalid"],E4={key:0,id:"bindingPattern-error",class:"field-error",role:"alert"},w4=["disabled"],C4=["disabled"],A4={key:0,class:"loading-spinner","aria-hidden":"true"},S4={key:1,class:"bi bi-link-45deg","aria-hidden":"true"},x4=Ue({__name:"BindQueueModal",props:{isVisible:{type:Boolean},isLoading:{type:Boolean,default:!1},error:{default:null},exchangeType:{},exchangeName:{},namespace:{}},emits:["confirm","cancel"],setup(e,{emit:t}){const s=e,n=t,i=be(""),r=be(""),o=be(""),l=be(""),u=be(""),d=be(""),c=be(null),h=b(()=>`Bind Queue to ${s.exchangeType.charAt(0).toUpperCase()+s.exchangeType.slice(1)} Exchange`),m=b(()=>`${s.exchangeName} • ${s.namespace}`),p=b(()=>{switch(s.exchangeType){case"direct":return"Bind a queue to this direct exchange with a specific routing key. Messages will be routed to the queue only when the routing key matches exactly.";case"fanout":return"Bind a queue to this fanout exchange. All messages published to this exchange will be delivered to the bound queue.";case"topic":return"Bind a queue to this topic exchange with a binding pattern. Messages will be routed based on pattern matching with routing keys.";default:return"Bind a queue to this exchange."}}),v=b(()=>s.exchangeType==="direct"),E=b(()=>s.exchangeType==="topic"),_=b(()=>{const I=i.value.trim().length>0,w=!v.value||r.value.trim().length>0,O=!E.value||o.value.trim().length>0;return I&&w&&O&&!l.value&&!u.value&&!d.value}),S=()=>{const I=i.value.trim();return I?I.length<1||I.length>255?(l.value="Queue name must be between 1 and 255 characters",!1):/^[a-zA-Z0-9._-]+$/.test(I)?(l.value="",!0):(l.value="Queue name can only contain letters, numbers, dots, underscores, and hyphens",!1):(l.value="Queue name is required",!1)},C=()=>{if(!v.value)return u.value="",!0;const I=r.value.trim();return I?I.length>255?(u.value="Routing key must not exceed 255 characters",!1):(u.value="",!0):(u.value="Routing key is required for direct exchanges",!1)},A=()=>{if(!E.value)return d.value="",!0;const I=o.value.trim();return I?I.length>255?(d.value="Binding pattern must not exceed 255 characters",!1):(d.value="",!0):(d.value="Binding pattern is required for topic exchanges",!1)},g=()=>{const I=S(),w=C(),O=A();return I&&w&&O},$=()=>{if(!g()||s.isLoading)return;const I={queueName:i.value.trim()};v.value&&(I.routingKey=r.value.trim()),E.value&&(I.bindingPattern=o.value.trim()),n("confirm",I)},L=()=>{s.isLoading||n("cancel")},V=()=>{i.value="",r.value="",o.value="",l.value="",u.value="",d.value=""};return Ye(()=>s.isVisible,async I=>{I&&(V(),await kt(),c.value?.focus())}),Ye(()=>s.error,I=>{I||(l.value="",u.value="",d.value="")}),(I,w)=>(N(),at(Ss,{"is-visible":e.isVisible,title:h.value,subtitle:m.value,icon:"bi bi-link-45deg",size:"md",onClose:L},{body:qe(()=>[a("div",u4,[a("p",c4,q(p.value),1),e.error?(N(),P("div",d4,[w[6]||(w[6]=a("i",{class:"bi bi-exclamation-triangle-fill","aria-hidden":"true"},null,-1)),a("span",f4,q(e.error),1)])):he("",!0),a("form",{class:"bind-form",onSubmit:Ft($,["prevent"])},[a("div",h4,[w[7]||(w[7]=a("label",{for:"queueName",class:"form-label"},[te(" Queue Name "),a("span",{class:"required"},"*")],-1)),ss(a("input",{id:"queueName",ref_key:"queueNameInput",ref:c,"onUpdate:modelValue":w[0]||(w[0]=O=>i.value=O),type:"text",class:De(["form-input",{error:!!l.value}]),placeholder:"Enter queue name",disabled:e.isLoading,"aria-invalid":!!l.value,"aria-describedby":"queueName-hint queueName-error",inputmode:"text",autocomplete:"off",autocapitalize:"off",autocorrect:"off",spellcheck:"false",maxlength:"255",pattern:"[A-Za-z0-9._-]+",onBlur:S,onInput:w[1]||(w[1]=O=>l.value="")},null,42,p4),[[rn,i.value]]),l.value?(N(),P("div",m4,q(l.value),1)):he("",!0),w[8]||(w[8]=a("div",{id:"queueName-hint",class:"field-hint"}," Queue name can contain letters, numbers, dots, underscores, and hyphens ",-1))]),v.value?(N(),P("div",g4,[w[9]||(w[9]=a("label",{for:"routingKey",class:"form-label"},[te(" Routing Key "),a("span",{class:"required"},"*")],-1)),ss(a("input",{id:"routingKey","onUpdate:modelValue":w[2]||(w[2]=O=>r.value=O),type:"text",class:De(["form-input",{error:!!u.value}]),placeholder:"Enter routing key",disabled:e.isLoading,"aria-invalid":!!u.value,"aria-describedby":"routingKey-hint routingKey-error",inputmode:"text",autocomplete:"off",autocapitalize:"off",autocorrect:"off",spellcheck:"false",maxlength:"255",onBlur:C,onInput:w[3]||(w[3]=O=>u.value="")},null,42,v4),[[rn,r.value]]),u.value?(N(),P("div",b4,q(u.value),1)):he("",!0),w[10]||(w[10]=a("div",{id:"routingKey-hint",class:"field-hint"}," Messages will be routed to this queue only when the routing key matches exactly ",-1))])):he("",!0),E.value?(N(),P("div",y4,[w[11]||(w[11]=a("label",{for:"bindingPattern",class:"form-label"},[te(" Binding Pattern "),a("span",{class:"required"},"*")],-1)),ss(a("input",{id:"bindingPattern","onUpdate:modelValue":w[4]||(w[4]=O=>o.value=O),type:"text",class:De(["form-input",{error:!!d.value}]),placeholder:"Enter binding pattern (e.g., user.*.created)",disabled:e.isLoading,"aria-invalid":!!d.value,"aria-describedby":"bindingPattern-hint bindingPattern-error",inputmode:"text",autocomplete:"off",autocapitalize:"off",autocorrect:"off",spellcheck:"false",maxlength:"255",onBlur:A,onInput:w[5]||(w[5]=O=>d.value="")},null,42,_4),[[rn,o.value]]),d.value?(N(),P("div",E4,q(d.value),1)):he("",!0),w[12]||(w[12]=a("div",{id:"bindingPattern-hint",class:"field-hint"}," Use * to match one word, # to match zero or more words (e.g., user.*.created, logs.#) ",-1))])):he("",!0)],32)])]),footer:qe(()=>[a("button",{type:"button",class:"btn btn-secondary",disabled:e.isLoading,onClick:L}," Cancel ",8,w4),a("button",{type:"submit",class:"btn btn-primary",disabled:!_.value||e.isLoading,onClick:$},[e.isLoading?(N(),P("span",A4)):(N(),P("i",S4)),te(" "+q(e.isLoading?"Binding...":"Bind Queue"),1)],8,C4)]),_:1},8,["is-visible","title","subtitle"]))}}),Ic=Xe(x4,[["__scopeId","data-v-15924699"]]),$4={class:"unbind-queue-content"},T4={key:0,class:"error-alert",role:"alert"},O4={class:"confirmation-section"},N4={class:"confirmation-content"},k4={class:"confirmation-message"},P4={class:"warning-message"},D4={class:"binding-details"},R4={class:"detail-item"},M4={class:"detail-value queue-name"},I4={class:"detail-item"},q4={class:"detail-value exchange-type"},L4={key:0,class:"detail-item"},F4={class:"detail-label"},V4={class:"detail-value binding-key"},Q4=["disabled"],j4=["disabled"],B4={key:0,class:"loading-spinner","aria-hidden":"true"},U4={key:1,class:"bi bi-unlink","aria-hidden":"true"},K4=Ue({__name:"UnbindQueueModal",props:{isVisible:{type:Boolean},isLoading:{type:Boolean,default:!1},error:{default:null},queueName:{},routingKey:{default:""},bindingPattern:{default:""},exchangeType:{}},emits:["confirm","cancel"],setup(e,{emit:t}){const s=e,n=t,i=b(()=>`Unbind Queue from ${s.exchangeType.charAt(0).toUpperCase()+s.exchangeType.slice(1)} Exchange`),r=b(()=>`${s.queueName}`),o=b(()=>{switch(s.exchangeType){case"direct":return s.routingKey;case"topic":return s.bindingPattern;case"fanout":return null;default:return null}}),l=b(()=>{switch(s.exchangeType){case"direct":return"Routing Key";case"topic":return"Binding Pattern";default:return null}}),u=b(()=>{const m=`Are you sure you want to unbind the queue "${s.queueName}"`;return o.value?`${m} with ${l.value?.toLowerCase()} "${o.value}"?`:`${m}?`}),d=b(()=>{switch(s.exchangeType){case"direct":return"Messages with this routing key will no longer be delivered to this queue.";case"fanout":return"This queue will no longer receive messages published to this exchange.";case"topic":return"Messages matching this binding pattern will no longer be delivered to this queue.";default:return"This queue will no longer receive messages from this exchange."}}),c=()=>{s.isLoading||n("confirm")},h=()=>{s.isLoading||n("cancel")};return(m,p)=>(N(),at(Ss,{"is-visible":e.isVisible,title:i.value,subtitle:r.value,icon:"bi bi-unlink",size:"sm",onClose:h},{body:qe(()=>[a("div",$4,[e.error?(N(),P("div",T4,[p[0]||(p[0]=a("i",{class:"bi bi-exclamation-triangle-fill","aria-hidden":"true"},null,-1)),a("span",null,q(e.error),1)])):he("",!0),a("div",O4,[p[1]||(p[1]=a("div",{class:"confirmation-icon"},[a("i",{class:"bi bi-question-circle-fill","aria-hidden":"true"})],-1)),a("div",N4,[a("p",k4,q(u.value),1),a("p",P4,q(d.value),1)])]),a("div",D4,[a("div",R4,[p[2]||(p[2]=a("span",{class:"detail-label"},"Queue:",-1)),a("span",M4,q(e.queueName),1)]),a("div",I4,[p[3]||(p[3]=a("span",{class:"detail-label"},"Exchange Type:",-1)),a("span",q4,q(e.exchangeType),1)]),o.value&&l.value?(N(),P("div",L4,[a("span",F4,q(l.value)+":",1),a("span",V4,q(o.value),1)])):he("",!0)])])]),footer:qe(()=>[a("button",{type:"button",class:"btn btn-secondary",disabled:e.isLoading,onClick:h}," Cancel ",8,Q4),a("button",{type:"button",class:"btn btn-danger",disabled:e.isLoading,onClick:c},[e.isLoading?(N(),P("span",B4)):(N(),P("i",U4)),te(" "+q(e.isLoading?"Unbinding...":"Unbind Queue"),1)],8,j4)]),_:1},8,["is-visible","title","subtitle"]))}}),qc=Xe(K4,[["__scopeId","data-v-1556a4bd"]]),H4={class:"exchange-content"},G4={key:0,class:"stats-overview"},W4={class:"stats-grid",role:"group","aria-label":"Exchange stats"},z4={class:"stat-card"},Y4={class:"stat-content"},Z4={class:"stat-value"},J4={class:"stat-label"},X4={class:"stat-card"},e3={class:"stat-content"},t3={class:"stat-value"},s3={class:"stat-label"},n3={key:1,class:"bindings-section","aria-labelledby":"bindings-title"},i3={class:"bindings-list"},r3={class:"binding-header"},a3={class:"routing-key-info"},o3={class:"routing-key-badge",title:"Routing key"},l3={class:"routing-key-text"},u3={class:"queue-count"},c3={key:0,class:"queues-list"},d3={class:"queue-info"},f3={class:"queue-name"},h3=["disabled","aria-label","onClick"],p3={key:1,class:"no-queues"},m3=20,g3=Ue({__name:"ExchangeDirectView",setup(e){const t=ps(),s=os(),n=Xt(),i=fn(),r=b(()=>String(t.params.exchange)),o=b(()=>String(t.params.ns)),l=b(()=>!!r.value&&!!o.value),u=be(!1),d=be(!1),c=be(!1),h=be(null),{data:m,isLoading:p,error:v,refetch:E}=Wg(o,r,{query:{enabled:l}}),_=b(()=>m.value?.data||[]),S=Array.from({length:m3},(W,se)=>{const ue=b(()=>_.value[se]||""),Re=b(()=>l.value&&se<_.value.length&&!!_.value[se]);return zg(o,r,b(()=>({routingKey:ue.value})),{query:{enabled:Re}})}),C=xc({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:Cu(o.value,r.value)}),_.value.forEach(W=>{i.invalidateQueries({queryKey:Au(o.value,r.value,{routingKey:W})})}),d.value=!1},onError:W=>{console.error("Failed to bind queue:",W)}}}),A=px({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:Cu(o.value,r.value)}),_.value.forEach(W=>{i.invalidateQueries({queryKey:Au(o.value,r.value,{routingKey:W})})}),c.value=!1,h.value=null},onError:W=>{console.error("Failed to unbind queue:",W)}}}),g=b(()=>p.value||S.some((W,se)=>se<_.value.length&&W.isLoading.value)),$=b(()=>!!v.value||S.some((W,se)=>se<_.value.length&&!!W.error.value)),L=b(()=>{if(v.value)return dt(v.value);const W=S.find((se,ue)=>ue<_.value.length&&se.error.value)?.error.value;return W?dt(W):null}),V=b(()=>{const W=[];return _.value.forEach((se,ue)=>{if(ue>=S.length)return;const Ie=S[ue].data?.value?.data||[];W.push({routingKey:se,queues:Ie.map(tt=>({name:tt.name})),totalQueues:Ie.length})}),W}),I=b(()=>V.value.reduce((W,se)=>W+se.totalQueues,0)),w=b(()=>_.value.length),O=b(()=>C.isPending.value),x=b(()=>A.isPending.value),F=()=>{d.value=!0},H=(W,se)=>{h.value={name:W,routingKey:se},c.value=!0},z=()=>{u.value=!0},fe=()=>{E(),S.forEach((W,se)=>{se<_.value.length&&W.refetch()})},ie=async W=>{await C.mutateAsync({ns:o.value,direct:r.value,queue:W.queueName,params:{routingKey:String(W.routingKey)}})},G=async()=>{h.value&&await A.mutateAsync({ns:o.value,direct:r.value,queue:h.value.name,params:{routingKey:h.value.routingKey}})},X=()=>{s.push("/exchanges")},Z=b(()=>[{id:"bind-queue",label:"Bind Queue",icon:"bi bi-link-45deg",variant:"primary",disabled:O.value,loading:O.value,handler:F,tooltip:"Bind a queue to this exchange with a routing key"},{id:"refresh",label:"Refresh",icon:"bi bi-arrow-clockwise",variant:"refresh",disabled:g.value,loading:g.value,handler:fe,tooltip:"Refresh exchange data"},{id:"delete-exchange",label:"Delete Exchange",icon:"bi bi-trash",variant:"danger",disabled:!1,loading:!1,handler:z,tooltip:"Delete this exchange. If any queues are bound, you will be prompted to unbind them first."}]);return At(()=>{if(!l.value){n.setPageHeader({title:"Invalid Exchange",subtitle:"Exchange name and namespace are required",icon:"bi bi-exclamation-triangle"}),n.setPageActions([]),n.setErrorState({message:"Invalid route parameters"});return}n.setPageHeader({title:`Direct Exchange: ${r.value}`,subtitle:`Namespace: ${o.value} • Routes messages based on exact routing key matches`,icon:"bi bi-arrow-right"}),n.setPageActions(Z.value),n.setLoadingState(g.value),$.value?(n.setErrorState(L.value),n.setEmptyState(!1)):!g.value&&w.value===0?(n.setErrorState(null),n.setEmptyState(!0,{icon:"bi bi-arrow-right",title:"No Queue Bindings",message:"This direct exchange has no queue bindings. Bind a queue with a routing key to start routing messages.",actionLabel:"Bind Queue",actionHandler:F})):(n.setErrorState(null),n.setEmptyState(!1))}),Bt(()=>{l.value||s.push("/exchanges")}),(W,se)=>(N(),P("div",H4,[we(ms,null,{default:qe(()=>[!g.value&&!$.value&&w.value>0?(N(),P("div",G4,[a("div",W4,[a("div",z4,[se[3]||(se[3]=a("div",{class:"stat-icon routing-keys","aria-hidden":"true"},[a("i",{class:"bi bi-key"})],-1)),a("div",Y4,[a("div",Z4,q(w.value),1),a("div",J4," Routing "+q(w.value===1?"Key":"Keys"),1)])]),a("div",X4,[se[4]||(se[4]=a("div",{class:"stat-icon queues","aria-hidden":"true"},[a("i",{class:"bi bi-box"})],-1)),a("div",e3,[a("div",t3,q(I.value),1),a("div",s3," Bound "+q(I.value===1?"Queue":"Queues"),1)])])])])):he("",!0),!g.value&&!$.value&&V.value.length>0?(N(),P("section",n3,[se[9]||(se[9]=a("h2",{id:"bindings-title",class:"section-title"},[a("i",{class:"bi bi-diagram-3","aria-hidden":"true"}),te(" Queue Bindings ")],-1)),a("div",i3,[(N(!0),P(Ae,null,bt(V.value,ue=>(N(),P("article",{key:ue.routingKey,class:"binding-card"},[a("header",r3,[a("div",a3,[a("div",o3,[se[5]||(se[5]=a("i",{class:"bi bi-key","aria-hidden":"true"},null,-1)),a("span",l3,q(ue.routingKey),1)]),a("div",u3,q(ue.totalQueues)+" "+q(ue.totalQueues===1?"queue":"queues"),1)])]),ue.queues.length>0?(N(),P("div",c3,[(N(!0),P(Ae,null,bt(ue.queues,Re=>(N(),P("div",{key:`${ue.routingKey}-${Re.name}`,class:"queue-item"},[a("div",d3,[se[6]||(se[6]=a("i",{class:"bi bi-box","aria-hidden":"true"},null,-1)),a("span",f3,q(Re.name),1)]),a("button",{type:"button",class:"btn-unbind",disabled:x.value,"aria-label":`Unbind queue ${Re.name} from routing key ${ue.routingKey}`,onClick:Ie=>H(Re.name,ue.routingKey)},[...se[7]||(se[7]=[a("i",{class:"bi bi-x-circle","aria-hidden":"true"},null,-1),a("span",null,"Unbind",-1)])],8,h3)]))),128))])):(N(),P("div",p3,[...se[8]||(se[8]=[a("i",{class:"bi bi-inbox","aria-hidden":"true"},null,-1),a("span",null,"No queues bound to this routing key",-1)])]))]))),128))])])):he("",!0)]),_:1}),we(ia,{"is-visible":u.value,"exchange-type":T(Te).DIRECT,"exchange-name":r.value,namespace:o.value,"total-queues":I.value,"total-routing-keys":w.value,onDeleted:X,onClose:se[0]||(se[0]=ue=>u.value=!1)},null,8,["is-visible","exchange-type","exchange-name","namespace","total-queues","total-routing-keys"]),we(Ic,{"is-visible":d.value,"is-loading":O.value,error:T(dt)(T(C).error.value?.error),"exchange-type":"direct","exchange-name":r.value,namespace:o.value,onConfirm:ie,onCancel:se[1]||(se[1]=ue=>d.value=!1)},null,8,["is-visible","is-loading","error","exchange-name","namespace"]),we(qc,{"is-visible":c.value,"is-loading":x.value,error:T(dt)(T(A).error.value?.error),"queue-name":h.value?.name||"","routing-key":h.value?.routingKey||"","exchange-type":"direct",onConfirm:G,onCancel:se[2]||(se[2]=ue=>{c.value=!1,h.value=null})},null,8,["is-visible","is-loading","error","queue-name","routing-key"])]))}}),v3=Xe(g3,[["__scopeId","data-v-205a050e"]]),b3={class:"topic-exchange-view"},y3={key:0,class:"stats-overview"},_3={class:"stats-grid"},E3={class:"stat-card"},w3={class:"stat-content"},C3={class:"stat-value"},A3={class:"stat-label"},S3={class:"stat-card"},x3={class:"stat-content"},$3={class:"stat-value"},T3={class:"stat-label"},O3={key:1,class:"bindings-section"},N3={class:"bindings-list"},k3={class:"binding-header"},P3={class:"binding-pattern-info"},D3={class:"binding-pattern-badge",title:"Binding pattern"},R3={class:"binding-pattern-text"},M3={class:"queue-count"},I3={class:"pattern-explanation"},q3={class:"explanation-text"},L3={key:0,class:"queues-list"},F3={class:"queue-info"},V3={class:"queue-name"},Q3=["disabled","aria-label","onClick"],j3={key:1,class:"no-queues"},B3=20,U3=Ue({__name:"ExchangeTopicView",setup(e){const t=ps(),s=os(),n=Xt(),i=fn(),r=b(()=>String(t.params.exchange)),o=b(()=>String(t.params.ns)),l=b(()=>!!(r.value&&o.value)),u=be(!1),d=be(!1),c=be(!1),h=be(null),m=se=>{let ue=se.replace(/\*/g,"word").replace(/#/g,"any.nested.keys");return!se.includes("*")&&!se.includes("#")?se:ue},{data:p,isLoading:v,error:E,refetch:_}=Yg(o,r,{query:{enabled:l}}),S=b(()=>p.value?.data||[]),C=Array.from({length:B3},(se,ue)=>{const Re=b(()=>S.value[ue]||""),Ie=b(()=>l.value&&ue<S.value.length&&!!S.value[ue]);return Zg(o,r,b(()=>({bindingPattern:Re.value})),{query:{enabled:Ie}})}),A=$c({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:Su(o.value,r.value)}),S.value.forEach(se=>{i.invalidateQueries({queryKey:xu(o.value,r.value,{bindingPattern:se})})}),d.value=!1},onError:se=>{console.error("Failed to bind queue:",se)}}}),g=xx({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:Su(o.value,r.value)}),S.value.forEach(se=>{i.invalidateQueries({queryKey:xu(o.value,r.value,{bindingPattern:se})})}),c.value=!1,h.value=null},onError:se=>{console.error("Failed to unbind queue:",se)}}}),$=b(()=>v.value||C.some((se,ue)=>ue<S.value.length&&se.isLoading.value)),L=b(()=>!!E.value||C.some((se,ue)=>ue<S.value.length&&!!se.error.value)),V=b(()=>{if(E.value)return dt(E.value);const se=C.find((ue,Re)=>Re<S.value.length&&ue.error.value)?.error.value;return se?dt(se):null}),I=b(()=>{const se=[];return S.value.forEach((ue,Re)=>{if(Re>=C.length)return;const tt=C[Re].data?.value?.data||[];se.push({bindingPattern:ue,queues:tt.map(ve=>({name:ve.name})),totalQueues:tt.length})}),se}),w=b(()=>I.value.reduce((se,ue)=>se+ue.totalQueues,0)),O=b(()=>S.value.length),x=b(()=>A.isPending.value),F=b(()=>g.isPending.value),H=()=>{d.value=!0},z=(se,ue)=>{h.value={name:se,bindingPattern:ue},c.value=!0},fe=()=>{u.value=!0},ie=()=>{_(),C.forEach((se,ue)=>{ue<S.value.length&&se.refetch()})},G=async se=>{await A.mutateAsync({ns:o.value,topic:r.value,queue:se.queueName,params:{bindingPattern:String(se.bindingPattern)}})},X=async()=>{h.value&&await g.mutateAsync({ns:o.value,topic:r.value,queue:h.value.name,params:{bindingPattern:h.value.bindingPattern}})},Z=()=>{s.push("/exchanges")},W=b(()=>[{id:"bind-queue",label:"Bind Queue",icon:"bi bi-link-45deg",variant:"primary",disabled:x.value,loading:x.value,handler:H,tooltip:"Bind a queue to this exchange with a binding pattern"},{id:"refresh",label:"Refresh",icon:"bi bi-arrow-clockwise",variant:"refresh",disabled:$.value,loading:$.value,handler:ie,tooltip:"Refresh exchange data"},{id:"delete-exchange",label:"Delete Exchange",icon:"bi bi-trash",variant:"danger",disabled:!1,loading:!1,handler:fe,tooltip:"Delete this exchange. If any queues are bound, you will be prompted to unbind them first."}]);return At(()=>{if(!l.value){n.setPageHeader({title:"Invalid Exchange",subtitle:"Exchange name and namespace are required",icon:"bi bi-exclamation-triangle"}),n.setPageActions([]),n.setErrorState({message:"Invalid route parameters"});return}n.setPageHeader({title:`Topic Exchange: ${r.value}`,subtitle:`Namespace: ${o.value} • Routes messages based on routing key patterns`,icon:"bi bi-hash"}),n.setPageActions(W.value),n.setLoadingState($.value),L.value?(n.setErrorState(V.value),n.setEmptyState(!1)):!$.value&&O.value===0?(n.setErrorState(null),n.setEmptyState(!0,{icon:"bi bi-hash",title:"No Queue Bindings",message:"This topic exchange has no queue bindings. Bind a queue with a binding pattern to start routing messages.",actionLabel:"Bind Queue",actionHandler:H})):(n.setErrorState(null),n.setEmptyState(!1))}),Bt(()=>{l.value||s.push("/exchanges")}),(se,ue)=>(N(),P("div",b3,[we(ms,null,{default:qe(()=>[!$.value&&!L.value&&O.value>0?(N(),P("div",y3,[a("div",_3,[a("div",E3,[ue[3]||(ue[3]=a("div",{class:"stat-icon binding-patterns"},[a("i",{class:"bi bi-hash","aria-hidden":"true"})],-1)),a("div",w3,[a("div",C3,q(O.value),1),a("div",A3," Binding "+q(O.value===1?"Pattern":"Patterns"),1)])]),a("div",S3,[ue[4]||(ue[4]=a("div",{class:"stat-icon queues"},[a("i",{class:"bi bi-box","aria-hidden":"true"})],-1)),a("div",x3,[a("div",$3,q(w.value),1),a("div",T3," Bound "+q(w.value===1?"Queue":"Queues"),1)])])])])):he("",!0),!$.value&&!L.value&&I.value.length>0?(N(),P("div",O3,[ue[10]||(ue[10]=a("h2",{class:"section-title"},[a("i",{class:"bi bi-diagram-3","aria-hidden":"true"}),te(" Queue Bindings ")],-1)),a("div",N3,[(N(!0),P(Ae,null,bt(I.value,Re=>(N(),P("div",{key:Re.bindingPattern,class:"binding-card"},[a("div",k3,[a("div",P3,[a("div",D3,[ue[5]||(ue[5]=a("i",{class:"bi bi-hash","aria-hidden":"true"},null,-1)),a("span",R3,q(Re.bindingPattern),1)]),a("div",M3,q(Re.totalQueues)+" "+q(Re.totalQueues===1?"queue":"queues"),1)]),a("div",I3,[ue[6]||(ue[6]=a("i",{class:"bi bi-info-circle","aria-hidden":"true"},null,-1)),a("span",q3," Matches routing keys like: "+q(m(Re.bindingPattern)),1)])]),Re.queues.length>0?(N(),P("div",L3,[(N(!0),P(Ae,null,bt(Re.queues,Ie=>(N(),P("div",{key:`${Re.bindingPattern}-${Ie.name}`,class:"queue-item"},[a("div",F3,[ue[7]||(ue[7]=a("i",{class:"bi bi-box","aria-hidden":"true"},null,-1)),a("span",V3,q(Ie.name),1)]),a("button",{type:"button",class:"btn-unbind",disabled:F.value,"aria-label":`Unbind queue ${Ie.name} from binding pattern ${Re.bindingPattern}`,onClick:tt=>z(Ie.name,Re.bindingPattern)},[...ue[8]||(ue[8]=[a("i",{class:"bi bi-x-circle","aria-hidden":"true"},null,-1),a("span",null,"Unbind",-1)])],8,Q3)]))),128))])):(N(),P("div",j3,[...ue[9]||(ue[9]=[a("i",{class:"bi bi-inbox","aria-hidden":"true"},null,-1),a("span",null,"No queues bound to this pattern",-1)])]))]))),128))])])):he("",!0)]),_:1}),we(ia,{"is-visible":u.value,"exchange-type":T(Te).TOPIC,"exchange-name":r.value,namespace:o.value,"total-queues":w.value,"total-binding-patterns":O.value,onDeleted:Z,onClose:ue[0]||(ue[0]=Re=>u.value=!1)},null,8,["is-visible","exchange-type","exchange-name","namespace","total-queues","total-binding-patterns"]),we(Ic,{"is-visible":d.value,"is-loading":x.value,error:T(dt)(T(A).error.value?.error),"exchange-type":"topic","exchange-name":r.value,namespace:o.value,onConfirm:G,onCancel:ue[1]||(ue[1]=Re=>d.value=!1)},null,8,["is-visible","is-loading","error","exchange-name","namespace"]),we(qc,{"is-visible":c.value,"is-loading":F.value,error:T(dt)(T(g).error.value?.error),"queue-name":h.value?.name||"","binding-pattern":h.value?.bindingPattern||"","exchange-type":"topic",onConfirm:X,onCancel:ue[2]||(ue[2]=Re=>{c.value=!1,h.value=null})},null,8,["is-visible","is-loading","error","queue-name","binding-pattern"])]))}}),K3=Xe(U3,[["__scopeId","data-v-00510631"]]),H3={class:"fanout-exchange-view"},G3={key:0,class:"stats-overview"},W3={class:"stats-grid"},z3={class:"stat-card"},Y3={class:"stat-content"},Z3={class:"stat-value"},J3={class:"stat-label"},X3={key:1,class:"exchange-info"},ej={class:"info-card"},tj={class:"info-description"},sj={key:2,class:"queues-section"},nj={class:"queues-grid"},ij={class:"queue-header"},rj={class:"queue-info"},aj={class:"queue-name"},oj=["disabled","aria-label","onClick"],lj=Ue({__name:"ExchangeFanoutView",setup(e){const t=ps(),s=os(),n=Xt(),i=fn(),r=b(()=>String(t.params.exchange)),o=b(()=>String(t.params.ns)),l=b(()=>!!(r.value&&o.value)),u=be(!1),d=be(!1),c=be(!1),h=be(null),{data:m,isLoading:p,error:v,refetch:E}=Gg(o,r,{query:{enabled:l}}),_=Sc({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:wu(o.value,r.value)}),d.value=!1},onError:Z=>{console.error("Failed to bind queue:",Z)}}}),S=sx({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:wu(o.value,r.value)}),c.value=!1,h.value=null},onError:Z=>{console.error("Failed to unbind queue:",Z)}}}),C=b(()=>p.value),A=b(()=>!!v.value),g=b(()=>dt(v.value)),$=b(()=>(m.value?.data||[]).map(W=>({name:W.name}))),L=b(()=>$.value.length),V=b(()=>_.isPending.value),I=b(()=>S.isPending.value),w=b(()=>dt(_.error.value?.error)),O=b(()=>dt(S.error.value?.error)),x=()=>{d.value=!0},F=Z=>{h.value=Z,c.value=!0},H=()=>{u.value=!0},z=()=>{E()},fe=async Z=>{await _.mutateAsync({ns:o.value,fanout:r.value,queue:Z.queueName})},ie=async()=>{h.value&&await S.mutateAsync({ns:o.value,fanout:r.value,queue:h.value})},G=()=>{s.push("/exchanges")},X=b(()=>[{id:"bind-queue",label:"Bind Queue",icon:"bi bi-link-45deg",variant:"primary",disabled:V.value,loading:V.value,handler:x,tooltip:"Bind a queue to this fanout exchange"},{id:"refresh",label:"Refresh",icon:"bi bi-arrow-clockwise",variant:"refresh",disabled:C.value,loading:C.value,handler:z,tooltip:"Refresh exchange data"},{id:"delete-exchange",label:"Delete Exchange",icon:"bi bi-trash",variant:"danger",disabled:!1,loading:!1,handler:H,tooltip:"Delete this exchange. If any queues are bound, you will be prompted to unbind them first."}]);return At(()=>{if(!l.value){n.setPageHeader({title:"Invalid Exchange",subtitle:"Exchange name and namespace are required",icon:"bi bi-exclamation-triangle"}),n.setPageActions([]),n.setErrorState({message:"Invalid route parameters"});return}n.setPageHeader({title:`Fanout Exchange: ${r.value}`,subtitle:`Namespace: ${o.value} • Broadcasts messages to all bound queues`,icon:"bi bi-arrows-angle-expand"}),n.setPageActions(X.value),n.setLoadingState(C.value),A.value?(n.setErrorState(g.value),n.setEmptyState(!1)):!C.value&&L.value===0?(n.setErrorState(null),n.setEmptyState(!0,{icon:"bi bi-arrows-angle-expand",title:"No Queue Bindings",message:"This fanout exchange has no queue bindings. Bind a queue to start broadcasting messages.",actionLabel:"Bind Queue",actionHandler:x})):(n.setErrorState(null),n.setEmptyState(!1))}),Bt(()=>{l.value||s.push("/exchanges")}),(Z,W)=>(N(),P("div",H3,[we(ms,null,{default:qe(()=>[!C.value&&!A.value&&L.value>0?(N(),P("div",G3,[a("div",W3,[a("div",z3,[W[3]||(W[3]=a("div",{class:"stat-icon queues"},[a("i",{class:"bi bi-box","aria-hidden":"true"})],-1)),a("div",Y3,[a("div",Z3,q(L.value),1),a("div",J3," Bound "+q(L.value===1?"Queue":"Queues"),1)])]),W[4]||(W[4]=a("div",{class:"stat-card"},[a("div",{class:"stat-icon broadcast"},[a("i",{class:"bi bi-broadcast","aria-hidden":"true"})]),a("div",{class:"stat-content"},[a("div",{class:"stat-value"},"100%"),a("div",{class:"stat-label"},"Message Delivery")])],-1))])])):he("",!0),!C.value&&!A.value&&L.value>0?(N(),P("div",X3,[a("div",ej,[W[7]||(W[7]=a("div",{class:"info-header"},[a("i",{class:"bi bi-info-circle","aria-hidden":"true"}),a("h3",null,"How Fanout Exchange Works")],-1)),a("p",tj,[W[5]||(W[5]=te(" Fanout exchanges broadcast every message to all bound queues. When you publish a message to this exchange, it will be delivered to ",-1)),a("strong",null,"all "+q(L.value)+" bound queue"+q(L.value===1?"":"s"),1),W[6]||(W[6]=te(" regardless of routing keys. ",-1))])])])):he("",!0),!C.value&&!A.value&&$.value.length>0?(N(),P("div",sj,[W[11]||(W[11]=a("h2",{class:"section-title"},[a("i",{class:"bi bi-box","aria-hidden":"true"}),te(" Bound Queues ")],-1)),a("div",nj,[(N(!0),P(Ae,null,bt($.value,se=>(N(),P("div",{key:se.name,class:"queue-card"},[a("div",ij,[a("div",rj,[W[8]||(W[8]=a("i",{class:"bi bi-box","aria-hidden":"true"},null,-1)),a("span",aj,q(se.name),1)]),a("button",{type:"button",class:"btn-unbind",disabled:I.value,"aria-label":`Unbind queue ${se.name}`,onClick:ue=>F(se.name)},[...W[9]||(W[9]=[a("i",{class:"bi bi-x-circle","aria-hidden":"true"},null,-1),a("span",null,"Unbind",-1)])],8,oj)]),W[10]||(W[10]=a("div",{class:"queue-status"},[a("div",{class:"status-indicator active"},[a("i",{class:"bi bi-check-circle-fill","aria-hidden":"true"}),a("span",null,"Receiving all messages")])],-1))]))),128))])])):he("",!0)]),_:1}),we(ia,{"is-visible":u.value,"exchange-type":T(Te).FANOUT,"exchange-name":r.value,namespace:o.value,"total-queues":L.value,onDeleted:G,onClose:W[0]||(W[0]=se=>u.value=!1)},null,8,["is-visible","exchange-type","exchange-name","namespace","total-queues"]),we(Ic,{"is-visible":d.value,"is-loading":V.value,error:w.value,"exchange-type":"fanout","exchange-name":r.value,namespace:o.value,onConfirm:fe,onCancel:W[1]||(W[1]=se=>d.value=!1)},null,8,["is-visible","is-loading","error","exchange-name","namespace"]),we(qc,{"is-visible":c.value,"is-loading":I.value,error:O.value,"queue-name":h.value||"","exchange-type":"fanout",onConfirm:ie,onCancel:W[2]||(W[2]=se=>{c.value=!1,h.value=null})},null,8,["is-visible","is-loading","error","queue-name"])]))}}),uj=Xe(lj,[["__scopeId","data-v-1d5cc708"]]),cj={class:"namespace-exchanges-view"},dj={key:0,class:"namespace-stats"},fj={class:"stats-grid"},hj={class:"stat-card total"},pj={class:"stat-content"},mj={class:"stat-value"},gj={class:"stat-card direct"},vj={class:"stat-content"},bj={class:"stat-value"},yj={class:"stat-card fanout"},_j={class:"stat-content"},Ej={class:"stat-value"},wj={class:"stat-card topic"},Cj={class:"stat-content"},Aj={class:"stat-value"},Sj={key:1,class:"namespace-info"},xj={class:"info-card"},$j={class:"info-header"},Tj={class:"info-description"},Oj={key:2,class:"grid grid-cols-2 gap-6"},Nj=Ue({__name:"NamespaceExchangesView",setup(e){const t=ps(),s=os(),n=Xt(),i=fn(),r=b(()=>String(t.params.ns)),o=b(()=>!!r.value),l=be(!1),u=be(!1),d=be(null),c=be(null),{data:h,isLoading:m,isError:p,error:v,refetch:E}=RI(r,{query:{enabled:o}}),_=Sc({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:Cr(r)}),u.value=!1},onError:Z=>{console.error("Failed to create fanout exchange:",Z)}}}),S=xc({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:Cr(r)}),u.value=!1},onError:Z=>{console.error("Failed to create direct exchange:",Z)}}}),C=$c({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:Cr(r)}),u.value=!1},onError:Z=>{console.error("Failed to create topic exchange:",Z)}}}),A=b(()=>_.isPending.value||S.isPending.value||C.isPending.value),g=b(()=>dt(_.error.value?.error||S.error.value?.error||C.error.value?.error)),$=b(()=>h.value?.data??[]),L=b(()=>r.value?$.value.filter(Z=>Z.ns===r.value):[]),V=b(()=>dt(v.value)),I=b(()=>{const Z={total:L.value.length,direct:0,fanout:0,topic:0};return L.value.forEach(W=>{switch(W.type){case Te.DIRECT:Z.direct++;break;case Te.FANOUT:Z.fanout++;break;case Te.TOPIC:Z.topic++;break}}),Z}),w=Z=>{const W=L.value.find(se=>se.name===Z.exchange.name&&se.ns===Z.exchange.ns)||null;d.value=W??{name:Z.exchange.name,ns:Z.exchange.ns,type:Z.exchange.type},c.value=Z.totals,l.value=!0},O=()=>{u.value=!0},x=Z=>{console.log("Binding queue to:",Z.name)},F=Z=>{console.log("Unbinding queue from:",Z.exchange.name,"queue:",Z.queueName)},H=Z=>{console.log("Publishing message to:",Z.name)},z=async Z=>{const{name:W,type:se,ns:ue,queueName:Re,routingKey:Ie,bindingPattern:tt}=Z;try{switch(se){case Te.FANOUT:await _.mutateAsync({ns:ue,fanout:W,queue:Re});break;case Te.DIRECT:await S.mutateAsync({ns:ue,direct:W,queue:Re,params:{routingKey:String(Ie)}});break;case Te.TOPIC:await C.mutateAsync({ns:ue,topic:W,queue:Re,params:{bindingPattern:String(tt)}});break;default:throw new Error(`Unsupported exchange type: ${se}`)}}catch(ve){console.error("Failed to create exchange:",ve)}},fe=Z=>{const W={exchange:Z.name,ns:Z.ns};return Z.type==Te.DIRECT?{name:"Direct Exchange",params:W}:Z.type==Te.TOPIC?{name:"Topic Exchange",params:W}:{name:"Fanout Exchange",params:W}},ie=Z=>{const W=fe(Z);s.push(W)},G=()=>{i.invalidateQueries({queryKey:Cr(r)}),l.value=!1,d.value=null,c.value=null},X=b(()=>[{id:"create-exchange",label:"Create Exchange",icon:"bi bi-plus-lg",variant:"primary",disabled:A.value,loading:A.value,handler:O,tooltip:"Create a new exchange by binding a queue to it"},{id:"refresh-exchanges",label:"Refresh",icon:"bi bi-arrow-clockwise",variant:"refresh",disabled:m.value,loading:m.value,handler:()=>E(),tooltip:"Refresh exchanges list"}]);return At(()=>{if(!o.value){n.setPageHeader({title:"Invalid Namespace",subtitle:"Namespace parameter is required",icon:"bi bi-exclamation-triangle"}),n.setPageActions([]),n.setErrorState({message:"Invalid route parameters"});return}n.setPageHeader({title:`Exchanges in "${r.value}"`,subtitle:`View and manage exchanges in the ${r.value} namespace`,icon:"bi bi-diagram-3"}),n.setPageActions(X.value),n.setLoadingState(m.value),p.value?(n.setErrorState(V.value),n.setEmptyState(!1)):!m.value&&L.value.length===0?(n.setErrorState(null),n.setEmptyState(!0,{icon:"bi bi-diagram-3",title:"No Exchanges Found",message:`No exchanges are currently configured in the "${r.value}" namespace. Create your first exchange to start routing messages.`,actionLabel:"Create Exchange",actionHandler:O})):(n.setErrorState(null),n.setEmptyState(!1))}),(Z,W)=>(N(),P("div",cj,[we(ms,null,{default:qe(()=>[!T(m)&&!T(p)&&L.value.length>0?(N(),P("div",dj,[a("div",fj,[a("div",hj,[W[3]||(W[3]=a("div",{class:"stat-icon"},[a("i",{class:"bi bi-diagram-3","aria-hidden":"true"})],-1)),a("div",pj,[a("div",mj,q(I.value.total),1),W[2]||(W[2]=a("div",{class:"stat-label"},"Total Exchanges",-1))])]),a("div",gj,[W[5]||(W[5]=a("div",{class:"stat-icon"},[a("i",{class:"bi bi-arrow-right","aria-hidden":"true"})],-1)),a("div",vj,[a("div",bj,q(I.value.direct),1),W[4]||(W[4]=a("div",{class:"stat-label"},"Direct",-1))])]),a("div",yj,[W[7]||(W[7]=a("div",{class:"stat-icon"},[a("i",{class:"bi bi-arrows-angle-expand","aria-hidden":"true"})],-1)),a("div",_j,[a("div",Ej,q(I.value.fanout),1),W[6]||(W[6]=a("div",{class:"stat-label"},"Fanout",-1))])]),a("div",wj,[W[9]||(W[9]=a("div",{class:"stat-icon"},[a("i",{class:"bi bi-hash","aria-hidden":"true"})],-1)),a("div",Cj,[a("div",Aj,q(I.value.topic),1),W[8]||(W[8]=a("div",{class:"stat-label"},"Topic",-1))])])])])):he("",!0),!T(m)&&!T(p)&&L.value.length>0?(N(),P("div",Sj,[a("div",xj,[a("div",$j,[W[10]||(W[10]=a("i",{class:"bi bi-folder-fill","aria-hidden":"true"},null,-1)),a("h3",null,"Namespace: "+q(r.value),1)]),a("p",Tj," This namespace contains "+q(I.value.total)+" exchange"+q(I.value.total===1?"":"s")+". Exchanges in this namespace are isolated from other namespaces and can be managed independently. ",1)])])):he("",!0),L.value.length>0?(N(),P("div",Oj,[(N(!0),P(Ae,null,bt(L.value,se=>(N(),at(tv,{key:`${se.name}-${se.ns}`,exchange:se,onDelete:w,onViewDetails:ie,onBindQueue:x,onUnbindQueue:F,onPublishMessage:H},null,8,["exchange"]))),128))])):he("",!0)]),_:1}),we(ia,{"is-visible":l.value,"exchange-type":d.value?.type??0,"exchange-name":d.value?.name??"",namespace:d.value?.ns??"","total-queues":c.value?.totalQueues??0,"total-routing-keys":c.value?.totalRoutingKeys,"total-binding-patterns":c.value?.totalBindingPatterns,onDeleted:G,onClose:W[0]||(W[0]=se=>{l.value=!1,d.value=null,c.value=null})},null,8,["is-visible","exchange-type","exchange-name","namespace","total-queues","total-routing-keys","total-binding-patterns"]),we(Xg,{"is-visible":u.value,"is-loading":A.value,error:g.value,onConfirm:z,onCancel:W[1]||(W[1]=se=>u.value=!1)},null,8,["is-visible","is-loading","error"])]))}}),kj=Xe(Nj,[["__scopeId","data-v-2acb12a4"]]),Pj=[{path:"/ns",name:"Namespaces",component:Iv,meta:{title:"NamespacesView",breadcrumb:"NamespacesView"}},{path:"/ns/:ns/queues",name:"Namespace Queues",component:Eq,meta:{title:"Namespace Queues",breadcrumb:"Namespace Queues"}},{path:"/ns/:ns/queues/:queue",name:"Queue",component:s4,meta:{title:"Queue Details",breadcrumb:"Queue Details"}},{path:"/ns/:ns/queues/:queue/pending-messages",name:"Pending Messages",component:UL,meta:{title:"Queue Pending Messages"}},{path:"/ns/:ns/queues/:queue/acknowledged-messages",name:"Acknowledged Messages",component:uI,meta:{title:"Queue Acknowledged Messages"}},{path:"/ns/:ns/queues/:queue/dead-lettered-messages",name:"Dead-Lettered Messages",component:_I,meta:{title:"Queue Dead-Lettered Messages"}},{path:"/ns/:ns/queues/:queue/scheduled-messages",name:"Scheduled Messages",component:r4,meta:{title:"Queue Scheduled Messages"}},{path:"/ns/:ns/queues/:queue/messages",name:"Messages",component:l4,meta:{title:"Queue Messages"}},{path:"/ns/:ns/exchanges",name:"Namespace Exchanges",component:kj,meta:{title:"Namespace Exchanges",breadcrumb:"Namespace Exchanges"}},{path:"/ns/:ns/exchanges/direct/:exchange",name:"Direct Exchange",component:v3,meta:{title:"Direct Exchange Details",breadcrumb:"Direct Exchange Details"}},{path:"/ns/:ns/exchanges/topic/:exchange",name:"Topic Exchange",component:K3,meta:{title:"Topic Exchange Details",breadcrumb:"Topic Exchange Details"}},{path:"/ns/:ns/exchanges/fanout/:exchange",name:"Fanout Exchange",component:uj,meta:{title:"Fanout Exchange Details",breadcrumb:"Fanout Exchange Details"}}],Iu=[...Ba,...Pj],Dj={key:0,"aria-label":"breadcrumb",class:"breadcrumb-navigation"},Rj={class:"breadcrumb-container"},Mj={class:"breadcrumb-content"},Ij={class:"breadcrumb-list"},qj=["aria-current"],Lj={key:0,class:"breadcrumb-separator"},Fj=["title","onClick"],Vj={class:"breadcrumb-text"},Qj=["title"],jj={class:"breadcrumb-text"},Bj=Ue({__name:"BreadcrumbsPanel",setup(e){const t=ps(),s=os(),n=b(()=>{try{const h=[],m=t.path,p=t.params,v=i(m,p);return v.forEach((E,_)=>{const S=u(E.pattern);if(!S)return;const C=_===v.length-1,A=d(S);A&&h.push({title:A,to:C?void 0:E.actualPath,active:C})}),h}catch(h){return console.warn("Error building breadcrumbs:",h),[]}});function i(h,m){const p=[],v=h.split("/").filter(_=>_);let E="";h!=="/"&&u("/")&&p.push({pattern:"/",actualPath:"/"});for(let _=0;_<v.length;_++){E+="/"+v[_];const S=r(E,m);S&&p.push({pattern:S,actualPath:E})}return p}function r(h,m){const p=[...Iu].sort((v,E)=>{const _=o(v.path);return o(E.path)-_});for(const v of p)if(l(h,v.path,m))return v.path;return null}function o(h){const m=h.split("/").filter(v=>v);let p=m.length*10;for(const v of m)v.startsWith(":")&&(p-=5);return p}function l(h,m,p){const v=h.split("/").filter(_=>_),E=m.split("/").filter(_=>_);if(v.length!==E.length)return!1;for(let _=0;_<E.length;_++){const S=E[_],C=v[_];if(S.startsWith(":")){const A=S.substring(1);if(p[A]!==C)return!1}else if(S!==C)return!1}return!0}function u(h){return Iu.find(m=>m.path===h)}function d(h){return String(h.meta?.title||h.name)}function c(h){try{s.push(h)}catch(m){console.error("Navigation error:",m)}}return(h,m)=>n.value.length>0?(N(),P("nav",Dj,[a("div",Rj,[a("div",Mj,[m[1]||(m[1]=a("div",{class:"breadcrumb-home","aria-hidden":"true"},[a("i",{class:"bi bi-house-fill"}),a("span",{class:"sr-only"},"Home")],-1)),a("ol",Ij,[(N(!0),P(Ae,null,bt(n.value,(p,v)=>(N(),P("li",{key:`${p.title}-${v}`,class:De(["breadcrumb-item",{"breadcrumb-item-active":p.active,"breadcrumb-item-clickable":!p.active&&p.to}]),"aria-current":p.active?"page":void 0},[v>0?(N(),P("div",Lj,[...m[0]||(m[0]=[a("i",{class:"bi bi-chevron-right"},null,-1)])])):he("",!0),!p.active&&p.to?(N(),P("button",{key:1,type:"button",class:"breadcrumb-link",title:`Navigate to ${p.title}`,onClick:E=>c(p.to)},[a("span",Vj,q(p.title),1)],8,Fj)):(N(),P("div",{key:2,class:"breadcrumb-current",title:p.title},[a("span",jj,q(p.title),1)],8,Qj))],10,qj))),128))])])])])):he("",!0)}}),Uj=Xe(Bj,[["__scopeId","data-v-778a84ef"]]),Kj="9.0.0",Hj={version:Kj},Gj="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFsAAAA2CAYAAACoXOUdAAAACXBIWXMAAC4jAAAuIwF4pT92AAACaklEQVR42u2cv2sUQRzF35MLXhEUNahFRMSzFUt7m5Ar9A+wCNqaKghpRIKFQixsrIyFpVgkUYKdrRAEC4sVDFhE0CIKomCh4WvhHkzGmbkfu9ndkPfg4Oa7b/a7+9nvzs4ezMH+KUMu26kXCMjzLOexrplZxJul+qb8fXJmiZy+dy7k9XOa2aIF5HiHyXnWDR6AVJkEW7AFWxJswZYEW7AFWxJswZYEW7AFWxJswZYEW7AlwRZswZYEW7AlwRZswZYEW7AlwRZsSbAFW5IkSZKk/SY27YDMbAlAm+TVAvuYA9AC8MfbtE3yQZ0nZ73lZgHd3qWclxPL5H7Gtg15TiH9SvifRfose+3NAZbmBdVy/BvO99MAxgB8q+H6ny9p/v8KwHO/shP+3x6D4wAOAfjixduR/u8HrmwvlhWtrlEru8S79U4Rv5k9ilRwqrI3I/v/2MhFp/6K2n3/up4alyLet55npeRny+JegN0asd8WgB8A1pzYGQDdRB933BsHcHLE3BuB2NdA7KaZzfw3/SJP1Q47VpX5AfpTxAkAWyRnHW83BZvkOXfMHqW6/f300UEAk02t7BuB7dP5J3Zr33WanYrG9OuB8DuS684FYaDfJQBXGgGb5MPAAU6kYAOYr+GYlwKx+wDW+/S7kBfU7F4bs3uqslJmAHwHcNiJ3QJwAsDTBs6qXgL4TPJaKbBJrlb2uwL5JHBC8wDGSb5p4ORjyn+YtwpevQ+B8GOS9wLe107zaEm5Oj3obs6I98guw/3Ue+lx2m23XXQYCT0Uj0W8Fwfc58IQuWI5OzVU8iSkRozfmf4jqmL9BR+MejvoqIOKAAAAAElFTkSuQmCC",Wj="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAW0AAADXCAYAAADRJwCFAAAACXBIWXMAAC4jAAAuIwF4pT92AAAFnElEQVR42u3cP2icZRzA8d9zCUEQa65KBx1yqUUz2MVJQcHBUTo7Fgw4WJvrIMYtBaEdOlxKt7aQLqLg6CSUIkQUBxcVKi3tBRwrdy2d2rt73FzMe9G379vc5T6f9eH9c8/7vt8cx5M3dbq9HAVSjpNry81rRePjtt3DdrvVfCcqVtf5dLq9WxFxrGCWVtutxavVn+/4/Zb/rOmndmvxrTrneq/7ZkKuaem5H2ez27ucI1an5R6s4pp27jx4LRrDm1GDdquZCs93p38ucl7frzl5suvZ/zEiv1lmx40AYGqINoBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAOINgCiDYBoA4g2AKINgGgDiDYAog2AaAOINgCiDYBoA4g2AKINgGgDiDYAog2AaAOINgCiDYBoA4g2AKINgGgDiDYAog2AaAOINgCiDYBoA4g2AKINgGgDiDYAog2AaAOINgCiDYBoA4g2AKINgGgDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0y6ZAqjOpT8fvFA0NnjUmJ9fGA2qPua9l5+7v5HSwOzPhvlOt5cLi57jZE6xVceB262mPxg1GXdNI9Jqu7V49YmPcbf/UYpRc9fBRmyvLR3ensW5HwyG9woHG8MY1JDWw93+uxHxfb33zSR+5UznI+f1OhsziXMyL3GUe2DypznSK7sN5VGcjYhtkwTVa5gCANEGQLQBRBsA0QaganuuHim7bGavZWemnhn0e0pxueqdDuaGt5/CuV9qt5qflGrBTv+zyPl8UQvKLkHt7PTP1f2hJ3FpsiV/lL2Zj5mF/+3G2lJz0zRMj7FfPlM6315a/LzyY+70z41bf+7nEYApItoAog2AaAOINgCiDUDlDtSSv/14jWJO+e0zS4d/qP58082IvDKNc51znD2z3NyY1msao7mV9tFDf8gDvmkDINoAog2AaAMg2gCiDcBkOWhv+fu2aCCl1FlbWrxeZqedbu9WRDzVt9rlNFqtZynhwZFynFxbbl6bolM+1en2TtUwE6Vfb8oBjHY9AchXOt3elaLRJ3iH7fuFI6P8jcsNTDs/jwCINgCiDSDaAIg2AJX7L0v+fqvp2K8/zQ+aU7x46U5vqcy2A/fJRMoRb2ze7fUrfyiefXz94yNHHpbcvK7n5dWIWNhtIKX8yN0g2v9ot5rH6zjwPqwlvjBoxIWS2952q0ygFKdzxOmqd/v44TMrEVHq1aw1Pi+F/yswinzHzTA7/DwCINoAiDaAaAMg2gBUbt4UAFTr4q2/Dg0XUuFKorJv8JyxaKcvU8o/l9lyNIr7jUY8v9vYXBredYvWKKcP6rkd8heFQ43hS1FyyR9ERAwX0vGU0/a4O1C093xG83drral69zIR0V5e/LqO/Xa6va8K/05EOhoRN8w+k8hv2gCiDYBoA4g2AKINQOWs055UozixudN7r8ymOZs+qF3O651ub333sfGbjn3L6R4P8MxEO6fY6nR7W9XHdW6lffRQ5Wt6U2qcyDmvzPpzsQ+v8I3RKP06TefLbPHzCPzroUj3zQKiDYBoA4g2AKINgGgDzIxkCgAmR6fb/zAiX/FNG+AAEG0A0QZAtAFEGwDRBqByXs0KMFHfpPMvOcVG0fjf8tFYjp6FvpMAAAAASUVORK5CYII=",zj={class:"app"},Yj={key:0,class:"loading-screen"},Zj={class:"loading-container"},Jj={class:"loading-content"},Xj={class:"brand-section"},eB={class:"brand-logo loading-logo"},tB=["src"],sB={key:1,class:"error-screen"},nB={class:"error-container"},iB={class:"error-content"},rB={class:"error-message"},aB={key:2,class:"app-layout"},oB={class:"app-header"},lB={class:"header-container"},uB={class:"header-content"},cB={class:"brand-section"},dB={class:"brand-logo"},fB=["src"],hB={class:"app-navigation",role:"navigation","aria-label":"Main navigation"},pB={class:"nav-list nav-desktop",role:"tablist"},mB={class:"nav-label"},gB={key:0,class:"nav-indicator"},vB={class:"nav-mobile"},bB=["aria-expanded"],yB={class:"current-page"},_B={id:"mobile-nav-menu",class:"mobile-nav-menu",role:"menu"},EB={class:"app-main",role:"main"},wB={class:"content-wrapper"},CB={class:"content-container"},AB={class:"app-footer",role:"contentinfo"},SB={class:"footer-container"},xB={class:"footer-content"},$B={class:"footer-info"},TB={class:"version-info"},OB={class:"version"},NB=Ue({__name:"App",setup(e){const t=be(!0),s=be(null),n=os(),i=b(()=>Hj.version),r=async()=>{try{t.value=!0,s.value=null,await new Promise(m=>setTimeout(m,1500))}catch(m){console.error("App initialization failed:",m),s.value="Failed to initialize application"}finally{t.value=!1}};Bt(()=>{r()});const o=m=>n.currentRoute.value.name===m,l=()=>{r()},u=be(!1),d=be(null);Ye(()=>n.currentRoute.value.fullPath,()=>{u.value=!1});function c(m){if(!u.value)return;const p=m.target,v=d.value;v&&!v.contains(p)&&(u.value=!1)}function h(m){m.key==="Escape"&&u.value&&(u.value=!1)}return Bt(()=>{document.addEventListener("click",c,!0),document.addEventListener("keydown",h,!0)}),Ji(()=>{document.removeEventListener("click",c,!0),document.removeEventListener("keydown",h,!0)}),(m,p)=>{const v=Ud("RouterLink"),E=Ud("RouterView");return N(),P("div",zj,[t.value?(N(),P("div",Yj,[a("div",Zj,[a("div",Jj,[a("div",Xj,[a("div",eB,[a("img",{src:T(Wj),alt:"RedisSMQ Logo",class:"logo-image"},null,8,tB)])]),p[1]||(p[1]=a("div",{class:"loading-animation"},[a("div",{class:"spinner"}),a("p",{class:"loading-text"},"Initializing application...")],-1))])])])):s.value?(N(),P("div",sB,[a("div",nB,[a("div",iB,[p[3]||(p[3]=a("div",{class:"error-icon"},"⚠️",-1)),p[4]||(p[4]=a("h2",{class:"error-title"},"Application Error",-1)),a("p",rB,q(s.value),1),a("button",{class:"btn btn-primary btn-retry",onClick:l},[...p[2]||(p[2]=[a("i",{class:"bi bi-arrow-clockwise me-2"},null,-1),te(" Try Again ",-1)])])])])])):(N(),P("div",aB,[a("header",oB,[a("div",lB,[a("div",uB,[a("div",cB,[a("div",dB,[a("img",{src:T(Gj),alt:"RedisSMQ Logo",class:"logo-image"},null,8,fB)]),p[5]||(p[5]=a("div",{class:"brand-info"},[a("h1",{class:"brand-title"},"RedisSMQ"),a("span",{class:"brand-subtitle"},"Web UI")],-1))])]),a("nav",hB,[a("ul",pB,[(N(!0),P(Ae,null,bt(T(Ba),_=>(N(),P("li",{key:_.name,class:"nav-item",role:"presentation"},[we(v,{to:{name:_.name},class:De(["nav-link",{"nav-link-active":o(_.name)}]),"aria-current":o(_.name)?"page":void 0},{default:qe(()=>[a("span",mB,q(_.name),1),o(_.name)?(N(),P("span",gB)):he("",!0)]),_:2},1032,["to","class","aria-current"])]))),128))]),a("div",vB,[a("div",{ref_key:"mobileNavDropdown",ref:d,class:"mobile-nav-dropdown"},[a("button",{class:"mobile-nav-toggle",type:"button","aria-expanded":u.value,"aria-haspopup":"true","aria-controls":"mobile-nav-menu",onClick:p[0]||(p[0]=_=>u.value=!u.value)},[a("span",yB,q(T(Ba).find(_=>o(_.name))?.name||"Navigation"),1),p[6]||(p[6]=a("i",{class:"bi bi-chevron-down toggle-icon"},null,-1))],8,bB),ss(a("ul",_B,[(N(!0),P(Ae,null,bt(T(Ba),_=>(N(),P("li",{key:_.name,role:"none"},[we(v,{to:{name:_.name},class:De(["mobile-nav-link",{"mobile-nav-link-active":o(_.name)}]),role:"menuitem"},{default:qe(()=>[te(q(_.name),1)]),_:2},1032,["to","class"])]))),128))],512),[[i0,u.value]])],512)])])])]),a("main",EB,[we(Uj),a("div",wB,[a("div",CB,[(N(),at($w,null,{default:qe(()=>[we(E,null,{default:qe(({Component:_,route:S})=>[(N(),at(Mo(_),{key:S.path}))]),_:1})]),fallback:qe(()=>[...p[7]||(p[7]=[a("div",{class:"page-loading"},[a("div",{class:"loading-content"},[a("div",{class:"spinner-small"}),a("p",{class:"loading-text"},"Loading page...")])],-1)])]),_:1}))])])]),a("footer",AB,[a("div",SB,[a("div",xB,[a("div",$B,[a("div",TB,[a("span",OB,"RedisSMQ Web UI "+q(i.value),1),p[8]||(p[8]=a("span",{class:"separator"},"•",-1)),p[9]||(p[9]=a("span",{class:"license"},[te(" Licensed under "),a("a",{href:"https://github.com/weyoss/redis-smq/blob/master/LICENSE",target:"_blank",rel:"noopener noreferrer",class:"license-link"}," MIT License ")],-1))])]),p[10]||(p[10]=ai('<div class="footer-links" data-v-08e652ea><a href="https://github.com/weyoss/redis-smq" target="_blank" rel="noopener noreferrer" class="footer-link" aria-label="View on GitHub" data-v-08e652ea><i class="bi bi-github me-1" data-v-08e652ea></i> GitHub </a><a href="https://github.com/weyoss/redis-smq/blob/master/packages/redis-smq/docs/README.md" target="_blank" rel="noopener noreferrer" class="footer-link" data-v-08e652ea><i class="bi bi-book me-1" data-v-08e652ea></i> Documentation </a></div>',1))])])])]))])}}}),kB=Xe(NB,[["__scopeId","data-v-08e652ea"]]),PB={class:"not-found-page"},DB=Ue({__name:"NotFoundView",setup(e){const t=os();function s(){t.push({name:"Home"})}function n(){window.history.length>1?t.go(-1):s()}function i(){t.push({name:"Queues"})}return(r,o)=>(N(),P("div",PB,[a("div",{class:"not-found-container"},[a("main",{class:"not-found-content"},[o[3]||(o[3]=ai('<div class="error-illustration" data-v-b9948732><div class="error-number" data-v-b9948732>404</div><div class="error-icon" data-v-b9948732>🔍</div></div><div class="error-message" data-v-b9948732><h1 class="error-title" data-v-b9948732>Page Not Found</h1><p class="error-subtitle" data-v-b9948732> Sorry, we couldn&#39;t find the page you&#39;re looking for. </p><p class="error-description" data-v-b9948732> The page might have been moved, deleted, or you may have entered an incorrect URL. </p></div>',2)),a("div",{class:"error-actions"},[a("button",{class:"btn btn-primary btn-home",onClick:s},[...o[0]||(o[0]=[a("i",{class:"bi bi-house-fill me-2"},null,-1),te(" Go to Home ",-1)])]),a("button",{class:"btn btn-outline-secondary btn-back",onClick:n},[...o[1]||(o[1]=[a("i",{class:"bi bi-arrow-left me-2"},null,-1),te(" Go Back ",-1)])]),a("button",{class:"btn btn-outline-primary btn-queues",onClick:i},[...o[2]||(o[2]=[a("i",{class:"bi bi-list-ul me-2"},null,-1),te(" View Queues ",-1)])])]),o[4]||(o[4]=ai('<div class="help-section" data-v-b9948732><h3 class="help-title" data-v-b9948732>What can you do?</h3><ul class="help-list" data-v-b9948732><li class="help-item" data-v-b9948732><i class="bi bi-check-circle-fill help-icon" data-v-b9948732></i><span data-v-b9948732>Check the URL for any typos</span></li><li class="help-item" data-v-b9948732><i class="bi bi-check-circle-fill help-icon" data-v-b9948732></i><span data-v-b9948732>Use the navigation menu to find what you&#39;re looking for</span></li><li class="help-item" data-v-b9948732><i class="bi bi-check-circle-fill help-icon" data-v-b9948732></i><span data-v-b9948732>Go back to the previous page or start from the home page</span></li></ul></div>',1))]),o[5]||(o[5]=a("footer",{class:"not-found-footer"},[a("p",{class:"footer-text"}," Need help? Check the documentation or contact support. ")],-1))])]))}}),RB=Xe(DB,[["__scopeId","data-v-b9948732"]]),Lv=hA({history:jC(Eg("BASE_PATH")),routes:[...Iu,{path:"/:pathMatch(.*)*",name:"NotFound",component:RB}]});Lv.beforeEach((e,t,s)=>{e.path!==t.path&&Xt().resetPageContent(),s()});const Xo=A0(kB);Xo.use($0());Xo.use(Lv);Xo.use(lC,{queryClientConfig:{defaultOptions:{queries:{refetchOnWindowFocus:!1,retry:1}}}});Xo.mount("#app");export{Tv as C,Mv as D,Ae as F,ms as P,nq as Q,Xe as _,It as a,lL as b,Rv as c,Ue as d,b as e,KL as f,P as g,we as h,at as i,he as j,qe as k,T as l,dt as m,N as n,Bt as o,a as p,te as q,be as r,bt as s,q as t,Xt as u,os as v,At as w};
43
+ */const Qh=e=>e!==null&&!!e&&typeof e=="object"&&!Array.isArray(e);function Cv(e){return Number(e)>=0}function TN(e){return typeof e=="object"&&e!==null}function ON(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}function jh(e){if(!TN(e)||ON(e)!=="[object Object]")return!1;if(Object.getPrototypeOf(e)===null)return!0;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function Av(e,t){return Object.keys(t).forEach(s=>{if(jh(t[s])&&jh(e[s])){e[s]||(e[s]={}),Av(e[s],t[s]);return}e[s]=t[s]}),e}function NN(e){const t=e.split(".");if(!t.length)return"";let s=String(t[0]);for(let n=1;n<t.length;n++){if(Cv(t[n])){s+=`[${t[n]}]`;continue}s+=`.${t[n]}`}return s}function Dc(e,t){return{__type:"VVTypedSchema",async parse(n){const i=await e.safeParseAsync(n,t);if(i.success)return{value:i.data,errors:[]};const r={};return Sv(i.error.issues,r),{errors:Object.values(r)}},cast(n){try{return e.parse(n)}catch{const r=xv(e);return Qh(r)&&Qh(n)?Av(r,n):n}},describe(n){try{if(!n)return{required:!e.isOptional(),exists:!0};const i=kN(n,e);return i?{required:!i.isOptional(),exists:!0}:{required:!1,exists:!1}}catch{return{required:!1,exists:!1}}}}}function Sv(e,t){e.forEach(s=>{const n=NN(s.path.join("."));s.code==="invalid_union"&&(Sv(s.unionErrors.flatMap(i=>i.issues),t),!n)||(t[n]||(t[n]={errors:[],path:n}),t[n].errors.push(s.message))})}function xv(e){if(e instanceof Et)return Object.fromEntries(Object.entries(e.shape).map(([t,s])=>s instanceof bo?[t,s._def.defaultValue()]:s instanceof Et?[t,xv(s)]:[t,void 0]))}function kN(e,t){if(!Bh(t))return null;if(aa(e))return t.shape[zo(e)];const s=(e||"").split(/\.|\[(\d+)\]/).filter(Boolean);let n=t;for(let i=0;i<=s.length;i++){const r=s[i];if(!r||!n)return n;if(Bh(n)){n=n.shape[r]||null;continue}Cv(r)&&PN(n)&&(n=n._def.type)}return null}function $v(e){return e._def.typeName}function PN(e){return $v(e)===Be.ZodArray}function Bh(e){return $v(e)===Be.ZodObject}function Uh(e){return!e||!e.length?!1:!e.toLowerCase().replace(/(?:[a-z][a-z0-9]?)+(?:[-_.]?[a-z0-9])*/g,"").length}function DN(e){const t=Pc({name:yo().min(1,"Queue name is required").max(100,"Queue name must be less than 100 characters").refine(Uh,{message:"Name must start with a letter and contain only letters, numbers, and single separators (-, _, .). It cannot end with a separator."}),ns:yo().min(1,"Namespace is required").max(100,"Namespace must be less than 100 characters").refine(Uh,{message:"Namespace must start with a letter and contain only letters, numbers, and single separators (-, _, .). It cannot end with a separator."}),type:Vh(Ht,{errorMap:()=>({message:"Please select a valid queue type"})}),deliveryModel:Vh(us,{errorMap:()=>({message:"Please select a valid delivery model"})})}),s=Dc(t),n={name:"",ns:"",type:Ht.FIFO_QUEUE,deliveryModel:us.POINT_TO_POINT},i={...n,...e},{errors:r,values:o,meta:l,resetForm:u,handleSubmit:d,setFieldValue:c,setValues:h}=Yo({validationSchema:s,initialValues:i});return{errors:r,values:o,meta:l,resetForm:u,resetFormWithValues:p=>{const v=p?{...n,...p}:i;u({values:v})},handleSubmit:d,setFieldValue:c,setValues:h,initialValues:i,defaultInitialValues:n,validationSchema:s}}function RN(e){const t=tO({mutation:{onSuccess:async()=>{await e()}}}),s=b(()=>t.isPending.value),n=b(()=>t.error.value?.error);return{createQueue:t.mutateAsync,isCreatingQueue:s,createQueueError:n,createQueueMutation:t}}const MN={class:"form-content"},IN={class:"form-section"},qN={class:"form-grid"},LN={class:"form-group"},FN={class:"form-group"},VN={class:"form-section"},QN={class:"form-grid"},jN={class:"form-group"},BN=["value"],UN=["value"],KN=["value"],HN={class:"form-group"},GN=["value"],WN=["value"],zN={key:0,class:"error-section"},YN={class:"error-content"},ZN={class:"error-text"},JN={class:"error-message"},XN=["disabled"],ek=Ue({__name:"CreateQueueModal",props:{isVisible:{type:Boolean},namespace:{}},emits:["close","created"],setup(e,{emit:t}){const s={mounted:A=>A.focus()},n=e,i=t,{errors:r,resetForm:o,initialValues:l,validationSchema:u}=DN({ns:n.namespace}),{meta:d,handleSubmit:c}=Yo({initialValues:l,validationSchema:u}),h=be(null),{createQueue:m,isCreatingQueue:p,createQueueError:v,createQueueMutation:E}=RN(async()=>{h.value&&i("created",h.value),o(),h.value=null,i("close")}),_=b(()=>{if(!v.value)return"";const A=dt(v.value);return typeof A=="string"?A:A?.message??"Failed to create queue"});Ye(()=>n.isVisible,A=>{A||(o(),h.value=null,E.reset())});const S=c(async A=>{const g=A;h.value=g;const $={queue:{ns:g.ns,name:g.name},queueType:g.type,queueDeliveryModel:g.deliveryModel};await m({data:$})});function C(){i("close")}return(A,g)=>(N(),at(Ss,{"is-visible":e.isVisible,title:"Create New Queue",subtitle:"Configure your message queue settings",icon:"bi bi-plus-circle-fill",onClose:C},{body:qe(()=>[a("form",{onSubmit:g[0]||(g[0]=Ft((...$)=>T(S)&&T(S)(...$),["prevent"]))},[a("div",MN,[a("section",IN,[g[6]||(g[6]=a("div",{class:"section-header"},[a("h3",{class:"section-title"},[a("i",{class:"bi bi-info-circle-fill section-icon"}),te(" Basic Information ")]),a("p",{class:"section-description"}," Define the queue name and namespace ")],-1)),a("div",qN,[a("div",LN,[g[2]||(g[2]=a("label",{for:"name",class:"form-label"},[a("i",{class:"bi bi-tag-fill label-icon"}),te(" Queue Name "),a("span",{class:"required-indicator"},"*")],-1)),ss(we(T(Ns),{id:"name",name:"name",type:"text",placeholder:"e.g. user-notifications",class:De(["form-control",{error:T(r).name}]),autocomplete:"off","aria-describedby":"name-help name-error"},null,8,["class"]),[[s]]),we(T(Jn),{id:"name-error",name:"name",class:"field-error"}),g[3]||(g[3]=a("div",{id:"name-help",class:"field-help"},[a("i",{class:"bi bi-lightbulb help-icon"}),te(" Use letters, numbers, underscores, and hyphens only ")],-1))]),a("div",FN,[g[4]||(g[4]=a("label",{for:"ns",class:"form-label"},[a("i",{class:"bi bi-folder-fill label-icon"}),te(" Namespace "),a("span",{class:"required-indicator"},"*")],-1)),we(T(Ns),{id:"ns",name:"ns",type:"text",placeholder:"e.g. production",class:De(["form-control",{error:T(r).ns}]),autocomplete:"off","aria-describedby":"ns-help ns-error"},null,8,["class"]),we(T(Jn),{id:"ns-error",name:"ns",class:"field-error"}),g[5]||(g[5]=a("div",{id:"ns-help",class:"field-help"},[a("i",{class:"bi bi-lightbulb help-icon"}),te(" Organize queues by environment or application ")],-1))])])]),a("section",VN,[g[13]||(g[13]=a("div",{class:"section-header"},[a("h3",{class:"section-title"},[a("i",{class:"bi bi-gear-fill section-icon"}),te(" Queue Configuration ")]),a("p",{class:"section-description"}," Choose how messages are processed and delivered ")],-1)),a("div",QN,[a("div",jN,[g[8]||(g[8]=a("label",{for:"type",class:"form-label"},[a("i",{class:"bi bi-list-ol label-icon"}),te(" Queue Type "),a("span",{class:"required-indicator"},"*")],-1)),we(T(Ns),{id:"type",name:"type",as:"select",class:De(["form-select",{error:T(r).type}]),"aria-describedby":"type-help type-error"},{default:qe(()=>[g[7]||(g[7]=a("option",{value:""},"Select processing order",-1)),a("option",{value:T(Ht).FIFO_QUEUE},"FIFO Queue",8,BN),a("option",{value:T(Ht).LIFO_QUEUE},"LIFO Queue",8,UN),a("option",{value:T(Ht).PRIORITY_QUEUE}," Priority Queue ",8,KN)]),_:1},8,["class"]),we(T(Jn),{id:"type-error",name:"type",class:"field-error"}),g[9]||(g[9]=a("div",{id:"type-help",class:"field-help"},[a("div",{class:"help-options"},[a("div",{class:"help-option"},[a("strong",null,"FIFO:"),te(" First message in, first message out ")]),a("div",{class:"help-option"},[a("strong",null,"LIFO:"),te(" Last message in, first message out ")]),a("div",{class:"help-option"},[a("strong",null,"Priority:"),te(" Higher priority messages processed first ")])])],-1))]),a("div",HN,[g[11]||(g[11]=a("label",{for:"deliveryModel",class:"form-label"},[a("i",{class:"bi bi-arrow-left-right label-icon"}),te(" Delivery Model "),a("span",{class:"required-indicator"},"*")],-1)),we(T(Ns),{id:"deliveryModel",name:"deliveryModel",as:"select",class:De(["form-select",{error:T(r).deliveryModel}]),"aria-describedby":"deliveryModel-help deliveryModel-error"},{default:qe(()=>[g[10]||(g[10]=a("option",{value:""},"Select delivery pattern",-1)),a("option",{value:T(us).POINT_TO_POINT}," Point to Point ",8,GN),a("option",{value:T(us).PUB_SUB}," Publish/Subscribe ",8,WN)]),_:1},8,["class"]),we(T(Jn),{id:"deliveryModel-error",name:"deliveryModel",class:"field-error"}),g[12]||(g[12]=a("div",{id:"deliveryModel-help",class:"field-help"},[a("div",{class:"help-options"},[a("div",{class:"help-option"},[a("strong",null,"Point to Point:"),te(" One-to-one message delivery ")]),a("div",{class:"help-option"},[a("strong",null,"Pub/Sub:"),te(" One-to-many message broadcasting ")])])],-1))])])]),T(v)?(N(),P("div",zN,[a("div",YN,[g[15]||(g[15]=a("div",{class:"error-icon"},[a("i",{class:"bi bi-exclamation-triangle-fill"})],-1)),a("div",ZN,[g[14]||(g[14]=a("h4",{class:"error-title"},"Creation Failed",-1)),a("p",JN,q(_.value),1)])])])):he("",!0)])],32)]),footer:qe(()=>[a("button",{type:"button",class:"btn btn-secondary",onClick:C},[...g[16]||(g[16]=[a("i",{class:"bi bi-x-circle me-2"},null,-1),te(" Cancel ",-1)])]),a("button",{type:"submit",class:"btn btn-primary",disabled:T(p)||!T(d).valid,onClick:g[1]||(g[1]=(...$)=>T(S)&&T(S)(...$))},[T(p)?(N(),P(Ae,{key:0},[g[17]||(g[17]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),g[18]||(g[18]=te(" Creating Queue... ",-1))],64)):(N(),P(Ae,{key:1},[g[19]||(g[19]=a("i",{class:"bi bi-check-circle me-2"},null,-1)),g[20]||(g[20]=te(" Create Queue ",-1))],64))],8,XN)]),_:1},8,["is-visible"]))}}),Tv=Xe(ek,[["__scopeId","data-v-aeb7b34f"]]),tk={class:"home-page"},sk={class:"hero-section"},nk={class:"hero-content"},ik={class:"hero-text"},rk={class:"hero-stats"},ak={class:"stat-item"},ok={class:"stat-value"},lk={class:"stat-item"},uk={class:"stat-value"},ck={class:"stat-item"},dk={class:"stat-value"},fk={class:"hero-actions"},hk={class:"dashboard-main"},pk={key:0,class:"loading-section"},mk={key:1,class:"dashboard-content"},gk={class:"actions-section"},vk={class:"actions-grid"},bk=["onClick"],yk={class:"action-icon"},_k={class:"action-content"},Ek={class:"action-title"},wk={class:"action-description"},Ck={class:"getting-started-section"},Ak={class:"getting-started-card"},Sk={class:"getting-started-content"},xk={class:"getting-started-actions"},$k=Ue({__name:"HomeView",setup(e){const t=os(),s=fn(),n=be(!1),i=be({totalQueues:0,totalMessages:0,currentlyInProcess:0,pendingMessages:0,activeConsumers:0,lastUpdated:new Date}),r=[{title:"Create Queue",description:"Set up a new message queue",icon:"bi-plus-circle-fill",color:"info",action:()=>{n.value=!0}},{title:"Set up Exchange",description:"Bind your queue to an exchange",icon:"bi-diagram-3",color:"info",action:()=>t.push({name:"Exchanges"})},{title:"View Queues",description:"Manage existing queues",icon:"bi-list-ul",color:"info",action:()=>t.push({name:"Queues"})},{title:"Documentation",description:"Learn more about RedisSMQ",icon:"bi-book-fill",color:"info",action:()=>window.open("https://github.com/weyoss/redis-smq/tree/master/packages/redis-smq/docs/README.md","_blank")}],o=be(!0),l=b(()=>({totalQueues:i.value.totalQueues.toLocaleString(),totalMessages:i.value.totalMessages.toLocaleString(),pendingMessages:i.value.pendingMessages.toLocaleString(),currentlyInProcess:i.value.currentlyInProcess.toLocaleString(),activeConsumers:i.value.activeConsumers.toLocaleString()})),u=async()=>{try{o.value=!0;const c=(await s.fetchQuery({queryKey:nv(),queryFn:()=>sv()})).data;if(!c||c.length===0){Object.assign(i.value,{totalQueues:0,totalMessages:0,pendingMessages:0,currentlyInProcess:0,activeConsumers:0,lastUpdated:new Date});return}const h=c.map(async v=>{const E=s.fetchQuery({queryKey:rv(v.ns,v.name),queryFn:()=>iv(v.ns,v.name)}),_=s.fetchQuery({queryKey:ov(v.ns,v.name),queryFn:()=>av(v.ns,v.name)}),[S,C]=await Promise.all([E,_]),A=S.data,g=C.data??{};return{details:A,consumers:g}}),p=(await Promise.all(h)).reduce((v,E)=>(E.details&&(v.totalMessages+=E.details.messagesCount??0,v.pendingMessages+=E.details.pendingMessagesCount??0,v.currentlyInProcess+=E.details.processingMessagesCount??0),E.consumers&&(v.activeConsumers+=Object.keys(E.consumers).length),v),{totalMessages:0,pendingMessages:0,currentlyInProcess:0,activeConsumers:0});i.value={...p,totalQueues:c.length,lastUpdated:new Date}}catch(d){console.error("Failed to load dashboard data:",d)}finally{o.value=!1}};return Bt(()=>{u()}),(d,c)=>(N(),P("div",tk,[a("section",sk,[a("div",nk,[a("div",ik,[c[6]||(c[6]=a("h1",{class:"hero-title"},[a("span",{class:"hero-icon"},"🚀"),te(" Welcome to RedisSMQ ")],-1)),c[7]||(c[7]=a("p",{class:"hero-subtitle"}," Powerful Redis-based message queue management made simple ",-1)),a("div",rk,[a("div",ak,[a("span",ok,q(l.value.totalQueues),1),c[3]||(c[3]=a("span",{class:"stat-label"},"Active Queues",-1))]),a("div",lk,[a("span",uk,q(l.value.totalMessages),1),c[4]||(c[4]=a("span",{class:"stat-label"},"Messages Processed",-1))]),a("div",ck,[a("span",dk,q(l.value.activeConsumers),1),c[5]||(c[5]=a("span",{class:"stat-label"},"Active Consumers",-1))])])]),a("div",fk,[a("button",{class:"btn btn-primary btn-lg hero-btn",onClick:c[0]||(c[0]=h=>T(t).push({name:"Queues"}))},[...c[8]||(c[8]=[a("i",{class:"bi bi-plus-circle me-2"},null,-1),te(" Get Started ",-1)])])])])]),a("main",hk,[o.value?(N(),P("div",pk,[...c[9]||(c[9]=[a("div",{class:"loading-content"},[a("div",{class:"spinner-border text-primary mb-3",role:"status","aria-live":"polite","aria-label":"Loading dashboard"}),a("h5",{class:"loading-title"},"Loading dashboard..."),a("p",{class:"loading-subtitle"},"Fetching system information")],-1)])])):(N(),P("div",mk,[a("section",gk,[c[11]||(c[11]=a("div",{class:"section-header"},[a("h2",{class:"section-title"},[a("i",{class:"bi bi-lightning-fill me-2"}),te(" Quick Actions ")])],-1)),a("div",vk,[(N(),P(Ae,null,bt(r,h=>a("div",{key:h.title,class:De(["action-card",`action-${h.color}`]),onClick:h.action},[a("div",yk,[a("i",{class:De(h.icon)},null,2)]),a("div",_k,[a("h3",Ek,q(h.title),1),a("p",wk,q(h.description),1)]),c[10]||(c[10]=a("div",{class:"action-arrow"},[a("i",{class:"bi bi-arrow-right"})],-1))],10,bk)),64))])]),a("section",Ck,[a("div",Ak,[a("div",Sk,[c[14]||(c[14]=ai('<h2 class="getting-started-title" data-v-61ad89e8><i class="bi bi-rocket-takeoff me-2" data-v-61ad89e8></i> Getting Started </h2><p class="getting-started-description" data-v-61ad89e8> New to RedisSMQ? Follow these steps to set up your first message queue and start processing messages. </p><div class="getting-started-steps" data-v-61ad89e8><div class="step-item" data-v-61ad89e8><div class="step-number" data-v-61ad89e8>1</div><div class="step-content" data-v-61ad89e8><h4 class="step-title" data-v-61ad89e8>Create a Queue</h4><p class="step-description" data-v-61ad89e8> Create a new queue to hold your messages. </p></div></div><div class="step-item" data-v-61ad89e8><div class="step-number" data-v-61ad89e8>2</div><div class="step-content" data-v-61ad89e8><h4 class="step-title" data-v-61ad89e8>Publish a Message</h4><p class="step-description" data-v-61ad89e8> Send messages directly to your queue or publish them through an exchange. </p></div></div><div class="step-item" data-v-61ad89e8><div class="step-number" data-v-61ad89e8>3</div><div class="step-content" data-v-61ad89e8><h4 class="step-title" data-v-61ad89e8>Consume Messages</h4><p class="step-description" data-v-61ad89e8> Build a consumer in your application to process messages from the queue. </p></div></div><div class="step-item" data-v-61ad89e8><div class="step-number" data-v-61ad89e8>4</div><div class="step-content" data-v-61ad89e8><h4 class="step-title" data-v-61ad89e8>Monitor &amp; Manage</h4><p class="step-description" data-v-61ad89e8> Use the Web UI to monitor your queues, exchanges, and messages in real-time. </p></div></div></div>',3)),a("div",xk,[i.value.totalQueues===0?(N(),P("button",{key:0,class:"btn btn-primary",onClick:c[1]||(c[1]=h=>n.value=!0)},[...c[12]||(c[12]=[a("i",{class:"bi bi-plus-circle me-2"},null,-1),te(" Create Your First Queue ",-1)])])):he("",!0),c[13]||(c[13]=a("a",{href:"https://github.com/weyoss/redis-smq/tree/master/packages/redis-smq/docs/README.md",target:"_blank",rel:"noopener noreferrer",class:"btn btn-outline-secondary"},[a("i",{class:"bi bi-book me-2"}),te(" Read Documentation ")],-1))])])])])]))]),we(Tv,{"is-visible":n.value,onClose:c[2]||(c[2]=h=>n.value=!1),onCreated:u},null,8,["is-visible"])]))}}),Tk=Xe($k,[["__scopeId","data-v-61ad89e8"]]),Ba=[{path:"/",name:"Home",component:Tk,meta:{title:"Home"}},{path:"/ns",name:"Namespaces",component:()=>Pf(()=>Promise.resolve().then(()=>pL),void 0,import.meta.url),meta:{title:"Namespace Management",breadcrumbs:"Namespaces"}},{path:"/queues",name:"Queues",component:()=>Pf(()=>import("./QueuesView-DLQWQwCh.js"),__vite__mapDeps([0,1]),import.meta.url),meta:{title:"Queue Management",breadcrumbs:"Queues"}},{path:"/exchanges",name:"Exchanges",component:YT}],Ov=6e4,Nv=36e5,ka=43200,Kh=1440,Hh=Symbol.for("constructDateFrom");function Zo(e,t){return typeof e=="function"?e(t):e&&typeof e=="object"&&Hh in e?e[Hh](t):e instanceof Date?new e.constructor(t):new Date(t)}function Hs(e,t){return Zo(e,e)}let Ok={};function Nk(){return Ok}function Gh(e){const t=Hs(e),s=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return s.setUTCFullYear(t.getFullYear()),+e-+s}function Rc(e,...t){const s=Zo.bind(null,e||t.find(n=>typeof n=="object"));return t.map(s)}function Ua(e,t){const s=+Hs(e)-+Hs(t);return s<0?-1:s>0?1:s}function kk(e){return Zo(e,Date.now())}function Pk(e,t,s){const[n,i]=Rc(s?.in,e,t),r=n.getFullYear()-i.getFullYear(),o=n.getMonth()-i.getMonth();return r*12+o}function Dk(e){return t=>{const n=(e?Math[e]:Math.trunc)(t);return n===0?0:n}}function Rk(e,t){return+Hs(e)-+Hs(t)}function Mk(e,t){const s=Hs(e);return s.setHours(23,59,59,999),s}function Ik(e,t){const s=Hs(e),n=s.getMonth();return s.setFullYear(s.getFullYear(),n+1,0),s.setHours(23,59,59,999),s}function qk(e,t){const s=Hs(e);return+Mk(s)==+Ik(s)}function Lk(e,t,s){const[n,i,r]=Rc(s?.in,e,e,t),o=Ua(i,r),l=Math.abs(Pk(i,r));if(l<1)return 0;i.getMonth()===1&&i.getDate()>27&&i.setDate(30),i.setMonth(i.getMonth()-o*l);let u=Ua(i,r)===-o;qk(n)&&l===1&&Ua(n,r)===1&&(u=!1);const d=o*(l-+u);return d===0?0:d}function Fk(e,t,s){const n=Rk(e,t)/1e3;return Dk(s?.roundingMethod)(n)}const Vk={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Qk=(e,t,s)=>{let n;const i=Vk[e];return typeof i=="string"?n=i:t===1?n=i.one:n=i.other.replace("{{count}}",t.toString()),s?.addSuffix?s.comparison&&s.comparison>0?"in "+n:n+" ago":n};function Il(e){return(t={})=>{const s=t.width?String(t.width):e.defaultWidth;return e.formats[s]||e.formats[e.defaultWidth]}}const jk={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Bk={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Uk={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Kk={date:Il({formats:jk,defaultWidth:"full"}),time:Il({formats:Bk,defaultWidth:"full"}),dateTime:Il({formats:Uk,defaultWidth:"full"})},Hk={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Gk=(e,t,s,n)=>Hk[e];function gr(e){return(t,s)=>{const n=s?.context?String(s.context):"standalone";let i;if(n==="formatting"&&e.formattingValues){const o=e.defaultFormattingWidth||e.defaultWidth,l=s?.width?String(s.width):o;i=e.formattingValues[l]||e.formattingValues[o]}else{const o=e.defaultWidth,l=s?.width?String(s.width):e.defaultWidth;i=e.values[l]||e.values[o]}const r=e.argumentCallback?e.argumentCallback(t):t;return i[r]}}const Wk={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},zk={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Yk={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},Zk={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},Jk={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},Xk={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},eP=(e,t)=>{const s=Number(e),n=s%100;if(n>20||n<10)switch(n%10){case 1:return s+"st";case 2:return s+"nd";case 3:return s+"rd"}return s+"th"},tP={ordinalNumber:eP,era:gr({values:Wk,defaultWidth:"wide"}),quarter:gr({values:zk,defaultWidth:"wide",argumentCallback:e=>e-1}),month:gr({values:Yk,defaultWidth:"wide"}),day:gr({values:Zk,defaultWidth:"wide"}),dayPeriod:gr({values:Jk,defaultWidth:"wide",formattingValues:Xk,defaultFormattingWidth:"wide"})};function vr(e){return(t,s={})=>{const n=s.width,i=n&&e.matchPatterns[n]||e.matchPatterns[e.defaultMatchWidth],r=t.match(i);if(!r)return null;const o=r[0],l=n&&e.parsePatterns[n]||e.parsePatterns[e.defaultParseWidth],u=Array.isArray(l)?nP(l,h=>h.test(o)):sP(l,h=>h.test(o));let d;d=e.valueCallback?e.valueCallback(u):u,d=s.valueCallback?s.valueCallback(d):d;const c=t.slice(o.length);return{value:d,rest:c}}}function sP(e,t){for(const s in e)if(Object.prototype.hasOwnProperty.call(e,s)&&t(e[s]))return s}function nP(e,t){for(let s=0;s<e.length;s++)if(t(e[s]))return s}function iP(e){return(t,s={})=>{const n=t.match(e.matchPattern);if(!n)return null;const i=n[0],r=t.match(e.parsePattern);if(!r)return null;let o=e.valueCallback?e.valueCallback(r[0]):r[0];o=s.valueCallback?s.valueCallback(o):o;const l=t.slice(i.length);return{value:o,rest:l}}}const rP=/^(\d+)(th|st|nd|rd)?/i,aP=/\d+/i,oP={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},lP={any:[/^b/i,/^(a|c)/i]},uP={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},cP={any:[/1/i,/2/i,/3/i,/4/i]},dP={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},fP={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},hP={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},pP={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},mP={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},gP={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},vP={ordinalNumber:iP({matchPattern:rP,parsePattern:aP,valueCallback:e=>parseInt(e,10)}),era:vr({matchPatterns:oP,defaultMatchWidth:"wide",parsePatterns:lP,defaultParseWidth:"any"}),quarter:vr({matchPatterns:uP,defaultMatchWidth:"wide",parsePatterns:cP,defaultParseWidth:"any",valueCallback:e=>e+1}),month:vr({matchPatterns:dP,defaultMatchWidth:"wide",parsePatterns:fP,defaultParseWidth:"any"}),day:vr({matchPatterns:hP,defaultMatchWidth:"wide",parsePatterns:pP,defaultParseWidth:"any"}),dayPeriod:vr({matchPatterns:mP,defaultMatchWidth:"any",parsePatterns:gP,defaultParseWidth:"any"})},bP={code:"en-US",formatDistance:Qk,formatLong:Kk,formatRelative:Gk,localize:tP,match:vP,options:{weekStartsOn:0,firstWeekContainsDate:1}};function yP(e,t,s){const n=Nk(),i=s?.locale??n.locale??bP,r=2520,o=Ua(e,t);if(isNaN(o))throw new RangeError("Invalid time value");const l=Object.assign({},s,{addSuffix:s?.addSuffix,comparison:o}),[u,d]=Rc(s?.in,...o>0?[t,e]:[e,t]),c=Fk(d,u),h=(Gh(d)-Gh(u))/1e3,m=Math.round((c-h)/60);let p;if(m<2)return s?.includeSeconds?c<5?i.formatDistance("lessThanXSeconds",5,l):c<10?i.formatDistance("lessThanXSeconds",10,l):c<20?i.formatDistance("lessThanXSeconds",20,l):c<40?i.formatDistance("halfAMinute",0,l):c<60?i.formatDistance("lessThanXMinutes",1,l):i.formatDistance("xMinutes",1,l):m===0?i.formatDistance("lessThanXMinutes",1,l):i.formatDistance("xMinutes",m,l);if(m<45)return i.formatDistance("xMinutes",m,l);if(m<90)return i.formatDistance("aboutXHours",1,l);if(m<Kh){const v=Math.round(m/60);return i.formatDistance("aboutXHours",v,l)}else{if(m<r)return i.formatDistance("xDays",1,l);if(m<ka){const v=Math.round(m/Kh);return i.formatDistance("xDays",v,l)}else if(m<ka*2)return p=Math.round(m/ka),i.formatDistance("aboutXMonths",p,l)}if(p=Lk(d,u),p<12){const v=Math.round(m/ka);return i.formatDistance("xMonths",v,l)}else{const v=p%12,E=Math.trunc(p/12);return v<3?i.formatDistance("aboutXYears",E,l):v<9?i.formatDistance("overXYears",E,l):i.formatDistance("almostXYears",E+1,l)}}function Xs(e,t){return yP(e,kk(e),t)}function _P(e,t){const s=()=>Zo(t?.in,NaN),i=AP(e);let r;if(i.date){const d=SP(i.date,2);r=xP(d.restDateString,d.year)}if(!r||isNaN(+r))return s();const o=+r;let l=0,u;if(i.time&&(l=$P(i.time),isNaN(l)))return s();if(i.timezone){if(u=TP(i.timezone),isNaN(u))return s()}else{const d=new Date(o+l),c=Hs(0);return c.setFullYear(d.getUTCFullYear(),d.getUTCMonth(),d.getUTCDate()),c.setHours(d.getUTCHours(),d.getUTCMinutes(),d.getUTCSeconds(),d.getUTCMilliseconds()),c}return Hs(o+l+u)}const Pa={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},EP=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,wP=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,CP=/^([+-])(\d{2})(?::?(\d{2}))?$/;function AP(e){const t={},s=e.split(Pa.dateTimeDelimiter);let n;if(s.length>2)return t;if(/:/.test(s[0])?n=s[0]:(t.date=s[0],n=s[1],Pa.timeZoneDelimiter.test(t.date)&&(t.date=e.split(Pa.timeZoneDelimiter)[0],n=e.substr(t.date.length,e.length))),n){const i=Pa.timezone.exec(n);i?(t.time=n.replace(i[1],""),t.timezone=i[1]):t.time=n}return t}function SP(e,t){const s=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+t)+"})|(\\d{2}|[+-]\\d{"+(2+t)+"})$)"),n=e.match(s);if(!n)return{year:NaN,restDateString:""};const i=n[1]?parseInt(n[1]):null,r=n[2]?parseInt(n[2]):null;return{year:r===null?i:r*100,restDateString:e.slice((n[1]||n[2]).length)}}function xP(e,t){if(t===null)return new Date(NaN);const s=e.match(EP);if(!s)return new Date(NaN);const n=!!s[4],i=br(s[1]),r=br(s[2])-1,o=br(s[3]),l=br(s[4]),u=br(s[5])-1;if(n)return DP(t,l,u)?OP(t,l,u):new Date(NaN);{const d=new Date(0);return!kP(t,r,o)||!PP(t,i)?new Date(NaN):(d.setUTCFullYear(t,r,Math.max(i,o)),d)}}function br(e){return e?parseInt(e):1}function $P(e){const t=e.match(wP);if(!t)return NaN;const s=ql(t[1]),n=ql(t[2]),i=ql(t[3]);return RP(s,n,i)?s*Nv+n*Ov+i*1e3:NaN}function ql(e){return e&&parseFloat(e.replace(",","."))||0}function TP(e){if(e==="Z")return 0;const t=e.match(CP);if(!t)return 0;const s=t[1]==="+"?-1:1,n=parseInt(t[2]),i=t[3]&&parseInt(t[3])||0;return MP(n,i)?s*(n*Nv+i*Ov):NaN}function OP(e,t,s){const n=new Date(0);n.setUTCFullYear(e,0,4);const i=n.getUTCDay()||7,r=(t-1)*7+s+1-i;return n.setUTCDate(n.getUTCDate()+r),n}const NP=[31,null,31,30,31,30,31,31,30,31,30,31];function kv(e){return e%400===0||e%4===0&&e%100!==0}function kP(e,t,s){return t>=0&&t<=11&&s>=1&&s<=(NP[t]||(kv(e)?29:28))}function PP(e,t){return t>=1&&t<=(kv(e)?366:365)}function DP(e,t,s){return t>=1&&t<=53&&s>=0&&s<=6}function RP(e,t,s){return e===24?t===0&&s===0:s>=0&&s<60&&t>=0&&t<60&&e>=0&&e<25}function MP(e,t){return t>=0&&t<=59}function Wh(e){const t=Date.now()-e,s=Math.floor(t/1e3),n=Math.floor(s/60),i=Math.floor(n/60),r=Math.floor(i/24);return r>0?`${r}d ${i%24}h`:i>0?`${i}h ${n%60}m`:n>0?`${n}m ${s%60}s`:`${s}s`}function Mc(e){if(!e)return"N/A";try{const t=typeof e=="string"?_P(e):new Date(e);return`${t.toLocaleString()} (${Xs(t,{addSuffix:!0})})`}catch{return"Invalid Date"}}const IP={class:"dialog-body"},qP={class:"confirmation-message"},LP={key:0,class:"message-preview"},FP={class:"actions"},VP=["disabled"],QP=["disabled"],jP={key:0,class:"spinner-border spinner-border-sm me-2",role:"status","aria-hidden":"true"},BP=Ue({__name:"ConfirmationDialogModal",props:{isVisible:{type:Boolean},title:{},message:{},confirmText:{default:"Confirm"},variant:{default:"primary"},isLoading:{type:Boolean,default:!1}},emits:["close","confirm"],setup(e,{emit:t}){const s=e,n=t;function i(){s.isLoading||n("close")}function r(){s.isLoading||n("confirm")}const o=b(()=>{switch(s.variant){case"danger":return"btn-danger";case"warning":return"btn-warning";case"secondary":return"btn-secondary";case"primary":default:return"btn-primary"}}),l=b(()=>{switch(s.variant){case"danger":return"bi-exclamation-triangle-fill";case"warning":return"bi-exclamation-circle-fill";default:return"bi-question-circle-fill"}});return(u,d)=>(N(),at(Ss,{"is-visible":e.isVisible,title:e.title,subtitle:void 0,icon:`bi ${l.value}`,size:"sm",onClose:i},{body:qe(()=>[a("div",IP,[a("p",qP,q(e.message),1),u.$slots["message-preview"]?(N(),P("div",LP,[Pi(u.$slots,"message-preview",{},void 0,!0)])):he("",!0)])]),footer:qe(()=>[a("div",FP,[a("button",{class:"btn btn-outline-secondary",type:"button",disabled:e.isLoading,onClick:i}," Cancel ",8,VP),a("button",{class:De(["btn",o.value]),type:"button",disabled:e.isLoading,onClick:r},[e.isLoading?(N(),P("span",jP)):he("",!0),te(" "+q(e.isLoading?"Processing...":e.confirmText),1)],10,QP)])]),_:3},8,["is-visible","title","icon"]))}}),zh=Xe(BP,[["__scopeId","data-v-7963a349"]]),UP={class:"vm-body"},KP={class:"status-bar"},HP={class:"status-info"},GP={class:"text-muted ms-3"},WP={key:0,class:"queue-info"},zP={class:"badge bg-light text-dark"},YP={class:"modal-tabs"},ZP=["disabled"],JP=["disabled"],XP=["disabled"],eD=["disabled"],tD=["disabled"],sD={class:"tab-panels"},nD={key:0,class:"tab-content"},iD={class:"info-grid"},rD={class:"info-section"},aD={class:"info-items"},oD={class:"info-item"},lD={class:"info-item"},uD={class:"info-value"},cD={class:"info-item"},dD={class:"info-value"},fD={class:"info-item"},hD={class:"info-value"},pD={class:"info-section"},mD={class:"info-items"},gD={class:"info-item"},vD={class:"info-value"},bD={class:"info-item"},yD={class:"info-value"},_D={class:"info-item"},ED={class:"info-value"},wD={class:"info-item"},CD={class:"info-value"},AD={class:"info-item"},SD={class:"info-value"},xD={key:0,class:"info-section"},$D={class:"info-items"},TD={class:"info-item"},OD={class:"info-value"},ND={class:"info-item"},kD={class:"info-value"},PD={key:1,class:"info-section"},DD={class:"info-items"},RD={class:"info-item"},MD={class:"info-value"},ID={key:1,class:"tab-content"},qD={class:"body-section"},LD={class:"d-flex justify-content-between align-items-center mb-3"},FD=["disabled"],VD={class:"message-body"},QD={key:2,class:"tab-content"},jD={class:"info-grid"},BD={class:"info-section"},UD={class:"info-items"},KD={class:"info-item"},HD={class:"info-value"},GD={class:"info-item"},WD={class:"info-value"},zD={class:"info-item"},YD={class:"info-value"},ZD={class:"info-item"},JD={class:"info-section"},XD={class:"info-items"},eR={class:"info-item"},tR={class:"info-value"},sR={class:"info-item"},nR={class:"info-value"},iR={class:"info-item"},rR={class:"info-value"},aR={class:"info-item"},oR={class:"info-value"},lR={class:"info-item"},uR={class:"info-value"},cR={class:"info-item"},dR={class:"info-value"},fR={key:3,class:"tab-content"},hR={class:"info-grid"},pR={class:"info-section"},mR={class:"info-items"},gR={class:"info-item"},vR={class:"info-value"},bR={class:"info-item"},yR={class:"info-value"},_R={class:"info-item"},ER={class:"info-value"},wR={class:"info-item"},CR={class:"info-section"},AR={class:"info-items"},SR={class:"info-item"},xR={class:"info-value"},$R={class:"info-item"},TR={class:"info-value"},OR={class:"info-item"},NR={class:"info-value"},kR={class:"info-item"},PR={class:"info-value"},DR={key:0,class:"info-section"},RR={class:"info-items"},MR={class:"info-item"},IR={class:"d-flex align-items-center"},qR={class:"info-value"},LR={key:1,class:"info-section"},FR={class:"info-items"},VR={class:"info-item"},QR={class:"d-flex align-items-center"},jR={class:"info-value"},BR={key:4,class:"timeline-section"},UR={class:"timeline"},KR={class:"timeline-content"},HR={class:"timeline-title"},GR={class:"timeline-time"},WR={class:"footer-info"},zR={class:"text-muted"},YR={class:"footer-actions"},ZR=["disabled"],JR=["disabled"],XR=["disabled"],eM=Ue({__name:"ViewMessageModal",props:{message:{},show:{type:Boolean},isDeleting:{type:Boolean,default:!1},isRequeuing:{type:Boolean,default:!1}},emits:["close","update:show","delete-message","requeue-message"],setup(e,{emit:t}){const s=e,n=t,i=be("overview"),r=be(!1),o=be(!1),l=b(()=>{if(!s.message?.createdAt)return"N/A";const O=new Date(s.message.createdAt);return`${O.toLocaleString()} (${Xs(O,{addSuffix:!0})})`}),u=b(()=>{if(!s.message?.messageState.publishedAt)return"Not published";const O=new Date(s.message.messageState.publishedAt);return`${O.toLocaleString()} (${Xs(O,{addSuffix:!0})})`}),d=b(()=>{if(!s.message?.messageState.scheduledAt)return"Not scheduled";const O=new Date(s.message.messageState.scheduledAt);return`${O.toLocaleString()} (${Xs(O,{addSuffix:!0})})`}),c=b(()=>{if(!s.message?.messageState.lastRetriedAttemptAt)return"Never";const O=new Date(s.message.messageState.lastRetriedAttemptAt);return`${O.toLocaleString()} (${Xs(O,{addSuffix:!0})})`}),h=b(()=>{if(!s.message?.messageState.processingStartedAt)return"N/A";const O=new Date(s.message.messageState.processingStartedAt);return`${O.toLocaleString()} (${Xs(O,{addSuffix:!0})})`}),m=b(()=>{if(!s.message?.messageState.acknowledgedAt)return"N/A";const O=new Date(s.message.messageState.acknowledgedAt);return`${O.toLocaleString()} (${Xs(O,{addSuffix:!0})})`}),p=b(()=>{if(!s.message?.messageState.deadLetteredAt)return"N/A";const O=new Date(s.message.messageState.deadLetteredAt);return`${O.toLocaleString()} (${Xs(O,{addSuffix:!0})})`}),v=b(()=>{if(!s.message?.messageState.lastRequeuedAt)return"Never";const O=new Date(s.message.messageState.lastRequeuedAt);return`${O.toLocaleString()} (${Xs(O,{addSuffix:!0})})`}),E=b(()=>{if(!s.message)return"";switch(s.message.status){case 0:return"badge bg-secondary";case 1:return"badge bg-warning";case 2:return"badge bg-info";case 3:return"badge bg-success";case 4:return"badge bg-warning";case 5:return"badge bg-warning";case 6:return"badge bg-danger";default:return"badge bg-secondary"}}),_=b(()=>{if(!s.message)return"";switch(s.message.status){case 0:return"Scheduled";case 1:return"Pending";case 2:return"Processing";case 3:return"Acknowledged";case 4:return"Unack Delaying";case 5:return"Unack Requeuing";case 6:return"Dead Lettered";default:return"Unknown"}}),S=b(()=>!s.message?.priority&&s.message?.priority!==0?"Normal":["Highest","Very High","High","Above Normal","Normal","Low","Very Low","Lowest"][s.message.priority]||"Normal"),C=b(()=>{if(!s.message?.body)return"";try{if(typeof s.message.body=="string"){const O=JSON.parse(s.message.body);return JSON.stringify(O,null,2)}return JSON.stringify(s.message.body,null,2)}catch{return String(s.message.body)}}),A=b(()=>s.message?.status===6),g=b(()=>s.isDeleting||s.isRequeuing),$=b(()=>s.message?[{type:"Created",timestamp:s.message.createdAt,icon:"bi-plus-circle-fill",color:"text-primary"},{type:"Scheduled",timestamp:s.message.messageState.scheduledAt,icon:"bi-calendar-plus-fill",color:"text-info"},{type:"Last Scheduled",timestamp:s.message.messageState.lastScheduledAt,icon:"bi-calendar-check-fill",color:"text-info"},{type:"Published",timestamp:s.message.messageState.publishedAt,icon:"bi-send-fill",color:"text-primary"},{type:"Processing Started",timestamp:s.message.messageState.processingStartedAt,icon:"bi-play-circle-fill",color:"text-warning"},{type:"Acknowledged",timestamp:s.message.messageState.acknowledgedAt,icon:"bi-check2-circle",color:"text-success"},{type:"Unacknowledged",timestamp:s.message.messageState.unacknowledgedAt,icon:"bi-arrow-counterclockwise",color:"text-warning"},{type:"Last Unacknowledged",timestamp:s.message.messageState.lastUnacknowledgedAt,icon:"bi-arrow-counterclockwise",color:"text-warning"},{type:"Requeued",timestamp:s.message.messageState.requeuedAt,icon:"bi-arrow-repeat",color:"text-secondary"},{type:"Last Requeued",timestamp:s.message.messageState.lastRequeuedAt,icon:"bi-arrow-repeat",color:"text-secondary"},{type:"Last Retry Attempt",timestamp:s.message.messageState.lastRetriedAttemptAt,icon:"bi-bootstrap-reboot",color:"text-warning"},{type:"Dead-lettered",timestamp:s.message.messageState.deadLetteredAt,icon:"bi-x-octagon-fill",color:"text-danger"}].filter(x=>!!x.timestamp).sort((x,F)=>Number(x.timestamp)-Number(F.timestamp)):[]);function L(){g.value||(n("close"),n("update:show",!1))}function V(O){navigator.clipboard.writeText(O).then(()=>{})}function I(){s.message?.id&&n("delete-message",s.message.id),r.value=!1}function w(){s.message?.id&&n("requeue-message",s.message.id),o.value=!1}return(O,x)=>(N(),P(Ae,null,[we(Ss,{"is-visible":!!e.message&&e.show,title:"Message Details",subtitle:e.message?`ID: ${e.message.id}`:void 0,icon:"bi bi-envelope-fill",size:"lg",onClose:L},{body:qe(()=>[a("div",UP,[a("div",KP,[a("div",HP,[a("span",{class:De(E.value)},q(_.value),3),a("span",GP,[x[12]||(x[12]=a("i",{class:"bi bi-clock me-1"},null,-1)),te(" "+q(l.value),1)])]),e.message?(N(),P("div",WP,[a("span",zP,[x[13]||(x[13]=a("i",{class:"bi bi-collection me-1"},null,-1)),te(" "+q(e.message.destinationQueue.name)+"@"+q(e.message.destinationQueue.ns),1)])])):he("",!0)]),a("div",YP,[a("button",{class:De(["tab-button",{active:i.value==="overview"}]),disabled:g.value,onClick:x[0]||(x[0]=F=>i.value="overview")},[...x[14]||(x[14]=[a("i",{class:"bi bi-info-circle me-1"},null,-1),te(" Overview ",-1)])],10,ZP),a("button",{class:De(["tab-button",{active:i.value==="body"}]),disabled:g.value,onClick:x[1]||(x[1]=F=>i.value="body")},[...x[15]||(x[15]=[a("i",{class:"bi bi-file-text me-1"},null,-1),te(" Message Body ",-1)])],10,JP),a("button",{class:De(["tab-button",{active:i.value==="state"}]),disabled:g.value,onClick:x[2]||(x[2]=F=>i.value="state")},[...x[16]||(x[16]=[a("i",{class:"bi bi-gear me-1"},null,-1),te(" State ",-1)])],10,XP),a("button",{class:De(["tab-button",{active:i.value==="scheduling"}]),disabled:g.value,onClick:x[3]||(x[3]=F=>i.value="scheduling")},[...x[17]||(x[17]=[a("i",{class:"bi bi-calendar me-1"},null,-1),te(" Scheduling ",-1)])],10,eD),a("button",{class:De(["tab-button",{active:i.value==="timeline"}]),disabled:g.value,onClick:x[4]||(x[4]=F=>i.value="timeline")},[...x[18]||(x[18]=[a("i",{class:"bi bi-clock-history me-2"},null,-1),te(" Timeline ",-1)])],10,tD)]),a("div",sD,[i.value==="overview"?(N(),P("div",nD,[a("div",iD,[a("div",rD,[x[23]||(x[23]=a("h6",{class:"section-title"},"Basic Information",-1)),a("div",aD,[a("div",oD,[x[19]||(x[19]=a("span",{class:"info-label"},"Status:",-1)),a("span",{class:De(E.value)},q(_.value),3)]),a("div",lD,[x[20]||(x[20]=a("span",{class:"info-label"},"Priority:",-1)),a("span",uD,q(S.value),1)]),a("div",cD,[x[21]||(x[21]=a("span",{class:"info-label"},"TTL:",-1)),a("span",dD,q(e.message.ttl)+"ms",1)]),a("div",fD,[x[22]||(x[22]=a("span",{class:"info-label"},"Consumer Group:",-1)),a("span",hD,q(e.message.consumerGroupId||"None"),1)])])]),a("div",pD,[x[29]||(x[29]=a("h6",{class:"section-title"},"Retry Configuration",-1)),a("div",mD,[a("div",gD,[x[24]||(x[24]=a("span",{class:"info-label"},"Retry Threshold:",-1)),a("span",vD,q(e.message.retryThreshold),1)]),a("div",bD,[x[25]||(x[25]=a("span",{class:"info-label"},"Retry Delay:",-1)),a("span",yD,q(e.message.retryDelay)+"ms",1)]),a("div",_D,[x[26]||(x[26]=a("span",{class:"info-label"},"Consume Timeout:",-1)),a("span",ED,q(e.message.consumeTimeout)+"ms",1)]),a("div",wD,[x[27]||(x[27]=a("span",{class:"info-label"},"Current Attempts:",-1)),a("span",CD,q(e.message.messageState.attempts),1)]),a("div",AD,[x[28]||(x[28]=a("span",{class:"info-label"},"Requeue Count:",-1)),a("span",SD,q(e.message.messageState.requeueCount),1)])])]),e.message?.exchange?(N(),P("div",xD,[x[32]||(x[32]=a("h6",{class:"section-title"},"Exchange Information",-1)),a("div",$D,[a("div",TD,[x[30]||(x[30]=a("span",{class:"info-label"},"Exchange Params:",-1)),a("span",OD,q(e.message.exchange.name)+"@"+q(e.message.exchange.ns),1)]),a("div",ND,[x[31]||(x[31]=a("span",{class:"info-label"},"Type:",-1)),a("span",kD,q(T(Te)[e.message.exchange.type]),1)])])])):he("",!0),e.message?.queue?(N(),P("div",PD,[x[34]||(x[34]=a("h6",{class:"section-title"},"Queue Information",-1)),a("div",DD,[a("div",RD,[x[33]||(x[33]=a("span",{class:"info-label"},"Queue Params:",-1)),a("span",MD,q(e.message.queue.name)+"@"+q(e.message.queue.ns),1)])])])):he("",!0)])])):he("",!0),i.value==="body"?(N(),P("div",ID,[a("div",qD,[a("div",LD,[x[36]||(x[36]=a("h6",{class:"section-title mb-0"},"Message Body",-1)),a("button",{class:"btn btn-sm btn-outline-primary",disabled:g.value,onClick:x[5]||(x[5]=F=>V(C.value))},[...x[35]||(x[35]=[a("i",{class:"bi bi-clipboard me-1"},null,-1),te(" Copy ",-1)])],8,FD)]),a("pre",VD,[a("code",null,q(C.value),1)])])])):he("",!0),i.value==="state"?(N(),P("div",QD,[a("div",jD,[a("div",BD,[x[41]||(x[41]=a("h6",{class:"section-title"},"Message State",-1)),a("div",UD,[a("div",KD,[x[37]||(x[37]=a("span",{class:"info-label"},"UUID:",-1)),a("code",HD,q(e.message.messageState.uuid),1)]),a("div",GD,[x[38]||(x[38]=a("span",{class:"info-label"},"Published At:",-1)),a("span",WD,q(u.value),1)]),a("div",zD,[x[39]||(x[39]=a("span",{class:"info-label"},"Attempts:",-1)),a("span",YD,q(e.message.messageState.attempts),1)]),a("div",ZD,[x[40]||(x[40]=a("span",{class:"info-label"},"Expired:",-1)),a("span",{class:De(["badge",e.message.messageState.expired?"bg-danger":"bg-success"])},q(e.message.messageState.expired?"Yes":"No"),3)])])]),a("div",JD,[x[48]||(x[48]=a("h6",{class:"section-title"},"Timing Information",-1)),a("div",XD,[a("div",eR,[x[42]||(x[42]=a("span",{class:"info-label"},"Processing Started At:",-1)),a("span",tR,q(h.value),1)]),a("div",sR,[x[43]||(x[43]=a("span",{class:"info-label"},"Acknowledged At:",-1)),a("span",nR,q(m.value),1)]),a("div",iR,[x[44]||(x[44]=a("span",{class:"info-label"},"Last Retried At:",-1)),a("span",rR,q(c.value),1)]),a("div",aR,[x[45]||(x[45]=a("span",{class:"info-label"},"Last Requeued At:",-1)),a("span",oR,q(v.value),1)]),a("div",lR,[x[46]||(x[46]=a("span",{class:"info-label"},"Dead-Lettered At:",-1)),a("span",uR,q(p.value),1)]),a("div",cR,[x[47]||(x[47]=a("span",{class:"info-label"},"Scheduled Times:",-1)),a("span",dR,q(e.message.messageState.scheduledTimes),1)])])])])])):he("",!0),i.value==="scheduling"?(N(),P("div",fR,[a("div",hR,[a("div",pR,[x[53]||(x[53]=a("h6",{class:"section-title"},"Schedule Configuration",-1)),a("div",mR,[a("div",gR,[x[49]||(x[49]=a("span",{class:"info-label"},"Scheduled At:",-1)),a("span",vR,q(d.value),1)]),a("div",bR,[x[50]||(x[50]=a("span",{class:"info-label"},"Scheduled Cron:",-1)),a("span",yR,q(e.message.scheduledCron||"None"),1)]),a("div",_R,[x[51]||(x[51]=a("span",{class:"info-label"},"Scheduled Delay:",-1)),a("span",ER,q(e.message.scheduledDelay?`${e.message.scheduledDelay} ms`:"None"),1)]),a("div",wR,[x[52]||(x[52]=a("span",{class:"info-label"},"Cron Fired:",-1)),a("span",{class:De(["badge",e.message.messageState.scheduledCronFired?"bg-success":"bg-secondary"])},q(e.message.messageState.scheduledCronFired?"Yes":"No"),3)])])]),a("div",CR,[x[58]||(x[58]=a("h6",{class:"section-title"},"Repeat Configuration",-1)),a("div",AR,[a("div",SR,[x[54]||(x[54]=a("span",{class:"info-label"},"Repeat Period:",-1)),a("span",xR,q(e.message.scheduledRepeatPeriod?`${e.message.scheduledRepeatPeriod} ms`:"None"),1)]),a("div",$R,[x[55]||(x[55]=a("span",{class:"info-label"},"Repeat Count:",-1)),a("span",TR,q(e.message.scheduledRepeat),1)]),a("div",OR,[x[56]||(x[56]=a("span",{class:"info-label"},"Current Repeat:",-1)),a("span",NR,q(e.message.messageState.scheduledRepeatCount),1)]),a("div",kR,[x[57]||(x[57]=a("span",{class:"info-label"},"Last Scheduled At:",-1)),a("span",PR,q(e.message.messageState.lastScheduledAt?new Date(e.message.messageState.lastScheduledAt).toLocaleString():"Never"),1)])])]),e.message?.messageState.scheduledMessageParentId?(N(),P("div",DR,[x[61]||(x[61]=a("h6",{class:"section-title"},"Scheduled Message Reference",-1)),a("div",RR,[a("div",MR,[x[60]||(x[60]=a("span",{class:"info-label"},"Scheduled Message Parent ID:",-1)),a("div",IR,[a("code",qR,q(e.message.messageState.scheduledMessageParentId),1),a("button",{class:"btn btn-sm btn-outline-secondary ms-2",title:"Copy Scheduled Message Parent ID",onClick:x[6]||(x[6]=F=>V(e.message.messageState.scheduledMessageParentId))},[...x[59]||(x[59]=[a("i",{class:"bi bi-clipboard"},null,-1)])])])])])])):he("",!0),e.message?.messageState.requeuedMessageParentId?(N(),P("div",LR,[x[64]||(x[64]=a("h6",{class:"section-title"},"Requeued Message Reference",-1)),a("div",FR,[a("div",VR,[x[63]||(x[63]=a("span",{class:"info-label"},"Requeued Message Parent ID:",-1)),a("div",QR,[a("code",jR,q(e.message.messageState.requeuedMessageParentId),1),a("button",{class:"btn btn-sm btn-outline-secondary ms-2",title:"Copy Requeued Message Parent ID",onClick:x[7]||(x[7]=F=>V(e.message.messageState.requeuedMessageParentId))},[...x[62]||(x[62]=[a("i",{class:"bi bi-clipboard"},null,-1)])])])])])])):he("",!0)])])):he("",!0),i.value==="timeline"?(N(),P("div",BR,[a("ul",UR,[(N(!0),P(Ae,null,bt($.value,F=>(N(),P("li",{key:`${F.type}-${F.timestamp}`,class:"timeline-item"},[a("div",{class:De(["timeline-marker",F.color])},[a("i",{class:De(F.icon)},null,2)],2),a("div",KR,[a("h5",HR,q(F.type),1),a("p",GR,q(T(Mc)(F.timestamp)),1)])]))),128))])])):he("",!0)])])]),footer:qe(()=>[a("div",WR,[a("small",zR,[x[65]||(x[65]=a("i",{class:"bi bi-info-circle me-1"},null,-1)),te(" Message created "+q(l.value),1)])]),a("div",YR,[A.value?(N(),P("button",{key:0,type:"button",class:"btn btn-warning",disabled:g.value,onClick:x[8]||(x[8]=F=>o.value=!0)},[e.isRequeuing?(N(),P(Ae,{key:0},[x[66]||(x[66]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),x[67]||(x[67]=te(" Requeuing... ",-1))],64)):(N(),P(Ae,{key:1},[x[68]||(x[68]=a("i",{class:"bi bi-arrow-clockwise me-2"},null,-1)),x[69]||(x[69]=te(" Requeue Message ",-1))],64))],8,ZR)):he("",!0),a("button",{type:"button",class:"btn btn-danger",disabled:g.value,onClick:x[9]||(x[9]=F=>r.value=!0)},[e.isDeleting?(N(),P(Ae,{key:0},[x[70]||(x[70]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),x[71]||(x[71]=te(" Deleting... ",-1))],64)):(N(),P(Ae,{key:1},[x[72]||(x[72]=a("i",{class:"bi bi-trash me-2"},null,-1)),x[73]||(x[73]=te(" Delete Message ",-1))],64))],8,JR),a("button",{type:"button",class:"btn btn-secondary",disabled:g.value,onClick:L}," Close ",8,XR)])]),_:1},8,["is-visible","subtitle"]),we(zh,{"is-visible":r.value,title:"Delete Message",message:"Are you sure you want to delete this message? This action cannot be undone.","confirm-text":"Delete Message",variant:"danger","is-loading":e.isDeleting,onConfirm:I,onClose:x[10]||(x[10]=F=>r.value=!1)},{"message-preview":qe(()=>[x[74]||(x[74]=a("strong",null,"Message ID: ",-1)),a("code",null,q(e.message?.id),1)]),_:1},8,["is-visible","is-loading"]),we(zh,{"is-visible":o.value,title:"Requeue Message",message:"Are you sure you want to requeue this dead-lettered message? It will be moved back to the pending queue for processing.","confirm-text":"Requeue Message",variant:"warning","is-loading":e.isRequeuing,onConfirm:w,onClose:x[11]||(x[11]=F=>o.value=!1)},{"message-preview":qe(()=>[x[75]||(x[75]=a("strong",null,"Message ID: ",-1)),a("code",null,q(e.message?.id),1)]),_:1},8,["is-visible","is-loading"])],64))}}),tM=Xe(eM,[["__scopeId","data-v-65801e3a"]]),sM={class:"messages-component","aria-live":"polite"},nM={key:0,class:"messages-controls"},iM={class:"controls-left"},rM={key:0,class:"pagination-info"},aM={class:"info-text"},oM={class:"controls-right"},lM={key:0,class:"page-size-selector"},uM=["value"],cM=["disabled"],dM={class:"messages-content"},fM={key:0,class:"state-card loading-state"},hM={key:1,class:"state-card error-state"},pM={class:"state-content"},mM={class:"state-text"},gM={class:"state-message"},vM={class:"state-actions"},bM={key:2,class:"state-card empty-state"},yM={class:"state-content"},_M={class:"state-title"},EM={key:3,class:"messages-list",role:"list","aria-label":"Messages list"},wM=["aria-label","onClick","onKeydown"],CM={class:"message-header"},AM={class:"message-id-section"},SM={class:"message-id"},xM={class:"message-date"},$M={class:"message-metadata"},TM={key:0,class:"metadata-item"},OM={class:"metadata-value priority-badge"},NM={key:1,class:"metadata-item"},kM={class:"metadata-value"},PM={key:2,class:"metadata-item"},DM={class:"message-body"},RM={class:"body-content"},MM={key:1,class:"messages-pagination"},IM={class:"pagination-nav","aria-label":"Messages pagination"},qM={class:"pagination"},LM=["disabled"],FM=["disabled"],VM=["title","onClick"],QM=["disabled"],jM=["disabled"],BM=Ue({__name:"MessageList",props:{messages:{},isLoading:{type:Boolean},error:{},pagination:{},showPagination:{type:Boolean},emptyMessage:{default:"No messages found"},icon:{default:"bi-envelope"},isDeleting:{type:Boolean},isRequeuing:{type:Boolean}},emits:["refresh","delete-message","requeue-message","page-change","page-size-change","first-page","previous-page","next-page","last-page"],setup(e,{emit:t}){const s=e,n=t,i=be(!1),r=be(null),o=b(()=>s.messages.length>0),l=b(()=>s.pagination.currentPage>1),u=b(()=>s.pagination.currentPage<s.pagination.totalPages),d=b(()=>{const S=[],A=Math.floor(2.5),{currentPage:g,totalPages:$}=s.pagination;let L=Math.max(1,g-A),V=Math.min($,L+5-1);V-L+1<5&&(L=Math.max(1,V-5+1));for(let I=L;I<=V;I++)S.push(I);return S});function c(S){r.value=S,i.value=!0}function h(){i.value=!1}function m(S){n("delete-message",S),h()}function p(S){n("requeue-message",S),h()}function v(S){const C=S.target;n("page-size-change",Number(C.value))}function E(S){if(typeof S=="string")return S.length>100?`${S.substring(0,100)}...`:S;if(S==null)return"null";try{const C=JSON.stringify(S);return C.length>100?`${C.substring(0,100)}...`:C}catch{return String(S)}}function _(S,C){(S.key==="Enter"||S.key===" ")&&(S.preventDefault(),c(C))}return(S,C)=>(N(),P("section",sM,[o.value||e.showPagination?(N(),P("div",nM,[a("div",iM,[e.showPagination&&e.pagination&&e.pagination.hasItems?(N(),P("div",rM,[a("span",aM," Showing "+q(e.pagination.start)+"-"+q(e.pagination.end)+" of "+q(e.pagination.totalCount)+" messages ",1)])):he("",!0)]),a("div",oM,[e.showPagination&&e.pagination?(N(),P("div",lM,[C[7]||(C[7]=a("label",{for:"pageSize",class:"selector-label"},"Per page:",-1)),a("select",{id:"pageSize",class:"form-select form-select-sm",value:e.pagination.pageSize,onChange:v},[...C[6]||(C[6]=[a("option",{value:"10"},"10",-1),a("option",{value:"20"},"20",-1),a("option",{value:"50"},"50",-1),a("option",{value:"100"},"100",-1)])],40,uM)])):he("",!0),a("button",{class:De(["btn btn-refresh",{"btn-loading":e.isLoading}]),disabled:e.isLoading,onClick:C[0]||(C[0]=A=>n("refresh"))},[e.isLoading?(N(),P(Ae,{key:0},[C[8]||(C[8]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),C[9]||(C[9]=te(" Refreshing... ",-1))],64)):(N(),P(Ae,{key:1},[C[10]||(C[10]=a("i",{class:"bi bi-arrow-clockwise me-2"},null,-1)),C[11]||(C[11]=te(" Refresh ",-1))],64))],10,cM)])])):he("",!0),a("div",dM,[e.isLoading&&!o.value?(N(),P("div",fM,[...C[12]||(C[12]=[a("div",{class:"state-content"},[a("div",{class:"spinner-border text-primary mb-3",role:"status"}),a("h5",{class:"state-title"},"Loading messages..."),a("p",{class:"state-subtitle"},"Please wait while we fetch your messages")],-1)])])):e.error?(N(),P("div",hM,[a("div",pM,[C[14]||(C[14]=a("div",{class:"state-icon","aria-hidden":"true"},[a("i",{class:"bi bi-exclamation-triangle-fill text-danger"})],-1)),a("div",mM,[C[13]||(C[13]=a("h5",{class:"state-title"},"Failed to load messages",-1)),a("p",gM,q(e.error.message),1)])]),a("div",vM,[a("button",{class:"btn btn-primary",onClick:C[1]||(C[1]=A=>n("refresh"))},[...C[15]||(C[15]=[a("i",{class:"bi bi-arrow-clockwise me-2"},null,-1),te(" Try Again ",-1)])])])])):o.value?(N(),P("div",EM,[(N(!0),P(Ae,null,bt(e.messages,A=>(N(),P("div",{key:A.id,class:"message-card",role:"button",tabindex:"0","aria-label":`View message ${A.id} details`,onClick:g=>c(A),onKeydown:g=>_(g,A)},[a("div",CM,[a("div",AM,[a("span",SM,q(A.id),1),a("span",xM,q(T(Mc)(A.createdAt)),1)]),a("div",$M,[A.priority!==void 0&&A.priority!==null?(N(),P("div",TM,[C[18]||(C[18]=a("span",{class:"metadata-label"},"Priority:",-1)),a("span",OM,q(A.priority),1)])):he("",!0),A.consumerGroupId?(N(),P("div",NM,[C[19]||(C[19]=a("span",{class:"metadata-label"},"Group:",-1)),a("span",kM,q(A.consumerGroupId),1)])):he("",!0),A.status!==void 0?(N(),P("div",PM,[C[20]||(C[20]=a("span",{class:"metadata-label"},"Status:",-1)),a("span",{class:De(["metadata-value status-badge",`status-${A.status}`])},q(T(ev)[A.status]),3)])):he("",!0)])]),a("div",DM,[a("pre",RM,q(E(A.body)),1)])],40,wM))),128))])):(N(),P("div",bM,[a("div",yM,[C[16]||(C[16]=a("div",{class:"state-icon","aria-hidden":"true"},"📭",-1)),a("h4",_M,q(e.emptyMessage),1),C[17]||(C[17]=a("p",{class:"state-subtitle"}," Messages will appear here when they are available ",-1))])]))]),e.showPagination&&e.pagination&&e.pagination.totalPages>1?(N(),P("div",MM,[a("nav",IM,[a("ul",qM,[a("li",{class:De(["page-item",{disabled:!l.value}])},[a("button",{class:"page-link",disabled:!l.value,title:"First page",onClick:C[2]||(C[2]=A=>n("first-page"))},[...C[21]||(C[21]=[a("i",{class:"bi bi-chevron-double-left"},null,-1)])],8,LM)],2),a("li",{class:De(["page-item",{disabled:!l.value}])},[a("button",{class:"page-link",disabled:!l.value,title:"Previous page",onClick:C[3]||(C[3]=A=>n("previous-page"))},[...C[22]||(C[22]=[a("i",{class:"bi bi-chevron-left"},null,-1)])],8,FM)],2),(N(!0),P(Ae,null,bt(d.value,A=>(N(),P("li",{key:A,class:De(["page-item",{active:A===e.pagination.currentPage}])},[a("button",{class:"page-link",title:`Go to page ${A}`,onClick:g=>n("page-change",A)},q(A),9,VM)],2))),128)),a("li",{class:De(["page-item",{disabled:!u.value}])},[a("button",{class:"page-link",disabled:!u.value,title:"Next page",onClick:C[4]||(C[4]=A=>n("next-page"))},[...C[23]||(C[23]=[a("i",{class:"bi bi-chevron-right"},null,-1)])],8,QM)],2),a("li",{class:De(["page-item",{disabled:!u.value}])},[a("button",{class:"page-link",disabled:!u.value,title:"Last page",onClick:C[5]||(C[5]=A=>n("last-page"))},[...C[24]||(C[24]=[a("i",{class:"bi bi-chevron-double-right"},null,-1)])],8,jM)],2)])])])):he("",!0),we(tM,{show:i.value,message:r.value,"is-deleting":e.isDeleting,"is-requeuing":e.isRequeuing,onClose:h,onDeleteMessage:m,onRequeueMessage:p},null,8,["show","message","is-deleting","is-requeuing"])]))}}),oa=Xe(BM,[["__scopeId","data-v-4aecad5a"]]),Jo=Vo("selectedNamespace",()=>{const e=be(null);function t(n){e.value=n}function s(){e.value=null}return{selectedNamespace:e,selectNamespace:t,clearSelectedNamespace:s}}),It=Vo("selectedQueue",()=>{const e=Jo(),t=be(null),s=b(()=>e.selectedNamespace&&t.value?{ns:e.selectedNamespace,name:t.value}:null);function n(r,o){e.selectNamespace(r),t.value=o}function i(){t.value=null,e.clearSelectedNamespace()}return{selectedQueue:s,selectQueue:n,clearSelectedQueue:i}}),Dn=Vo("queueProperties",()=>{const e=It(),t=b(()=>e.selectedQueue),s=nO(b(()=>t.value?.ns||""),b(()=>t.value?.name||""),{query:{enabled:b(()=>!!t.value)}}),n=b(()=>s.data.value),i=b(()=>s.isLoading.value),r=b(()=>s.error.value),o=b(()=>n.value?.data.deliveryModel===us.PUB_SUB),l=b(()=>n.value?.data.deliveryModel===us.POINT_TO_POINT),u=b(()=>n.value?.data.queueType),d=b(()=>n.value?.data.deliveryModel),c=b(()=>!!n.value?.data);async function h(){await s.refetch()}return{queuePropertiesQuery:s,queueProperties:n,isLoadingQueueProperties:i,queuePropertiesError:r,isPubSubQueue:o,isPointToPointQueue:l,queueType:u,queueDeliveryModel:d,hasQueueProperties:c,refreshQueueProperties:h}}),UM=(e,t,s,n)=>(e=T(e),t=T(t),s=T(s),Je({url:`/api/v1/namespaces/${e}/queues/${t}/acknowledged-messages`,method:"GET",params:T(s),signal:n})),KM=e=>(e=T(e),Je({url:`/api/v1/messages/${e}`,method:"DELETE"})),HM=e=>{const t=["deleteApiV1MessagesId"],{mutation:s}=e?e.mutation&&"mutationKey"in e.mutation&&e.mutation.mutationKey?e:{...e,mutation:{...e.mutation,mutationKey:t}}:{mutation:{mutationKey:t}};return{mutationFn:i=>{const{id:r}=i??{};return KM(r)},...s}},GM=(e,t)=>{const s=HM(e);return Nt(s)},WM=(e,t)=>(e=T(e),Je({url:`/api/v1/messages/${e}/requeue`,method:"POST",signal:t})),zM=e=>{const t=["postApiV1MessagesIdRequeue"],{mutation:s}=e?e.mutation&&"mutationKey"in e.mutation&&e.mutation.mutationKey?e:{...e,mutation:{...e.mutation,mutationKey:t}}:{mutation:{mutationKey:t}};return{mutationFn:i=>{const{id:r}=i??{};return WM(r)},...s}},YM=(e,t)=>{const s=zM(e);return Nt(s)};function la(e,t,s=20,n=be({})){const i=fn(),r=As({currentPage:1,pageSize:s}),o=b(()=>{if(!e.value)return["disabled"];const z=[t.queryKeyPrefix,e.value.ns,e.value.name],fe=Object.entries(n.value);return fe.length>0&&fe.forEach(([ie,G])=>{G!=null&&z.push(ie,String(G))}),z});function l(z){return z?.data?.totalItems??0}const{data:u,error:d,fetchNextPage:c,hasNextPage:h,isLoading:m,isFetchingNextPage:p,refetch:v}=uC({queryKey:o,initialPageParam:1,enabled:b(()=>!!(e.value?.ns&&e.value?.name)),retry:(z,fe)=>{const ie=fe;return(ie?.status??ie?.response?.status)===422?!1:z<3},queryFn:async({pageParam:z=1})=>{if(!e.value)throw new Error("Queue parameters are required");return t.queryFn({ns:e.value.ns,name:e.value.name,page:Number(z),pageSize:r.pageSize,extraParams:n.value})},getNextPageParam:(z,fe)=>{const ie=z?.data?.items??[],G=l(fe?.[0]),X=fe.flatMap(Z=>Z?.data?.items??[]).length;if(!(!ie.length||G&&X>=G))return fe.length+1}}),E=async()=>{await i.invalidateQueries({queryKey:o.value})},_=t.enableDelete?GM({mutation:{onSuccess:E}}):null,S=t.enableRequeue?YM({mutation:{onSuccess:E}}):null,C=b(()=>u.value?.pages.flatMap(z=>z?.data?.items??[])??[]),A=b(()=>l(u.value?.pages?.[0]??{})),g=b(()=>_?.isPending.value??!1),$=b(()=>S?.isPending.value??!1),L=b(()=>{const z=d.value||_?.error.value||S?.error.value;return dt(z)}),V=b(()=>{const z=(r.currentPage-1)*r.pageSize,fe=z+r.pageSize;return C.value.slice(z,fe)}),I=b(()=>{const z=A.value||0,fe=z>0?Math.ceil(z/r.pageSize):1,ie=z>0?(r.currentPage-1)*r.pageSize+1:0,G=Math.min(ie+r.pageSize-1,z);return{currentPage:r.currentPage,pageSize:r.pageSize,totalCount:z,totalPages:fe,start:ie,end:G,hasItems:z>0}});async function w(z){if(z<1)return;r.currentPage=z;const fe=z*r.pageSize;for(;C.value.length<fe&&h.value&&!p.value;)await c()}async function O(z){r.pageSize=z,r.currentPage=1,await v()}async function x(){r.currentPage=1,await v()}async function F(z){if(!_)throw new Error("Delete operation is not enabled for this message type");await _.mutateAsync({id:z})}async function H(z){if(!S)throw new Error("Requeue operation is not enabled for this message type");await S.mutateAsync({id:z})}return Ye(()=>[e.value&&[e.value.ns,e.value.name],n.value],async()=>{e.value&&(r.currentPage=1,await v())},{deep:!0}),{messages:V,pagination:I,isLoading:m,isDeleting:g,isRequeuing:$,error:L,goToPage:w,setPageSize:O,refresh:x,deleteMessage:t.enableDelete?F:void 0,requeueMessage:t.enableRequeue?H:void 0,hasNextPage:h,isFetchingNextPage:p,totalMessages:A,allMessages:C}}function ZM(e,t=20){return la(e,{queryFn:async({ns:n,name:i,page:r,pageSize:o})=>UM(n,i,{page:r,pageSize:o}),queryKeyPrefix:"acknowledged-messages",enableDelete:!0,enableRequeue:!0},t)}const JM=e=>Je({url:"/api/v1/config",method:"GET",signal:e}),XM=()=>["api","v1","config"],eI=e=>{const{query:t}={};return{queryKey:XM(),queryFn:({signal:i})=>JM(i),...t}};function Pv(e,t){const s=eI(),n=Jt(s);return n.queryKey=T(s).queryKey,n}const tI={key:0,class:"ack-loading-alert",role:"status","aria-live":"polite"},sI={key:1,class:"ack-error-alert",role:"alert","aria-live":"polite"},nI={class:"ack-alert-row"},iI={class:"ack-alert-text"},rI={class:"ack-alert-message"},aI={class:"ack-alert-actions"},oI={key:2,class:"ack-disabled-alert",role:"status","aria-live":"polite"},lI=Ue({__name:"AcknowledgedMessagesView",setup(e){const t=It(),s=Dn(),n=Xt(),i=ps(),r=b(()=>i.params.ns),o=b(()=>i.params.queue),l=b(()=>({ns:r.value,name:o.value}));Ye([r,o],([H,z])=>{H&&z&&t.selectQueue(H,z)},{immediate:!0});const u=b(()=>t.selectedQueue),{messages:d,pagination:c,isLoading:h,isDeleting:m,error:p,goToPage:v,setPageSize:E,refresh:_,deleteMessage:S}=ZM(l,20),C=b(()=>u.value?`Acknowledged Messages - ${`${u.value.name}@${u.value.ns}`}`:"Acknowledged Messages"),A=b(()=>{if(u.value)return s.isPubSubQueue?"Pub/Sub Queue":"Point-2-Point Queue"});At(()=>{n.setPageHeader({title:C.value,subtitle:A.value,icon:"bi bi-check-circle"})}),At(()=>{if(!u.value){n.setEmptyState(!0,{icon:"bi bi-inbox",title:"No Queue Selected",message:"Please select a queue from the sidebar to view its acknowledged messages."}),n.setPageActions([]),n.setLoadingState(!1),n.setErrorState(null);return}n.setLoadingState(!1),n.setErrorState(null),n.setEmptyState(!1),n.setPageActions([])});const{data:g,isLoading:$,error:L,refetch:V}=Pv(),I=b(()=>{const H=g.value?.data?.messageAudit?.acknowledgedMessages?.enabled;return typeof H=="boolean"?H:null}),w=b(()=>dt(L.value));async function O(H){S&&await S(H)}function x(H){v(H)}async function F(H){await E(H)}return(H,z)=>(N(),at(ms,{"show-section-header":!1},{default:qe(()=>[T($)?(N(),P("div",tI,[...z[5]||(z[5]=[a("div",{class:"ack-alert-row"},[a("i",{class:"bi bi-arrow-repeat ack-alert-icon","aria-hidden":"true"}),a("div",{class:"ack-alert-text"},[a("strong",null,"Loading configuration…"),a("p",{class:"ack-alert-message"}," Checking server settings for acknowledged messages storage. ")]),a("div",{class:"ack-alert-actions"},[a("span",{class:"spinner-border spinner-border-sm","aria-hidden":"true"})])],-1)])])):T(L)?(N(),P("div",sI,[a("div",nI,[z[8]||(z[8]=a("i",{class:"bi bi-exclamation-triangle-fill ack-alert-icon","aria-hidden":"true"},null,-1)),a("div",iI,[z[6]||(z[6]=a("strong",null,"Could not load server configuration",-1)),a("p",rI,q(w.value),1)]),a("div",aI,[a("button",{class:"btn btn-sm btn-outline-primary",type:"button",onClick:z[0]||(z[0]=fe=>T(V)())},[...z[7]||(z[7]=[a("i",{class:"bi bi-arrow-clockwise me-1"},null,-1),te(" Retry ",-1)])])])])])):I.value===!1?(N(),P("div",oI,[...z[9]||(z[9]=[a("div",{class:"ack-alert-row"},[a("i",{class:"bi bi-info-circle-fill ack-alert-icon","aria-hidden":"true"}),a("div",{class:"ack-alert-text"},[a("strong",null,"Acknowledged messages audit is disabled"),a("p",{class:"ack-alert-message"}," Acknowledged message auditing is disabled in the RedisSMQ configuration. This view will remain empty until auditing is enabled. ")])],-1)])])):he("",!0),u.value?(N(),at(oa,{key:3,messages:T(d),"is-loading":T(h),error:T(p),pagination:T(c),"show-pagination":!0,"empty-message":"No acknowledged messages found for this queue. Messages appear here when they have been successfully processed and acknowledged by consumers.",icon:"bi-check-circle","is-deleting":T(m),"is-requeuing":!1,onRefresh:T(_),onDeleteMessage:O,onPageChange:x,onPageSizeChange:F,onFirstPage:z[1]||(z[1]=fe=>x(1)),onPreviousPage:z[2]||(z[2]=fe=>x(T(c).currentPage-1)),onNextPage:z[3]||(z[3]=fe=>x(T(c).currentPage+1)),onLastPage:z[4]||(z[4]=fe=>x(T(c).totalPages))},null,8,["messages","is-loading","error","pagination","is-deleting","onRefresh"])):he("",!0)]),_:1}))}}),uI=Xe(lI,[["__scopeId","data-v-685bdbeb"]]),cI=(e,t,s,n)=>(e=T(e),t=T(t),s=T(s),Je({url:`/api/v1/namespaces/${e}/queues/${t}/dead-lettered-messages`,method:"GET",params:T(s),signal:n}));function dI(e,t=20){return la(e,{queryFn:async({ns:n,name:i,page:r,pageSize:o})=>cI(n,i,{page:r,pageSize:o}),queryKeyPrefix:"dead-lettered-messages",enableDelete:!0,enableRequeue:!0},t)}const fI={key:0,class:"dl-loading-alert",role:"status","aria-live":"polite"},hI={key:1,class:"dl-error-alert",role:"alert","aria-live":"polite"},pI={class:"dl-alert-row"},mI={class:"dl-alert-text"},gI={class:"dl-alert-message"},vI={class:"dl-alert-actions"},bI={key:2,class:"dl-disabled-alert",role:"status","aria-live":"polite"},yI=Ue({__name:"DeadLetteredMessagesView",setup(e){const t=It(),s=Dn(),n=Xt(),i=ps(),r=b(()=>i.params.ns),o=b(()=>i.params.queue),l=b(()=>({ns:r.value,name:o.value}));Ye([r,o],([ie,G])=>{ie&&G&&t.selectQueue(ie,G)},{immediate:!0});const u=b(()=>t.selectedQueue),{messages:d,pagination:c,isLoading:h,isDeleting:m,isRequeuing:p,error:v,goToPage:E,setPageSize:_,refresh:S,deleteMessage:C,requeueMessage:A}=dI(l,20),g=b(()=>u.value?`Dead-Lettered Messages - ${`${u.value.name}@${u.value.ns}`}`:"Dead-Lettered Messages"),$=b(()=>{if(u.value)return s.isPubSubQueue?"Pub/Sub Queue":"Point-2-Point Queue"});At(()=>{n.setPageHeader({title:g.value,subtitle:$.value,icon:"bi bi-x-circle"})}),At(()=>{if(!u.value){n.setEmptyState(!0,{icon:"bi bi-inbox",title:"No Queue Selected",message:"Please select a queue from the sidebar to view its dead-lettered messages."}),n.setPageActions([]),n.setLoadingState(!1),n.setErrorState(null);return}n.setLoadingState(!1),n.setErrorState(null),n.setEmptyState(!1),n.setPageActions([])});const{data:L,isLoading:V,error:I,refetch:w}=Pv(),O=b(()=>{const ie=L.value?.data?.messageAudit.deadLetteredMessages?.enabled;return typeof ie=="boolean"?ie:null}),x=b(()=>dt(I));async function F(ie){C&&await C(ie)}async function H(ie){A&&await A(ie)}function z(ie){E(ie)}async function fe(ie){await _(ie)}return(ie,G)=>(N(),at(ms,{"show-section-header":!1},{default:qe(()=>[T(V)?(N(),P("div",fI,[...G[5]||(G[5]=[a("div",{class:"dl-alert-row"},[a("i",{class:"bi bi-arrow-repeat dl-alert-icon","aria-hidden":"true"}),a("div",{class:"dl-alert-text"},[a("strong",null,"Loading configuration…"),a("p",{class:"dl-alert-message"}," Checking server settings for dead-lettered messages storage. ")]),a("div",{class:"dl-alert-actions"},[a("span",{class:"spinner-border spinner-border-sm","aria-hidden":"true"})])],-1)])])):T(I)?(N(),P("div",hI,[a("div",pI,[G[8]||(G[8]=a("i",{class:"bi bi-exclamation-triangle-fill dl-alert-icon","aria-hidden":"true"},null,-1)),a("div",mI,[G[6]||(G[6]=a("strong",null,"Could not load server configuration",-1)),a("p",gI,q(x.value),1)]),a("div",vI,[a("button",{class:"btn btn-sm btn-outline-primary",type:"button",onClick:G[0]||(G[0]=X=>T(w)())},[...G[7]||(G[7]=[a("i",{class:"bi bi-arrow-clockwise me-1"},null,-1),te(" Retry ",-1)])])])])])):O.value===!1?(N(),P("div",bI,[...G[9]||(G[9]=[a("div",{class:"dl-alert-row"},[a("i",{class:"bi bi-info-circle-fill dl-alert-icon","aria-hidden":"true"}),a("div",{class:"dl-alert-text"},[a("strong",null,"Dead-lettered messages audit is disabled"),a("p",{class:"dl-alert-message"}," Dead-lettered message auditing is disabled in the RedisSMQ configuration. This view will remain empty until auditing is enabled. ")])],-1)])])):he("",!0),u.value?(N(),at(oa,{key:3,messages:T(d),"is-loading":T(h),error:T(v),pagination:T(c),"show-pagination":!0,"empty-message":"No dead-lettered messages found for this queue. Messages appear here when they fail processing and exceed retry limits.",icon:"bi-x-circle","is-deleting":T(m),"is-requeuing":T(p),onRefresh:T(S),onDeleteMessage:F,onRequeueMessage:H,onPageChange:z,onPageSizeChange:fe,onFirstPage:G[1]||(G[1]=X=>z(1)),onPreviousPage:G[2]||(G[2]=X=>z(T(c).currentPage-1)),onNextPage:G[3]||(G[3]=X=>z(T(c).currentPage+1)),onLastPage:G[4]||(G[4]=X=>z(T(c).totalPages))},null,8,["messages","is-loading","error","pagination","is-deleting","is-requeuing","onRefresh"])):he("",!0)]),_:1}))}}),_I=Xe(yI,[["__scopeId","data-v-87bf9c6f"]]),EI=e=>Je({url:"/api/v1/namespaces",method:"GET",signal:e}),wI=()=>["api","v1","namespaces"],CI=e=>{const{query:t}={};return{queryKey:wI(),queryFn:({signal:i})=>EI(i),...t}};function AI(e,t){const s=CI(),n=Jt(s);return n.queryKey=T(s).queryKey,n}const SI=e=>(e=T(e),Je({url:`/api/v1/namespaces/${e}`,method:"DELETE"})),xI=e=>{const t=["deleteApiV1NamespacesNs"],{mutation:s}=e?e.mutation&&"mutationKey"in e.mutation&&e.mutation.mutationKey?e:{...e,mutation:{...e.mutation,mutationKey:t}}:{mutation:{mutationKey:t}};return{mutationFn:i=>{const{ns:r}=i??{};return SI(r)},...s}},$I=(e,t)=>{const s=xI(e);return Nt(s)},TI=(e,t)=>(e=T(e),Je({url:`/api/v1/namespaces/${e}/queues`,method:"GET",signal:t})),OI=e=>["api","v1","namespaces",e,"queues"],NI=(e,t)=>{const{query:s}=t??{};return{queryKey:OI(e),queryFn:({signal:r})=>TI(e,r),enabled:b(()=>!!T(e)),...s}};function kI(e,t,s){const n=NI(e,t),i=Jt(n);return i.queryKey=T(n).queryKey,i}const PI=(e,t)=>(e=T(e),Je({url:`/api/v1/namespaces/${e}/exchanges`,method:"GET",signal:t})),Cr=e=>["api","v1","namespaces",e,"exchanges"],DI=(e,t)=>{const{query:s}=t??{};return{queryKey:Cr(e),queryFn:({signal:r})=>PI(e,r),enabled:b(()=>!!T(e)),...s}};function RI(e,t,s){const n=DI(e,t),i=Jt(n);return i.queryKey=T(n).queryKey,i}function Dv(){const e=Jo(),t=b(()=>e.selectedNamespace),s=AI(),n=kI(b(()=>t.value||""),{query:{enabled:b(()=>!!t.value)}}),i=$I({mutation:{onSuccess:async()=>{e.clearSelectedNamespace(),await s.refetch()}}}),r=b(()=>s.data.value),o=b(()=>n.data.value),l=b(()=>s.isLoading.value),u=b(()=>n.isLoading.value),d=b(()=>i.isPending.value),c=b(()=>l.value||u.value||d.value),h=b(()=>s.error.value),m=b(()=>n.error.value),p=b(()=>i.error.value),v=b(()=>h.value||m.value||p.value),E=b(()=>r.value?.data.length?[...r.value.data].sort((w,O)=>w.localeCompare(O)):[]),_=b(()=>o.value?.data.length?[...o.value.data].sort((w,O)=>w.name.localeCompare(O.name)):[]),S=b(()=>!!r.value?.data&&r.value.data.length>0),C=b(()=>!!o.value?.data&&o.value.data.length>0),A=b(()=>w=>r.value?.data?r.value.data.includes(w):!1);async function g(){await s.refetch()}async function $(w){if(w||t.value){const x=t.value;w&&w!==t.value&&e.selectNamespace(w);try{await n.refetch()}finally{w&&w!==x&&(x?e.selectNamespace(x):e.clearSelectedNamespace())}}}async function L(w){await i.mutateAsync({ns:w})}function V(w){const O=w||t.value;if(!O)return Promise.resolve([]);const x=[s.refetch()];return O===t.value&&x.push(n.refetch()),Promise.all(x)}function I(w){return!!w&&w.trim().length>0}return{namespacesQuery:s,namespaceQueuesQuery:n,deleteNamespaceMutation:i,namespaces:r,namespaceQueues:o,isLoading:c,isLoadingNamespaces:l,isLoadingNamespaceQueues:u,isDeletingNamespace:d,error:v,namespacesError:h,namespaceQueuesError:m,deleteNamespaceError:p,sortedNamespaces:E,sortedNamespaceQueues:_,hasNamespaces:S,hasNamespaceQueues:C,namespaceExists:A,refreshNamespaces:g,refreshNamespaceQueues:$,deleteNamespace:L,refetchNamespaceData:V,isValidNamespace:I}}function Rv(e){const t=aO({mutation:{onSuccess:async()=>{await e()}}}),s=b(()=>t.isPending.value),n=b(()=>t.error.value?.error);return{deleteQueue:t.mutateAsync,isDeletingQueue:s,deleteQueueError:n,deleteQueueMutation:t}}const MI={class:"dialog-body"},II={class:"confirmation-message"},qI={class:"queue-details",role:"group","aria-label":"Queue details"},LI={class:"queue-info"},FI={class:"info-item"},VI=["title"],QI={class:"info-item"},jI=["title"],BI={class:"actions"},UI=["disabled"],KI=["disabled"],HI=Ue({__name:"DeleteQueueModal",props:{isVisible:{type:Boolean},isDeleting:{type:Boolean},queue:{}},emits:["cancel","confirm"],setup(e,{emit:t}){const s=e,n=t;function i(){s.isDeleting||n("cancel")}function r(){s.isDeleting||n("confirm")}return(o,l)=>(N(),at(Ss,{"is-visible":e.isVisible,title:"Delete Queue",subtitle:"This action cannot be undone",icon:"bi bi-exclamation-triangle-fill",size:"sm",onClose:i},{body:qe(()=>[a("div",MI,[a("section",II,[l[2]||(l[2]=a("p",{class:"message-text"}," Are you sure you want to permanently delete the following queue? ",-1)),a("div",qI,[a("div",LI,[a("div",FI,[l[0]||(l[0]=a("span",{class:"info-label"},"Queue Name:",-1)),a("span",{class:"info-value queue-name",title:e.queue.name},q(e.queue.name),9,VI)]),a("div",QI,[l[1]||(l[1]=a("span",{class:"info-label"},"Namespace:",-1)),a("span",{class:"info-value namespace",title:e.queue.ns},q(e.queue.ns),9,jI)])])])]),l[3]||(l[3]=a("section",{class:"warning-section","aria-live":"polite"},[a("div",{class:"warning-content"},[a("div",{class:"warning-icon","aria-hidden":"true"},[a("i",{class:"bi bi-shield-exclamation"})]),a("div",{class:"warning-text"},[a("h4",{class:"warning-title"},"Warning"),a("ul",{class:"warning-list"},[a("li",null,"All messages in this queue will be permanently lost"),a("li",null," Ensure all consumers connected to this queue are disconnected "),a("li",null,"This action cannot be reversed")])])])],-1))])]),footer:qe(()=>[a("div",BI,[a("button",{type:"button",class:"btn btn-outline-secondary",disabled:e.isDeleting,onClick:i},[...l[4]||(l[4]=[a("i",{class:"bi bi-x-circle me-2","aria-hidden":"true"},null,-1),te(" Cancel ",-1)])],8,UI),a("button",{type:"button",class:"btn btn-danger",disabled:e.isDeleting,onClick:r},[e.isDeleting?(N(),P(Ae,{key:0},[l[5]||(l[5]=a("span",{class:"spinner-border spinner-border-sm me-2",role:"status","aria-hidden":"true"},null,-1)),l[6]||(l[6]=te(" Deleting Queue... ",-1))],64)):(N(),P(Ae,{key:1},[l[7]||(l[7]=a("i",{class:"bi bi-trash-fill me-2","aria-hidden":"true"},null,-1)),l[8]||(l[8]=te(" Delete Queue ",-1))],64))],8,KI)])]),_:1},8,["is-visible"]))}}),Mv=Xe(HI,[["__scopeId","data-v-6e38dfa1"]]),GI=["onKeydown"],WI={class:"queue-content"},zI={class:"queue-info"},YI={class:"queue-header"},ZI=["title"],JI={class:"queue-details"},XI={class:"queue-namespace"},eq={class:"namespace-text"},tq={class:"queue-actions"},sq=Ue({__name:"QueueListItem",props:{queue:{}},emits:["select","delete"],setup(e,{emit:t}){const s=e,n=t;function i(){n("select",s.queue.ns,s.queue.name)}function r(){n("delete",s.queue.ns,s.queue.name)}return(o,l)=>(N(),P("li",{class:"queue-item",tabindex:"0",onClick:i,onKeydown:[an(i,["enter"]),an(Ft(i,["prevent"]),["space"])]},[a("div",WI,[l[1]||(l[1]=a("div",{class:"queue-icon"},[a("i",{class:"bi bi-collection"})],-1)),a("div",zI,[a("div",YI,[a("h5",{class:"queue-name",title:`${e.queue.ns}:${e.queue.name}`},q(e.queue.name),9,ZI)]),a("div",JI,[a("div",XI,[l[0]||(l[0]=a("i",{class:"bi bi-tag-fill namespace-icon"},null,-1)),a("span",eq,q(e.queue.ns),1)])])])]),l[4]||(l[4]=a("div",{class:"queue-status"},[a("span",{class:"status-indicator active",title:"Queue is active"},[a("i",{class:"bi bi-circle-fill"})])],-1)),a("div",tq,[a("button",{class:"action-btn view-btn",title:"View Queue Details",onClick:Ft(i,["stop"])},[...l[2]||(l[2]=[a("i",{class:"bi bi-eye-fill"},null,-1)])]),a("button",{class:"action-btn delete-btn",title:"Delete Queue",onClick:Ft(r,["stop"])},[...l[3]||(l[3]=[a("i",{class:"bi bi-trash3-fill"},null,-1)])])]),l[5]||(l[5]=a("div",{class:"hover-indicator"},[a("i",{class:"bi bi-chevron-right"})],-1))],40,GI))}}),nq=Xe(sq,[["__scopeId","data-v-f4df47cc"]]),iq={key:0,class:"alert alert-warning alert-dismissible fade show error-banner"},rq={class:"d-flex align-items-center"},aq={class:"content-card namespace-summary"},oq={class:"summary-content"},lq={class:"summary-stats"},uq={class:"stat-item"},cq={class:"stat-content"},dq={class:"stat-number"},fq={class:"stat-label"},hq={class:"stat-item"},pq={class:"stat-content"},mq={class:"stat-number"},gq={class:"content-card queues-card"},vq={class:"queues-header"},bq={class:"queues-count"},yq={class:"queues-list"},_q=Ue({__name:"NamespaceQueuesView",setup(e){const t=ps(),s=os(),n=Dv(),i=Jo(),r=It(),o=Xt(),l=Rv(async()=>{d.value=!1,c.value=null,await n.refreshNamespaceQueues(h.value)}),u=be(!1),d=be(!1),c=be(null),h=b(()=>t.params.ns),m=b(()=>n.sortedNamespaceQueues.value),p=b(()=>n.isLoadingNamespaceQueues.value),v=b(()=>n.namespaceQueuesError.value),E=b(()=>m.value.length>0),_=b(()=>h.value?n.namespaceExists.value(h.value):!1),S=b(()=>l.isDeletingQueue.value),C=b(()=>l.deleteQueueError.value);function A(F,H){r.selectQueue(F,H),s.push({name:"Queue",params:{ns:F,queue:H}})}function g(){i.clearSelectedNamespace(),s.push({name:"Namespaces"})}function $(){u.value=!0}function L(){u.value=!1}function V(F,H){c.value={ns:F,name:H},d.value=!0}function I(){d.value=!1,c.value=null}async function w(){c.value&&await l.deleteQueueMutation.mutateAsync({ns:c.value.ns,name:c.value.name})}function O(){n.refreshNamespaceQueues(h.value)}const x=b(()=>[{id:"refresh-queues",label:"Refresh",icon:"bi bi-arrow-clockwise",variant:"secondary",disabled:p.value,handler:O},{id:"create-queue",label:"Create Queue",icon:"bi bi-plus-circle",variant:"primary",disabled:!1,loading:!1,handler:$}]);return At(()=>{o.setPageHeader({title:h.value,subtitle:"Manage queues in this namespace",icon:"bi bi-folder-fill"}),o.setPageActions(x.value),o.setLoadingState(p.value),p.value||(_.value?v.value?(o.setErrorState(dt(v.value)),o.setEmptyState(!1)):E.value?(o.setErrorState(null),o.setEmptyState(!1)):(o.setErrorState(null),o.setEmptyState(!0,{icon:"bi bi-inbox",title:"No queues in this namespace",message:`Create your first queue in the "${h.value}" namespace to start managing messages.`,actionLabel:"Create Your First Queue",actionHandler:$})):(o.setEmptyState(!0,{icon:"bi bi-folder-x",title:"Namespace Not Found",message:`The namespace "${h.value}" does not exist or has been deleted.`,actionLabel:"Back to Namespaces",actionHandler:g}),o.setPageActions([])))}),Ye(h,F=>{F&&i.selectNamespace(F)},{immediate:!0}),Bt(()=>{h.value&&i.selectNamespace(h.value)}),(F,H)=>(N(),P("div",null,[we(ms,null,{default:qe(()=>[C.value&&!d.value?(N(),P("div",iq,[a("div",rq,[H[2]||(H[2]=a("i",{class:"bi bi-exclamation-triangle me-2"},null,-1)),a("span",null,"Failed to delete queue: "+q(T(dt)(C.value)),1)]),a("button",{type:"button",class:"btn-close",onClick:H[0]||(H[0]=z=>T(l).deleteQueueMutation.reset())})])):he("",!0),a("div",aq,[a("div",oq,[a("div",lq,[a("div",uq,[H[3]||(H[3]=a("div",{class:"stat-icon"},[a("i",{class:"bi bi-list-ul"})],-1)),a("div",cq,[a("div",dq,q(m.value.length),1),a("div",fq," Queue"+q(m.value.length!==1?"s":""),1)])]),a("div",hq,[H[5]||(H[5]=a("div",{class:"stat-icon"},[a("i",{class:"bi bi-folder-fill"})],-1)),a("div",pq,[a("div",mq,q(h.value),1),H[4]||(H[4]=a("div",{class:"stat-label"},"Namespace",-1))])])])])]),a("div",gq,[a("div",vq,[a("h5",bq,q(m.value.length)+" Queue"+q(m.value.length!==1?"s":""),1)]),a("div",yq,[(N(!0),P(Ae,null,bt(m.value,z=>(N(),at(nq,{key:`${z.ns}-${z.name}`,queue:z,onSelect:A,onDelete:V},null,8,["queue"]))),128))])])]),_:1}),we(Tv,{"is-visible":u.value,namespace:h.value,onClose:L,onCreated:H[1]||(H[1]=z=>T(n).refreshNamespaceQueues(h.value))},null,8,["is-visible","namespace"]),c.value?(N(),at(Mv,{key:0,"is-visible":d.value,"is-deleting":S.value,queue:c.value,onCancel:I,onConfirm:w},null,8,["is-visible","is-deleting","queue"])):he("",!0)]))}}),Eq=Xe(_q,[["__scopeId","data-v-125bc741"]]),wq=["aria-label"],Cq={key:0,class:"deleting-overlay"},Aq={class:"card-header"},Sq={class:"header-content"},xq={class:"header-text"},$q={class:"namespace-name"},Tq={class:"header-actions"},Oq={class:"card-body"},Nq={class:"stats-section",role:"group","aria-label":"Namespace stats"},kq={class:"stat-item"},Pq={class:"stat-value"},Dq={class:"stat-label"},Rq={class:"stat-item"},Mq={class:"stat-value"},Iq={class:"stat-label"},qq={class:"queues-section"},Lq={key:0,class:"queues-list",role:"list"},Fq=["onClick","onKeydown"],Vq={class:"queue-name"},Qq={key:1,class:"no-queues-message"},jq={class:"card-footer"},Bq={class:"footer-actions"},Uq=Ue({__name:"NamespaceCard",props:{namespace:{},queueCount:{},exchangeCount:{default:0},recentQueues:{},isDeleting:{type:Boolean}},emits:["click","delete","view-exchanges","queue-click"],setup(e,{emit:t}){const s=e,n=t;function i(o){n("queue-click",o)}function r(o){o.stopPropagation(),n("view-exchanges",s.namespace)}return(o,l)=>(N(),P("article",{class:De(["namespace-card",{"is-deleting":e.isDeleting}]),tabindex:"0","aria-label":`View details for namespace ${e.namespace}`,onClick:l[2]||(l[2]=u=>n("click",e.namespace)),onKeydown:[l[3]||(l[3]=an(u=>n("click",e.namespace),["enter"])),l[4]||(l[4]=an(Ft(u=>n("click",e.namespace),["prevent"]),["space"]))]},[e.isDeleting?(N(),P("div",Cq,[...l[5]||(l[5]=[a("div",{class:"spinner-border text-light",role:"status","aria-live":"polite","aria-label":"Deleting namespace"},null,-1),a("span",{class:"deleting-text"},"Deleting...",-1)])])):he("",!0),a("header",Aq,[a("div",Sq,[l[7]||(l[7]=a("div",{class:"header-icon","aria-hidden":"true"},[a("i",{class:"bi bi-folder2-open"})],-1)),a("div",xq,[a("h3",$q,q(e.namespace),1),l[6]||(l[6]=a("span",{class:"namespace-label"},"Namespace",-1))])]),a("div",Tq,[a("button",{type:"button",class:"btn-action btn-exchanges","aria-label":"View exchanges",title:"View exchanges in this namespace",onClick:Ft(r,["stop"])},[...l[8]||(l[8]=[a("i",{class:"bi bi-diagram-3","aria-hidden":"true"},null,-1)])]),a("button",{type:"button",class:"btn-action btn-delete","aria-label":"Delete namespace",title:"Delete namespace",onClick:l[0]||(l[0]=Ft(u=>n("delete",e.namespace),["stop"]))},[...l[9]||(l[9]=[a("i",{class:"bi bi-trash","aria-hidden":"true"},null,-1)])])])]),a("main",Oq,[a("div",Nq,[a("div",kq,[a("span",Pq,q(e.queueCount),1),a("span",Dq,q(e.queueCount===1?"Queue":"Queues"),1)]),a("div",Rq,[a("span",Mq,q(e.exchangeCount),1),a("span",Iq,q(e.exchangeCount===1?"Exchange":"Exchanges"),1)])]),a("div",qq,[l[11]||(l[11]=a("h4",{class:"queues-title"},[a("i",{class:"bi bi-card-list me-2","aria-hidden":"true"}),te(" Sample Queues ")],-1)),e.recentQueues.length?(N(),P("ul",Lq,[(N(!0),P(Ae,null,bt(e.recentQueues,u=>(N(),P("li",{key:`${u.name}@${u.ns}`,class:"queue-item",role:"listitem"},[a("a",{href:"#",class:"queue-link",onClick:Ft(d=>i(u),["prevent","stop"]),onKeydown:an(Ft(d=>i(u),["prevent","stop"]),["enter"])},[a("span",Vq,q(u.name),1),l[10]||(l[10]=a("i",{class:"bi bi-box-arrow-up-right queue-icon","aria-hidden":"true"},null,-1))],40,Fq)]))),128))])):(N(),P("p",Qq,"No queues in this namespace."))])]),a("footer",jq,[a("div",Bq,[a("button",{type:"button",class:"footer-action",onClick:l[1]||(l[1]=Ft(u=>n("click",e.namespace),["stop"]))},[...l[12]||(l[12]=[a("span",{class:"footer-text"},"View all queues",-1),a("i",{class:"bi bi-arrow-right","aria-hidden":"true"},null,-1)])]),a("button",{type:"button",class:"footer-action",onClick:Ft(r,["stop"])},[...l[13]||(l[13]=[a("span",{class:"footer-text"},"View exchanges",-1),a("i",{class:"bi bi-diagram-3","aria-hidden":"true"},null,-1)])])])])],42,wq))}}),Kq=Xe(Uq,[["__scopeId","data-v-b80eed74"]]),Hq={class:"dialog-body"},Gq={class:"confirmation-message"},Wq={class:"message-text"},zq=["title"],Yq={class:"namespace-details",role:"group","aria-label":"Namespace details"},Zq={class:"detail-item"},Jq={class:"detail-value"},Xq={key:0,class:"error-section",role:"alert"},eL={class:"error-content"},tL={class:"error-text"},sL={class:"error-message"},nL={class:"actions"},iL=["disabled"],rL=["disabled"],aL=Ue({__name:"DeleteNamespaceModal",props:{isVisible:{type:Boolean},namespace:{},queueCount:{},isDeleting:{type:Boolean},error:{}},emits:["cancel","confirm"],setup(e,{emit:t}){const s=e,n=t;function i(){s.isDeleting||n("cancel")}function r(){s.isDeleting||n("confirm")}return(o,l)=>(N(),at(Ss,{"is-visible":e.isVisible,title:"Delete Namespace",subtitle:"This action cannot be undone",icon:"bi bi-exclamation-triangle-fill",size:"sm",onClose:i},{body:qe(()=>[a("div",Hq,[a("section",Gq,[a("p",Wq,[l[0]||(l[0]=te(" Are you sure you want to permanently delete the namespace ",-1)),a("strong",{class:"namespace-identifier",title:e.namespace??""},q(e.namespace),9,zq),l[1]||(l[1]=te(" ? ",-1))]),a("div",Yq,[a("div",Zq,[l[2]||(l[2]=a("span",{class:"detail-label"},"Queues in namespace:",-1)),a("span",Jq,q(e.queueCount),1)])])]),l[5]||(l[5]=a("section",{class:"warning-section","aria-live":"polite"},[a("div",{class:"warning-content"},[a("div",{class:"warning-icon","aria-hidden":"true"},[a("i",{class:"bi bi-shield-exclamation"})]),a("div",{class:"warning-text"},[a("h4",{class:"warning-title"},"Warning"),a("ul",{class:"warning-list"},[a("li",null," All queues in this namespace will be permanently deleted "),a("li",null,"All messages in these queues will be lost"),a("li",null," Ensure all consumers connected to these queues are disconnected "),a("li",null,"This action cannot be reversed")])])])],-1)),e.error?(N(),P("section",Xq,[a("div",eL,[l[4]||(l[4]=a("div",{class:"error-icon","aria-hidden":"true"},[a("i",{class:"bi bi-exclamation-circle-fill"})],-1)),a("div",tL,[l[3]||(l[3]=a("h4",{class:"error-title"},"Deletion Failed",-1)),a("p",sL,q(e.error),1)])])])):he("",!0)])]),footer:qe(()=>[a("div",nL,[a("button",{class:"btn btn-outline-secondary",type:"button",disabled:e.isDeleting,onClick:i},[...l[6]||(l[6]=[a("i",{class:"bi bi-x-circle me-2","aria-hidden":"true"},null,-1),te(" Cancel ",-1)])],8,iL),a("button",{class:"btn btn-danger",type:"button",disabled:e.isDeleting,onClick:r},[e.isDeleting?(N(),P(Ae,{key:0},[l[7]||(l[7]=a("span",{class:"spinner-border spinner-border-sm me-2",role:"status","aria-hidden":"true"},null,-1)),l[8]||(l[8]=te(" Deleting... ",-1))],64)):(N(),P(Ae,{key:1},[l[9]||(l[9]=a("i",{class:"bi bi-trash-fill me-2","aria-hidden":"true"},null,-1)),l[10]||(l[10]=te(" Delete Namespace ",-1))],64))],8,rL)])]),_:1},8,["is-visible"]))}}),oL=Xe(aL,[["__scopeId","data-v-221b2a02"]]);function lL(){const e=JT(),t=b(()=>e.data.value),s=b(()=>e.isLoading.value),n=b(()=>e.error.value),i=b(()=>t.value?.data.length?[...t.value.data].sort((u,d)=>u.name.localeCompare(d.name)):[]),r=b(()=>u=>t.value?.data?t.value.data.filter(d=>d.ns===u).length:0);function o(u){return t.value?.data?t.value.data.filter(d=>d.ns===u):[]}function l(u,d){return o(u).find(h=>h.name===d)}return{queuesQuery:e,queues:t,isLoadingQueues:s,queuesError:n,sortedQueues:i,getNamespaceQueueCount:r,getQueuesInNamespace:o,findQueueInNamespace:l,refetchQueues:e.refetch}}const uL={key:0,class:"alert alert-warning alert-dismissible fade show mb-4",role:"alert"},cL={class:"namespaces-grid"},dL="Namespaces",fL="Organize and manage your message queue namespaces",hL=Ue({__name:"NamespacesView",setup(e){const t=os(),s=Dv(),n=lL(),i=It(),r=Jo(),o=Xt(),{data:l,isLoading:u,refetch:d}=Hg(),c=be(!1),h=be(null),m=b(()=>s.sortedNamespaces.value),p=b(()=>s.isLoadingNamespaces.value||u.value),v=b(()=>s.namespacesError.value),E=b(()=>s.isDeletingNamespace.value),_=b(()=>dt(s.deleteNamespaceError.value?.error)),S=b(()=>m.value.length>0),C=b(()=>l.value?.data||[]),A=H=>C.value.filter(z=>z.ns===H).length,g=b(()=>[{id:"refresh-namespaces",label:"Refresh",icon:"bi bi-arrow-clockwise",variant:"primary",disabled:p.value,loading:p.value,handler:$,tooltip:"Refresh namespaces and exchanges data"}]);function $(){s.refreshNamespaces(),d()}function L(){t.push({name:"Queues"})}function V(H){r.selectNamespace(H),t.push({name:"Namespace Queues",params:{ns:H}})}function I(H){r.selectNamespace(H),t.push({name:"Namespace Exchanges",params:{ns:H}})}function w(H){i.selectQueue(H.ns,H.name),t.push({name:"Queue",params:{ns:H.ns,queue:H.name}})}function O(H){h.value=H,c.value=!0}function x(){c.value=!1,h.value=null}async function F(){if(h.value)try{await s.deleteNamespace(h.value),x(),d()}catch(H){console.error("Failed to delete namespace:",H)}}return At(()=>{o.setPageHeader({title:dL,subtitle:fL,icon:"bi bi-folder"}),o.setPageActions(g.value),o.setLoadingState(p.value),v.value?(o.setErrorState(dt(v.value)),o.setEmptyState(!1)):!p.value&&!S.value?(o.setErrorState(null),o.setEmptyState(!0,{icon:"bi bi-folder-plus",title:"No Namespaces Found",message:"Namespaces are created automatically when you create queues. Start by creating your first queue.",actionLabel:"Create Queue",actionHandler:L})):(o.setErrorState(null),o.setEmptyState(!1))}),At(()=>{i.clearSelectedQueue()}),Bt(()=>{$()}),(H,z)=>(N(),P("div",null,[we(ms,null,{default:qe(()=>[_.value&&!c.value?(N(),P("div",uL,[z[1]||(z[1]=a("i",{class:"bi bi-exclamation-triangle-fill me-2"},null,-1)),te(" "+q(T(dt)(_.value))+" ",1),a("button",{type:"button",class:"btn-close","aria-label":"Close",onClick:z[0]||(z[0]=fe=>T(s).deleteNamespaceMutation.reset())})])):he("",!0),a("div",cL,[(N(!0),P(Ae,null,bt(m.value,fe=>(N(),at(Kq,{key:fe,namespace:fe,"queue-count":T(n).getNamespaceQueueCount.value(fe),"exchange-count":A(fe),"recent-queues":T(n).getQueuesInNamespace(fe).slice(0,3),"is-deleting":E.value&&h.value===fe,onClick:ie=>V(fe),onQueueClick:w,onDelete:O,onViewExchanges:I},null,8,["namespace","queue-count","exchange-count","recent-queues","is-deleting","onClick"]))),128))])]),_:1}),we(oL,{"is-visible":c.value,namespace:h.value,"queue-count":h.value?T(n).getNamespaceQueueCount.value(h.value):0,"is-deleting":E.value,error:_.value,onCancel:x,onConfirm:F},null,8,["is-visible","namespace","queue-count","is-deleting","error"])]))}}),Iv=Xe(hL,[["__scopeId","data-v-d9e0902c"]]),pL=Object.freeze(Object.defineProperty({__proto__:null,default:Iv},Symbol.toStringTag,{value:"Module"})),mL=(e,t,s)=>(e=T(e),t=T(t),Je({url:`/api/v1/namespaces/${e}/queues/${t}/consumer-groups`,method:"GET",signal:s})),gL=(e,t)=>["api","v1","namespaces",e,"queues",t,"consumer-groups"],vL=(e,t,s)=>{const{query:n}=s??{};return{queryKey:gL(e,t),queryFn:({signal:o})=>mL(e,t,o),enabled:b(()=>!!(T(e)&&T(t))),...n}};function bL(e,t,s,n){const i=vL(e,t,s),r=Jt(i);return r.queryKey=T(i).queryKey,r}const yL=(e,t,s,n)=>(e=T(e),t=T(t),s=T(s),Je({url:`/api/v1/namespaces/${e}/queues/${t}/consumer-groups`,method:"POST",headers:{"Content-Type":"application/json"},data:s,signal:n})),_L=e=>{const t=["postApiV1NamespacesNsQueuesNameConsumerGroups"],{mutation:s}=e?e.mutation&&"mutationKey"in e.mutation&&e.mutation.mutationKey?e:{...e,mutation:{...e.mutation,mutationKey:t}}:{mutation:{mutationKey:t}};return{mutationFn:i=>{const{ns:r,name:o,data:l}=i??{};return yL(r,o,l)},...s}},EL=(e,t)=>{const s=_L(e);return Nt(s)},wL=(e,t,s)=>(e=T(e),t=T(t),s=T(s),Je({url:`/api/v1/namespaces/${e}/queues/${t}/consumer-groups/${s}`,method:"DELETE"})),CL=e=>{const t=["deleteApiV1NamespacesNsQueuesNameConsumerGroupsConsumerGroupId"],{mutation:s}=e?e.mutation&&"mutationKey"in e.mutation&&e.mutation.mutationKey?e:{...e,mutation:{...e.mutation,mutationKey:t}}:{mutation:{mutationKey:t}};return{mutationFn:i=>{const{ns:r,name:o,consumerGroupId:l}=i??{};return wL(r,o,l)},...s}},AL=(e,t)=>{const s=CL(e);return Nt(s)};function qv(){const e=It(),t=Dn(),s=b(()=>e.selectedQueue),n=bL(b(()=>s.value?.ns||""),b(()=>s.value?.name||""),{query:{enabled:b(()=>!!s.value&&t.isPubSubQueue)}}),i=EL({mutation:{onSuccess:async()=>{await n.refetch()}}}),r=AL({mutation:{onSuccess:async()=>{await n.refetch()}}}),o=b(()=>n.data.value),l=b(()=>n.isLoading.value),u=b(()=>i.isPending.value),d=b(()=>r.isPending.value),c=b(()=>l.value||u.value||d.value),h=b(()=>n.error.value),m=b(()=>i.error.value),p=b(()=>r.error.value),v=b(()=>h.value||m.value||p.value),E=b(()=>t.isPubSubQueue&&!!o.value?.data&&Array.isArray(o.value.data)&&o.value.data.length>0),_=b(()=>o.value?.data?[...o.value.data].sort((O,x)=>O.localeCompare(x)):[]);async function S(O){if(!s.value)throw new Error("No queue selected");const x={consumerGroupId:O};await i.mutateAsync({ns:s.value.ns,name:s.value.name,data:x})}async function C(O){if(!s.value)throw new Error("No queue selected");await r.mutateAsync({ns:s.value.ns,name:s.value.name,consumerGroupId:O})}async function A(){await n.refetch()}function g(){return!s.value||!t.isPubSubQueue?Promise.resolve():n.refetch()}function $(){i.reset()}function L(){r.reset()}function V(){i.reset(),r.reset()}function I(O){return/^[a-zA-Z0-9_-]+$/.test(O)&&O.length>=1&&O.length<=50}function w(O){return o.value?.data?o.value.data.includes(O):!1}return{consumerGroupsQuery:n,createConsumerGroupMutation:i,deleteConsumerGroupMutation:r,consumerGroups:o,isLoading:c,isLoadingConsumerGroups:l,isCreatingConsumerGroup:u,isDeletingConsumerGroup:d,error:v,consumerGroupsError:h,createConsumerGroupError:m,deleteConsumerGroupError:p,hasConsumerGroups:E,sortedConsumerGroups:_,createConsumerGroup:S,deleteConsumerGroup:C,refreshConsumerGroups:A,refetchConsumerGroupsData:g,resetCreateConsumerGroupMutation:$,resetDeleteConsumerGroupMutation:L,resetAllMutations:V,isValidConsumerGroupId:I,consumerGroupExists:w}}const SL={class:"consumer-group-selector"},xL={key:0,class:"section-header"},$L={key:0,class:"section-meta"},TL={key:1,class:"state-container loading-state"},OL={key:2,class:"consumer-groups-grid"},NL=["aria-label","onClick","onKeydown"],kL={class:"card-header"},PL={class:"group-info"},DL={class:"group-name"},RL={key:3,class:"state-container empty-state"},ML={class:"state-content"},IL={class:"state-description"},qL={key:0,class:"state-actions"},LL=Ue({__name:"ConsumerGroupSelector",props:{showSectionHeader:{type:Boolean,default:!0}},setup(e){const t=It(),s=qv(),n=os(),i=b(()=>t.selectedQueue),r=b(()=>s.sortedConsumerGroups.value),o=b(()=>s.hasConsumerGroups.value),l=b(()=>s.isLoading.value),u=b(()=>{const m=r.value.length;return`${m} group${m!==1?"s":""} found`}),d=b(()=>i.value?`${i.value.ns}/${i.value.name}`:"");function c(m){i.value&&n.push({name:"Pending Messages",params:{ns:i.value.ns,queue:i.value.name},query:{consumerGroupId:m}})}function h(){i.value&&s.consumerGroupsQuery.refetch()}return(m,p)=>(N(),P("div",SL,[e.showSectionHeader?(N(),P("header",xL,[p[0]||(p[0]=a("h2",{class:"section-title"},"Consumer Groups",-1)),o.value&&!l.value?(N(),P("div",$L,q(u.value),1)):he("",!0)])):he("",!0),l.value?(N(),P("div",TL,[...p[1]||(p[1]=[a("div",{class:"state-content"},[a("div",{class:"loading-spinner"},[a("i",{class:"bi bi-arrow-clockwise"})]),a("p",{class:"state-text"},"Loading consumer groups...")],-1)])])):o.value?(N(),P("div",OL,[(N(!0),P(Ae,null,bt(r.value,v=>(N(),P("article",{key:v,class:"consumer-group-card",role:"button",tabindex:"0","aria-label":`View pending messages for consumer group ${v}`,onClick:E=>c(v),onKeydown:[an(E=>c(v),["enter"]),an(Ft(E=>c(v),["prevent"]),["space"])]},[a("div",kL,[p[3]||(p[3]=a("div",{class:"group-icon"},[a("i",{class:"bi bi-people-fill"})],-1)),a("div",PL,[a("h3",DL,q(v),1),p[2]||(p[2]=a("span",{class:"group-type"},"Consumer Group",-1))])]),p[4]||(p[4]=a("div",{class:"card-footer"},[a("span",{class:"action-hint"},[a("i",{class:"bi bi-eye"}),te(" View pending messages ")]),a("i",{class:"bi bi-arrow-right action-arrow"})],-1))],40,NL))),128))])):(N(),P("div",RL,[a("div",ML,[p[8]||(p[8]=a("div",{class:"state-icon"},[a("i",{class:"bi bi-people"})],-1)),p[9]||(p[9]=a("h3",{class:"state-title"},"No Consumer Groups Found",-1)),a("p",IL,[i.value?(N(),P(Ae,{key:0},[p[5]||(p[5]=te(" The queue ",-1)),a("strong",null,q(d.value),1),p[6]||(p[6]=te(" doesn't have any consumer groups yet. Consumer groups are created automatically when consumers start subscribing to this pub/sub queue. ",-1))],64)):(N(),P(Ae,{key:1},[te(" Select a pub/sub queue to view its consumer groups. ")],64))]),i.value?(N(),P("div",qL,[a("button",{type:"button",class:"btn btn-secondary",onClick:h},[...p[7]||(p[7]=[a("i",{class:"bi bi-arrow-clockwise"},null,-1),te(" Refresh ",-1)])])])):he("",!0),p[10]||(p[10]=a("details",{class:"help-section"},[a("summary",{class:"help-summary"},[a("i",{class:"bi bi-question-circle"}),te(" What are consumer groups? ")]),a("div",{class:"help-content"},[a("p",null," Consumer groups allow multiple consumers to work together to process messages from a pub/sub queue. Each message is delivered to only one consumer within the group, enabling load balancing and parallel processing. "),a("ul",null,[a("li",null," Consumer groups are created automatically when consumers connect "),a("li",null," Each group maintains its own message offset and processing state "),a("li",null,"Groups enable horizontal scaling of message processing")])])],-1))])]))]))}}),FL=Xe(LL,[["__scopeId","data-v-2c88981d"]]),VL=(e,t,s,n)=>(e=T(e),t=T(t),s=T(s),Je({url:`/api/v1/namespaces/${e}/queues/${t}/pending-messages`,method:"GET",params:T(s),signal:n}));function QL(e,t,s=20){const n=b(()=>{const r={};return t.value&&(r.consumerGroupId=t.value),r});return la(e,{queryFn:async({ns:r,name:o,page:l,pageSize:u,extraParams:d={}})=>{const c={page:l,pageSize:u};return d.consumerGroupId&&(c.consumerGroupId=String(d.consumerGroupId)),VL(r,o,c)},queryKeyPrefix:"pending-messages",enableDelete:!0,enableRequeue:!1},s,n)}const jL={key:0,class:"loading-state"},BL=Ue({__name:"PendingMessagesView",setup(e){const t=It(),s=Dn(),n=Xt(),i=ps(),r=b(()=>i.params.ns),o=b(()=>i.params.queue),l=b(()=>i.query.consumerGroupId),u=b(()=>!r.value||!o.value?null:{ns:r.value,name:o.value});Ye([r,o],([Z,W])=>{Z&&W&&t.selectQueue(Z,W)},{immediate:!0});const d=b(()=>t.selectedQueue),c=b(()=>s.isPubSubQueue),h=b(()=>s.isLoadingQueueProperties),m=b(()=>s.queueProperties),p=b(()=>d.value&&m.value&&c.value&&!l.value),v=b(()=>d.value&&m.value&&(!c.value||l.value)),E=b(()=>d.value&&h.value),_=b(()=>v.value?u.value:null),{messages:S,pagination:C,isLoading:A,isDeleting:g,isRequeuing:$,error:L,goToPage:V,setPageSize:I,refresh:w,deleteMessage:O,requeueMessage:x}=QL(_,l,20),F=b(()=>{if(!d.value)return"Pending Messages";const Z=`${d.value.name}@${d.value.ns}`;return c.value&&l.value?`Pending Messages - ${Z} (${l.value})`:`Pending Messages - ${Z}`}),H=b(()=>{if(d.value)return h.value?"Loading queue properties...":c.value&&l.value?`Pub/Sub Queue • Consumer Group: ${l.value}`:c.value?"Pub/Sub Queue • Select Consumer Group":"Point-2-Point Queue"}),z=b(()=>c.value&&l.value?`No pending messages found for consumer group "${l.value}". Messages appear here when they are waiting to be processed by consumers in this group.`:"No pending messages found for this queue. Messages appear here when they are waiting to be processed.");At(()=>{n.setPageHeader({title:F.value,subtitle:H.value,icon:"bi bi-hourglass-split"})}),At(()=>{if(!d.value){n.setEmptyState(!0,{icon:"bi bi-inbox",title:"No Queue Selected",message:"Please select a queue from the sidebar to view its pending messages."}),n.setPageActions([]),n.setLoadingState(!1),n.setErrorState(null);return}if(h.value){n.setLoadingState(!0),n.setErrorState(null),n.setEmptyState(!1),n.setPageActions([]);return}n.setLoadingState(!1),n.setErrorState(null),n.setEmptyState(!1),n.setPageActions([])});async function fe(Z){O&&await O(Z)}async function ie(Z){x&&await x(Z)}function G(Z){V(Z)}async function X(Z){await I(Z)}return(Z,W)=>(N(),at(ms,{"show-section-header":!1},{default:qe(()=>[E.value?(N(),P("div",jL,[...W[4]||(W[4]=[a("div",{class:"d-flex justify-content-center align-items-center py-5"},[a("div",{class:"spinner-border text-primary me-3",role:"status"},[a("span",{class:"visually-hidden"},"Loading...")]),a("span",{class:"text-muted"},"Loading queue properties...")],-1)])])):p.value?(N(),at(FL,{key:1,"show-section-header":!1})):v.value?(N(),at(oa,{key:2,messages:T(S),"is-loading":T(A),error:T(L),pagination:T(C),"show-pagination":!0,"empty-message":z.value,icon:"bi-hourglass-split","is-deleting":T(g),"is-requeuing":T($),onRefresh:T(w),onDeleteMessage:fe,onRequeueMessage:ie,onPageChange:G,onPageSizeChange:X,onFirstPage:W[0]||(W[0]=se=>G(1)),onPreviousPage:W[1]||(W[1]=se=>G(T(C).currentPage-1)),onNextPage:W[2]||(W[2]=se=>G(T(C).currentPage+1)),onLastPage:W[3]||(W[3]=se=>G(T(C).totalPages))},null,8,["messages","is-loading","error","pagination","empty-message","is-deleting","is-requeuing","onRefresh"])):he("",!0)]),_:1}))}}),UL=Xe(BL,[["__scopeId","data-v-30086d3d"]]);function KL(e){Ye(e.map(t=>t.isVisible),t=>{if(t.some(n=>n)){const n=i=>{if(i.key==="Escape"){for(const r of e)if(r.isVisible.value){r.onEscape();break}}};return window.addEventListener("keydown",n),()=>{window.removeEventListener("keydown",n)}}},{immediate:!0})}const HL={class:"queue-info-card"},GL={class:"card-header"},WL={class:"header-actions"},zL=["disabled"],YL={class:"card-content"},ZL={key:0,class:"content-state loading-state"},JL={key:1,class:"content-state error-state",role:"alert"},XL={class:"error-content"},eF={key:2,class:"queue-details-wrapper"},tF={class:"info-section"},sF={class:"info-grid"},nF={class:"info-item"},iF={class:"info-content"},rF={class:"info-details"},aF={class:"info-value"},oF=["title"],lF={class:"info-item"},uF={class:"info-content"},cF={class:"info-details"},dF={class:"info-value"},fF=["title"],hF={class:"info-item"},pF={class:"info-content"},mF={class:"info-details"},gF={class:"info-value"},vF=["title"],bF={class:"info-item"},yF={class:"info-content"},_F={class:"info-details"},EF={class:"info-value"},wF=["title"],CF={class:"info-section"},AF={class:"info-grid"},SF={class:"info-item"},xF={class:"info-content"},$F={class:"info-details"},TF={class:"info-value"},OF={class:"rate-limit"},NF={class:"info-section"},kF={class:"info-grid stats-grid"},PF=["role","onClick"],DF={class:"info-content"},RF={class:"info-details"},MF={class:"info-label"},IF={class:"info-value stat-value"},qF={key:0,class:"info-arrow","aria-hidden":"true"},LF={key:3,class:"content-state empty-state"},FF=Ue({__name:"QueuePropertiesCard",setup(e){const t=It(),s=Dn(),n=os(),i=b(()=>t.selectedQueue),r=b(()=>s.queueProperties?.data),o=b(()=>s.isLoadingQueueProperties),l=b(()=>{const A=s.queuePropertiesError?.error;return A?`Failed to load queue information: ${A.message}`:null}),u=b(()=>r.value?[{label:"Pending",value:r.value.pendingMessagesCount,icon:"bi-clock-history",iconClass:"pending-icon",routeName:"Pending Messages"},{label:"Dead-lettered",value:r.value.deadLetteredMessagesCount,icon:"bi-x-octagon-fill",iconClass:"dead-lettered-icon",routeName:"Dead-Lettered Messages"},{label:"Processing",value:r.value.processingMessagesCount,icon:"bi-hourglass-split",iconClass:"processing-icon",routeName:null},{label:"Acknowledged",value:r.value.acknowledgedMessagesCount,icon:"bi-check-circle-fill",iconClass:"acknowledged-icon",routeName:"Acknowledged Messages"},{label:"Scheduled",value:r.value.scheduledMessagesCount,icon:"bi-calendar-plus-fill",iconClass:"scheduled-icon",routeName:"Scheduled Messages"},{label:"Requeued",value:r.value.requeuedMessagesCount,icon:"bi-arrow-repeat",iconClass:"requeued-icon",routeName:null},{label:"Delayed",value:r.value.delayedMessagesCount,icon:"bi-stopwatch-fill",iconClass:"delayed-icon",routeName:null},{label:"Total Messages",value:r.value.messagesCount,icon:"bi-collection-fill",iconClass:"total-icon",routeName:"Messages"}]:[]);function d(A){!A||!i.value||n.push({name:A,params:{ns:i.value.ns,queue:i.value.name}})}function c(){s.refreshQueueProperties()}function h(A){return A===null||typeof A>"u"?"0":A.toLocaleString()}function m(A){switch(A){case Ht.FIFO_QUEUE:return"FIFO";case Ht.LIFO_QUEUE:return"LIFO";case Ht.PRIORITY_QUEUE:return"Priority";default:return"Unknown"}}function p(A){switch(A){case Ht.FIFO_QUEUE:return"queue-type-fifo";case Ht.LIFO_QUEUE:return"queue-type-lifo";case Ht.PRIORITY_QUEUE:return"queue-type-priority";default:return"queue-type-unknown"}}function v(A){switch(A){case Ht.FIFO_QUEUE:return"First In, First Out - Messages processed in order";case Ht.LIFO_QUEUE:return"Last In, First Out - Most recent messages processed first";case Ht.PRIORITY_QUEUE:return"Priority-based - Higher priority messages processed first";default:return"Unknown queue processing order"}}function E(A){switch(A){case us.POINT_TO_POINT:return"Point-to-Point";case us.PUB_SUB:return"Pub/Sub";default:return"Unknown"}}function _(A){switch(A){case us.POINT_TO_POINT:return"delivery-model-p2p";case us.PUB_SUB:return"delivery-model-pubsub";default:return"delivery-model-unknown"}}function S(A){switch(A){case us.POINT_TO_POINT:return"One-to-one message delivery between producer and consumer";case us.PUB_SUB:return"One-to-many message delivery to multiple subscribers";default:return"Unknown message delivery pattern"}}function C(A){if(!A||!A.limit||!A.interval)return"None";const g=A.interval/1e3;return`${A.limit} msg / ${g}s`}return(A,g)=>(N(),P("div",HL,[a("header",GL,[g[0]||(g[0]=a("div",{class:"header-content"},[a("h3",{class:"card-title"},[a("i",{class:"bi bi-info-circle-fill title-icon"}),te(" Queue Details ")]),a("p",{class:"card-subtitle"}," Configuration and real-time statistics for the selected queue ")],-1)),a("div",WL,[a("button",{class:"btn btn-refresh",disabled:o.value,"aria-label":"Refresh queue information",title:"Refresh queue information",onClick:c},[a("i",{class:De(["bi bi-arrow-clockwise",{spinning:o.value}])},null,2)],8,zL)])]),a("main",YL,[o.value?(N(),P("div",ZL,[...g[1]||(g[1]=[a("div",{class:"state-content"},[a("div",{class:"spinner-border text-primary mb-2",role:"status","aria-live":"polite","aria-label":"Loading queue"}),a("h5",{class:"state-title"},"Loading...")],-1)])])):l.value?(N(),P("div",JL,[a("div",XL,[g[2]||(g[2]=a("i",{class:"bi bi-exclamation-triangle-fill text-danger me-2","aria-hidden":"true"},null,-1)),a("span",null,q(l.value),1)]),a("button",{class:"btn btn-sm btn-primary mt-2",onClick:c},[...g[3]||(g[3]=[a("i",{class:"bi bi-arrow-clockwise me-1","aria-hidden":"true"},null,-1),te(" Retry ",-1)])])])):i.value&&r.value?(N(),P("div",eF,[a("section",tF,[g[12]||(g[12]=a("h4",{class:"section-title"},[a("i",{class:"bi bi-gear-fill","aria-hidden":"true"}),te(" Configuration ")],-1)),a("div",sF,[a("div",nF,[a("div",iF,[g[5]||(g[5]=a("div",{class:"info-icon queue-name-icon"},[a("i",{class:"bi bi-tag-fill","aria-hidden":"true"})],-1)),a("div",rF,[g[4]||(g[4]=a("div",{class:"info-label"},"Queue Name",-1)),a("div",aF,[a("span",{class:"queue-name",title:i.value.name},q(i.value.name),9,oF)])])])]),a("div",lF,[a("div",uF,[g[7]||(g[7]=a("div",{class:"info-icon namespace-icon"},[a("i",{class:"bi bi-folder-fill","aria-hidden":"true"})],-1)),a("div",cF,[g[6]||(g[6]=a("div",{class:"info-label"},"Namespace",-1)),a("div",dF,[a("span",{class:"namespace",title:i.value.ns},q(i.value.ns),9,fF)])])])]),a("div",hF,[a("div",pF,[g[9]||(g[9]=a("div",{class:"info-icon queue-type-icon"},[a("i",{class:"bi bi-list-ol","aria-hidden":"true"})],-1)),a("div",mF,[g[8]||(g[8]=a("div",{class:"info-label"},"Queue Type",-1)),a("div",gF,[a("span",{class:De(["queue-type-badge",p(r.value.queueType)]),title:v(r.value.queueType)},q(m(r.value.queueType)),11,vF)])])])]),a("div",bF,[a("div",yF,[g[11]||(g[11]=a("div",{class:"info-icon delivery-model-icon"},[a("i",{class:"bi bi-arrow-left-right","aria-hidden":"true"})],-1)),a("div",_F,[g[10]||(g[10]=a("div",{class:"info-label"},"Delivery Model",-1)),a("div",EF,[a("span",{class:De(["delivery-model-badge",_(r.value.deliveryModel)]),title:S(r.value.deliveryModel)},q(E(r.value.deliveryModel)),11,wF)])])])])])]),a("section",CF,[g[15]||(g[15]=a("h4",{class:"section-title"},[a("i",{class:"bi bi-speedometer2","aria-hidden":"true"}),te(" Rate Limit ")],-1)),a("div",AF,[a("div",SF,[a("div",xF,[g[14]||(g[14]=a("div",{class:"info-icon rate-limit-icon"},[a("i",{class:"bi bi-speedometer2","aria-hidden":"true"})],-1)),a("div",$F,[g[13]||(g[13]=a("div",{class:"info-label"},"Current Limit",-1)),a("div",TF,[a("span",OF,q(C(r.value.rateLimit)),1)])])])])])]),a("section",NF,[g[17]||(g[17]=a("h4",{class:"section-title"},[a("i",{class:"bi bi-bar-chart-line-fill","aria-hidden":"true"}),te(" Message Statistics ")],-1)),a("div",kF,[(N(!0),P(Ae,null,bt(u.value,$=>(N(),P("div",{key:$.label,class:De(["info-item stat-item",{clickable:!!$.routeName}]),role:$.routeName?"link":"listitem",onClick:L=>d($.routeName)},[a("div",DF,[a("div",{class:De(["info-icon",$.iconClass])},[a("i",{class:De($.icon),"aria-hidden":"true"},null,2)],2),a("div",RF,[a("div",MF,q($.label),1),a("div",IF,q(h($.value)),1)]),$.routeName?(N(),P("div",qF,[...g[16]||(g[16]=[a("i",{class:"bi bi-chevron-right"},null,-1)])])):he("",!0)])],10,PF))),128))])])])):(N(),P("div",LF,[...g[18]||(g[18]=[a("div",{class:"state-content"},[a("div",{class:"empty-icon","aria-hidden":"true"},"📋"),a("h4",{class:"state-title"},"No Queue Selected"),a("p",{class:"state-subtitle"},"Select a queue to view its properties")],-1)])]))])]))}}),VF=Xe(FF,[["__scopeId","data-v-38070cee"]]),QF=Pc({consumerGroupName:yo().min(2,{message:"Name must be at least 2 characters"}).max(64,{message:"Name must be at most 64 characters"}).regex(/^[a-zA-Z0-9_-]+$/,{message:"Only letters, numbers, underscores, and hyphens are allowed"})});function jF(){const e=Dc(QF),{errors:t,values:s,meta:n,resetForm:i,handleSubmit:r,setFieldValue:o,setValues:l}=Yo({validationSchema:e});return{errors:t,values:s,meta:n,resetForm:i,handleSubmit:r,setFieldValue:o,setValues:l,validationSchema:e}}const BF={class:"form-content"},UF={class:"form-section"},KF={class:"form-group"},HF={key:0,class:"error-section"},GF={class:"error-content"},WF={class:"error-text"},zF={class:"error-message"},YF=["disabled"],ZF=["disabled"],JF=Ue({__name:"CreateConsumerGroupModal",props:{isVisible:{type:Boolean},isCreating:{type:Boolean},createError:{}},emits:["close","submit"],setup(e,{emit:t}){const s={mounted:c=>c.focus()},n=e,{errors:i,resetForm:r,validationSchema:o}=jF();Ye(()=>n.isVisible,c=>{c||r()});const l=t;function u(c){l("submit",c)}function d(){l("close")}return(c,h)=>(N(),at(Ss,{"is-visible":e.isVisible,title:"Create Consumer Group",subtitle:"Add a new consumer group for message processing",icon:"bi bi-people-fill",size:"md",onClose:d},{body:qe(()=>[we(T(yv),{id:"create-consumer-group-form","validation-schema":T(o),onSubmit:u},{default:qe(()=>[a("div",BF,[a("section",UF,[h[2]||(h[2]=a("div",{class:"section-header"},[a("h3",{class:"section-title"},[a("i",{class:"bi bi-info-circle-fill section-icon"}),te(" Group Information ")]),a("p",{class:"section-description"}," Define the consumer group identifier ")],-1)),a("div",KF,[h[0]||(h[0]=a("label",{for:"consumerGroupName",class:"form-label"},[a("i",{class:"bi bi-tag-fill label-icon"}),te(" Consumer Group Name "),a("span",{class:"required-indicator"},"*")],-1)),ss(we(T(Ns),{id:"consumerGroupName",name:"consumerGroupName",type:"text",placeholder:"e.g. email-processors",class:De(["form-control",{error:T(i).consumerGroupName}]),autocomplete:"off","aria-describedby":"consumerGroupName-help consumerGroupName-error"},null,8,["class"]),[[s]]),we(T(Jn),{id:"consumerGroupName-error",name:"consumerGroupName",class:"field-error"}),h[1]||(h[1]=a("div",{id:"consumerGroupName-help",class:"field-help"},[a("i",{class:"bi bi-lightbulb help-icon"}),te(" Use letters, numbers, underscores, and hyphens only ")],-1))])]),h[5]||(h[5]=a("section",{class:"benefits-section"},[a("div",{class:"benefits-header"},[a("h4",{class:"benefits-title"},[a("i",{class:"bi bi-check-circle-fill me-2"}),te(" Consumer Group Benefits ")])]),a("div",{class:"benefits-list"},[a("div",{class:"benefit-item"},[a("i",{class:"bi bi-arrow-right benefit-icon"}),a("span",null,"Parallel message processing across multiple consumers")]),a("div",{class:"benefit-item"},[a("i",{class:"bi bi-arrow-right benefit-icon"}),a("span",null,"Automatic load balancing and fault tolerance")]),a("div",{class:"benefit-item"},[a("i",{class:"bi bi-arrow-right benefit-icon"}),a("span",null,"Scalable message consumption patterns")])])],-1)),e.createError?(N(),P("div",HF,[a("div",GF,[h[4]||(h[4]=a("div",{class:"error-icon"},[a("i",{class:"bi bi-exclamation-triangle-fill"})],-1)),a("div",WF,[h[3]||(h[3]=a("h4",{class:"error-title"},"Creation Failed",-1)),a("p",zF,q(e.createError),1)])])])):he("",!0)])]),_:1},8,["validation-schema"])]),footer:qe(()=>[a("button",{type:"button",class:"btn btn-secondary",disabled:e.isCreating,onClick:d},[...h[6]||(h[6]=[a("i",{class:"bi bi-x-circle me-2"},null,-1),te(" Cancel ",-1)])],8,YF),a("button",{type:"submit",class:"btn btn-primary",disabled:e.isCreating,form:"create-consumer-group-form"},[e.isCreating?(N(),P(Ae,{key:0},[h[7]||(h[7]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),h[8]||(h[8]=te(" Creating Group... ",-1))],64)):(N(),P(Ae,{key:1},[h[9]||(h[9]=a("i",{class:"bi bi-check-circle me-2"},null,-1)),h[10]||(h[10]=te(" Create Consumer Group ",-1))],64))],8,ZF)]),_:1},8,["is-visible"]))}}),XF=Xe(JF,[["__scopeId","data-v-0a3bbba0"]]),e2={class:"dialog-body"},t2={class:"confirmation-message"},s2={class:"consumer-group-details"},n2={class:"group-info"},i2={class:"group-content"},r2=["title"],a2={key:0,class:"error-section",role:"alert"},o2={class:"error-content"},l2={class:"error-text"},u2={class:"error-message"},c2={class:"actions"},d2=["disabled"],f2=["disabled"],h2=Ue({__name:"DeleteConsumerGroupModal",props:{isVisible:{type:Boolean},isPending:{type:Boolean},error:{},consumerGroup:{}},emits:["close","delete"],setup(e,{emit:t}){const s=t;function n(){s("delete")}function i(){s("close")}return(r,o)=>(N(),at(Ss,{"is-visible":e.isVisible,title:"Delete Consumer Group",subtitle:"This action cannot be undone",icon:"bi bi-exclamation-triangle-fill",size:"sm",onClose:i},{body:qe(()=>[a("div",e2,[a("section",t2,[o[2]||(o[2]=a("p",{class:"message-text"}," Are you sure you want to permanently delete the following consumer group? ",-1)),a("div",s2,[a("div",n2,[o[1]||(o[1]=a("div",{class:"group-icon"},[a("i",{class:"bi bi-people-fill","aria-hidden":"true"})],-1)),a("div",i2,[o[0]||(o[0]=a("div",{class:"group-label"},"Consumer Group",-1)),a("div",{class:"group-name",title:e.consumerGroup},q(e.consumerGroup),9,r2)])])])]),o[5]||(o[5]=a("section",{class:"warning-section","aria-live":"polite"},[a("div",{class:"warning-content"},[a("div",{class:"warning-icon"},[a("i",{class:"bi bi-shield-exclamation","aria-hidden":"true"})]),a("div",{class:"warning-text"},[a("h4",{class:"warning-title"},"Warning"),a("ul",{class:"warning-list"},[a("li",null,"All consumers in this group will be disconnected"),a("li",null,"Message processing for this group will stop immediately"),a("li",null,"This action cannot be reversed")])])])],-1)),e.error?(N(),P("section",a2,[a("div",o2,[o[4]||(o[4]=a("div",{class:"error-icon"},[a("i",{class:"bi bi-exclamation-circle-fill","aria-hidden":"true"})],-1)),a("div",l2,[o[3]||(o[3]=a("h4",{class:"error-title"},"Deletion Failed",-1)),a("p",u2,q(e.error),1)])])])):he("",!0)])]),footer:qe(()=>[a("div",c2,[a("button",{type:"button",class:"btn btn-outline-secondary",disabled:e.isPending,onClick:i},[...o[6]||(o[6]=[a("i",{class:"bi bi-x-circle me-2","aria-hidden":"true"},null,-1),te(" Cancel ",-1)])],8,d2),a("button",{type:"button",class:"btn btn-danger",disabled:e.isPending,onClick:n},[e.isPending?(N(),P(Ae,{key:0},[o[7]||(o[7]=a("span",{class:"spinner-border spinner-border-sm me-2",role:"status","aria-hidden":"true"},null,-1)),o[8]||(o[8]=te(" Deleting Group... ",-1))],64)):(N(),P(Ae,{key:1},[o[9]||(o[9]=a("i",{class:"bi bi-trash-fill me-2","aria-hidden":"true"},null,-1)),o[10]||(o[10]=te(" Delete Consumer Group ",-1))],64))],8,f2)])]),_:1},8,["is-visible"]))}}),p2=Xe(h2,[["__scopeId","data-v-5d5b710f"]]);function m2(){const e=ps(),t=b(()=>{const u=e.params.ns;return Array.isArray(u)?u[0]:u}),s=b(()=>{const u=e.params.queue;return Array.isArray(u)?u[0]:u}),n=b(()=>!!(t.value&&s.value)),i=b(()=>!!(t.value&&t.value.length>0)),r=b(()=>!!(s.value&&s.value.length>0)),o=b(()=>t.value||"Unknown"),l=b(()=>s.value||"Unknown");return{ns:t,queueName:s,hasValidParams:n,isValidNamespace:i,isValidQueueName:r,displayNamespace:o,displayQueueName:l}}const g2={key:0,class:"consumer-groups-card"},v2={class:"card-header"},b2={class:"header-actions"},y2=["disabled"],_2={class:"card-content"},E2={key:0,class:"content-state not-supported-state"},w2={key:0,class:"content-state loading-state"},C2={key:1,class:"content-state error-state"},A2={class:"error-content"},S2={class:"error-text"},x2={class:"error-message"},$2={key:2,class:"content-state empty-state"},T2={class:"state-content"},O2=["disabled"],N2={key:3,class:"consumer-groups-content"},k2={class:"groups-header"},P2={class:"groups-count"},D2={class:"count-number"},R2={class:"count-label"},M2=["disabled"],I2={class:"consumer-groups-list"},q2={class:"group-info"},L2={class:"group-details"},F2={class:"group-name"},V2={class:"group-actions"},Q2=["disabled","onClick"],j2=Ue({__name:"ConsumerGroupsCard",setup(e){const t=It(),s=Dn(),n=qv(),i=be(!1),r=be(!1),o=be(null),{ns:l,queueName:u}=m2();Ye([l,u],([w,O])=>{w&&O&&t.selectQueue(w,O)},{immediate:!0});function d(w){o.value=w,r.value=!0}function c(){r.value=!1,o.value=null}const h=b(()=>s.isPubSubQueue),m=b(()=>!h.value||!n.consumerGroups.value?.data?[]:n.sortedConsumerGroups.value),p=b(()=>n.hasConsumerGroups.value),v=b(()=>{const w=n.consumerGroupsError.value?.error;if(w)return w.message?w.message:"Failed to load consumer groups"}),E=b(()=>{const w=n.createConsumerGroupError.value?.error;if(w)return w.message?w.message:"Failed to create consumer group"}),_=b(()=>{const w=n.deleteConsumerGroupError.value?.error;if(w)return w.message?w.message:"Failed to delete consumer group"}),S=b(()=>n.isDeletingConsumerGroup.value),C=b(()=>n.isCreatingConsumerGroup.value),A=b(()=>n.isLoadingConsumerGroups.value);function g(){n.refreshConsumerGroups()}async function $(w){try{const O=w;await n.createConsumerGroup(O.consumerGroupName),i.value=!1}catch(O){console.error("Failed to create consumer group:",O)}}async function L(){if(o.value)try{await n.deleteConsumerGroup(o.value),c()}catch(w){console.error("Failed to delete consumer group:",w)}}function V(){i.value=!1,n.resetCreateConsumerGroupMutation()}function I(){c(),n.resetDeleteConsumerGroupMutation()}return(w,O)=>T(t).selectedQueue?(N(),P("div",g2,[a("header",v2,[O[2]||(O[2]=a("div",{class:"header-content"},[a("h3",{class:"card-title"},[a("i",{class:"bi bi-people-fill title-icon"}),te(" Consumer Groups ")]),a("p",{class:"card-subtitle"}," Manage message consumer groups for pub/sub queues ")],-1)),a("div",b2,[h.value?(N(),P("button",{key:0,class:"btn btn-refresh",disabled:A.value,title:"Refresh consumer groups",onClick:g},[a("i",{class:De(["bi bi-arrow-clockwise",{spinning:A.value}])},null,2)],8,y2)):he("",!0)])]),a("main",_2,[h.value?(N(),P(Ae,{key:1},[A.value?(N(),P("div",w2,[...O[4]||(O[4]=[a("div",{class:"state-content"},[a("div",{class:"spinner-border text-primary mb-3"}),a("h5",{class:"state-title"},"Loading consumer groups..."),a("p",{class:"state-subtitle"}," Please wait while we fetch the consumer groups ")],-1)])])):v.value?(N(),P("div",C2,[a("div",A2,[O[6]||(O[6]=a("div",{class:"error-icon"},[a("i",{class:"bi bi-exclamation-triangle-fill text-danger"})],-1)),a("div",S2,[O[5]||(O[5]=a("h5",{class:"error-title"},"Failed to load consumer groups",-1)),a("p",x2,q(v.value),1)])]),a("div",{class:"error-actions"},[a("button",{class:"btn btn-primary",onClick:g},[...O[7]||(O[7]=[a("i",{class:"bi bi-arrow-clockwise me-2"},null,-1),te(" Try Again ",-1)])])])])):p.value?(N(),P("div",N2,[a("div",k2,[a("div",P2,[a("span",D2,q(m.value.length),1),a("span",R2,"Consumer Group"+q(m.value.length!==1?"s":""),1)]),a("button",{class:"btn btn-primary btn-create",disabled:C.value,onClick:O[1]||(O[1]=x=>i.value=!0)},[C.value?(N(),P(Ae,{key:0},[O[13]||(O[13]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),O[14]||(O[14]=te(" Creating... ",-1))],64)):(N(),P(Ae,{key:1},[O[15]||(O[15]=a("i",{class:"bi bi-plus-circle me-2"},null,-1)),O[16]||(O[16]=te(" Create Group ",-1))],64))],8,M2)]),a("div",I2,[(N(!0),P(Ae,null,bt(m.value,x=>(N(),P("div",{key:x,class:"consumer-group-item"},[a("div",q2,[O[18]||(O[18]=a("div",{class:"group-icon"},[a("i",{class:"bi bi-people-fill"})],-1)),a("div",L2,[a("div",F2,q(x),1),O[17]||(O[17]=a("div",{class:"group-description"}," Consumer group for message processing ",-1))])]),a("div",V2,[a("button",{class:"btn btn-outline-danger btn-delete",disabled:S.value,title:"Delete consumer group",onClick:F=>d(x)},[S.value&&o.value===x?(N(),P(Ae,{key:0},[O[19]||(O[19]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),O[20]||(O[20]=te(" Deleting... ",-1))],64)):(N(),P(Ae,{key:1},[O[21]||(O[21]=a("i",{class:"bi bi-trash me-2"},null,-1)),O[22]||(O[22]=te(" Delete ",-1))],64))],8,Q2)])]))),128))])])):(N(),P("div",$2,[a("div",T2,[O[12]||(O[12]=ai('<div class="empty-icon" data-v-2744aa11>👥</div><h4 class="state-title" data-v-2744aa11>No Consumer Groups</h4><p class="state-subtitle" data-v-2744aa11> Organize consumers into groups to load-balance message consumption from a queue. Each message is delivered to only one consumer within a group. </p><div class="empty-benefits" data-v-2744aa11><div class="benefit-item" data-v-2744aa11><i class="bi bi-check-circle-fill benefit-icon" data-v-2744aa11></i><span data-v-2744aa11>Load-balance message processing within a group</span></div><div class="benefit-item" data-v-2744aa11><i class="bi bi-check-circle-fill benefit-icon" data-v-2744aa11></i><span data-v-2744aa11>Ensure each message is processed only once per group</span></div><div class="benefit-item" data-v-2744aa11><i class="bi bi-check-circle-fill benefit-icon" data-v-2744aa11></i><span data-v-2744aa11>Build fault-tolerant and scalable consumer systems</span></div></div>',4)),a("button",{class:"btn btn-primary btn-create-first",disabled:C.value,onClick:O[0]||(O[0]=x=>i.value=!0)},[C.value?(N(),P(Ae,{key:0},[O[8]||(O[8]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),O[9]||(O[9]=te(" Creating... ",-1))],64)):(N(),P(Ae,{key:1},[O[10]||(O[10]=a("i",{class:"bi bi-plus-circle me-2"},null,-1)),O[11]||(O[11]=te(" Create Your First Consumer Group ",-1))],64))],8,O2)])]))],64)):(N(),P("div",E2,[...O[3]||(O[3]=[ai('<div class="state-content" data-v-2744aa11><div class="not-supported-icon" data-v-2744aa11><i class="bi bi-info-circle-fill" data-v-2744aa11></i></div><h4 class="state-title" data-v-2744aa11>Consumer Groups Not Supported</h4><p class="state-subtitle" data-v-2744aa11> Point-to-point queues use direct messaging where messages are delivered directly to individual consumers. </p><div class="state-info" data-v-2744aa11><div class="info-item" data-v-2744aa11><i class="bi bi-arrow-right me-2" data-v-2744aa11></i><span data-v-2744aa11>Messages are consumed by a single consumer</span></div><div class="info-item" data-v-2744aa11><i class="bi bi-arrow-right me-2" data-v-2744aa11></i><span data-v-2744aa11>No message broadcasting or group management needed</span></div></div></div>',1)])]))]),we(XF,{"is-visible":i.value,"is-creating":C.value,"create-error":E.value,onSubmit:$,onClose:V},null,8,["is-visible","is-creating","create-error"]),we(p2,{error:_.value,"is-pending":S.value,"consumer-group":String(o.value),"is-visible":r.value,onClose:I,onDelete:L},null,8,["error","is-pending","consumer-group","is-visible"])])):he("",!0)}}),B2=Xe(j2,[["__scopeId","data-v-2744aa11"]]),U2=(e,t,s)=>(e=T(e),t=T(t),Je({url:`/api/v1/namespaces/${e}/queues/${t}/rate-limit`,method:"GET",signal:s})),K2=(e,t)=>["api","v1","namespaces",e,"queues",t,"rate-limit"],H2=(e,t,s)=>{const{query:n}=s??{};return{queryKey:K2(e,t),queryFn:({signal:o})=>U2(e,t,o),enabled:b(()=>!!(T(e)&&T(t))),...n}};function G2(e,t,s,n){const i=H2(e,t,s),r=Jt(i);return r.queryKey=T(i).queryKey,r}const W2=(e,t,s)=>(e=T(e),t=T(t),s=T(s),Je({url:`/api/v1/namespaces/${e}/queues/${t}/rate-limit`,method:"PUT",headers:{"Content-Type":"application/json"},data:s})),z2=e=>{const t=["putApiV1NamespacesNsQueuesNameRateLimit"],{mutation:s}=e?e.mutation&&"mutationKey"in e.mutation&&e.mutation.mutationKey?e:{...e,mutation:{...e.mutation,mutationKey:t}}:{mutation:{mutationKey:t}};return{mutationFn:i=>{const{ns:r,name:o,data:l}=i??{};return W2(r,o,l)},...s}},Y2=(e,t)=>{const s=z2(e);return Nt(s)},Z2=(e,t)=>(e=T(e),t=T(t),Je({url:`/api/v1/namespaces/${e}/queues/${t}/rate-limit`,method:"DELETE"})),J2=e=>{const t=["deleteApiV1NamespacesNsQueuesNameRateLimit"],{mutation:s}=e?e.mutation&&"mutationKey"in e.mutation&&e.mutation.mutationKey?e:{...e,mutation:{...e.mutation,mutationKey:t}}:{mutation:{mutationKey:t}};return{mutationFn:i=>{const{ns:r,name:o}=i??{};return Z2(r,o)},...s}},X2=(e,t)=>{const s=J2(e);return Nt(s)};function eV(){const e=It(),t=G2(b(()=>e.selectedQueue?.ns||""),b(()=>e.selectedQueue?.name||""),{query:{enabled:b(()=>!!e.selectedQueue?.ns&&!!e.selectedQueue?.name),retry:!1}}),s=Y2({mutation:{onSuccess:async()=>{await t.refetch()}}}),n=X2({mutation:{onSuccess:async()=>{await t.refetch()}}}),i=b(()=>t.data.value),r=b(()=>t.isLoading.value),o=b(()=>s.isPending.value),l=b(()=>n.isPending.value),u=b(()=>r.value||o.value||l.value),d=b(()=>t.error.value),c=b(()=>s.error.value),h=b(()=>n.error.value),m=b(()=>d.value||c.value||h.value),p=b(()=>!!i.value?.data);async function v($){if(!e.selectedQueue)throw new Error("No queue selected");await s.mutateAsync({...e.selectedQueue,data:$})}async function E(){if(!e.selectedQueue)throw new Error("No queue selected");await n.mutateAsync(e.selectedQueue)}async function _(){await t.refetch()}function S(){return e.selectedQueue?t.refetch():Promise.resolve()}function C(){s.reset()}function A(){n.reset()}function g(){s.reset(),n.reset()}return{rateLimitQuery:t,setRateLimitMutation:s,clearRateLimitMutation:n,rateLimit:i,isLoading:u,isLoadingRateLimit:r,isUpdatingRateLimit:o,isClearingRateLimit:l,error:m,rateLimitError:d,setRateLimitError:c,clearRateLimitError:h,hasRateLimit:p,setRateLimit:v,clearRateLimit:E,refreshRateLimit:_,refetchRateLimitData:S,resetSetRateLimitMutation:C,resetClearRateLimitMutation:A,resetAllMutations:g}}const tV={class:"body"},sV={class:"message"},nV={class:"subject"},iV=["disabled"],rV=Ue({__name:"ClearRateLimitConfirmationModal",props:{isVisible:{type:Boolean},queueName:{},queueNs:{},isProcessing:{type:Boolean,default:!1}},emits:["close","confirm"],setup(e,{emit:t}){const s=e,n=t,i=b(()=>{const u=(s.queueName??"").trim(),d=(s.queueNs??"").trim();return u&&d?`"${u}@${d}"`:u?`"${u}"`:d?`"@${d}"`:"this queue"});function r(){n("close")}function o(){n("close")}function l(){s.isProcessing||n("confirm")}return(u,d)=>(N(),at(Ss,{"is-visible":e.isVisible,title:"Clear rate limit",icon:"bi bi-exclamation-triangle-fill",size:"sm",onClose:r},{body:qe(()=>[a("div",tV,[a("p",sV,[d[0]||(d[0]=te(" Are you sure you want to clear the rate limit for ",-1)),a("strong",nV,q(i.value),1),d[1]||(d[1]=te("? ",-1))]),d[2]||(d[2]=a("div",{class:"callout warning",role:"note","aria-label":"Warning"},[a("i",{class:"bi bi-info-circle me-2","aria-hidden":"true"}),a("span",null," This will remove any active throttling and allow messages to be without rate restriction until a new limit is applied. ")],-1))])]),footer:qe(()=>[a("button",{type:"button",class:"btn btn-outline-secondary",onClick:o}," Cancel "),a("button",{type:"button",class:"btn btn-danger",disabled:e.isProcessing,onClick:l},[e.isProcessing?(N(),P(Ae,{key:0},[d[3]||(d[3]=a("span",{class:"spinner-border spinner-border-sm me-2",role:"status","aria-hidden":"true"},null,-1)),d[4]||(d[4]=te(" Clearing... ",-1))],64)):(N(),P(Ae,{key:1},[d[5]||(d[5]=a("i",{class:"bi bi-trash me-2","aria-hidden":"true"},null,-1)),d[6]||(d[6]=te(" Clear rate limit ",-1))],64))],8,iV)]),_:1},8,["is-visible"]))}}),aV=Xe(rV,[["__scopeId","data-v-22e684ae"]]),oV={key:0,class:"rate-limit-card"},lV={class:"card-header"},uV={class:"header-actions"},cV=["disabled"],dV={class:"card-content"},fV={key:0,class:"content-state loading-state"},hV={key:1,class:"content-state error-state"},pV={class:"error-content"},mV={class:"error-text"},gV={class:"error-message"},vV={key:2,class:"rate-limit-content"},bV={key:0,class:"rate-limit-display"},yV={key:0,class:"no-limit-section"},_V={class:"no-limit-actions"},EV=["disabled"],wV={key:1,class:"rate-limit-info"},CV={class:"rate-limit-status"},AV={class:"rate-limit-details"},SV={class:"rate-limit-value"},xV={class:"rate-limit-interval"},$V={class:"rate-limit-actions"},TV=["disabled"],OV=["disabled"],NV={key:1,class:"rate-limit-form"},kV={class:"form-header"},PV={class:"form-title"},DV={class:"form-body"},RV={class:"form-grid"},MV={class:"form-group"},IV={class:"form-group"},qV={class:"input-group"},LV={class:"rate-limit-preview"},FV={class:"preview-content"},VV={class:"preview-text"},QV={class:"form-footer"},jV=["disabled"],BV=["disabled"],UV={key:1,class:"content-state empty-state"},KV=Ue({__name:"QueueRateLimitCard",setup(e){const t=It(),s=eV(),n=b(()=>t.selectedQueue),i=Pc({limit:Fh().int("Rate limit must be a whole number").positive("Rate limit must be greater than 0").max(1e6,"Rate limit must be less than 1,000,000"),interval:Fh().int("Interval must be a whole number").positive("Interval must be greater than 0"),intervalUnit:yo().refine(I=>["1000","60000","3600000"].includes(I),{message:"Please select a valid time unit"})}),r=Dc(i),o={limit:100,interval:1,intervalUnit:"1000"},l=be(!1),u=b(()=>s.isClearingRateLimit.value||s.isUpdatingRateLimit.value),d=be(!1),c=be(o),h=b(()=>s.isLoadingRateLimit.value),m=b(()=>{const I=s.setRateLimitError,w=s.clearRateLimitError,O=I.value?.error||w.value?.error;return O?`Failed to load rate limit settings: ${O.message} (${O.code})`:null}),p=b(()=>s.rateLimit.value?.data||null),v=b(()=>s.hasRateLimit.value);function E(I){if(!I)return"1 second";if(I>=36e5&&I%36e5===0){const w=I/36e5;return`${w} hour${w>1?"s":""}`}else if(I>=6e4&&I%6e4===0){const w=I/6e4;return`${w} minute${w>1?"s":""}`}else{const w=I/1e3;return`${w} second${w>1?"s":""}`}}function _(I){switch(I){case"3600000":return"hour";case"60000":return"minute";default:return"second"}}function S(I){return I?I>=36e5&&I%36e5===0?{interval:I/36e5,intervalUnit:"3600000"}:I>=6e4&&I%6e4===0?{interval:I/6e4,intervalUnit:"60000"}:{interval:I/1e3,intervalUnit:"1000"}:{interval:1,intervalUnit:"1000"}}Ye(p,I=>{if(I){const{interval:w,intervalUnit:O}=S(I.interval);c.value={limit:I.limit,interval:w,intervalUnit:O}}else c.value=o},{immediate:!0});function C(){s.refreshRateLimit()}function A(){if(v.value&&p.value){const{interval:I,intervalUnit:w}=S(p.value.interval);c.value={limit:p.value.limit,interval:I,intervalUnit:w}}else c.value=o;l.value=!0}async function g(I){const{interval:w,limit:O,intervalUnit:x}=I;try{const F=w*parseInt(x);if(F<1e3){alert("Minimum interval is 1 second (1000ms)");return}const H={limit:O,interval:F};await s.setRateLimit(H),l.value=!1}catch(F){console.error("Error saving rate limit:",F)}}async function $(){try{await s.clearRateLimit(),d.value=!1}catch(I){console.error("Error clearing rate limit:",I)}}function L(){d.value=!0}function V(){l.value=!1}return Bt(()=>{C()}),(I,w)=>n.value?(N(),P("div",oV,[a("header",lV,[w[1]||(w[1]=a("div",{class:"header-content"},[a("h3",{class:"card-title"},[a("i",{class:"bi bi-speedometer2 title-icon"}),te(" Rate Limiting ")]),a("p",{class:"card-subtitle"},"Control message processing speed")],-1)),a("div",uV,[a("button",{class:"btn btn-refresh",disabled:h.value,title:"Refresh rate limit settings",onClick:C},[a("i",{class:De(["bi bi-arrow-clockwise",{spinning:h.value}])},null,2)],8,cV)])]),a("main",dV,[n.value?(N(),P(Ae,{key:0},[h.value?(N(),P("div",fV,[...w[2]||(w[2]=[a("div",{class:"state-content"},[a("div",{class:"spinner-border text-primary mb-3"}),a("h5",{class:"state-title"},"Loading rate limit settings..."),a("p",{class:"state-subtitle"}," Please wait while we fetch the configuration ")],-1)])])):m.value?(N(),P("div",hV,[a("div",pV,[w[4]||(w[4]=a("div",{class:"error-icon"},[a("i",{class:"bi bi-exclamation-triangle-fill text-danger"})],-1)),a("div",mV,[w[3]||(w[3]=a("h5",{class:"error-title"},"Failed to load rate limit settings",-1)),a("p",gV,q(m.value),1)])]),a("div",{class:"error-actions"},[a("button",{class:"btn btn-primary",onClick:C},[...w[5]||(w[5]=[a("i",{class:"bi bi-arrow-clockwise me-2"},null,-1),te(" Try Again ",-1)])])])])):(N(),P("div",vV,[l.value?he("",!0):(N(),P("div",bV,[v.value?(N(),P("div",wV,[a("div",CV,[w[9]||(w[9]=a("div",{class:"status-indicator"},[a("div",{class:"status-badge active"},[a("i",{class:"bi bi-check-circle-fill me-1"}),te(" Active ")])],-1)),a("div",AV,[a("h4",SV,[te(q(p.value?.limit||0)+" messages ",1),a("span",xV," per "+q(E(p.value?.interval)),1)]),w[8]||(w[8]=a("p",{class:"rate-limit-description"}," Current rate limiting configuration for this queue ",-1))])]),a("div",$V,[a("button",{class:"btn btn-outline-primary btn-edit",disabled:u.value,onClick:A},[...w[10]||(w[10]=[a("i",{class:"bi bi-pencil me-2"},null,-1),te(" Edit ",-1)])],8,TV),a("button",{class:"btn btn-outline-danger btn-clear",disabled:u.value,onClick:L},[...w[11]||(w[11]=[a("i",{class:"bi bi-trash me-2"},null,-1),te(" Clear ",-1)])],8,OV)])])):(N(),P("div",yV,[w[7]||(w[7]=ai('<div class="no-limit-content" data-v-43b7689a><div class="no-limit-icon" data-v-43b7689a>⚡</div><div class="no-limit-text" data-v-43b7689a><h4 class="no-limit-title" data-v-43b7689a>No Rate Limit Configured</h4><p class="no-limit-description" data-v-43b7689a> Messages are processed without speed restrictions. Set a rate limit to control processing speed and prevent system overload. </p></div></div>',1)),a("div",_V,[a("button",{class:"btn btn-primary btn-set-limit",disabled:u.value,onClick:A},[...w[6]||(w[6]=[a("i",{class:"bi bi-plus-circle me-2"},null,-1),te(" Set Rate Limit ",-1)])],8,EV)])]))])),l.value?(N(),P("div",NV,[a("div",kV,[a("h4",PV,q(v.value?"Edit Rate Limit":"Set Rate Limit"),1),w[12]||(w[12]=a("p",{class:"form-subtitle"}," Configure the maximum number of messages processed per time interval ",-1))]),we(T(yv),{"initial-values":c.value,"validation-schema":T(r),onSubmit:g},{default:qe(()=>[a("div",DV,[a("div",RV,[a("div",MV,[w[13]||(w[13]=a("label",{for:"limit",class:"form-label"},[a("i",{class:"bi bi-hash me-1"}),te(" Message Limit ")],-1)),we(T(Ns),{id:"limit",name:"limit",type:"number",class:"form-control",min:"1",max:"1000000",required:"",disabled:u.value,placeholder:"e.g. 100"},null,8,["disabled"]),we(T(Jn),{name:"limit",class:"field-error"}),w[14]||(w[14]=a("div",{class:"field-help"},"Maximum messages to process",-1))]),a("div",IV,[w[16]||(w[16]=a("label",{for:"interval",class:"form-label"},[a("i",{class:"bi bi-clock me-1"}),te(" Time Interval ")],-1)),a("div",qV,[we(T(Ns),{id:"interval",name:"interval",type:"number",class:"form-control",min:"1",required:"",disabled:u.value,placeholder:"e.g. 1"},null,8,["disabled"]),we(T(Ns),{name:"intervalUnit",as:"select",class:"form-select"},{default:qe(()=>[...w[15]||(w[15]=[a("option",{value:"1000"},"Seconds",-1),a("option",{value:"60000"},"Minutes",-1),a("option",{value:"3600000"},"Hours",-1)])]),_:1})]),we(T(Jn),{name:"interval",class:"field-error"}),w[17]||(w[17]=a("div",{class:"field-help"},"Minimum interval is 1 second",-1))])]),a("div",LV,[a("div",FV,[w[20]||(w[20]=a("i",{class:"bi bi-info-circle preview-icon"},null,-1)),a("div",VV,[w[18]||(w[18]=te(" This will limit the queue to processing ",-1)),we(T(Ns),{name:"limit"},{default:qe(({field:O})=>[a("strong",null,q(O.value||0),1)]),_:1}),w[19]||(w[19]=te(" messages per ",-1)),we(T(Ns),{name:"interval"},{default:qe(({field:O})=>[a("strong",null,q(O.value||1),1)]),_:1}),we(T(Ns),{name:"intervalUnit"},{default:qe(({field:O})=>[a("strong",null,q(_(O.value))+"(s)",1)]),_:1})])])])]),a("div",QV,[a("button",{type:"button",class:"btn btn-outline-secondary btn-cancel",disabled:u.value,onClick:V}," Cancel ",8,jV),a("button",{type:"submit",class:"btn btn-primary btn-save",disabled:u.value},[u.value?(N(),P(Ae,{key:0},[w[21]||(w[21]=a("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),w[22]||(w[22]=te(" Saving... ",-1))],64)):(N(),P(Ae,{key:1},[w[23]||(w[23]=a("i",{class:"bi bi-check-lg me-2"},null,-1)),w[24]||(w[24]=te(" Save Rate Limit ",-1))],64))],8,BV)])]),_:1},8,["initial-values","validation-schema"])])):he("",!0)]))],64)):(N(),P("div",UV,[...w[25]||(w[25]=[a("div",{class:"state-content"},[a("div",{class:"empty-icon"},"🎯"),a("h4",{class:"state-title"},"No Queue Selected"),a("p",{class:"state-subtitle"}," Select a queue to configure its rate limiting settings ")],-1)])]))]),we(aV,{"is-visible":d.value,"queue-name":n.value?.name??null,"queue-ns":n.value?.ns??null,"is-processing":u.value,onClose:w[0]||(w[0]=O=>d.value=!1),onConfirm:$},null,8,["is-visible","queue-name","queue-ns","is-processing"])])):he("",!0)}}),HV=Xe(KV,[["__scopeId","data-v-43b7689a"]]),Ll=5e3;function GV(){const e=It(),t=be(Ll),s=lO(b(()=>e.selectedQueue?.ns||""),b(()=>e.selectedQueue?.name||""),{query:{enabled:b(()=>!!e.selectedQueue?.ns&&!!e.selectedQueue?.name),refetchInterval:b(()=>t.value),refetchIntervalInBackground:!1}}),n=b(()=>s.data.value),i=b(()=>s.isLoading.value),r=b(()=>s.isRefetching.value),o=b(()=>s.error.value),l=b(()=>n.value?.data?Object.entries(n.value.data).map(([X,Z])=>({id:X,consumerId:X,...Z})):[]),u=b(()=>n.value?.data||{}),d=b(()=>Object.keys(u.value)),c=b(()=>l.value.length>0),h=b(()=>[...l.value].sort((X,Z)=>X.id.localeCompare(Z.id))),m=b(()=>[...l.value].sort((X,Z)=>Z.createdAt-X.createdAt)),p=b(()=>[...l.value].sort((X,Z)=>X.hostname.localeCompare(Z.hostname))),v=b(()=>l.value.length),E=b(()=>{const X={};return l.value.forEach(Z=>{X[Z.hostname]||(X[Z.hostname]=[]),X[Z.hostname].push(Z)}),X}),_=b(()=>[...new Set(l.value.map(X=>X.hostname))].sort()),S=b(()=>{const X={total:l.value.length,uniqueHostnames:_.value.length,averageCreatedAt:0,oldestConsumer:null,newestConsumer:null};if(l.value.length>0){const Z=l.value.reduce((se,ue)=>se+ue.createdAt,0);X.averageCreatedAt=Z/l.value.length;const W=[...l.value].sort((se,ue)=>se.createdAt-ue.createdAt);X.oldestConsumer=W[0],X.newestConsumer=W[W.length-1]}return X});async function C(){await s.refetch()}function A(){return e.selectedQueue?s.refetch():Promise.resolve()}function g(){t.value=Ll,console.log(`Real-time updates enabled with ${Ll}ms interval`)}function $(){t.value=!1,console.log("Real-time updates disabled")}function L(X){return l.value.find(Z=>Z.id===X)||null}function V(X){return u.value[X]||null}function I(X){return l.value.filter(Z=>Z.hostname===X)}function w(X){return l.value.filter(Z=>Z.pid===X)}function O(X){return l.value.filter(Z=>Z.createdAt>X)}function x(X){return l.value.filter(Z=>Z.createdAt<X)}function F(X){const Z=X.toLowerCase();return l.value.filter(W=>W.id.toLowerCase().includes(Z)||W.hostname.toLowerCase().includes(Z)||W.pid.toString().includes(Z)||W.ipAddress.some(se=>se.includes(X)))}function H(X){return!!X&&X.trim().length>0}function z(X){return X in u.value}function fe(){return!!e.selectedQueue?.ns&&!!e.selectedQueue?.name}function ie(){return e.selectedQueue?`${e.selectedQueue.ns}/${e.selectedQueue.name}`:""}function G(X){return Date.now()-X.createdAt}return{queuesStore:e,consumersQuery:s,consumers:n,consumersArray:l,consumersObject:u,consumerIds:d,isLoadingConsumers:i,isRefetchingConsumers:r,consumersError:o,hasConsumers:c,sortedConsumers:h,sortedConsumersByCreatedAt:m,sortedConsumersByHostname:p,consumerCount:v,consumersByHostname:E,uniqueHostnames:_,consumerStats:S,refreshConsumers:C,refetchConsumersData:A,enableRealTimeUpdates:g,disableRealTimeUpdates:$,findConsumerById:L,getConsumerData:V,getConsumersByHostname:I,getConsumersByPid:w,getConsumersCreatedAfter:O,getConsumersCreatedBefore:x,searchConsumers:F,isValidConsumerId:H,hasConsumerWithId:z,isValidQueue:fe,getQueueDisplayName:ie,getConsumerUptime:G}}const WV={key:0,class:"queue-consumers-card"},zV={class:"card-header"},YV={class:"header-actions"},ZV=["title"],JV=["disabled"],XV={class:"card-content"},eQ={key:0,class:"content-state loading-state"},tQ={key:1,class:"content-state error-state",role:"alert"},sQ={class:"error-content"},nQ={class:"error-text"},iQ={class:"error-message"},rQ={key:2,class:"content-state empty-state"},aQ={class:"state-content"},oQ={class:"empty-info"},lQ={class:"info-item"},uQ={key:3,class:"consumers-content"},cQ={class:"consumers-stats",role:"group","aria-label":"Consumers statistics"},dQ={class:"stat-item"},fQ={class:"stat-content"},hQ={class:"stat-number"},pQ={class:"stat-item"},mQ={class:"stat-content"},gQ={class:"stat-number"},vQ={key:0,class:"stat-item"},bQ={class:"stat-content"},yQ={class:"stat-number"},_Q={class:"consumers-filters"},EQ={class:"filter-group"},wQ={class:"filter-group"},CQ=["value"],AQ={class:"consumers-header"},SQ={class:"consumers-count"},xQ={key:0,class:"filtered-count"},$Q={class:"indicator-text"},TQ={class:"consumers-list"},OQ={class:"consumer-header"},NQ={class:"consumer-id"},kQ=["title"],PQ={class:"consumer-status"},DQ=["title"],RQ={class:"consumer-details"},MQ={class:"detail-row"},IQ={class:"detail-item"},qQ=["title"],LQ={class:"detail-item"},FQ=["title"],VQ={class:"detail-row"},QQ={class:"detail-item"},jQ={class:"detail-value uptime"},BQ={class:"detail-item"},UQ={class:"detail-value created-at"},KQ={class:"detail-row"},HQ={class:"detail-item ip-addresses"},GQ={class:"ip-list"},WQ=Ue({__name:"QueueConsumersCard",setup(e){const t=It(),s=GV(),n=be(!0),i=be(""),r=be(""),o=b(()=>s.consumersArray.value),l=b(()=>s.isLoadingConsumers.value),u=b(()=>s.isRefetchingConsumers.value),d=b(()=>s.consumersError.value),c=b(()=>s.hasConsumers.value),h=b(()=>s.consumerStats.value),m=b(()=>s.uniqueHostnames.value),p=b(()=>{let A=o.value;return i.value&&(A=A.filter(g=>g.hostname===i.value)),r.value.trim()&&(A=s.searchConsumers(r.value)),A});function v(){s.refreshConsumers()}function E(){n.value=!n.value,n.value?s.enableRealTimeUpdates():s.disableRealTimeUpdates()}function _(){i.value="",r.value=""}function S(A){const $=s.getConsumerUptime(A)/(1e3*60);return $<1?"status-new":$<60?"status-active":"status-stable"}function C(A){const $=s.getConsumerUptime(A)/(1e3*60);return $<1?"New":$<60?"Active":"Stable"}return Bt(()=>{n.value&&s.enableRealTimeUpdates()}),uc(()=>{s.disableRealTimeUpdates()}),(A,g)=>T(t).selectedQueue?(N(),P("div",WV,[a("header",zV,[g[2]||(g[2]=a("div",{class:"header-content"},[a("h3",{class:"card-title"},[a("i",{class:"bi bi-people-fill title-icon"}),te(" Queue Consumers ")]),a("p",{class:"card-subtitle"}," Active consumers processing messages from this queue ")],-1)),a("div",YV,[a("button",{class:De(["btn btn-toggle",{active:n.value}]),title:n.value?"Disable real-time updates":"Enable real-time updates",onClick:E},[a("i",{class:De(["bi",n.value?"bi-pause-fill":"bi-play-fill"])},null,2)],10,ZV),a("button",{class:"btn btn-refresh",disabled:l.value,title:"Refresh consumers",onClick:v},[a("i",{class:De(["bi bi-arrow-clockwise",{spinning:u.value}])},null,2)],8,JV)])]),a("main",XV,[l.value?(N(),P("div",eQ,[...g[3]||(g[3]=[a("div",{class:"state-content"},[a("div",{class:"spinner-border text-primary mb-3",role:"status","aria-live":"polite","aria-label":"Loading consumers"}),a("h5",{class:"state-title"},"Loading consumers..."),a("p",{class:"state-subtitle"}," Please wait while we fetch the active consumers ")],-1)])])):d.value?(N(),P("div",tQ,[a("div",sQ,[g[5]||(g[5]=a("div",{class:"error-icon"},[a("i",{class:"bi bi-exclamation-triangle-fill text-danger","aria-hidden":"true"})],-1)),a("div",nQ,[g[4]||(g[4]=a("h5",{class:"error-title"},"Failed to load consumers",-1)),a("p",iQ,q(T(dt)(d.value)?.message),1)])]),a("div",{class:"error-actions"},[a("button",{class:"btn btn-primary",onClick:v},[...g[6]||(g[6]=[a("i",{class:"bi bi-arrow-clockwise me-2"},null,-1),te(" Try Again ",-1)])])])])):c.value?(N(),P("div",uQ,[a("div",cQ,[a("div",dQ,[g[13]||(g[13]=a("div",{class:"stat-icon total-icon","aria-hidden":"true"},[a("i",{class:"bi bi-people-fill"})],-1)),a("div",fQ,[a("div",hQ,q(h.value.total),1),g[12]||(g[12]=a("div",{class:"stat-label"},"Total Consumers",-1))])]),a("div",pQ,[g[15]||(g[15]=a("div",{class:"stat-icon hostnames-icon","aria-hidden":"true"},[a("i",{class:"bi bi-hdd-network-fill"})],-1)),a("div",mQ,[a("div",gQ,q(h.value.uniqueHostnames),1),g[14]||(g[14]=a("div",{class:"stat-label"},"Unique Hosts",-1))])]),h.value.newestConsumer?(N(),P("div",vQ,[g[17]||(g[17]=a("div",{class:"stat-icon newest-icon","aria-hidden":"true"},[a("i",{class:"bi bi-clock-fill"})],-1)),a("div",bQ,[a("div",yQ,q(T(Wh)(h.value.newestConsumer?.createdAt)),1),g[16]||(g[16]=a("div",{class:"stat-label"},"Newest Consumer",-1))])])):he("",!0)]),a("div",_Q,[a("div",EQ,[g[18]||(g[18]=a("label",{class:"filter-label",for:"consumers-search"},"Search:",-1)),ss(a("input",{id:"consumers-search","onUpdate:modelValue":g[0]||(g[0]=$=>r.value=$),type:"text",class:"form-control filter-input",placeholder:"Search by ID, hostname, PID, or IP..."},null,512),[[rn,r.value]])]),a("div",wQ,[g[20]||(g[20]=a("label",{class:"filter-label",for:"hostname-select"},"Hostname:",-1)),ss(a("select",{id:"hostname-select","onUpdate:modelValue":g[1]||(g[1]=$=>i.value=$),class:"form-select filter-select"},[g[19]||(g[19]=a("option",{value:""},"All Hostnames",-1)),(N(!0),P(Ae,null,bt(m.value,$=>(N(),P("option",{key:$,value:$},q($),9,CQ))),128))],512),[[Um,i.value]])]),i.value||r.value?(N(),P("button",{key:0,class:"btn btn-outline-secondary btn-clear-filters",onClick:_},[...g[21]||(g[21]=[a("i",{class:"bi bi-x-circle me-1","aria-hidden":"true"},null,-1),te(" Clear ",-1)])])):he("",!0)]),a("div",AQ,[a("h5",SQ,[te(q(p.value.length)+" Consumer"+q(p.value.length!==1?"s":"")+" ",1),p.value.length!==o.value.length?(N(),P("span",xQ," (filtered from "+q(o.value.length)+") ",1)):he("",!0)]),a("div",{class:De(["real-time-indicator",{active:n.value}]),role:"status","aria-live":"polite"},[g[22]||(g[22]=a("i",{class:"bi bi-circle-fill indicator-dot","aria-hidden":"true"},null,-1)),a("span",$Q,q(n.value?"Live":"Paused"),1)],2)]),a("div",TQ,[(N(!0),P(Ae,null,bt(p.value,$=>(N(),P("div",{key:$.id,class:"consumer-item"},[a("div",OQ,[a("div",NQ,[g[23]||(g[23]=a("i",{class:"bi bi-person-fill consumer-icon","aria-hidden":"true"},null,-1)),a("span",{class:"id-text",title:$.id},q($.id),9,kQ)]),a("div",PQ,[a("span",{class:De(["status-badge",S($)]),title:`Consumer status: ${C($)}`},q(C($)),11,DQ)])]),a("div",RQ,[a("div",MQ,[a("div",IQ,[g[24]||(g[24]=a("i",{class:"bi bi-hdd-network detail-icon","aria-hidden":"true"},null,-1)),g[25]||(g[25]=a("span",{class:"detail-label"},"Hostname:",-1)),a("span",{class:"detail-value hostname",title:$.hostname},q($.hostname),9,qQ)]),a("div",LQ,[g[26]||(g[26]=a("i",{class:"bi bi-gear detail-icon","aria-hidden":"true"},null,-1)),g[27]||(g[27]=a("span",{class:"detail-label"},"PID:",-1)),a("span",{class:"detail-value pid",title:String($.pid)},q($.pid),9,FQ)])]),a("div",VQ,[a("div",QQ,[g[28]||(g[28]=a("i",{class:"bi bi-clock detail-icon","aria-hidden":"true"},null,-1)),g[29]||(g[29]=a("span",{class:"detail-label"},"Uptime:",-1)),a("span",jQ,q(T(Wh)($.createdAt)),1)]),a("div",BQ,[g[30]||(g[30]=a("i",{class:"bi bi-calendar detail-icon","aria-hidden":"true"},null,-1)),g[31]||(g[31]=a("span",{class:"detail-label"},"Started:",-1)),a("span",UQ,q(T(Mc)($.createdAt)),1)])]),a("div",KQ,[a("div",HQ,[g[32]||(g[32]=a("i",{class:"bi bi-router detail-icon","aria-hidden":"true"},null,-1)),g[33]||(g[33]=a("span",{class:"detail-label"},"IP Addresses:",-1)),a("div",GQ,[(N(!0),P(Ae,null,bt($.ipAddress,L=>(N(),P("span",{key:L,class:"ip-badge"},q(L),1))),128))])])])])]))),128))])])):(N(),P("div",rQ,[a("div",aQ,[g[9]||(g[9]=a("div",{class:"empty-icon","aria-hidden":"true"},"👥",-1)),g[10]||(g[10]=a("h4",{class:"state-title"},"No Active Consumers",-1)),g[11]||(g[11]=a("p",{class:"state-subtitle"}," No consumers are currently connected to this queue. Start a consumer application to begin processing messages. ",-1)),a("div",oQ,[g[8]||(g[8]=a("div",{class:"info-item"},[a("i",{class:"bi bi-info-circle me-2","aria-hidden":"true"}),a("span",null,"Consumers will appear here when they connect to the queue")],-1)),a("div",lQ,[g[7]||(g[7]=a("i",{class:"bi bi-info-circle me-2","aria-hidden":"true"},null,-1)),a("span",null,"Real-time updates are "+q(n.value?"enabled":"disabled"),1)])])])]))])])):he("",!0)}}),zQ=Xe(WQ,[["__scopeId","data-v-a0e686b6"]]),YQ={class:"queue-properties-view"},ZQ={key:0,class:"details-grid"},JQ={class:"details-column-main"},XQ={class:"details-column-secondary"},e4="Queue Details & Management",t4=Ue({__name:"QueuePropertiesView",setup(e){const t=ps(),s=os(),n=Xt(),i=It(),r=Dn(),o=b(()=>t.params.ns),l=b(()=>t.params.queue),u=b(()=>i.selectedQueue),d=b(()=>r.isLoadingQueueProperties),c=b(()=>r.queuePropertiesError),{deleteQueue:h,isDeletingQueue:m,deleteQueueError:p,deleteQueueMutation:v}=Rv(async()=>{await s.push({name:"Queues"})}),E=be(!1);function _(){v.reset(),E.value=!0}function S(){E.value=!1}async function C(){u.value&&await h({ns:u.value.ns,name:u.value.name})}const A=b(()=>{const I=p.value||c.value;return dt(I)}),g=b(()=>c.value?.error?.message==="QueueNotFoundError"),$=b(()=>`${l.value} @ ${o.value}`),L=b(()=>[{id:"delete-queue",label:"Delete",icon:"bi bi-trash",variant:"danger",disabled:d.value||m.value,loading:m.value,handler:_}]);function V(){i.clearSelectedQueue(),s.push({name:"Queues"})}return At(()=>{n.setPageHeader({title:$.value,subtitle:e4,icon:"bi bi-card-list"}),n.setLoadingState(d.value),g.value?(n.setEmptyState(!0,{icon:"bi bi-question-circle",title:"Queue Not Found",message:`The queue "${l.value}" in namespace "${o.value}" could not be found. It may have been deleted.`,actionLabel:"Back to Queues",actionHandler:V}),n.setPageActions([])):A.value&&!E.value?(n.setErrorState(A.value),n.setPageActions([])):(n.setEmptyState(!1),n.setErrorState(null),n.setPageActions(L.value))}),Ye([o,l],([I,w])=>{I&&w?i.selectQueue(I,w):i.clearSelectedQueue()},{immediate:!0}),KL([{isVisible:E,onEscape:S}]),(I,w)=>(N(),P("div",YQ,[we(ms,null,{default:qe(()=>[u.value?(N(),P("div",ZQ,[a("div",JQ,[we(VF),we(B2)]),a("div",XQ,[we(HV),we(zQ)])])):he("",!0)]),_:1}),we(Mv,{queue:{ns:o.value,name:l.value},"is-deleting":T(m),"is-visible":E.value,onCancel:S,onConfirm:C},null,8,["queue","is-deleting","is-visible"])]))}}),s4=Xe(t4,[["__scopeId","data-v-8e3989c7"]]),n4=(e,t,s,n)=>(e=T(e),t=T(t),s=T(s),Je({url:`/api/v1/namespaces/${e}/queues/${t}/scheduled-messages`,method:"GET",params:T(s),signal:n}));function i4(e,t=20){return la(e,{queryFn:async({ns:n,name:i,page:r,pageSize:o})=>n4(n,i,{page:r,pageSize:o}),queryKeyPrefix:"scheduled-messages",enableDelete:!0,enableRequeue:!1},t)}const r4=Ue({__name:"ScheduledMessagesView",setup(e){const t=ps(),s=Xt(),n=It(),i=Dn(),r=b(()=>({ns:t.params.ns,name:t.params.queue}));Ye(r,$=>{$.ns&&$.name&&n.selectQueue($.ns,$.name)},{immediate:!0,deep:!0});const o=b(()=>n.selectedQueue),{messages:l,pagination:u,isLoading:d,isDeleting:c,error:h,goToPage:m,setPageSize:p,refresh:v,deleteMessage:E}=i4(r,20),_=b(()=>o.value?`Scheduled Messages - ${`${o.value.name}@${o.value.ns}`}`:"Scheduled Messages"),S=b(()=>{if(o.value)return i.isPubSubQueue?"Pub/Sub Queue":"Point-2-Point Queue"});At(()=>{s.setPageHeader({title:_.value,subtitle:S.value,icon:"bi bi-clock"})}),At(()=>{if(!o.value){s.setEmptyState(!0,{icon:"bi bi-inbox",title:"No Queue Selected",message:"Please select a queue from the sidebar to view its scheduled messages."}),s.setPageActions([]),s.setLoadingState(!1),s.setErrorState(null);return}s.setLoadingState(!1),s.setErrorState(null),s.setEmptyState(!1),s.setPageActions([])});async function C($){E&&await E($)}function A($){m($)}async function g($){await p($)}return($,L)=>(N(),at(ms,{"show-section-header":!1},{default:qe(()=>[o.value?(N(),at(oa,{key:0,messages:T(l),"is-loading":T(d),error:T(h),pagination:T(u),"show-pagination":!0,"empty-message":"No scheduled messages found for this queue. Messages appear here when they are scheduled for future delivery.",icon:"bi-clock","is-deleting":T(c),"is-requeuing":!1,onRefresh:T(v),onDeleteMessage:C,onPageChange:A,onPageSizeChange:g,onFirstPage:L[0]||(L[0]=V=>A(1)),onPreviousPage:L[1]||(L[1]=V=>A(T(u).currentPage-1)),onNextPage:L[2]||(L[2]=V=>A(T(u).currentPage+1)),onLastPage:L[3]||(L[3]=V=>A(T(u).totalPages))},null,8,["messages","is-loading","error","pagination","is-deleting","onRefresh"])):he("",!0)]),_:1}))}}),a4=(e,t,s,n)=>(e=T(e),t=T(t),s=T(s),Je({url:`/api/v1/namespaces/${e}/queues/${t}/messages`,method:"GET",params:T(s),signal:n}));function o4(e,t=20){return la(e,{queryFn:async({ns:n,name:i,page:r,pageSize:o})=>a4(n,i,{page:r,pageSize:o}),queryKeyPrefix:"queue-messages",enableDelete:!0,enableRequeue:!0},t)}const l4=Ue({__name:"QueueMessagesView",setup(e){const t=ps(),s=Xt(),n=It(),i=b(()=>({ns:t.params.ns,name:t.params.queue}));Ye(i,$=>{$.ns&&$.name&&n.selectQueue($.ns,$.name)},{immediate:!0,deep:!0});const{messages:r,pagination:o,isLoading:l,isDeleting:u,isRequeuing:d,error:c,goToPage:h,setPageSize:m,refresh:p,deleteMessage:v,requeueMessage:E}=o4(i,20),_=b(()=>i.value.ns?`Queue Messages - ${i.value.name}@${i.value.ns}`:"Queue Messages");At(()=>{s.setPageHeader({title:_.value,subtitle:"View and manage messages for this queue.",icon:"bi bi-clock"}),s.setLoadingState(!1),s.setErrorState(null),s.setEmptyState(!1),s.setPageActions([])});async function S($){v&&await v($)}async function C($){E&&await E($)}function A($){h($)}async function g($){await m($)}return($,L)=>(N(),at(ms,{"show-section-header":!1},{default:qe(()=>[we(oa,{messages:T(r),"is-loading":T(l),error:T(c),pagination:T(o),"show-pagination":!0,"empty-message":"No messages found for this queue",icon:"bi-clock","is-deleting":T(u),"is-requeuing":T(d),onRefresh:T(p),onDeleteMessage:S,onRequeueMessage:C,onPageChange:A,onPageSizeChange:g,onFirstPage:L[0]||(L[0]=V=>A(1)),onPreviousPage:L[1]||(L[1]=V=>A(T(o).currentPage-1)),onNextPage:L[2]||(L[2]=V=>A(T(o).currentPage+1)),onLastPage:L[3]||(L[3]=V=>A(T(o).totalPages))},null,8,["messages","is-loading","error","pagination","is-deleting","is-requeuing","onRefresh"])]),_:1}))}}),u4={class:"bind-queue-content"},c4={class:"modal-description","aria-live":"polite"},d4={key:0,class:"error-alert",role:"alert"},f4={class:"error-text"},h4={class:"form-group"},p4=["disabled","aria-invalid"],m4={key:0,id:"queueName-error",class:"field-error",role:"alert"},g4={key:0,class:"form-group"},v4=["disabled","aria-invalid"],b4={key:0,id:"routingKey-error",class:"field-error",role:"alert"},y4={key:1,class:"form-group"},_4=["disabled","aria-invalid"],E4={key:0,id:"bindingPattern-error",class:"field-error",role:"alert"},w4=["disabled"],C4=["disabled"],A4={key:0,class:"loading-spinner","aria-hidden":"true"},S4={key:1,class:"bi bi-link-45deg","aria-hidden":"true"},x4=Ue({__name:"BindQueueModal",props:{isVisible:{type:Boolean},isLoading:{type:Boolean,default:!1},error:{default:null},exchangeType:{},exchangeName:{},namespace:{}},emits:["confirm","cancel"],setup(e,{emit:t}){const s=e,n=t,i=be(""),r=be(""),o=be(""),l=be(""),u=be(""),d=be(""),c=be(null),h=b(()=>`Bind Queue to ${s.exchangeType.charAt(0).toUpperCase()+s.exchangeType.slice(1)} Exchange`),m=b(()=>`${s.exchangeName} • ${s.namespace}`),p=b(()=>{switch(s.exchangeType){case"direct":return"Bind a queue to this direct exchange with a specific routing key. Messages will be routed to the queue only when the routing key matches exactly.";case"fanout":return"Bind a queue to this fanout exchange. All messages published to this exchange will be delivered to the bound queue.";case"topic":return"Bind a queue to this topic exchange with a binding pattern. Messages will be routed based on pattern matching with routing keys.";default:return"Bind a queue to this exchange."}}),v=b(()=>s.exchangeType==="direct"),E=b(()=>s.exchangeType==="topic"),_=b(()=>{const I=i.value.trim().length>0,w=!v.value||r.value.trim().length>0,O=!E.value||o.value.trim().length>0;return I&&w&&O&&!l.value&&!u.value&&!d.value}),S=()=>{const I=i.value.trim();return I?I.length<1||I.length>255?(l.value="Queue name must be between 1 and 255 characters",!1):/^[a-zA-Z0-9._-]+$/.test(I)?(l.value="",!0):(l.value="Queue name can only contain letters, numbers, dots, underscores, and hyphens",!1):(l.value="Queue name is required",!1)},C=()=>{if(!v.value)return u.value="",!0;const I=r.value.trim();return I?I.length>255?(u.value="Routing key must not exceed 255 characters",!1):(u.value="",!0):(u.value="Routing key is required for direct exchanges",!1)},A=()=>{if(!E.value)return d.value="",!0;const I=o.value.trim();return I?I.length>255?(d.value="Binding pattern must not exceed 255 characters",!1):(d.value="",!0):(d.value="Binding pattern is required for topic exchanges",!1)},g=()=>{const I=S(),w=C(),O=A();return I&&w&&O},$=()=>{if(!g()||s.isLoading)return;const I={queueName:i.value.trim()};v.value&&(I.routingKey=r.value.trim()),E.value&&(I.bindingPattern=o.value.trim()),n("confirm",I)},L=()=>{s.isLoading||n("cancel")},V=()=>{i.value="",r.value="",o.value="",l.value="",u.value="",d.value=""};return Ye(()=>s.isVisible,async I=>{I&&(V(),await kt(),c.value?.focus())}),Ye(()=>s.error,I=>{I||(l.value="",u.value="",d.value="")}),(I,w)=>(N(),at(Ss,{"is-visible":e.isVisible,title:h.value,subtitle:m.value,icon:"bi bi-link-45deg",size:"md",onClose:L},{body:qe(()=>[a("div",u4,[a("p",c4,q(p.value),1),e.error?(N(),P("div",d4,[w[6]||(w[6]=a("i",{class:"bi bi-exclamation-triangle-fill","aria-hidden":"true"},null,-1)),a("span",f4,q(e.error),1)])):he("",!0),a("form",{class:"bind-form",onSubmit:Ft($,["prevent"])},[a("div",h4,[w[7]||(w[7]=a("label",{for:"queueName",class:"form-label"},[te(" Queue Name "),a("span",{class:"required"},"*")],-1)),ss(a("input",{id:"queueName",ref_key:"queueNameInput",ref:c,"onUpdate:modelValue":w[0]||(w[0]=O=>i.value=O),type:"text",class:De(["form-input",{error:!!l.value}]),placeholder:"Enter queue name",disabled:e.isLoading,"aria-invalid":!!l.value,"aria-describedby":"queueName-hint queueName-error",inputmode:"text",autocomplete:"off",autocapitalize:"off",autocorrect:"off",spellcheck:"false",maxlength:"255",pattern:"[A-Za-z0-9._-]+",onBlur:S,onInput:w[1]||(w[1]=O=>l.value="")},null,42,p4),[[rn,i.value]]),l.value?(N(),P("div",m4,q(l.value),1)):he("",!0),w[8]||(w[8]=a("div",{id:"queueName-hint",class:"field-hint"}," Queue name can contain letters, numbers, dots, underscores, and hyphens ",-1))]),v.value?(N(),P("div",g4,[w[9]||(w[9]=a("label",{for:"routingKey",class:"form-label"},[te(" Routing Key "),a("span",{class:"required"},"*")],-1)),ss(a("input",{id:"routingKey","onUpdate:modelValue":w[2]||(w[2]=O=>r.value=O),type:"text",class:De(["form-input",{error:!!u.value}]),placeholder:"Enter routing key",disabled:e.isLoading,"aria-invalid":!!u.value,"aria-describedby":"routingKey-hint routingKey-error",inputmode:"text",autocomplete:"off",autocapitalize:"off",autocorrect:"off",spellcheck:"false",maxlength:"255",onBlur:C,onInput:w[3]||(w[3]=O=>u.value="")},null,42,v4),[[rn,r.value]]),u.value?(N(),P("div",b4,q(u.value),1)):he("",!0),w[10]||(w[10]=a("div",{id:"routingKey-hint",class:"field-hint"}," Messages will be routed to this queue only when the routing key matches exactly ",-1))])):he("",!0),E.value?(N(),P("div",y4,[w[11]||(w[11]=a("label",{for:"bindingPattern",class:"form-label"},[te(" Binding Pattern "),a("span",{class:"required"},"*")],-1)),ss(a("input",{id:"bindingPattern","onUpdate:modelValue":w[4]||(w[4]=O=>o.value=O),type:"text",class:De(["form-input",{error:!!d.value}]),placeholder:"Enter binding pattern (e.g., user.*.created)",disabled:e.isLoading,"aria-invalid":!!d.value,"aria-describedby":"bindingPattern-hint bindingPattern-error",inputmode:"text",autocomplete:"off",autocapitalize:"off",autocorrect:"off",spellcheck:"false",maxlength:"255",onBlur:A,onInput:w[5]||(w[5]=O=>d.value="")},null,42,_4),[[rn,o.value]]),d.value?(N(),P("div",E4,q(d.value),1)):he("",!0),w[12]||(w[12]=a("div",{id:"bindingPattern-hint",class:"field-hint"}," Use * to match one word, # to match zero or more words (e.g., user.*.created, logs.#) ",-1))])):he("",!0)],32)])]),footer:qe(()=>[a("button",{type:"button",class:"btn btn-secondary",disabled:e.isLoading,onClick:L}," Cancel ",8,w4),a("button",{type:"submit",class:"btn btn-primary",disabled:!_.value||e.isLoading,onClick:$},[e.isLoading?(N(),P("span",A4)):(N(),P("i",S4)),te(" "+q(e.isLoading?"Binding...":"Bind Queue"),1)],8,C4)]),_:1},8,["is-visible","title","subtitle"]))}}),Ic=Xe(x4,[["__scopeId","data-v-15924699"]]),$4={class:"unbind-queue-content"},T4={key:0,class:"error-alert",role:"alert"},O4={class:"confirmation-section"},N4={class:"confirmation-content"},k4={class:"confirmation-message"},P4={class:"warning-message"},D4={class:"binding-details"},R4={class:"detail-item"},M4={class:"detail-value queue-name"},I4={class:"detail-item"},q4={class:"detail-value exchange-type"},L4={key:0,class:"detail-item"},F4={class:"detail-label"},V4={class:"detail-value binding-key"},Q4=["disabled"],j4=["disabled"],B4={key:0,class:"loading-spinner","aria-hidden":"true"},U4={key:1,class:"bi bi-unlink","aria-hidden":"true"},K4=Ue({__name:"UnbindQueueModal",props:{isVisible:{type:Boolean},isLoading:{type:Boolean,default:!1},error:{default:null},queueName:{},routingKey:{default:""},bindingPattern:{default:""},exchangeType:{}},emits:["confirm","cancel"],setup(e,{emit:t}){const s=e,n=t,i=b(()=>`Unbind Queue from ${s.exchangeType.charAt(0).toUpperCase()+s.exchangeType.slice(1)} Exchange`),r=b(()=>`${s.queueName}`),o=b(()=>{switch(s.exchangeType){case"direct":return s.routingKey;case"topic":return s.bindingPattern;case"fanout":return null;default:return null}}),l=b(()=>{switch(s.exchangeType){case"direct":return"Routing Key";case"topic":return"Binding Pattern";default:return null}}),u=b(()=>{const m=`Are you sure you want to unbind the queue "${s.queueName}"`;return o.value?`${m} with ${l.value?.toLowerCase()} "${o.value}"?`:`${m}?`}),d=b(()=>{switch(s.exchangeType){case"direct":return"Messages with this routing key will no longer be delivered to this queue.";case"fanout":return"This queue will no longer receive messages published to this exchange.";case"topic":return"Messages matching this binding pattern will no longer be delivered to this queue.";default:return"This queue will no longer receive messages from this exchange."}}),c=()=>{s.isLoading||n("confirm")},h=()=>{s.isLoading||n("cancel")};return(m,p)=>(N(),at(Ss,{"is-visible":e.isVisible,title:i.value,subtitle:r.value,icon:"bi bi-unlink",size:"sm",onClose:h},{body:qe(()=>[a("div",$4,[e.error?(N(),P("div",T4,[p[0]||(p[0]=a("i",{class:"bi bi-exclamation-triangle-fill","aria-hidden":"true"},null,-1)),a("span",null,q(e.error),1)])):he("",!0),a("div",O4,[p[1]||(p[1]=a("div",{class:"confirmation-icon"},[a("i",{class:"bi bi-question-circle-fill","aria-hidden":"true"})],-1)),a("div",N4,[a("p",k4,q(u.value),1),a("p",P4,q(d.value),1)])]),a("div",D4,[a("div",R4,[p[2]||(p[2]=a("span",{class:"detail-label"},"Queue:",-1)),a("span",M4,q(e.queueName),1)]),a("div",I4,[p[3]||(p[3]=a("span",{class:"detail-label"},"Exchange Type:",-1)),a("span",q4,q(e.exchangeType),1)]),o.value&&l.value?(N(),P("div",L4,[a("span",F4,q(l.value)+":",1),a("span",V4,q(o.value),1)])):he("",!0)])])]),footer:qe(()=>[a("button",{type:"button",class:"btn btn-secondary",disabled:e.isLoading,onClick:h}," Cancel ",8,Q4),a("button",{type:"button",class:"btn btn-danger",disabled:e.isLoading,onClick:c},[e.isLoading?(N(),P("span",B4)):(N(),P("i",U4)),te(" "+q(e.isLoading?"Unbinding...":"Unbind Queue"),1)],8,j4)]),_:1},8,["is-visible","title","subtitle"]))}}),qc=Xe(K4,[["__scopeId","data-v-1556a4bd"]]),H4={class:"exchange-content"},G4={key:0,class:"stats-overview"},W4={class:"stats-grid",role:"group","aria-label":"Exchange stats"},z4={class:"stat-card"},Y4={class:"stat-content"},Z4={class:"stat-value"},J4={class:"stat-label"},X4={class:"stat-card"},e3={class:"stat-content"},t3={class:"stat-value"},s3={class:"stat-label"},n3={key:1,class:"bindings-section","aria-labelledby":"bindings-title"},i3={class:"bindings-list"},r3={class:"binding-header"},a3={class:"routing-key-info"},o3={class:"routing-key-badge",title:"Routing key"},l3={class:"routing-key-text"},u3={class:"queue-count"},c3={key:0,class:"queues-list"},d3={class:"queue-info"},f3={class:"queue-name"},h3=["disabled","aria-label","onClick"],p3={key:1,class:"no-queues"},m3=20,g3=Ue({__name:"ExchangeDirectView",setup(e){const t=ps(),s=os(),n=Xt(),i=fn(),r=b(()=>String(t.params.exchange)),o=b(()=>String(t.params.ns)),l=b(()=>!!r.value&&!!o.value),u=be(!1),d=be(!1),c=be(!1),h=be(null),{data:m,isLoading:p,error:v,refetch:E}=Wg(o,r,{query:{enabled:l}}),_=b(()=>m.value?.data||[]),S=Array.from({length:m3},(W,se)=>{const ue=b(()=>_.value[se]||""),Re=b(()=>l.value&&se<_.value.length&&!!_.value[se]);return zg(o,r,b(()=>({routingKey:ue.value})),{query:{enabled:Re}})}),C=xc({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:Cu(o.value,r.value)}),_.value.forEach(W=>{i.invalidateQueries({queryKey:Au(o.value,r.value,{routingKey:W})})}),d.value=!1},onError:W=>{console.error("Failed to bind queue:",W)}}}),A=px({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:Cu(o.value,r.value)}),_.value.forEach(W=>{i.invalidateQueries({queryKey:Au(o.value,r.value,{routingKey:W})})}),c.value=!1,h.value=null},onError:W=>{console.error("Failed to unbind queue:",W)}}}),g=b(()=>p.value||S.some((W,se)=>se<_.value.length&&W.isLoading.value)),$=b(()=>!!v.value||S.some((W,se)=>se<_.value.length&&!!W.error.value)),L=b(()=>{if(v.value)return dt(v.value);const W=S.find((se,ue)=>ue<_.value.length&&se.error.value)?.error.value;return W?dt(W):null}),V=b(()=>{const W=[];return _.value.forEach((se,ue)=>{if(ue>=S.length)return;const Ie=S[ue].data?.value?.data||[];W.push({routingKey:se,queues:Ie.map(tt=>({name:tt.name})),totalQueues:Ie.length})}),W}),I=b(()=>V.value.reduce((W,se)=>W+se.totalQueues,0)),w=b(()=>_.value.length),O=b(()=>C.isPending.value),x=b(()=>A.isPending.value),F=()=>{d.value=!0},H=(W,se)=>{h.value={name:W,routingKey:se},c.value=!0},z=()=>{u.value=!0},fe=()=>{E(),S.forEach((W,se)=>{se<_.value.length&&W.refetch()})},ie=async W=>{await C.mutateAsync({ns:o.value,direct:r.value,queue:W.queueName,params:{routingKey:String(W.routingKey)}})},G=async()=>{h.value&&await A.mutateAsync({ns:o.value,direct:r.value,queue:h.value.name,params:{routingKey:h.value.routingKey}})},X=()=>{s.push("/exchanges")},Z=b(()=>[{id:"bind-queue",label:"Bind Queue",icon:"bi bi-link-45deg",variant:"primary",disabled:O.value,loading:O.value,handler:F,tooltip:"Bind a queue to this exchange with a routing key"},{id:"refresh",label:"Refresh",icon:"bi bi-arrow-clockwise",variant:"refresh",disabled:g.value,loading:g.value,handler:fe,tooltip:"Refresh exchange data"},{id:"delete-exchange",label:"Delete Exchange",icon:"bi bi-trash",variant:"danger",disabled:!1,loading:!1,handler:z,tooltip:"Delete this exchange. If any queues are bound, you will be prompted to unbind them first."}]);return At(()=>{if(!l.value){n.setPageHeader({title:"Invalid Exchange",subtitle:"Exchange name and namespace are required",icon:"bi bi-exclamation-triangle"}),n.setPageActions([]),n.setErrorState({message:"Invalid route parameters"});return}n.setPageHeader({title:`Direct Exchange: ${r.value}`,subtitle:`Namespace: ${o.value} • Routes messages based on exact routing key matches`,icon:"bi bi-arrow-right"}),n.setPageActions(Z.value),n.setLoadingState(g.value),$.value?(n.setErrorState(L.value),n.setEmptyState(!1)):!g.value&&w.value===0?(n.setErrorState(null),n.setEmptyState(!0,{icon:"bi bi-arrow-right",title:"No Queue Bindings",message:"This direct exchange has no queue bindings. Bind a queue with a routing key to start routing messages.",actionLabel:"Bind Queue",actionHandler:F})):(n.setErrorState(null),n.setEmptyState(!1))}),Bt(()=>{l.value||s.push("/exchanges")}),(W,se)=>(N(),P("div",H4,[we(ms,null,{default:qe(()=>[!g.value&&!$.value&&w.value>0?(N(),P("div",G4,[a("div",W4,[a("div",z4,[se[3]||(se[3]=a("div",{class:"stat-icon routing-keys","aria-hidden":"true"},[a("i",{class:"bi bi-key"})],-1)),a("div",Y4,[a("div",Z4,q(w.value),1),a("div",J4," Routing "+q(w.value===1?"Key":"Keys"),1)])]),a("div",X4,[se[4]||(se[4]=a("div",{class:"stat-icon queues","aria-hidden":"true"},[a("i",{class:"bi bi-box"})],-1)),a("div",e3,[a("div",t3,q(I.value),1),a("div",s3," Bound "+q(I.value===1?"Queue":"Queues"),1)])])])])):he("",!0),!g.value&&!$.value&&V.value.length>0?(N(),P("section",n3,[se[9]||(se[9]=a("h2",{id:"bindings-title",class:"section-title"},[a("i",{class:"bi bi-diagram-3","aria-hidden":"true"}),te(" Queue Bindings ")],-1)),a("div",i3,[(N(!0),P(Ae,null,bt(V.value,ue=>(N(),P("article",{key:ue.routingKey,class:"binding-card"},[a("header",r3,[a("div",a3,[a("div",o3,[se[5]||(se[5]=a("i",{class:"bi bi-key","aria-hidden":"true"},null,-1)),a("span",l3,q(ue.routingKey),1)]),a("div",u3,q(ue.totalQueues)+" "+q(ue.totalQueues===1?"queue":"queues"),1)])]),ue.queues.length>0?(N(),P("div",c3,[(N(!0),P(Ae,null,bt(ue.queues,Re=>(N(),P("div",{key:`${ue.routingKey}-${Re.name}`,class:"queue-item"},[a("div",d3,[se[6]||(se[6]=a("i",{class:"bi bi-box","aria-hidden":"true"},null,-1)),a("span",f3,q(Re.name),1)]),a("button",{type:"button",class:"btn-unbind",disabled:x.value,"aria-label":`Unbind queue ${Re.name} from routing key ${ue.routingKey}`,onClick:Ie=>H(Re.name,ue.routingKey)},[...se[7]||(se[7]=[a("i",{class:"bi bi-x-circle","aria-hidden":"true"},null,-1),a("span",null,"Unbind",-1)])],8,h3)]))),128))])):(N(),P("div",p3,[...se[8]||(se[8]=[a("i",{class:"bi bi-inbox","aria-hidden":"true"},null,-1),a("span",null,"No queues bound to this routing key",-1)])]))]))),128))])])):he("",!0)]),_:1}),we(ia,{"is-visible":u.value,"exchange-type":T(Te).DIRECT,"exchange-name":r.value,namespace:o.value,"total-queues":I.value,"total-routing-keys":w.value,onDeleted:X,onClose:se[0]||(se[0]=ue=>u.value=!1)},null,8,["is-visible","exchange-type","exchange-name","namespace","total-queues","total-routing-keys"]),we(Ic,{"is-visible":d.value,"is-loading":O.value,error:T(dt)(T(C).error.value?.error),"exchange-type":"direct","exchange-name":r.value,namespace:o.value,onConfirm:ie,onCancel:se[1]||(se[1]=ue=>d.value=!1)},null,8,["is-visible","is-loading","error","exchange-name","namespace"]),we(qc,{"is-visible":c.value,"is-loading":x.value,error:T(dt)(T(A).error.value?.error),"queue-name":h.value?.name||"","routing-key":h.value?.routingKey||"","exchange-type":"direct",onConfirm:G,onCancel:se[2]||(se[2]=ue=>{c.value=!1,h.value=null})},null,8,["is-visible","is-loading","error","queue-name","routing-key"])]))}}),v3=Xe(g3,[["__scopeId","data-v-205a050e"]]),b3={class:"topic-exchange-view"},y3={key:0,class:"stats-overview"},_3={class:"stats-grid"},E3={class:"stat-card"},w3={class:"stat-content"},C3={class:"stat-value"},A3={class:"stat-label"},S3={class:"stat-card"},x3={class:"stat-content"},$3={class:"stat-value"},T3={class:"stat-label"},O3={key:1,class:"bindings-section"},N3={class:"bindings-list"},k3={class:"binding-header"},P3={class:"binding-pattern-info"},D3={class:"binding-pattern-badge",title:"Binding pattern"},R3={class:"binding-pattern-text"},M3={class:"queue-count"},I3={class:"pattern-explanation"},q3={class:"explanation-text"},L3={key:0,class:"queues-list"},F3={class:"queue-info"},V3={class:"queue-name"},Q3=["disabled","aria-label","onClick"],j3={key:1,class:"no-queues"},B3=20,U3=Ue({__name:"ExchangeTopicView",setup(e){const t=ps(),s=os(),n=Xt(),i=fn(),r=b(()=>String(t.params.exchange)),o=b(()=>String(t.params.ns)),l=b(()=>!!(r.value&&o.value)),u=be(!1),d=be(!1),c=be(!1),h=be(null),m=se=>{let ue=se.replace(/\*/g,"word").replace(/#/g,"any.nested.keys");return!se.includes("*")&&!se.includes("#")?se:ue},{data:p,isLoading:v,error:E,refetch:_}=Yg(o,r,{query:{enabled:l}}),S=b(()=>p.value?.data||[]),C=Array.from({length:B3},(se,ue)=>{const Re=b(()=>S.value[ue]||""),Ie=b(()=>l.value&&ue<S.value.length&&!!S.value[ue]);return Zg(o,r,b(()=>({bindingPattern:Re.value})),{query:{enabled:Ie}})}),A=$c({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:Su(o.value,r.value)}),S.value.forEach(se=>{i.invalidateQueries({queryKey:xu(o.value,r.value,{bindingPattern:se})})}),d.value=!1},onError:se=>{console.error("Failed to bind queue:",se)}}}),g=xx({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:Su(o.value,r.value)}),S.value.forEach(se=>{i.invalidateQueries({queryKey:xu(o.value,r.value,{bindingPattern:se})})}),c.value=!1,h.value=null},onError:se=>{console.error("Failed to unbind queue:",se)}}}),$=b(()=>v.value||C.some((se,ue)=>ue<S.value.length&&se.isLoading.value)),L=b(()=>!!E.value||C.some((se,ue)=>ue<S.value.length&&!!se.error.value)),V=b(()=>{if(E.value)return dt(E.value);const se=C.find((ue,Re)=>Re<S.value.length&&ue.error.value)?.error.value;return se?dt(se):null}),I=b(()=>{const se=[];return S.value.forEach((ue,Re)=>{if(Re>=C.length)return;const tt=C[Re].data?.value?.data||[];se.push({bindingPattern:ue,queues:tt.map(ve=>({name:ve.name})),totalQueues:tt.length})}),se}),w=b(()=>I.value.reduce((se,ue)=>se+ue.totalQueues,0)),O=b(()=>S.value.length),x=b(()=>A.isPending.value),F=b(()=>g.isPending.value),H=()=>{d.value=!0},z=(se,ue)=>{h.value={name:se,bindingPattern:ue},c.value=!0},fe=()=>{u.value=!0},ie=()=>{_(),C.forEach((se,ue)=>{ue<S.value.length&&se.refetch()})},G=async se=>{await A.mutateAsync({ns:o.value,topic:r.value,queue:se.queueName,params:{bindingPattern:String(se.bindingPattern)}})},X=async()=>{h.value&&await g.mutateAsync({ns:o.value,topic:r.value,queue:h.value.name,params:{bindingPattern:h.value.bindingPattern}})},Z=()=>{s.push("/exchanges")},W=b(()=>[{id:"bind-queue",label:"Bind Queue",icon:"bi bi-link-45deg",variant:"primary",disabled:x.value,loading:x.value,handler:H,tooltip:"Bind a queue to this exchange with a binding pattern"},{id:"refresh",label:"Refresh",icon:"bi bi-arrow-clockwise",variant:"refresh",disabled:$.value,loading:$.value,handler:ie,tooltip:"Refresh exchange data"},{id:"delete-exchange",label:"Delete Exchange",icon:"bi bi-trash",variant:"danger",disabled:!1,loading:!1,handler:fe,tooltip:"Delete this exchange. If any queues are bound, you will be prompted to unbind them first."}]);return At(()=>{if(!l.value){n.setPageHeader({title:"Invalid Exchange",subtitle:"Exchange name and namespace are required",icon:"bi bi-exclamation-triangle"}),n.setPageActions([]),n.setErrorState({message:"Invalid route parameters"});return}n.setPageHeader({title:`Topic Exchange: ${r.value}`,subtitle:`Namespace: ${o.value} • Routes messages based on routing key patterns`,icon:"bi bi-hash"}),n.setPageActions(W.value),n.setLoadingState($.value),L.value?(n.setErrorState(V.value),n.setEmptyState(!1)):!$.value&&O.value===0?(n.setErrorState(null),n.setEmptyState(!0,{icon:"bi bi-hash",title:"No Queue Bindings",message:"This topic exchange has no queue bindings. Bind a queue with a binding pattern to start routing messages.",actionLabel:"Bind Queue",actionHandler:H})):(n.setErrorState(null),n.setEmptyState(!1))}),Bt(()=>{l.value||s.push("/exchanges")}),(se,ue)=>(N(),P("div",b3,[we(ms,null,{default:qe(()=>[!$.value&&!L.value&&O.value>0?(N(),P("div",y3,[a("div",_3,[a("div",E3,[ue[3]||(ue[3]=a("div",{class:"stat-icon binding-patterns"},[a("i",{class:"bi bi-hash","aria-hidden":"true"})],-1)),a("div",w3,[a("div",C3,q(O.value),1),a("div",A3," Binding "+q(O.value===1?"Pattern":"Patterns"),1)])]),a("div",S3,[ue[4]||(ue[4]=a("div",{class:"stat-icon queues"},[a("i",{class:"bi bi-box","aria-hidden":"true"})],-1)),a("div",x3,[a("div",$3,q(w.value),1),a("div",T3," Bound "+q(w.value===1?"Queue":"Queues"),1)])])])])):he("",!0),!$.value&&!L.value&&I.value.length>0?(N(),P("div",O3,[ue[10]||(ue[10]=a("h2",{class:"section-title"},[a("i",{class:"bi bi-diagram-3","aria-hidden":"true"}),te(" Queue Bindings ")],-1)),a("div",N3,[(N(!0),P(Ae,null,bt(I.value,Re=>(N(),P("div",{key:Re.bindingPattern,class:"binding-card"},[a("div",k3,[a("div",P3,[a("div",D3,[ue[5]||(ue[5]=a("i",{class:"bi bi-hash","aria-hidden":"true"},null,-1)),a("span",R3,q(Re.bindingPattern),1)]),a("div",M3,q(Re.totalQueues)+" "+q(Re.totalQueues===1?"queue":"queues"),1)]),a("div",I3,[ue[6]||(ue[6]=a("i",{class:"bi bi-info-circle","aria-hidden":"true"},null,-1)),a("span",q3," Matches routing keys like: "+q(m(Re.bindingPattern)),1)])]),Re.queues.length>0?(N(),P("div",L3,[(N(!0),P(Ae,null,bt(Re.queues,Ie=>(N(),P("div",{key:`${Re.bindingPattern}-${Ie.name}`,class:"queue-item"},[a("div",F3,[ue[7]||(ue[7]=a("i",{class:"bi bi-box","aria-hidden":"true"},null,-1)),a("span",V3,q(Ie.name),1)]),a("button",{type:"button",class:"btn-unbind",disabled:F.value,"aria-label":`Unbind queue ${Ie.name} from binding pattern ${Re.bindingPattern}`,onClick:tt=>z(Ie.name,Re.bindingPattern)},[...ue[8]||(ue[8]=[a("i",{class:"bi bi-x-circle","aria-hidden":"true"},null,-1),a("span",null,"Unbind",-1)])],8,Q3)]))),128))])):(N(),P("div",j3,[...ue[9]||(ue[9]=[a("i",{class:"bi bi-inbox","aria-hidden":"true"},null,-1),a("span",null,"No queues bound to this pattern",-1)])]))]))),128))])])):he("",!0)]),_:1}),we(ia,{"is-visible":u.value,"exchange-type":T(Te).TOPIC,"exchange-name":r.value,namespace:o.value,"total-queues":w.value,"total-binding-patterns":O.value,onDeleted:Z,onClose:ue[0]||(ue[0]=Re=>u.value=!1)},null,8,["is-visible","exchange-type","exchange-name","namespace","total-queues","total-binding-patterns"]),we(Ic,{"is-visible":d.value,"is-loading":x.value,error:T(dt)(T(A).error.value?.error),"exchange-type":"topic","exchange-name":r.value,namespace:o.value,onConfirm:G,onCancel:ue[1]||(ue[1]=Re=>d.value=!1)},null,8,["is-visible","is-loading","error","exchange-name","namespace"]),we(qc,{"is-visible":c.value,"is-loading":F.value,error:T(dt)(T(g).error.value?.error),"queue-name":h.value?.name||"","binding-pattern":h.value?.bindingPattern||"","exchange-type":"topic",onConfirm:X,onCancel:ue[2]||(ue[2]=Re=>{c.value=!1,h.value=null})},null,8,["is-visible","is-loading","error","queue-name","binding-pattern"])]))}}),K3=Xe(U3,[["__scopeId","data-v-00510631"]]),H3={class:"fanout-exchange-view"},G3={key:0,class:"stats-overview"},W3={class:"stats-grid"},z3={class:"stat-card"},Y3={class:"stat-content"},Z3={class:"stat-value"},J3={class:"stat-label"},X3={key:1,class:"exchange-info"},ej={class:"info-card"},tj={class:"info-description"},sj={key:2,class:"queues-section"},nj={class:"queues-grid"},ij={class:"queue-header"},rj={class:"queue-info"},aj={class:"queue-name"},oj=["disabled","aria-label","onClick"],lj=Ue({__name:"ExchangeFanoutView",setup(e){const t=ps(),s=os(),n=Xt(),i=fn(),r=b(()=>String(t.params.exchange)),o=b(()=>String(t.params.ns)),l=b(()=>!!(r.value&&o.value)),u=be(!1),d=be(!1),c=be(!1),h=be(null),{data:m,isLoading:p,error:v,refetch:E}=Gg(o,r,{query:{enabled:l}}),_=Sc({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:wu(o.value,r.value)}),d.value=!1},onError:Z=>{console.error("Failed to bind queue:",Z)}}}),S=sx({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:wu(o.value,r.value)}),c.value=!1,h.value=null},onError:Z=>{console.error("Failed to unbind queue:",Z)}}}),C=b(()=>p.value),A=b(()=>!!v.value),g=b(()=>dt(v.value)),$=b(()=>(m.value?.data||[]).map(W=>({name:W.name}))),L=b(()=>$.value.length),V=b(()=>_.isPending.value),I=b(()=>S.isPending.value),w=b(()=>dt(_.error.value?.error)),O=b(()=>dt(S.error.value?.error)),x=()=>{d.value=!0},F=Z=>{h.value=Z,c.value=!0},H=()=>{u.value=!0},z=()=>{E()},fe=async Z=>{await _.mutateAsync({ns:o.value,fanout:r.value,queue:Z.queueName})},ie=async()=>{h.value&&await S.mutateAsync({ns:o.value,fanout:r.value,queue:h.value})},G=()=>{s.push("/exchanges")},X=b(()=>[{id:"bind-queue",label:"Bind Queue",icon:"bi bi-link-45deg",variant:"primary",disabled:V.value,loading:V.value,handler:x,tooltip:"Bind a queue to this fanout exchange"},{id:"refresh",label:"Refresh",icon:"bi bi-arrow-clockwise",variant:"refresh",disabled:C.value,loading:C.value,handler:z,tooltip:"Refresh exchange data"},{id:"delete-exchange",label:"Delete Exchange",icon:"bi bi-trash",variant:"danger",disabled:!1,loading:!1,handler:H,tooltip:"Delete this exchange. If any queues are bound, you will be prompted to unbind them first."}]);return At(()=>{if(!l.value){n.setPageHeader({title:"Invalid Exchange",subtitle:"Exchange name and namespace are required",icon:"bi bi-exclamation-triangle"}),n.setPageActions([]),n.setErrorState({message:"Invalid route parameters"});return}n.setPageHeader({title:`Fanout Exchange: ${r.value}`,subtitle:`Namespace: ${o.value} • Broadcasts messages to all bound queues`,icon:"bi bi-arrows-angle-expand"}),n.setPageActions(X.value),n.setLoadingState(C.value),A.value?(n.setErrorState(g.value),n.setEmptyState(!1)):!C.value&&L.value===0?(n.setErrorState(null),n.setEmptyState(!0,{icon:"bi bi-arrows-angle-expand",title:"No Queue Bindings",message:"This fanout exchange has no queue bindings. Bind a queue to start broadcasting messages.",actionLabel:"Bind Queue",actionHandler:x})):(n.setErrorState(null),n.setEmptyState(!1))}),Bt(()=>{l.value||s.push("/exchanges")}),(Z,W)=>(N(),P("div",H3,[we(ms,null,{default:qe(()=>[!C.value&&!A.value&&L.value>0?(N(),P("div",G3,[a("div",W3,[a("div",z3,[W[3]||(W[3]=a("div",{class:"stat-icon queues"},[a("i",{class:"bi bi-box","aria-hidden":"true"})],-1)),a("div",Y3,[a("div",Z3,q(L.value),1),a("div",J3," Bound "+q(L.value===1?"Queue":"Queues"),1)])]),W[4]||(W[4]=a("div",{class:"stat-card"},[a("div",{class:"stat-icon broadcast"},[a("i",{class:"bi bi-broadcast","aria-hidden":"true"})]),a("div",{class:"stat-content"},[a("div",{class:"stat-value"},"100%"),a("div",{class:"stat-label"},"Message Delivery")])],-1))])])):he("",!0),!C.value&&!A.value&&L.value>0?(N(),P("div",X3,[a("div",ej,[W[7]||(W[7]=a("div",{class:"info-header"},[a("i",{class:"bi bi-info-circle","aria-hidden":"true"}),a("h3",null,"How Fanout Exchange Works")],-1)),a("p",tj,[W[5]||(W[5]=te(" Fanout exchanges broadcast every message to all bound queues. When you publish a message to this exchange, it will be delivered to ",-1)),a("strong",null,"all "+q(L.value)+" bound queue"+q(L.value===1?"":"s"),1),W[6]||(W[6]=te(" regardless of routing keys. ",-1))])])])):he("",!0),!C.value&&!A.value&&$.value.length>0?(N(),P("div",sj,[W[11]||(W[11]=a("h2",{class:"section-title"},[a("i",{class:"bi bi-box","aria-hidden":"true"}),te(" Bound Queues ")],-1)),a("div",nj,[(N(!0),P(Ae,null,bt($.value,se=>(N(),P("div",{key:se.name,class:"queue-card"},[a("div",ij,[a("div",rj,[W[8]||(W[8]=a("i",{class:"bi bi-box","aria-hidden":"true"},null,-1)),a("span",aj,q(se.name),1)]),a("button",{type:"button",class:"btn-unbind",disabled:I.value,"aria-label":`Unbind queue ${se.name}`,onClick:ue=>F(se.name)},[...W[9]||(W[9]=[a("i",{class:"bi bi-x-circle","aria-hidden":"true"},null,-1),a("span",null,"Unbind",-1)])],8,oj)]),W[10]||(W[10]=a("div",{class:"queue-status"},[a("div",{class:"status-indicator active"},[a("i",{class:"bi bi-check-circle-fill","aria-hidden":"true"}),a("span",null,"Receiving all messages")])],-1))]))),128))])])):he("",!0)]),_:1}),we(ia,{"is-visible":u.value,"exchange-type":T(Te).FANOUT,"exchange-name":r.value,namespace:o.value,"total-queues":L.value,onDeleted:G,onClose:W[0]||(W[0]=se=>u.value=!1)},null,8,["is-visible","exchange-type","exchange-name","namespace","total-queues"]),we(Ic,{"is-visible":d.value,"is-loading":V.value,error:w.value,"exchange-type":"fanout","exchange-name":r.value,namespace:o.value,onConfirm:fe,onCancel:W[1]||(W[1]=se=>d.value=!1)},null,8,["is-visible","is-loading","error","exchange-name","namespace"]),we(qc,{"is-visible":c.value,"is-loading":I.value,error:O.value,"queue-name":h.value||"","exchange-type":"fanout",onConfirm:ie,onCancel:W[2]||(W[2]=se=>{c.value=!1,h.value=null})},null,8,["is-visible","is-loading","error","queue-name"])]))}}),uj=Xe(lj,[["__scopeId","data-v-1d5cc708"]]),cj={class:"namespace-exchanges-view"},dj={key:0,class:"namespace-stats"},fj={class:"stats-grid"},hj={class:"stat-card total"},pj={class:"stat-content"},mj={class:"stat-value"},gj={class:"stat-card direct"},vj={class:"stat-content"},bj={class:"stat-value"},yj={class:"stat-card fanout"},_j={class:"stat-content"},Ej={class:"stat-value"},wj={class:"stat-card topic"},Cj={class:"stat-content"},Aj={class:"stat-value"},Sj={key:1,class:"namespace-info"},xj={class:"info-card"},$j={class:"info-header"},Tj={class:"info-description"},Oj={key:2,class:"grid grid-cols-2 gap-6"},Nj=Ue({__name:"NamespaceExchangesView",setup(e){const t=ps(),s=os(),n=Xt(),i=fn(),r=b(()=>String(t.params.ns)),o=b(()=>!!r.value),l=be(!1),u=be(!1),d=be(null),c=be(null),{data:h,isLoading:m,isError:p,error:v,refetch:E}=RI(r,{query:{enabled:o}}),_=Sc({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:Cr(r)}),u.value=!1},onError:Z=>{console.error("Failed to create fanout exchange:",Z)}}}),S=xc({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:Cr(r)}),u.value=!1},onError:Z=>{console.error("Failed to create direct exchange:",Z)}}}),C=$c({mutation:{onSuccess:()=>{i.invalidateQueries({queryKey:Cr(r)}),u.value=!1},onError:Z=>{console.error("Failed to create topic exchange:",Z)}}}),A=b(()=>_.isPending.value||S.isPending.value||C.isPending.value),g=b(()=>dt(_.error.value?.error||S.error.value?.error||C.error.value?.error)),$=b(()=>h.value?.data??[]),L=b(()=>r.value?$.value.filter(Z=>Z.ns===r.value):[]),V=b(()=>dt(v.value)),I=b(()=>{const Z={total:L.value.length,direct:0,fanout:0,topic:0};return L.value.forEach(W=>{switch(W.type){case Te.DIRECT:Z.direct++;break;case Te.FANOUT:Z.fanout++;break;case Te.TOPIC:Z.topic++;break}}),Z}),w=Z=>{const W=L.value.find(se=>se.name===Z.exchange.name&&se.ns===Z.exchange.ns)||null;d.value=W??{name:Z.exchange.name,ns:Z.exchange.ns,type:Z.exchange.type},c.value=Z.totals,l.value=!0},O=()=>{u.value=!0},x=Z=>{console.log("Binding queue to:",Z.name)},F=Z=>{console.log("Unbinding queue from:",Z.exchange.name,"queue:",Z.queueName)},H=Z=>{console.log("Publishing message to:",Z.name)},z=async Z=>{const{name:W,type:se,ns:ue,queueName:Re,routingKey:Ie,bindingPattern:tt}=Z;try{switch(se){case Te.FANOUT:await _.mutateAsync({ns:ue,fanout:W,queue:Re});break;case Te.DIRECT:await S.mutateAsync({ns:ue,direct:W,queue:Re,params:{routingKey:String(Ie)}});break;case Te.TOPIC:await C.mutateAsync({ns:ue,topic:W,queue:Re,params:{bindingPattern:String(tt)}});break;default:throw new Error(`Unsupported exchange type: ${se}`)}}catch(ve){console.error("Failed to create exchange:",ve)}},fe=Z=>{const W={exchange:Z.name,ns:Z.ns};return Z.type==Te.DIRECT?{name:"Direct Exchange",params:W}:Z.type==Te.TOPIC?{name:"Topic Exchange",params:W}:{name:"Fanout Exchange",params:W}},ie=Z=>{const W=fe(Z);s.push(W)},G=()=>{i.invalidateQueries({queryKey:Cr(r)}),l.value=!1,d.value=null,c.value=null},X=b(()=>[{id:"create-exchange",label:"Create Exchange",icon:"bi bi-plus-lg",variant:"primary",disabled:A.value,loading:A.value,handler:O,tooltip:"Create a new exchange by binding a queue to it"},{id:"refresh-exchanges",label:"Refresh",icon:"bi bi-arrow-clockwise",variant:"refresh",disabled:m.value,loading:m.value,handler:()=>E(),tooltip:"Refresh exchanges list"}]);return At(()=>{if(!o.value){n.setPageHeader({title:"Invalid Namespace",subtitle:"Namespace parameter is required",icon:"bi bi-exclamation-triangle"}),n.setPageActions([]),n.setErrorState({message:"Invalid route parameters"});return}n.setPageHeader({title:`Exchanges in "${r.value}"`,subtitle:`View and manage exchanges in the ${r.value} namespace`,icon:"bi bi-diagram-3"}),n.setPageActions(X.value),n.setLoadingState(m.value),p.value?(n.setErrorState(V.value),n.setEmptyState(!1)):!m.value&&L.value.length===0?(n.setErrorState(null),n.setEmptyState(!0,{icon:"bi bi-diagram-3",title:"No Exchanges Found",message:`No exchanges are currently configured in the "${r.value}" namespace. Create your first exchange to start routing messages.`,actionLabel:"Create Exchange",actionHandler:O})):(n.setErrorState(null),n.setEmptyState(!1))}),(Z,W)=>(N(),P("div",cj,[we(ms,null,{default:qe(()=>[!T(m)&&!T(p)&&L.value.length>0?(N(),P("div",dj,[a("div",fj,[a("div",hj,[W[3]||(W[3]=a("div",{class:"stat-icon"},[a("i",{class:"bi bi-diagram-3","aria-hidden":"true"})],-1)),a("div",pj,[a("div",mj,q(I.value.total),1),W[2]||(W[2]=a("div",{class:"stat-label"},"Total Exchanges",-1))])]),a("div",gj,[W[5]||(W[5]=a("div",{class:"stat-icon"},[a("i",{class:"bi bi-arrow-right","aria-hidden":"true"})],-1)),a("div",vj,[a("div",bj,q(I.value.direct),1),W[4]||(W[4]=a("div",{class:"stat-label"},"Direct",-1))])]),a("div",yj,[W[7]||(W[7]=a("div",{class:"stat-icon"},[a("i",{class:"bi bi-arrows-angle-expand","aria-hidden":"true"})],-1)),a("div",_j,[a("div",Ej,q(I.value.fanout),1),W[6]||(W[6]=a("div",{class:"stat-label"},"Fanout",-1))])]),a("div",wj,[W[9]||(W[9]=a("div",{class:"stat-icon"},[a("i",{class:"bi bi-hash","aria-hidden":"true"})],-1)),a("div",Cj,[a("div",Aj,q(I.value.topic),1),W[8]||(W[8]=a("div",{class:"stat-label"},"Topic",-1))])])])])):he("",!0),!T(m)&&!T(p)&&L.value.length>0?(N(),P("div",Sj,[a("div",xj,[a("div",$j,[W[10]||(W[10]=a("i",{class:"bi bi-folder-fill","aria-hidden":"true"},null,-1)),a("h3",null,"Namespace: "+q(r.value),1)]),a("p",Tj," This namespace contains "+q(I.value.total)+" exchange"+q(I.value.total===1?"":"s")+". Exchanges in this namespace are isolated from other namespaces and can be managed independently. ",1)])])):he("",!0),L.value.length>0?(N(),P("div",Oj,[(N(!0),P(Ae,null,bt(L.value,se=>(N(),at(tv,{key:`${se.name}-${se.ns}`,exchange:se,onDelete:w,onViewDetails:ie,onBindQueue:x,onUnbindQueue:F,onPublishMessage:H},null,8,["exchange"]))),128))])):he("",!0)]),_:1}),we(ia,{"is-visible":l.value,"exchange-type":d.value?.type??0,"exchange-name":d.value?.name??"",namespace:d.value?.ns??"","total-queues":c.value?.totalQueues??0,"total-routing-keys":c.value?.totalRoutingKeys,"total-binding-patterns":c.value?.totalBindingPatterns,onDeleted:G,onClose:W[0]||(W[0]=se=>{l.value=!1,d.value=null,c.value=null})},null,8,["is-visible","exchange-type","exchange-name","namespace","total-queues","total-routing-keys","total-binding-patterns"]),we(Xg,{"is-visible":u.value,"is-loading":A.value,error:g.value,onConfirm:z,onCancel:W[1]||(W[1]=se=>u.value=!1)},null,8,["is-visible","is-loading","error"])]))}}),kj=Xe(Nj,[["__scopeId","data-v-2acb12a4"]]),Pj=[{path:"/ns",name:"Namespaces",component:Iv,meta:{title:"NamespacesView",breadcrumb:"NamespacesView"}},{path:"/ns/:ns/queues",name:"Namespace Queues",component:Eq,meta:{title:"Namespace Queues",breadcrumb:"Namespace Queues"}},{path:"/ns/:ns/queues/:queue",name:"Queue",component:s4,meta:{title:"Queue Details",breadcrumb:"Queue Details"}},{path:"/ns/:ns/queues/:queue/pending-messages",name:"Pending Messages",component:UL,meta:{title:"Queue Pending Messages"}},{path:"/ns/:ns/queues/:queue/acknowledged-messages",name:"Acknowledged Messages",component:uI,meta:{title:"Queue Acknowledged Messages"}},{path:"/ns/:ns/queues/:queue/dead-lettered-messages",name:"Dead-Lettered Messages",component:_I,meta:{title:"Queue Dead-Lettered Messages"}},{path:"/ns/:ns/queues/:queue/scheduled-messages",name:"Scheduled Messages",component:r4,meta:{title:"Queue Scheduled Messages"}},{path:"/ns/:ns/queues/:queue/messages",name:"Messages",component:l4,meta:{title:"Queue Messages"}},{path:"/ns/:ns/exchanges",name:"Namespace Exchanges",component:kj,meta:{title:"Namespace Exchanges",breadcrumb:"Namespace Exchanges"}},{path:"/ns/:ns/exchanges/direct/:exchange",name:"Direct Exchange",component:v3,meta:{title:"Direct Exchange Details",breadcrumb:"Direct Exchange Details"}},{path:"/ns/:ns/exchanges/topic/:exchange",name:"Topic Exchange",component:K3,meta:{title:"Topic Exchange Details",breadcrumb:"Topic Exchange Details"}},{path:"/ns/:ns/exchanges/fanout/:exchange",name:"Fanout Exchange",component:uj,meta:{title:"Fanout Exchange Details",breadcrumb:"Fanout Exchange Details"}}],Iu=[...Ba,...Pj],Dj={key:0,"aria-label":"breadcrumb",class:"breadcrumb-navigation"},Rj={class:"breadcrumb-container"},Mj={class:"breadcrumb-content"},Ij={class:"breadcrumb-list"},qj=["aria-current"],Lj={key:0,class:"breadcrumb-separator"},Fj=["title","onClick"],Vj={class:"breadcrumb-text"},Qj=["title"],jj={class:"breadcrumb-text"},Bj=Ue({__name:"BreadcrumbsPanel",setup(e){const t=ps(),s=os(),n=b(()=>{try{const h=[],m=t.path,p=t.params,v=i(m,p);return v.forEach((E,_)=>{const S=u(E.pattern);if(!S)return;const C=_===v.length-1,A=d(S);A&&h.push({title:A,to:C?void 0:E.actualPath,active:C})}),h}catch(h){return console.warn("Error building breadcrumbs:",h),[]}});function i(h,m){const p=[],v=h.split("/").filter(_=>_);let E="";h!=="/"&&u("/")&&p.push({pattern:"/",actualPath:"/"});for(let _=0;_<v.length;_++){E+="/"+v[_];const S=r(E,m);S&&p.push({pattern:S,actualPath:E})}return p}function r(h,m){const p=[...Iu].sort((v,E)=>{const _=o(v.path);return o(E.path)-_});for(const v of p)if(l(h,v.path,m))return v.path;return null}function o(h){const m=h.split("/").filter(v=>v);let p=m.length*10;for(const v of m)v.startsWith(":")&&(p-=5);return p}function l(h,m,p){const v=h.split("/").filter(_=>_),E=m.split("/").filter(_=>_);if(v.length!==E.length)return!1;for(let _=0;_<E.length;_++){const S=E[_],C=v[_];if(S.startsWith(":")){const A=S.substring(1);if(p[A]!==C)return!1}else if(S!==C)return!1}return!0}function u(h){return Iu.find(m=>m.path===h)}function d(h){return String(h.meta?.title||h.name)}function c(h){try{s.push(h)}catch(m){console.error("Navigation error:",m)}}return(h,m)=>n.value.length>0?(N(),P("nav",Dj,[a("div",Rj,[a("div",Mj,[m[1]||(m[1]=a("div",{class:"breadcrumb-home","aria-hidden":"true"},[a("i",{class:"bi bi-house-fill"}),a("span",{class:"sr-only"},"Home")],-1)),a("ol",Ij,[(N(!0),P(Ae,null,bt(n.value,(p,v)=>(N(),P("li",{key:`${p.title}-${v}`,class:De(["breadcrumb-item",{"breadcrumb-item-active":p.active,"breadcrumb-item-clickable":!p.active&&p.to}]),"aria-current":p.active?"page":void 0},[v>0?(N(),P("div",Lj,[...m[0]||(m[0]=[a("i",{class:"bi bi-chevron-right"},null,-1)])])):he("",!0),!p.active&&p.to?(N(),P("button",{key:1,type:"button",class:"breadcrumb-link",title:`Navigate to ${p.title}`,onClick:E=>c(p.to)},[a("span",Vj,q(p.title),1)],8,Fj)):(N(),P("div",{key:2,class:"breadcrumb-current",title:p.title},[a("span",jj,q(p.title),1)],8,Qj))],10,qj))),128))])])])])):he("",!0)}}),Uj=Xe(Bj,[["__scopeId","data-v-778a84ef"]]),Kj="9.0.1",Hj={version:Kj},Gj="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFsAAAA2CAYAAACoXOUdAAAACXBIWXMAAC4jAAAuIwF4pT92AAACaklEQVR42u2cv2sUQRzF35MLXhEUNahFRMSzFUt7m5Ar9A+wCNqaKghpRIKFQixsrIyFpVgkUYKdrRAEC4sVDFhE0CIKomCh4WvhHkzGmbkfu9ndkPfg4Oa7b/a7+9nvzs4ezMH+KUMu26kXCMjzLOexrplZxJul+qb8fXJmiZy+dy7k9XOa2aIF5HiHyXnWDR6AVJkEW7AFWxJswZYEW7AFWxJswZYEW7AFWxJswZYEW7AlwRZswZYEW7AlwRZswZYEW7AlwRZsSbAFW5IkSZKk/SY27YDMbAlAm+TVAvuYA9AC8MfbtE3yQZ0nZ73lZgHd3qWclxPL5H7Gtg15TiH9SvifRfose+3NAZbmBdVy/BvO99MAxgB8q+H6ny9p/v8KwHO/shP+3x6D4wAOAfjixduR/u8HrmwvlhWtrlEru8S79U4Rv5k9ilRwqrI3I/v/2MhFp/6K2n3/up4alyLet55npeRny+JegN0asd8WgB8A1pzYGQDdRB933BsHcHLE3BuB2NdA7KaZzfw3/SJP1Q47VpX5AfpTxAkAWyRnHW83BZvkOXfMHqW6/f300UEAk02t7BuB7dP5J3Zr33WanYrG9OuB8DuS684FYaDfJQBXGgGb5MPAAU6kYAOYr+GYlwKx+wDW+/S7kBfU7F4bs3uqslJmAHwHcNiJ3QJwAsDTBs6qXgL4TPJaKbBJrlb2uwL5JHBC8wDGSb5p4ORjyn+YtwpevQ+B8GOS9wLe107zaEm5Oj3obs6I98guw/3Ue+lx2m23XXQYCT0Uj0W8Fwfc58IQuWI5OzVU8iSkRozfmf4jqmL9BR+MejvoqIOKAAAAAElFTkSuQmCC",Wj="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAW0AAADXCAYAAADRJwCFAAAACXBIWXMAAC4jAAAuIwF4pT92AAAFnElEQVR42u3cP2icZRzA8d9zCUEQa65KBx1yqUUz2MVJQcHBUTo7Fgw4WJvrIMYtBaEdOlxKt7aQLqLg6CSUIkQUBxcVKi3tBRwrdy2d2rt73FzMe9G379vc5T6f9eH9c8/7vt8cx5M3dbq9HAVSjpNry81rRePjtt3DdrvVfCcqVtf5dLq9WxFxrGCWVtutxavVn+/4/Zb/rOmndmvxrTrneq/7ZkKuaem5H2ez27ucI1an5R6s4pp27jx4LRrDm1GDdquZCs93p38ucl7frzl5suvZ/zEiv1lmx40AYGqINoBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAMg2gCiDYBoAyDaAKINgGgDINoAog2AaAOINgCiDYBoA4g2AKINgGgDiDYAog2AaAOINgCiDYBoA4g2AKINgGgDiDYAog2AaAOINgCiDYBoA4g2AKINgGgDiDYAog2AaAOINgCiDYBoA4g2AKINgGgDiDYAog2AaAOINgCiDYBoA4g2AKINgGgDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0y6ZAqjOpT8fvFA0NnjUmJ9fGA2qPua9l5+7v5HSwOzPhvlOt5cLi57jZE6xVceB262mPxg1GXdNI9Jqu7V49YmPcbf/UYpRc9fBRmyvLR3ensW5HwyG9woHG8MY1JDWw93+uxHxfb33zSR+5UznI+f1OhsziXMyL3GUe2DypznSK7sN5VGcjYhtkwTVa5gCANEGQLQBRBsA0QaganuuHim7bGavZWemnhn0e0pxueqdDuaGt5/CuV9qt5qflGrBTv+zyPl8UQvKLkHt7PTP1f2hJ3FpsiV/lL2Zj5mF/+3G2lJz0zRMj7FfPlM6315a/LzyY+70z41bf+7nEYApItoAog2AaAOINgCiDUDlDtSSv/14jWJO+e0zS4d/qP58082IvDKNc51znD2z3NyY1msao7mV9tFDf8gDvmkDINoAog2AaAMg2gCiDcBkOWhv+fu2aCCl1FlbWrxeZqedbu9WRDzVt9rlNFqtZynhwZFynFxbbl6bolM+1en2TtUwE6Vfb8oBjHY9AchXOt3elaLRJ3iH7fuFI6P8jcsNTDs/jwCINgCiDSDaAIg2AJX7L0v+fqvp2K8/zQ+aU7x46U5vqcy2A/fJRMoRb2ze7fUrfyiefXz94yNHHpbcvK7n5dWIWNhtIKX8yN0g2v9ot5rH6zjwPqwlvjBoxIWS2952q0ygFKdzxOmqd/v44TMrEVHq1aw1Pi+F/yswinzHzTA7/DwCINoAiDaAaAMg2gBUbt4UAFTr4q2/Dg0XUuFKorJv8JyxaKcvU8o/l9lyNIr7jUY8v9vYXBredYvWKKcP6rkd8heFQ43hS1FyyR9ERAwX0vGU0/a4O1C093xG83drral69zIR0V5e/LqO/Xa6va8K/05EOhoRN8w+k8hv2gCiDYBoA4g2AKINQOWs055UozixudN7r8ymOZs+qF3O651ub333sfGbjn3L6R4P8MxEO6fY6nR7W9XHdW6lffRQ5Wt6U2qcyDmvzPpzsQ+v8I3RKP06TefLbPHzCPzroUj3zQKiDYBoA4g2AKINgGgDzIxkCgAmR6fb/zAiX/FNG+AAEG0A0QZAtAFEGwDRBqByXs0KMFHfpPMvOcVG0fjf8tFYjp6FvpMAAAAASUVORK5CYII=",zj={class:"app"},Yj={key:0,class:"loading-screen"},Zj={class:"loading-container"},Jj={class:"loading-content"},Xj={class:"brand-section"},eB={class:"brand-logo loading-logo"},tB=["src"],sB={key:1,class:"error-screen"},nB={class:"error-container"},iB={class:"error-content"},rB={class:"error-message"},aB={key:2,class:"app-layout"},oB={class:"app-header"},lB={class:"header-container"},uB={class:"header-content"},cB={class:"brand-section"},dB={class:"brand-logo"},fB=["src"],hB={class:"app-navigation",role:"navigation","aria-label":"Main navigation"},pB={class:"nav-list nav-desktop",role:"tablist"},mB={class:"nav-label"},gB={key:0,class:"nav-indicator"},vB={class:"nav-mobile"},bB=["aria-expanded"],yB={class:"current-page"},_B={id:"mobile-nav-menu",class:"mobile-nav-menu",role:"menu"},EB={class:"app-main",role:"main"},wB={class:"content-wrapper"},CB={class:"content-container"},AB={class:"app-footer",role:"contentinfo"},SB={class:"footer-container"},xB={class:"footer-content"},$B={class:"footer-info"},TB={class:"version-info"},OB={class:"version"},NB=Ue({__name:"App",setup(e){const t=be(!0),s=be(null),n=os(),i=b(()=>Hj.version),r=async()=>{try{t.value=!0,s.value=null,await new Promise(m=>setTimeout(m,1500))}catch(m){console.error("App initialization failed:",m),s.value="Failed to initialize application"}finally{t.value=!1}};Bt(()=>{r()});const o=m=>n.currentRoute.value.name===m,l=()=>{r()},u=be(!1),d=be(null);Ye(()=>n.currentRoute.value.fullPath,()=>{u.value=!1});function c(m){if(!u.value)return;const p=m.target,v=d.value;v&&!v.contains(p)&&(u.value=!1)}function h(m){m.key==="Escape"&&u.value&&(u.value=!1)}return Bt(()=>{document.addEventListener("click",c,!0),document.addEventListener("keydown",h,!0)}),Ji(()=>{document.removeEventListener("click",c,!0),document.removeEventListener("keydown",h,!0)}),(m,p)=>{const v=Ud("RouterLink"),E=Ud("RouterView");return N(),P("div",zj,[t.value?(N(),P("div",Yj,[a("div",Zj,[a("div",Jj,[a("div",Xj,[a("div",eB,[a("img",{src:T(Wj),alt:"RedisSMQ Logo",class:"logo-image"},null,8,tB)])]),p[1]||(p[1]=a("div",{class:"loading-animation"},[a("div",{class:"spinner"}),a("p",{class:"loading-text"},"Initializing application...")],-1))])])])):s.value?(N(),P("div",sB,[a("div",nB,[a("div",iB,[p[3]||(p[3]=a("div",{class:"error-icon"},"⚠️",-1)),p[4]||(p[4]=a("h2",{class:"error-title"},"Application Error",-1)),a("p",rB,q(s.value),1),a("button",{class:"btn btn-primary btn-retry",onClick:l},[...p[2]||(p[2]=[a("i",{class:"bi bi-arrow-clockwise me-2"},null,-1),te(" Try Again ",-1)])])])])])):(N(),P("div",aB,[a("header",oB,[a("div",lB,[a("div",uB,[a("div",cB,[a("div",dB,[a("img",{src:T(Gj),alt:"RedisSMQ Logo",class:"logo-image"},null,8,fB)]),p[5]||(p[5]=a("div",{class:"brand-info"},[a("h1",{class:"brand-title"},"RedisSMQ"),a("span",{class:"brand-subtitle"},"Web UI")],-1))])]),a("nav",hB,[a("ul",pB,[(N(!0),P(Ae,null,bt(T(Ba),_=>(N(),P("li",{key:_.name,class:"nav-item",role:"presentation"},[we(v,{to:{name:_.name},class:De(["nav-link",{"nav-link-active":o(_.name)}]),"aria-current":o(_.name)?"page":void 0},{default:qe(()=>[a("span",mB,q(_.name),1),o(_.name)?(N(),P("span",gB)):he("",!0)]),_:2},1032,["to","class","aria-current"])]))),128))]),a("div",vB,[a("div",{ref_key:"mobileNavDropdown",ref:d,class:"mobile-nav-dropdown"},[a("button",{class:"mobile-nav-toggle",type:"button","aria-expanded":u.value,"aria-haspopup":"true","aria-controls":"mobile-nav-menu",onClick:p[0]||(p[0]=_=>u.value=!u.value)},[a("span",yB,q(T(Ba).find(_=>o(_.name))?.name||"Navigation"),1),p[6]||(p[6]=a("i",{class:"bi bi-chevron-down toggle-icon"},null,-1))],8,bB),ss(a("ul",_B,[(N(!0),P(Ae,null,bt(T(Ba),_=>(N(),P("li",{key:_.name,role:"none"},[we(v,{to:{name:_.name},class:De(["mobile-nav-link",{"mobile-nav-link-active":o(_.name)}]),role:"menuitem"},{default:qe(()=>[te(q(_.name),1)]),_:2},1032,["to","class"])]))),128))],512),[[i0,u.value]])],512)])])])]),a("main",EB,[we(Uj),a("div",wB,[a("div",CB,[(N(),at($w,null,{default:qe(()=>[we(E,null,{default:qe(({Component:_,route:S})=>[(N(),at(Mo(_),{key:S.path}))]),_:1})]),fallback:qe(()=>[...p[7]||(p[7]=[a("div",{class:"page-loading"},[a("div",{class:"loading-content"},[a("div",{class:"spinner-small"}),a("p",{class:"loading-text"},"Loading page...")])],-1)])]),_:1}))])])]),a("footer",AB,[a("div",SB,[a("div",xB,[a("div",$B,[a("div",TB,[a("span",OB,"RedisSMQ Web UI "+q(i.value),1),p[8]||(p[8]=a("span",{class:"separator"},"•",-1)),p[9]||(p[9]=a("span",{class:"license"},[te(" Licensed under "),a("a",{href:"https://github.com/weyoss/redis-smq/blob/master/LICENSE",target:"_blank",rel:"noopener noreferrer",class:"license-link"}," MIT License ")],-1))])]),p[10]||(p[10]=ai('<div class="footer-links" data-v-08e652ea><a href="https://github.com/weyoss/redis-smq" target="_blank" rel="noopener noreferrer" class="footer-link" aria-label="View on GitHub" data-v-08e652ea><i class="bi bi-github me-1" data-v-08e652ea></i> GitHub </a><a href="https://github.com/weyoss/redis-smq/blob/master/packages/redis-smq/docs/README.md" target="_blank" rel="noopener noreferrer" class="footer-link" data-v-08e652ea><i class="bi bi-book me-1" data-v-08e652ea></i> Documentation </a></div>',1))])])])]))])}}}),kB=Xe(NB,[["__scopeId","data-v-08e652ea"]]),PB={class:"not-found-page"},DB=Ue({__name:"NotFoundView",setup(e){const t=os();function s(){t.push({name:"Home"})}function n(){window.history.length>1?t.go(-1):s()}function i(){t.push({name:"Queues"})}return(r,o)=>(N(),P("div",PB,[a("div",{class:"not-found-container"},[a("main",{class:"not-found-content"},[o[3]||(o[3]=ai('<div class="error-illustration" data-v-b9948732><div class="error-number" data-v-b9948732>404</div><div class="error-icon" data-v-b9948732>🔍</div></div><div class="error-message" data-v-b9948732><h1 class="error-title" data-v-b9948732>Page Not Found</h1><p class="error-subtitle" data-v-b9948732> Sorry, we couldn&#39;t find the page you&#39;re looking for. </p><p class="error-description" data-v-b9948732> The page might have been moved, deleted, or you may have entered an incorrect URL. </p></div>',2)),a("div",{class:"error-actions"},[a("button",{class:"btn btn-primary btn-home",onClick:s},[...o[0]||(o[0]=[a("i",{class:"bi bi-house-fill me-2"},null,-1),te(" Go to Home ",-1)])]),a("button",{class:"btn btn-outline-secondary btn-back",onClick:n},[...o[1]||(o[1]=[a("i",{class:"bi bi-arrow-left me-2"},null,-1),te(" Go Back ",-1)])]),a("button",{class:"btn btn-outline-primary btn-queues",onClick:i},[...o[2]||(o[2]=[a("i",{class:"bi bi-list-ul me-2"},null,-1),te(" View Queues ",-1)])])]),o[4]||(o[4]=ai('<div class="help-section" data-v-b9948732><h3 class="help-title" data-v-b9948732>What can you do?</h3><ul class="help-list" data-v-b9948732><li class="help-item" data-v-b9948732><i class="bi bi-check-circle-fill help-icon" data-v-b9948732></i><span data-v-b9948732>Check the URL for any typos</span></li><li class="help-item" data-v-b9948732><i class="bi bi-check-circle-fill help-icon" data-v-b9948732></i><span data-v-b9948732>Use the navigation menu to find what you&#39;re looking for</span></li><li class="help-item" data-v-b9948732><i class="bi bi-check-circle-fill help-icon" data-v-b9948732></i><span data-v-b9948732>Go back to the previous page or start from the home page</span></li></ul></div>',1))]),o[5]||(o[5]=a("footer",{class:"not-found-footer"},[a("p",{class:"footer-text"}," Need help? Check the documentation or contact support. ")],-1))])]))}}),RB=Xe(DB,[["__scopeId","data-v-b9948732"]]),Lv=hA({history:jC(Eg("BASE_PATH")),routes:[...Iu,{path:"/:pathMatch(.*)*",name:"NotFound",component:RB}]});Lv.beforeEach((e,t,s)=>{e.path!==t.path&&Xt().resetPageContent(),s()});const Xo=A0(kB);Xo.use($0());Xo.use(Lv);Xo.use(lC,{queryClientConfig:{defaultOptions:{queries:{refetchOnWindowFocus:!1,retry:1}}}});Xo.mount("#app");export{Tv as C,Mv as D,Ae as F,ms as P,nq as Q,Xe as _,It as a,lL as b,Rv as c,Ue as d,b as e,KL as f,P as g,we as h,at as i,he as j,qe as k,T as l,dt as m,N as n,Bt as o,a as p,te as q,be as r,bt as s,q as t,Xt as u,os as v,At as w};