@stlhorizon/vue-ui 3.2.0 → 3.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -10
- package/dist/index.esm.js +184 -184
- package/dist/index.js +4 -4
- package/dist/src/components/CardHeader.vue.d.ts.map +1 -1
- package/dist/src/components/DataTable.vue.d.ts.map +1 -1
- package/dist/src/components/DataTableFilters.vue.d.ts.map +1 -1
- package/dist/src/components/ReusableFormModal.vue.d.ts.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/vue-ui.css +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -556,7 +556,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
556
556
|
`);a.setAttribute(ke,""),a.innerHTML=l}};function Na(t){t()}function jn(t,n){var a=typeof n=="function"?n:Ge;if(t.length===0)a();else{var o=Na;M.mutateApproach===$l&&(o=ve.requestAnimationFrame||Na),o(function(){var r=Cs(),s=Xt.begin("mutate");t.map(r),s(),a()})}}var Jt=!1;function Ln(){Jt=!0}function Pt(){Jt=!1}var Qe=null;function $a(t){if(fa&&M.observeMutations){var n=t.treeCallback,a=n===void 0?Ge:n,o=t.nodeCallback,r=o===void 0?Ge:o,s=t.pseudoElementsCallback,l=s===void 0?Ge:s,c=t.observeMutationsRoot,m=c===void 0?K:c;Qe=new fa(function(f){if(!Jt){var p=he();Ne(f).forEach(function(v){if(v.type==="childList"&&v.addedNodes.length>0&&!Ea(v.addedNodes[0])&&(M.searchPseudoElements&&l(v.target),a(v.target)),v.type==="attributes"&&v.target.parentNode&&M.searchPseudoElements&&l([v.target],!0),v.type==="attributes"&&Ea(v.target)&&~Pl.indexOf(v.attributeName))if(v.attributeName==="class"&&ks(v.target)){var B=rt(Wt(v.target)),h=B.prefix,k=B.iconName;v.target.setAttribute(_t,h||p),k&&v.target.setAttribute(Ut,k)}else ws(v.target)&&r(v.target)})}}),ge&&Qe.observe(m,{childList:!0,attributes:!0,characterData:!0,subtree:!0})}}function Es(){Qe&&Qe.disconnect()}function Ns(t){var n=t.getAttribute("style"),a=[];return n&&(a=n.split(";").reduce(function(o,r){var s=r.split(":"),l=s[0],c=s.slice(1);return l&&c.length>0&&(o[l]=c.join(":").trim()),o},{})),a}function $s(t){var n=t.getAttribute("data-prefix"),a=t.getAttribute("data-icon"),o=t.innerText!==void 0?t.innerText.trim():"",r=rt(Wt(t));return r.prefix||(r.prefix=he()),n&&a&&(r.prefix=n,r.iconName=a),r.iconName&&r.prefix||(r.prefix&&o.length>0&&(r.iconName=Zl(r.prefix,t.innerText)||Gt(r.prefix,Bn(t.innerText))),!r.iconName&&M.autoFetchSvg&&t.firstChild&&t.firstChild.nodeType===Node.TEXT_NODE&&(r.iconName=t.firstChild.data)),r}function zs(t){var n=Ne(t.attributes).reduce(function(a,o){return a.name!=="class"&&a.name!=="style"&&(a[o.name]=o.value),a},{});return n}function Ds(){return{iconName:null,prefix:null,transform:ce,symbol:!1,mask:{iconName:null,prefix:null,rest:[]},maskId:null,extra:{classes:[],styles:{},attributes:{}}}}function za(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{styleParser:!0},a=$s(t),o=a.iconName,r=a.prefix,s=a.rest,l=zs(t),c=zt("parseNodeAttributes",{},t),m=n.styleParser?Ns(t):[];return $({iconName:o,prefix:r,transform:ce,mask:{iconName:null,prefix:null,rest:[]},maskId:null,symbol:!1,extra:{classes:s,styles:m,attributes:l}},c)}var Ts=le.styles;function On(t){var n=M.autoReplaceSvg==="nest"?za(t,{styleParser:!1}):za(t);return~n.extra.classes.indexOf(bn)?be("generateLayersText",t,n):be("generateSvgReplacementMutation",t,n)}function As(){return[].concat(se(dn),se(un))}function Da(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;if(!ge)return Promise.resolve();var a=K.documentElement.classList,o=function(v){return a.add("".concat(va,"-").concat(v))},r=function(v){return a.remove("".concat(va,"-").concat(v))},s=M.autoFetchSvg?As():Ga.concat(Object.keys(Ts));s.includes("fa")||s.push("fa");var l=[".".concat(bn,":not([").concat(ke,"])")].concat(s.map(function(p){return".".concat(p,":not([").concat(ke,"])")})).join(", ");if(l.length===0)return Promise.resolve();var c=[];try{c=Ne(t.querySelectorAll(l))}catch{}if(c.length>0)o("pending"),r("complete");else return Promise.resolve();var m=Xt.begin("onTree"),f=c.reduce(function(p,v){try{var B=On(v);B&&p.push(B)}catch(h){vn||h.name==="MissingIcon"&&console.error(h)}return p},[]);return new Promise(function(p,v){Promise.all(f).then(function(B){jn(B,function(){o("active"),o("complete"),r("pending"),typeof n=="function"&&n(),m(),p()})}).catch(function(B){m(),v(B)})})}function Fs(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;On(t).then(function(a){a&&jn([a],n)})}function Ps(t){return function(n){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=(n||{}).icon?n:Dt(n||{}),r=a.mask;return r&&(r=(r||{}).icon?r:Dt(r||{})),t(o,$($({},a),{},{mask:r}))}}var Is=function(n){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=a.transform,r=o===void 0?ce:o,s=a.symbol,l=s===void 0?!1:s,c=a.mask,m=c===void 0?null:c,f=a.maskId,p=f===void 0?null:f,v=a.classes,B=v===void 0?[]:v,h=a.attributes,k=h===void 0?{}:h,g=a.styles,d=g===void 0?{}:g;if(n){var u=n.prefix,i=n.iconName,b=n.icon;return lt($({type:"icon"},n),function(){return we("beforeDOMElementCreation",{iconDefinition:n,params:a}),Kt({icons:{main:Tt(b),mask:m?Tt(m.icon):{found:!1,width:null,height:null,icon:{}}},prefix:u,iconName:i,transform:$($({},ce),r),symbol:l,maskId:p,extra:{attributes:k,styles:d,classes:B}})})}},js={mixout:function(){return{icon:Ps(Is)}},hooks:function(){return{mutationObserverCallbacks:function(a){return a.treeCallback=Da,a.nodeCallback=Fs,a}}},provides:function(n){n.i2svg=function(a){var o=a.node,r=o===void 0?K:o,s=a.callback,l=s===void 0?function(){}:s;return Da(r,l)},n.generateSvgReplacementMutation=function(a,o){var r=o.iconName,s=o.prefix,l=o.transform,c=o.symbol,m=o.mask,f=o.maskId,p=o.extra;return new Promise(function(v,B){Promise.all([At(r,s),m.iconName?At(m.iconName,m.prefix):Promise.resolve({found:!1,width:512,height:512,icon:{}})]).then(function(h){var k=at(h,2),g=k[0],d=k[1];v([a,Kt({icons:{main:g,mask:d},prefix:s,iconName:r,transform:l,symbol:c,maskId:f,extra:p,watchable:!0})])}).catch(B)})},n.generateAbstractIcon=function(a){var o=a.children,r=a.attributes,s=a.main,l=a.transform,c=a.styles,m=nt(c);m.length>0&&(r.style=m);var f;return Yt(l)&&(f=be("generateAbstractTransformGrouping",{main:s,transform:l,containerWidth:s.width,iconWidth:s.width})),o.push(f||s.icon),{children:o,attributes:r}}}},Ls={mixout:function(){return{layer:function(a){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=o.classes,s=r===void 0?[]:r;return lt({type:"layer"},function(){we("beforeDOMElementCreation",{assembler:a,params:o});var l=[];return a(function(c){Array.isArray(c)?c.map(function(m){l=l.concat(m.abstract)}):l=l.concat(c.abstract)}),[{tag:"span",attributes:{class:["".concat(M.cssPrefix,"-layers")].concat(se(s)).join(" ")},children:l}]})}}}},Os={mixout:function(){return{counter:function(a){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};o.title;var r=o.classes,s=r===void 0?[]:r,l=o.attributes,c=l===void 0?{}:l,m=o.styles,f=m===void 0?{}:m;return lt({type:"counter",content:a},function(){return we("beforeDOMElementCreation",{content:a,params:o}),hs({content:a.toString(),extra:{attributes:c,styles:f,classes:["".concat(M.cssPrefix,"-layers-counter")].concat(se(s))}})})}}}},Ms={mixout:function(){return{text:function(a){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=o.transform,s=r===void 0?ce:r,l=o.classes,c=l===void 0?[]:l,m=o.attributes,f=m===void 0?{}:m,p=o.styles,v=p===void 0?{}:p;return lt({type:"text",content:a},function(){return we("beforeDOMElementCreation",{content:a,params:o}),Sa({content:a,transform:$($({},ce),s),extra:{attributes:f,styles:v,classes:["".concat(M.cssPrefix,"-layers-text")].concat(se(c))}})})}}},provides:function(n){n.generateLayersText=function(a,o){var r=o.transform,s=o.extra,l=null,c=null;if(Ya){var m=parseInt(getComputedStyle(a).fontSize,10),f=a.getBoundingClientRect();l=f.width/m,c=f.height/m}return Promise.resolve([a,Sa({content:a.innerHTML,width:l,height:c,transform:r,extra:s,watchable:!0})])}}},Mn=new RegExp('"',"ug"),Ta=[1105920,1112319],Aa=$($($($({},{FontAwesome:{normal:"fas",400:"fas"}}),Nr),El),jr),It=Object.keys(Aa).reduce(function(t,n){return t[n.toLowerCase()]=Aa[n],t},{}),Rs=Object.keys(It).reduce(function(t,n){var a=It[n];return t[n]=a[900]||se(Object.entries(a))[0][1],t},{});function _s(t){var n=t.replace(Mn,"");return Bn(se(n)[0]||"")}function Us(t){var n=t.getPropertyValue("font-feature-settings").includes("ss01"),a=t.getPropertyValue("content"),o=a.replace(Mn,""),r=o.codePointAt(0),s=r>=Ta[0]&&r<=Ta[1],l=o.length===2?o[0]===o[1]:!1;return s||l||n}function qs(t,n){var a=t.replace(/^['"]|['"]$/g,"").toLowerCase(),o=parseInt(n),r=isNaN(o)?"normal":o;return(It[a]||{})[r]||Rs[a]}function Fa(t,n){var a="".concat(Nl).concat(n.replace(":","-"));return new Promise(function(o,r){if(t.getAttribute(a)!==null)return o();var s=Ne(t.children),l=s.filter(function(F){return F.getAttribute(St)===n})[0],c=ve.getComputedStyle(t,n),m=c.getPropertyValue("font-family"),f=m.match(Al),p=c.getPropertyValue("font-weight"),v=c.getPropertyValue("content");if(l&&!f)return t.removeChild(l),o();if(f&&v!=="none"&&v!==""){var B=c.getPropertyValue("content"),h=qs(m,p),k=_s(B),g=f[0].startsWith("FontAwesome"),d=Us(c),u=Gt(h,k),i=u;if(g){var b=es(k);b.iconName&&b.prefix&&(u=b.iconName,h=b.prefix)}if(u&&!d&&(!l||l.getAttribute(_t)!==h||l.getAttribute(Ut)!==i)){t.setAttribute(a,i),l&&t.removeChild(l);var E=Ds(),V=E.extra;V.attributes[St]=n,At(u,h).then(function(F){var I=Kt($($({},E),{},{icons:{main:F,mask:An()},prefix:h,iconName:i,extra:V,watchable:!0})),W=K.createElementNS("http://www.w3.org/2000/svg","svg");n==="::before"?t.insertBefore(W,t.firstChild):t.appendChild(W),W.outerHTML=I.map(function(_){return Ue(_)}).join(`
|
|
557
557
|
`),t.removeAttribute(a),o()}).catch(r)}else o()}else o()})}function Ws(t){return Promise.all([Fa(t,"::before"),Fa(t,"::after")])}function Ys(t){return t.parentNode!==document.head&&!~zl.indexOf(t.tagName.toUpperCase())&&!t.getAttribute(St)&&(!t.parentNode||t.parentNode.tagName!=="svg")}var Hs=function(n){return!!n&&pn.some(function(a){return n.includes(a)})},Gs=function(n){if(!n)return[];var a=new Set,o=n.split(/,(?![^()]*\))/).map(function(m){return m.trim()});o=o.flatMap(function(m){return m.includes("(")?m:m.split(",").map(function(f){return f.trim()})});var r=He(o),s;try{for(r.s();!(s=r.n()).done;){var l=s.value;if(Hs(l)){var c=pn.reduce(function(m,f){return m.replace(f,"")},l);c!==""&&c!=="*"&&a.add(c)}}}catch(m){r.e(m)}finally{r.f()}return a};function Pa(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(ge){var a;if(n)a=t;else if(M.searchPseudoElementsFullScan)a=t.querySelectorAll("*");else{var o=new Set,r=He(document.styleSheets),s;try{for(r.s();!(s=r.n()).done;){var l=s.value;try{var c=He(l.cssRules),m;try{for(c.s();!(m=c.n()).done;){var f=m.value,p=Gs(f.selectorText),v=He(p),B;try{for(v.s();!(B=v.n()).done;){var h=B.value;o.add(h)}}catch(g){v.e(g)}finally{v.f()}}}catch(g){c.e(g)}finally{c.f()}}catch(g){M.searchPseudoElementsWarnings&&console.warn("Font Awesome: cannot parse stylesheet: ".concat(l.href," (").concat(g.message,`)
|
|
558
558
|
If it declares any Font Awesome CSS pseudo-elements, they will not be rendered as SVG icons. Add crossorigin="anonymous" to the <link>, enable searchPseudoElementsFullScan for slower but more thorough DOM parsing, or suppress this warning by setting searchPseudoElementsWarnings to false.`))}}}catch(g){r.e(g)}finally{r.f()}if(!o.size)return;var k=Array.from(o).join(", ");try{a=t.querySelectorAll(k)}catch{}}return new Promise(function(g,d){var u=Ne(a).filter(Ys).map(Ws),i=Xt.begin("searchPseudoElements");Ln(),Promise.all(u).then(function(){i(),Pt(),g()}).catch(function(){i(),Pt(),d()})})}}var Ks={hooks:function(){return{mutationObserverCallbacks:function(a){return a.pseudoElementsCallback=Pa,a}}},provides:function(n){n.pseudoElements2svg=function(a){var o=a.node,r=o===void 0?K:o;M.searchPseudoElements&&Pa(r)}}},Ia=!1,Xs={mixout:function(){return{dom:{unwatch:function(){Ln(),Ia=!0}}}},hooks:function(){return{bootstrap:function(){$a(zt("mutationObserverCallbacks",{}))},noAuto:function(){Es()},watch:function(a){var o=a.observeMutationsRoot;Ia?Pt():$a(zt("mutationObserverCallbacks",{observeMutationsRoot:o}))}}}},ja=function(n){var a={size:16,x:0,y:0,flipX:!1,flipY:!1,rotate:0};return n.toLowerCase().split(" ").reduce(function(o,r){var s=r.toLowerCase().split("-"),l=s[0],c=s.slice(1).join("-");if(l&&c==="h")return o.flipX=!0,o;if(l&&c==="v")return o.flipY=!0,o;if(c=parseFloat(c),isNaN(c))return o;switch(l){case"grow":o.size=o.size+c;break;case"shrink":o.size=o.size-c;break;case"left":o.x=o.x-c;break;case"right":o.x=o.x+c;break;case"up":o.y=o.y-c;break;case"down":o.y=o.y+c;break;case"rotate":o.rotate=o.rotate+c;break}return o},a)},Js={mixout:function(){return{parse:{transform:function(a){return ja(a)}}}},hooks:function(){return{parseNodeAttributes:function(a,o){var r=o.getAttribute("data-fa-transform");return r&&(a.transform=ja(r)),a}}},provides:function(n){n.generateAbstractTransformGrouping=function(a){var o=a.main,r=a.transform,s=a.containerWidth,l=a.iconWidth,c={transform:"translate(".concat(s/2," 256)")},m="translate(".concat(r.x*32,", ").concat(r.y*32,") "),f="scale(".concat(r.size/16*(r.flipX?-1:1),", ").concat(r.size/16*(r.flipY?-1:1),") "),p="rotate(".concat(r.rotate," 0 0)"),v={transform:"".concat(m," ").concat(f," ").concat(p)},B={transform:"translate(".concat(l/2*-1," -256)")},h={outer:c,inner:v,path:B};return{tag:"g",attributes:$({},h.outer),children:[{tag:"g",attributes:$({},h.inner),children:[{tag:o.icon.tag,children:o.icon.children,attributes:$($({},o.icon.attributes),h.path)}]}]}}}},kt={x:0,y:0,width:"100%",height:"100%"};function La(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return t.attributes&&(t.attributes.fill||n)&&(t.attributes.fill="black"),t}function Qs(t){return t.tag==="g"?t.children:[t]}var Zs={hooks:function(){return{parseNodeAttributes:function(a,o){var r=o.getAttribute("data-fa-mask"),s=r?rt(r.split(" ").map(function(l){return l.trim()})):An();return s.prefix||(s.prefix=he()),a.mask=s,a.maskId=o.getAttribute("data-fa-mask-id"),a}}},provides:function(n){n.generateAbstractMask=function(a){var o=a.children,r=a.attributes,s=a.main,l=a.mask,c=a.maskId,m=a.transform,f=s.width,p=s.icon,v=l.width,B=l.icon,h=ql({transform:m,containerWidth:v,iconWidth:f}),k={tag:"rect",attributes:$($({},kt),{},{fill:"white"})},g=p.children?{children:p.children.map(La)}:{},d={tag:"g",attributes:$({},h.inner),children:[La($({tag:p.tag,attributes:$($({},p.attributes),h.path)},g))]},u={tag:"g",attributes:$({},h.outer),children:[d]},i="mask-".concat(c||ba()),b="clip-".concat(c||ba()),E={tag:"mask",attributes:$($({},kt),{},{id:i,maskUnits:"userSpaceOnUse",maskContentUnits:"userSpaceOnUse"}),children:[k,u]},V={tag:"defs",children:[{tag:"clipPath",attributes:{id:b},children:Qs(B)},E]};return o.push(V,{tag:"rect",attributes:$({fill:"currentColor","clip-path":"url(#".concat(b,")"),mask:"url(#".concat(i,")")},kt)}),{children:o,attributes:r}}}},ei={provides:function(n){var a=!1;ve.matchMedia&&(a=ve.matchMedia("(prefers-reduced-motion: reduce)").matches),n.missingIconAbstract=function(){var o=[],r={fill:"currentColor"},s={attributeType:"XML",repeatCount:"indefinite",dur:"2s"};o.push({tag:"path",attributes:$($({},r),{},{d:"M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"})});var l=$($({},s),{},{attributeName:"opacity"}),c={tag:"circle",attributes:$($({},r),{},{cx:"256",cy:"364",r:"28"}),children:[]};return a||c.children.push({tag:"animate",attributes:$($({},s),{},{attributeName:"r",values:"28;14;28;28;14;28;"})},{tag:"animate",attributes:$($({},l),{},{values:"1;0;1;1;0;1;"})}),o.push(c),o.push({tag:"path",attributes:$($({},r),{},{opacity:"1",d:"M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"}),children:a?[]:[{tag:"animate",attributes:$($({},l),{},{values:"1;0;0;0;0;1;"})}]}),a||o.push({tag:"path",attributes:$($({},r),{},{opacity:"0",d:"M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"}),children:[{tag:"animate",attributes:$($({},l),{},{values:"0;0;1;1;0;0;"})}]}),{tag:"g",attributes:{class:"missing"},children:o}}}},ti={hooks:function(){return{parseNodeAttributes:function(a,o){var r=o.getAttribute("data-fa-symbol"),s=r===null?!1:r===""?!0:r;return a.symbol=s,a}}}},ai=[Hl,js,Ls,Os,Ms,Ks,Xs,Js,Zs,ei,ti];cs(ai,{mixoutsTo:ae});ae.noAuto;var Rn=ae.config;ae.library;ae.dom;var Ze=ae.parse;ae.findIconDefinition;ae.toHtml;var ni=ae.icon;ae.layer;var oi=ae.text;ae.counter;function jt(t,n){(n==null||n>t.length)&&(n=t.length);for(var a=0,o=Array(n);a<n;a++)o[a]=t[a];return o}function ri(t){if(Array.isArray(t))return jt(t)}function Q(t,n,a){return(n=ui(n))in t?Object.defineProperty(t,n,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[n]=a,t}function li(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function si(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
559
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Oa(t,n){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);n&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(t,r).enumerable})),a.push.apply(a,o)}return a}function re(t){for(var n=1;n<arguments.length;n++){var a=arguments[n]!=null?arguments[n]:{};n%2?Oa(Object(a),!0).forEach(function(o){Q(t,o,a[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):Oa(Object(a)).forEach(function(o){Object.defineProperty(t,o,Object.getOwnPropertyDescriptor(a,o))})}return t}function ii(t,n){if(t==null)return{};var a,o,r=ci(t,n);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);for(o=0;o<s.length;o++)a=s[o],n.indexOf(a)===-1&&{}.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}function ci(t,n){if(t==null)return{};var a={};for(var o in t)if({}.hasOwnProperty.call(t,o)){if(n.indexOf(o)!==-1)continue;a[o]=t[o]}return a}function Lt(t){return ri(t)||li(t)||mi(t)||si()}function di(t,n){if(typeof t!="object"||!t)return t;var a=t[Symbol.toPrimitive];if(a!==void 0){var o=a.call(t,n);if(typeof o!="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return(n==="string"?String:Number)(t)}function ui(t){var n=di(t,"string");return typeof n=="symbol"?n:n+""}function et(t){"@babel/helpers - typeof";return et=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(n){return typeof n}:function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},et(t)}function mi(t,n){if(t){if(typeof t=="string")return jt(t,n);var a={}.toString.call(t).slice(8,-1);return a==="Object"&&t.constructor&&(a=t.constructor.name),a==="Map"||a==="Set"?Array.from(t):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?jt(t,n):void 0}}function Ie(t,n){return Array.isArray(n)&&n.length>0||!Array.isArray(n)&&n?Q({},t,n):{}}function fi(t){var n,a=(n={"fa-spin":t.spin,"fa-pulse":t.pulse,"fa-fw":t.fixedWidth,"fa-border":t.border,"fa-li":t.listItem,"fa-inverse":t.inverse,"fa-flip":t.flip===!0,"fa-flip-horizontal":t.flip==="horizontal"||t.flip==="both","fa-flip-vertical":t.flip==="vertical"||t.flip==="both"},Q(Q(Q(Q(Q(Q(Q(Q(Q(Q(n,"fa-".concat(t.size),t.size!==null),"fa-rotate-".concat(t.rotation),t.rotation!==null),"fa-rotate-by",t.rotateBy),"fa-pull-".concat(t.pull),t.pull!==null),"fa-swap-opacity",t.swapOpacity),"fa-bounce",t.bounce),"fa-shake",t.shake),"fa-beat",t.beat),"fa-fade",t.fade),"fa-beat-fade",t.beatFade),Q(Q(Q(Q(n,"fa-flash",t.flash),"fa-spin-pulse",t.spinPulse),"fa-spin-reverse",t.spinReverse),"fa-width-auto",t.widthAuto));return Object.keys(a).map(function(o){return a[o]?o:null}).filter(function(o){return o})}var gi=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},_n={exports:{}};(function(t){(function(n){var a=function(u,i,b){if(!f(i)||v(i)||B(i)||h(i)||m(i))return i;var E,V=0,F=0;if(p(i))for(E=[],F=i.length;V<F;V++)E.push(a(u,i[V],b));else{E={};for(var I in i)Object.prototype.hasOwnProperty.call(i,I)&&(E[u(I,b)]=a(u,i[I],b))}return E},o=function(u,i){i=i||{};var b=i.separator||"_",E=i.split||/(?=[A-Z])/;return u.split(E).join(b)},r=function(u){return k(u)?u:(u=u.replace(/[\-_\s]+(.)?/g,function(i,b){return b?b.toUpperCase():""}),u.substr(0,1).toLowerCase()+u.substr(1))},s=function(u){var i=r(u);return i.substr(0,1).toUpperCase()+i.substr(1)},l=function(u,i){return o(u,i).toLowerCase()},c=Object.prototype.toString,m=function(u){return typeof u=="function"},f=function(u){return u===Object(u)},p=function(u){return c.call(u)=="[object Array]"},v=function(u){return c.call(u)=="[object Date]"},B=function(u){return c.call(u)=="[object RegExp]"},h=function(u){return c.call(u)=="[object Boolean]"},k=function(u){return u=u-0,u===u},g=function(u,i){var b=i&&"process"in i?i.process:i;return typeof b!="function"?u:function(E,V){return b(E,u,V)}},d={camelize:r,decamelize:l,pascalize:s,depascalize:l,camelizeKeys:function(u,i){return a(g(r,i),u)},decamelizeKeys:function(u,i){return a(g(l,i),u,i)},pascalizeKeys:function(u,i){return a(g(s,i),u)},depascalizeKeys:function(){return this.decamelizeKeys.apply(this,arguments)}};t.exports?t.exports=d:n.humps=d})(gi)})(_n);var pi=_n.exports,vi=["class","style"];function hi(t){return t.split(";").map(function(n){return n.trim()}).filter(function(n){return n}).reduce(function(n,a){var o=a.indexOf(":"),r=pi.camelize(a.slice(0,o)),s=a.slice(o+1).trim();return n[r]=s,n},{})}function bi(t){return t.split(/\s+/).reduce(function(n,a){return n[a]=!0,n},{})}function Qt(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(typeof t=="string")return t;var o=(t.children||[]).map(function(m){return Qt(m)}),r=Object.keys(t.attributes||{}).reduce(function(m,f){var p=t.attributes[f];switch(f){case"class":m.class=bi(p);break;case"style":m.style=hi(p);break;default:m.attrs[f]=p}return m},{attrs:{},class:{},style:{}});a.class;var s=a.style,l=s===void 0?{}:s,c=ii(a,vi);return e.h(t.tag,re(re(re({},n),{},{class:r.class,style:re(re({},r.style),l)},r.attrs),c),o)}var Un=!1;try{Un=process.env.NODE_ENV==="production"}catch{}function yi(){if(!Un&&console&&typeof console.error=="function"){var t;(t=console).error.apply(t,arguments)}}function Ma(t){if(t&&et(t)==="object"&&t.prefix&&t.iconName&&t.icon)return t;if(Ze.icon)return Ze.icon(t);if(t===null)return null;if(et(t)==="object"&&t.prefix&&t.iconName)return t;if(Array.isArray(t)&&t.length===2)return{prefix:t[0],iconName:t[1]};if(typeof t=="string")return{prefix:"fas",iconName:t}}var xi=e.defineComponent({name:"FontAwesomeIcon",props:{border:{type:Boolean,default:!1},fixedWidth:{type:Boolean,default:!1},flip:{type:[Boolean,String],default:!1,validator:function(n){return[!0,!1,"horizontal","vertical","both"].indexOf(n)>-1}},icon:{type:[Object,Array,String],required:!0},mask:{type:[Object,Array,String],default:null},maskId:{type:String,default:null},listItem:{type:Boolean,default:!1},pull:{type:String,default:null,validator:function(n){return["right","left"].indexOf(n)>-1}},pulse:{type:Boolean,default:!1},rotation:{type:[String,Number],default:null,validator:function(n){return[90,180,270].indexOf(Number.parseInt(n,10))>-1}},rotateBy:{type:Boolean,default:!1},swapOpacity:{type:Boolean,default:!1},size:{type:String,default:null,validator:function(n){return["2xs","xs","sm","lg","xl","2xl","1x","2x","3x","4x","5x","6x","7x","8x","9x","10x"].indexOf(n)>-1}},spin:{type:Boolean,default:!1},transform:{type:[String,Object],default:null},symbol:{type:[Boolean,String],default:!1},title:{type:String,default:null},titleId:{type:String,default:null},inverse:{type:Boolean,default:!1},bounce:{type:Boolean,default:!1},shake:{type:Boolean,default:!1},beat:{type:Boolean,default:!1},fade:{type:Boolean,default:!1},beatFade:{type:Boolean,default:!1},flash:{type:Boolean,default:!1},spinPulse:{type:Boolean,default:!1},spinReverse:{type:Boolean,default:!1},widthAuto:{type:Boolean,default:!1}},setup:function(n,a){var o=a.attrs,r=e.computed(function(){return Ma(n.icon)}),s=e.computed(function(){return Ie("classes",fi(n))}),l=e.computed(function(){return Ie("transform",typeof n.transform=="string"?Ze.transform(n.transform):n.transform)}),c=e.computed(function(){return Ie("mask",Ma(n.mask))}),m=e.computed(function(){var p=re(re(re(re({},s.value),l.value),c.value),{},{symbol:n.symbol,maskId:n.maskId});return p.title=n.title,p.titleId=n.titleId,ni(r.value,p)});e.watch(m,function(p){if(!p)return yi("Could not find one or more icon(s)",r.value,c.value)},{immediate:!0});var f=e.computed(function(){return m.value?Qt(m.value.abstract[0],{},o):null});return function(){return f.value}}});e.defineComponent({name:"FontAwesomeLayers",props:{fixedWidth:{type:Boolean,default:!1}},setup:function(n,a){var o=a.slots,r=Rn.familyPrefix,s=e.computed(function(){return["".concat(r,"-layers")].concat(Lt(n.fixedWidth?["".concat(r,"-fw")]:[]))});return function(){return e.h("div",{class:s.value},o.default?o.default():[])}}});e.defineComponent({name:"FontAwesomeLayersText",props:{value:{type:[String,Number],default:""},transform:{type:[String,Object],default:null},counter:{type:Boolean,default:!1},position:{type:String,default:null,validator:function(n){return["bottom-left","bottom-right","top-left","top-right"].indexOf(n)>-1}}},setup:function(n,a){var o=a.attrs,r=Rn.familyPrefix,s=e.computed(function(){return Ie("classes",[].concat(Lt(n.counter?["".concat(r,"-layers-counter")]:[]),Lt(n.position?["".concat(r,"-layers-").concat(n.position)]:[])))}),l=e.computed(function(){return Ie("transform",typeof n.transform=="string"?Ze.transform(n.transform):n.transform)}),c=e.computed(function(){var f=oi(n.value.toString(),re(re({},l.value),s.value)),p=f.abstract;return n.counter&&(p[0].attributes.class=p[0].attributes.class.replace("fa-layers-text","")),p[0]}),m=e.computed(function(){return Qt(c.value,{},o)});return function(){return m.value}}});const j={__name:"Icon",props:{icon:{type:String,required:!0},prefix:{type:String,default:"fas"},size:{type:String,default:"md"},color:String,ariaLabel:String},setup(t){const n=t,a=e.computed(()=>({xs:"xs",sm:"sm",md:"lg",lg:"xl",xl:"2x",xxl:"3x"})[n.size]||"lg"),o=e.computed(()=>n.color?`text-${n.color}`:"text-current"),r=e.computed(()=>[o.value,"inline-block"]);return(s,l)=>(e.openBlock(),e.createBlock(e.unref(xi),{icon:[t.prefix,t.icon],size:a.value,class:e.normalizeClass(r.value),"aria-hidden":!t.ariaLabel,"aria-label":t.ariaLabel,role:t.ariaLabel?"img":void 0},null,8,["icon","size","class","aria-hidden","aria-label","role"]))}},ki=["src","alt"],qn={__name:"Avatar",props:{src:String,alt:String,initials:String,size:{type:String,default:"md",validator:t=>["xs","sm","md","lg","xl"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","outline"].includes(t)},class:String},setup(t){const n=t,a=e.ref(!1),o=z.cva("relative flex shrink-0 overflow-hidden rounded-full",{variants:{size:{xs:"h-6 w-6",sm:"h-8 w-8",md:"h-10 w-10",lg:"h-12 w-12",xl:"h-16 w-16"},variant:{default:"bg-muted",outline:"border-2 border-border bg-background"}}}),r=e.computed(()=>y(o({size:n.size,variant:n.variant}),n.class)),s=e.computed(()=>"aspect-square h-full w-full object-cover"),l=e.computed(()=>y("flex h-full w-full items-center justify-center rounded-full bg-muted font-medium text-muted-foreground",{"text-xs":n.size==="xs","text-sm":n.size==="sm","text-base":n.size==="md","text-lg":n.size==="lg","text-xl":n.size==="xl"})),c=e.computed(()=>y("h-4 w-4 text-muted-foreground",{"h-3 w-3":n.size==="xs","h-4 w-4":n.size==="sm"||n.size==="md","h-5 w-5":n.size==="lg","h-6 w-6":n.size==="xl"})),m=()=>{a.value=!0};return(f,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(r.value)},[t.src?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.src,alt:t.alt,class:e.normalizeClass(s.value),onError:m},null,42,ki)):t.initials?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(l.value)},e.toDisplayString(t.initials),3)):(e.openBlock(),e.createBlock(j,{key:2,name:"User",class:e.normalizeClass(c.value)},null,8,["class"]))],2))}},wi=["aria-label"],Wn=Object.assign({inheritAttrs:!1},{__name:"Badge",props:{variant:{type:String,default:"default",validator:t=>["default","secondary","destructive","primary","outline","success","warning","info","ghost","link","subtle","dark","light","primaryOutline","destructiveOutline","successOutline","gradient"].includes(t)},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},shape:{type:String,default:"rounded",validator:t=>["rounded","pill","square"].includes(t)},icon:{type:[String,Object],default:null},dismissible:{type:Boolean,default:!1},dismissLabel:{type:String,default:"Dismiss"}},emits:["dismiss"],setup(t,{emit:n}){const a=t,o=n,r=()=>o("dismiss"),s=z.cva("inline-flex items-center font-medium border transition-all duration-200",{variants:{variant:{default:"border border-blue-200 bg-blue-50 text-blue-800 hover:bg-blue-100 dark:border-blue-200 dark:bg-blue-50 dark:text-blue-900",secondary:"border border-gray-200 bg-gray-50 text-gray-800 hover:bg-gray-100 dark:border-gray-200 dark:bg-gray-50 dark:text-gray-900",destructive:"border border-red-200 bg-red-50 text-red-800 hover:bg-red-100 dark:border-red-200 dark:bg-red-50 dark:text-red-900",primary:"border border-blue-200 bg-blue-50 text-blue-800 hover:bg-blue-100 dark:border-blue-200 dark:bg-blue-50 dark:text-blue-900",outline:"text-foreground border",success:"border border-green-200 bg-green-50 text-green-800 dark:border-green-200 dark:bg-green-50 dark:text-green-900",warning:"border border-yellow-200 bg-yellow-50 text-yellow-800 hover:bg-yellow-100 dark:border-yellow-200 dark:bg-yellow-50 dark:text-yellow-900",info:"border border-blue-200 bg-blue-50 text-blue-800 hover:bg-blue-100 dark:border-blue-200 dark:bg-blue-50 dark:text-blue-900",ghost:"bg-transparent text-gray-700 hover:bg-gray-100",link:"text-blue-600 hover:underline",subtle:"bg-gray-100 text-gray-800 hover:bg-gray-200",dark:"bg-gray-900 text-white hover:bg-black",light:"bg-gray-50 text-gray-800 border border-gray-200 hover:bg-gray-100",primaryOutline:"border border-blue-500 text-blue-500 bg-transparent hover:bg-blue-50",destructiveOutline:"border border-red-500 text-red-500 bg-transparent hover:bg-red-50",successOutline:"border border-green-500 text-green-500 bg-transparent hover:bg-green-50",gradient:"bg-gradient-to-r from-blue-400 to-purple-500 text-white hover:from-blue-500 hover:to-purple-600"},size:{sm:"px-2 py-0.5 text-xs",md:"px-2.5 py-1 text-sm",lg:"px-3 py-1.5 text-base"},shape:{rounded:"rounded-md",pill:"rounded-full",square:"rounded-none"}},defaultVariants:{variant:"default",size:"md",shape:"rounded"}}),l=e.computed(()=>["mr-1",{sm:"w-3 h-3",md:"w-4 h-4",lg:"w-5 h-5"}[a.size]]);return(c,m)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(e.unref(y)(e.unref(s)({variant:t.variant,size:t.size,shape:t.shape}),c.$attrs.class))},[t.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.icon),{key:0,class:e.normalizeClass(l.value)},null,8,["class"])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default"),t.dismissible?(e.openBlock(),e.createElementBlock("button",{key:1,class:"ml-1 hover:bg-black/10 rounded-full p-0.5 transition-colors","aria-label":t.dismissLabel,onClick:r},[e.createVNode(j,{icon:"xmark",class:"w-3 h-3"})],8,wi)):e.createCommentVNode("",!0)],2))}}),Ci=["disabled","aria-disabled","aria-busy"],Bi={key:0,class:"animate-spin mr-2 h-4 w-4 text-current",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},Si={key:2},Z=Object.assign({inheritAttrs:!1},{__name:"Button",props:{variant:{type:String,default:"default",validator:t=>["default","destructive","outline","secondary","ghost","link","success","warning","info","subtle","dark","light","primaryOutline","destructiveOutline","successOutline","gradient"].includes(t)},size:{type:String,default:"xs",validator:t=>["default","xs","sm","lg","icon"].includes(t)},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},loadingText:{type:String,default:null}},setup(t){const n=z.cva("inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-500 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-blue-600 text-white hover:bg-blue-700",destructive:"bg-red-600 text-white hover:bg-red-700",outline:"border border-gray-300 bg-white text-gray-900 hover:bg-gray-100",secondary:"bg-gray-600 text-white hover:bg-gray-700",ghost:"bg-transparent text-gray-700 hover:bg-gray-100",link:"text-blue-600 hover:underline",success:"bg-green-600 text-white hover:bg-green-700",warning:"bg-yellow-500 text-black hover:bg-yellow-600",info:"bg-cyan-600 text-white hover:bg-cyan-700",subtle:"bg-gray-100 text-gray-800 hover:bg-gray-200",dark:"bg-gray-900 text-white hover:bg-black",light:"bg-gray-50 text-gray-800 border border-gray-200 hover:bg-gray-100",primaryOutline:"border border-blue-600 text-blue-600 bg-transparent hover:bg-blue-50",destructiveOutline:"border border-red-600 text-red-600 bg-transparent hover:bg-red-50",successOutline:"border border-green-600 text-green-600 bg-transparent hover:bg-green-50",gradient:"bg-gradient-to-r from-blue-500 to-purple-600 text-white hover:from-blue-600 hover:to-purple-700"},size:{default:"h-10 px-4 py-2",xs:"h-7 rounded-md px-1",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}});return(a,o)=>(e.openBlock(),e.createElementBlock("button",e.mergeProps({class:e.unref(y)(e.unref(n)({variant:t.variant,size:t.size}),a.$attrs.class),disabled:t.disabled||t.loading,"aria-disabled":t.disabled||t.loading,"aria-busy":t.loading},a.$attrs),[t.loading?(e.openBlock(),e.createElementBlock("svg",Bi,[...o[0]||(o[0]=[e.createElementVNode("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e.createElementVNode("path",{class:"opacity-75",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-width":"4",d:"M4 12a8 8 0 018-8"},null,-1)])])):e.createCommentVNode("",!0),t.loading?e.createCommentVNode("",!0):e.renderSlot(a.$slots,"icon",{key:1}),t.loading&&t.loadingText?(e.openBlock(),e.createElementBlock("span",Si,e.toDisplayString(t.loadingText),1)):e.renderSlot(a.$slots,"default",{key:3})],16,Ci))}}),Vi={class:"flex items-center gap-3"},Ei={class:"relative"},Ni=["id","checked","indeterminate","disabled","required","aria-describedby"],$i={class:"flex-1"},zi=["for"],st={__name:"Checkbox",props:{modelValue:{type:[Boolean,Array],default:!1},value:{type:[String,Number,Boolean],default:null},label:{type:String,default:null},description:{type:String,default:null},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","error"].includes(t)},id:{type:String,default:null},error:{type:String,default:null}},emits:["update:modelValue","change"],setup(t,{emit:n}){const a={template:`
|
|
559
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Oa(t,n){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);n&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(t,r).enumerable})),a.push.apply(a,o)}return a}function re(t){for(var n=1;n<arguments.length;n++){var a=arguments[n]!=null?arguments[n]:{};n%2?Oa(Object(a),!0).forEach(function(o){Q(t,o,a[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):Oa(Object(a)).forEach(function(o){Object.defineProperty(t,o,Object.getOwnPropertyDescriptor(a,o))})}return t}function ii(t,n){if(t==null)return{};var a,o,r=ci(t,n);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);for(o=0;o<s.length;o++)a=s[o],n.indexOf(a)===-1&&{}.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}function ci(t,n){if(t==null)return{};var a={};for(var o in t)if({}.hasOwnProperty.call(t,o)){if(n.indexOf(o)!==-1)continue;a[o]=t[o]}return a}function Lt(t){return ri(t)||li(t)||mi(t)||si()}function di(t,n){if(typeof t!="object"||!t)return t;var a=t[Symbol.toPrimitive];if(a!==void 0){var o=a.call(t,n);if(typeof o!="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return(n==="string"?String:Number)(t)}function ui(t){var n=di(t,"string");return typeof n=="symbol"?n:n+""}function et(t){"@babel/helpers - typeof";return et=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(n){return typeof n}:function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},et(t)}function mi(t,n){if(t){if(typeof t=="string")return jt(t,n);var a={}.toString.call(t).slice(8,-1);return a==="Object"&&t.constructor&&(a=t.constructor.name),a==="Map"||a==="Set"?Array.from(t):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?jt(t,n):void 0}}function Ie(t,n){return Array.isArray(n)&&n.length>0||!Array.isArray(n)&&n?Q({},t,n):{}}function fi(t){var n,a=(n={"fa-spin":t.spin,"fa-pulse":t.pulse,"fa-fw":t.fixedWidth,"fa-border":t.border,"fa-li":t.listItem,"fa-inverse":t.inverse,"fa-flip":t.flip===!0,"fa-flip-horizontal":t.flip==="horizontal"||t.flip==="both","fa-flip-vertical":t.flip==="vertical"||t.flip==="both"},Q(Q(Q(Q(Q(Q(Q(Q(Q(Q(n,"fa-".concat(t.size),t.size!==null),"fa-rotate-".concat(t.rotation),t.rotation!==null),"fa-rotate-by",t.rotateBy),"fa-pull-".concat(t.pull),t.pull!==null),"fa-swap-opacity",t.swapOpacity),"fa-bounce",t.bounce),"fa-shake",t.shake),"fa-beat",t.beat),"fa-fade",t.fade),"fa-beat-fade",t.beatFade),Q(Q(Q(Q(n,"fa-flash",t.flash),"fa-spin-pulse",t.spinPulse),"fa-spin-reverse",t.spinReverse),"fa-width-auto",t.widthAuto));return Object.keys(a).map(function(o){return a[o]?o:null}).filter(function(o){return o})}var gi=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},_n={exports:{}};(function(t){(function(n){var a=function(u,i,b){if(!f(i)||v(i)||B(i)||h(i)||m(i))return i;var E,V=0,F=0;if(p(i))for(E=[],F=i.length;V<F;V++)E.push(a(u,i[V],b));else{E={};for(var I in i)Object.prototype.hasOwnProperty.call(i,I)&&(E[u(I,b)]=a(u,i[I],b))}return E},o=function(u,i){i=i||{};var b=i.separator||"_",E=i.split||/(?=[A-Z])/;return u.split(E).join(b)},r=function(u){return k(u)?u:(u=u.replace(/[\-_\s]+(.)?/g,function(i,b){return b?b.toUpperCase():""}),u.substr(0,1).toLowerCase()+u.substr(1))},s=function(u){var i=r(u);return i.substr(0,1).toUpperCase()+i.substr(1)},l=function(u,i){return o(u,i).toLowerCase()},c=Object.prototype.toString,m=function(u){return typeof u=="function"},f=function(u){return u===Object(u)},p=function(u){return c.call(u)=="[object Array]"},v=function(u){return c.call(u)=="[object Date]"},B=function(u){return c.call(u)=="[object RegExp]"},h=function(u){return c.call(u)=="[object Boolean]"},k=function(u){return u=u-0,u===u},g=function(u,i){var b=i&&"process"in i?i.process:i;return typeof b!="function"?u:function(E,V){return b(E,u,V)}},d={camelize:r,decamelize:l,pascalize:s,depascalize:l,camelizeKeys:function(u,i){return a(g(r,i),u)},decamelizeKeys:function(u,i){return a(g(l,i),u,i)},pascalizeKeys:function(u,i){return a(g(s,i),u)},depascalizeKeys:function(){return this.decamelizeKeys.apply(this,arguments)}};t.exports?t.exports=d:n.humps=d})(gi)})(_n);var pi=_n.exports,vi=["class","style"];function hi(t){return t.split(";").map(function(n){return n.trim()}).filter(function(n){return n}).reduce(function(n,a){var o=a.indexOf(":"),r=pi.camelize(a.slice(0,o)),s=a.slice(o+1).trim();return n[r]=s,n},{})}function bi(t){return t.split(/\s+/).reduce(function(n,a){return n[a]=!0,n},{})}function Qt(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(typeof t=="string")return t;var o=(t.children||[]).map(function(m){return Qt(m)}),r=Object.keys(t.attributes||{}).reduce(function(m,f){var p=t.attributes[f];switch(f){case"class":m.class=bi(p);break;case"style":m.style=hi(p);break;default:m.attrs[f]=p}return m},{attrs:{},class:{},style:{}});a.class;var s=a.style,l=s===void 0?{}:s,c=ii(a,vi);return e.h(t.tag,re(re(re({},n),{},{class:r.class,style:re(re({},r.style),l)},r.attrs),c),o)}var Un=!1;try{Un=process.env.NODE_ENV==="production"}catch{}function yi(){if(!Un&&console&&typeof console.error=="function"){var t;(t=console).error.apply(t,arguments)}}function Ma(t){if(t&&et(t)==="object"&&t.prefix&&t.iconName&&t.icon)return t;if(Ze.icon)return Ze.icon(t);if(t===null)return null;if(et(t)==="object"&&t.prefix&&t.iconName)return t;if(Array.isArray(t)&&t.length===2)return{prefix:t[0],iconName:t[1]};if(typeof t=="string")return{prefix:"fas",iconName:t}}var xi=e.defineComponent({name:"FontAwesomeIcon",props:{border:{type:Boolean,default:!1},fixedWidth:{type:Boolean,default:!1},flip:{type:[Boolean,String],default:!1,validator:function(n){return[!0,!1,"horizontal","vertical","both"].indexOf(n)>-1}},icon:{type:[Object,Array,String],required:!0},mask:{type:[Object,Array,String],default:null},maskId:{type:String,default:null},listItem:{type:Boolean,default:!1},pull:{type:String,default:null,validator:function(n){return["right","left"].indexOf(n)>-1}},pulse:{type:Boolean,default:!1},rotation:{type:[String,Number],default:null,validator:function(n){return[90,180,270].indexOf(Number.parseInt(n,10))>-1}},rotateBy:{type:Boolean,default:!1},swapOpacity:{type:Boolean,default:!1},size:{type:String,default:null,validator:function(n){return["2xs","xs","sm","lg","xl","2xl","1x","2x","3x","4x","5x","6x","7x","8x","9x","10x"].indexOf(n)>-1}},spin:{type:Boolean,default:!1},transform:{type:[String,Object],default:null},symbol:{type:[Boolean,String],default:!1},title:{type:String,default:null},titleId:{type:String,default:null},inverse:{type:Boolean,default:!1},bounce:{type:Boolean,default:!1},shake:{type:Boolean,default:!1},beat:{type:Boolean,default:!1},fade:{type:Boolean,default:!1},beatFade:{type:Boolean,default:!1},flash:{type:Boolean,default:!1},spinPulse:{type:Boolean,default:!1},spinReverse:{type:Boolean,default:!1},widthAuto:{type:Boolean,default:!1}},setup:function(n,a){var o=a.attrs,r=e.computed(function(){return Ma(n.icon)}),s=e.computed(function(){return Ie("classes",fi(n))}),l=e.computed(function(){return Ie("transform",typeof n.transform=="string"?Ze.transform(n.transform):n.transform)}),c=e.computed(function(){return Ie("mask",Ma(n.mask))}),m=e.computed(function(){var p=re(re(re(re({},s.value),l.value),c.value),{},{symbol:n.symbol,maskId:n.maskId});return p.title=n.title,p.titleId=n.titleId,ni(r.value,p)});e.watch(m,function(p){if(!p)return yi("Could not find one or more icon(s)",r.value,c.value)},{immediate:!0});var f=e.computed(function(){return m.value?Qt(m.value.abstract[0],{},o):null});return function(){return f.value}}});e.defineComponent({name:"FontAwesomeLayers",props:{fixedWidth:{type:Boolean,default:!1}},setup:function(n,a){var o=a.slots,r=Rn.familyPrefix,s=e.computed(function(){return["".concat(r,"-layers")].concat(Lt(n.fixedWidth?["".concat(r,"-fw")]:[]))});return function(){return e.h("div",{class:s.value},o.default?o.default():[])}}});e.defineComponent({name:"FontAwesomeLayersText",props:{value:{type:[String,Number],default:""},transform:{type:[String,Object],default:null},counter:{type:Boolean,default:!1},position:{type:String,default:null,validator:function(n){return["bottom-left","bottom-right","top-left","top-right"].indexOf(n)>-1}}},setup:function(n,a){var o=a.attrs,r=Rn.familyPrefix,s=e.computed(function(){return Ie("classes",[].concat(Lt(n.counter?["".concat(r,"-layers-counter")]:[]),Lt(n.position?["".concat(r,"-layers-").concat(n.position)]:[])))}),l=e.computed(function(){return Ie("transform",typeof n.transform=="string"?Ze.transform(n.transform):n.transform)}),c=e.computed(function(){var f=oi(n.value.toString(),re(re({},l.value),s.value)),p=f.abstract;return n.counter&&(p[0].attributes.class=p[0].attributes.class.replace("fa-layers-text","")),p[0]}),m=e.computed(function(){return Qt(c.value,{},o)});return function(){return m.value}}});const j={__name:"Icon",props:{icon:{type:String,required:!0},prefix:{type:String,default:"fas"},size:{type:String,default:"md"},color:String,ariaLabel:String},setup(t){const n=t,a=e.computed(()=>({xs:"xs",sm:"sm",md:"lg",lg:"xl",xl:"2x",xxl:"3x"})[n.size]||"lg"),o=e.computed(()=>n.color?`text-${n.color}`:"text-current"),r=e.computed(()=>[o.value,"inline-block"]);return(s,l)=>(e.openBlock(),e.createBlock(e.unref(xi),{icon:[t.prefix,t.icon],size:a.value,class:e.normalizeClass(r.value),"aria-hidden":!t.ariaLabel,"aria-label":t.ariaLabel,role:t.ariaLabel?"img":void 0},null,8,["icon","size","class","aria-hidden","aria-label","role"]))}},ki=["src","alt"],qn={__name:"Avatar",props:{src:String,alt:String,initials:String,size:{type:String,default:"md",validator:t=>["xs","sm","md","lg","xl"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","outline"].includes(t)},class:String},setup(t){const n=t,a=e.ref(!1),o=z.cva("relative flex shrink-0 overflow-hidden rounded-full",{variants:{size:{xs:"h-6 w-6",sm:"h-8 w-8",md:"h-10 w-10",lg:"h-12 w-12",xl:"h-16 w-16"},variant:{default:"bg-muted",outline:"border-2 border-border bg-background"}}}),r=e.computed(()=>y(o({size:n.size,variant:n.variant}),n.class)),s=e.computed(()=>"aspect-square h-full w-full object-cover"),l=e.computed(()=>y("flex h-full w-full items-center justify-center rounded-full bg-muted font-medium text-muted-foreground",{"text-xs":n.size==="xs","text-sm":n.size==="sm","text-base":n.size==="md","text-lg":n.size==="lg","text-xl":n.size==="xl"})),c=e.computed(()=>y("h-4 w-4 text-muted-foreground",{"h-3 w-3":n.size==="xs","h-4 w-4":n.size==="sm"||n.size==="md","h-5 w-5":n.size==="lg","h-6 w-6":n.size==="xl"})),m=()=>{a.value=!0};return(f,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(r.value)},[t.src?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.src,alt:t.alt,class:e.normalizeClass(s.value),onError:m},null,42,ki)):t.initials?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(l.value)},e.toDisplayString(t.initials),3)):(e.openBlock(),e.createBlock(j,{key:2,name:"User",class:e.normalizeClass(c.value)},null,8,["class"]))],2))}},wi=["aria-label"],Wn=Object.assign({inheritAttrs:!1},{__name:"Badge",props:{variant:{type:String,default:"default",validator:t=>["default","secondary","danger","primary","outline","success","warning","info","ghost","link","subtle","dark","light","primaryOutline","dangerOutline","successOutline","gradient"].includes(t)},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},shape:{type:String,default:"rounded",validator:t=>["rounded","pill","square"].includes(t)},icon:{type:[String,Object],default:null},dismissible:{type:Boolean,default:!1},dismissLabel:{type:String,default:"Dismiss"}},emits:["dismiss"],setup(t,{emit:n}){const a=t,o=n,r=()=>o("dismiss"),s=z.cva("inline-flex items-center font-medium border transition-all duration-200",{variants:{variant:{default:"border border-blue-200 bg-blue-50 text-blue-800 hover:bg-blue-100 dark:border-blue-200 dark:bg-blue-50 dark:text-blue-900",secondary:"border border-gray-200 bg-gray-50 text-gray-800 hover:bg-gray-100 dark:border-gray-200 dark:bg-gray-50 dark:text-gray-900",danger:"border border-red-200 bg-red-50 text-red-800 hover:bg-red-100 dark:border-red-200 dark:bg-red-50 dark:text-red-900",primary:"border border-blue-200 bg-blue-50 text-blue-800 hover:bg-blue-100 dark:border-blue-200 dark:bg-blue-50 dark:text-blue-900",outline:"text-foreground border",success:"border border-green-200 bg-green-50 text-green-800 dark:border-green-200 dark:bg-green-50 dark:text-green-900",warning:"border border-yellow-200 bg-yellow-50 text-yellow-800 hover:bg-yellow-100 dark:border-yellow-200 dark:bg-yellow-50 dark:text-yellow-900",info:"border border-blue-200 bg-blue-50 text-blue-800 hover:bg-blue-100 dark:border-blue-200 dark:bg-blue-50 dark:text-blue-900",ghost:"bg-transparent text-gray-700 hover:bg-gray-100",link:"text-blue-600 hover:underline",subtle:"bg-gray-100 text-gray-800 hover:bg-gray-200",dark:"bg-gray-900 text-white hover:bg-black",light:"bg-gray-50 text-gray-800 border border-gray-200 hover:bg-gray-100",primaryOutline:"border border-blue-500 text-blue-500 bg-transparent hover:bg-blue-50",dangerOutline:"border border-red-500 text-red-500 bg-transparent hover:bg-red-50",successOutline:"border border-green-500 text-green-500 bg-transparent hover:bg-green-50",gradient:"bg-gradient-to-r from-blue-400 to-purple-500 text-white hover:from-blue-500 hover:to-purple-600"},size:{sm:"px-2 py-0.5 text-xs",md:"px-2.5 py-1 text-sm",lg:"px-3 py-1.5 text-base"},shape:{rounded:"rounded-md",pill:"rounded-full",square:"rounded-none"}},defaultVariants:{variant:"default",size:"md",shape:"rounded"}}),l=e.computed(()=>["mr-1",{sm:"w-3 h-3",md:"w-4 h-4",lg:"w-5 h-5"}[a.size]]);return(c,m)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(e.unref(y)(e.unref(s)({variant:t.variant,size:t.size,shape:t.shape}),c.$attrs.class))},[t.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.icon),{key:0,class:e.normalizeClass(l.value)},null,8,["class"])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default"),t.dismissible?(e.openBlock(),e.createElementBlock("button",{key:1,class:"ml-1 hover:bg-black/10 rounded-full p-0.5 transition-colors","aria-label":t.dismissLabel,onClick:r},[e.createVNode(j,{icon:"xmark",class:"w-3 h-3"})],8,wi)):e.createCommentVNode("",!0)],2))}}),Ci=["disabled","aria-disabled","aria-busy"],Bi={key:0,class:"animate-spin mr-2 h-4 w-4 text-current",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},Si={key:2},Z=Object.assign({inheritAttrs:!1},{__name:"Button",props:{variant:{type:String,default:"default",validator:t=>["default","danger","outline","secondary","ghost","link","success","warning","info","subtle","dark","light","primaryOutline","dangerOutline","successOutline","gradient"].includes(t)},size:{type:String,default:"xs",validator:t=>["default","xs","sm","lg","icon"].includes(t)},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},loadingText:{type:String,default:null}},setup(t){const n=z.cva("inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-500 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-blue-600 text-white hover:bg-blue-700",danger:"bg-red-600 text-white hover:bg-red-700",outline:"border border-gray-300 bg-white text-gray-900 hover:bg-gray-100",secondary:"bg-gray-600 text-white hover:bg-gray-700",ghost:"bg-transparent text-gray-700 hover:bg-gray-100",link:"text-blue-600 hover:underline",success:"bg-green-600 text-white hover:bg-green-700",warning:"bg-yellow-500 text-black hover:bg-yellow-600",info:"bg-cyan-600 text-white hover:bg-cyan-700",subtle:"bg-gray-100 text-gray-800 hover:bg-gray-200",dark:"bg-gray-900 text-white hover:bg-black",light:"bg-gray-50 text-gray-800 border border-gray-200 hover:bg-gray-100",primaryOutline:"border border-blue-600 text-blue-600 bg-transparent hover:bg-blue-50",dangerOutline:"border border-red-600 text-red-600 bg-transparent hover:bg-red-50",successOutline:"border border-green-600 text-green-600 bg-transparent hover:bg-green-50",gradient:"bg-gradient-to-r from-blue-500 to-purple-600 text-white hover:from-blue-600 hover:to-purple-700"},size:{default:"h-10 px-4 py-2",xs:"h-7 rounded-md px-1",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}});return(a,o)=>(e.openBlock(),e.createElementBlock("button",e.mergeProps({class:e.unref(y)(e.unref(n)({variant:t.variant,size:t.size}),a.$attrs.class),disabled:t.disabled||t.loading,"aria-disabled":t.disabled||t.loading,"aria-busy":t.loading},a.$attrs),[t.loading?(e.openBlock(),e.createElementBlock("svg",Bi,[...o[0]||(o[0]=[e.createElementVNode("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e.createElementVNode("path",{class:"opacity-75",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-width":"4",d:"M4 12a8 8 0 018-8"},null,-1)])])):e.createCommentVNode("",!0),t.loading?e.createCommentVNode("",!0):e.renderSlot(a.$slots,"icon",{key:1}),t.loading&&t.loadingText?(e.openBlock(),e.createElementBlock("span",Si,e.toDisplayString(t.loadingText),1)):e.renderSlot(a.$slots,"default",{key:3})],16,Ci))}}),Vi={class:"flex items-center gap-3"},Ei={class:"relative"},Ni=["id","checked","indeterminate","disabled","required","aria-describedby"],$i={class:"flex-1"},zi=["for"],st={__name:"Checkbox",props:{modelValue:{type:[Boolean,Array],default:!1},value:{type:[String,Number,Boolean],default:null},label:{type:String,default:null},description:{type:String,default:null},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","error"].includes(t)},id:{type:String,default:null},error:{type:String,default:null}},emits:["update:modelValue","change"],setup(t,{emit:n}){const a={template:`
|
|
560
560
|
<svg fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor">
|
|
561
561
|
<path stroke-linecap="round" stroke-linejoin="round" d="m4.5 12.75 6 6 9-13.5" />
|
|
562
562
|
</svg>
|
|
@@ -564,7 +564,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
564
564
|
<svg fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor">
|
|
565
565
|
<path stroke-linecap="round" stroke-linejoin="round" d="M5 12h14" />
|
|
566
566
|
</svg>
|
|
567
|
-
`},r=t,s=n,l=e.ref(null),c=e.computed(()=>r.id||e.useId()),m=e.computed(()=>Array.isArray(r.modelValue)?r.modelValue.includes(r.value):r.modelValue),f=u=>{const i=u.target.checked;if(Array.isArray(r.modelValue)){const b=[...r.modelValue];if(i)b.push(r.value);else{const E=b.indexOf(r.value);E>-1&&b.splice(E,1)}s("update:modelValue",b)}else s("update:modelValue",i);s("change",i)},p=()=>{!r.disabled&&l.value&&l.value.click()},v=e.computed(()=>{if(r.error)return`${c.value}-error`}),B=e.computed(()=>({sm:"w-4 h-4",md:"w-5 h-5",lg:"w-6 h-6"})[r.size]),h=e.computed(()=>["absolute inset-0 w-full h-full opacity-0 cursor-pointer",{"cursor-not-allowed":r.disabled}]),k=e.computed(()=>["flex items-center justify-center rounded border-2 transition-all duration-200","cursor-pointer select-none",B.value,{"bg-blue-600 border-blue-600 text-white":m.value&&!r.disabled&&r.variant==="default","bg-red-600 border-red-600 text-white":m.value&&!r.disabled&&r.variant==="error","bg-slate-200 border-slate-300 text-slate-400":m.value&&r.disabled,"bg-white border-slate-300 hover:border-slate-400":!m.value&&!r.disabled&&r.variant==="default","bg-white border-red-300 hover:border-red-400":!m.value&&!r.disabled&&r.variant==="error","bg-slate-50 border-slate-200":!m.value&&r.disabled,"cursor-not-allowed":r.disabled,"focus-within:ring-2 focus-within:ring-offset-2":!r.disabled,"focus-within:ring-blue-500":!r.disabled&&r.variant==="default","focus-within:ring-red-500":!r.disabled&&r.variant==="error"}]),g=e.computed(()=>["text-sm font-medium cursor-pointer select-none",{"text-slate-900":!r.disabled,"text-slate-500":r.disabled}]),d=e.computed(()=>["text-xs text-slate-500 mt-1"]);return e.watch(()=>r.indeterminate,u=>{l.value&&(l.value.indeterminate=u)},{immediate:!0}),(u,i)=>(e.openBlock(),e.createElementBlock("div",Vi,[e.createElementVNode("div",Ei,[e.createElementVNode("input",{id:c.value,ref_key:"checkboxRef",ref:l,type:"checkbox",checked:m.value,indeterminate:t.indeterminate,disabled:t.disabled,required:t.required,class:e.normalizeClass(h.value),"aria-describedby":v.value,onChange:f},null,42,Ni),e.createElementVNode("div",{class:e.normalizeClass(k.value),onClick:p},[m.value&&!t.indeterminate?(e.openBlock(),e.createBlock(a,{key:0,class:"w-3 h-3"})):t.indeterminate?(e.openBlock(),e.createBlock(o,{key:1,class:"w-3 h-3"})):e.createCommentVNode("",!0)],2)]),e.createElementVNode("div",$i,[e.createElementVNode("label",{for:c.value,class:e.normalizeClass(g.value)},[e.renderSlot(u.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])],10,zi),t.description?(e.openBlock(),e.createElementBlock("p",{key:0,class:e.normalizeClass(d.value)},e.toDisplayString(t.description),3)):e.createCommentVNode("",!0)])]))}},Di={key:0,class:"px-3 text-sm text-gray-500 bg-white dark:bg-gray-900 dark:text-gray-400 relative z-10"},Yn={__name:"Divider",props:{orientation:{type:String,default:"horizontal",validator:t=>["horizontal","vertical"].includes(t)},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},color:{type:String,default:"gray",validator:t=>["gray","primary","secondary"].includes(t)},faded:{type:Boolean,default:!1},label:{type:String,default:null},spacing:{type:String,default:null}},setup(t){const n=t,a=z.cva("divider relative flex items-center",{variants:{orientation:{horizontal:"w-full h-px flex items-center",vertical:"h-full w-px"},size:{sm:"",md:"",lg:""},color:{gray:"bg-gray-200 dark:bg-gray-700",primary:"bg-blue-500",secondary:"bg-gray-400"}},compoundVariants:[{orientation:"horizontal",size:"sm",class:"my-2"},{orientation:"horizontal",size:"md",class:"my-4"},{orientation:"horizontal",size:"lg",class:"my-6"},{orientation:"vertical",size:"sm",class:"mx-2"},{orientation:"vertical",size:"md",class:"mx-4"},{orientation:"vertical",size:"lg",class:"mx-6"}],defaultVariants:{orientation:"horizontal",size:"md",color:"gray"}}),o=e.computed(()=>n.spacing?n.spacing:"");return(r,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(y)(e.unref(a)({orientation:t.orientation,size:t.size,color:t.color}),{"opacity-50":t.faded},o.value))},[t.label&&t.orientation==="horizontal"?(e.openBlock(),e.createElementBlock("span",Di,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)],2))}},Ti=["aria-label"],Ai={key:0,class:"sr-only"},it={__name:"Spinner",props:{size:{type:String,default:"md",validator:t=>["xs","sm","md","lg","xl"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","primary","secondary"].includes(t)},label:{type:String,default:"Loading..."},class:String},setup(t){const n=t,a=z.cva("inline-flex items-center justify-center",{variants:{variant:{default:"text-muted-foreground",primary:"text-primary",secondary:"text-secondary-foreground"}}}),o=z.cva("animate-spin",{variants:{size:{xs:"h-3 w-3",sm:"h-4 w-4",md:"h-6 w-6",lg:"h-8 w-8",xl:"h-12 w-12"}}}),r=e.computed(()=>y(a({variant:n.variant}),n.class)),s=e.computed(()=>o({size:n.size}));return(l,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(r.value),role:"status","aria-label":t.label},[(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass(s.value),xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},[...c[0]||(c[0]=[e.createElementVNode("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e.createElementVNode("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)])],2)),t.label?(e.openBlock(),e.createElementBlock("span",Ai,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)],10,Ti))}},Fi=["src","alt","loading"],Hn={__name:"Image",props:{src:{type:String,required:!0},alt:{type:String,default:""},aspectRatio:{type:String,default:"auto",validator:t=>["auto","square","16/9","4/3","3/2"].includes(t)},objectFit:{type:String,default:"cover",validator:t=>["cover","contain","fill","none","scale-down"].includes(t)},loading:{type:String,default:"lazy",validator:t=>["lazy","eager"].includes(t)},showSpinner:{type:Boolean,default:!0},class:String},emits:["load","error"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(!0),s=e.ref(!1),l=z.cva("relative overflow-hidden bg-muted",{variants:{aspectRatio:{auto:"",square:"aspect-square","16/9":"aspect-video","4/3":"aspect-[4/3]","3/2":"aspect-[3/2]"}}}),c=e.computed(()=>y(l({aspectRatio:a.aspectRatio}),a.class)),m=e.computed(()=>y("h-full w-full transition-opacity duration-300",{"object-cover":a.objectFit==="cover","object-contain":a.objectFit==="contain","object-fill":a.objectFit==="fill","object-none":a.objectFit==="none","object-scale-down":a.objectFit==="scale-down"},r.value&&"opacity-0",s.value&&"hidden")),f=e.computed(()=>"absolute inset-0 flex items-center justify-center bg-muted"),p=e.computed(()=>"absolute inset-0 flex flex-col items-center justify-center gap-2 bg-muted"),v=h=>{r.value=!1,s.value=!1,o("load",h)},B=h=>{r.value=!1,s.value=!0,o("error",h)};return(h,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(c.value)},[e.createElementVNode("img",{src:t.src,alt:t.alt,class:e.normalizeClass(m.value),loading:t.loading,onLoad:v,onError:B},null,42,Fi),r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(f.value)},[t.showSpinner?(e.openBlock(),e.createBlock(it,{key:0,size:"sm"})):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(p.value)},[e.createVNode(j,{name:"ImageOff",class:"h-8 w-8 text-muted-foreground"}),k[0]||(k[0]=e.createElementVNode("span",{class:"text-sm text-muted-foreground"},"Failed to load image",-1))],2)):e.createCommentVNode("",!0)],2))}},Pi={class:"relative"},Ii={key:0,class:"absolute left-3 top-1/2 transform -translate-y-1/2 pointer-events-none"},ji=["id","type","value","placeholder","disabled","readonly","required","autocomplete","aria-describedby","aria-invalid"],Li={key:1,class:"absolute right-3 top-1/2 transform -translate-y-1/2"},Oi=["aria-label"],oe={__name:"Input",props:{modelValue:{type:[String,Number],default:""},type:{type:String,default:"text",validator:t=>["text","email","password","number","tel","url","search","date","color"].includes(t)},placeholder:{type:String,default:""},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","error","success"].includes(t)},iconLeft:{type:[String,Object],default:null},iconRight:{type:[String,Object],default:null},clearable:{type:Boolean,default:!1},clearLabel:{type:String,default:"Clear input"},autocomplete:{type:String,default:null},error:{type:String,default:null},id:{type:String,default:null}},emits:["update:modelValue","blur","focus","clear","keydown"],setup(t,{expose:n,emit:a}){const o=t,r=a,s=e.ref(null),l=e.computed(()=>o.id||e.useId()),c=i=>{r("update:modelValue",i.target.value)},m=i=>{r("blur",i)},f=i=>{r("focus",i)},p=i=>{r("keydown",i)},v=()=>{r("update:modelValue",""),r("clear"),s.value?.focus()},B=e.computed(()=>!!o.error||o.variant==="error"),h=e.computed(()=>{if(o.error)return`${l.value}-error`}),k=e.computed(()=>({sm:"px-3 py-1.5 text-sm",md:"px-3 py-2 text-sm",lg:"px-4 py-3 text-base"})[o.size]),g=e.computed(()=>({default:"border-slate-300 focus:border-blue-500 focus:ring-blue-500",error:"border-red-300 focus:border-red-500 focus:ring-red-500",success:"border-green-300 focus:border-green-500 focus:ring-green-500"})[o.variant]),d=e.computed(()=>["text-slate-400",{sm:"w-4 h-4",md:"w-4 h-4",lg:"w-5 h-5"}[o.size]]),u=e.computed(()=>["block rounded-lg border bg-white transition-colors duration-200","focus:outline-none focus:ring-2 focus:ring-offset-0","disabled:bg-slate-50 disabled:text-slate-500 disabled:cursor-not-allowed","placeholder:text-slate-400",o.type==="color"?"w-20 h-12 cursor-pointer":"w-full",k.value,g.value,{"pl-10":o.iconLeft,"pr-10":o.iconRight||o.clearable}]);return n({focus:()=>s.value?.focus(),blur:()=>s.value?.blur(),select:()=>s.value?.select()}),(i,b)=>(e.openBlock(),e.createElementBlock("div",Pi,[t.iconLeft?(e.openBlock(),e.createElementBlock("div",Ii,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.iconLeft),{class:e.normalizeClass(d.value)},null,8,["class"]))])):e.createCommentVNode("",!0),e.createElementVNode("input",{id:l.value,ref_key:"inputRef",ref:s,type:t.type,value:t.modelValue,placeholder:t.placeholder,disabled:t.disabled,readonly:t.readonly,required:t.required,autocomplete:t.autocomplete,class:e.normalizeClass(u.value),"aria-describedby":h.value,"aria-invalid":B.value,onInput:c,onBlur:m,onFocus:f,onKeydown:p},null,42,ji),t.iconRight||t.clearable?(e.openBlock(),e.createElementBlock("div",Li,[t.clearable&&t.modelValue&&!t.disabled?(e.openBlock(),e.createElementBlock("button",{key:0,class:"text-slate-400 hover:text-slate-600 transition-colors",type:"button","aria-label":t.clearLabel,onClick:v},[e.createVNode(j,{name:"x-mark",class:"w-5 h-5"})],8,Oi)):t.iconRight?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.iconRight),{key:1,class:e.normalizeClass(d.value)},null,8,["class"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]))}},Mi=["for"],Ve={__name:"Label",props:{htmlFor:String,size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},required:Boolean,disabled:Boolean,class:String},setup(t){const n=t,a=z.cva("font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",{variants:{size:{sm:"text-sm",md:"text-sm",lg:"text-base"}}}),o=e.computed(()=>y(a({size:n.size}),n.disabled&&"cursor-not-allowed opacity-70",n.class));return(r,s)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(o.value),for:t.htmlFor},[e.renderSlot(r.$slots,"default")],10,Mi))}},Gn={__name:"Link",props:{href:{type:String,default:null},to:{type:[String,Object],default:null},external:{type:Boolean,default:!1},target:{type:String,default:null},rel:{type:String,default:null},variant:{type:String,default:"primary",validator:t=>["primary","secondary","muted","danger","success"].includes(t)},size:{type:String,default:"md",validator:t=>["xs","sm","md","lg","xl"].includes(t)},underline:{type:String,default:"hover",validator:t=>["always","hover","never"].includes(t)},disabled:{type:Boolean,default:!1},icon:{type:String,default:null},iconPosition:{type:String,default:"left",validator:t=>["left","right"].includes(t)},showExternalIcon:{type:Boolean,default:!0},block:{type:Boolean,default:!1}},emits:["click"],setup(t,{emit:n}){const a=t,o=e.computed(()=>a.to&&!a.href?"router-link":a.href||a.external?"a":"button"),r=e.computed(()=>`w-4 h-4 ${a.iconPosition==="left"?"mr-2":"ml-2"}`),s=z.cva("transition-colors duration-200 inline-flex items-center",{variants:{variant:{primary:"text-blue-800 hover:text-blue-800 dark:text-blue-500 dark:hover:text-blue-400",secondary:"text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-gray-300",muted:"text-gray-500 hover:text-gray-700 dark:text-gray-500 dark:hover:text-gray-400",danger:"text-red-600 hover:text-red-800 dark:text-red-400 dark:hover:text-red-300",success:"text-green-600 hover:text-green-800 dark:text-green-400 dark:hover:text-green-300"},size:{xs:"text-xs",sm:"text-sm",md:"text-base",lg:"text-lg",xl:"text-xl"},underline:{always:"underline",hover:"hover:underline",never:"no-underline"},block:{true:"block w-full",false:"inline-flex items-center"},disabled:{true:"opacity-50 cursor-not-allowed pointer-events-none",false:"cursor-pointer"}},defaultVariants:{variant:"primary",size:"md",underline:"hover",block:!1,disabled:!1}}),l=m=>{if(a.disabled){m.preventDefault();return}c("click",m)},c=n;return(m,f)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.value),{href:o.value==="a"?t.href:void 0,to:o.value==="router-link"?t.to:void 0,target:t.external?"_blank":t.target,rel:t.external?"noopener noreferrer":t.rel,class:e.normalizeClass(e.unref(y)(e.unref(s)({variant:t.variant,size:t.size,underline:t.underline,block:t.block,disabled:t.disabled}),m.$attrs.class)),onClick:l},{default:e.withCtx(()=>[t.icon&&t.iconPosition==="left"?(e.openBlock(),e.createBlock(j,{key:0,name:t.icon,class:e.normalizeClass(r.value)},null,8,["name","class"])):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"default"),t.icon&&t.iconPosition==="right"?(e.openBlock(),e.createBlock(j,{key:1,name:t.icon,class:e.normalizeClass(r.value)},null,8,["name","class"])):e.createCommentVNode("",!0),t.external&&t.showExternalIcon?(e.openBlock(),e.createBlock(j,{key:2,name:"external-link",class:"w-3 h-3 ml-1 inline-block"})):e.createCommentVNode("",!0)]),_:3},8,["href","to","target","rel","class"]))}},Ri=["src","alt"],Kn={__name:"Logo",props:{src:String,alt:String,text:String,size:{type:String,default:"md",validator:t=>["sm","md","lg","xl"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","minimal"].includes(t)},class:String},setup(t){const n=t,a=z.cva("flex items-center",{variants:{size:{sm:"h-6",md:"h-8",lg:"h-10",xl:"h-12"}}}),o=e.computed(()=>y(a({size:n.size}),n.class)),r=e.computed(()=>y("h-full w-auto object-contain")),s=e.computed(()=>y("font-bold text-foreground",{"text-lg":n.size==="sm","text-xl":n.size==="md","text-2xl":n.size==="lg","text-3xl":n.size==="xl"}));return(l,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[t.src?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.src,alt:t.alt||"Logo",class:e.normalizeClass(r.value)},null,10,Ri)):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(s.value)},e.toDisplayString(t.text||"Logo"),3))],2))}},_i=["value","disabled","selected"],Zt={__name:"Option",props:{value:{type:[String,Number,Boolean],required:!0},label:{type:String,default:""},disabled:{type:Boolean,default:!1},selected:{type:Boolean,default:!1}},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("option",{value:t.value,disabled:t.disabled,selected:t.selected},[e.renderSlot(n.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])],8,_i))}},Ui=["aria-valuenow"],Xn={__name:"Progress",props:{value:{type:Number,default:0},max:{type:Number,default:100},size:{type:String,default:"default",validator:t=>["sm","md","lg","default"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","success","warning","destructive"].includes(t)}},setup(t){const n=t,a=e.computed(()=>{const s=n.value/n.max*100;return Math.min(Math.max(s,0),100)}),o=z.cva("relative w-full overflow-hidden rounded-full bg-secondary",{variants:{size:{sm:"h-1.5",default:"h-2",md:"h-3",lg:"h-4"}},defaultVariants:{size:"default"}}),r=z.cva("h-full w-full flex-1 transition-all duration-300 ease-in-out rounded-full",{variants:{variant:{default:"bg-primary",success:"bg-green-500",warning:"bg-yellow-500",destructive:"bg-red-500"}},defaultVariants:{variant:"default"}});return(s,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(y)(e.unref(o)({size:t.size}),s.$attrs.class))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)(e.unref(r)({variant:t.variant}))),style:e.normalizeStyle({width:`${a.value}%`}),role:"progressbar","aria-valuenow":a.value,"aria-valuemin":0,"aria-valuemax":100},null,14,Ui)],2))}},qi=["aria-valuenow"],Jn={__name:"ProgressBar",props:{value:{type:Number,default:0},max:{type:Number,default:100},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","success","warning","destructive"].includes(t)},showLabel:Boolean,class:String},setup(t){const n=t,a=e.computed(()=>{const m=n.value/n.max*100;return Math.min(Math.max(m,0),100)}),o=z.cva("relative w-full overflow-hidden rounded-full bg-secondary",{variants:{size:{sm:"h-2",md:"h-3",lg:"h-4"}}}),r=z.cva("h-full w-full flex-1 transition-all duration-300 ease-in-out",{variants:{variant:{default:"bg-primary",success:"bg-green-500",warning:"bg-yellow-500",destructive:"bg-destructive"}}}),s=e.computed(()=>y(o({size:n.size}),n.class)),l=e.computed(()=>r({variant:n.variant})),c=e.computed(()=>"absolute inset-0 flex items-center justify-center text-xs font-medium text-primary-foreground");return(m,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(s.value)},[e.createElementVNode("div",{class:e.normalizeClass(l.value),style:e.normalizeStyle({width:`${a.value}%`}),role:"progressbar","aria-valuenow":a.value,"aria-valuemin":0,"aria-valuemax":100},null,14,qi),t.showLabel?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(c.value)},e.toDisplayString(a.value)+"% ",3)):e.createCommentVNode("",!0)],2))}},Wi={class:"flex items-center space-x-2"},Yi=["aria-checked","disabled"],Qn={__name:"Radio",props:{modelValue:null,value:{type:[String,Number,Boolean],required:!0},label:String,disabled:Boolean,size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},class:String},emits:["update:modelValue"],setup(t,{emit:n}){const a=t,o=n,r=e.computed(()=>a.modelValue===a.value),s=z.cva("aspect-square rounded-full border border-primary text-primary ring-offset-background focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",{variants:{size:{sm:"h-4 w-4",md:"h-5 w-5",lg:"h-6 w-6"}}}),l=e.computed(()=>y(s({size:a.size}),a.disabled&&"cursor-not-allowed opacity-50",a.class)),c=e.computed(()=>y("flex items-center justify-center rounded-full bg-primary",{"h-2 w-2":a.size==="sm","h-2.5 w-2.5":a.size==="md","h-3 w-3":a.size==="lg"})),m=e.computed(()=>y("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",!a.disabled&&"cursor-pointer")),f=()=>{a.disabled||o("update:modelValue",a.value)};return(p,v)=>(e.openBlock(),e.createElementBlock("div",Wi,[e.createElementVNode("button",{type:"button",role:"radio","aria-checked":r.value,disabled:t.disabled,class:e.normalizeClass(l.value),onClick:f},[r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(c.value)},null,2)):e.createCommentVNode("",!0)],10,Yi),t.label?(e.openBlock(),e.createElementBlock("label",{key:0,class:e.normalizeClass(m.value),onClick:f},e.toDisplayString(t.label),3)):e.createCommentVNode("",!0)]))}},Hi=["id","name","value","disabled","required"],ue={__name:"Select",props:{modelValue:{type:[String,Number,Boolean],default:""},id:{type:String,default:null},name:{type:String,default:null},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},class:String},emits:["update:modelValue"],setup(t){const n=t,a=z.cva("border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 text-sm min-w-[60px] focus:border-transparent",{variants:{disabled:{true:"bg-gray-100 cursor-not-allowed opacity-50",false:"bg-white hover:border-slate-400"}}}),o=e.computed(()=>y(a({disabled:n.disabled}),"px-3 py-2",n.class));return(r,s)=>(e.openBlock(),e.createElementBlock("select",e.mergeProps({id:t.id,name:t.name,value:t.modelValue,disabled:t.disabled,required:t.required,class:o.value},r.$attrs,{onChange:s[0]||(s[0]=l=>r.$emit("update:modelValue",l.target.value))}),[e.renderSlot(r.$slots,"default")],16,Hi))}},Gi=["aria-checked","disabled"],Zn={__name:"Switch",props:{modelValue:Boolean,disabled:Boolean,size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},class:String},emits:["update:modelValue"],setup(t,{emit:n}){const a=t,o=n,r=z.cva("peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50",{variants:{size:{sm:"h-5 w-9",md:"h-6 w-11",lg:"h-7 w-12"},checked:{true:"bg-primary",false:"bg-input"}}}),s=z.cva("pointer-events-none block rounded-full bg-background shadow-lg ring-0 transition-transform",{variants:{size:{sm:"h-4 w-4",md:"h-5 w-5",lg:"h-6 w-6"},checked:{true:"",false:""}},compoundVariants:[{size:"sm",checked:!0,class:"translate-x-4"},{size:"sm",checked:!1,class:"translate-x-0"},{size:"md",checked:!0,class:"translate-x-5"},{size:"md",checked:!1,class:"translate-x-0"},{size:"lg",checked:!0,class:"translate-x-5"},{size:"lg",checked:!1,class:"translate-x-0"}]}),l=e.computed(()=>y(r({size:a.size,checked:a.modelValue}),a.class)),c=e.computed(()=>s({size:a.size,checked:a.modelValue})),m=()=>{a.disabled||o("update:modelValue",!a.modelValue)};return(f,p)=>(e.openBlock(),e.createElementBlock("button",{type:"button",role:"switch","aria-checked":t.modelValue,disabled:t.disabled,class:e.normalizeClass(l.value),onClick:m},[e.createElementVNode("span",{class:e.normalizeClass(c.value)},null,2)],10,Gi))}},eo={__name:"Text",props:{as:{type:String,default:"p"},size:{type:String,default:"md",validator:t=>["xs","sm","md","lg","xl"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","muted","destructive"].includes(t)},weight:{type:String,default:"normal",validator:t=>["normal","medium","semibold","bold"].includes(t)},align:{type:String,default:"left",validator:t=>["left","center","right","justify"].includes(t)},class:String},setup(t){const n=t,a=z.cva("leading-relaxed",{variants:{size:{xs:"text-xs",sm:"text-sm",md:"text-base",lg:"text-lg",xl:"text-xl"},variant:{default:"text-foreground",muted:"text-muted-foreground",destructive:"text-destructive"},weight:{normal:"font-normal",medium:"font-medium",semibold:"font-semibold",bold:"font-bold"},align:{left:"text-left",center:"text-center",right:"text-right",justify:"text-justify"}}}),o=e.computed(()=>y(a({size:n.size,variant:n.variant,weight:n.weight,align:n.align}),n.class));return(r,s)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.as),{class:e.normalizeClass(o.value)},{default:e.withCtx(()=>[e.renderSlot(r.$slots,"default")]),_:3},8,["class"]))}},Ki=["id","value","placeholder","disabled","readonly","required","rows","maxlength","aria-describedby","aria-invalid"],ea={__name:"Textarea",props:{modelValue:{type:String,default:""},placeholder:{type:String,default:""},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},rows:{type:Number,default:3},maxlength:{type:Number,default:null},resize:{type:String,default:"vertical",validator:t=>["none","vertical","horizontal","both"].includes(t)},autoResize:{type:Boolean,default:!1},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","error","success"].includes(t)},error:{type:String,default:null},id:{type:String,default:null}},emits:["update:modelValue","blur","focus","keydown"],setup(t,{expose:n,emit:a}){const o=t,r=a,s=e.ref(null),l=e.computed(()=>o.id||e.useId()),c=d=>{r("update:modelValue",d.target.value),o.autoResize&&e.nextTick(()=>g())},m=d=>r("blur",d),f=d=>r("focus",d),p=d=>r("keydown",d),v=e.computed(()=>!!o.error||o.variant==="error"),B=e.computed(()=>o.error?`${l.value}-error`:void 0),h=z.cva("block w-full rounded-lg border transition-colors duration-200 placeholder:text-slate-400 focus:outline-none focus:ring-2 focus:ring-offset-0 disabled:bg-slate-50 disabled:text-slate-500 disabled:cursor-not-allowed",{variants:{size:{sm:"px-3 py-1.5 text-sm",md:"px-3 py-2 text-sm",lg:"px-4 py-3 text-base"},variant:{default:"border-slate-300 focus:border-blue-500 focus:ring-blue-500",error:"border-red-300 focus:border-red-500 focus:ring-red-500",success:"border-green-300 focus:border-green-500 focus:ring-green-500"},resize:{none:"resize-none",vertical:"resize-y",horizontal:"resize-x",both:"resize"}},defaultVariants:{size:"md",variant:"default",resize:"vertical"}}),k=e.computed(()=>y(h({size:o.size,variant:o.variant,resize:o.resize}))),g=()=>{if(!s.value||!o.autoResize)return;const d=s.value;d.style.height="auto",d.style.height=`${d.scrollHeight}px`};return e.watch(()=>o.modelValue,()=>{o.autoResize&&e.nextTick(()=>g())},{immediate:!0}),n({focus:()=>s.value?.focus(),blur:()=>s.value?.blur(),select:()=>s.value?.select()}),(d,u)=>(e.openBlock(),e.createElementBlock("textarea",{id:l.value,ref_key:"textareaRef",ref:s,value:t.modelValue,placeholder:t.placeholder,disabled:t.disabled,readonly:t.readonly,required:t.required,rows:t.rows,maxlength:t.maxlength,class:e.normalizeClass(k.value),"aria-describedby":B.value,"aria-invalid":v.value,onInput:c,onBlur:m,onFocus:f,onKeydown:p},null,42,Ki))}},ta={__name:"Tooltip",props:{content:{type:String,required:!0},placement:{type:String,default:"top",validator:t=>["top","bottom","left","right"].includes(t)},delay:{type:Number,default:0},class:String},setup(t){const n=t,a=e.ref(!1),o=e.ref(null),r=e.ref(null),s=e.ref({});let l=null;const c=z.cva("fixed z-[9999] px-3 py-1.5 text-sm text-white bg-gray-900 rounded-md shadow-lg pointer-events-none whitespace-nowrap",{variants:{placement:{top:"",bottom:"",left:"",right:""}}}),m=z.cva("absolute w-2 h-2 bg-primary transform rotate-45",{variants:{placement:{top:"top-full left-1/2 transform -translate-x-1/2 -mt-1",bottom:"bottom-full left-1/2 transform -translate-x-1/2 -mb-1",left:"left-full top-1/2 transform -translate-y-1/2 -ml-1",right:"right-full top-1/2 transform -translate-y-1/2 -mr-1"}}}),f=e.computed(()=>y(c({placement:n.placement}),n.class)),p=e.computed(()=>m({placement:n.placement})),v=()=>{if(!o.value||!r.value)return;const k=o.value.getBoundingClientRect(),g=r.value.getBoundingClientRect();let d=0,u=0;const i=8;switch(n.placement){case"top":d=k.top-g.height-i,u=k.left+k.width/2-g.width/2;break;case"bottom":d=k.bottom+i,u=k.left+k.width/2-g.width/2;break;case"left":d=k.top+k.height/2-g.height/2,u=k.left-g.width-i;break;case"right":d=k.top+k.height/2-g.height/2,u=k.right+i;break}const b=8;u<b&&(u=b),u+g.width>window.innerWidth-b&&(u=window.innerWidth-g.width-b),d<b&&(d=b),d+g.height>window.innerHeight-b&&(d=window.innerHeight-g.height-b),s.value={top:`${d}px`,left:`${u}px`}},B=()=>{l&&clearTimeout(l),l=setTimeout(async()=>{a.value=!0,await e.nextTick(),v()},n.delay)},h=()=>{l&&clearTimeout(l),a.value=!1};return(k,g)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"triggerRef",ref:o,class:"relative inline-block",onMouseenter:B,onMouseleave:h},[e.renderSlot(k.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createVNode(e.Transition,{"enter-active-class":"transition-opacity duration-200","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"transition-opacity duration-200","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:e.withCtx(()=>[a.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"tooltipRef",ref:r,class:e.normalizeClass(f.value),style:e.normalizeStyle(s.value),role:"tooltip"},[e.createTextVNode(e.toDisplayString(t.content)+" ",1),e.createElementVNode("div",{class:e.normalizeClass(p.value)},null,2)],6)):e.createCommentVNode("",!0)]),_:1})]))],544))}},Xi={key:0,class:"text-red-600 ml-1","aria-hidden":"true"},tt={__name:"Typography",props:{variant:{type:String,default:"body-md",validator:t=>["body-xs","body-sm","body-md","body-lg","text-xs","text-sm","text-md","text-lg","display-sm","display-md","display-lg","caption","overline"].includes(t)},color:{type:String,default:"default",validator:t=>["default","primary","secondary","success","warning","danger","muted"].includes(t)},align:{type:String,default:"left",validator:t=>["left","center","right","justify"].includes(t)},italic:Boolean,underline:Boolean,truncate:Boolean,noWrap:Boolean,required:{type:Boolean,default:!1}},setup(t){const n=t,a=e.computed(()=>({"body-xs":"p","body-sm":"p","body-md":"p","body-lg":"p","text-xs":"h6","text-sm":"h5","text-md":"h4","text-lg":"h3","display-sm":"h2","display-md":"h1","display-lg":"h1",caption:"span",overline:"span"})[n.variant]||"p"),o=e.computed(()=>({"body-xs":"text-xs leading-normal","body-sm":"text-sm leading-relaxed","body-md":"text-base leading-relaxed","body-lg":"text-lg leading-relaxed","text-xs":"text-md font-semibold leading-snug","text-sm":"text-xl font-semibold leading-snug","text-md":"text-2xl font-semibold leading-snug","text-lg":"text-3xl font-bold leading-snug","display-sm":"text-4xl font-bold leading-tight tracking-tight","display-md":"text-5xl font-bold leading-tight tracking-tight","display-lg":"text-6xl font-bold leading-tight tracking-tight",caption:"text-xs leading-normal",overline:"text-xs font-medium uppercase tracking-wider leading-normal"})[n.variant]),r=e.computed(()=>({default:"text-slate-900",primary:"text-blue-600",secondary:"text-slate-600",success:"text-green-600",warning:"text-yellow-600",danger:"text-red-600",muted:"text-slate-500"})[n.color]),s=e.computed(()=>({left:"text-left",center:"text-center",right:"text-right",justify:"text-justify"})[n.align]),l=e.computed(()=>[o.value,r.value,s.value,{italic:n.italic,underline:n.underline,truncate:n.truncate,"whitespace-nowrap":n.noWrap}]);return(c,m)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.value),e.mergeProps({class:l.value},c.$attrs),{default:e.withCtx(()=>[e.renderSlot(c.$slots,"default"),t.required?(e.openBlock(),e.createElementBlock("span",Xi,"*")):e.createCommentVNode("",!0)]),_:3},16,["class"]))}},Ji={class:"flex items-start gap-3"},Qi={key:0,class:"flex-shrink-0 mt-0.5"},Zi={class:"flex-1 min-w-0"},ec={key:0,class:"font-medium text-sm mb-1"},tc={key:1,class:"mt-3 flex gap-2"},ac=["aria-label"],to=Object.assign({inheritAttrs:!1},{__name:"Alert",props:{variant:{type:String,default:"info",validator:t=>["info","success","warning","error","default","destructive"].includes(t)},title:String,message:String,dismissible:{type:Boolean,default:!1},dismissLabel:{type:String,default:"Dismiss alert"},showIcon:{type:Boolean,default:!0},actions:{type:Array,default:()=>[]},autoClose:{type:[Boolean,Number],default:!1}},emits:["dismiss","action"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(!0),s=()=>{r.value=!1,o("dismiss")},l=d=>{o("action",d),d.onClick&&d.onClick()};if(a.autoClose){const d=typeof a.autoClose=="number"?a.autoClose:5e3;setTimeout(s,d)}const c={template:`
|
|
567
|
+
`},r=t,s=n,l=e.ref(null),c=e.computed(()=>r.id||e.useId()),m=e.computed(()=>Array.isArray(r.modelValue)?r.modelValue.includes(r.value):r.modelValue),f=u=>{const i=u.target.checked;if(Array.isArray(r.modelValue)){const b=[...r.modelValue];if(i)b.push(r.value);else{const E=b.indexOf(r.value);E>-1&&b.splice(E,1)}s("update:modelValue",b)}else s("update:modelValue",i);s("change",i)},p=()=>{!r.disabled&&l.value&&l.value.click()},v=e.computed(()=>{if(r.error)return`${c.value}-error`}),B=e.computed(()=>({sm:"w-4 h-4",md:"w-5 h-5",lg:"w-6 h-6"})[r.size]),h=e.computed(()=>["absolute inset-0 w-full h-full opacity-0 cursor-pointer",{"cursor-not-allowed":r.disabled}]),k=e.computed(()=>["flex items-center justify-center rounded border-2 transition-all duration-200","cursor-pointer select-none",B.value,{"bg-blue-600 border-blue-600 text-white":m.value&&!r.disabled&&r.variant==="default","bg-red-600 border-red-600 text-white":m.value&&!r.disabled&&r.variant==="error","bg-slate-200 border-slate-300 text-slate-400":m.value&&r.disabled,"bg-white border-slate-300 hover:border-slate-400":!m.value&&!r.disabled&&r.variant==="default","bg-white border-red-300 hover:border-red-400":!m.value&&!r.disabled&&r.variant==="error","bg-slate-50 border-slate-200":!m.value&&r.disabled,"cursor-not-allowed":r.disabled,"focus-within:ring-2 focus-within:ring-offset-2":!r.disabled,"focus-within:ring-blue-500":!r.disabled&&r.variant==="default","focus-within:ring-red-500":!r.disabled&&r.variant==="error"}]),g=e.computed(()=>["text-sm font-medium cursor-pointer select-none",{"text-slate-900":!r.disabled,"text-slate-500":r.disabled}]),d=e.computed(()=>["text-xs text-slate-500 mt-1"]);return e.watch(()=>r.indeterminate,u=>{l.value&&(l.value.indeterminate=u)},{immediate:!0}),(u,i)=>(e.openBlock(),e.createElementBlock("div",Vi,[e.createElementVNode("div",Ei,[e.createElementVNode("input",{id:c.value,ref_key:"checkboxRef",ref:l,type:"checkbox",checked:m.value,indeterminate:t.indeterminate,disabled:t.disabled,required:t.required,class:e.normalizeClass(h.value),"aria-describedby":v.value,onChange:f},null,42,Ni),e.createElementVNode("div",{class:e.normalizeClass(k.value),onClick:p},[m.value&&!t.indeterminate?(e.openBlock(),e.createBlock(a,{key:0,class:"w-3 h-3"})):t.indeterminate?(e.openBlock(),e.createBlock(o,{key:1,class:"w-3 h-3"})):e.createCommentVNode("",!0)],2)]),e.createElementVNode("div",$i,[e.createElementVNode("label",{for:c.value,class:e.normalizeClass(g.value)},[e.renderSlot(u.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])],10,zi),t.description?(e.openBlock(),e.createElementBlock("p",{key:0,class:e.normalizeClass(d.value)},e.toDisplayString(t.description),3)):e.createCommentVNode("",!0)])]))}},Di={key:0,class:"px-3 text-sm text-gray-500 bg-white dark:bg-gray-900 dark:text-gray-400 relative z-10"},Yn={__name:"Divider",props:{orientation:{type:String,default:"horizontal",validator:t=>["horizontal","vertical"].includes(t)},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},color:{type:String,default:"gray",validator:t=>["gray","primary","secondary"].includes(t)},faded:{type:Boolean,default:!1},label:{type:String,default:null},spacing:{type:String,default:null}},setup(t){const n=t,a=z.cva("divider relative flex items-center",{variants:{orientation:{horizontal:"w-full h-px flex items-center",vertical:"h-full w-px"},size:{sm:"",md:"",lg:""},color:{gray:"bg-gray-200 dark:bg-gray-700",primary:"bg-blue-500",secondary:"bg-gray-400"}},compoundVariants:[{orientation:"horizontal",size:"sm",class:"my-2"},{orientation:"horizontal",size:"md",class:"my-4"},{orientation:"horizontal",size:"lg",class:"my-6"},{orientation:"vertical",size:"sm",class:"mx-2"},{orientation:"vertical",size:"md",class:"mx-4"},{orientation:"vertical",size:"lg",class:"mx-6"}],defaultVariants:{orientation:"horizontal",size:"md",color:"gray"}}),o=e.computed(()=>n.spacing?n.spacing:"");return(r,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(y)(e.unref(a)({orientation:t.orientation,size:t.size,color:t.color}),{"opacity-50":t.faded},o.value))},[t.label&&t.orientation==="horizontal"?(e.openBlock(),e.createElementBlock("span",Di,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)],2))}},Ti=["aria-label"],Ai={key:0,class:"sr-only"},it={__name:"Spinner",props:{size:{type:String,default:"md",validator:t=>["xs","sm","md","lg","xl"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","primary","secondary"].includes(t)},label:{type:String,default:"Loading..."},class:String},setup(t){const n=t,a=z.cva("inline-flex items-center justify-center",{variants:{variant:{default:"text-muted-foreground",primary:"text-primary",secondary:"text-secondary-foreground"}}}),o=z.cva("animate-spin",{variants:{size:{xs:"h-3 w-3",sm:"h-4 w-4",md:"h-6 w-6",lg:"h-8 w-8",xl:"h-12 w-12"}}}),r=e.computed(()=>y(a({variant:n.variant}),n.class)),s=e.computed(()=>o({size:n.size}));return(l,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(r.value),role:"status","aria-label":t.label},[(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass(s.value),xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},[...c[0]||(c[0]=[e.createElementVNode("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e.createElementVNode("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)])],2)),t.label?(e.openBlock(),e.createElementBlock("span",Ai,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)],10,Ti))}},Fi=["src","alt","loading"],Hn={__name:"Image",props:{src:{type:String,required:!0},alt:{type:String,default:""},aspectRatio:{type:String,default:"auto",validator:t=>["auto","square","16/9","4/3","3/2"].includes(t)},objectFit:{type:String,default:"cover",validator:t=>["cover","contain","fill","none","scale-down"].includes(t)},loading:{type:String,default:"lazy",validator:t=>["lazy","eager"].includes(t)},showSpinner:{type:Boolean,default:!0},class:String},emits:["load","error"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(!0),s=e.ref(!1),l=z.cva("relative overflow-hidden bg-muted",{variants:{aspectRatio:{auto:"",square:"aspect-square","16/9":"aspect-video","4/3":"aspect-[4/3]","3/2":"aspect-[3/2]"}}}),c=e.computed(()=>y(l({aspectRatio:a.aspectRatio}),a.class)),m=e.computed(()=>y("h-full w-full transition-opacity duration-300",{"object-cover":a.objectFit==="cover","object-contain":a.objectFit==="contain","object-fill":a.objectFit==="fill","object-none":a.objectFit==="none","object-scale-down":a.objectFit==="scale-down"},r.value&&"opacity-0",s.value&&"hidden")),f=e.computed(()=>"absolute inset-0 flex items-center justify-center bg-muted"),p=e.computed(()=>"absolute inset-0 flex flex-col items-center justify-center gap-2 bg-muted"),v=h=>{r.value=!1,s.value=!1,o("load",h)},B=h=>{r.value=!1,s.value=!0,o("error",h)};return(h,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(c.value)},[e.createElementVNode("img",{src:t.src,alt:t.alt,class:e.normalizeClass(m.value),loading:t.loading,onLoad:v,onError:B},null,42,Fi),r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(f.value)},[t.showSpinner?(e.openBlock(),e.createBlock(it,{key:0,size:"sm"})):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(p.value)},[e.createVNode(j,{name:"ImageOff",class:"h-8 w-8 text-muted-foreground"}),k[0]||(k[0]=e.createElementVNode("span",{class:"text-sm text-muted-foreground"},"Failed to load image",-1))],2)):e.createCommentVNode("",!0)],2))}},Pi={class:"relative"},Ii={key:0,class:"absolute left-3 top-1/2 transform -translate-y-1/2 pointer-events-none"},ji=["id","type","value","placeholder","disabled","readonly","required","autocomplete","aria-describedby","aria-invalid"],Li={key:1,class:"absolute right-3 top-1/2 transform -translate-y-1/2"},Oi=["aria-label"],oe={__name:"Input",props:{modelValue:{type:[String,Number],default:""},type:{type:String,default:"text",validator:t=>["text","email","password","number","tel","url","search","date","color"].includes(t)},placeholder:{type:String,default:""},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","error","success"].includes(t)},iconLeft:{type:[String,Object],default:null},iconRight:{type:[String,Object],default:null},clearable:{type:Boolean,default:!1},clearLabel:{type:String,default:"Clear input"},autocomplete:{type:String,default:null},error:{type:String,default:null},id:{type:String,default:null}},emits:["update:modelValue","blur","focus","clear","keydown"],setup(t,{expose:n,emit:a}){const o=t,r=a,s=e.ref(null),l=e.computed(()=>o.id||e.useId()),c=i=>{r("update:modelValue",i.target.value)},m=i=>{r("blur",i)},f=i=>{r("focus",i)},p=i=>{r("keydown",i)},v=()=>{r("update:modelValue",""),r("clear"),s.value?.focus()},B=e.computed(()=>!!o.error||o.variant==="error"),h=e.computed(()=>{if(o.error)return`${l.value}-error`}),k=e.computed(()=>({sm:"px-3 py-1.5 text-sm",md:"px-3 py-2 text-sm",lg:"px-4 py-3 text-base"})[o.size]),g=e.computed(()=>({default:"border-slate-300 focus:border-blue-500 focus:ring-blue-500",error:"border-red-300 focus:border-red-500 focus:ring-red-500",success:"border-green-300 focus:border-green-500 focus:ring-green-500"})[o.variant]),d=e.computed(()=>["text-slate-400",{sm:"w-4 h-4",md:"w-4 h-4",lg:"w-5 h-5"}[o.size]]),u=e.computed(()=>["block rounded-lg border bg-white transition-colors duration-200","focus:outline-none focus:ring-2 focus:ring-offset-0","disabled:bg-slate-50 disabled:text-slate-500 disabled:cursor-not-allowed","placeholder:text-slate-400",o.type==="color"?"w-20 h-12 cursor-pointer":"w-full",k.value,g.value,{"pl-10":o.iconLeft,"pr-10":o.iconRight||o.clearable}]);return n({focus:()=>s.value?.focus(),blur:()=>s.value?.blur(),select:()=>s.value?.select()}),(i,b)=>(e.openBlock(),e.createElementBlock("div",Pi,[t.iconLeft?(e.openBlock(),e.createElementBlock("div",Ii,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.iconLeft),{class:e.normalizeClass(d.value)},null,8,["class"]))])):e.createCommentVNode("",!0),e.createElementVNode("input",{id:l.value,ref_key:"inputRef",ref:s,type:t.type,value:t.modelValue,placeholder:t.placeholder,disabled:t.disabled,readonly:t.readonly,required:t.required,autocomplete:t.autocomplete,class:e.normalizeClass(u.value),"aria-describedby":h.value,"aria-invalid":B.value,onInput:c,onBlur:m,onFocus:f,onKeydown:p},null,42,ji),t.iconRight||t.clearable?(e.openBlock(),e.createElementBlock("div",Li,[t.clearable&&t.modelValue&&!t.disabled?(e.openBlock(),e.createElementBlock("button",{key:0,class:"text-slate-400 hover:text-slate-600 transition-colors",type:"button","aria-label":t.clearLabel,onClick:v},[e.createVNode(j,{name:"x-mark",class:"w-5 h-5"})],8,Oi)):t.iconRight?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.iconRight),{key:1,class:e.normalizeClass(d.value)},null,8,["class"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]))}},Mi=["for"],Ve={__name:"Label",props:{htmlFor:String,size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},required:Boolean,disabled:Boolean,class:String},setup(t){const n=t,a=z.cva("font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",{variants:{size:{sm:"text-sm",md:"text-sm",lg:"text-base"}}}),o=e.computed(()=>y(a({size:n.size}),n.disabled&&"cursor-not-allowed opacity-70",n.class));return(r,s)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(o.value),for:t.htmlFor},[e.renderSlot(r.$slots,"default")],10,Mi))}},Gn={__name:"Link",props:{href:{type:String,default:null},to:{type:[String,Object],default:null},external:{type:Boolean,default:!1},target:{type:String,default:null},rel:{type:String,default:null},variant:{type:String,default:"primary",validator:t=>["primary","secondary","muted","danger","success"].includes(t)},size:{type:String,default:"md",validator:t=>["xs","sm","md","lg","xl"].includes(t)},underline:{type:String,default:"hover",validator:t=>["always","hover","never"].includes(t)},disabled:{type:Boolean,default:!1},icon:{type:String,default:null},iconPosition:{type:String,default:"left",validator:t=>["left","right"].includes(t)},showExternalIcon:{type:Boolean,default:!0},block:{type:Boolean,default:!1}},emits:["click"],setup(t,{emit:n}){const a=t,o=e.computed(()=>a.to&&!a.href?"router-link":a.href||a.external?"a":"button"),r=e.computed(()=>`w-4 h-4 ${a.iconPosition==="left"?"mr-2":"ml-2"}`),s=z.cva("transition-colors duration-200 inline-flex items-center",{variants:{variant:{primary:"text-blue-800 hover:text-blue-800 dark:text-blue-500 dark:hover:text-blue-400",secondary:"text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-gray-300",muted:"text-gray-500 hover:text-gray-700 dark:text-gray-500 dark:hover:text-gray-400",danger:"text-red-600 hover:text-red-800 dark:text-red-400 dark:hover:text-red-300",success:"text-green-600 hover:text-green-800 dark:text-green-400 dark:hover:text-green-300"},size:{xs:"text-xs",sm:"text-sm",md:"text-base",lg:"text-lg",xl:"text-xl"},underline:{always:"underline",hover:"hover:underline",never:"no-underline"},block:{true:"block w-full",false:"inline-flex items-center"},disabled:{true:"opacity-50 cursor-not-allowed pointer-events-none",false:"cursor-pointer"}},defaultVariants:{variant:"primary",size:"md",underline:"hover",block:!1,disabled:!1}}),l=m=>{if(a.disabled){m.preventDefault();return}c("click",m)},c=n;return(m,f)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.value),{href:o.value==="a"?t.href:void 0,to:o.value==="router-link"?t.to:void 0,target:t.external?"_blank":t.target,rel:t.external?"noopener noreferrer":t.rel,class:e.normalizeClass(e.unref(y)(e.unref(s)({variant:t.variant,size:t.size,underline:t.underline,block:t.block,disabled:t.disabled}),m.$attrs.class)),onClick:l},{default:e.withCtx(()=>[t.icon&&t.iconPosition==="left"?(e.openBlock(),e.createBlock(j,{key:0,name:t.icon,class:e.normalizeClass(r.value)},null,8,["name","class"])):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"default"),t.icon&&t.iconPosition==="right"?(e.openBlock(),e.createBlock(j,{key:1,name:t.icon,class:e.normalizeClass(r.value)},null,8,["name","class"])):e.createCommentVNode("",!0),t.external&&t.showExternalIcon?(e.openBlock(),e.createBlock(j,{key:2,name:"external-link",class:"w-3 h-3 ml-1 inline-block"})):e.createCommentVNode("",!0)]),_:3},8,["href","to","target","rel","class"]))}},Ri=["src","alt"],Kn={__name:"Logo",props:{src:String,alt:String,text:String,size:{type:String,default:"md",validator:t=>["sm","md","lg","xl"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","minimal"].includes(t)},class:String},setup(t){const n=t,a=z.cva("flex items-center",{variants:{size:{sm:"h-6",md:"h-8",lg:"h-10",xl:"h-12"}}}),o=e.computed(()=>y(a({size:n.size}),n.class)),r=e.computed(()=>y("h-full w-auto object-contain")),s=e.computed(()=>y("font-bold text-foreground",{"text-lg":n.size==="sm","text-xl":n.size==="md","text-2xl":n.size==="lg","text-3xl":n.size==="xl"}));return(l,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[t.src?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.src,alt:t.alt||"Logo",class:e.normalizeClass(r.value)},null,10,Ri)):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(s.value)},e.toDisplayString(t.text||"Logo"),3))],2))}},_i=["value","disabled","selected"],Zt={__name:"Option",props:{value:{type:[String,Number,Boolean],required:!0},label:{type:String,default:""},disabled:{type:Boolean,default:!1},selected:{type:Boolean,default:!1}},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("option",{value:t.value,disabled:t.disabled,selected:t.selected},[e.renderSlot(n.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])],8,_i))}},Ui=["aria-valuenow"],Xn={__name:"Progress",props:{value:{type:Number,default:0},max:{type:Number,default:100},size:{type:String,default:"default",validator:t=>["sm","md","lg","default"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","success","warning","danger"].includes(t)}},setup(t){const n=t,a=e.computed(()=>{const s=n.value/n.max*100;return Math.min(Math.max(s,0),100)}),o=z.cva("relative w-full overflow-hidden rounded-full bg-secondary",{variants:{size:{sm:"h-1.5",default:"h-2",md:"h-3",lg:"h-4"}},defaultVariants:{size:"default"}}),r=z.cva("h-full w-full flex-1 transition-all duration-300 ease-in-out rounded-full",{variants:{variant:{default:"bg-primary",success:"bg-green-500",warning:"bg-yellow-500",danger:"bg-red-500"}},defaultVariants:{variant:"default"}});return(s,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(y)(e.unref(o)({size:t.size}),s.$attrs.class))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)(e.unref(r)({variant:t.variant}))),style:e.normalizeStyle({width:`${a.value}%`}),role:"progressbar","aria-valuenow":a.value,"aria-valuemin":0,"aria-valuemax":100},null,14,Ui)],2))}},qi=["aria-valuenow"],Jn={__name:"ProgressBar",props:{value:{type:Number,default:0},max:{type:Number,default:100},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","success","warning","danger"].includes(t)},showLabel:Boolean,class:String},setup(t){const n=t,a=e.computed(()=>{const m=n.value/n.max*100;return Math.min(Math.max(m,0),100)}),o=z.cva("relative w-full overflow-hidden rounded-full bg-secondary",{variants:{size:{sm:"h-2",md:"h-3",lg:"h-4"}}}),r=z.cva("h-full w-full flex-1 transition-all duration-300 ease-in-out",{variants:{variant:{default:"bg-primary",success:"bg-green-500",warning:"bg-yellow-500",danger:"bg-danger"}}}),s=e.computed(()=>y(o({size:n.size}),n.class)),l=e.computed(()=>r({variant:n.variant})),c=e.computed(()=>"absolute inset-0 flex items-center justify-center text-xs font-medium text-primary-foreground");return(m,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(s.value)},[e.createElementVNode("div",{class:e.normalizeClass(l.value),style:e.normalizeStyle({width:`${a.value}%`}),role:"progressbar","aria-valuenow":a.value,"aria-valuemin":0,"aria-valuemax":100},null,14,qi),t.showLabel?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(c.value)},e.toDisplayString(a.value)+"% ",3)):e.createCommentVNode("",!0)],2))}},Wi={class:"flex items-center space-x-2"},Yi=["aria-checked","disabled"],Qn={__name:"Radio",props:{modelValue:null,value:{type:[String,Number,Boolean],required:!0},label:String,disabled:Boolean,size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},class:String},emits:["update:modelValue"],setup(t,{emit:n}){const a=t,o=n,r=e.computed(()=>a.modelValue===a.value),s=z.cva("aspect-square rounded-full border border-primary text-primary ring-offset-background focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",{variants:{size:{sm:"h-4 w-4",md:"h-5 w-5",lg:"h-6 w-6"}}}),l=e.computed(()=>y(s({size:a.size}),a.disabled&&"cursor-not-allowed opacity-50",a.class)),c=e.computed(()=>y("flex items-center justify-center rounded-full bg-primary",{"h-2 w-2":a.size==="sm","h-2.5 w-2.5":a.size==="md","h-3 w-3":a.size==="lg"})),m=e.computed(()=>y("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",!a.disabled&&"cursor-pointer")),f=()=>{a.disabled||o("update:modelValue",a.value)};return(p,v)=>(e.openBlock(),e.createElementBlock("div",Wi,[e.createElementVNode("button",{type:"button",role:"radio","aria-checked":r.value,disabled:t.disabled,class:e.normalizeClass(l.value),onClick:f},[r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(c.value)},null,2)):e.createCommentVNode("",!0)],10,Yi),t.label?(e.openBlock(),e.createElementBlock("label",{key:0,class:e.normalizeClass(m.value),onClick:f},e.toDisplayString(t.label),3)):e.createCommentVNode("",!0)]))}},Hi=["id","name","value","disabled","required"],ue={__name:"Select",props:{modelValue:{type:[String,Number,Boolean],default:""},id:{type:String,default:null},name:{type:String,default:null},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},class:String},emits:["update:modelValue"],setup(t){const n=t,a=z.cva("border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 text-sm min-w-[60px] focus:border-transparent",{variants:{disabled:{true:"bg-gray-100 cursor-not-allowed opacity-50",false:"bg-white hover:border-slate-400"}}}),o=e.computed(()=>y(a({disabled:n.disabled}),"px-3 py-2",n.class));return(r,s)=>(e.openBlock(),e.createElementBlock("select",e.mergeProps({id:t.id,name:t.name,value:t.modelValue,disabled:t.disabled,required:t.required,class:o.value},r.$attrs,{onChange:s[0]||(s[0]=l=>r.$emit("update:modelValue",l.target.value))}),[e.renderSlot(r.$slots,"default")],16,Hi))}},Gi=["aria-checked","disabled"],Zn={__name:"Switch",props:{modelValue:Boolean,disabled:Boolean,size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},class:String},emits:["update:modelValue"],setup(t,{emit:n}){const a=t,o=n,r=z.cva("peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50",{variants:{size:{sm:"h-5 w-9",md:"h-6 w-11",lg:"h-7 w-12"},checked:{true:"bg-primary",false:"bg-input"}}}),s=z.cva("pointer-events-none block rounded-full bg-background shadow-lg ring-0 transition-transform",{variants:{size:{sm:"h-4 w-4",md:"h-5 w-5",lg:"h-6 w-6"},checked:{true:"",false:""}},compoundVariants:[{size:"sm",checked:!0,class:"translate-x-4"},{size:"sm",checked:!1,class:"translate-x-0"},{size:"md",checked:!0,class:"translate-x-5"},{size:"md",checked:!1,class:"translate-x-0"},{size:"lg",checked:!0,class:"translate-x-5"},{size:"lg",checked:!1,class:"translate-x-0"}]}),l=e.computed(()=>y(r({size:a.size,checked:a.modelValue}),a.class)),c=e.computed(()=>s({size:a.size,checked:a.modelValue})),m=()=>{a.disabled||o("update:modelValue",!a.modelValue)};return(f,p)=>(e.openBlock(),e.createElementBlock("button",{type:"button",role:"switch","aria-checked":t.modelValue,disabled:t.disabled,class:e.normalizeClass(l.value),onClick:m},[e.createElementVNode("span",{class:e.normalizeClass(c.value)},null,2)],10,Gi))}},eo={__name:"Text",props:{as:{type:String,default:"p"},size:{type:String,default:"md",validator:t=>["xs","sm","md","lg","xl"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","muted","danger"].includes(t)},weight:{type:String,default:"normal",validator:t=>["normal","medium","semibold","bold"].includes(t)},align:{type:String,default:"left",validator:t=>["left","center","right","justify"].includes(t)},class:String},setup(t){const n=t,a=z.cva("leading-relaxed",{variants:{size:{xs:"text-xs",sm:"text-sm",md:"text-base",lg:"text-lg",xl:"text-xl"},variant:{default:"text-foreground",muted:"text-muted-foreground",danger:"text-danger"},weight:{normal:"font-normal",medium:"font-medium",semibold:"font-semibold",bold:"font-bold"},align:{left:"text-left",center:"text-center",right:"text-right",justify:"text-justify"}}}),o=e.computed(()=>y(a({size:n.size,variant:n.variant,weight:n.weight,align:n.align}),n.class));return(r,s)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.as),{class:e.normalizeClass(o.value)},{default:e.withCtx(()=>[e.renderSlot(r.$slots,"default")]),_:3},8,["class"]))}},Ki=["id","value","placeholder","disabled","readonly","required","rows","maxlength","aria-describedby","aria-invalid"],ea={__name:"Textarea",props:{modelValue:{type:String,default:""},placeholder:{type:String,default:""},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},rows:{type:Number,default:3},maxlength:{type:Number,default:null},resize:{type:String,default:"vertical",validator:t=>["none","vertical","horizontal","both"].includes(t)},autoResize:{type:Boolean,default:!1},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","error","success"].includes(t)},error:{type:String,default:null},id:{type:String,default:null}},emits:["update:modelValue","blur","focus","keydown"],setup(t,{expose:n,emit:a}){const o=t,r=a,s=e.ref(null),l=e.computed(()=>o.id||e.useId()),c=d=>{r("update:modelValue",d.target.value),o.autoResize&&e.nextTick(()=>g())},m=d=>r("blur",d),f=d=>r("focus",d),p=d=>r("keydown",d),v=e.computed(()=>!!o.error||o.variant==="error"),B=e.computed(()=>o.error?`${l.value}-error`:void 0),h=z.cva("block w-full rounded-lg border transition-colors duration-200 placeholder:text-slate-400 focus:outline-none focus:ring-2 focus:ring-offset-0 disabled:bg-slate-50 disabled:text-slate-500 disabled:cursor-not-allowed",{variants:{size:{sm:"px-3 py-1.5 text-sm",md:"px-3 py-2 text-sm",lg:"px-4 py-3 text-base"},variant:{default:"border-slate-300 focus:border-blue-500 focus:ring-blue-500",error:"border-red-300 focus:border-red-500 focus:ring-red-500",success:"border-green-300 focus:border-green-500 focus:ring-green-500"},resize:{none:"resize-none",vertical:"resize-y",horizontal:"resize-x",both:"resize"}},defaultVariants:{size:"md",variant:"default",resize:"vertical"}}),k=e.computed(()=>y(h({size:o.size,variant:o.variant,resize:o.resize}))),g=()=>{if(!s.value||!o.autoResize)return;const d=s.value;d.style.height="auto",d.style.height=`${d.scrollHeight}px`};return e.watch(()=>o.modelValue,()=>{o.autoResize&&e.nextTick(()=>g())},{immediate:!0}),n({focus:()=>s.value?.focus(),blur:()=>s.value?.blur(),select:()=>s.value?.select()}),(d,u)=>(e.openBlock(),e.createElementBlock("textarea",{id:l.value,ref_key:"textareaRef",ref:s,value:t.modelValue,placeholder:t.placeholder,disabled:t.disabled,readonly:t.readonly,required:t.required,rows:t.rows,maxlength:t.maxlength,class:e.normalizeClass(k.value),"aria-describedby":B.value,"aria-invalid":v.value,onInput:c,onBlur:m,onFocus:f,onKeydown:p},null,42,Ki))}},ta={__name:"Tooltip",props:{content:{type:String,required:!0},placement:{type:String,default:"top",validator:t=>["top","bottom","left","right"].includes(t)},delay:{type:Number,default:0},class:String},setup(t){const n=t,a=e.ref(!1),o=e.ref(null),r=e.ref(null),s=e.ref({});let l=null;const c=z.cva("fixed z-[9999] px-3 py-1.5 text-sm text-white bg-gray-900 rounded-md shadow-lg pointer-events-none whitespace-nowrap",{variants:{placement:{top:"",bottom:"",left:"",right:""}}}),m=z.cva("absolute w-2 h-2 bg-primary transform rotate-45",{variants:{placement:{top:"top-full left-1/2 transform -translate-x-1/2 -mt-1",bottom:"bottom-full left-1/2 transform -translate-x-1/2 -mb-1",left:"left-full top-1/2 transform -translate-y-1/2 -ml-1",right:"right-full top-1/2 transform -translate-y-1/2 -mr-1"}}}),f=e.computed(()=>y(c({placement:n.placement}),n.class)),p=e.computed(()=>m({placement:n.placement})),v=()=>{if(!o.value||!r.value)return;const k=o.value.getBoundingClientRect(),g=r.value.getBoundingClientRect();let d=0,u=0;const i=8;switch(n.placement){case"top":d=k.top-g.height-i,u=k.left+k.width/2-g.width/2;break;case"bottom":d=k.bottom+i,u=k.left+k.width/2-g.width/2;break;case"left":d=k.top+k.height/2-g.height/2,u=k.left-g.width-i;break;case"right":d=k.top+k.height/2-g.height/2,u=k.right+i;break}const b=8;u<b&&(u=b),u+g.width>window.innerWidth-b&&(u=window.innerWidth-g.width-b),d<b&&(d=b),d+g.height>window.innerHeight-b&&(d=window.innerHeight-g.height-b),s.value={top:`${d}px`,left:`${u}px`}},B=()=>{l&&clearTimeout(l),l=setTimeout(async()=>{a.value=!0,await e.nextTick(),v()},n.delay)},h=()=>{l&&clearTimeout(l),a.value=!1};return(k,g)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"triggerRef",ref:o,class:"relative inline-block",onMouseenter:B,onMouseleave:h},[e.renderSlot(k.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createVNode(e.Transition,{"enter-active-class":"transition-opacity duration-200","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"transition-opacity duration-200","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:e.withCtx(()=>[a.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"tooltipRef",ref:r,class:e.normalizeClass(f.value),style:e.normalizeStyle(s.value),role:"tooltip"},[e.createTextVNode(e.toDisplayString(t.content)+" ",1),e.createElementVNode("div",{class:e.normalizeClass(p.value)},null,2)],6)):e.createCommentVNode("",!0)]),_:1})]))],544))}},Xi={key:0,class:"text-red-600 ml-1","aria-hidden":"true"},tt={__name:"Typography",props:{variant:{type:String,default:"body-md",validator:t=>["body-xs","body-sm","body-md","body-lg","text-xs","text-sm","text-md","text-lg","display-sm","display-md","display-lg","caption","overline"].includes(t)},color:{type:String,default:"default",validator:t=>["default","primary","secondary","success","warning","danger","muted"].includes(t)},align:{type:String,default:"left",validator:t=>["left","center","right","justify"].includes(t)},italic:Boolean,underline:Boolean,truncate:Boolean,noWrap:Boolean,required:{type:Boolean,default:!1}},setup(t){const n=t,a=e.computed(()=>({"body-xs":"p","body-sm":"p","body-md":"p","body-lg":"p","text-xs":"h6","text-sm":"h5","text-md":"h4","text-lg":"h3","display-sm":"h2","display-md":"h1","display-lg":"h1",caption:"span",overline:"span"})[n.variant]||"p"),o=e.computed(()=>({"body-xs":"text-xs leading-normal","body-sm":"text-sm leading-relaxed","body-md":"text-base leading-relaxed","body-lg":"text-lg leading-relaxed","text-xs":"text-md font-semibold leading-snug","text-sm":"text-xl font-semibold leading-snug","text-md":"text-2xl font-semibold leading-snug","text-lg":"text-3xl font-bold leading-snug","display-sm":"text-4xl font-bold leading-tight tracking-tight","display-md":"text-5xl font-bold leading-tight tracking-tight","display-lg":"text-6xl font-bold leading-tight tracking-tight",caption:"text-xs leading-normal",overline:"text-xs font-medium uppercase tracking-wider leading-normal"})[n.variant]),r=e.computed(()=>({default:"text-slate-900",primary:"text-blue-600",secondary:"text-slate-600",success:"text-green-600",warning:"text-yellow-600",danger:"text-red-600",muted:"text-slate-500"})[n.color]),s=e.computed(()=>({left:"text-left",center:"text-center",right:"text-right",justify:"text-justify"})[n.align]),l=e.computed(()=>[o.value,r.value,s.value,{italic:n.italic,underline:n.underline,truncate:n.truncate,"whitespace-nowrap":n.noWrap}]);return(c,m)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.value),e.mergeProps({class:l.value},c.$attrs),{default:e.withCtx(()=>[e.renderSlot(c.$slots,"default"),t.required?(e.openBlock(),e.createElementBlock("span",Xi,"*")):e.createCommentVNode("",!0)]),_:3},16,["class"]))}},Ji={class:"flex items-start gap-3"},Qi={key:0,class:"flex-shrink-0 mt-0.5"},Zi={class:"flex-1 min-w-0"},ec={key:0,class:"font-medium text-sm mb-1"},tc={key:1,class:"mt-3 flex gap-2"},ac=["aria-label"],to=Object.assign({inheritAttrs:!1},{__name:"Alert",props:{variant:{type:String,default:"info",validator:t=>["info","success","warning","error","default","danger"].includes(t)},title:String,message:String,dismissible:{type:Boolean,default:!1},dismissLabel:{type:String,default:"Dismiss alert"},showIcon:{type:Boolean,default:!0},actions:{type:Array,default:()=>[]},autoClose:{type:[Boolean,Number],default:!1}},emits:["dismiss","action"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(!0),s=()=>{r.value=!1,o("dismiss")},l=d=>{o("action",d),d.onClick&&d.onClick()};if(a.autoClose){const d=typeof a.autoClose=="number"?a.autoClose:5e3;setTimeout(s,d)}const c={template:`
|
|
568
568
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor">
|
|
569
569
|
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
570
570
|
d="M12 9v2m0 4h.01M21 12A9 9 0 1112 3a9 9 0 019 9z" />
|
|
@@ -589,7 +589,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
589
589
|
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
|
|
590
590
|
d="M6 18L18 6M6 6l12 12" />
|
|
591
591
|
</svg>
|
|
592
|
-
`},B=e.computed(()=>({info:c,success:m,warning:f,error:p,default:c,destructive:p})[a.variant]),h=z.cva("relative w-full rounded-lg border p-4 flex items-start gap-3",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive",info:"bg-blue-50 border-blue-200 text-blue-800",success:"bg-green-50 border-green-200 text-green-800",warning:"bg-yellow-50 border-yellow-200 text-yellow-800",error:"bg-red-50 border-red-200 text-red-800"}},defaultVariants:{variant:"default"}}),k=e.computed(()=>["w-5 h-5",{info:"text-blue-500",success:"text-green-500",warning:"text-yellow-500",error:"text-red-500",default:"text-foreground",destructive:"text-destructive"}[a.variant]]),g=e.computed(()=>["flex-shrink-0 p-1 rounded-md transition-colors duration-200",{info:"text-blue-500 hover:text-blue-700 hover:bg-blue-100",success:"text-green-500 hover:text-green-700 hover:bg-green-100",warning:"text-yellow-500 hover:text-yellow-700 hover:bg-yellow-100",error:"text-red-500 hover:text-red-700 hover:bg-red-100",default:"text-foreground hover:text-foreground/80 hover:bg-muted",destructive:"text-destructive hover:text-destructive/80 hover:bg-destructive/10"}[a.variant]]);return(d,u)=>(e.openBlock(),e.createBlock(e.Transition,{"enter-active-class":"transition-all duration-300","enter-from-class":"opacity-0 scale-95","enter-to-class":"opacity-100 scale-100","leave-active-class":"transition-all duration-200","leave-from-class":"opacity-100 scale-100","leave-to-class":"opacity-0 scale-95"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(y)(e.unref(h)({variant:t.variant}),d.$attrs.class)),role:"alert"},[e.createElementVNode("div",Ji,[t.showIcon?(e.openBlock(),e.createElementBlock("div",Qi,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(B.value),{class:e.normalizeClass(k.value)},null,8,["class"]))])):e.createCommentVNode("",!0),e.createElementVNode("div",Zi,[t.title?(e.openBlock(),e.createElementBlock("h4",ec,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["text-sm",{"mt-0":!t.title,"mt-1":t.title}])},[e.renderSlot(d.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.message),1)])],2),d.$slots.actions||t.actions.length>0?(e.openBlock(),e.createElementBlock("div",tc,[e.renderSlot(d.$slots,"actions",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.actions,i=>(e.openBlock(),e.createBlock(Z,{key:i.label,variant:i.variant||"outline",size:i.size||"sm",onClick:b=>l(i)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.label),1)]),_:2},1032,["variant","size","onClick"]))),128))])])):e.createCommentVNode("",!0)]),t.dismissible?(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass(g.value),"aria-label":t.dismissLabel,onClick:s},[e.createVNode(v,{class:"w-4 h-4"})],10,ac)):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0)]),_:3}))}}),nc=["aria-label"],oc={class:"flex items-center space-x-1"},ao={__name:"Breadcrumb",props:{items:{type:Array,required:!0,validator:t=>t.every(n=>n.label)},separator:{type:String,default:"chevron-right"},ariaLabel:{type:String,default:"Breadcrumb navigation"},variant:{type:String,default:"default",validator:t=>["default","ghost"].includes(t)}},setup(t){const n=t,a=z.cva("",{variants:{variant:{default:"",ghost:"text-muted-foreground"}}}),o=e.computed(()=>y(a({variant:n.variant})));return(r,s)=>(e.openBlock(),e.createElementBlock("nav",{"aria-label":t.ariaLabel,class:e.normalizeClass(["flex",o.value])},[e.createElementVNode("ol",oc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(l,c)=>(e.openBlock(),e.createElementBlock("li",{key:c,class:"flex items-center"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.href?"a":"span"),{href:l.href,class:e.normalizeClass(["text-sm font-medium transition-colors hover:text-foreground",c===t.items.length-1?"text-foreground":"text-muted-foreground hover:text-foreground"]),"aria-current":c===t.items.length-1?"page":void 0},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l.label),1)]),_:2},1032,["href","class","aria-current"])),c<t.items.length-1?(e.openBlock(),e.createBlock(j,{key:0,name:t.separator,class:"mx-2 h-4 w-4 text-muted-foreground"},null,8,["name"])):e.createCommentVNode("",!0)]))),128))])],10,nc))}},rc=["aria-label"],no={__name:"ButtonGroup",props:{orientation:{type:String,default:"horizontal",validator:t=>["horizontal","vertical"].includes(t)},size:{type:String,default:"default",validator:t=>["sm","default","lg"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","outline","ghost"].includes(t)},ariaLabel:String},setup(t){const n=t,a=z.cva("inline-flex",{variants:{orientation:{horizontal:"flex-row [&>*:not(:first-child)]:ml-[-1px] [&>*:not(:first-child):not(:last-child)]:rounded-none [&>*:first-child]:rounded-r-none [&>*:last-child]:rounded-l-none",vertical:"flex-col [&>*:not(:first-child)]:mt-[-1px] [&>*:not(:first-child):not(:last-child)]:rounded-none [&>*:first-child]:rounded-b-none [&>*:last-child]:rounded-t-none"}}}),o=e.computed(()=>y(a({orientation:n.orientation})));return(r,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value),role:"group","aria-label":t.ariaLabel},[e.renderSlot(r.$slots,"default")],10,rc))}},lc={key:0,class:"absolute inset-0 bg-white/60 backdrop-blur-sm flex items-center justify-center z-10","aria-hidden":"true"},sc={class:"flex items-start justify-between gap-4"},ic={class:"flex-1 min-w-0"},cc={key:0,class:"flex-shrink-0"},dc=["src","alt","loading"],uc={key:5,class:"absolute top-3 right-3"},mc={class:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-slate-900 text-white"},fc="w-full h-full object-cover",gc="font-semibold text-slate-900 line-clamp-2",pc="text-sm text-slate-600 mt-1 line-clamp-2",oo={__name:"Card",props:{as:{type:String,default:"div"},variant:{type:String,default:"default",validator:t=>["default","outlined","elevated","filled","ghost"].includes(t)},padding:{type:String,default:"md",validator:t=>["none","sm","md","lg","xl"].includes(t)},bordered:{type:Boolean,default:!0},title:String,titleTag:{type:String,default:"h3"},titleSize:{type:String,default:"default",validator:t=>["sm","default","lg","xl"].includes(t)},subtitle:String,badge:String,image:String,imageAlt:{type:String,default:"Card image"},imageAspect:{type:String,default:"auto",validator:t=>["auto","video","square","portrait"].includes(t)},imageLazy:{type:Boolean,default:!0},hoverable:Boolean,clickable:Boolean,disabled:Boolean,loading:Boolean},emits:["click"],setup(t,{emit:n}){const a=t,o=n,r=h=>{a.clickable&&!a.disabled&&!a.loading&&o("click",h)},s=h=>{a.clickable&&!a.disabled&&!a.loading&&o("click",h)},l=e.computed(()=>({sm:"text-base",default:"text-lg",lg:"text-xl",xl:"text-2xl"})[a.titleSize]),c=e.computed(()=>({auto:"",video:"aspect-video",square:"aspect-square",portrait:"aspect-[3/4]"})[a.imageAspect]),m=z.cva("rounded-lg overflow-hidden transition-all duration-200 relative",{variants:{variant:{default:"bg-white",outlined:"bg-white",elevated:"bg-white shadow-md",filled:"bg-slate-50",ghost:"bg-transparent"},padding:{none:"",sm:"p-3",md:"p-4",lg:"p-6",xl:"p-8"},bordered:{true:"",false:""},hoverable:{true:"hover:shadow-lg hover:scale-[1.02]"},clickable:{true:"cursor-pointer focus:outline-none focus:ring-2 focus:ring-slate-400 focus:ring-offset-2"},loading:{true:""}},compoundVariants:[{variant:"default",bordered:!0,class:"border border-slate-200"},{variant:"outlined",bordered:!0,class:"border-2 border-slate-300"},{variant:"elevated",bordered:!0,class:"border border-slate-100"},{variant:"filled",bordered:!0,class:"border border-slate-200"},{clickable:!0,hoverable:!1,class:"hover:bg-slate-50"}],defaultVariants:{variant:"default",padding:"md",bordered:!0}}),f=z.cva("",{variants:{padding:{none:"p-4 pb-3",sm:"px-3 pt-3 pb-2",md:"px-4 pt-4 pb-3",lg:"px-6 pt-6 pb-4",xl:"px-8 pt-8 pb-6"},hasBorder:{true:"border-b border-slate-200 mb-0",false:""}}}),p=z.cva("",{variants:{padding:{none:"p-4",sm:"p-3",md:"p-4",lg:"p-6",xl:"p-8"}}}),v=z.cva("border-t border-slate-200 bg-slate-50/50",{variants:{padding:{none:"p-4 pt-3",sm:"px-3 pb-3 pt-2",md:"px-4 pb-4 pt-3",lg:"px-6 pb-6 pt-4",xl:"px-8 pb-8 pt-6"}}}),B=z.cva("overflow-hidden",{variants:{padding:{none:"",sm:"-mx-3 mb-3",md:"-mx-4 mb-4",lg:"-mx-6 mb-6",xl:"-mx-8 mb-8"},hasHeader:{true:"",false:""}},compoundVariants:[{hasHeader:!0,padding:"sm",class:"-mt-3"},{hasHeader:!0,padding:"md",class:"-mt-4"},{hasHeader:!0,padding:"lg",class:"-mt-6"},{hasHeader:!0,padding:"xl",class:"-mt-8"}]});return(h,k)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.as),{class:e.normalizeClass(e.unref(y)(e.unref(m)({variant:t.variant,padding:t.padding,hoverable:t.hoverable,clickable:t.clickable,loading:t.loading,bordered:t.bordered}))),disabled:t.disabled||t.loading,"aria-busy":t.loading,"aria-disabled":t.disabled,role:t.clickable?"button":void 0,tabindex:t.clickable&&!t.disabled?0:void 0,onClick:r,onKeydown:[e.withKeys(s,["enter"]),e.withKeys(e.withModifiers(s,["prevent"]),["space"])]},{default:e.withCtx(()=>[t.loading?(e.openBlock(),e.createElementBlock("div",lc,[...k[0]||(k[0]=[e.createElementVNode("div",{class:"animate-spin rounded-full h-8 w-8 border-b-2 border-slate-900"},null,-1)])])):e.createCommentVNode("",!0),h.$slots.header||t.title||t.subtitle||h.$slots.actions?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(y)(e.unref(f)({padding:t.padding,hasBorder:!!(h.$slots.default||h.$slots.footer)})))},[e.renderSlot(h.$slots,"header",{},()=>[e.createElementVNode("div",sc,[e.createElementVNode("div",ic,[t.title?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.titleTag),{key:0,class:e.normalizeClass(e.unref(y)(gc,l.value))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.title),1)]),_:1},8,["class"])):e.createCommentVNode("",!0),t.subtitle?(e.openBlock(),e.createElementBlock("p",{key:1,class:e.normalizeClass(pc)},e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)]),h.$slots.actions?(e.openBlock(),e.createElementBlock("div",cc,[e.renderSlot(h.$slots,"actions")])):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0),h.$slots.image||t.image?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(e.unref(y)(e.unref(B)({padding:t.padding,hasHeader:!!(h.$slots.header||t.title)})))},[e.renderSlot(h.$slots,"image",{},()=>[t.image?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.image,alt:t.imageAlt,class:e.normalizeClass(e.unref(y)(fc,c.value)),loading:t.imageLazy?"lazy":"eager"},null,10,dc)):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0),h.$slots.default?(e.openBlock(),e.createElementBlock("div",{key:3,class:e.normalizeClass(e.unref(y)(e.unref(p)({padding:t.padding})))},[e.renderSlot(h.$slots,"default")],2)):e.createCommentVNode("",!0),h.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:4,class:e.normalizeClass(e.unref(y)(e.unref(v)({padding:t.padding})))},[e.renderSlot(h.$slots,"footer")],2)):e.createCommentVNode("",!0),t.badge?(e.openBlock(),e.createElementBlock("div",uc,[e.createElementVNode("span",mc,e.toDisplayString(t.badge),1)])):e.createCommentVNode("",!0)]),_:3},40,["class","disabled","aria-busy","aria-disabled","role","tabindex","onKeydown"]))}},vc={class:"flex flex-col"},hc={key:0},bc={key:1},yc={key:0},ro=Object.assign({inheritAttrs:!1},{__name:"CardHeader",props:{title:{type:String,default:""},subtitle:{type:String,default:""}},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("header",{class:e.normalizeClass(e.unref(y)("flex items-center justify-between",n.$attrs.class))},[e.createElementVNode("div",vc,[t.title||n.$slots.title?(e.openBlock(),e.createElementBlock("h2",hc,[e.renderSlot(n.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])])):e.createCommentVNode("",!0),t.subtitle||n.$slots.description?(e.openBlock(),e.createElementBlock("p",bc,[e.renderSlot(n.$slots,"description",{},()=>[e.createTextVNode(e.toDisplayString(t.subtitle),1)])])):e.createCommentVNode("",!0)]),n.$slots.actions?(e.openBlock(),e.createElementBlock("div",yc,[e.renderSlot(n.$slots,"actions")])):e.createCommentVNode("",!0)],2))}}),lo={__name:"CardBody",props:{variant:{type:String,default:"default",validator:t=>["default","compact","spacious"].includes(t)}},setup(t){const n=t,a=z.cva("p-6",{variants:{variant:{default:"p-6",compact:"p-4",spacious:"p-8"}}}),o=e.computed(()=>y(a({variant:n.variant})));return(r,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(r.$slots,"default")],2))}},so={__name:"CardFooter",props:{variant:{type:String,default:"default",validator:t=>["default","compact","spacious"].includes(t)}},setup(t){const n=t,a=z.cva("flex items-center p-6 pt-0",{variants:{variant:{default:"p-6 pt-0",compact:"p-4 pt-0",spacious:"p-8 pt-0"}}}),o=e.computed(()=>y(a({variant:n.variant})));return(r,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(r.$slots,"default")],2))}},io=Object.assign({inheritAttrs:!1},{__name:"CardContent",setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(y)("p-6 pt-0",n.$attrs.class))},[e.renderSlot(n.$slots,"default")],2))}}),co=Object.assign({inheritAttrs:!1},{__name:"CardTitle",setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("h3",{class:e.normalizeClass(e.unref(y)("text-2xl font-semibold leading-none tracking-tight",n.$attrs.class))},[e.renderSlot(n.$slots,"default")],2))}}),xc={class:"relative w-full"},kc={class:"relative"},wc=["id","value","disabled","placeholder","required","aria-describedby"],Cc={class:"flex items-center justify-between mb-4"},Bc={class:"text-base font-semibold text-slate-900"},Sc={class:"grid grid-cols-7 gap-1 mb-2"},Vc={class:"grid grid-cols-7 gap-1"},Ec=["disabled","onClick"],Nc={key:0,class:"mt-4 pt-3 border-t border-slate-200"},ct={__name:"DatePicker",props:{id:String,modelValue:[String,Date],disabled:Boolean,required:Boolean,min:[String,Date],max:[String,Date],placeholder:{type:String,default:"Select date"},format:{type:String,default:"MM/DD/YYYY"},clearable:{type:Boolean,default:!0},showToday:{type:Boolean,default:!0},calendarPosition:{type:String,default:"left-0 bottom-full"},ariaDescribedby:String},emits:["update:modelValue"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(!1),s=new Date,l=e.ref(s.getMonth()),c=e.ref(s.getFullYear()),m=e.ref(null),f=["Su","Mo","Tu","We","Th","Fr","Sa"],p=e.computed(()=>new Date(c.value,l.value).toLocaleString("default",{month:"long"})),v=e.computed(()=>new Date(c.value,l.value+1,0).getDate()),B=e.computed(()=>new Date(c.value,l.value,1).getDay()),h=e.computed(()=>{const x=new Date(c.value,l.value,0).getDate(),N=B.value;return Array.from({length:N},(P,Y)=>x-N+Y+1)}),k=e.computed(()=>{const x=h.value.length+v.value,N=x%7===0?0:7-x%7;return Array.from({length:N},(P,Y)=>Y+1)}),g=e.computed(()=>m.value?d(m.value):"");function d(x){if(!x)return"";const N=new Date(x),P=String(N.getMonth()+1).padStart(2,"0"),Y=String(N.getDate()).padStart(2,"0"),U=N.getFullYear();return a.format.replace("MM",P).replace("DD",Y).replace("YYYY",U)}function u(x){if(!x)return null;if(x instanceof Date)return x;if(typeof x=="string"){const P=x.split("-");if(P.length===3){const Y=parseInt(P[0],10),U=parseInt(P[1],10)-1,ne=parseInt(P[2],10);return new Date(Y,U,ne)}}const N=new Date(x);return isNaN(N.getTime())?null:N}function i(x){return s.getDate()===x&&s.getMonth()===l.value&&s.getFullYear()===c.value}function b(x){if(!m.value)return!1;const N=new Date(m.value);return N.getDate()===x&&N.getMonth()===l.value&&N.getFullYear()===c.value}function E(x){const N=new Date(c.value,l.value,x);if(a.min){const P=u(a.min);if(P&&N<P)return!0}if(a.max){const P=u(a.max);if(P&&N>P)return!0}return!1}function V(){a.disabled||(r.value=!r.value)}function F(){r.value=!1}function I(){l.value===0?(l.value=11,c.value--):l.value--}function W(){l.value===11?(l.value=0,c.value++):l.value++}function _(x){if(E(x))return;const N=new Date(c.value,l.value,x);m.value=N;const P=N.getFullYear(),Y=String(N.getMonth()+1).padStart(2,"0"),U=String(N.getDate()).padStart(2,"0"),ne=`${P}-${Y}-${U}`;o("update:modelValue",ne),setTimeout(()=>{r.value=!1},150)}function S(){l.value=s.getMonth(),c.value=s.getFullYear(),_(s.getDate())}function O(){m.value=null,o("update:modelValue","")}e.watch(()=>a.modelValue,x=>{if(x){const N=u(x);N&&(m.value=N,l.value=N.getMonth(),c.value=N.getFullYear())}else m.value=null},{immediate:!0});function L(x){x.key==="Escape"&&r.value&&F()}return e.onMounted(()=>{document.addEventListener("keydown",L)}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",L)}),(x,N)=>(e.openBlock(),e.createElementBlock("div",xc,[e.createElementVNode("div",kc,[e.createElementVNode("input",{id:t.id,type:"text",value:g.value,readonly:"",disabled:t.disabled,placeholder:t.placeholder,required:t.required,"aria-describedby":t.ariaDescribedby,class:"w-full px-3 py-2 pr-10 border border-slate-300 rounded-md bg-white text-slate-900 placeholder-slate-400 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500 cursor-pointer disabled:bg-slate-50 disabled:text-slate-500 disabled:cursor-not-allowed",onClick:V},null,8,wc),N[2]||(N[2]=e.createElementVNode("div",{class:"absolute right-3 top-1/2 -translate-y-1/2 pointer-events-none"},[e.createElementVNode("svg",{class:"w-5 h-5 text-slate-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"})])],-1)),t.clearable&&g.value&&!t.disabled?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"absolute right-9 top-1/2 -translate-y-1/2 p-1 hover:bg-slate-100 rounded","aria-label":"Clear date",onClick:e.withModifiers(O,["stop"])},[...N[1]||(N[1]=[e.createElementVNode("svg",{class:"w-4 h-4 text-slate-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})],-1)])])):e.createCommentVNode("",!0)]),e.createVNode(e.Transition,{"enter-active-class":"transition ease-out duration-100","enter-from-class":"transform opacity-0 scale-95","enter-to-class":"transform opacity-100 scale-100","leave-active-class":"transition ease-in duration-75","leave-from-class":"transform opacity-100 scale-100","leave-to-class":"transform opacity-0 scale-95"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["absolute z-[9999] mb-2 bg-white border border-slate-200 rounded-lg shadow-lg p-4",t.calendarPosition]),onClick:N[0]||(N[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Cc,[e.createElementVNode("button",{type:"button",class:"p-2 rounded-lg hover:bg-slate-100 transition-colors","aria-label":"Previous Month",onClick:I},[...N[3]||(N[3]=[e.createElementVNode("svg",{class:"w-5 h-5 text-slate-700",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 18l-6-6 6-6"})],-1)])]),e.createElementVNode("div",Bc,e.toDisplayString(p.value)+" "+e.toDisplayString(c.value),1),e.createElementVNode("button",{type:"button",class:"p-2 rounded-lg hover:bg-slate-100 transition-colors","aria-label":"Next Month",onClick:W},[...N[4]||(N[4]=[e.createElementVNode("svg",{class:"w-5 h-5 text-slate-700",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 18l6-6-6-6"})],-1)])])]),e.createElementVNode("div",Sc,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(f,P=>e.createElementVNode("div",{key:P,class:"text-center text-xs font-medium text-slate-600 py-1"},e.toDisplayString(P),1)),64))]),e.createElementVNode("div",Vc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,(P,Y)=>(e.openBlock(),e.createElementBlock("div",{key:"prev-"+Y,class:"text-center text-sm text-slate-300 py-2"},e.toDisplayString(P),1))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(v.value,P=>(e.openBlock(),e.createElementBlock("button",{key:P,type:"button",disabled:E(P),class:e.normalizeClass(["w-9 h-9 rounded-lg text-sm font-medium transition-colors",i(P)&&!b(P)?"bg-blue-50 text-blue-600 border border-blue-200":"",b(P)?"bg-blue-500 text-white hover:bg-blue-600":"text-slate-700 hover:bg-slate-100",E(P)?"text-slate-300 cursor-not-allowed hover:bg-transparent":"cursor-pointer"]),onClick:Y=>_(P)},e.toDisplayString(P),11,Ec))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,(P,Y)=>(e.openBlock(),e.createElementBlock("div",{key:"next-"+Y,class:"text-center text-sm text-slate-300 py-2"},e.toDisplayString(P),1))),128))]),t.showToday?(e.openBlock(),e.createElementBlock("div",Nc,[e.createElementVNode("button",{type:"button",class:"w-full px-3 py-2 text-sm font-medium text-blue-600 hover:bg-blue-50 rounded-lg transition-colors",onClick:S}," Today ")])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0)]),_:1}),r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-[9998]",onClick:F})):e.createCommentVNode("",!0)]))}},$c=["aria-expanded"],uo={__name:"Dropdown",props:{triggerText:{type:String,default:"Options"},placement:{type:String,default:"bottom-start",validator:t=>["bottom-start","bottom-end","top-start","top-end"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","outline","ghost"].includes(t)}},setup(t){const n=t,a=e.ref(!1),o=e.ref(null),r=z.cva("inline-flex items-center justify-center rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",ghost:"hover:bg-accent hover:text-accent-foreground"}}}),s=z.cva("absolute z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md",{variants:{placement:{"bottom-start":"top-full left-0 mt-1","bottom-end":"top-full right-0 mt-1","top-start":"bottom-full left-0 mb-1","top-end":"bottom-full right-0 mb-1"}}}),l=e.computed(()=>y(r({variant:n.variant}),"h-10 px-4 py-2")),c=e.computed(()=>y(s({placement:n.placement}))),m=()=>{a.value=!a.value},f=p=>{o.value&&!o.value.contains(p.target)&&(a.value=!1)};return e.onMounted(()=>{document.addEventListener("click",f)}),e.onUnmounted(()=>{document.removeEventListener("click",f)}),(p,v)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"dropdownRef",ref:o,class:"relative"},[e.createElementVNode("button",{class:e.normalizeClass(l.value),"aria-expanded":a.value,"aria-haspopup":!0,onClick:m},[e.renderSlot(p.$slots,"trigger",{},()=>[e.createElementVNode("span",null,e.toDisplayString(t.triggerText),1),e.createVNode(j,{name:"chevron-down",class:"ml-2 h-4 w-4"})])],10,$c),e.createVNode(e.Transition,{"enter-active-class":"transition ease-out duration-100","enter-from-class":"transform opacity-0 scale-95","enter-to-class":"transform opacity-100 scale-100","leave-active-class":"transition ease-in duration-75","leave-from-class":"transform opacity-100 scale-100","leave-to-class":"transform opacity-0 scale-95"},{default:e.withCtx(()=>[a.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(c.value),role:"menu","aria-orientation":"vertical"},[e.renderSlot(p.$slots,"default")],2)):e.createCommentVNode("",!0)]),_:3})],512))}},zc={key:1,class:"ml-auto text-xs tracking-widest opacity-60"},mo={__name:"DropdownItem",props:{href:String,icon:String,shortcut:String,disabled:Boolean,variant:{type:String,default:"default",validator:t=>["default","destructive"].includes(t)}},emits:["click"],setup(t,{emit:n}){const a=t,o=n,r=z.cva("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",{variants:{variant:{default:"hover:bg-accent hover:text-accent-foreground",destructive:"text-destructive hover:bg-destructive hover:text-destructive-foreground"}}}),s=e.computed(()=>y(r({variant:a.variant}))),l=c=>{a.disabled||o("click",c)};return(c,m)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.href?"a":"button"),{href:t.href,class:e.normalizeClass(s.value),disabled:t.disabled,role:"menuitem",onClick:l},{default:e.withCtx(()=>[t.icon?(e.openBlock(),e.createBlock(j,{key:0,name:t.icon,class:"mr-2 h-4 w-4"},null,8,["name"])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default"),t.shortcut?(e.openBlock(),e.createElementBlock("span",zc,e.toDisplayString(t.shortcut),1)):e.createCommentVNode("",!0)]),_:3},8,["href","class","disabled"]))}},Dc={class:"w-full"},Tc=["multiple","accept"],Ac={class:"flex flex-col items-center justify-center py-6"},Fc={key:0,class:"text-xs text-muted-foreground mt-1"},Pc={key:0,class:"mt-4 space-y-2"},Ic={class:"flex items-center space-x-2"},jc={class:"text-sm"},Lc={class:"text-xs text-muted-foreground"},Oc=["onClick"],fo={__name:"FileUpload",props:{multiple:Boolean,accept:String,maxSize:Number,variant:{type:String,default:"default",validator:t=>["default","dashed"].includes(t)}},emits:["files-selected","file-removed"],setup(t,{emit:n}){const a=t,o=n,r=e.ref([]),s=e.ref(!1),l=e.ref(null),c=z.cva("border-2 border-dashed rounded-lg cursor-pointer transition-all duration-200",{variants:{variant:{default:"border-muted-foreground/25 hover:border-muted-foreground/50 hover:bg-muted/30",dashed:"border-primary/50 hover:border-primary/70 hover:bg-primary/10"}}}),m=e.computed(()=>y(c({variant:a.variant}),{"border-green-500 bg-green-50/50":r.value.length>0&&!s.value,"border-blue-500 bg-blue-50/50 ring-2 ring-blue-200/50":s.value,"border-green-600 bg-green-100/50 ring-2 ring-green-200/50":r.value.length>0&&s.value})),f=i=>{i.preventDefault(),s.value=!1;const b=Array.from(i.dataTransfer.files);g(b)},p=i=>{i.preventDefault()},v=i=>{i.preventDefault(),s.value=!0},B=i=>{i.preventDefault(),s.value=!1},h=()=>{l.value?.click()},k=i=>{const b=Array.from(i.target.files);g(b)},g=i=>{const b=i.filter(E=>!(a.maxSize&&E.size>a.maxSize));a.multiple?r.value.push(...b):r.value=b.slice(0,1),o("files-selected",r.value)},d=i=>{r.value.splice(i,1),o("file-removed",r.value)},u=i=>{if(i===0)return"0 Bytes";const b=1024,E=["Bytes","KB","MB","GB"],V=Math.floor(Math.log(i)/Math.log(b));return parseFloat((i/Math.pow(b,V)).toFixed(2))+" "+E[V]};return(i,b)=>(e.openBlock(),e.createElementBlock("div",Dc,[e.createElementVNode("div",{class:e.normalizeClass(m.value),onDrop:f,onDragover:p,onDragenter:v,onDragleave:B,onClick:h},[e.createElementVNode("input",{ref_key:"fileInput",ref:l,type:"file",multiple:t.multiple,accept:t.accept,class:"hidden",onChange:k},null,40,Tc),e.createElementVNode("div",Ac,[e.createVNode(j,{icon:"upload",class:"h-8 w-8 text-muted-foreground mb-2"}),b[0]||(b[0]=e.createElementVNode("p",{class:"text-sm text-muted-foreground text-center"},[e.createElementVNode("span",{class:"font-semibold"},"Click to upload"),e.createTextVNode(" or drag and drop ")],-1)),t.accept?(e.openBlock(),e.createElementBlock("p",Fc,e.toDisplayString(t.accept),1)):e.createCommentVNode("",!0)])],34),r.value.length>0?(e.openBlock(),e.createElementBlock("div",Pc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,(E,V)=>(e.openBlock(),e.createElementBlock("div",{key:V,class:"flex items-center justify-between p-2 bg-gray-300 rounded-md"},[e.createElementVNode("div",Ic,[e.createVNode(j,{icon:"file",class:"h-4 w-4 text-muted-foreground"}),e.createElementVNode("span",jc,e.toDisplayString(E.name),1),e.createElementVNode("span",Lc,"("+e.toDisplayString(u(E.size))+")",1)]),e.createElementVNode("button",{class:"text-muted-foreground hover:text-foreground",onClick:F=>d(V)},[e.createVNode(j,{icon:"x",class:"h-4 w-4"})],8,Oc)]))),128))])):e.createCommentVNode("",!0)]))}},Mc=["for"],Rc={key:0,class:"text-red-500 ml-1","aria-label":"required"},_c={class:"relative"},Uc=["aria-label"],qc=["id"],Wc=["id"],aa={__name:"FormField",props:{label:String,description:String,error:String,success:String,helpText:String,required:{type:Boolean,default:!1},type:{type:String,default:"text"},modelValue:[String,Date],size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},id:String},emits:["update:modelValue"],setup(t,{emit:n}){const a=t,o=n,r=`field-${Math.random().toString(36).slice(2,9)}`,s=e.computed(()=>`${a.id||r}-${Math.random().toString(36).slice(2,5)}`),l=e.computed(()=>!!a.error),c=e.ref(!1),m=()=>{c.value=!c.value},f=e.computed(()=>{const g=[];return a.error?g.push(`${s.value}-error`):a.helpText&&g.push(`${s.value}-help`),g.length>0?g.join(" "):void 0}),p=z.cva("",{variants:{size:{sm:"space-y-1",md:"space-y-2",lg:"space-y-3"}},defaultVariants:{size:"md"}}),v=z.cva("block text-slate-900",{variants:{size:{sm:"text-xs font-medium",md:"text-sm font-medium",lg:"text-base font-medium"}},defaultVariants:{size:"md"}}),B=z.cva("text-slate-600",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-base"}},defaultVariants:{size:"md"}}),h=z.cva("flex items-start gap-2",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-sm"},intent:{error:"text-red-600",success:"text-green-600"}},defaultVariants:{size:"md",intent:"error"}}),k=z.cva("text-slate-500",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-sm"}},defaultVariants:{size:"md"}});return(g,d)=>{const u=e.resolveComponent("font-awesome-icon");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(y)(e.unref(p)({size:t.size}),g.$attrs.class))},[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:s.value,class:e.normalizeClass(e.unref(y)(e.unref(v)({size:t.size})))},[e.createTextVNode(e.toDisplayString(t.label)+" ",1),t.required?(e.openBlock(),e.createElementBlock("span",Rc,"*")):e.createCommentVNode("",!0)],10,Mc)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:e.normalizeClass(e.unref(y)(e.unref(B)({size:t.size})))},e.toDisplayString(t.description),3)):e.createCommentVNode("",!0),e.createElementVNode("div",_c,[t.type==="date"?(e.openBlock(),e.createBlock(ct,{key:0,id:s.value,"model-value":t.modelValue,disabled:!1,required:t.required,class:e.normalizeClass(l.value?"border-red-500":""),"onUpdate:modelValue":d[0]||(d[0]=i=>o("update:modelValue",i))},null,8,["id","model-value","required","class"])):e.renderSlot(g.$slots,"default",{key:1,fieldId:s.value,hasError:l.value,ariaDescribedBy:f.value,showPassword:c.value,togglePasswordVisibility:m}),t.type==="password"?(e.openBlock(),e.createElementBlock("button",{key:2,type:"button",class:"absolute inset-y-0 right-0 pr-3 flex items-center text-slate-400 hover:text-slate-600 transition-colors","aria-label":c.value?"Hide password":"Show password",onClick:m},[e.createVNode(u,{icon:c.value?"eye-slash":"eye",class:"w-4 h-4"},null,8,["icon"])],8,Uc)):e.createCommentVNode("",!0)]),e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-200","enter-from-class":"opacity-0 -translate-y-1","enter-to-class":"opacity-100 translate-y-0","leave-active-class":"transition-all duration-150","leave-from-class":"opacity-100 translate-y-0","leave-to-class":"opacity-0 -translate-y-1"},{default:e.withCtx(()=>[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,id:`${s.value}-error`,class:e.normalizeClass(e.unref(y)(e.unref(h)({size:t.size,intent:"error"}))),role:"alert","aria-live":"polite"},[e.createVNode(u,{icon:"exclamation-triangle",class:"w-4 h-4 flex-shrink-0 mt-0.5"}),e.createElementVNode("span",null,e.toDisplayString(t.error),1)],10,qc)):e.createCommentVNode("",!0)]),_:1}),t.helpText&&!l.value?(e.openBlock(),e.createElementBlock("p",{key:2,id:`${s.value}-help`,class:e.normalizeClass(e.unref(y)(e.unref(k)({size:t.size})))},e.toDisplayString(t.helpText),11,Wc)):e.createCommentVNode("",!0),e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-200","enter-from-class":"opacity-0 -translate-y-1","enter-to-class":"opacity-100 translate-y-0","leave-active-class":"transition-all duration-150","leave-from-class":"opacity-100 translate-y-0","leave-to-class":"opacity-0 -translate-y-1"},{default:e.withCtx(()=>[t.success&&!l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(y)(e.unref(h)({size:t.size,intent:"success"})))},[e.createVNode(u,{icon:"check",class:"w-4 h-4 flex-shrink-0 mt-0.5"}),e.createElementVNode("span",null,e.toDisplayString(t.success),1)],2)):e.createCommentVNode("",!0)]),_:1})],2)}}},Yc={key:0,class:"flex items-center px-3 bg-muted border border-r-0 rounded-l-md"},Hc={key:1,class:"flex items-center px-3 bg-muted border border-l-0 rounded-r-md"},go={__name:"InputGroup",props:{variant:{type:String,default:"default",validator:t=>["default","outline"].includes(t)}},setup(t){const n=t,a=z.cva("flex w-full",{variants:{variant:{default:"[&>input]:rounded-none [&>input:first-child]:rounded-l-md [&>input:last-child]:rounded-r-md",outline:"border border-input rounded-md [&>input]:border-0 [&>input]:rounded-none"}}}),o=e.computed(()=>y(a({variant:n.variant})));return(r,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[r.$slots.prefix?(e.openBlock(),e.createElementBlock("div",Yc,[e.renderSlot(r.$slots,"prefix")])):e.createCommentVNode("",!0),e.renderSlot(r.$slots,"default"),r.$slots.suffix?(e.openBlock(),e.createElementBlock("div",Hc,[e.renderSlot(r.$slots,"suffix")])):e.createCommentVNode("",!0)],2))}},Gc=["role"],Kc={key:0,class:"flex-shrink-0"},Xc={class:"flex-1 min-w-0"},Jc={key:0,class:"text-sm font-medium text-foreground"},Qc={key:1,class:"text-sm text-muted-foreground"},Zc={key:1,class:"flex-shrink-0"},po={__name:"ListItem",props:{title:String,description:String,icon:String,href:String,role:String,variant:{type:String,default:"default",validator:t=>["default","interactive"].includes(t)}},emits:["click"],setup(t,{emit:n}){const a=t,o=n,r=z.cva("",{variants:{variant:{default:"",interactive:"hover:bg-accent/50 cursor-pointer"}}}),s=z.cva("flex items-center space-x-3 p-3",{variants:{variant:{default:"",interactive:"transition-colors rounded-md"}}}),l=e.computed(()=>y(r({variant:a.variant}))),c=e.computed(()=>y(s({variant:a.variant}))),m=f=>{o("click",f)};return(f,p)=>(e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(l.value),role:t.role},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.href?"a":"div"),{href:t.href,class:e.normalizeClass(c.value),onClick:m},{default:e.withCtx(()=>[f.$slots.icon||t.icon?(e.openBlock(),e.createElementBlock("div",Kc,[e.renderSlot(f.$slots,"icon",{},()=>[t.icon?(e.openBlock(),e.createBlock(j,{key:0,name:t.icon,class:"h-5 w-5"},null,8,["name"])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Xc,[t.title?(e.openBlock(),e.createElementBlock("div",Jc,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("div",Qc,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0),e.renderSlot(f.$slots,"default")]),f.$slots.action?(e.openBlock(),e.createElementBlock("div",Zc,[e.renderSlot(f.$slots,"action")])):e.createCommentVNode("",!0)]),_:3},8,["href","class"]))],10,Gc))}},ed={key:1,class:"ml-auto text-xs tracking-widest opacity-60"},vo={__name:"MenuItem",props:{href:String,icon:String,shortcut:String,disabled:Boolean,hasSubmenu:Boolean,variant:{type:String,default:"default",validator:t=>["default","destructive"].includes(t)}},emits:["click"],setup(t,{emit:n}){const a=t,o=n,r=z.cva("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 w-full text-left",{variants:{variant:{default:"hover:bg-accent hover:text-accent-foreground",destructive:"text-destructive hover:bg-destructive hover:text-destructive-foreground"}}}),s=e.computed(()=>y(r({variant:a.variant}))),l=c=>{a.disabled||o("click",c)};return(c,m)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.href?"a":"button"),{href:t.href,class:e.normalizeClass(s.value),disabled:t.disabled,role:"menuitem",onClick:l},{default:e.withCtx(()=>[t.icon?(e.openBlock(),e.createBlock(j,{key:0,name:t.icon,class:"mr-2 h-4 w-4"},null,8,["name"])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default"),t.shortcut?(e.openBlock(),e.createElementBlock("span",ed,e.toDisplayString(t.shortcut),1)):e.createCommentVNode("",!0),t.hasSubmenu?(e.openBlock(),e.createBlock(j,{key:2,name:"chevron-right",class:"ml-auto h-4 w-4"})):e.createCommentVNode("",!0)]),_:3},8,["href","class","disabled"]))}},na={__name:"Modal",props:{modelValue:Boolean,showClose:{type:Boolean,default:!0},closeOnBackdrop:{type:Boolean,default:!0},size:{type:String,default:"4xl",validator:t=>["sm","md","lg","xl","2xl","3xl","4xl","5xl","6xl","7xl","full"].includes(t)},resizable:{type:Boolean,default:!1}},emits:["update:modelValue","close"],setup(t,{emit:n}){const a=z.cva("relative w-full overflow-y-auto border bg-white p-6 shadow-lg duration-200 sm:rounded-lg",{variants:{size:{sm:"max-w-sm max-h-[50vh]",md:"max-w-md max-h-[70vh]",lg:"max-w-lg max-h-[80vh]",xl:"max-w-xl max-h-[90vh]","2xl":"max-w-2xl max-h-[90vh]","3xl":"max-w-3xl max-h-[90vh]","4xl":"max-w-4xl max-h-[100vh]","5xl":"max-w-5xl max-h-[100vh]","6xl":"max-w-6xl max-h-[100vh]","7xl":"max-w-7xl max-h-[100vh]",full:"max-w-full max-h-[100vh]"}},defaultVariants:{size:"4xl"}}),o=t,r=n,s=()=>{r("update:modelValue",!1),r("close")},l=m=>{o.closeOnBackdrop&&m.target===m.currentTarget&&s()};let c=null;return e.watch(()=>o.modelValue,m=>{m?(c=f=>{f.key==="Escape"&&s()},document.addEventListener("keydown",c)):c&&(document.removeEventListener("keydown",c),c=null)},{immediate:!0}),e.onUnmounted(()=>{c&&(document.removeEventListener("keydown",c),c=null)}),(m,f)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createVNode(e.Transition,{"enter-active-class":"transition-opacity duration-300","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"transition-opacity duration-300","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:e.withCtx(()=>[t.modelValue?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-50 bg-background/80 backdrop-blur-sm flex items-center justify-center",onClick:l},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)(e.unref(a)({size:t.size}),t.resizable?"resize":"")),style:e.normalizeStyle(t.resizable?"min-width: 400px; min-height: 200px;":"")},[t.showClose?(e.openBlock(),e.createElementBlock("button",{key:0,"aria-label":"Close",class:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",onClick:s},[e.createVNode(j,{icon:"x",class:"h-4 w-4"}),f[0]||(f[0]=e.createElementVNode("span",{class:"sr-only"},"Close",-1))])):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"default")],6)])):e.createCommentVNode("",!0)]),_:3})]))}},td={class:"flex flex-col space-y-1.5 text-center sm:text-left"},ad={key:0,class:"text-lg font-semibold leading-none tracking-tight"},nd={key:1,class:"text-sm text-muted-foreground"},ho={__name:"ModalHeader",props:{title:String,description:String},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",td,[t.title?(e.openBlock(),e.createElementBlock("h2",ad,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",nd,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"default")]))}},bo={__name:"ModalBody",props:{variant:{type:String,default:"default",validator:t=>["default","compact"].includes(t)}},setup(t){const n=t,a=z.cva("",{variants:{variant:{default:"py-4",compact:"py-2"}}}),o=e.computed(()=>y(a({variant:n.variant})));return(r,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(r.$slots,"default")],2))}},yo={__name:"ModalFooter",props:{variant:{type:String,default:"default",validator:t=>["default","center"].includes(t)}},setup(t){const n=t,a=z.cva("flex gap-2 pt-4",{variants:{variant:{default:"flex-col-reverse sm:flex-row sm:justify-end",center:"justify-center"}}}),o=e.computed(()=>y(a({variant:n.variant})));return(r,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(r.$slots,"default")],2))}},od=["aria-live"],rd={class:"flex items-start space-x-3"},ld={key:0,class:"flex-shrink-0"},sd={class:"flex-1 min-w-0"},id={key:0,class:"text-sm font-medium"},xo={__name:"Notification",props:{title:String,message:String,variant:{type:String,default:"default",validator:t=>["default","success","warning","destructive"].includes(t)},dismissible:{type:Boolean,default:!0},showIcon:{type:Boolean,default:!0},autoClose:{type:Number,default:0}},emits:["dismiss"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(!0),s=z.cva("pointer-events-auto w-full max-w-sm overflow-hidden rounded-lg bg-background shadow-lg ring-1 ring-black ring-opacity-5",{variants:{variant:{default:"border-l-4 border-primary",success:"border-l-4 border-green-500",warning:"border-l-4 border-yellow-500",destructive:"border-l-4 border-destructive"}}}),l={default:"info",success:"check-circle",warning:"alert-triangle",destructive:"alert-circle"},c=z.cva("h-5 w-5",{variants:{variant:{default:"text-primary",success:"text-green-500",warning:"text-yellow-500",destructive:"text-destructive"}}}),m=e.computed(()=>y(s({variant:a.variant}),"p-4")),f=e.computed(()=>l[a.variant]),p=e.computed(()=>c({variant:a.variant})),v=()=>{r.value=!1,o("dismiss")};return e.onMounted(()=>{a.autoClose>0&&setTimeout(()=>{v()},a.autoClose)}),(B,h)=>(e.openBlock(),e.createBlock(e.Transition,{"enter-active-class":"transition-all duration-300 ease-out","enter-from-class":"transform translate-x-full opacity-0","enter-to-class":"transform translate-x-0 opacity-100","leave-active-class":"transition-all duration-300 ease-in","leave-from-class":"transform translate-x-0 opacity-100","leave-to-class":"transform translate-x-full opacity-0"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(m.value),role:"alert","aria-live":t.variant==="destructive"?"assertive":"polite"},[e.createElementVNode("div",rd,[t.showIcon?(e.openBlock(),e.createElementBlock("div",ld,[e.createVNode(j,{name:f.value,class:e.normalizeClass(p.value)},null,8,["name","class"])])):e.createCommentVNode("",!0),e.createElementVNode("div",sd,[t.title?(e.openBlock(),e.createElementBlock("div",id,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.message?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["text-sm",{"mt-1":t.title}])},e.toDisplayString(t.message),3)):e.createCommentVNode("",!0),e.renderSlot(B.$slots,"default")]),t.dismissible?(e.openBlock(),e.createElementBlock("button",{key:1,class:"flex-shrink-0 rounded-md p-1.5 hover:bg-black/5 focus:outline-none focus:ring-2 focus:ring-offset-2",onClick:v},[e.createVNode(j,{name:"x",class:"h-4 w-4"})])):e.createCommentVNode("",!0)])],10,od)):e.createCommentVNode("",!0)]),_:3}))}},Me=e.ref([]);let cd=0;const dd={duration:3e3,position:"top-center",dismissible:!0,closeButton:!1},ud=()=>`toast-${++cd}-${Date.now()}`,de=(t,n={})=>{const a=ud(),o={id:a,message:t,...dd,...n,createdAt:Date.now()};return Me.value.push(e.markRaw(o)),o.duration&&o.duration>0&&setTimeout(()=>{je(a)},o.duration),a},je=t=>{const n=Me.value.findIndex(a=>a.id===t);n>-1&&Me.value.splice(n,1)},ko=()=>{Me.value=[]},pe=Object.assign((t,n)=>de(t,{...n}),{success:(t,n)=>de(t,{...n,variant:"success"}),error:(t,n)=>de(t,{...n,variant:"error"}),warning:(t,n)=>de(t,{...n,variant:"warning"}),info:(t,n)=>de(t,{...n,variant:"info"}),promise:(t,n={})=>{const{loading:a="Loading...",success:o="Success",error:r="Error",...s}=n,l=de(a,{...s,variant:"loading",duration:0,dismissible:!1});return t.then(c=>{je(l);const m=typeof o=="function"?o(c):o;return de(m,{...s,variant:"success"}),c}).catch(c=>{je(l);const m=typeof r=="function"?r(c):r;throw de(m,{...s,variant:"error"}),c})},dismiss:je,dismissAll:ko,custom:(t,n={})=>de("",{...n,component:e.markRaw(t)})}),wo=()=>({toasts:Me,dismiss:je,dismissAll:ko}),md=["aria-live"],fd={class:"flex-1 grid gap-1"},gd={key:0,class:"text-lg font-extrabold"},pd={key:1,class:"text-md opacity-90"},vd={key:2,class:"text-md opacity-90"},hd=["onClick"],bd=["onClick"],Co={__name:"Toast",props:{position:{type:String,default:"top-center",validator:t=>["top-left","top-center","top-right","bottom-left","bottom-center","bottom-right"].includes(t)},hotkey:{type:Array,default:()=>["altKey","KeyT"]},richColors:{type:Boolean,default:!1},expand:{type:Boolean,default:!1},visibleToasts:{type:Number,default:3},closeButton:{type:Boolean,default:!1}},setup(t){const n=t,{toasts:a,dismiss:o}=wo(),r={"top-left":"top-0 left-0 flex-col","top-center":"top-0 left-1/2 -translate-x-1/2 flex-col","top-right":"top-0 right-0 flex-col","bottom-left":"bottom-0 left-0 flex-col-reverse","bottom-center":"bottom-0 left-1/2 -translate-x-1/2 flex-col-reverse","bottom-right":"bottom-0 right-0 flex-col-reverse"},s=e.computed(()=>y(r[n.position])),l=z.cva("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all",{variants:{variant:{default:"border border-gray-300 bg-gray-50 text-gray-800 dark:border-gray-800 dark:bg-gray-500 dark:text-gray-50",info:"border-blue-500/20 bg-blue-50 text-blue-900 dark:border-blue-500/30 dark:bg-blue-950 dark:text-blue-50",success:"border border-green-200 bg-green-50 text-green-800 dark:border-green-200 dark:bg-green-50 dark:text-green-900",warning:"border-yellow-500/20 bg-yellow-50 text-yellow-900 dark:border-yellow-500/30 dark:bg-yellow-950 dark:text-yellow-50",error:"border-red-500/30 bg-red-50 text-red-900 dark:border-red-500/40 dark:bg-red-950 dark:text-red-50 ring-1 ring-red-500/20 dark:ring-red-500/30",loading:"border border-border animate-pulse bg-gray-800 text-gray-800 dark:border-gray-800 dark:bg-gray-700 dark:text-gray-50"}},defaultVariants:{variant:"default"}}),c=k=>y(l({variant:k.variant})),m={default:"bell",info:"info",success:"check-circle",warning:"triangle-exclamation",error:"circle-exclamation",loading:"loader"},f={default:"text-muted-foreground",info:"text-blue-600 dark:text-blue-400",success:"text-green-600 dark:text-green-400",warning:"text-yellow-600 dark:text-yellow-400",error:"text-red-600 dark:text-red-400",loading:"text-muted-foreground animate-spin"},p=k=>k.icon||m[k.variant]||m.default,v=k=>{const g=f[k.variant]||f.default;return k.variant==="loading"?`${g} animate-spin`:g},B=k=>k.icon!==!1,h=k=>k.dismissible!==!1&&(k.closeButton||n.closeButton||k.dismissible);return(k,g)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)(s.value,"fixed z-[100] flex max-h-screen w-full p-4 md:max-w-[420px]"))},[e.createVNode(e.TransitionGroup,{"enter-active-class":"transition-all duration-300 ease-out","enter-from-class":"transform translate-x-full opacity-0 scale-95","enter-to-class":"transform translate-x-0 opacity-100 scale-100","leave-active-class":"transition-all duration-200 ease-in","leave-from-class":"transform translate-x-0 opacity-100 scale-100","leave-to-class":"transform translate-x-full opacity-0 scale-95","move-class":"transition-all duration-200",tag:"div",class:"space-y-2"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(a),d=>(e.openBlock(),e.createElementBlock("div",{key:d.id,class:e.normalizeClass([c(d),"group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all"]),role:"alert","aria-live":d.variant==="error"?"assertive":"polite"},[B(d)?(e.openBlock(),e.createBlock(j,{key:0,icon:p(d),class:e.normalizeClass([v(d),"h-4 w-4 shrink-0"])},null,8,["icon","class"])):e.createCommentVNode("",!0),e.createElementVNode("div",fd,[d.title?(e.openBlock(),e.createElementBlock("div",gd,e.toDisplayString(d.title),1)):e.createCommentVNode("",!0),d.message?(e.openBlock(),e.createElementBlock("div",pd,e.toDisplayString(d.message),1)):e.createCommentVNode("",!0),d.description?(e.openBlock(),e.createElementBlock("div",vd,e.toDisplayString(d.description),1)):e.createCommentVNode("",!0),d.component?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(d.component),e.mergeProps({key:3,ref_for:!0},d.componentProps),null,16)):e.createCommentVNode("",!0)]),d.action?(e.openBlock(),e.createElementBlock("button",{key:1,class:"inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-xs font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",onClick:d.action.onClick},e.toDisplayString(d.action.label),9,hd)):e.createCommentVNode("",!0),h(d)?(e.openBlock(),e.createElementBlock("button",{key:2,class:"absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100",onClick:u=>e.unref(o)(d.id)},[e.createVNode(j,{icon:"x",class:"h-4 w-4"})],8,bd)):e.createCommentVNode("",!0)],10,md))),128))]),_:1})],2)]))}},yd={class:"relative"},xd={class:"absolute left-3 top-1/2 transform -translate-y-1/2 pointer-events-none"},kd=["value","placeholder","disabled"],wd={key:0,class:"absolute right-3 top-1/2 transform -translate-y-1/2"},Cd=["aria-label"],Bd={key:1,class:"animate-spin"},Sd={key:0,class:"max-h-64 overflow-y-auto"},Vd=["onClick","onMouseenter"],Ed={class:"flex-1 text-left"},Nd={class:"font-medium text-slate-900"},$d={key:0,class:"text-sm text-slate-500 truncate"},zd={key:1,class:"text-xs text-slate-400 ml-3"},Dd={key:1,class:"px-4 py-3 text-sm text-slate-500 text-center"},Td={key:2,class:"border-t border-slate-200 p-2"},Bo={__name:"Search",props:{modelValue:{type:String,default:""},results:{type:Array,default:()=>[]},placeholder:{type:String,default:"Search..."},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},clearLabel:{type:String,default:"Clear search"},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},debounce:{type:Number,default:300},minLength:{type:Number,default:1},showNoResults:{type:Boolean,default:!0},noResultsText:{type:String,default:"No results found"},highlightMatches:{type:Boolean,default:!0}},emits:["update:modelValue","search","select","clear","focus","blur"],setup(t,{emit:n}){const a={template:`<svg fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
|
|
592
|
+
`},B=e.computed(()=>({info:c,success:m,warning:f,error:p,default:c,danger:p})[a.variant]),h=z.cva("relative w-full rounded-lg border p-4 flex items-start gap-3",{variants:{variant:{default:"bg-background text-foreground",danger:"border-danger/50 text-danger dark:border-danger",info:"bg-blue-50 border-blue-200 text-blue-800",success:"bg-green-50 border-green-200 text-green-800",warning:"bg-yellow-50 border-yellow-200 text-yellow-800",error:"bg-red-50 border-red-200 text-red-800"}},defaultVariants:{variant:"default"}}),k=e.computed(()=>["w-5 h-5",{info:"text-blue-500",success:"text-green-500",warning:"text-yellow-500",error:"text-red-500",default:"text-foreground",danger:"text-danger"}[a.variant]]),g=e.computed(()=>["flex-shrink-0 p-1 rounded-md transition-colors duration-200",{info:"text-blue-500 hover:text-blue-700 hover:bg-blue-100",success:"text-green-500 hover:text-green-700 hover:bg-green-100",warning:"text-yellow-500 hover:text-yellow-700 hover:bg-yellow-100",error:"text-red-500 hover:text-red-700 hover:bg-red-100",default:"text-foreground hover:text-foreground/80 hover:bg-muted",danger:"text-danger hover:text-danger/80 hover:bg-danger/10"}[a.variant]]);return(d,u)=>(e.openBlock(),e.createBlock(e.Transition,{"enter-active-class":"transition-all duration-300","enter-from-class":"opacity-0 scale-95","enter-to-class":"opacity-100 scale-100","leave-active-class":"transition-all duration-200","leave-from-class":"opacity-100 scale-100","leave-to-class":"opacity-0 scale-95"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(y)(e.unref(h)({variant:t.variant}),d.$attrs.class)),role:"alert"},[e.createElementVNode("div",Ji,[t.showIcon?(e.openBlock(),e.createElementBlock("div",Qi,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(B.value),{class:e.normalizeClass(k.value)},null,8,["class"]))])):e.createCommentVNode("",!0),e.createElementVNode("div",Zi,[t.title?(e.openBlock(),e.createElementBlock("h4",ec,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["text-sm",{"mt-0":!t.title,"mt-1":t.title}])},[e.renderSlot(d.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.message),1)])],2),d.$slots.actions||t.actions.length>0?(e.openBlock(),e.createElementBlock("div",tc,[e.renderSlot(d.$slots,"actions",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.actions,i=>(e.openBlock(),e.createBlock(Z,{key:i.label,variant:i.variant||"outline",size:i.size||"sm",onClick:b=>l(i)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.label),1)]),_:2},1032,["variant","size","onClick"]))),128))])])):e.createCommentVNode("",!0)]),t.dismissible?(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass(g.value),"aria-label":t.dismissLabel,onClick:s},[e.createVNode(v,{class:"w-4 h-4"})],10,ac)):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0)]),_:3}))}}),nc=["aria-label"],oc={class:"flex items-center space-x-1"},ao={__name:"Breadcrumb",props:{items:{type:Array,required:!0,validator:t=>t.every(n=>n.label)},separator:{type:String,default:"chevron-right"},ariaLabel:{type:String,default:"Breadcrumb navigation"},variant:{type:String,default:"default",validator:t=>["default","ghost"].includes(t)}},setup(t){const n=t,a=z.cva("",{variants:{variant:{default:"",ghost:"text-muted-foreground"}}}),o=e.computed(()=>y(a({variant:n.variant})));return(r,s)=>(e.openBlock(),e.createElementBlock("nav",{"aria-label":t.ariaLabel,class:e.normalizeClass(["flex",o.value])},[e.createElementVNode("ol",oc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(l,c)=>(e.openBlock(),e.createElementBlock("li",{key:c,class:"flex items-center"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.href?"a":"span"),{href:l.href,class:e.normalizeClass(["text-sm font-medium transition-colors hover:text-foreground",c===t.items.length-1?"text-foreground":"text-muted-foreground hover:text-foreground"]),"aria-current":c===t.items.length-1?"page":void 0},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l.label),1)]),_:2},1032,["href","class","aria-current"])),c<t.items.length-1?(e.openBlock(),e.createBlock(j,{key:0,name:t.separator,class:"mx-2 h-4 w-4 text-muted-foreground"},null,8,["name"])):e.createCommentVNode("",!0)]))),128))])],10,nc))}},rc=["aria-label"],no={__name:"ButtonGroup",props:{orientation:{type:String,default:"horizontal",validator:t=>["horizontal","vertical"].includes(t)},size:{type:String,default:"default",validator:t=>["sm","default","lg"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","outline","ghost"].includes(t)},ariaLabel:String},setup(t){const n=t,a=z.cva("inline-flex",{variants:{orientation:{horizontal:"flex-row [&>*:not(:first-child)]:ml-[-1px] [&>*:not(:first-child):not(:last-child)]:rounded-none [&>*:first-child]:rounded-r-none [&>*:last-child]:rounded-l-none",vertical:"flex-col [&>*:not(:first-child)]:mt-[-1px] [&>*:not(:first-child):not(:last-child)]:rounded-none [&>*:first-child]:rounded-b-none [&>*:last-child]:rounded-t-none"}}}),o=e.computed(()=>y(a({orientation:n.orientation})));return(r,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value),role:"group","aria-label":t.ariaLabel},[e.renderSlot(r.$slots,"default")],10,rc))}},lc={key:0,class:"absolute inset-0 bg-white/60 backdrop-blur-sm flex items-center justify-center z-10","aria-hidden":"true"},sc={class:"flex items-start justify-between gap-4"},ic={class:"flex-1 min-w-0"},cc={key:0,class:"flex-shrink-0"},dc=["src","alt","loading"],uc={key:5,class:"absolute top-3 right-3"},mc={class:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-slate-900 text-white"},fc="w-full h-full object-cover",gc="font-semibold text-slate-900 line-clamp-2",pc="text-sm text-slate-600 mt-1 line-clamp-2",oo={__name:"Card",props:{as:{type:String,default:"div"},variant:{type:String,default:"default",validator:t=>["default","outlined","elevated","filled","ghost"].includes(t)},padding:{type:String,default:"md",validator:t=>["none","sm","md","lg","xl"].includes(t)},bordered:{type:Boolean,default:!0},title:String,titleTag:{type:String,default:"h3"},titleSize:{type:String,default:"default",validator:t=>["sm","default","lg","xl"].includes(t)},subtitle:String,badge:String,image:String,imageAlt:{type:String,default:"Card image"},imageAspect:{type:String,default:"auto",validator:t=>["auto","video","square","portrait"].includes(t)},imageLazy:{type:Boolean,default:!0},hoverable:Boolean,clickable:Boolean,disabled:Boolean,loading:Boolean},emits:["click"],setup(t,{emit:n}){const a=t,o=n,r=h=>{a.clickable&&!a.disabled&&!a.loading&&o("click",h)},s=h=>{a.clickable&&!a.disabled&&!a.loading&&o("click",h)},l=e.computed(()=>({sm:"text-base",default:"text-lg",lg:"text-xl",xl:"text-2xl"})[a.titleSize]),c=e.computed(()=>({auto:"",video:"aspect-video",square:"aspect-square",portrait:"aspect-[3/4]"})[a.imageAspect]),m=z.cva("rounded-lg overflow-hidden transition-all duration-200 relative",{variants:{variant:{default:"bg-white",outlined:"bg-white",elevated:"bg-white shadow-md",filled:"bg-slate-50",ghost:"bg-transparent"},padding:{none:"",sm:"p-3",md:"p-4",lg:"p-6",xl:"p-8"},bordered:{true:"",false:""},hoverable:{true:"hover:shadow-lg hover:scale-[1.02]"},clickable:{true:"cursor-pointer focus:outline-none focus:ring-2 focus:ring-slate-400 focus:ring-offset-2"},loading:{true:""}},compoundVariants:[{variant:"default",bordered:!0,class:"border border-slate-200"},{variant:"outlined",bordered:!0,class:"border-2 border-slate-300"},{variant:"elevated",bordered:!0,class:"border border-slate-100"},{variant:"filled",bordered:!0,class:"border border-slate-200"},{clickable:!0,hoverable:!1,class:"hover:bg-slate-50"}],defaultVariants:{variant:"default",padding:"md",bordered:!0}}),f=z.cva("",{variants:{padding:{none:"p-4 pb-3",sm:"px-3 pt-3 pb-2",md:"px-4 pt-4 pb-3",lg:"px-6 pt-6 pb-4",xl:"px-8 pt-8 pb-6"},hasBorder:{true:"border-b border-slate-200 mb-0",false:""}}}),p=z.cva("",{variants:{padding:{none:"p-4",sm:"p-3",md:"p-4",lg:"p-6",xl:"p-8"}}}),v=z.cva("border-t border-slate-200 bg-slate-50/50",{variants:{padding:{none:"p-4 pt-3",sm:"px-3 pb-3 pt-2",md:"px-4 pb-4 pt-3",lg:"px-6 pb-6 pt-4",xl:"px-8 pb-8 pt-6"}}}),B=z.cva("overflow-hidden",{variants:{padding:{none:"",sm:"-mx-3 mb-3",md:"-mx-4 mb-4",lg:"-mx-6 mb-6",xl:"-mx-8 mb-8"},hasHeader:{true:"",false:""}},compoundVariants:[{hasHeader:!0,padding:"sm",class:"-mt-3"},{hasHeader:!0,padding:"md",class:"-mt-4"},{hasHeader:!0,padding:"lg",class:"-mt-6"},{hasHeader:!0,padding:"xl",class:"-mt-8"}]});return(h,k)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.as),{class:e.normalizeClass(e.unref(y)(e.unref(m)({variant:t.variant,padding:t.padding,hoverable:t.hoverable,clickable:t.clickable,loading:t.loading,bordered:t.bordered}))),disabled:t.disabled||t.loading,"aria-busy":t.loading,"aria-disabled":t.disabled,role:t.clickable?"button":void 0,tabindex:t.clickable&&!t.disabled?0:void 0,onClick:r,onKeydown:[e.withKeys(s,["enter"]),e.withKeys(e.withModifiers(s,["prevent"]),["space"])]},{default:e.withCtx(()=>[t.loading?(e.openBlock(),e.createElementBlock("div",lc,[...k[0]||(k[0]=[e.createElementVNode("div",{class:"animate-spin rounded-full h-8 w-8 border-b-2 border-slate-900"},null,-1)])])):e.createCommentVNode("",!0),h.$slots.header||t.title||t.subtitle||h.$slots.actions?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(y)(e.unref(f)({padding:t.padding,hasBorder:!!(h.$slots.default||h.$slots.footer)})))},[e.renderSlot(h.$slots,"header",{},()=>[e.createElementVNode("div",sc,[e.createElementVNode("div",ic,[t.title?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.titleTag),{key:0,class:e.normalizeClass(e.unref(y)(gc,l.value))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.title),1)]),_:1},8,["class"])):e.createCommentVNode("",!0),t.subtitle?(e.openBlock(),e.createElementBlock("p",{key:1,class:e.normalizeClass(pc)},e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)]),h.$slots.actions?(e.openBlock(),e.createElementBlock("div",cc,[e.renderSlot(h.$slots,"actions")])):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0),h.$slots.image||t.image?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(e.unref(y)(e.unref(B)({padding:t.padding,hasHeader:!!(h.$slots.header||t.title)})))},[e.renderSlot(h.$slots,"image",{},()=>[t.image?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.image,alt:t.imageAlt,class:e.normalizeClass(e.unref(y)(fc,c.value)),loading:t.imageLazy?"lazy":"eager"},null,10,dc)):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0),h.$slots.default?(e.openBlock(),e.createElementBlock("div",{key:3,class:e.normalizeClass(e.unref(y)(e.unref(p)({padding:t.padding})))},[e.renderSlot(h.$slots,"default")],2)):e.createCommentVNode("",!0),h.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:4,class:e.normalizeClass(e.unref(y)(e.unref(v)({padding:t.padding})))},[e.renderSlot(h.$slots,"footer")],2)):e.createCommentVNode("",!0),t.badge?(e.openBlock(),e.createElementBlock("div",uc,[e.createElementVNode("span",mc,e.toDisplayString(t.badge),1)])):e.createCommentVNode("",!0)]),_:3},40,["class","disabled","aria-busy","aria-disabled","role","tabindex","onKeydown"]))}},vc={class:"flex flex-col"},hc={key:0},bc={key:1},yc={key:0},ro=Object.assign({inheritAttrs:!1},{__name:"CardHeader",props:{title:{type:String,default:""},subtitle:{type:String,default:""}},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("header",{class:e.normalizeClass(e.unref(y)("flex items-center justify-between",n.$attrs.class))},[e.createElementVNode("div",vc,[t.title||n.$slots.title?(e.openBlock(),e.createElementBlock("h2",hc,[e.renderSlot(n.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])])):e.createCommentVNode("",!0),t.subtitle||n.$slots.description?(e.openBlock(),e.createElementBlock("p",bc,[e.renderSlot(n.$slots,"description",{},()=>[e.createTextVNode(e.toDisplayString(t.subtitle),1)])])):e.createCommentVNode("",!0)]),n.$slots.actions?(e.openBlock(),e.createElementBlock("div",yc,[e.renderSlot(n.$slots,"actions")])):e.createCommentVNode("",!0)],2))}}),lo={__name:"CardBody",props:{variant:{type:String,default:"default",validator:t=>["default","compact","spacious"].includes(t)}},setup(t){const n=t,a=z.cva("p-6",{variants:{variant:{default:"p-6",compact:"p-4",spacious:"p-8"}}}),o=e.computed(()=>y(a({variant:n.variant})));return(r,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(r.$slots,"default")],2))}},so={__name:"CardFooter",props:{variant:{type:String,default:"default",validator:t=>["default","compact","spacious"].includes(t)}},setup(t){const n=t,a=z.cva("flex items-center p-6 pt-0",{variants:{variant:{default:"p-6 pt-0",compact:"p-4 pt-0",spacious:"p-8 pt-0"}}}),o=e.computed(()=>y(a({variant:n.variant})));return(r,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(r.$slots,"default")],2))}},io=Object.assign({inheritAttrs:!1},{__name:"CardContent",setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(y)("p-6 pt-0",n.$attrs.class))},[e.renderSlot(n.$slots,"default")],2))}}),co=Object.assign({inheritAttrs:!1},{__name:"CardTitle",setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("h3",{class:e.normalizeClass(e.unref(y)("text-2xl font-semibold leading-none tracking-tight",n.$attrs.class))},[e.renderSlot(n.$slots,"default")],2))}}),xc={class:"relative w-full"},kc={class:"relative"},wc=["id","value","disabled","placeholder","required","aria-describedby"],Cc={class:"flex items-center justify-between mb-4"},Bc={class:"text-base font-semibold text-slate-900"},Sc={class:"grid grid-cols-7 gap-1 mb-2"},Vc={class:"grid grid-cols-7 gap-1"},Ec=["disabled","onClick"],Nc={key:0,class:"mt-4 pt-3 border-t border-slate-200"},ct={__name:"DatePicker",props:{id:String,modelValue:[String,Date],disabled:Boolean,required:Boolean,min:[String,Date],max:[String,Date],placeholder:{type:String,default:"Select date"},format:{type:String,default:"MM/DD/YYYY"},clearable:{type:Boolean,default:!0},showToday:{type:Boolean,default:!0},calendarPosition:{type:String,default:"left-0 bottom-full"},ariaDescribedby:String},emits:["update:modelValue"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(!1),s=new Date,l=e.ref(s.getMonth()),c=e.ref(s.getFullYear()),m=e.ref(null),f=["Su","Mo","Tu","We","Th","Fr","Sa"],p=e.computed(()=>new Date(c.value,l.value).toLocaleString("default",{month:"long"})),v=e.computed(()=>new Date(c.value,l.value+1,0).getDate()),B=e.computed(()=>new Date(c.value,l.value,1).getDay()),h=e.computed(()=>{const x=new Date(c.value,l.value,0).getDate(),N=B.value;return Array.from({length:N},(P,Y)=>x-N+Y+1)}),k=e.computed(()=>{const x=h.value.length+v.value,N=x%7===0?0:7-x%7;return Array.from({length:N},(P,Y)=>Y+1)}),g=e.computed(()=>m.value?d(m.value):"");function d(x){if(!x)return"";const N=new Date(x),P=String(N.getMonth()+1).padStart(2,"0"),Y=String(N.getDate()).padStart(2,"0"),U=N.getFullYear();return a.format.replace("MM",P).replace("DD",Y).replace("YYYY",U)}function u(x){if(!x)return null;if(x instanceof Date)return x;if(typeof x=="string"){const P=x.split("-");if(P.length===3){const Y=parseInt(P[0],10),U=parseInt(P[1],10)-1,ne=parseInt(P[2],10);return new Date(Y,U,ne)}}const N=new Date(x);return isNaN(N.getTime())?null:N}function i(x){return s.getDate()===x&&s.getMonth()===l.value&&s.getFullYear()===c.value}function b(x){if(!m.value)return!1;const N=new Date(m.value);return N.getDate()===x&&N.getMonth()===l.value&&N.getFullYear()===c.value}function E(x){const N=new Date(c.value,l.value,x);if(a.min){const P=u(a.min);if(P&&N<P)return!0}if(a.max){const P=u(a.max);if(P&&N>P)return!0}return!1}function V(){a.disabled||(r.value=!r.value)}function F(){r.value=!1}function I(){l.value===0?(l.value=11,c.value--):l.value--}function W(){l.value===11?(l.value=0,c.value++):l.value++}function _(x){if(E(x))return;const N=new Date(c.value,l.value,x);m.value=N;const P=N.getFullYear(),Y=String(N.getMonth()+1).padStart(2,"0"),U=String(N.getDate()).padStart(2,"0"),ne=`${P}-${Y}-${U}`;o("update:modelValue",ne),setTimeout(()=>{r.value=!1},150)}function S(){l.value=s.getMonth(),c.value=s.getFullYear(),_(s.getDate())}function O(){m.value=null,o("update:modelValue","")}e.watch(()=>a.modelValue,x=>{if(x){const N=u(x);N&&(m.value=N,l.value=N.getMonth(),c.value=N.getFullYear())}else m.value=null},{immediate:!0});function L(x){x.key==="Escape"&&r.value&&F()}return e.onMounted(()=>{document.addEventListener("keydown",L)}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",L)}),(x,N)=>(e.openBlock(),e.createElementBlock("div",xc,[e.createElementVNode("div",kc,[e.createElementVNode("input",{id:t.id,type:"text",value:g.value,readonly:"",disabled:t.disabled,placeholder:t.placeholder,required:t.required,"aria-describedby":t.ariaDescribedby,class:"w-full px-3 py-2 pr-10 border border-slate-300 rounded-md bg-white text-slate-900 placeholder-slate-400 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500 cursor-pointer disabled:bg-slate-50 disabled:text-slate-500 disabled:cursor-not-allowed",onClick:V},null,8,wc),N[2]||(N[2]=e.createElementVNode("div",{class:"absolute right-3 top-1/2 -translate-y-1/2 pointer-events-none"},[e.createElementVNode("svg",{class:"w-5 h-5 text-slate-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"})])],-1)),t.clearable&&g.value&&!t.disabled?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"absolute right-9 top-1/2 -translate-y-1/2 p-1 hover:bg-slate-100 rounded","aria-label":"Clear date",onClick:e.withModifiers(O,["stop"])},[...N[1]||(N[1]=[e.createElementVNode("svg",{class:"w-4 h-4 text-slate-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})],-1)])])):e.createCommentVNode("",!0)]),e.createVNode(e.Transition,{"enter-active-class":"transition ease-out duration-100","enter-from-class":"transform opacity-0 scale-95","enter-to-class":"transform opacity-100 scale-100","leave-active-class":"transition ease-in duration-75","leave-from-class":"transform opacity-100 scale-100","leave-to-class":"transform opacity-0 scale-95"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["absolute z-[9999] mb-2 bg-white border border-slate-200 rounded-lg shadow-lg p-4",t.calendarPosition]),onClick:N[0]||(N[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Cc,[e.createElementVNode("button",{type:"button",class:"p-2 rounded-lg hover:bg-slate-100 transition-colors","aria-label":"Previous Month",onClick:I},[...N[3]||(N[3]=[e.createElementVNode("svg",{class:"w-5 h-5 text-slate-700",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 18l-6-6 6-6"})],-1)])]),e.createElementVNode("div",Bc,e.toDisplayString(p.value)+" "+e.toDisplayString(c.value),1),e.createElementVNode("button",{type:"button",class:"p-2 rounded-lg hover:bg-slate-100 transition-colors","aria-label":"Next Month",onClick:W},[...N[4]||(N[4]=[e.createElementVNode("svg",{class:"w-5 h-5 text-slate-700",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 18l6-6-6-6"})],-1)])])]),e.createElementVNode("div",Sc,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(f,P=>e.createElementVNode("div",{key:P,class:"text-center text-xs font-medium text-slate-600 py-1"},e.toDisplayString(P),1)),64))]),e.createElementVNode("div",Vc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,(P,Y)=>(e.openBlock(),e.createElementBlock("div",{key:"prev-"+Y,class:"text-center text-sm text-slate-300 py-2"},e.toDisplayString(P),1))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(v.value,P=>(e.openBlock(),e.createElementBlock("button",{key:P,type:"button",disabled:E(P),class:e.normalizeClass(["w-9 h-9 rounded-lg text-sm font-medium transition-colors",i(P)&&!b(P)?"bg-blue-50 text-blue-600 border border-blue-200":"",b(P)?"bg-blue-500 text-white hover:bg-blue-600":"text-slate-700 hover:bg-slate-100",E(P)?"text-slate-300 cursor-not-allowed hover:bg-transparent":"cursor-pointer"]),onClick:Y=>_(P)},e.toDisplayString(P),11,Ec))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,(P,Y)=>(e.openBlock(),e.createElementBlock("div",{key:"next-"+Y,class:"text-center text-sm text-slate-300 py-2"},e.toDisplayString(P),1))),128))]),t.showToday?(e.openBlock(),e.createElementBlock("div",Nc,[e.createElementVNode("button",{type:"button",class:"w-full px-3 py-2 text-sm font-medium text-blue-600 hover:bg-blue-50 rounded-lg transition-colors",onClick:S}," Today ")])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0)]),_:1}),r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-[9998]",onClick:F})):e.createCommentVNode("",!0)]))}},$c=["aria-expanded"],uo={__name:"Dropdown",props:{triggerText:{type:String,default:"Options"},placement:{type:String,default:"bottom-start",validator:t=>["bottom-start","bottom-end","top-start","top-end"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","outline","ghost"].includes(t)}},setup(t){const n=t,a=e.ref(!1),o=e.ref(null),r=z.cva("inline-flex items-center justify-center rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",ghost:"hover:bg-accent hover:text-accent-foreground"}}}),s=z.cva("absolute z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md",{variants:{placement:{"bottom-start":"top-full left-0 mt-1","bottom-end":"top-full right-0 mt-1","top-start":"bottom-full left-0 mb-1","top-end":"bottom-full right-0 mb-1"}}}),l=e.computed(()=>y(r({variant:n.variant}),"h-10 px-4 py-2")),c=e.computed(()=>y(s({placement:n.placement}))),m=()=>{a.value=!a.value},f=p=>{o.value&&!o.value.contains(p.target)&&(a.value=!1)};return e.onMounted(()=>{document.addEventListener("click",f)}),e.onUnmounted(()=>{document.removeEventListener("click",f)}),(p,v)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"dropdownRef",ref:o,class:"relative"},[e.createElementVNode("button",{class:e.normalizeClass(l.value),"aria-expanded":a.value,"aria-haspopup":!0,onClick:m},[e.renderSlot(p.$slots,"trigger",{},()=>[e.createElementVNode("span",null,e.toDisplayString(t.triggerText),1),e.createVNode(j,{name:"chevron-down",class:"ml-2 h-4 w-4"})])],10,$c),e.createVNode(e.Transition,{"enter-active-class":"transition ease-out duration-100","enter-from-class":"transform opacity-0 scale-95","enter-to-class":"transform opacity-100 scale-100","leave-active-class":"transition ease-in duration-75","leave-from-class":"transform opacity-100 scale-100","leave-to-class":"transform opacity-0 scale-95"},{default:e.withCtx(()=>[a.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(c.value),role:"menu","aria-orientation":"vertical"},[e.renderSlot(p.$slots,"default")],2)):e.createCommentVNode("",!0)]),_:3})],512))}},zc={key:1,class:"ml-auto text-xs tracking-widest opacity-60"},mo={__name:"DropdownItem",props:{href:String,icon:String,shortcut:String,disabled:Boolean,variant:{type:String,default:"default",validator:t=>["default","danger"].includes(t)}},emits:["click"],setup(t,{emit:n}){const a=t,o=n,r=z.cva("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",{variants:{variant:{default:"hover:bg-accent hover:text-accent-foreground",danger:"text-danger hover:bg-danger hover:text-danger-foreground"}}}),s=e.computed(()=>y(r({variant:a.variant}))),l=c=>{a.disabled||o("click",c)};return(c,m)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.href?"a":"button"),{href:t.href,class:e.normalizeClass(s.value),disabled:t.disabled,role:"menuitem",onClick:l},{default:e.withCtx(()=>[t.icon?(e.openBlock(),e.createBlock(j,{key:0,name:t.icon,class:"mr-2 h-4 w-4"},null,8,["name"])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default"),t.shortcut?(e.openBlock(),e.createElementBlock("span",zc,e.toDisplayString(t.shortcut),1)):e.createCommentVNode("",!0)]),_:3},8,["href","class","disabled"]))}},Dc={class:"w-full"},Tc=["multiple","accept"],Ac={class:"flex flex-col items-center justify-center py-6"},Fc={key:0,class:"text-xs text-muted-foreground mt-1"},Pc={key:0,class:"mt-4 space-y-2"},Ic={class:"flex items-center space-x-2"},jc={class:"text-sm"},Lc={class:"text-xs text-muted-foreground"},Oc=["onClick"],fo={__name:"FileUpload",props:{multiple:Boolean,accept:String,maxSize:Number,variant:{type:String,default:"default",validator:t=>["default","dashed"].includes(t)}},emits:["files-selected","file-removed"],setup(t,{emit:n}){const a=t,o=n,r=e.ref([]),s=e.ref(!1),l=e.ref(null),c=z.cva("border-2 border-dashed rounded-lg cursor-pointer transition-all duration-200",{variants:{variant:{default:"border-muted-foreground/25 hover:border-muted-foreground/50 hover:bg-muted/30",dashed:"border-primary/50 hover:border-primary/70 hover:bg-primary/10"}}}),m=e.computed(()=>y(c({variant:a.variant}),{"border-green-500 bg-green-50/50":r.value.length>0&&!s.value,"border-blue-500 bg-blue-50/50 ring-2 ring-blue-200/50":s.value,"border-green-600 bg-green-100/50 ring-2 ring-green-200/50":r.value.length>0&&s.value})),f=i=>{i.preventDefault(),s.value=!1;const b=Array.from(i.dataTransfer.files);g(b)},p=i=>{i.preventDefault()},v=i=>{i.preventDefault(),s.value=!0},B=i=>{i.preventDefault(),s.value=!1},h=()=>{l.value?.click()},k=i=>{const b=Array.from(i.target.files);g(b)},g=i=>{const b=i.filter(E=>!(a.maxSize&&E.size>a.maxSize));a.multiple?r.value.push(...b):r.value=b.slice(0,1),o("files-selected",r.value)},d=i=>{r.value.splice(i,1),o("file-removed",r.value)},u=i=>{if(i===0)return"0 Bytes";const b=1024,E=["Bytes","KB","MB","GB"],V=Math.floor(Math.log(i)/Math.log(b));return parseFloat((i/Math.pow(b,V)).toFixed(2))+" "+E[V]};return(i,b)=>(e.openBlock(),e.createElementBlock("div",Dc,[e.createElementVNode("div",{class:e.normalizeClass(m.value),onDrop:f,onDragover:p,onDragenter:v,onDragleave:B,onClick:h},[e.createElementVNode("input",{ref_key:"fileInput",ref:l,type:"file",multiple:t.multiple,accept:t.accept,class:"hidden",onChange:k},null,40,Tc),e.createElementVNode("div",Ac,[e.createVNode(j,{icon:"upload",class:"h-8 w-8 text-muted-foreground mb-2"}),b[0]||(b[0]=e.createElementVNode("p",{class:"text-sm text-muted-foreground text-center"},[e.createElementVNode("span",{class:"font-semibold"},"Click to upload"),e.createTextVNode(" or drag and drop ")],-1)),t.accept?(e.openBlock(),e.createElementBlock("p",Fc,e.toDisplayString(t.accept),1)):e.createCommentVNode("",!0)])],34),r.value.length>0?(e.openBlock(),e.createElementBlock("div",Pc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,(E,V)=>(e.openBlock(),e.createElementBlock("div",{key:V,class:"flex items-center justify-between p-2 bg-gray-300 rounded-md"},[e.createElementVNode("div",Ic,[e.createVNode(j,{icon:"file",class:"h-4 w-4 text-muted-foreground"}),e.createElementVNode("span",jc,e.toDisplayString(E.name),1),e.createElementVNode("span",Lc,"("+e.toDisplayString(u(E.size))+")",1)]),e.createElementVNode("button",{class:"text-muted-foreground hover:text-foreground",onClick:F=>d(V)},[e.createVNode(j,{icon:"x",class:"h-4 w-4"})],8,Oc)]))),128))])):e.createCommentVNode("",!0)]))}},Mc=["for"],Rc={key:0,class:"text-red-500 ml-1","aria-label":"required"},_c={class:"relative"},Uc=["aria-label"],qc=["id"],Wc=["id"],aa={__name:"FormField",props:{label:String,description:String,error:String,success:String,helpText:String,required:{type:Boolean,default:!1},type:{type:String,default:"text"},modelValue:[String,Date],size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},id:String},emits:["update:modelValue"],setup(t,{emit:n}){const a=t,o=n,r=`field-${Math.random().toString(36).slice(2,9)}`,s=e.computed(()=>`${a.id||r}-${Math.random().toString(36).slice(2,5)}`),l=e.computed(()=>!!a.error),c=e.ref(!1),m=()=>{c.value=!c.value},f=e.computed(()=>{const g=[];return a.error?g.push(`${s.value}-error`):a.helpText&&g.push(`${s.value}-help`),g.length>0?g.join(" "):void 0}),p=z.cva("",{variants:{size:{sm:"space-y-1",md:"space-y-2",lg:"space-y-3"}},defaultVariants:{size:"md"}}),v=z.cva("block text-slate-900",{variants:{size:{sm:"text-xs font-medium",md:"text-sm font-medium",lg:"text-base font-medium"}},defaultVariants:{size:"md"}}),B=z.cva("text-slate-600",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-base"}},defaultVariants:{size:"md"}}),h=z.cva("flex items-start gap-2",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-sm"},intent:{error:"text-red-600",success:"text-green-600"}},defaultVariants:{size:"md",intent:"error"}}),k=z.cva("text-slate-500",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-sm"}},defaultVariants:{size:"md"}});return(g,d)=>{const u=e.resolveComponent("font-awesome-icon");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(y)(e.unref(p)({size:t.size}),g.$attrs.class))},[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:s.value,class:e.normalizeClass(e.unref(y)(e.unref(v)({size:t.size})))},[e.createTextVNode(e.toDisplayString(t.label)+" ",1),t.required?(e.openBlock(),e.createElementBlock("span",Rc,"*")):e.createCommentVNode("",!0)],10,Mc)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:e.normalizeClass(e.unref(y)(e.unref(B)({size:t.size})))},e.toDisplayString(t.description),3)):e.createCommentVNode("",!0),e.createElementVNode("div",_c,[t.type==="date"?(e.openBlock(),e.createBlock(ct,{key:0,id:s.value,"model-value":t.modelValue,disabled:!1,required:t.required,class:e.normalizeClass(l.value?"border-red-500":""),"onUpdate:modelValue":d[0]||(d[0]=i=>o("update:modelValue",i))},null,8,["id","model-value","required","class"])):e.renderSlot(g.$slots,"default",{key:1,fieldId:s.value,hasError:l.value,ariaDescribedBy:f.value,showPassword:c.value,togglePasswordVisibility:m}),t.type==="password"?(e.openBlock(),e.createElementBlock("button",{key:2,type:"button",class:"absolute inset-y-0 right-0 pr-3 flex items-center text-slate-400 hover:text-slate-600 transition-colors","aria-label":c.value?"Hide password":"Show password",onClick:m},[e.createVNode(u,{icon:c.value?"eye-slash":"eye",class:"w-4 h-4"},null,8,["icon"])],8,Uc)):e.createCommentVNode("",!0)]),e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-200","enter-from-class":"opacity-0 -translate-y-1","enter-to-class":"opacity-100 translate-y-0","leave-active-class":"transition-all duration-150","leave-from-class":"opacity-100 translate-y-0","leave-to-class":"opacity-0 -translate-y-1"},{default:e.withCtx(()=>[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,id:`${s.value}-error`,class:e.normalizeClass(e.unref(y)(e.unref(h)({size:t.size,intent:"error"}))),role:"alert","aria-live":"polite"},[e.createVNode(u,{icon:"exclamation-triangle",class:"w-4 h-4 flex-shrink-0 mt-0.5"}),e.createElementVNode("span",null,e.toDisplayString(t.error),1)],10,qc)):e.createCommentVNode("",!0)]),_:1}),t.helpText&&!l.value?(e.openBlock(),e.createElementBlock("p",{key:2,id:`${s.value}-help`,class:e.normalizeClass(e.unref(y)(e.unref(k)({size:t.size})))},e.toDisplayString(t.helpText),11,Wc)):e.createCommentVNode("",!0),e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-200","enter-from-class":"opacity-0 -translate-y-1","enter-to-class":"opacity-100 translate-y-0","leave-active-class":"transition-all duration-150","leave-from-class":"opacity-100 translate-y-0","leave-to-class":"opacity-0 -translate-y-1"},{default:e.withCtx(()=>[t.success&&!l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(y)(e.unref(h)({size:t.size,intent:"success"})))},[e.createVNode(u,{icon:"check",class:"w-4 h-4 flex-shrink-0 mt-0.5"}),e.createElementVNode("span",null,e.toDisplayString(t.success),1)],2)):e.createCommentVNode("",!0)]),_:1})],2)}}},Yc={key:0,class:"flex items-center px-3 bg-muted border border-r-0 rounded-l-md"},Hc={key:1,class:"flex items-center px-3 bg-muted border border-l-0 rounded-r-md"},go={__name:"InputGroup",props:{variant:{type:String,default:"default",validator:t=>["default","outline"].includes(t)}},setup(t){const n=t,a=z.cva("flex w-full",{variants:{variant:{default:"[&>input]:rounded-none [&>input:first-child]:rounded-l-md [&>input:last-child]:rounded-r-md",outline:"border border-input rounded-md [&>input]:border-0 [&>input]:rounded-none"}}}),o=e.computed(()=>y(a({variant:n.variant})));return(r,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[r.$slots.prefix?(e.openBlock(),e.createElementBlock("div",Yc,[e.renderSlot(r.$slots,"prefix")])):e.createCommentVNode("",!0),e.renderSlot(r.$slots,"default"),r.$slots.suffix?(e.openBlock(),e.createElementBlock("div",Hc,[e.renderSlot(r.$slots,"suffix")])):e.createCommentVNode("",!0)],2))}},Gc=["role"],Kc={key:0,class:"flex-shrink-0"},Xc={class:"flex-1 min-w-0"},Jc={key:0,class:"text-sm font-medium text-foreground"},Qc={key:1,class:"text-sm text-muted-foreground"},Zc={key:1,class:"flex-shrink-0"},po={__name:"ListItem",props:{title:String,description:String,icon:String,href:String,role:String,variant:{type:String,default:"default",validator:t=>["default","interactive"].includes(t)}},emits:["click"],setup(t,{emit:n}){const a=t,o=n,r=z.cva("",{variants:{variant:{default:"",interactive:"hover:bg-accent/50 cursor-pointer"}}}),s=z.cva("flex items-center space-x-3 p-3",{variants:{variant:{default:"",interactive:"transition-colors rounded-md"}}}),l=e.computed(()=>y(r({variant:a.variant}))),c=e.computed(()=>y(s({variant:a.variant}))),m=f=>{o("click",f)};return(f,p)=>(e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(l.value),role:t.role},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.href?"a":"div"),{href:t.href,class:e.normalizeClass(c.value),onClick:m},{default:e.withCtx(()=>[f.$slots.icon||t.icon?(e.openBlock(),e.createElementBlock("div",Kc,[e.renderSlot(f.$slots,"icon",{},()=>[t.icon?(e.openBlock(),e.createBlock(j,{key:0,name:t.icon,class:"h-5 w-5"},null,8,["name"])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Xc,[t.title?(e.openBlock(),e.createElementBlock("div",Jc,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("div",Qc,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0),e.renderSlot(f.$slots,"default")]),f.$slots.action?(e.openBlock(),e.createElementBlock("div",Zc,[e.renderSlot(f.$slots,"action")])):e.createCommentVNode("",!0)]),_:3},8,["href","class"]))],10,Gc))}},ed={key:1,class:"ml-auto text-xs tracking-widest opacity-60"},vo={__name:"MenuItem",props:{href:String,icon:String,shortcut:String,disabled:Boolean,hasSubmenu:Boolean,variant:{type:String,default:"default",validator:t=>["default","danger"].includes(t)}},emits:["click"],setup(t,{emit:n}){const a=t,o=n,r=z.cva("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 w-full text-left",{variants:{variant:{default:"hover:bg-accent hover:text-accent-foreground",danger:"text-danger hover:bg-danger hover:text-danger-foreground"}}}),s=e.computed(()=>y(r({variant:a.variant}))),l=c=>{a.disabled||o("click",c)};return(c,m)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.href?"a":"button"),{href:t.href,class:e.normalizeClass(s.value),disabled:t.disabled,role:"menuitem",onClick:l},{default:e.withCtx(()=>[t.icon?(e.openBlock(),e.createBlock(j,{key:0,name:t.icon,class:"mr-2 h-4 w-4"},null,8,["name"])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default"),t.shortcut?(e.openBlock(),e.createElementBlock("span",ed,e.toDisplayString(t.shortcut),1)):e.createCommentVNode("",!0),t.hasSubmenu?(e.openBlock(),e.createBlock(j,{key:2,name:"chevron-right",class:"ml-auto h-4 w-4"})):e.createCommentVNode("",!0)]),_:3},8,["href","class","disabled"]))}},na={__name:"Modal",props:{modelValue:Boolean,showClose:{type:Boolean,default:!0},closeOnBackdrop:{type:Boolean,default:!0},size:{type:String,default:"4xl",validator:t=>["sm","md","lg","xl","2xl","3xl","4xl","5xl","6xl","7xl","full"].includes(t)},resizable:{type:Boolean,default:!1}},emits:["update:modelValue","close"],setup(t,{emit:n}){const a=z.cva("relative w-full overflow-y-auto border bg-white p-6 shadow-lg duration-200 sm:rounded-lg",{variants:{size:{sm:"max-w-sm max-h-[50vh]",md:"max-w-md max-h-[70vh]",lg:"max-w-lg max-h-[80vh]",xl:"max-w-xl max-h-[90vh]","2xl":"max-w-2xl max-h-[90vh]","3xl":"max-w-3xl max-h-[90vh]","4xl":"max-w-4xl max-h-[100vh]","5xl":"max-w-5xl max-h-[100vh]","6xl":"max-w-6xl max-h-[100vh]","7xl":"max-w-7xl max-h-[100vh]",full:"max-w-full max-h-[100vh]"}},defaultVariants:{size:"4xl"}}),o=t,r=n,s=()=>{r("update:modelValue",!1),r("close")},l=m=>{o.closeOnBackdrop&&m.target===m.currentTarget&&s()};let c=null;return e.watch(()=>o.modelValue,m=>{m?(c=f=>{f.key==="Escape"&&s()},document.addEventListener("keydown",c)):c&&(document.removeEventListener("keydown",c),c=null)},{immediate:!0}),e.onUnmounted(()=>{c&&(document.removeEventListener("keydown",c),c=null)}),(m,f)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createVNode(e.Transition,{"enter-active-class":"transition-opacity duration-300","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"transition-opacity duration-300","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:e.withCtx(()=>[t.modelValue?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-50 bg-background/80 backdrop-blur-sm flex items-center justify-center",onClick:l},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)(e.unref(a)({size:t.size}),t.resizable?"resize":"")),style:e.normalizeStyle(t.resizable?"min-width: 400px; min-height: 200px;":"")},[t.showClose?(e.openBlock(),e.createElementBlock("button",{key:0,"aria-label":"Close",class:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",onClick:s},[e.createVNode(j,{icon:"x",class:"h-4 w-4"}),f[0]||(f[0]=e.createElementVNode("span",{class:"sr-only"},"Close",-1))])):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"default")],6)])):e.createCommentVNode("",!0)]),_:3})]))}},td={class:"flex flex-col space-y-1.5 text-center sm:text-left"},ad={key:0,class:"text-lg font-semibold leading-none tracking-tight"},nd={key:1,class:"text-sm text-muted-foreground"},ho={__name:"ModalHeader",props:{title:String,description:String},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",td,[t.title?(e.openBlock(),e.createElementBlock("h2",ad,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",nd,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"default")]))}},bo={__name:"ModalBody",props:{variant:{type:String,default:"default",validator:t=>["default","compact"].includes(t)}},setup(t){const n=t,a=z.cva("",{variants:{variant:{default:"py-4",compact:"py-2"}}}),o=e.computed(()=>y(a({variant:n.variant})));return(r,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(r.$slots,"default")],2))}},yo={__name:"ModalFooter",props:{variant:{type:String,default:"default",validator:t=>["default","center"].includes(t)}},setup(t){const n=t,a=z.cva("flex gap-2 pt-4",{variants:{variant:{default:"flex-col-reverse sm:flex-row sm:justify-end",center:"justify-center"}}}),o=e.computed(()=>y(a({variant:n.variant})));return(r,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(r.$slots,"default")],2))}},od=["aria-live"],rd={class:"flex items-start space-x-3"},ld={key:0,class:"flex-shrink-0"},sd={class:"flex-1 min-w-0"},id={key:0,class:"text-sm font-medium"},xo={__name:"Notification",props:{title:String,message:String,variant:{type:String,default:"default",validator:t=>["default","success","warning","danger"].includes(t)},dismissible:{type:Boolean,default:!0},showIcon:{type:Boolean,default:!0},autoClose:{type:Number,default:0}},emits:["dismiss"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(!0),s=z.cva("pointer-events-auto w-full max-w-sm overflow-hidden rounded-lg bg-background shadow-lg ring-1 ring-black ring-opacity-5",{variants:{variant:{default:"border-l-4 border-primary",success:"border-l-4 border-green-500",warning:"border-l-4 border-yellow-500",danger:"border-l-4 border-danger"}}}),l={default:"info",success:"check-circle",warning:"alert-triangle",danger:"alert-circle"},c=z.cva("h-5 w-5",{variants:{variant:{default:"text-primary",success:"text-green-500",warning:"text-yellow-500",danger:"text-danger"}}}),m=e.computed(()=>y(s({variant:a.variant}),"p-4")),f=e.computed(()=>l[a.variant]),p=e.computed(()=>c({variant:a.variant})),v=()=>{r.value=!1,o("dismiss")};return e.onMounted(()=>{a.autoClose>0&&setTimeout(()=>{v()},a.autoClose)}),(B,h)=>(e.openBlock(),e.createBlock(e.Transition,{"enter-active-class":"transition-all duration-300 ease-out","enter-from-class":"transform translate-x-full opacity-0","enter-to-class":"transform translate-x-0 opacity-100","leave-active-class":"transition-all duration-300 ease-in","leave-from-class":"transform translate-x-0 opacity-100","leave-to-class":"transform translate-x-full opacity-0"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(m.value),role:"alert","aria-live":t.variant==="danger"?"assertive":"polite"},[e.createElementVNode("div",rd,[t.showIcon?(e.openBlock(),e.createElementBlock("div",ld,[e.createVNode(j,{name:f.value,class:e.normalizeClass(p.value)},null,8,["name","class"])])):e.createCommentVNode("",!0),e.createElementVNode("div",sd,[t.title?(e.openBlock(),e.createElementBlock("div",id,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.message?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["text-sm",{"mt-1":t.title}])},e.toDisplayString(t.message),3)):e.createCommentVNode("",!0),e.renderSlot(B.$slots,"default")]),t.dismissible?(e.openBlock(),e.createElementBlock("button",{key:1,class:"flex-shrink-0 rounded-md p-1.5 hover:bg-black/5 focus:outline-none focus:ring-2 focus:ring-offset-2",onClick:v},[e.createVNode(j,{name:"x",class:"h-4 w-4"})])):e.createCommentVNode("",!0)])],10,od)):e.createCommentVNode("",!0)]),_:3}))}},Me=e.ref([]);let cd=0;const dd={duration:3e3,position:"top-center",dismissible:!0,closeButton:!1},ud=()=>`toast-${++cd}-${Date.now()}`,de=(t,n={})=>{const a=ud(),o={id:a,message:t,...dd,...n,createdAt:Date.now()};return Me.value.push(e.markRaw(o)),o.duration&&o.duration>0&&setTimeout(()=>{je(a)},o.duration),a},je=t=>{const n=Me.value.findIndex(a=>a.id===t);n>-1&&Me.value.splice(n,1)},ko=()=>{Me.value=[]},pe=Object.assign((t,n)=>de(t,{...n}),{success:(t,n)=>de(t,{...n,variant:"success"}),error:(t,n)=>de(t,{...n,variant:"error"}),warning:(t,n)=>de(t,{...n,variant:"warning"}),info:(t,n)=>de(t,{...n,variant:"info"}),promise:(t,n={})=>{const{loading:a="Loading...",success:o="Success",error:r="Error",...s}=n,l=de(a,{...s,variant:"loading",duration:0,dismissible:!1});return t.then(c=>{je(l);const m=typeof o=="function"?o(c):o;return de(m,{...s,variant:"success"}),c}).catch(c=>{je(l);const m=typeof r=="function"?r(c):r;throw de(m,{...s,variant:"error"}),c})},dismiss:je,dismissAll:ko,custom:(t,n={})=>de("",{...n,component:e.markRaw(t)})}),wo=()=>({toasts:Me,dismiss:je,dismissAll:ko}),md=["aria-live"],fd={class:"flex-1 grid gap-1"},gd={key:0,class:"text-lg font-extrabold"},pd={key:1,class:"text-md opacity-90"},vd={key:2,class:"text-md opacity-90"},hd=["onClick"],bd=["onClick"],Co={__name:"Toast",props:{position:{type:String,default:"top-center",validator:t=>["top-left","top-center","top-right","bottom-left","bottom-center","bottom-right"].includes(t)},hotkey:{type:Array,default:()=>["altKey","KeyT"]},richColors:{type:Boolean,default:!1},expand:{type:Boolean,default:!1},visibleToasts:{type:Number,default:3},closeButton:{type:Boolean,default:!1}},setup(t){const n=t,{toasts:a,dismiss:o}=wo(),r={"top-left":"top-0 left-0 flex-col","top-center":"top-0 left-1/2 -translate-x-1/2 flex-col","top-right":"top-0 right-0 flex-col","bottom-left":"bottom-0 left-0 flex-col-reverse","bottom-center":"bottom-0 left-1/2 -translate-x-1/2 flex-col-reverse","bottom-right":"bottom-0 right-0 flex-col-reverse"},s=e.computed(()=>y(r[n.position])),l=z.cva("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all",{variants:{variant:{default:"border border-gray-300 bg-gray-50 text-gray-800 dark:border-gray-800 dark:bg-gray-500 dark:text-gray-50",info:"border-blue-500/20 bg-blue-50 text-blue-900 dark:border-blue-500/30 dark:bg-blue-950 dark:text-blue-50",success:"border border-green-200 bg-green-50 text-green-800 dark:border-green-200 dark:bg-green-50 dark:text-green-900",warning:"border-yellow-500/20 bg-yellow-50 text-yellow-900 dark:border-yellow-500/30 dark:bg-yellow-950 dark:text-yellow-50",error:"border-red-500/30 bg-red-50 text-red-900 dark:border-red-500/40 dark:bg-red-950 dark:text-red-50 ring-1 ring-red-500/20 dark:ring-red-500/30",loading:"border border-border animate-pulse bg-gray-800 text-gray-800 dark:border-gray-800 dark:bg-gray-700 dark:text-gray-50"}},defaultVariants:{variant:"default"}}),c=k=>y(l({variant:k.variant})),m={default:"bell",info:"info",success:"check-circle",warning:"triangle-exclamation",error:"circle-exclamation",loading:"loader"},f={default:"text-muted-foreground",info:"text-blue-600 dark:text-blue-400",success:"text-green-600 dark:text-green-400",warning:"text-yellow-600 dark:text-yellow-400",error:"text-red-600 dark:text-red-400",loading:"text-muted-foreground animate-spin"},p=k=>k.icon||m[k.variant]||m.default,v=k=>{const g=f[k.variant]||f.default;return k.variant==="loading"?`${g} animate-spin`:g},B=k=>k.icon!==!1,h=k=>k.dismissible!==!1&&(k.closeButton||n.closeButton||k.dismissible);return(k,g)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)(s.value,"fixed z-[100] flex max-h-screen w-full p-4 md:max-w-[420px]"))},[e.createVNode(e.TransitionGroup,{"enter-active-class":"transition-all duration-300 ease-out","enter-from-class":"transform translate-x-full opacity-0 scale-95","enter-to-class":"transform translate-x-0 opacity-100 scale-100","leave-active-class":"transition-all duration-200 ease-in","leave-from-class":"transform translate-x-0 opacity-100 scale-100","leave-to-class":"transform translate-x-full opacity-0 scale-95","move-class":"transition-all duration-200",tag:"div",class:"space-y-2"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(a),d=>(e.openBlock(),e.createElementBlock("div",{key:d.id,class:e.normalizeClass([c(d),"group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all"]),role:"alert","aria-live":d.variant==="error"?"assertive":"polite"},[B(d)?(e.openBlock(),e.createBlock(j,{key:0,icon:p(d),class:e.normalizeClass([v(d),"h-4 w-4 shrink-0"])},null,8,["icon","class"])):e.createCommentVNode("",!0),e.createElementVNode("div",fd,[d.title?(e.openBlock(),e.createElementBlock("div",gd,e.toDisplayString(d.title),1)):e.createCommentVNode("",!0),d.message?(e.openBlock(),e.createElementBlock("div",pd,e.toDisplayString(d.message),1)):e.createCommentVNode("",!0),d.description?(e.openBlock(),e.createElementBlock("div",vd,e.toDisplayString(d.description),1)):e.createCommentVNode("",!0),d.component?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(d.component),e.mergeProps({key:3,ref_for:!0},d.componentProps),null,16)):e.createCommentVNode("",!0)]),d.action?(e.openBlock(),e.createElementBlock("button",{key:1,class:"inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-xs font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",onClick:d.action.onClick},e.toDisplayString(d.action.label),9,hd)):e.createCommentVNode("",!0),h(d)?(e.openBlock(),e.createElementBlock("button",{key:2,class:"absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100",onClick:u=>e.unref(o)(d.id)},[e.createVNode(j,{icon:"x",class:"h-4 w-4"})],8,bd)):e.createCommentVNode("",!0)],10,md))),128))]),_:1})],2)]))}},yd={class:"relative"},xd={class:"absolute left-3 top-1/2 transform -translate-y-1/2 pointer-events-none"},kd=["value","placeholder","disabled"],wd={key:0,class:"absolute right-3 top-1/2 transform -translate-y-1/2"},Cd=["aria-label"],Bd={key:1,class:"animate-spin"},Sd={key:0,class:"max-h-64 overflow-y-auto"},Vd=["onClick","onMouseenter"],Ed={class:"flex-1 text-left"},Nd={class:"font-medium text-slate-900"},$d={key:0,class:"text-sm text-slate-500 truncate"},zd={key:1,class:"text-xs text-slate-400 ml-3"},Dd={key:1,class:"px-4 py-3 text-sm text-slate-500 text-center"},Td={key:2,class:"border-t border-slate-200 p-2"},Bo={__name:"Search",props:{modelValue:{type:String,default:""},results:{type:Array,default:()=>[]},placeholder:{type:String,default:"Search..."},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},clearLabel:{type:String,default:"Clear search"},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},debounce:{type:Number,default:300},minLength:{type:Number,default:1},showNoResults:{type:Boolean,default:!0},noResultsText:{type:String,default:"No results found"},highlightMatches:{type:Boolean,default:!0}},emits:["update:modelValue","search","select","clear","focus","blur"],setup(t,{emit:n}){const a={template:`<svg fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
|
|
593
593
|
<path stroke-linecap="round" stroke-linejoin="round" d="m21 21-5.197-5.197m0 0A7.5 7.5 0 1 0 5.196 5.196a7.5 7.5 0 0 0 10.607 10.607Z"/>
|
|
594
594
|
</svg>`},o={template:`<svg fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
|
|
595
595
|
<path stroke-linecap="round" stroke-linejoin="round" d="M6 18 18 6M6 6l12 12"/>
|
|
@@ -604,7 +604,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
604
604
|
<svg fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
|
|
605
605
|
<path stroke-linecap="round" stroke-linejoin="round" d="m19.5 8.25-7.5 7.5-7.5-7.5" />
|
|
606
606
|
</svg>
|
|
607
|
-
`},a=t,o=e.ref(!1),r=()=>o.value=!o.value,s=z.cva("",{variants:{variant:{default:"",bordered:"border border-slate-200 rounded-lg overflow-hidden",filled:"bg-slate-50 border border-slate-200 rounded-lg overflow-hidden",flush:""}}}),l=z.cva("flex items-center justify-between w-full text-left transition-all duration-200 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2",{variants:{size:{sm:"p-3 text-sm",md:"p-4 text-base",lg:"p-6 text-lg"}}}),c=z.cva("overflow-hidden text-slate-600 border-t border-slate-200",{variants:{size:{sm:"p-3 text-sm",md:"p-4 text-base",lg:"p-6 text-lg"}}}),m=e.computed(()=>y(s({variant:a.variant}))),f=e.computed(()=>y(l({size:a.size}))),p=e.computed(()=>y(c({size:a.size})));return(v,B)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(m.value)},[e.createVNode(Z,{class:e.normalizeClass(f.value),"aria-expanded":o.value,onClick:r},{default:e.withCtx(()=>[e.renderSlot(v.$slots,"header",{isOpen:o.value}),e.createVNode(n,{class:e.normalizeClass(e.unref(y)("w-5 h-5 transition-transform ml-2",{"rotate-180":o.value}))},null,8,["class"])]),_:3},8,["class","aria-expanded"]),e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-300 ease-out","enter-from-class":"opacity-0 max-h-0","enter-to-class":"opacity-100 max-h-96","leave-active-class":"transition-all duration-200 ease-in","leave-from-class":"opacity-100 max-h-96","leave-to-class":"opacity-0 max-h-0"},{default:e.withCtx(()=>[o.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(p.value)},[e.renderSlot(v.$slots,"content",{isOpen:o.value})],2)):e.createCommentVNode("",!0)]),_:3})],2))}},Qd={class:"relative w-full"},Zd={class:"relative"},eu=["id","value","disabled","placeholder","required","aria-describedby"],tu={class:"flex items-center justify-between mb-3"},au={class:"text-sm font-medium"},nu={class:"grid grid-cols-7 gap-1 mb-2"},ou={class:"grid grid-cols-7 gap-1"},ru=["disabled","onClick"],lu={key:0,class:"mt-4 pt-3 border-t border-slate-200"},Do={__name:"Calendar",props:{id:String,modelValue:[String,Date],disabled:Boolean,required:Boolean,min:[String,Date],max:[String,Date],placeholder:{type:String,default:"Select date"},format:{type:String,default:"MM/DD/YYYY"},clearable:{type:Boolean,default:!0},showToday:{type:Boolean,default:!0},calendarPosition:{type:String,default:"left-0"},ariaDescribedby:String},emits:["update:modelValue"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(!1),s=new Date,l=e.ref(s.getMonth()),c=e.ref(s.getFullYear()),m=e.ref(null),f=["Su","Mo","Tu","We","Th","Fr","Sa"],p=e.computed(()=>new Date(c.value,l.value).toLocaleString("default",{month:"long"})),v=e.computed(()=>new Date(c.value,l.value+1,0).getDate()),B=e.computed(()=>new Date(c.value,l.value,1).getDay()),h=e.computed(()=>{const L=new Date(c.value,l.value,0).getDate(),x=B.value;return Array.from({length:x},(N,P)=>L-x+P+1)}),k=e.computed(()=>{const L=h.value.length+v.value,x=L%7===0?0:7-L%7;return Array.from({length:x},(N,P)=>P+1)}),g=e.computed(()=>m.value?d(m.value):"");function d(L){if(!L)return"";const x=new Date(L),N=String(x.getMonth()+1).padStart(2,"0"),P=String(x.getDate()).padStart(2,"0"),Y=x.getFullYear();return a.format.replace("MM",N).replace("DD",P).replace("YYYY",Y)}function u(L){if(!L)return null;if(L instanceof Date)return L;const x=new Date(L);return isNaN(x.getTime())?null:x}function i(L){if(!m.value)return!1;const x=new Date(m.value);return x.getDate()===L&&x.getMonth()===l.value&&x.getFullYear()===c.value}function b(L){const x=new Date(c.value,l.value,L);if(a.min){const N=u(a.min);if(N&&x<N)return!0}if(a.max){const N=u(a.max);if(N&&x>N)return!0}return!1}function E(){a.disabled||(r.value=!r.value)}function V(){r.value=!1}function F(){l.value===0?(l.value=11,c.value--):l.value--}function I(){l.value===11?(l.value=0,c.value++):l.value++}function W(L){if(b(L))return;const x=new Date(c.value,l.value,L);m.value=x,o("update:modelValue",x.toISOString().split("T")[0]),r.value=!1}function _(){l.value=s.getMonth(),c.value=s.getFullYear(),W(s.getDate())}function S(){m.value=null,o("update:modelValue","")}e.watch(()=>a.modelValue,L=>{if(L){const x=u(L);x&&(m.value=x,l.value=x.getMonth(),c.value=x.getFullYear())}else m.value=null},{immediate:!0});function O(L){L.key==="Escape"&&r.value&&V()}return e.onMounted(()=>{document.addEventListener("keydown",O)}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",O)}),(L,x)=>(e.openBlock(),e.createElementBlock("div",Qd,[e.createElementVNode("div",Zd,[e.createElementVNode("input",{id:t.id,type:"text",value:g.value,readonly:"",disabled:t.disabled,placeholder:t.placeholder,required:t.required,"aria-describedby":t.ariaDescribedby,class:"w-full px-3 py-2 pr-10 border border-slate-300 rounded-md bg-white text-slate-900 placeholder-slate-400 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500 cursor-pointer disabled:bg-slate-50 disabled:text-slate-500 disabled:cursor-not-allowed",onClick:E},null,8,eu),x[2]||(x[2]=e.createElementVNode("div",{class:"absolute right-3 top-1/2 -translate-y-1/2 pointer-events-none"},[e.createElementVNode("svg",{class:"w-5 h-5 text-slate-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"})])],-1)),t.clearable&&g.value&&!t.disabled?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"absolute right-9 top-1/2 -translate-y-1/2 p-1 hover:bg-slate-100 rounded","aria-label":"Clear date",onClick:e.withModifiers(S,["stop"])},[...x[1]||(x[1]=[e.createElementVNode("svg",{class:"w-4 h-4 text-slate-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})],-1)])])):e.createCommentVNode("",!0)]),e.createVNode(e.Transition,{"enter-active-class":"transition ease-out duration-100","enter-from-class":"transform opacity-0 scale-95","enter-to-class":"transform opacity-100 scale-100","leave-active-class":"transition ease-in duration-75","leave-from-class":"transform opacity-100 scale-100","leave-to-class":"transform opacity-0 scale-95"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["absolute z-[99999] mt-2 bg-white border border-slate-200 rounded-lg shadow-lg p-4",t.calendarPosition]),onClick:x[0]||(x[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",tu,[e.createElementVNode("button",{type:"button",class:"p-1 hover:bg-gray-100 rounded","aria-label":"Previous Month",onClick:F},[...x[3]||(x[3]=[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 18l-6-6 6-6"})],-1)])]),e.createElementVNode("div",au,e.toDisplayString(p.value)+" "+e.toDisplayString(c.value),1),e.createElementVNode("button",{type:"button",class:"p-1 hover:bg-gray-100 rounded","aria-label":"Next Month",onClick:I},[...x[4]||(x[4]=[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 18l6-6-6-6"})],-1)])])]),e.createElementVNode("div",nu,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(f,N=>e.createElementVNode("div",{key:N,class:"text-center text-xs font-medium text-slate-600 py-1"},e.toDisplayString(N),1)),64))]),e.createElementVNode("div",ou,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,(N,P)=>(e.openBlock(),e.createElementBlock("div",{key:"prev-"+P,class:"text-center text-sm text-slate-300 py-2"},e.toDisplayString(N),1))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(v.value,N=>(e.openBlock(),e.createElementBlock("button",{key:N,type:"button",disabled:b(N),class:e.normalizeClass(["w-8 h-8 text-sm rounded flex items-center justify-center",i(N)?"bg-blue-500 text-white":"hover:bg-gray-100",b(N)?"text-gray-300 cursor-not-allowed":""]),onClick:P=>W(N)},e.toDisplayString(N),11,ru))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,(N,P)=>(e.openBlock(),e.createElementBlock("div",{key:"next-"+P,class:"text-center text-sm text-slate-300 py-2"},e.toDisplayString(N),1))),128))]),t.showToday?(e.openBlock(),e.createElementBlock("div",lu,[e.createElementVNode("button",{type:"button",class:"w-full px-3 py-2 text-sm font-medium text-blue-600 hover:bg-blue-50 rounded-lg transition-colors",onClick:_}," Today ")])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0)]),_:1}),r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-[99998]",onClick:V})):e.createCommentVNode("",!0)]))}},su={class:"flex items-start justify-between"},iu={class:"flex-1 min-w-0"},cu={key:0,class:"flex-shrink-0 ml-4"},du="text-lg font-semibold text-slate-900 truncate",uu="text-sm text-slate-600 mt-1",To={__name:"Graph",props:{variant:{type:String,default:"default",validator:t=>["default","outlined","elevated","filled"].includes(t)},padding:{type:String,default:"md",validator:t=>["none","sm","md","lg","xl"].includes(t)},title:String,description:String},setup(t){const n=z.cva("rounded-lg overflow-hidden transition-all duration-200",{variants:{variant:{default:"bg-white border border-slate-200",outlined:"bg-white border-2 border-slate-300",elevated:"bg-white shadow-lg border border-slate-100",filled:"bg-slate-50 border border-slate-200"},padding:{none:"",sm:"p-3",md:"p-4",lg:"p-6",xl:"p-8"}},defaultVariants:{variant:"default",padding:"md"}}),a=z.cva("border-b border-slate-100 last:border-b-0",{variants:{padding:{none:"p-4 pb-0",sm:"px-3 pt-3",md:"px-4 pt-4",lg:"px-6 pt-6",xl:"px-8 pt-8"}}}),o=z.cva("border-b border-slate-100",{variants:{padding:{none:"p-4 pb-0",sm:"px-3 py-3",md:"px-4 py-4",lg:"px-6 py-6",xl:"px-8 py-8"}}}),r=z.cva("",{variants:{padding:{none:"p-4",sm:"p-3",md:"p-4",lg:"p-6",xl:"p-8"}}}),s=z.cva("border-t border-slate-100 bg-slate-50/50",{variants:{padding:{none:"p-4 pt-0",sm:"px-3 pb-3",md:"px-4 pb-4",lg:"px-6 pb-6",xl:"px-8 pb-8"}}}),l=z.cva("border-t border-slate-100 bg-slate-50/50",{variants:{padding:{none:"p-4 pt-0",sm:"px-3 pb-3",md:"px-4 pb-4",lg:"px-6 pb-6",xl:"px-8 pb-8"}}});return(c,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(y)(e.unref(n)({variant:t.variant,padding:t.padding})))},[c.$slots.header||t.title||t.description?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(y)(e.unref(a)({padding:t.padding})))},[e.renderSlot(c.$slots,"header",{},()=>[e.createElementVNode("div",su,[e.createElementVNode("div",iu,[t.title?(e.openBlock(),e.createElementBlock("h3",{key:0,class:e.normalizeClass(du)},e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:e.normalizeClass(uu)},e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)]),c.$slots.actions?(e.openBlock(),e.createElementBlock("div",cu,[e.renderSlot(c.$slots,"actions")])):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0),c.$slots.filters?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(y)(e.unref(o)({padding:t.padding})))},[e.renderSlot(c.$slots,"filters")],2)):e.createCommentVNode("",!0),c.$slots.default?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(e.unref(y)(e.unref(r)({padding:t.padding})))},[e.renderSlot(c.$slots,"default")],2)):e.createCommentVNode("",!0),c.$slots.legend?(e.openBlock(),e.createElementBlock("div",{key:3,class:e.normalizeClass(e.unref(y)(e.unref(s)({padding:t.padding})))},[e.renderSlot(c.$slots,"legend")],2)):e.createCommentVNode("",!0),c.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:4,class:e.normalizeClass(e.unref(y)(e.unref(l)({padding:t.padding})))},[e.renderSlot(c.$slots,"footer")],2)):e.createCommentVNode("",!0)],2))}},mu={class:"w-full h-full"},fu=["width","height","viewBox"],gu={key:0},pu=["x1","y1","x2","y2","stroke"],vu=["x","y","width","height","fill","onMouseenter"],hu={key:1},bu=["x","y"],yu={key:2},xu=["x","y"],ku={key:3},wu=["x","y","width","height","fill","stroke"],Cu=["x","y"],Ao={__name:"BarChart",props:{data:{type:Array,required:!0},labels:{type:Array,default:()=>[]},colors:{type:Array,default:()=>["#3b82f6","#ef4444","#10b981","#f59e0b","#8b5cf6"]},width:{type:Number,default:400},height:{type:Number,default:300},padding:{type:Object,default:()=>({top:20,right:20,bottom:60,left:60})},showGrid:{type:Boolean,default:!0},showXAxis:{type:Boolean,default:!0},showYAxis:{type:Boolean,default:!0},gridColor:{type:String,default:"#e5e7eb"},barClasses:{type:String,default:"transition-all duration-200 hover:opacity-80 cursor-pointer"},axisLabelClasses:{type:String,default:"fill-slate-600 text-xs font-medium"},tooltipBackground:{type:String,default:"#1f2937"},tooltipBorder:{type:String,default:"#374151"},tooltipTextClasses:{type:String,default:"fill-white text-xs font-medium"},maxValue:{type:Number,default:null}},emits:["bar-click","bar-hover"],setup(t,{emit:n}){const a=t,o=n,r=e.ref({visible:!1,x:0,y:0,width:0,height:0,content:""}),s=e.computed(()=>a.maxValue||Math.max(...a.data)),l=e.computed(()=>(a.width-a.padding.left-a.padding.right)/a.data.length*.8),c=e.computed(()=>(a.width-a.padding.left-a.padding.right)/a.data.length*.2),m=e.computed(()=>{const d=[],u=a.height-a.padding.top-a.padding.bottom,i=5;for(let b=0;b<=i;b++){const E=a.padding.top+u/i*b;d.push(E)}return d}),f=d=>a.padding.left+d*(l.value+c.value)+c.value/2,p=d=>{const u=a.height-a.padding.top-a.padding.bottom,i=u/s.value;return a.padding.top+u-d*i},v=d=>{const i=(a.height-a.padding.top-a.padding.bottom)/s.value;return d*i},B=d=>a.colors[d%a.colors.length],h=d=>{const u=a.height-a.padding.top-a.padding.bottom,i=(a.height-a.padding.bottom-d)/u*s.value;return Math.round(i)},k=(d,u,i)=>{const b=d.target.getBoundingClientRect(),E=a.labels[i]||`Item ${i+1}`;r.value={visible:!0,x:b.left+b.width/2,y:b.top,width:80,height:24,content:`${E}: ${u}`},o("bar-hover",{value:u,index:i,label:E})},g=()=>{r.value.visible=!1};return(d,u)=>(e.openBlock(),e.createElementBlock("div",mu,[(e.openBlock(),e.createElementBlock("svg",{width:t.width,height:t.height,viewBox:`0 0 ${t.width} ${t.height}`,class:"overflow-visible"},[t.showGrid?(e.openBlock(),e.createElementBlock("g",gu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,i=>(e.openBlock(),e.createElementBlock("line",{key:`grid-${i}`,x1:t.padding.left,y1:i,x2:t.width-t.padding.right,y2:i,stroke:t.gridColor,"stroke-width":"1","stroke-dasharray":"2,2"},null,8,pu))),128))])):e.createCommentVNode("",!0),e.createElementVNode("g",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.data,(i,b)=>(e.openBlock(),e.createElementBlock("rect",{key:`bar-${b}`,x:f(b),y:p(i),width:l.value,height:v(i),fill:B(b),class:e.normalizeClass(t.barClasses),onMouseenter:E=>k(E,i,b),onMouseleave:g},null,42,vu))),128))]),t.showXAxis?(e.openBlock(),e.createElementBlock("g",hu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.labels,(i,b)=>(e.openBlock(),e.createElementBlock("text",{key:`xlabel-${b}`,x:f(b)+l.value/2,y:t.height-t.padding.bottom+20,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"middle"},e.toDisplayString(i),11,bu))),128))])):e.createCommentVNode("",!0),t.showYAxis?(e.openBlock(),e.createElementBlock("g",yu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,i=>(e.openBlock(),e.createElementBlock("text",{key:`ylabel-${i}`,x:t.padding.left-10,y:i+4,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"end"},e.toDisplayString(h(i)),11,xu))),128))])):e.createCommentVNode("",!0),r.value.visible?(e.openBlock(),e.createElementBlock("g",ku,[e.createElementVNode("rect",{x:r.value.x-r.value.width/2,y:r.value.y-r.value.height-10,width:r.value.width,height:r.value.height,fill:t.tooltipBackground,stroke:t.tooltipBorder,"stroke-width":"1",rx:"4"},null,8,wu),e.createElementVNode("text",{x:r.value.x,y:r.value.y-r.value.height/2-2,class:e.normalizeClass(t.tooltipTextClasses),"text-anchor":"middle"},e.toDisplayString(r.value.content),11,Cu)])):e.createCommentVNode("",!0)],8,fu))]))}},Bu={class:"w-full h-full"},Su=["width","height","viewBox"],Vu={key:0},Eu=["x1","y1","x2","y2","stroke"],Nu=["d","stroke","stroke-width"],$u={key:1},zu=["cx","cy","r","fill","stroke","onMouseenter"],Du=["d","fill","fill-opacity"],Tu={key:3},Au=["x","y"],Fu={key:4},Pu=["x","y"],Iu={key:5},ju=["x","y","width","height","fill","stroke"],Lu=["x","y"],Fo={__name:"LineChart",props:{data:{type:Array,required:!0},labels:{type:Array,default:()=>[]},width:{type:Number||String,default:400},height:{type:Number,default:300},padding:{type:Object,default:()=>({top:20,right:20,bottom:60,left:60})},showGrid:{type:Boolean,default:!0},showXAxis:{type:Boolean,default:!0},showYAxis:{type:Boolean,default:!0},showPoints:{type:Boolean,default:!0},fillArea:{type:Boolean,default:!1},gridColor:{type:String,default:"#e5e7eb"},lineColor:{type:String,default:"#3b82f6"},strokeWidth:{type:Number,default:2},pointRadius:{type:Number,default:4},pointColor:{type:String,default:"#ffffff"},fillColor:{type:String,default:"#3b82f6"},fillOpacity:{type:Number,default:.1},lineClasses:{type:String,default:"transition-all duration-200"},pointClasses:{type:String,default:"transition-all duration-200 hover:r-6 cursor-pointer"},axisLabelClasses:{type:String,default:"fill-slate-600 text-xs font-medium"},tooltipBackground:{type:String,default:"#1f2937"},tooltipBorder:{type:String,default:"#374151"},tooltipTextClasses:{type:String,default:"fill-white text-xs font-medium"},maxValue:{type:Number,default:null}},emits:["point-click","point-hover"],setup(t,{emit:n}){const a=t,o=n,r=e.ref({visible:!1,x:0,y:0,width:0,height:0,content:""}),s=e.computed(()=>a.maxValue||Math.max(...a.data)),l=e.computed(()=>a.data.map((g,d)=>({x:p(d),y:v(g),value:g}))),c=e.computed(()=>l.value.length===0?"":l.value.map((d,u)=>`${u===0?"M":"L"} ${d.x} ${d.y}`).join(" ")),m=e.computed(()=>{if(l.value.length===0)return"";const g=l.value.map((i,b)=>`${b===0?"M":"L"} ${i.x} ${i.y}`).join(" "),d=a.height-a.padding.bottom,u=`L ${l.value[l.value.length-1].x} ${d} L ${l.value[0].x} ${d} Z`;return g+" "+u}),f=e.computed(()=>{const g=[],d=a.height-a.padding.top-a.padding.bottom,u=5;for(let i=0;i<=u;i++){const b=a.padding.top+d/u*i;g.push(b)}return g}),p=g=>{const u=(a.width-a.padding.left-a.padding.right)/(a.data.length-1||1);return a.padding.left+g*u},v=g=>{const d=a.height-a.padding.top-a.padding.bottom,u=d/s.value;return a.padding.top+d-g*u},B=g=>{const d=a.height-a.padding.top-a.padding.bottom,u=(a.height-a.padding.bottom-g)/d*s.value;return Math.round(u)},h=(g,d,u)=>{const i=g.target.getBoundingClientRect(),b=a.labels[u]||`Point ${u+1}`;r.value={visible:!0,x:i.left+i.width/2,y:i.top,width:80,height:24,content:`${b}: ${d}`},o("point-hover",{value:d,index:u,label:b})},k=()=>{r.value.visible=!1};return(g,d)=>(e.openBlock(),e.createElementBlock("div",Bu,[(e.openBlock(),e.createElementBlock("svg",{width:t.width,height:t.height,viewBox:`0 0 ${t.width} ${t.height}`,class:"overflow-visible"},[t.showGrid?(e.openBlock(),e.createElementBlock("g",Vu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,u=>(e.openBlock(),e.createElementBlock("line",{key:`grid-${u}`,x1:t.padding.left,y1:u,x2:t.width-t.padding.right,y2:u,stroke:t.gridColor,"stroke-width":"1","stroke-dasharray":"2,2"},null,8,Eu))),128))])):e.createCommentVNode("",!0),e.createElementVNode("path",{d:c.value,stroke:t.lineColor,"stroke-width":t.strokeWidth,fill:"none",class:e.normalizeClass(t.lineClasses)},null,10,Nu),t.showPoints?(e.openBlock(),e.createElementBlock("g",$u,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,(u,i)=>(e.openBlock(),e.createElementBlock("circle",{key:`point-${i}`,cx:u.x,cy:u.y,r:t.pointRadius,fill:t.pointColor,stroke:t.lineColor,"stroke-width":2,class:e.normalizeClass(t.pointClasses),onMouseenter:b=>h(b,u.value,i),onMouseleave:k},null,42,zu))),128))])):e.createCommentVNode("",!0),t.fillArea?(e.openBlock(),e.createElementBlock("path",{key:2,d:m.value,fill:t.fillColor,"fill-opacity":t.fillOpacity},null,8,Du)):e.createCommentVNode("",!0),t.showXAxis?(e.openBlock(),e.createElementBlock("g",Tu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.labels,(u,i)=>(e.openBlock(),e.createElementBlock("text",{key:`xlabel-${i}`,x:p(i),y:t.height-t.padding.bottom+20,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"middle"},e.toDisplayString(u),11,Au))),128))])):e.createCommentVNode("",!0),t.showYAxis?(e.openBlock(),e.createElementBlock("g",Fu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,u=>(e.openBlock(),e.createElementBlock("text",{key:`ylabel-${u}`,x:t.padding.left-10,y:u+4,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"end"},e.toDisplayString(B(u)),11,Pu))),128))])):e.createCommentVNode("",!0),r.value.visible?(e.openBlock(),e.createElementBlock("g",Iu,[e.createElementVNode("rect",{x:r.value.x-r.value.width/2,y:r.value.y-r.value.height-10,width:r.value.width,height:r.value.height,fill:t.tooltipBackground,stroke:t.tooltipBorder,"stroke-width":"1",rx:"4"},null,8,ju),e.createElementVNode("text",{x:r.value.x,y:r.value.y-r.value.height/2-2,class:e.normalizeClass(t.tooltipTextClasses),"text-anchor":"middle"},e.toDisplayString(r.value.content),11,Lu)])):e.createCommentVNode("",!0)],8,Su))]))}},Ou={class:"bg-white border-b border-gray-200"},Mu={key:0,class:"flex items-center gap-3 min-w-64"},Ru={class:"relative flex-1"},_u={class:"relative flex-1"},Uu={key:1,class:"min-w-40"},qu={class:"relative"},Wu={key:2,class:"min-w-40"},Yu={class:"relative"},Hu=["value"],Gu={key:3,class:"flex items-center gap-2"},Ku={class:"flex items-center gap-3 ml-auto"},Xu={class:"flex items-center gap-3 flex-wrap"},Ju=["onClick"],Po={__name:"GraphFilters",props:{showDateFilter:{type:Boolean,default:!0},showChartTypeFilter:{type:Boolean,default:!0},showExport:{type:Boolean,default:!1},showRefresh:{type:Boolean,default:!0},dataSources:{type:Array,default:()=>[]},variant:{type:String,default:"default",validator:t=>["default","minimal","bordered"].includes(t)},padding:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)}},emits:["update:dateFrom","update:dateTo","update:chartType","update:dataSource","export","refresh","clear-filters"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(""),s=e.ref(""),l=e.ref("bar"),c=e.ref(""),m=z.cva("flex flex-wrap items-center gap-4",{variants:{variant:{default:"bg-white",minimal:"bg-transparent",bordered:"bg-gray-50"},padding:{compact:"px-4 py-3",normal:"px-6 py-4",comfortable:"px-8 py-6"}},defaultVariants:{variant:"default",padding:"normal"}}),f=e.computed(()=>r.value||s.value||c.value),p=e.computed(()=>{const _=[];if(r.value||s.value){let S="";r.value&&s.value?S=`${r.value} to ${s.value}`:r.value?S=`From ${r.value}`:s.value&&(S=`Until ${s.value}`),S&&_.push({key:"date",label:"Date Range",value:S,icon:"calendar"})}if(c.value){const S=a.dataSources.find(O=>O.value===c.value);_.push({key:"dataSource",label:"Data Source",value:S?.label||c.value,icon:"database"})}return _}),v=e.computed(()=>y(m({variant:a.variant,padding:a.padding}))),B=e.computed(()=>"w-full pl-10 pr-3 py-2 border border-gray-200 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent text-sm"),h=e.computed(()=>"w-full pr-8 appearance-none border border-gray-200 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent text-sm py-2 pl-3"),k=e.computed(()=>"text-gray-700 hover:text-gray-900 border border-gray-200 hover:bg-gray-50 bg-white px-3 py-2 rounded-lg text-sm font-medium transition-all"),g=e.computed(()=>"text-white bg-blue-600 hover:bg-blue-700 border border-blue-600 px-3 py-2 rounded-lg text-sm font-medium transition-all"),d=e.computed(()=>"text-gray-700 hover:text-gray-900 border border-gray-200 hover:bg-gray-50 bg-white px-3 py-2 rounded-lg text-sm font-medium transition-all"),u=e.computed(()=>"px-6 py-3 bg-blue-50 border-t border-blue-100"),i=e.computed(()=>"text-sm font-semibold text-blue-800"),b=e.computed(()=>"flex items-center gap-1.5 bg-white border border-blue-200 text-blue-800 px-3 py-1.5 rounded-full text-sm font-medium"),E=e.computed(()=>"text-blue-600 hover:text-blue-800 ml-1 hover:bg-blue-100 rounded-full p-0.5 transition-all"),V=_=>{l.value=_.target.value,o("update:chartType",_.target.value)},F=_=>{c.value=_.target.value,o("update:dataSource",_.target.value)},I=()=>{r.value="",s.value="",c.value="",o("clear-filters")},W=_=>{switch(_){case"date":r.value="",s.value="";break;case"dataSource":c.value="";break}};return e.watch(()=>r.value,_=>{o("update:dateFrom",_)}),e.watch(()=>s.value,_=>{o("update:dateTo",_)}),(_,S)=>(e.openBlock(),e.createElementBlock("div",Ou,[e.createElementVNode("div",{class:e.normalizeClass(v.value)},[t.showDateFilter?(e.openBlock(),e.createElementBlock("div",Mu,[e.createElementVNode("div",Ru,[e.createVNode(j,{icon:"calendar",class:"absolute left-3 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400"}),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":S[0]||(S[0]=O=>r.value=O),type:"date",class:e.normalizeClass(B.value),placeholder:"From date"},null,2),[[e.vModelText,r.value]])]),S[6]||(S[6]=e.createElementVNode("span",{class:"text-gray-500 text-sm"},"to",-1)),e.createElementVNode("div",_u,[e.createVNode(j,{icon:"calendar",class:"absolute left-3 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400"}),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":S[1]||(S[1]=O=>s.value=O),type:"date",class:e.normalizeClass(B.value),placeholder:"To date"},null,2),[[e.vModelText,s.value]])])])):e.createCommentVNode("",!0),t.showChartTypeFilter?(e.openBlock(),e.createElementBlock("div",Uu,[e.createElementVNode("div",qu,[e.createVNode(ue,{modelValue:l.value,"onUpdate:modelValue":S[2]||(S[2]=O=>l.value=O),class:e.normalizeClass(h.value),onChange:V},{default:e.withCtx(()=>[...S[7]||(S[7]=[e.createElementVNode("option",{value:"bar"}," Bar Chart ",-1),e.createElementVNode("option",{value:"line"}," Line Chart ",-1),e.createElementVNode("option",{value:"pie"}," Pie Chart ",-1)])]),_:1},8,["modelValue","class"]),e.createVNode(j,{icon:"chart-bar",class:"absolute right-2 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400 pointer-events-none"})])])):e.createCommentVNode("",!0),t.dataSources.length>0?(e.openBlock(),e.createElementBlock("div",Wu,[e.createElementVNode("div",Yu,[e.createVNode(ue,{modelValue:c.value,"onUpdate:modelValue":S[3]||(S[3]=O=>c.value=O),class:e.normalizeClass(h.value),onChange:F},{default:e.withCtx(()=>[S[8]||(S[8]=e.createElementVNode("option",{value:""}," All Sources ",-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.dataSources,O=>(e.openBlock(),e.createElementBlock("option",{key:O.value,value:O.value},e.toDisplayString(O.label),9,Hu))),128))]),_:1},8,["modelValue","class"]),e.createVNode(j,{icon:"database",class:"absolute right-2 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400 pointer-events-none"})])])):e.createCommentVNode("",!0),_.$slots.filters?(e.openBlock(),e.createElementBlock("div",Gu,[e.renderSlot(_.$slots,"filters")])):e.createCommentVNode("",!0),e.createElementVNode("div",Ku,[f.value?(e.openBlock(),e.createBlock(Z,{key:0,class:e.normalizeClass(k.value),onClick:I},{default:e.withCtx(()=>[e.createVNode(j,{icon:"rotate-left",class:"w-4 h-4 mr-2"}),S[9]||(S[9]=e.createTextVNode(" Clear Filters ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showExport?(e.openBlock(),e.createBlock(Z,{key:1,class:e.normalizeClass(g.value),onClick:S[4]||(S[4]=O=>_.$emit("export"))},{default:e.withCtx(()=>[e.createVNode(j,{icon:"download",class:"w-4 h-4 mr-2"}),S[10]||(S[10]=e.createTextVNode(" Export ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showRefresh?(e.openBlock(),e.createBlock(Z,{key:2,class:e.normalizeClass(d.value),onClick:S[5]||(S[5]=O=>_.$emit("refresh"))},{default:e.withCtx(()=>[e.createVNode(j,{icon:"sync",class:"w-4 h-4 mr-2"}),S[11]||(S[11]=e.createTextVNode(" Refresh ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0)])],2),p.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(u.value)},[e.createElementVNode("div",Xu,[e.createElementVNode("span",{class:e.normalizeClass(i.value)},"Active filters:",2),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,O=>(e.openBlock(),e.createElementBlock("div",{key:O.key,class:e.normalizeClass(b.value)},[e.createVNode(j,{icon:O.icon,class:"w-3 h-3"},null,8,["icon"]),e.createElementVNode("span",null,e.toDisplayString(O.label)+": "+e.toDisplayString(O.value),1),e.createElementVNode("button",{class:e.normalizeClass(E.value),onClick:L=>W(O.key)},[e.createVNode(j,{icon:"xmark",class:"w-3 h-3"})],10,Ju)],2))),128))])],2)):e.createCommentVNode("",!0)]))}},Qu={class:"flex items-start justify-between"},Zu={key:0,class:"flex items-center gap-2"},ra={__name:"DataTableHeader",props:{title:{type:String,default:null},description:{type:String,default:null},variant:{type:String,default:"default",validator:t=>["default","minimal","bordered"].includes(t)},padding:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)}},setup(t){const n=t,a=z.cva("border-b border-slate-200",{variants:{variant:{default:"bg-white",minimal:"bg-transparent border-none",bordered:"bg-slate-50 border-2"},padding:{compact:"px-4 py-2",normal:"px-6 py-4",comfortable:"px-8 py-6"}},defaultVariants:{variant:"default",padding:"normal"}}),o=z.cva("font-semibold text-slate-900",{variants:{size:{sm:"text-base",md:"text-lg",lg:"text-xl"}},defaultVariants:{size:"md"}}),r=z.cva("text-slate-600 mt-1",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-base"}},defaultVariants:{size:"md"}}),s=e.computed(()=>y(a({variant:n.variant,padding:n.padding}))),l=e.computed(()=>y(o({size:"md"}))),c=e.computed(()=>y(r({size:"md"})));return(m,f)=>t.title||t.description||m.$slots.header?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(s.value)},[e.renderSlot(m.$slots,"header",{},()=>[e.createElementVNode("div",Qu,[e.createElementVNode("div",null,[t.title?(e.openBlock(),e.createBlock(tt,{key:0,class:e.normalizeClass(l.value)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.title),1)]),_:1},8,["class"])):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createBlock(tt,{key:1,class:e.normalizeClass(c.value)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.description),1)]),_:1},8,["class"])):e.createCommentVNode("",!0)]),m.$slots.filters?(e.openBlock(),e.createElementBlock("div",Zu,[e.renderSlot(m.$slots,"filters")])):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0)}},la={__name:"DataTableRow",props:{item:{type:Object,required:!0},columns:{type:Array,required:!0},index:{type:Number,required:!0},selectable:{type:Boolean,default:!1},isSelected:{type:Boolean,default:!1},striped:{type:Boolean,default:!1},hoverable:{type:Boolean,default:!0},clickableRows:{type:Boolean,default:!1},density:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","bordered","minimal"].includes(t)}},emits:["toggle-selection","row-click"],setup(t,{emit:n}){const a=t,o=n,r=z.cva("transition-colors",{variants:{striped:{true:"odd:bg-slate-50/50",false:""},hoverable:{true:"hover:bg-slate-50",false:""},clickable:{true:"cursor-pointer hover:bg-slate-100",false:""},selected:{true:"bg-blue-50 border-blue-200",false:""},variant:{default:"",bordered:"border-b border-slate-200",minimal:"border-b border-slate-100"}},compoundVariants:[{hoverable:!0,clickable:!0,class:"hover:bg-slate-100"}],defaultVariants:{striped:!1,hoverable:!0,clickable:!1,selected:!1,variant:"default"}}),s=z.cva("whitespace-nowrap text-sm text-slate-900",{variants:{density:{compact:"px-4 py-2",normal:"px-6 py-4",comfortable:"px-8 py-6"},align:{left:"text-left",center:"text-center",right:"text-right"}},defaultVariants:{density:"normal",align:"left"}}),l=g=>typeof g=="string"?g:g?.key||g?.field||"unknown",c=(g,d)=>{const u=l(d);return typeof d=="object"&&d.accessor?d.accessor(g):u&&u.includes(".")?u.split(".").reduce((i,b)=>i?.[b],g):g?.[u]},m=(g,d)=>{const u=c(g,d);return typeof d=="object"&&d.formatter?d.formatter(u,g):u==null?"":u instanceof Date?u.toLocaleDateString():Array.isArray(u)?u.join(", "):u},f=()=>{a.clickableRows&&o("row-click",{item:a.item,index:a.index})},p=g=>typeof g=="object"&&g.align?g.align:"left",v=e.computed(()=>y(r({striped:a.striped,hoverable:a.hoverable&&!a.clickableRows,clickable:a.clickableRows,selected:a.isSelected,variant:a.variant}))),B=g=>{const d=p(g);return y(s({density:a.density,align:d}),g.cellClasses)},h=e.computed(()=>y(s({density:a.density}),"w-12")),k=e.computed(()=>y(s({density:a.density,align:"right"}),"font-medium"));return(g,d)=>(e.openBlock(),e.createElementBlock("tr",{class:e.normalizeClass(v.value),onClick:f},[t.selectable?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(h.value)},[e.createVNode(st,{"model-value":t.isSelected,"onUpdate:modelValue":d[0]||(d[0]=u=>g.$emit("toggle-selection",t.item))},null,8,["model-value"])],2)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,u=>(e.openBlock(),e.createElementBlock("td",{key:l(u),class:e.normalizeClass(B(u))},[e.renderSlot(g.$slots,`cell-${l(u)}`,{item:t.item,value:c(t.item,u),column:u,index:t.index},()=>[e.createTextVNode(e.toDisplayString(m(t.item,u)),1)])],2))),128)),g.$slots.actions?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass(k.value)},[e.renderSlot(g.$slots,"actions",{item:t.item,index:t.index})],2)):e.createCommentVNode("",!0)],2))}},em={class:"flex items-center justify-between"},tm={key:0,class:"text-sm text-slate-600"},am={key:1,class:"text-sm text-slate-600"},nm={key:2,class:"flex items-center gap-4"},om={key:3,class:"flex items-center gap-4"},rm={class:"flex items-center gap-2"},lm={class:"flex items-center gap-1"},sm=["disabled"],im=["disabled"],cm={class:"flex items-center gap-1"},dm=["onClick"],um=["disabled"],mm=["disabled"],fm={class:"text-sm text-slate-600 ml-4"},sa={__name:"DataTablePagination",props:{currentPage:{type:Number,required:!0},totalPages:{type:Number,required:!0},total:{type:Number,required:!0},pageSize:{type:Number,required:!0},showPagination:{type:Boolean,default:!0},selectable:{type:Boolean,default:!1},selectedCount:{type:Number,default:0},pageSizeOptions:{type:Array,default:()=>[5,10,25,50,100]},maxVisiblePages:{type:Number,default:7},variant:{type:String,default:"default",validator:t=>["default","minimal","bordered"].includes(t)},padding:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)}},emits:["update:currentPage","update:pageSize"],setup(t){const n=t,a=z.cva("border-t border-slate-200",{variants:{variant:{default:"bg-slate-50",minimal:"bg-transparent border-slate-100",bordered:"bg-slate-100 border-t-2 border-slate-300"},padding:{compact:"px-4 py-2",normal:"px-6 py-4",comfortable:"px-8 py-6"}},defaultVariants:{variant:"default",padding:"normal"}}),o=z.cva("text-sm font-medium border rounded-md transition-colors duration-200",{variants:{state:{active:"bg-blue-600 text-white border-blue-600",inactive:"bg-white text-slate-700 border-slate-300 hover:bg-slate-50",disabled:"bg-slate-100 text-slate-400 border-slate-200 cursor-not-allowed"},size:{sm:"px-2 py-1",md:"px-3 py-2",lg:"px-4 py-3"}},defaultVariants:{state:"inactive",size:"md"}}),r=z.cva("text-slate-700",{variants:{size:{sm:"text-sm",md:"text-base",lg:"text-lg"}},defaultVariants:{size:"md"}}),s=z.cva("border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 text-sm min-w-[60px] focus:border-transparent",{variants:{size:{sm:"px-2 py-1",md:"px-3 py-2",lg:"px-4 py-3"}},defaultVariants:{size:"sm"}}),l=e.computed(()=>(n.currentPage-1)*n.pageSize+1),c=e.computed(()=>Math.min(n.currentPage*n.pageSize,n.total)),m=e.computed(()=>{const h=[],k=n.totalPages,g=n.currentPage,d=n.maxVisiblePages;if(k<=d)for(let u=1;u<=k;u++)h.push(u);else{const u=Math.floor(d/2);let i=Math.max(1,g-u),b=Math.min(k,i+d-1);b-i+1<d&&(i=Math.max(1,b-d+1));for(let E=i;E<=b;E++)h.push(E)}return h}),f=e.computed(()=>y(a({variant:n.variant,padding:n.padding}))),p=e.computed(()=>y(r({size:"md"}))),v=e.computed(()=>y(s({size:"sm"}))),B=(h,k)=>{let g="inactive";return k?g="disabled":h&&(g="active"),y(o({state:g,size:"md"}))};return(h,k)=>t.showPagination||h.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(f.value)},[e.createElementVNode("div",em,[t.selectable&&t.selectedCount>0?(e.openBlock(),e.createElementBlock("div",tm,e.toDisplayString(t.selectedCount)+" of "+e.toDisplayString(t.total)+" selected ",1)):(e.openBlock(),e.createElementBlock("div",am," Showing "+e.toDisplayString(l.value)+" to "+e.toDisplayString(c.value)+" of "+e.toDisplayString(t.total)+" entries ",1)),h.$slots.footer?(e.openBlock(),e.createElementBlock("div",nm,[e.renderSlot(h.$slots,"footer")])):e.createCommentVNode("",!0),t.showPagination?(e.openBlock(),e.createElementBlock("div",om,[e.createElementVNode("div",rm,[e.createVNode(Ve,{for:"pageSize",class:e.normalizeClass(p.value),inline:!0},{default:e.withCtx(()=>[...k[5]||(k[5]=[e.createTextVNode("Show:",-1)])]),_:1},8,["class"]),e.createVNode(ue,{id:"pageSize","model-value":t.pageSize.toString(),class:e.normalizeClass(v.value),"onUpdate:modelValue":k[0]||(k[0]=g=>h.$emit("update:pageSize",parseInt(g)))},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.pageSizeOptions,g=>(e.openBlock(),e.createBlock(Zt,{key:g,value:g.toString(),label:g.toString()},null,8,["value","label"]))),128))]),_:1},8,["model-value","class"])]),e.createElementVNode("div",lm,[e.createElementVNode("button",{disabled:t.currentPage===1,class:e.normalizeClass(B(!1,t.currentPage===1)),title:"First page",onClick:k[1]||(k[1]=g=>h.$emit("update:currentPage",1))},[...k[6]||(k[6]=[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m18.75 4.5-7.5 7.5 7.5 7.5m-6-15L5.25 12l7.5 7.5"})],-1)])],10,sm),e.createElementVNode("button",{disabled:t.currentPage===1,class:e.normalizeClass(B(!1,t.currentPage===1)),title:"Previous page",onClick:k[2]||(k[2]=g=>h.$emit("update:currentPage",t.currentPage-1))},[...k[7]||(k[7]=[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M15.75 19.5L8.25 12l7.5-7.5"})],-1)])],10,im),e.createElementVNode("div",cm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,g=>(e.openBlock(),e.createElementBlock("button",{key:g,class:e.normalizeClass(B(g===t.currentPage,!1)),onClick:d=>h.$emit("update:currentPage",g)},e.toDisplayString(g),11,dm))),128))]),e.createElementVNode("button",{disabled:t.currentPage===t.totalPages,class:e.normalizeClass(B(!1,t.currentPage===t.totalPages)),title:"Next page",onClick:k[3]||(k[3]=g=>h.$emit("update:currentPage",t.currentPage+1))},[...k[8]||(k[8]=[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m8.25 4.5 7.5 7.5-7.5 7.5"})],-1)])],10,um),e.createElementVNode("button",{disabled:t.currentPage===t.totalPages,class:e.normalizeClass(B(!1,t.currentPage===t.totalPages)),title:"Last page",onClick:k[4]||(k[4]=g=>h.$emit("update:currentPage",t.totalPages))},[...k[9]||(k[9]=[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m5.25 4.5 7.5 7.5-7.5 7.5m6-15 7.5 7.5-7.5 7.5"})],-1)])],10,mm)]),e.createElementVNode("div",fm," Page "+e.toDisplayString(t.currentPage)+" of "+e.toDisplayString(t.totalPages),1)])):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0)}},dt=(t,n)=>{const a=t.__vccOpts||t;for(const[o,r]of n)a[o]=r;return a},gm={key:0,class:"loader__backdrop"},pm={class:"loader__container"},vm={key:0,class:"loader__text loader__text--top"},hm={key:1,class:"loader__spin"},bm={key:2,class:"loader__pulse"},ym={key:3,class:"loader__bounce"},xm={key:4,class:"loader__ripple"},km={key:5,class:"loader__bars"},wm={key:6,class:"loader__dots"},Cm={key:7,class:"loader__ring"},Bm={key:8,class:"loader__spinner-text"},Sm={key:9,class:"loader__text loader__text--bottom"},Vm={__name:"Loader",props:{loading:{type:Boolean,default:!0},type:{type:String,default:"spin",validator:t=>["spin","pulse","bounce","ripple","bars","dots","ring","spinner-text"].includes(t)},size:{type:String,default:"medium",validator:t=>["small","medium","large","xl"].includes(t)},color:{type:String,default:"#3b82f6"},backgroundColor:{type:String,default:"rgba(255, 255, 255, 0.9)"},text:{type:String,default:""},textPosition:{type:String,default:"bottom",validator:t=>["top","bottom"].includes(t)},overlay:{type:Boolean,default:!1},fullscreen:{type:Boolean,default:!1}},setup(t){return(n,a)=>t.loading?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["loader",`loader--${t.type}`,`loader--${t.size}`,t.overlay?"loader--overlay":"",t.fullscreen?"loader--fullscreen":""]),style:e.normalizeStyle({"--loader-color":t.color,"--loader-bg":t.backgroundColor})},[t.overlay?(e.openBlock(),e.createElementBlock("div",gm)):e.createCommentVNode("",!0),e.createElementVNode("div",pm,[t.text&&t.textPosition==="top"?(e.openBlock(),e.createElementBlock("div",vm,e.toDisplayString(t.text),1)):e.createCommentVNode("",!0),t.type==="spin"?(e.openBlock(),e.createElementBlock("div",hm)):t.type==="pulse"?(e.openBlock(),e.createElementBlock("div",bm)):t.type==="bounce"?(e.openBlock(),e.createElementBlock("div",ym,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(3,o=>e.createElementVNode("div",{key:o,class:"loader__bounce-dot",style:e.normalizeStyle({animationDelay:`${(o-1)*.1}s`})},null,4)),64))])):t.type==="ripple"?(e.openBlock(),e.createElementBlock("div",xm,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(2,o=>e.createElementVNode("div",{key:o,class:"loader__ripple-ring",style:e.normalizeStyle({animationDelay:`${(o-1)*.5}s`})},null,4)),64))])):t.type==="bars"?(e.openBlock(),e.createElementBlock("div",km,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(5,o=>e.createElementVNode("div",{key:o,class:"loader__bar",style:e.normalizeStyle({animationDelay:`${(o-1)*.1}s`})},null,4)),64))])):t.type==="dots"?(e.openBlock(),e.createElementBlock("div",wm,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(3,o=>e.createElementVNode("div",{key:o,class:"loader__dot",style:e.normalizeStyle({animationDelay:`${(o-1)*.16}s`})},null,4)),64))])):t.type==="ring"?(e.openBlock(),e.createElementBlock("div",Cm,[...a[0]||(a[0]=[e.createElementVNode("div",{class:"loader__ring-track"},null,-1),e.createElementVNode("div",{class:"loader__ring-fill"},null,-1)])])):t.type==="spinner-text"?(e.openBlock(),e.createElementBlock("div",Bm,[...a[1]||(a[1]=[e.createElementVNode("div",{class:"loader__spinner"},null,-1)])])):e.createCommentVNode("",!0),t.text&&t.textPosition==="bottom"?(e.openBlock(),e.createElementBlock("div",Sm,e.toDisplayString(t.text),1)):e.createCommentVNode("",!0)])],6)):e.createCommentVNode("",!0)}},Le=dt(Vm,[["__scopeId","data-v-68532350"]]),Em={class:"relative"},Nm={class:"flex items-center justify-center"},$m=["onClick"],zm={class:"flex items-center gap-2"},Dm={key:1,class:"flex flex-col"},Tm={key:1,class:"flex items-center gap-1 justify-center"},Am={key:1,class:"text-xs"},Fm={key:2},Pm=["colspan"],Im={class:"flex flex-col items-center justify-center py-12"},jm={class:"text-slate-400 mb-4 flex justify-center"},Lm={class:"text-slate-600 text-lg font-medium mb-2"},Om={class:"text-slate-500 text-sm"},Mm={__name:"DataTable",props:{data:{type:Array,required:!0},columns:{type:Array,required:!0},title:{type:String,default:null},description:{type:String,default:null},selectable:{type:Boolean,default:!1},selectedItems:{type:Array,default:()=>[]},sortBy:{type:String,default:null},sortOrder:{type:String,default:"asc",validator:t=>["asc","desc"].includes(t)},pageSize:{type:Number,default:10},showPagination:{type:Boolean,default:!0},striped:{type:Boolean,default:!1},hoverable:{type:Boolean,default:!0},clickableRows:{type:Boolean,default:!1},emptyText:{type:String,default:"No data available"},emptySubtitle:{type:String,default:"Try adjusting your search or filter criteria"},rowKey:{type:String,default:"id"},variant:{type:String,default:"default",validator:t=>["default","bordered","minimal"].includes(t)},density:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)},headerVariant:{type:String,default:"default"},headerPadding:{type:String,default:"normal"},paginationVariant:{type:String,default:"default"},paginationPadding:{type:String,default:"normal"},actions:{type:Array,default:()=>[]},showActionsColumn:{type:Boolean,default:!0},loading:{type:Boolean,default:!1},dataLoading:{type:Boolean,default:!1},sortLoading:{type:Boolean,default:!1},paginationLoading:{type:Boolean,default:!1},bulkLoading:{type:Boolean,default:!1},rowLoading:{type:Object,default:()=>({})},loadingType:{type:String,default:"dots",validator:t=>["spin","pulse","bounce","ripple","bars","dots","ring"].includes(t)},loadingSize:{type:String,default:"medium",validator:t=>["small","medium","large","xl"].includes(t)},loadingColor:{type:String,default:"#3b82f6"},loadingText:{type:String,default:"Loading..."},loadingTextPosition:{type:String,default:"bottom",validator:t=>["top","bottom"].includes(t)},loadingBackground:{type:String,default:"rgba(255, 255, 255, 0.95)"},showSkeleton:{type:Boolean,default:!0},skeletonRows:{type:Number,default:5}},emits:["selection-change","sort-change","row-click","page-change","page-size-change","refresh","action"],setup(t,{expose:n,emit:a}){const o=t,r=a,s=e.ref(1),l=e.ref(o.pageSize),c=e.ref(o.sortBy),m=e.ref(o.sortOrder),f=z.cva("bg-white border border-slate-200 rounded-lg overflow-hidden",{variants:{variant:{default:"shadow-sm",bordered:"border-2 border-slate-300",minimal:"border-none shadow-none bg-transparent"}},defaultVariants:{variant:"default"}}),p=z.cva("min-w-full",{variants:{variant:{default:"divide-y divide-slate-200",bordered:"border-collapse [&_td]:border [&_th]:border",minimal:"divide-y divide-slate-100"}},defaultVariants:{variant:"default"}}),v=z.cva("",{variants:{variant:{default:"bg-slate-50",bordered:"bg-slate-100 border-b-2 border-slate-300",minimal:"bg-transparent border-b border-slate-200"}},defaultVariants:{variant:"default"}}),B=z.cva("divide-y",{variants:{variant:{default:"bg-white divide-slate-200",bordered:"bg-white divide-slate-300",minimal:"bg-transparent divide-slate-100"}},defaultVariants:{variant:"default"}}),h=e.computed(()=>{let D=[...o.data];if(c.value){const R=o.columns.find(G=>G.key===c.value);R&&D.sort((G,ee)=>{const te=W(G,R),X=W(ee,R);return te<X?m.value==="asc"?-1:1:te>X?m.value==="asc"?1:-1:0})}return D}),k=e.computed(()=>Math.ceil(h.value.length/l.value)),g=e.computed(()=>{if(!o.showPagination)return h.value;const D=(s.value-1)*l.value,R=D+l.value;return h.value.slice(D,R)}),d=e.computed(()=>{let D=o.columns.length;return o.selectable&&D++,(o.$slots?.actions||o.actions.length>0&&o.showActionsColumn)&&D++,D}),u=D=>o.actions.filter(R=>R.visible&&typeof R.visible=="function"?R.visible(D):!0),i=(D,R)=>D.permission&&typeof D.permission=="function"?D.permission(R):!0,b=(D,R)=>D.disabled&&typeof D.disabled=="function"?D.disabled(R):!1,E=(D,R)=>{b(D,R)||!i(D,R)||(r("action",{action:D.key,item:R,actionConfig:D}),D.onClick&&typeof D.onClick=="function"&&D.onClick(R))},V=D=>({default:"default",primary:"gradient",secondary:"secondary",destructive:"destructive",success:"success",warning:"warning",info:"info",subtle:"subtle",dark:"dark",light:"light",primaryOutline:"primaryOutline",destructiveOutline:"destructiveOutline",successOutline:"successOutline",outline:"outline",link:"link",ghost:"ghost"})[D]||"ghost",F=e.computed(()=>h.value.length>0&&h.value.every(D=>S(D))),I=e.computed(()=>{const D=h.value.filter(R=>S(R)).length;return D>0&&D<h.value.length}),W=(D,R)=>R.accessor?R.accessor(D):R.key.split(".").reduce((G,ee)=>G?.[ee],D),_=(D,R)=>D[o.rowKey]||R,S=D=>o.selectedItems.some(R=>_(R)===_(D)),O=D=>{const R=[...o.selectedItems],G=R.findIndex(ee=>_(ee)===_(D));G>-1?R.splice(G,1):R.push(D),r("selection-change",R)},L=()=>{if(o.loading||o.dataLoading)return;const D=F.value?[]:[...h.value];r("selection-change",D)},x=async D=>{!D.sortable||o.loading||o.sortLoading||(c.value===D.key?m.value=m.value==="asc"?"desc":"asc":(c.value=D.key,m.value="asc"),r("sort-change",{column:D.key,direction:m.value}))},N=D=>{o.loading||r("row-click",D)},P=async D=>{o.paginationLoading||o.loading||(s.value=D,r("page-change",D))},Y=async D=>{o.paginationLoading||o.loading||(l.value=D,s.value=1,r("page-size-change",D))},U=e.computed(()=>y(f({variant:o.variant}))),ne=e.computed(()=>y(p({variant:o.variant}))),ut=e.computed(()=>y(v({variant:o.variant}))),$e=e.computed(()=>y(B({variant:o.variant}))),mt=D=>y({compact:"px-4 py-2",normal:"px-6 py-3",comfortable:"px-8 py-4"}[o.density],"text-left text-xs font-medium text-slate-500 uppercase tracking-wider",{"cursor-pointer hover:bg-slate-100 transition-colors":D.sortable&&!o.loading&&!o.sortLoading,"cursor-not-allowed opacity-50":o.loading||o.sortLoading&&c.value===D.key}),ft=()=>y({compact:"px-4 py-2",normal:"px-6 py-4",comfortable:"px-8 py-6"}[o.density],"whitespace-nowrap text-sm text-slate-900"),qe=e.computed(()=>y({compact:"px-4 py-2",normal:"px-6 py-4",comfortable:"px-8 py-6"}[o.density],"whitespace-nowrap text-sm text-slate-900 w-12")),ye=e.computed(()=>y({compact:"px-4 py-2",normal:"px-6 py-4",comfortable:"px-8 py-6"}[o.density],"whitespace-nowrap text-sm font-medium text-center")),ze=e.computed(()=>y({compact:"px-4 py-4",normal:"px-6 py-6",comfortable:"px-8 py-8"}[o.density],"text-center")),De=(D,R)=>y({"text-blue-600":c.value===D.key&&m.value===R,"text-slate-300":c.value!==D.key||m.value!==R});return e.watch(()=>o.selectedItems,()=>{},{deep:!0}),e.watch(()=>o.pageSize,D=>{l.value=D}),n({refresh:()=>{r("refresh")},goToPage:D=>{P(D)},selectAll:()=>{L()},clearSelection:()=>{r("selection-change",[])},getCurrentPage:()=>s.value,getTotalPages:()=>k.value,getSelectedItems:()=>o.selectedItems}),(D,R)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(U.value)},[t.title||t.description||D.$slots.header?(e.openBlock(),e.createBlock(ra,{key:0,title:t.title,description:t.description,variant:t.headerVariant,padding:t.headerPadding},{header:e.withCtx(()=>[e.renderSlot(D.$slots,"header",{},void 0,!0)]),filters:e.withCtx(()=>[e.renderSlot(D.$slots,"filters",{},void 0,!0)]),_:3},8,["title","description","variant","padding"])):e.createCommentVNode("",!0),e.createElementVNode("div",Em,[t.loading?(e.openBlock(),e.createBlock(Le,{key:0,loading:!0,type:t.loadingType,size:t.loadingSize,color:t.loadingColor,overlay:!0,text:t.loadingText,"text-position":t.loadingTextPosition,"background-color":t.loadingBackground,class:"table-loading-overlay"},null,8,["type","size","color","text","text-position","background-color"])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["overflow-x-auto",{"opacity-50":t.loading}])},[e.createElementVNode("table",{class:e.normalizeClass(ne.value)},[e.createElementVNode("thead",{class:e.normalizeClass(ut.value)},[e.createElementVNode("tr",null,[t.selectable?(e.openBlock(),e.createElementBlock("th",{key:0,class:e.normalizeClass(qe.value)},[e.createElementVNode("div",Nm,[t.bulkLoading?(e.openBlock(),e.createBlock(Le,{key:0,loading:!0,type:"spin",size:"small",color:t.loadingColor},null,8,["color"])):(e.openBlock(),e.createBlock(st,{key:1,"model-value":F.value,indeterminate:I.value,disabled:t.loading||t.dataLoading,"onUpdate:modelValue":L},null,8,["model-value","indeterminate","disabled"]))])],2)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,G=>(e.openBlock(),e.createElementBlock("th",{key:G.key,class:e.normalizeClass(mt(G)),onClick:ee=>x(G)},[e.createElementVNode("div",zm,[e.createElementVNode("span",null,e.toDisplayString(G.label),1),t.sortLoading&&c.value===G.key?(e.openBlock(),e.createBlock(Le,{key:0,loading:!0,type:"spin",size:"small",color:t.loadingColor},null,8,["color"])):G.sortable?(e.openBlock(),e.createElementBlock("div",Dm,[(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass([De(G,"asc"),"w-3 h-3 transition-colors"]),fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...R[0]||(R[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m4.5 15.75 7.5-7.5 7.5 7.5"},null,-1)])],2)),(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass([De(G,"desc"),"w-3 h-3 transition-colors"]),fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...R[1]||(R[1]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"},null,-1)])],2))])):e.createCommentVNode("",!0)])],10,$m))),128)),D.$slots.actions||t.actions.length>0&&t.showActionsColumn?(e.openBlock(),e.createElementBlock("th",{key:1,class:e.normalizeClass(ye.value)}," Actions ",2)):e.createCommentVNode("",!0)])],2),e.createElementVNode("tbody",{class:e.normalizeClass($e.value)},[t.showSkeleton&&(t.loading||t.dataLoading)?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.skeletonRows,G=>(e.openBlock(),e.createElementBlock("tr",{key:`skeleton-${G}`,class:"animate-pulse"},[t.selectable?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(qe.value)},[...R[2]||(R[2]=[e.createElementVNode("div",{class:"w-4 h-4 bg-slate-200 rounded"},null,-1)])],2)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,ee=>(e.openBlock(),e.createElementBlock("td",{key:ee.key,class:e.normalizeClass(ft())},[...R[3]||(R[3]=[e.createElementVNode("div",{class:"h-4 bg-slate-200 rounded w-3/4"},null,-1)])],2))),128)),D.$slots.actions||t.actions.length>0&&t.showActionsColumn?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass(ye.value)},[...R[4]||(R[4]=[e.createElementVNode("div",{class:"flex gap-2 justify-center"},[e.createElementVNode("div",{class:"w-6 h-6 bg-slate-200 rounded"}),e.createElementVNode("div",{class:"w-6 h-6 bg-slate-200 rounded"})],-1)])],2)):e.createCommentVNode("",!0)]))),128)):g.value.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(g.value,(G,ee)=>(e.openBlock(),e.createBlock(la,{key:_(G,ee),item:G,columns:t.columns,index:ee,selectable:t.selectable,"is-selected":S(G),striped:t.striped,hoverable:t.hoverable,"clickable-rows":t.clickableRows,density:t.density,"row-loading":t.rowLoading[_(G,ee)],"loading-color":t.loadingColor,onToggleSelection:O,onRowClick:N},e.createSlots({actions:e.withCtx(te=>[D.$slots.actions?e.renderSlot(D.$slots,"actions",e.mergeProps({key:0,ref_for:!0},te),void 0,!0):t.actions.length>0&&t.showActionsColumn?(e.openBlock(),e.createElementBlock("div",Tm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u(te.item),X=>(e.openBlock(),e.createBlock(ta,{key:X.key,content:X.tooltip||X.label||X.key,placement:"top"},{default:e.withCtx(()=>[e.createVNode(Z,{variant:V(X.variant),size:"icon",disabled:b(X,te.item)||!i(X,te.item),class:"h-8 w-8",onClick:e.withModifiers(ia=>E(X,te.item),["stop"])},{default:e.withCtx(()=>[X.icon?(e.openBlock(),e.createBlock(j,{key:0,icon:X.icon,class:"w-4 h-4"},null,8,["icon"])):X.label?(e.openBlock(),e.createElementBlock("span",Am,e.toDisplayString(X.label),1)):e.createCommentVNode("",!0)]),_:2},1032,["variant","disabled","onClick"])]),_:2},1032,["content"]))),128))])):e.createCommentVNode("",!0)]),_:2},[e.renderList(t.columns,te=>({name:`cell-${te.key}`,fn:e.withCtx(X=>[e.renderSlot(D.$slots,`cell-${te.key}`,e.mergeProps({ref_for:!0},X),void 0,!0)])}))]),1032,["item","columns","index","selectable","is-selected","striped","hoverable","clickable-rows","density","row-loading","loading-color"]))),128)):(e.openBlock(),e.createElementBlock("tr",Fm,[e.createElementVNode("td",{colspan:d.value,class:e.normalizeClass(ze.value)},[e.renderSlot(D.$slots,"empty",{},()=>[e.createElementVNode("div",Im,[e.createElementVNode("div",jm,[e.createVNode(j,{icon:"search",class:"w-16 h-16"})]),e.createElementVNode("p",Lm,e.toDisplayString(t.emptyText),1),e.createElementVNode("p",Om,e.toDisplayString(t.emptySubtitle),1)])],!0)],10,Pm)]))],2)],2)],2)]),t.showPagination||D.$slots.footer?(e.openBlock(),e.createBlock(sa,{key:1,"current-page":s.value,"total-pages":k.value,total:h.value.length,"page-size":l.value,"show-pagination":t.showPagination,selectable:t.selectable,"selected-count":t.selectedItems.length,variant:t.paginationVariant,padding:t.paginationPadding,loading:t.paginationLoading,disabled:t.loading||t.dataLoading,"onUpdate:currentPage":P,"onUpdate:pageSize":Y},{footer:e.withCtx(()=>[e.renderSlot(D.$slots,"footer",{},void 0,!0)]),_:3},8,["current-page","total-pages","total","page-size","show-pagination","selectable","selected-count","variant","padding","loading","disabled"])):e.createCommentVNode("",!0)],2))}},Io=dt(Mm,[["__scopeId","data-v-7d6cfd43"]]),jo={__name:"DataTableCell",props:{item:{type:Object,required:!0},column:{type:Object,required:!0},value:{type:[String,Number,Boolean,Object,Array],default:null},align:{type:String,default:"left",validator:t=>["left","center","right"].includes(t)},width:{type:String,default:null},padding:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)},textSize:{type:String,default:"sm",validator:t=>["xs","sm","base","lg"].includes(t)},textColor:{type:String,default:"slate-900"}},setup(t){const n=t,a=e.computed(()=>{const l=n.value??o();return n.column.formatter?n.column.formatter(l,n.item):l}),o=()=>n.column.accessor?n.column.accessor(n.item):n.column.key.split(".").reduce((l,c)=>l?.[c],n.item),r=z.cva("whitespace-nowrap",{variants:{align:{left:"text-left",center:"text-center",right:"text-right"},padding:{compact:"px-4 py-2",normal:"px-6 py-4",comfortable:"px-8 py-6"},textSize:{xs:"text-xs",sm:"text-sm",base:"text-base",lg:"text-lg"}},defaultVariants:{align:"left",padding:"normal",textSize:"sm"}}),s=e.computed(()=>{const l=n.align||n.column.align||"left",c=`text-${n.textColor}`,m=n.width?`w-${n.width}`:"";return y(r({align:l,padding:n.padding,textSize:n.textSize}),c,m,n.column.cellClasses)});return(l,c)=>(e.openBlock(),e.createElementBlock("td",{class:e.normalizeClass(s.value)},[e.renderSlot(l.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(a.value),1)])],2))}},Rm={class:"bg-white border-b border-gray-200"},_m={key:0,class:"flex-1 min-w-80 max-w-md"},Um={class:"relative group"},qm=["model-value","placeholder"],Wm={class:"relative"},Ym={value:""},Hm=["value"],Gm={key:1,class:"min-w-36"},Km={class:"relative"},Xm=["value"],Jm={key:3,class:"flex items-center gap-2"},Qm={class:"flex items-center gap-3 ml-auto"},Zm={key:2},ef={class:"grid grid-cols-1 lg:grid-cols-3 gap-6"},tf={class:"flex items-center justify-between"},af={class:"flex items-center gap-3"},nf={class:"relative flex-1"},of=["model-value","placeholder","onInput"],rf={class:"relative flex-1"},lf=["model-value","placeholder","onInput"],sf=["onClick"],cf={class:"flex items-center justify-between"},df={class:"flex items-center gap-3"},uf={class:"relative flex-1"},mf=["model-value","placeholder","step","onInput"],ff={class:"relative flex-1"},gf=["model-value","placeholder","step","onInput"],pf=["onClick"],vf={class:"flex items-center justify-between"},hf={class:"relative"},bf={value:""},yf=["value"],xf={key:0,class:"flex flex-wrap gap-2 mt-2"},kf=["onClick"],wf={class:"flex items-center gap-3 flex-wrap"},Cf=["onClick"],Bf={key:2,class:"px-6 py-3 bg-gray-50 border-t border-gray-200"},Sf={class:"flex items-center justify-between"},Vf={class:"flex items-center gap-4"},Ef={class:"text-sm text-gray-600"},Nf={class:"font-medium"},Lo={__name:"DataTableFilters",props:{searchQuery:{type:String,default:""},searchPlaceholder:{type:String,default:"Search..."},selectedStatus:{type:String,default:""},statusOptions:{type:Array,default:()=>[]},showDateFilter:{type:Boolean,default:!1},dateFrom:{type:String,default:""},dateTo:{type:String,default:""},selectFilters:{type:Array,default:()=>[],validator:t=>t.every(n=>Object.prototype.hasOwnProperty.call(n,"key")&&Object.prototype.hasOwnProperty.call(n,"label")&&Object.prototype.hasOwnProperty.call(n,"options")&&Object.prototype.hasOwnProperty.call(n,"value"))},dateFilters:{type:Array,default:()=>[],validator:t=>t.every(n=>Object.prototype.hasOwnProperty.call(n,"key")&&Object.prototype.hasOwnProperty.call(n,"label")&&Object.prototype.hasOwnProperty.call(n,"from")&&Object.prototype.hasOwnProperty.call(n,"to"))},numberFilters:{type:Array,default:()=>[],validator:t=>t.every(n=>Object.prototype.hasOwnProperty.call(n,"key")&&Object.prototype.hasOwnProperty.call(n,"label")&&Object.prototype.hasOwnProperty.call(n,"min")&&Object.prototype.hasOwnProperty.call(n,"max"))},multiSelectFilters:{type:Array,default:()=>[],validator:t=>t.every(n=>Object.prototype.hasOwnProperty.call(n,"key")&&Object.prototype.hasOwnProperty.call(n,"label")&&Object.prototype.hasOwnProperty.call(n,"options")&&Object.prototype.hasOwnProperty.call(n,"selected"))},showExport:{type:Boolean,default:!1},showAdd:{type:Boolean,default:!1},addButton:{type:Object,default:()=>({})},showTableInfo:{type:Boolean,default:!0},showSearch:{type:Boolean,default:!0},showFilters:{type:Boolean,default:!0},totalItems:{type:Number,default:0},itemLabel:{type:String,default:"items"},variant:{type:String,default:"default",validator:t=>["default","minimal","bordered"].includes(t)},padding:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)}},emits:["update:searchQuery","update:selectedStatus","update:dateFrom","update:dateTo","update:dateFilters","update:selectFilters","update:numberFilters","update:multiSelectFilters","export","add","clear-filters","add-button-click"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(!1),s=e.computed(()=>Object.keys(a.addButton).length>0),l=e.computed(()=>s.value?a.addButton.visible&&typeof a.addButton.visible=="function"?a.addButton.visible():!0:a.showAdd),c=e.computed(()=>s.value&&a.addButton.permission&&typeof a.addButton.permission=="function"?a.addButton.permission():!0),m=e.computed(()=>s.value&&a.addButton.disabled&&typeof a.addButton.disabled=="function"?a.addButton.disabled():!1),f=()=>{m.value||!c.value||(o("add"),o("add-button-click",a.addButton),a.addButton.onClick&&typeof a.addButton.onClick=="function"&&a.addButton.onClick())},p=z.cva("flex flex-wrap items-center gap-4",{variants:{variant:{default:"bg-white",minimal:"bg-transparent",bordered:"bg-gray-50"},padding:{compact:"px-4 py-3",normal:"px-6 py-4",comfortable:"px-8 py-6"}},defaultVariants:{variant:"default",padding:"normal"}}),v=z.cva("border border-gray-200 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent transition-all text-sm",{variants:{size:{sm:"px-2 py-1.5",md:"px-3 py-2.5",lg:"px-4 py-3"}},defaultVariants:{size:"md"}}),B=z.cva("rounded-lg flex items-center font-medium transition-all",{variants:{variant:{default:"text-gray-700 hover:text-gray-900 border border-gray-200 hover:bg-gray-50 hover:border-gray-300 bg-white",primary:"text-white bg-blue-600 hover:bg-blue-700 border border-blue-600 shadow-sm",success:"text-white bg-green-600 hover:bg-green-700 border border-green-600 shadow-sm",ghost:"text-gray-600 hover:text-gray-800 hover:bg-gray-100"},size:{sm:"px-2 py-1.5 text-xs",md:"px-3 py-2 text-sm",lg:"px-4 py-2.5 text-sm"}},defaultVariants:{variant:"default",size:"md"}}),h=(T,C)=>{const w=a.selectFilters.map(A=>A.key===T?{...A,value:C}:A);o("update:selectFilters",w)},k=T=>!!(T.from||T.to),g=T=>{const C=a.dateFilters.map(w=>w.key===T?{...w,from:"",to:""}:w);o("update:dateFilters",C)},d=T=>`text-xs px-2 py-1 rounded ${k(T)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,u=(T,C,w)=>{const A=a.dateFilters.map(H=>H.key===T?{...H,[C]:w}:H);o("update:dateFilters",A)},i=T=>!!(T.min||T.max),b=T=>{const C=a.numberFilters.map(w=>w.key===T?{...w,min:"",max:""}:w);o("update:numberFilters",C)},E=T=>`text-xs px-2 py-1 rounded ${i(T)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,V=(T,C,w)=>{const A=a.numberFilters.map(H=>H.key===T?{...H,[C]:w}:H);o("update:numberFilters",A)},F=T=>T.selected&&T.selected.length>0,I=T=>`text-xs px-2 py-1 rounded ${F(T)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,W=(T,C)=>{if(!C)return;const w=a.multiSelectFilters.map(A=>{if(A.key===T){const H=A.selected||[],Te=H.includes(C);return{...A,selected:Te?H.filter(gt=>gt!==C):[...H,C]}}return A});o("update:multiSelectFilters",w)},_=(T,C)=>{const w=a.multiSelectFilters.map(A=>A.key===T?{...A,selected:A.selected.filter(H=>H!==C)}:A);o("update:multiSelectFilters",w)},S=(T,C)=>{const w=T.options.find(A=>A.value===C);return w?w.label:C},O=()=>{r.value=!r.value},L=e.computed(()=>a.numberFilters.length>0||a.multiSelectFilters.length>0),x=e.computed(()=>{const T=a.searchQuery,C=a.selectedStatus,w=a.dateFrom||a.dateTo,A=a.selectFilters.some(ie=>ie.value),H=a.dateFilters.some(ie=>ie.from||ie.to),Te=a.numberFilters.some(ie=>ie.min||ie.max),gt=a.multiSelectFilters.some(ie=>ie.selected&&ie.selected.length>0);return T||C||w||A||H||Te||gt}),N=e.computed(()=>{let T=0;return a.searchQuery&&T++,a.selectedStatus&&T++,(a.dateFrom||a.dateTo)&&T++,T+=a.selectFilters.filter(C=>C.value).length,T+=a.dateFilters.filter(C=>C.from||C.to).length,T+=a.numberFilters.filter(C=>C.min||C.max).length,T+=a.multiSelectFilters.filter(C=>C.selected&&C.selected.length>0).length,T}),P=e.computed(()=>{const T=[];if(a.searchQuery&&a.searchQuery.trim()&&T.push({key:"search",label:"Search",value:`"${a.searchQuery}"`,icon:"magnifying-glass"}),a.selectedStatus){const C=a.statusOptions.find(w=>w.value===a.selectedStatus);T.push({key:"status",label:"Status",value:C?.label||a.selectedStatus,icon:"filter"})}if(a.selectFilters.forEach(C=>{if(C.value){const w=C.options.find(A=>A.value===C.value);T.push({key:`select-${C.key}`,label:C.label,value:w?.label||C.value,icon:"filter"})}}),a.dateFrom||a.dateTo){let C="";a.dateFrom&&a.dateTo?C=`${a.dateFrom} to ${a.dateTo}`:a.dateFrom?C=`From ${a.dateFrom}`:a.dateTo&&(C=`Until ${a.dateTo}`),C&&T.push({key:"date",label:"Date Range",value:C,icon:"calendar"})}return a.dateFilters.forEach(C=>{if(C.from||C.to){let w="";C.from&&C.to?w=`${C.from} to ${C.to}`:C.from?w=`From ${C.from}`:C.to&&(w=`Until ${C.to}`),w&&T.push({key:`date-${C.key}`,label:C.label,value:w,icon:"calendar"})}}),a.numberFilters.forEach(C=>{if(C.min||C.max){let w="";C.min&&C.max?w=`${C.min} to ${C.max}`:C.min?w=`Min ${C.min}`:C.max&&(w=`Max ${C.max}`),w&&T.push({key:`number-${C.key}`,label:C.label,value:w,icon:"hashtag"})}}),a.multiSelectFilters.forEach(C=>{if(C.selected&&C.selected.length>0){const w=C.selected.map(A=>{const H=C.options.find(Te=>Te.value===A);return H?H.label:A});T.push({key:`multi-${C.key}`,label:C.label,value:w.join(", "),icon:"list"})}}),T}),Y=e.computed(()=>y(p({variant:a.variant,padding:a.padding}))),U=e.computed(()=>"absolute left-3 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400 group-hover:text-gray-600 transition-colors"),ne=e.computed(()=>y(v({size:"md"}),"w-full pl-10 pr-10 hover:border-gray-300")),ut=e.computed(()=>"absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-400 hover:text-gray-600 p-1 hover:bg-gray-100 rounded-full transition-all"),$e=e.computed(()=>y(v({size:"md"}),"w-full pr-8 appearance-none hover:border-gray-300")),mt=e.computed(()=>{const T=r.value||x.value;return y(B({variant:T?"primary":"default",size:"lg"}),"gap-2")}),ft=e.computed(()=>"bg-white text-blue-600 text-xs px-1.5 py-0.5 rounded-full min-w-[20px] text-center font-semibold"),qe=e.computed(()=>"px-6 py-4 border-t border-gray-100 bg-gray-50"),ye=e.computed(()=>y(v({size:"md"}),"pl-10 pr-3")),ze=e.computed(()=>"text-sm font-semibold text-gray-700"),De=e.computed(()=>"text-gray-500 text-sm font-medium"),D=e.computed(()=>"text-gray-400 hover:text-gray-600 p-1.5 hover:bg-gray-200 rounded-full transition-all"),R=e.computed(()=>y(B({variant:"ghost",size:"md"}))),G=e.computed(()=>y(B({variant:"default",size:"lg"}))),ee=e.computed(()=>"px-6 py-3 bg-blue-50 border-t border-blue-100"),te=e.computed(()=>"text-sm font-semibold text-blue-800"),X=e.computed(()=>"flex items-center gap-1.5 bg-white border border-blue-200 text-blue-800 px-3 py-1.5 rounded-full text-sm font-medium"),ia=e.computed(()=>"text-blue-600 hover:text-blue-800 ml-1 hover:bg-blue-100 rounded-full p-0.5 transition-all"),Ko=()=>{o("update:searchQuery",""),o("update:selectedStatus",""),o("update:dateFrom",""),o("update:dateTo","");const T=a.selectFilters.map(H=>({...H,value:""}));o("update:selectFilters",T);const C=a.dateFilters.map(H=>({...H,from:"",to:""}));o("update:dateFilters",C);const w=a.numberFilters.map(H=>({...H,min:"",max:""}));o("update:numberFilters",w);const A=a.multiSelectFilters.map(H=>({...H,selected:[]}));o("update:multiSelectFilters",A),o("clear-filters")},Xo=T=>{switch(T){case"search":o("update:searchQuery","");break;case"status":o("update:selectedStatus","");break;case"date":o("update:dateFrom",""),o("update:dateTo","");break;default:if(T.startsWith("select-")){const C=T.replace("select-",""),w=a.selectFilters.map(A=>A.key===C?{...A,value:""}:A);o("update:selectFilters",w)}else if(T.startsWith("date-")){const C=T.replace("date-",""),w=a.dateFilters.map(A=>A.key===C?{...A,from:"",to:""}:A);o("update:dateFilters",w)}else if(T.startsWith("number-")){const C=T.replace("number-",""),w=a.numberFilters.map(A=>A.key===C?{...A,min:"",max:""}:A);o("update:numberFilters",w)}else if(T.startsWith("multi-")){const C=T.replace("multi-",""),w=a.multiSelectFilters.map(A=>A.key===C?{...A,selected:[]}:A);o("update:multiSelectFilters",w)}break}};return(T,C)=>(e.openBlock(),e.createElementBlock("div",Rm,[e.createElementVNode("div",{class:e.normalizeClass(Y.value)},[t.showSearch?(e.openBlock(),e.createElementBlock("div",_m,[e.createElementVNode("div",Um,[e.createVNode(j,{icon:"magnifying-glass",class:e.normalizeClass(U.value)},null,8,["class"]),e.createElementVNode("input",{"model-value":t.searchQuery,placeholder:t.searchPlaceholder,class:e.normalizeClass(ne.value),onInput:C[0]||(C[0]=w=>T.$emit("update:searchQuery",w.target.value))},null,42,qm),t.searchQuery?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(ut.value),onClick:C[1]||(C[1]=w=>T.$emit("update:searchQuery",""))},[e.createVNode(j,{icon:"xmark",class:"w-3 h-3"})],2)):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.selectFilters,w=>(e.openBlock(),e.createElementBlock("div",{key:w.key,class:"min-w-36"},[e.createElementVNode("div",Wm,[e.createVNode(ue,{"model-value":w.value,class:e.normalizeClass($e.value),onChange:A=>h(w.key,A.target.value)},{default:e.withCtx(()=>[e.createElementVNode("option",Ym,e.toDisplayString(w.placeholder||`All ${w.label}`),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.options,A=>(e.openBlock(),e.createElementBlock("option",{key:A.value,value:A.value},e.toDisplayString(A.label),9,Hm))),128))]),_:2},1032,["model-value","class","onChange"]),e.createVNode(j,{icon:"chevron-down",class:"absolute right-2 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400 pointer-events-none"})])]))),128)),t.showFilters&&t.statusOptions.length>0?(e.openBlock(),e.createElementBlock("div",Gm,[e.createElementVNode("div",Km,[e.createVNode(ue,{"model-value":t.selectedStatus,class:e.normalizeClass($e.value),onChange:C[2]||(C[2]=w=>T.$emit("update:selectedStatus",w.target.value))},{default:e.withCtx(()=>[C[5]||(C[5]=e.createElementVNode("option",{value:""}," All Status ",-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.statusOptions,w=>(e.openBlock(),e.createElementBlock("option",{key:w.value,value:w.value},e.toDisplayString(w.label),9,Xm))),128))]),_:1},8,["model-value","class"]),e.createVNode(j,{icon:"chevron-down",class:"absolute right-2 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400 pointer-events-none"})])])):e.createCommentVNode("",!0),t.showFilters&&(t.dateFilters.length>0||L.value)?(e.openBlock(),e.createElementBlock("button",{key:2,class:e.normalizeClass(mt.value),onClick:O},[e.createVNode(j,{icon:"filter",class:"w-4 h-4"}),C[6]||(C[6]=e.createTextVNode(" Filters ",-1)),N.value>0?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(ft.value)},e.toDisplayString(N.value),3)):e.createCommentVNode("",!0),e.createVNode(j,{icon:r.value?"chevron-up":"chevron-down",class:"w-4 h-4 ml-1"},null,8,["icon"])],2)):e.createCommentVNode("",!0),T.$slots.filters?(e.openBlock(),e.createElementBlock("div",Jm,[e.renderSlot(T.$slots,"filters")])):e.createCommentVNode("",!0),e.createElementVNode("div",Qm,[x.value?(e.openBlock(),e.createBlock(Z,{key:0,class:e.normalizeClass(R.value),onClick:Ko},{default:e.withCtx(()=>[e.createVNode(j,{icon:"rotate-left",class:"w-4 h-4 mr-2"}),C[7]||(C[7]=e.createTextVNode(" Clear All ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showExport?(e.openBlock(),e.createBlock(Z,{key:1,class:e.normalizeClass(G.value),onClick:C[3]||(C[3]=w=>T.$emit("export"))},{default:e.withCtx(()=>[e.createVNode(j,{icon:"download",class:"w-4 h-4 mr-2"}),C[8]||(C[8]=e.createTextVNode(" Export ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showAdd&&l.value?(e.openBlock(),e.createElementBlock("div",Zm,[s.value?(e.openBlock(),e.createBlock(Z,{key:0,variant:t.addButton.variant||"success",size:t.addButton.size||"lg",disabled:m.value||!c.value,title:t.addButton.tooltip,onClick:f},{default:e.withCtx(()=>[t.addButton.icon?(e.openBlock(),e.createBlock(j,{key:0,icon:t.addButton.icon,class:"w-4 h-4 mr-2"},null,8,["icon"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(t.addButton.label||"Add"),1)]),_:1},8,["variant","size","disabled","title"])):e.renderSlot(T.$slots,"add",{key:1},()=>[e.createVNode(Z,{variant:"success",size:"lg",onClick:C[4]||(C[4]=w=>T.$emit("add"))},{default:e.withCtx(()=>[e.createVNode(j,{icon:"plus",class:"w-4 h-4 mr-2"}),C[9]||(C[9]=e.createTextVNode(" Add ",-1))]),_:1})])])):e.createCommentVNode("",!0)])],2),t.showFilters&&r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(qe.value)},[e.createElementVNode("div",ef,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.dateFilters,w=>(e.openBlock(),e.createElementBlock("div",{key:w.key,class:"space-y-3"},[e.createElementVNode("div",tf,[e.createElementVNode("label",{class:e.normalizeClass(ze.value)},e.toDisplayString(w.label),3),e.createElementVNode("span",{class:e.normalizeClass(d(w))},e.toDisplayString(k(w)?"Active":"Inactive"),3)]),e.createElementVNode("div",af,[e.createElementVNode("div",nf,[e.createVNode(j,{icon:"calendar",class:"absolute left-3 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400"}),e.createElementVNode("input",{type:"date","model-value":w.from,class:e.normalizeClass(ye.value),placeholder:`From ${w.label}`,onInput:A=>u(w.key,"from",A.target.value)},null,42,of)]),e.createElementVNode("span",{class:e.normalizeClass(De.value)},"to",2),e.createElementVNode("div",rf,[e.createVNode(j,{icon:"calendar",class:"absolute left-3 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400"}),e.createElementVNode("input",{type:"date","model-value":w.to,class:e.normalizeClass(ye.value),placeholder:`To ${w.label}`,onInput:A=>u(w.key,"to",A.target.value)},null,42,lf)]),k(w)?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(D.value),title:"Clear this filter",onClick:A=>g(w.key)},[e.createVNode(j,{icon:"xmark",class:"w-4 h-4"})],10,sf)):e.createCommentVNode("",!0)])]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.numberFilters,w=>(e.openBlock(),e.createElementBlock("div",{key:w.key,class:"space-y-3"},[e.createElementVNode("div",cf,[e.createElementVNode("label",{class:e.normalizeClass(ze.value)},e.toDisplayString(w.label),3),e.createElementVNode("span",{class:e.normalizeClass(E(w))},e.toDisplayString(i(w)?"Active":"Inactive"),3)]),e.createElementVNode("div",df,[e.createElementVNode("div",uf,[e.createElementVNode("input",{type:"number","model-value":w.min,class:e.normalizeClass(ye.value),placeholder:`Min ${w.label}`,step:w.step||1,onInput:A=>V(w.key,"min",A.target.value)},null,42,mf)]),e.createElementVNode("span",{class:e.normalizeClass(De.value)},"to",2),e.createElementVNode("div",ff,[e.createElementVNode("input",{type:"number","model-value":w.max,class:e.normalizeClass(ye.value),placeholder:`Max ${w.label}`,step:w.step||1,onInput:A=>V(w.key,"max",A.target.value)},null,42,gf)]),i(w)?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(D.value),title:"Clear this filter",onClick:A=>b(w.key)},[e.createVNode(j,{icon:"xmark",class:"w-4 h-4"})],10,pf)):e.createCommentVNode("",!0)])]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.multiSelectFilters,w=>(e.openBlock(),e.createElementBlock("div",{key:w.key,class:"space-y-3"},[e.createElementVNode("div",vf,[e.createElementVNode("label",{class:e.normalizeClass(ze.value)},e.toDisplayString(w.label),3),e.createElementVNode("span",{class:e.normalizeClass(I(w))},e.toDisplayString(F(w)?`${w.selected.length} selected`:"None"),3)]),e.createElementVNode("div",hf,[e.createVNode(ue,{"model-value":"",class:e.normalizeClass($e.value),onChange:A=>W(w.key,A.target.value)},{default:e.withCtx(()=>[e.createElementVNode("option",bf," Select "+e.toDisplayString(w.label),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.options,A=>(e.openBlock(),e.createElementBlock("option",{key:A.value,value:A.value},e.toDisplayString(A.label),9,yf))),128))]),_:2},1032,["class","onChange"]),e.createVNode(j,{icon:"chevron-down",class:"absolute right-2 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400 pointer-events-none"})]),w.selected.length>0?(e.openBlock(),e.createElementBlock("div",xf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.selected,A=>(e.openBlock(),e.createElementBlock("span",{key:A,class:"inline-flex items-center gap-1 bg-blue-100 text-blue-800 text-xs px-2 py-1 rounded-full"},[e.createTextVNode(e.toDisplayString(S(w,A))+" ",1),e.createElementVNode("button",{class:"hover:bg-blue-200 rounded-full p-0.5",onClick:H=>_(w.key,A)},[e.createVNode(j,{icon:"xmark",class:"w-3 h-3"})],8,kf)]))),128))])):e.createCommentVNode("",!0)]))),128))])],2)):e.createCommentVNode("",!0),t.showFilters&&P.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(ee.value)},[e.createElementVNode("div",wf,[e.createElementVNode("span",{class:e.normalizeClass(te.value)},"Active filters:",2),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(P.value,w=>(e.openBlock(),e.createElementBlock("div",{key:w.key,class:e.normalizeClass(X.value)},[e.createVNode(j,{icon:w.icon,class:"w-3 h-3"},null,8,["icon"]),e.createElementVNode("span",null,e.toDisplayString(w.label)+": "+e.toDisplayString(w.value),1),e.createElementVNode("button",{class:e.normalizeClass(ia.value),onClick:A=>Xo(w.key)},[e.createVNode(j,{icon:"xmark",class:"w-3 h-3"})],10,Cf)],2))),128))])],2)):e.createCommentVNode("",!0),t.showTableInfo?(e.openBlock(),e.createElementBlock("div",Bf,[e.createElementVNode("div",Sf,[e.createElementVNode("div",Vf,[e.createElementVNode("span",Ef,[e.createElementVNode("span",Nf,e.toDisplayString(t.totalItems||0),1),e.createTextVNode(" "+e.toDisplayString(t.itemLabel||"items")+" found ",1)])])])])):e.createCommentVNode("",!0)]))}},$f={class:"flex items-center gap-3"},zf={key:0,class:"flex items-center gap-3"},Df={class:"text-sm text-slate-600"},Tf={class:"flex items-center gap-2"},Af={class:"flex items-center gap-3"},Ff=["title","onClick"],Pf={key:1,class:"relative"},If={class:"p-3"},jf={class:"space-y-1"},Lf={class:"flex items-center gap-2 cursor-pointer w-full"},Of=["checked","onChange"],Mf=["disabled"],Rf={key:3,class:"flex items-center gap-2"},_f=[{key:"delete",label:"Delete",icon:{template:'<svg fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0" /></svg>'},variant:"destructive"},{key:"edit",label:"Edit",icon:{template:'<svg fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="m16.862 4.487 1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L10.582 16.07a4.5 4.5 0 0 1-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 0 1 1.13-1.897l8.932-8.931Zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0 1 15.75 21H5.25A2.25 2.25 0 0 1 3 18.75V8.25A2.25 2.25 0 0 1 5.25 6H10" /></svg>'},variant:"primary"}],Uf={name:"DataTableToolBar"},Oo=Object.assign(Uf,{props:{selectedItems:{type:Array,default:()=>[]},totalItems:{type:Number,default:0},bulkActions:{type:Array,default:()=>_f},showDensityToggle:{type:Boolean,default:!0},showColumnToggle:{type:Boolean,default:!0},showRefresh:{type:Boolean,default:!0},isRefreshing:{type:Boolean,default:!1},density:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)},toggleableColumns:{type:Array,default:()=>[]},visibleColumns:{type:Array,default:()=>[]},variant:{type:String,default:"default",validator:t=>["default","minimal","bordered"].includes(t)},padding:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)}},emits:["bulk-action","update:density","toggle-column","refresh"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(!1),s=e.ref(null),l=e.ref(null),c=e.computed(()=>a.selectedItems.length),m=[{value:"compact",label:"Compact",icon:["fas","minus"]},{value:"normal",label:"Normal",icon:["fas","bars"]},{value:"comfortable",label:"Comfortable",icon:["fas","bars-staggered"]}],f=z.cva("flex items-center justify-between border-b border-slate-200",{variants:{variant:{default:"bg-white",minimal:"bg-transparent border-slate-100",bordered:"bg-slate-50 border-slate-300"},padding:{compact:"p-2",normal:"p-4",comfortable:"p-6"}},defaultVariants:{variant:"default",padding:"normal"}}),p=z.cva("px-3 py-1.5 text-sm font-medium rounded-md flex items-center gap-1 transition-colors",{variants:{variant:{danger:"text-red-700 bg-red-500 hover:bg-red-400 border border-red-200",primary:"text-blue-700 bg-blue-50 hover:bg-blue-100 border border-blue-200",secondary:"text-slate-700 bg-slate-500 hover:bg-slate-400 border border-slate-200"}},defaultVariants:{variant:"secondary"}}),v=z.cva("p-2 border border-slate-300 transition-colors",{variants:{active:{true:"bg-blue-50 text-blue-600 border-blue-300",false:"bg-white text-slate-600 hover:bg-slate-50"},position:{first:"rounded-l-md border-r-0",middle:"border-x-0",last:"rounded-r-md border-l-0"}},defaultVariants:{active:!1,position:"middle"}}),B=z.cva("px-3 py-2 text-sm border border-slate-300 rounded-md flex items-center gap-2 transition-colors",{variants:{state:{normal:"text-slate-600 hover:text-slate-800 hover:bg-slate-50",refreshing:"text-slate-600 opacity-75 cursor-not-allowed"}},defaultVariants:{state:"normal"}}),h=e.computed(()=>y(f({variant:a.variant,padding:a.padding}))),k=e.computed(()=>"text-sm text-slate-600"),g=e.computed(()=>"flex items-center"),d=e.computed(()=>"flex items-center gap-2 px-3 py-2 text-sm text-slate-600 hover:text-slate-800 border border-slate-300 rounded-md hover:bg-slate-50 transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-1"),u=e.computed(()=>"absolute right-0 top-full mt-1 w-56 bg-white border border-slate-200 rounded-lg shadow-lg z-50 max-h-64 overflow-y-auto"),i=e.computed(()=>"text-xs font-medium text-slate-500 uppercase tracking-wider mb-2 border-b border-slate-100 pb-2"),b=e.computed(()=>"py-1 hover:bg-slate-50 rounded transition-colors"),E=e.computed(()=>"w-4 h-4 rounded border-slate-300 text-blue-600 focus:ring-blue-500 focus:ring-2 focus:ring-offset-1"),V=e.computed(()=>"text-sm text-slate-700 flex-1 select-none"),F=N=>{s.value&&l.value&&!s.value.contains(N.target)&&!l.value.contains(N.target)&&(r.value=!1)},I=()=>{r.value=!r.value},W=N=>y(p({variant:N.variant||"secondary"})),_=N=>{let P="middle";return N==="compact"?P="first":N==="comfortable"&&(P="last"),y(v({active:a.density===N,position:P}))},S=()=>y(B({state:a.isRefreshing?"refreshing":"normal"})),O=()=>y("w-4 h-4",{"animate-spin":a.isRefreshing}),L=N=>a.visibleColumns.includes(N),x=(N,P)=>{o("toggle-column",{column:N,visible:P})};return e.onMounted(()=>{document.addEventListener("click",F)}),e.onUnmounted(()=>{document.removeEventListener("click",F)}),(N,P)=>{const Y=e.resolveComponent("font-awesome-icon");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(h.value)},[e.createElementVNode("div",$f,[c.value>0?(e.openBlock(),e.createElementBlock("div",zf,[e.createElementVNode("span",Df,e.toDisplayString(c.value)+" selected ",1),e.createElementVNode("div",Tf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.bulkActions,U=>(e.openBlock(),e.createBlock(Z,{key:U.key,class:e.normalizeClass(W(U)),onClick:ne=>N.$emit("bulk-action",{action:U.key,items:t.selectedItems})},{default:e.withCtx(()=>[U.icon?(e.openBlock(),e.createBlock(Y,{key:0,icon:U.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(U.label),1)]),_:2},1032,["class","onClick"]))),128))])])):t.totalItems>0?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(k.value)},e.toDisplayString(t.totalItems)+" "+e.toDisplayString(t.totalItems===1?"item":"items"),3)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Af,[t.showDensityToggle?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(g.value)},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(m,U=>e.createElementVNode("button",{key:U.value,class:e.normalizeClass(_(U.value)),title:U.label,type:"button",onClick:ne=>N.$emit("update:density",U.value)},[e.createVNode(Y,{icon:U.icon,class:"w-4 h-4"},null,8,["icon"])],10,Ff)),64))],2)):e.createCommentVNode("",!0),t.showColumnToggle?(e.openBlock(),e.createElementBlock("div",Pf,[e.createElementVNode("button",{ref_key:"columnToggleButton",ref:s,class:e.normalizeClass(d.value),type:"button",onClick:e.withModifiers(I,["stop"])},[e.createVNode(Y,{icon:"columns",class:"w-4 h-4"}),P[2]||(P[2]=e.createElementVNode("span",null,"Columns",-1))],2),e.withDirectives(e.createElementVNode("div",{ref_key:"columnMenu",ref:l,class:e.normalizeClass(u.value),onClick:P[0]||(P[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",If,[e.createElementVNode("div",{class:e.normalizeClass(i.value)}," Show Columns ",2),e.createElementVNode("div",jf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.toggleableColumns,U=>(e.openBlock(),e.createElementBlock("div",{key:U.key,class:e.normalizeClass(b.value)},[e.createElementVNode("label",Lf,[e.createElementVNode("input",{type:"checkbox",checked:L(U.key),class:e.normalizeClass(E.value),onChange:ne=>x(U.key,ne.target.checked)},null,42,Of),e.createElementVNode("span",{class:e.normalizeClass(V.value)},e.toDisplayString(U.label),3)])],2))),128))])])],2),[[e.vShow,r.value]])])):e.createCommentVNode("",!0),t.showRefresh?(e.openBlock(),e.createElementBlock("button",{key:2,disabled:t.isRefreshing,class:e.normalizeClass(S()),type:"button",onClick:P[1]||(P[1]=U=>N.$emit("refresh"))},[e.createVNode(Y,{icon:"sync",class:e.normalizeClass(O())},null,8,["class"]),P[3]||(P[3]=e.createElementVNode("span",null,"Refresh",-1))],10,Mf)):e.createCommentVNode("",!0),N.$slots.actions?(e.openBlock(),e.createElementBlock("div",Rf,[e.renderSlot(N.$slots,"actions")])):e.createCommentVNode("",!0)])],2)}}}),qf={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-12"},Wf={class:"grid grid-cols-1 md:grid-cols-4 gap-8"},Yf={class:"col-span-1 md:col-span-2"},Hf={class:"space-y-2"},Gf={class:"flex space-x-4"},Kf={class:"flex flex-col md:flex-row justify-between items-center"},Xf={class:"flex space-x-6 mt-4 md:mt-0"},Mo={__name:"Footer",props:{className:{type:String,default:""}},setup(t){return(n,a)=>{const o=e.resolveComponent("Logo"),r=e.resolveComponent("Text"),s=e.resolveComponent("Typography"),l=e.resolveComponent("Link"),c=e.resolveComponent("Icon"),m=e.resolveComponent("Divider");return e.openBlock(),e.createElementBlock("footer",{class:e.normalizeClass(e.unref(y)("bg-gray-50 border-t border-gray-200",t.className))},[e.createElementVNode("div",qf,[e.createElementVNode("div",Wf,[e.createElementVNode("div",Yf,[e.renderSlot(n.$slots,"brand",{},()=>[e.createVNode(o,{class:"mb-4"}),e.createVNode(r,{class:"text-gray-600 max-w-md"},{default:e.withCtx(()=>[...a[0]||(a[0]=[e.createTextVNode(" Building beautiful applications with modern Vue.js components. ",-1)])]),_:1})])]),e.createElementVNode("div",null,[e.renderSlot(n.$slots,"links",{},()=>[e.createVNode(s,{variant:"h6",class:"mb-4"},{default:e.withCtx(()=>[...a[1]||(a[1]=[e.createTextVNode(" Quick Links ",-1)])]),_:1}),e.createElementVNode("div",Hf,[e.createVNode(l,{href:"#",class:"block text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[2]||(a[2]=[e.createTextVNode(" About ",-1)])]),_:1}),e.createVNode(l,{href:"#",class:"block text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[3]||(a[3]=[e.createTextVNode(" Services ",-1)])]),_:1}),e.createVNode(l,{href:"#",class:"block text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[4]||(a[4]=[e.createTextVNode(" Contact ",-1)])]),_:1})])])]),e.createElementVNode("div",null,[e.renderSlot(n.$slots,"social",{},()=>[e.createVNode(s,{variant:"h6",class:"mb-4"},{default:e.withCtx(()=>[...a[5]||(a[5]=[e.createTextVNode(" Follow Us ",-1)])]),_:1}),e.createElementVNode("div",Gf,[e.createVNode(l,{href:"#",class:"text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[e.createVNode(c,{name:"twitter",class:"h-5 w-5"})]),_:1}),e.createVNode(l,{href:"#",class:"text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[e.createVNode(c,{name:"github",class:"h-5 w-5"})]),_:1})])])])]),e.createVNode(m,{class:"my-8"}),e.createElementVNode("div",Kf,[e.renderSlot(n.$slots,"copyright",{},()=>[e.createVNode(r,{class:"text-gray-600"},{default:e.withCtx(()=>[e.createTextVNode(" © "+e.toDisplayString(new Date().getFullYear())+" Your Company. All rights reserved. ",1)]),_:1})]),e.renderSlot(n.$slots,"legal",{},()=>[e.createElementVNode("div",Xf,[e.createVNode(l,{href:"#",class:"text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[6]||(a[6]=[e.createTextVNode(" Privacy ",-1)])]),_:1}),e.createVNode(l,{href:"#",class:"text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[7]||(a[7]=[e.createTextVNode(" Terms ",-1)])]),_:1})])])])])],2)}}},Jf={class:"flex items-center justify-between h-16 px-4 md:px-6"},Qf={class:"flex items-center"},Zf={key:0,class:"mr-4 flex-shrink-0 bg-gradient-to-r from-blue-50 to-indigo-50 px-3 py-2 rounded-lg border border-blue-100"},eg={class:"text-lg font-bold text-blue-900 truncate max-w-[200px]"},tg={key:0,class:"text-xs text-blue-600 truncate font-medium"},ag={class:"hidden md:flex items-center space-x-2 text-sm truncate"},ng={class:"text-gray-500 truncate"},og={class:"text-gray-900 font-medium truncate"},rg={class:"flex items-center space-x-3 md:space-x-4"},lg={key:1,class:"relative"},sg={key:0,class:"absolute -top-1 -right-1 w-4 h-4 bg-red-500 text-white text-xs rounded-full flex items-center justify-center"},ig={key:0,class:"absolute right-4 md:right-6 top-16 mt-2 w-72 md:w-80 bg-white rounded-lg shadow-lg border border-gray-200 z-50"},cg={class:"max-h-96 overflow-y-auto"},dg={class:"flex items-start space-x-3"},ug={class:"flex-1"},mg={class:"text-sm text-gray-900"},fg={class:"text-xs text-gray-500 mt-1"},gg={class:"relative"},pg={class:"w-8 h-8 bg-gradient-to-br from-blue-100 to-indigo-100 rounded-full flex items-center justify-center transition-colors shadow-sm"},vg={class:"text-blue-700 text-sm font-medium"},hg={class:"hidden md:block text-left max-w-[160px] truncate"},bg={class:"text-sm font-medium text-gray-900 truncate"},yg={class:"text-xs text-gray-500 truncate leading-tight"},xg={key:0,class:"absolute right-0 mt-2 w-58 bg-white rounded-lg shadow-lg border border-gray-200 z-50"},kg={class:"p-4 border-b border-gray-200"},wg={class:"text-sm font-medium text-gray-900"},Cg={class:"text-xs text-gray-500"},Bg={class:"py-2"},Sg={key:0,class:"absolute left-0 top-1/2 transform -translate-y-1/2 w-1 h-8 bg-gradient-to-b from-blue-500 to-blue-600 rounded-r-full"},Vg=["onClick"],Eg={class:"flex items-center justify-center w-8 h-8 rounded-lg mr-3 flex-shrink-0 transition-colors ml-2 bg-gray-100 text-gray-600 group-hover:bg-gray-200"},Ng={class:"flex-1 truncate font-semibold text-gray-700"},Ro={__name:"Header",props:{sidebarWidth:{type:Number,default:256},currentSection:{type:String,default:"Dashboard"},currentPage:{type:String,default:"Overview"},currentRoute:{type:String,default:""},user:{type:Object,required:!0},notifications:{type:Array,default:()=>[]},profileMenuItems:{type:Array,required:!0},mobileOpen:{type:Boolean,default:!1},currentOrganisation:{type:Object,default:null},companyLogo:{type:String,default:""}},emits:["search","profile-action","logout","navigate","toggle-mobile-sidebar"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(""),s=e.ref(!1),l=e.ref(!1),c=e.ref(a.notifications.length),m=e.ref(!1),f=e.ref(!1),p=e.computed(()=>(a.user?.name||"Guest").split(" ").map(V=>V[0]||"").join("").toUpperCase()),v=e.computed(()=>a.user?.roles?.length?a.user.roles.map(E=>E.name).join(", "):"No role"),B=()=>{s.value=!s.value,l.value=!1},h=()=>{l.value=!l.value,s.value=!1},k=E=>{o("navigate",E),l.value=!1},g=E=>E.route?!!(a.currentRoute===E.route||a.currentRoute.startsWith(E.route+"/")):!1,d=E=>{o("profile-action",E),l.value=!1},u=()=>{o("logout"),l.value=!1},i=E=>{!E.target.closest(".absolute")&&!E.target.closest("button")&&(s.value=!1,l.value=!1)},b=()=>{f.value=window.innerWidth<768};return e.onMounted(()=>{document.addEventListener("click",i),b(),window.addEventListener("resize",b)}),e.onUnmounted(()=>{document.removeEventListener("click",i),window.removeEventListener("resize",b)}),e.watch(r,E=>o("search",E)),(E,V)=>{const F=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("header",{class:e.normalizeClass(e.unref(y)("fixed top-0 z-50 bg-white border-b border-gray-200 transition-all duration-300 ease-in-out w-full")),style:{left:"0"}},[e.createElementVNode("div",Jf,[e.createElementVNode("div",Qf,[t.currentOrganisation?(e.openBlock(),e.createElementBlock("div",Zf,[e.createElementVNode("p",eg,e.toDisplayString(t.currentOrganisation.organisation_name),1),t.currentOrganisation.role?(e.openBlock(),e.createElementBlock("p",tg,e.toDisplayString(t.currentOrganisation.role),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("nav",ag,[e.createElementVNode("span",ng,e.toDisplayString(t.currentSection),1),V[4]||(V[4]=e.createElementVNode("svg",{class:"w-4 h-4 text-gray-400 flex-shrink-0",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 5l7 7-7 7"})],-1)),e.createElementVNode("span",og,e.toDisplayString(t.currentPage),1)])]),e.createElementVNode("div",rg,[f.value?(e.openBlock(),e.createElementBlock("button",{key:0,class:"p-2 text-gray-400 hover:text-gray-600 rounded-lg hover:bg-gray-50 transition-colors",onClick:V[0]||(V[0]=I=>o("toggle-mobile-sidebar"))},[...V[5]||(V[5]=[e.createElementVNode("svg",{class:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 6h16M4 12h16M4 18h16"})],-1)])])):e.createCommentVNode("",!0),!f.value||m.value?(e.openBlock(),e.createElementBlock("div",lg,[V[6]||(V[6]=e.createElementVNode("div",{class:"absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none"},[e.createElementVNode("svg",{class:"w-4 h-4 text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"})])],-1)),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":V[1]||(V[1]=I=>r.value=I),type:"text",placeholder:"Search...",class:"pl-10 pr-4 py-2 w-48 md:w-64 text-sm border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-blue-500 outline-none"},null,512),[[e.vModelText,r.value]]),f.value?(e.openBlock(),e.createElementBlock("button",{key:0,class:"absolute right-2 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600",onClick:V[2]||(V[2]=I=>m.value=!1)}," ✕ ")):e.createCommentVNode("",!0)])):f.value?(e.openBlock(),e.createElementBlock("button",{key:2,class:"p-2 text-gray-400 hover:text-gray-600 rounded-lg hover:bg-gray-50 transition-colors",onClick:V[3]||(V[3]=I=>m.value=!0)},[...V[7]||(V[7]=[e.createElementVNode("svg",{class:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"})],-1)])])):e.createCommentVNode("",!0),e.createElementVNode("button",{class:"relative p-2 text-gray-400 hover:text-gray-600 rounded-lg hover:bg-gray-50 transition-colors",onClick:B},[V[8]||(V[8]=e.createElementVNode("svg",{class:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 17h5l-5 5v-5z"}),e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M13 3h2.586a1 1 0 01.707.293l6.414 6.414a1 1 0 01.293.707V19a2 2 0 01-2 2H5a2 2 0 01-2-2V5a2 2 0 012-2h4L13 3z"})],-1)),c.value>0?(e.openBlock(),e.createElementBlock("span",sg,e.toDisplayString(c.value),1)):e.createCommentVNode("",!0)]),e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-300 ease-out","leave-active-class":"transition-all duration-300 ease-in","enter-from-class":"opacity-0 translate-y-2 scale-95","enter-to-class":"opacity-100 translate-y-0 scale-100","leave-from-class":"opacity-100 translate-y-0 scale-100","leave-to-class":"opacity-0 translate-y-2 scale-95"},{default:e.withCtx(()=>[s.value?(e.openBlock(),e.createElementBlock("div",ig,[V[10]||(V[10]=e.createElementVNode("div",{class:"p-4 border-b border-gray-200"},[e.createElementVNode("h3",{class:"text-lg font-semibold text-gray-900"}," Notifications ")],-1)),e.createElementVNode("div",cg,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.notifications,I=>(e.openBlock(),e.createElementBlock("div",{key:I.id,class:"p-4 border-b border-gray-100 hover:bg-gray-50 cursor-pointer"},[e.createElementVNode("div",dg,[V[9]||(V[9]=e.createElementVNode("div",{class:"flex-shrink-0 w-2 h-2 mt-2 bg-blue-500 rounded-full"},null,-1)),e.createElementVNode("div",ug,[e.createElementVNode("p",mg,e.toDisplayString(I.title),1),e.createElementVNode("p",fg,e.toDisplayString(I.time),1)])])]))),128))]),V[11]||(V[11]=e.createElementVNode("div",{class:"p-4 text-center"},[e.createElementVNode("button",{class:"text-sm text-blue-600 hover:text-blue-800"}," View all notifications ")],-1))])):e.createCommentVNode("",!0)]),_:1}),e.createElementVNode("div",gg,[e.createElementVNode("button",{class:"flex items-center space-x-2 md:space-x-3 p-2 rounded-lg hover:bg-gray-50 transition-colors",onClick:h},[e.createElementVNode("div",pg,[e.createElementVNode("span",vg,e.toDisplayString(p.value),1)]),e.createElementVNode("div",hg,[e.createElementVNode("p",bg,e.toDisplayString(t.user.name),1),e.createElementVNode("p",yg,e.toDisplayString(v.value),1)]),V[12]||(V[12]=e.createElementVNode("svg",{class:"w-4 h-4 text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 9l-7 7-7-7"})],-1))]),e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-200 ease-out","leave-active-class":"transition-all duration-200 ease-in","enter-from-class":"opacity-0 translate-y-2 scale-95","enter-to-class":"opacity-100 translate-y-0 scale-100","leave-from-class":"opacity-100 translate-y-0 scale-100","leave-to-class":"opacity-0 translate-y-2 scale-95"},{default:e.withCtx(()=>[l.value?(e.openBlock(),e.createElementBlock("div",xg,[e.createElementVNode("div",kg,[e.createElementVNode("p",wg,e.toDisplayString(t.user.name),1),e.createElementVNode("p",Cg,e.toDisplayString(t.user.email),1)]),e.createElementVNode("div",Bg,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.profileMenuItems,I=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:I.name},[I.route?(e.openBlock(),e.createBlock(F,{key:0,to:I.route,class:e.normalizeClass(e.unref(y)("flex items-center px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",g(I)?"bg-gradient-to-br from-blue-50 to-blue-100 text-blue-700 shadow-sm border border-blue-200":"text-gray-700 hover:bg-gray-50 hover:text-gray-900 border border-transparent")),onClick:W=>k(I)},{default:e.withCtx(()=>[g(I)?(e.openBlock(),e.createElementBlock("div",Sg)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)("flex items-center justify-center w-8 h-8 rounded-lg mr-3 flex-shrink-0 transition-colors ml-2",g(I)?"bg-gradient-to-br from-blue-500 to-blue-600 text-white shadow-md":"bg-gray-100 text-gray-600 group-hover:bg-gray-200"))},[I.icon?(e.openBlock(),e.createBlock(j,{key:0,icon:I.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(y)("flex-1 truncate font-semibold",g(I)?"text-blue-700":"text-gray-700"))},e.toDisplayString(I.label),3)]),_:2},1032,["to","class","onClick"])):(e.openBlock(),e.createElementBlock("button",{key:1,class:"flex items-center w-full px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative text-gray-700 hover:bg-gray-50 hover:text-gray-900 border border-transparent",onClick:W=>d(I)},[e.createElementVNode("div",Eg,[I.icon?(e.openBlock(),e.createBlock(j,{key:0,icon:I.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0)]),e.createElementVNode("span",Ng,e.toDisplayString(I.label),1)],8,Vg))],64))),128))]),e.createElementVNode("div",{class:"border-t border-gray-200 py-2"},[e.createElementVNode("button",{class:"flex items-center w-full px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative text-red-600 hover:bg-red-50 border border-transparent",onClick:u},[...V[13]||(V[13]=[e.createElementVNode("div",{class:"flex items-center justify-center w-8 h-8 rounded-lg mr-1 flex-shrink-0 transition-colors ml-2 bg-red-100 text-red-600 group-hover:bg-red-200"},[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M17 16l4-4m0 0l-4-4m4 4H7m6 4v1a3 3 0 01-3 3H6a3 3 0 01-3-3V7a2 2 0 013-3h4a3 3 0 013 3v1"})])],-1),e.createElementVNode("span",{class:"truncate font-semibold text-red-600"}," Sign out ",-1)])])])])):e.createCommentVNode("",!0)]),_:1})])])])],2)}}},$g={class:"mb-4"},zg={class:"text-lg font-semibold text-gray-900"},Dg={class:"text-sm text-gray-600"},Tg=["onUpdate:modelValue"],Ag={value:"",disabled:""},Fg=["value"],Pg={key:3,class:"flex items-center"},Ig={key:4,class:"flex items-center"},jg=["id","aria-checked","disabled","onClick"],Lg={key:5,class:"space-y-2"},Og={key:6,class:"space-y-2"},Mg={key:0,class:"text-xs text-gray-500"},Rg={key:8,class:"space-y-2"},_g={class:"flex items-center gap-4"},Ug={class:"text-sm font-medium text-gray-700 min-w-[3rem] text-right"},qg={class:"flex justify-end gap-3 pt-4"},_o={__name:"ReusableFormModal",props:{modelValue:{type:Boolean,default:!1},modalType:{type:String,required:!0,validator:t=>["create","edit"].includes(t)},entityName:{type:String,default:"Item"},fields:{type:Array,required:!0,validator:t=>t.every(n=>n.name&&n.label&&n.type&&["text","number","password","textarea","select","checkbox","slider","date","color","email","tel","url","time","datetime-local","month","week","file","radio","switch","range","search","hidden"].includes(n.type))},initialData:{type:Object,default:null},loading:{type:Boolean,default:!1},customValidation:{type:Function,default:null},modalSize:{type:String,default:"4xl",validator:t=>["sm","md","lg","xl","2xl","3xl","4xl","5xl","6xl","7xl","full"].includes(t)},modalResizable:{type:Boolean,default:!1}},emits:["update:modelValue","submit","close"],setup(t,{emit:n}){const a=t,o=n,r=e.computed({get:()=>a.modelValue,set:d=>o("update:modelValue",d)}),s=e.computed(()=>a.loading),l=e.ref({}),c=e.ref({}),m=e.ref(!1),f=()=>{const d={};return a.fields.forEach(u=>{u.type==="checkbox"||u.type==="switch"?d[u.name]=!1:u.type==="number"||u.type==="slider"||u.type==="range"?d[u.name]=u.min!==void 0?u.min:0:u.type==="file"?d[u.name]=null:u.type==="radio"?d[u.name]=u.options?.[0]?.value||"":d[u.name]=""}),d};e.watch(()=>a.initialData,d=>{if(a.modalType==="edit"&&d){const u={};a.fields.forEach(i=>{i.type==="checkbox"||i.type==="switch"?u[i.name]=d[i.name]??!1:i.type==="number"||i.type==="slider"||i.type==="range"?u[i.name]=d[i.name]??(i.min!==void 0?i.min:0):i.type==="file"?u[i.name]=null:u[i.name]=d[i.name]??""}),l.value=u,m.value=!0}else if(a.modalType==="create"&&d&&!m.value){const u={};a.fields.forEach(i=>{d[i.name]!==void 0&&d[i.name]!==null?u[i.name]=d[i.name]:i.type==="checkbox"||i.type==="switch"?u[i.name]=!1:i.type==="number"||i.type==="slider"||i.type==="range"?u[i.name]=i.min!==void 0?i.min:0:i.type==="file"?u[i.name]=null:i.type==="radio"?u[i.name]=i.options?.[0]?.value||"":u[i.name]=""}),l.value=u,m.value=!0}else a.modalType==="create"&&!d&&(l.value=f(),m.value=!1)},{immediate:!0,deep:!0}),e.watch(()=>a.modelValue,d=>{if(d&&(c.value={},a.modalType==="create")){if(m.value=!1,a.initialData){const u={};a.fields.forEach(i=>{a.initialData[i.name]!==void 0&&a.initialData[i.name]!==null?u[i.name]=a.initialData[i.name]:i.type==="checkbox"||i.type==="switch"?u[i.name]=!1:i.type==="number"||i.type==="slider"||i.type==="range"?u[i.name]=i.min!==void 0?i.min:0:i.type==="file"?u[i.name]=null:i.type==="radio"?u[i.name]=i.options?.[0]?.value||"":u[i.name]=""}),l.value=u}else l.value=f();m.value=!0}}),e.watch(()=>a.initialData,d=>{m.value&&d&&Object.keys(d).forEach(u=>{Object.prototype.hasOwnProperty.call(l.value,u)&&d[u]!==void 0&&d[u]!==null&&(l.value[u]=d[u])})},{deep:!0});const p=()=>{if(c.value={},a.fields.forEach(d=>{if(d.required&&!d.disabled&&d.type!=="hidden"){const u=l.value[d.name];d.type==="checkbox"||d.type==="switch"?d.required&&!u&&(c.value[d.name]=d.errorMessage||`${d.label} is required`):d.type==="number"||d.type==="slider"||d.type==="range"?u===""||u===null||u===void 0?c.value[d.name]=d.errorMessage||`${d.label} is required`:d.min!==void 0&&Number(u)<d.min?c.value[d.name]=`${d.label} must be at least ${d.min}`:d.max!==void 0&&Number(u)>d.max&&(c.value[d.name]=`${d.label} must be at most ${d.max}`):d.type==="email"?!u||!u.trim()?c.value[d.name]=d.errorMessage||`${d.label} is required`:/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(u)||(c.value[d.name]="Please enter a valid email address"):d.type==="url"?!u||!u.trim()?c.value[d.name]=d.errorMessage||`${d.label} is required`:/^https?:\/\/.+/.test(u)||(c.value[d.name]="Please enter a valid URL"):d.type==="tel"?(!u||!u.trim())&&(c.value[d.name]=d.errorMessage||`${d.label} is required`):d.type==="file"?u||(c.value[d.name]=d.errorMessage||`${d.label} is required`):d.type==="radio"?u||(c.value[d.name]=d.errorMessage||`${d.label} is required`):d.type==="date"||d.type==="time"||d.type==="datetime-local"||d.type==="month"||d.type==="week"?(!u||typeof u=="string"&&!u.trim())&&(c.value[d.name]=d.errorMessage||`${d.label} is required`):d.type==="password"?(!u||typeof u=="string"&&!u.trim())&&(c.value[d.name]=d.errorMessage||`${d.label} is required`):(!u||typeof u=="string"&&!u.trim())&&(c.value[d.name]=d.errorMessage||`${d.label} is required`)}if(d.validate&&typeof d.validate=="function"){const u=d.validate(l.value[d.name],l.value);u&&(c.value[d.name]=u)}}),a.customValidation){const d=a.customValidation(l.value);d&&Object.keys(d).length>0&&(c.value={...c.value,...d})}return Object.keys(c.value).length===0},v=async(d,u)=>{if(l.value[d.name]=u,d.onChange&&typeof d.onChange=="function")try{await d.onChange(u,l.value)}catch(i){console.error("Error in onChange handler:",i),pe.error("An error occurred while processing the change")}},B=(d,u)=>{if(l.value[d.name]=u,d.onChange&&typeof d.onChange=="function")try{d.onChange(u,l.value)}catch(i){console.error("Error in onChange handler:",i),pe.error("An error occurred while processing the change")}},h=(d,u)=>{const i=u.target.files?.[0]||null;if(l.value[d.name]=i,d.onChange&&typeof d.onChange=="function")try{d.onChange(i,l.value)}catch(b){console.error("Error in onChange handler:",b),pe.error("An error occurred while processing the file")}},k=async()=>{try{if(!p()){pe.error("Please fix the validation errors before submitting");return}const d={};a.fields.forEach(u=>{const i=l.value[u.name];u.type==="number"||u.type==="slider"||u.type==="range"?d[u.name]=Number(i):u.type==="text"||u.type==="textarea"||u.type==="date"||u.type==="email"||u.type==="url"||u.type==="tel"||u.type==="search"||u.type==="time"||u.type==="datetime-local"||u.type==="month"||u.type==="week"?d[u.name]=typeof i=="string"?i.trim():i:(u.type==="password"||u.type,d[u.name]=i)}),o("submit",{formData:d,modalType:a.modalType,originalData:a.initialData})}catch(d){console.error("Error during form submission:",d),pe.error("An error occurred during submission")}},g=()=>{l.value=f(),c.value={},m.value=!1,o("close")};return(d,u)=>(e.openBlock(),e.createBlock(na,{modelValue:r.value,"onUpdate:modelValue":u[0]||(u[0]=i=>r.value=i),"show-close":!0,"close-on-backdrop":!0,size:t.modalSize,resizable:t.modalResizable,onClose:g},{default:e.withCtx(()=>[e.createElementVNode("div",$g,[e.createElementVNode("h2",zg,e.toDisplayString(t.modalType==="create"?`Add New ${t.entityName}`:`Edit ${t.entityName}`),1),e.createElementVNode("p",Dg,e.toDisplayString(t.modalType==="create"?`Fill in the details to create a new ${t.entityName.toLowerCase()}.`:`Update the ${t.entityName.toLowerCase()} information below.`),1)]),e.createElementVNode("form",{class:"space-y-4",onSubmit:e.withModifiers(k,["prevent"])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.fields,i=>(e.openBlock(),e.createElementBlock("div",{key:i.name},[i.type==="hidden"?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,type:"hidden","onUpdate:modelValue":b=>l.value[i.name]=b},null,8,Tg)),[[e.vModelText,l.value[i.name]]]):(e.openBlock(),e.createBlock(aa,{key:1,id:`form-${t.entityName}-${i.name}-${Math.random().toString(36).slice(2,5)}`,label:i.label,required:i.required&&!i.disabled,error:c.value[i.name],"error-message":c.value[i.name]},{default:e.withCtx(({fieldId:b,hasError:E,ariaDescribedBy:V})=>[["text","number","password","color","email","tel","url","search"].includes(i.type)?(e.openBlock(),e.createBlock(oe,{key:0,id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,type:i.type,placeholder:i.placeholder,disabled:s.value||i.disabled,readonly:i.disabled,class:e.normalizeClass(E?"border-red-500":"border-slate-300"),"aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","type","placeholder","disabled","readonly","class","aria-describedby"])):i.type==="textarea"?(e.openBlock(),e.createBlock(ea,{key:1,id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,placeholder:i.placeholder,disabled:s.value||i.disabled,rows:i.rows||3,class:e.normalizeClass(["w-full px-3 py-2 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",E?"border-red-500":"border-slate-300"]),"aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","placeholder","disabled","rows","class","aria-describedby"])):i.type==="select"?(e.openBlock(),e.createBlock(ue,{key:2,id:b,"model-value":l.value[i.name],disabled:s.value||i.disabled,class:e.normalizeClass(["w-full px-3 py-2 border rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",E?"border-red-500":"border-slate-300"]),"aria-describedby":V,"onUpdate:modelValue":F=>v(i,F)},{default:e.withCtx(()=>[e.createElementVNode("option",Ag,e.toDisplayString(i.placeholder||"Select an option"),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.options,F=>(e.openBlock(),e.createElementBlock("option",{key:F.value,value:F.value},e.toDisplayString(F.label),9,Fg))),128))]),_:2},1032,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):i.type==="checkbox"?(e.openBlock(),e.createElementBlock("div",Pg,[e.createVNode(oe,{id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,type:"checkbox",disabled:s.value||i.disabled,class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300 rounded","aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","disabled","aria-describedby"]),e.createVNode(Ve,{for:b,class:"ml-2 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.checkboxLabel||i.label),1)]),_:2},1032,["for"])])):i.type==="switch"?(e.openBlock(),e.createElementBlock("div",Ig,[e.createElementVNode("button",{id:b,type:"button",role:"switch","aria-checked":l.value[i.name],disabled:s.value||i.disabled,class:e.normalizeClass(["relative inline-flex h-6 w-11 items-center rounded-full transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2",l.value[i.name]?"bg-blue-600":"bg-gray-200",s.value||i.disabled?"opacity-50 cursor-not-allowed":"cursor-pointer"]),onClick:F=>l.value[i.name]=!l.value[i.name]},[e.createElementVNode("span",{class:e.normalizeClass(["inline-block h-4 w-4 transform rounded-full bg-white transition-transform",l.value[i.name]?"translate-x-6":"translate-x-1"])},null,2)],10,jg),e.createVNode(Ve,{for:b,class:"ml-3 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.checkboxLabel||i.label),1)]),_:2},1032,["for"])])):i.type==="radio"?(e.openBlock(),e.createElementBlock("div",Lg,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.options,F=>(e.openBlock(),e.createElementBlock("div",{key:F.value,class:"flex items-center"},[e.createVNode(oe,{id:`${b}-${F.value}`,modelValue:l.value[i.name],"onUpdate:modelValue":I=>l.value[i.name]=I,type:"radio",value:F.value,disabled:s.value||i.disabled,class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300","aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","value","disabled","aria-describedby"]),e.createVNode(Ve,{for:`${b}-${F.value}`,class:"ml-2 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(F.label),1)]),_:2},1032,["for"])]))),128))])):i.type==="file"?(e.openBlock(),e.createElementBlock("div",Og,[e.createVNode(oe,{id:b,type:"file",accept:i.accept,disabled:s.value||i.disabled,class:e.normalizeClass(["w-full text-sm text-gray-500 file:mr-4 file:py-2 file:px-4 file:rounded-md file:border-0 file:text-sm file:font-semibold file:bg-blue-50 file:text-blue-700 hover:file:bg-blue-100",E?"border-red-500":"border-slate-300"]),"aria-describedby":V,onChange:F=>h(i,F)},null,8,["id","accept","disabled","class","aria-describedby","onChange"]),i.helpText?(e.openBlock(),e.createElementBlock("p",Mg,e.toDisplayString(i.helpText),1)):e.createCommentVNode("",!0)])):i.type==="slider"?(e.openBlock(),e.createBlock(oa,{key:7,"model-value":l.value[i.name],min:i.min,max:i.max,step:i.step,disabled:s.value||i.disabled,"onUpdate:modelValue":F=>B(i,F)},null,8,["model-value","min","max","step","disabled","onUpdate:modelValue"])):i.type==="range"?(e.openBlock(),e.createElementBlock("div",Rg,[e.createElementVNode("div",_g,[e.createVNode(oe,{id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,type:"range",min:i.min,max:i.max,step:i.step||1,disabled:s.value||i.disabled,class:"flex-1","aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","min","max","step","disabled","aria-describedby"]),e.createElementVNode("span",Ug,e.toDisplayString(l.value[i.name]),1)])])):i.type==="date"?(e.openBlock(),e.createBlock(ct,{key:9,id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,disabled:s.value||i.disabled,required:i.required,min:i.min,max:i.max,placeholder:i.placeholder||"Select date",format:i.format||"MM/DD/YYYY",clearable:i.clearable!==!1,"show-today":i.showToday!==!1,"calendar-position":i.calendarPosition||"left-0 bottom-full","aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","disabled","required","min","max","placeholder","format","clearable","show-today","calendar-position","aria-describedby"])):i.type==="time"?(e.openBlock(),e.createBlock(oe,{key:10,id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,type:"time",disabled:s.value||i.disabled,class:e.normalizeClass(E?"border-red-500":"border-slate-300"),"aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):i.type==="datetime-local"?(e.openBlock(),e.createBlock(oe,{key:11,id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,type:"datetime-local",disabled:s.value||i.disabled,class:e.normalizeClass(E?"border-red-500":"border-slate-300"),"aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):i.type==="month"?(e.openBlock(),e.createBlock(oe,{key:12,id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,type:"month",disabled:s.value||i.disabled,class:e.normalizeClass(E?"border-red-500":"border-slate-300"),"aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):i.type==="week"?(e.openBlock(),e.createBlock(oe,{key:13,id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,type:"week",disabled:s.value||i.disabled,class:e.normalizeClass(E?"border-red-500":"border-slate-300"),"aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):e.createCommentVNode("",!0)]),_:2},1032,["id","label","required","error","error-message"]))]))),128)),e.createElementVNode("div",qg,[e.createVNode(Z,{type:"button",variant:"outline",disabled:s.value,onClick:g},{default:e.withCtx(()=>[...u[1]||(u[1]=[e.createTextVNode(" Cancel ",-1)])]),_:1},8,["disabled"]),e.createVNode(Z,{type:"submit",disabled:s.value,loading:s.value,variant:"default"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.modalType==="create"?`Create ${t.entityName}`:`Update ${t.entityName}`),1)]),_:1},8,["disabled","loading"])])],32)]),_:1},8,["modelValue","size","resizable"]))}},Wg={key:0,class:"flex items-center justify-between p-4 border-b border-gray-200 flex-shrink-0 lg:hidden"},Yg={class:"text-lg font-bold text-gray-900"},Hg={class:"flex-1 overflow-y-auto overflow-x-hidden p-4"},Gg={class:"space-y-2"},Kg={key:0},Xg={key:0,class:"absolute top-2 right-2 inline-flex items-center justify-center w-5 h-5 text-xs font-bold rounded-full bg-red-500 text-white"},Jg=["onClick"],Qg={key:0,class:"absolute top-2 right-2 inline-flex items-center justify-center w-5 h-5 text-xs font-bold rounded-full bg-red-500 text-white"},Zg={key:1,class:"absolute top-1.5 right-1.5 w-2 h-2 bg-blue-500 rounded-full"},ep={key:1,class:"border-t border-gray-200 p-4 flex-shrink-0"},tp={key:0,class:"absolute top-1.5 right-1.5 w-2 h-2 bg-blue-500 rounded-full"},ap={class:"sticky top-0 bg-white border-b border-gray-200 z-10"},np={class:"flex items-center justify-between p-4"},op={class:"flex-1 text-sm font-bold text-gray-900 ml-2"},rp={class:"p-3"},lp={class:"space-y-1"},sp={key:0,class:"absolute left-0 top-1/2 transform -translate-y-1/2 w-1 h-8 bg-gradient-to-b from-blue-500 to-blue-600 rounded-r-full"},ip={key:1,class:"ml-2 inline-flex items-center justify-center px-2 py-0.5 text-xs font-bold rounded-full bg-red-500 text-white"},cp={class:"p-3"},dp={class:"space-y-1"},up={key:0,class:"px-3 py-2 text-xs font-semibold text-gray-500 uppercase tracking-wider"},mp={key:0,class:"absolute left-0 top-1/2 transform -translate-y-1/2 w-1 h-8 bg-gradient-to-b from-blue-500 to-blue-600 rounded-r-full"},Uo={__name:"Sidebar",props:{sidebarWidth:{type:Number,default:130},header:{type:Object,default:null},navigationItems:{type:Array,required:!0},managementSettings:{type:Array,default:()=>[]},showManagementSettings:{type:Boolean,default:!0},mobileOpen:{type:Boolean,default:!1},isManagementSettingsActive:{type:Boolean,default:!1},currentPath:{type:String,default:""}},emits:["navigate","update:mobileOpen"],setup(t,{expose:n,emit:a}){const o=t,r=a,s=e.ref(!1),l=e.ref(!1),c=e.ref(null),m=e.ref(!1),f=e.computed(()=>o.mobileOpen),p=e.computed(()=>s.value?{}:{left:`${o.sidebarWidth}px`}),v=e.computed(()=>s.value?{}:{left:`${o.sidebarWidth}px`}),B=e.computed(()=>{if(s.value)return 0;let S=o.sidebarWidth;return l.value&&(S+=220),m.value&&(S+=220),S}),h=S=>{r("navigate",S),s.value&&k();const O=l.value&&c.value&&c.value.subItems.some(x=>x.route===S.route),L=m.value&&o.managementSettings.some(x=>x.route===S.route);(s.value||!(O||L))&&E()},k=()=>{r("update:mobileOpen",!1)},g=S=>S.subItems&&S.subItems.length>0,d=S=>{m.value&&b(),l.value&&c.value!==S?(i(),setTimeout(()=>{c.value=S,l.value=!0},300)):l.value?c.value===S&&i():(c.value=S,l.value=!0),s.value&&k()},u=()=>{l.value&&i(),m.value?b():m.value=!0,s.value&&k()},i=()=>{l.value=!1,setTimeout(()=>{c.value=null},300)},b=()=>{m.value=!1},E=()=>{i(),b()},V=S=>{h(S)},F=S=>{h(S)},I=S=>{const O=o.currentPath;return S.route?!!(O===S.route||O.startsWith(S.route+"/")):S.subItems&&S.subItems.length>0?S.subItems.some(L=>L.route?O===L.route||O.startsWith(L.route+"/"):!1):!1},W=()=>{const S=s.value;s.value=window.innerWidth<1024,S&&!s.value&&f.value&&k()},_=S=>{S.key==="Escape"&&(l.value||m.value?E():s.value&&f.value&&k())};return e.onMounted(()=>{W(),window.addEventListener("resize",W),document.addEventListener("keydown",_)}),e.onUnmounted(()=>{window.removeEventListener("resize",W),document.removeEventListener("keydown",_)}),n({isMobile:s,isMobileOpen:f,submenuOpen:l,managementSettingsOpen:m,contentMarginLeft:B,closeAllMenus:E}),(S,O)=>{const L=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(e.Transition,{"enter-active-class":"transition-opacity duration-300","leave-active-class":"transition-opacity duration-300","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:e.withCtx(()=>[f.value&&s.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-30 lg:hidden",onClick:k})):e.createCommentVNode("",!0)]),_:1}),e.createElementVNode("aside",{class:e.normalizeClass(e.unref(y)("fixed left-0 z-40 border-r overflow-hidden flex flex-col","transition-all duration-300 ease-in-out","bg-white border-gray-200",s.value?e.unref(y)("transform h-screen",f.value?"translate-x-0":"-translate-x-full"):"translate-x-0 h-[calc(100vh-4rem)]")),style:e.normalizeStyle({width:t.sidebarWidth+"px",top:s.value?"0px":"4rem"})},[s.value?(e.openBlock(),e.createElementBlock("div",Wg,[e.createElementVNode("h2",Yg,e.toDisplayString(t.header?.title),1),e.createElementVNode("button",{class:"p-2 rounded-lg text-gray-500 hover:text-gray-900 hover:bg-gray-100 transition-colors","aria-label":"Close sidebar",onClick:k},[...O[0]||(O[0]=[e.createElementVNode("svg",{class:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})],-1)])])])):e.createCommentVNode("",!0),e.createElementVNode("nav",Hg,[e.createElementVNode("div",Gg,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.navigationItems,x=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:x.name||x.label},[x.type==="link"?(e.openBlock(),e.createElementBlock("div",Kg,[g(x)?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(y)("flex flex-col items-center justify-center rounded-xl transition-all duration-200 cursor-pointer group relative py-4 px-3",I(x)?"bg-gradient-to-br from-blue-50 to-blue-100 border border-blue-200 shadow-sm":"text-gray-500 hover:bg-gray-100 hover:text-gray-900 border border-transparent")),onClick:N=>d(x)},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)("flex items-center justify-center rounded-lg transition-colors mb-2","w-12 h-12",I(x)?"bg-gradient-to-br from-blue-500 to-blue-600 text-white shadow-md":"text-gray-500 group-hover:text-gray-900 bg-gray-100 group-hover:bg-gray-200"))},[e.createVNode(j,{icon:x.icon,class:"w-6 h-6"},null,8,["icon"])],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(y)("text-xs font-medium text-center",I(x)?"text-blue-700 font-semibold":"text-gray-500 group-hover:text-gray-900"))},e.toDisplayString(x.label),3),x.badge?(e.openBlock(),e.createElementBlock("span",Qg,e.toDisplayString(x.badge),1)):e.createCommentVNode("",!0),I(x)&&g(x)?(e.openBlock(),e.createElementBlock("div",Zg)):e.createCommentVNode("",!0)],10,Jg)):(e.openBlock(),e.createBlock(L,{key:0,to:x.route,class:e.normalizeClass(e.unref(y)("flex flex-col items-center justify-center rounded-xl transition-all duration-200 group relative py-4 px-3",I(x)?"bg-gradient-to-br from-blue-50 to-blue-100 border border-blue-200 shadow-sm":"text-gray-500 hover:bg-gray-100 hover:text-gray-900 border border-transparent")),onClick:N=>h(x)},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)("flex items-center justify-center rounded-lg transition-colors mb-2","w-12 h-12",I(x)?"bg-gradient-to-br from-blue-500 to-blue-600 text-white shadow-md":"text-gray-500 group-hover:text-gray-900 bg-gray-100 group-hover:bg-gray-200"))},[e.createVNode(j,{icon:x.icon,class:"w-6 h-6"},null,8,["icon"])],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(y)("text-xs font-medium text-center",I(x)?"text-blue-700 font-semibold":"text-gray-500 group-hover:text-gray-900"))},e.toDisplayString(x.label),3),x.badge?(e.openBlock(),e.createElementBlock("span",Xg,e.toDisplayString(x.badge),1)):e.createCommentVNode("",!0)]),_:2},1032,["to","class","onClick"]))])):e.createCommentVNode("",!0)],64))),128))])]),t.showManagementSettings?(e.openBlock(),e.createElementBlock("div",ep,[e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)("flex flex-col items-center justify-center rounded-xl transition-all duration-200 cursor-pointer group relative py-4 px-3",t.isManagementSettingsActive?"bg-gradient-to-br from-blue-50 to-blue-100 border border-blue-200 shadow-sm":"text-gray-500 hover:bg-gray-100 hover:text-gray-900 border border-transparent")),onClick:u},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)("flex items-center justify-center rounded-lg transition-colors mb-2","w-12 h-12",t.isManagementSettingsActive?"bg-gradient-to-br from-blue-500 to-blue-600 text-white shadow-md":"text-gray-500 group-hover:text-gray-900 bg-gray-100 group-hover:bg-gray-200"))},[e.createVNode(j,{icon:"cog",class:"w-6 h-6"})],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(y)("text-xs font-medium text-center",t.isManagementSettingsActive?"text-blue-700 font-semibold":"text-gray-500 group-hover:text-gray-900"))}," Settings ",2),t.isManagementSettingsActive?(e.openBlock(),e.createElementBlock("div",tp)):e.createCommentVNode("",!0)],2)])):e.createCommentVNode("",!0)],6),e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-300 ease-out","leave-active-class":"transition-all duration-300 ease-in","enter-from-class":"opacity-0 -translate-x-full","enter-to-class":"opacity-100 translate-x-0","leave-from-class":"opacity-100 translate-x-0","leave-to-class":"opacity-0 -translate-x-full"},{default:e.withCtx(()=>[l.value?(e.openBlock(),e.createElementBlock("aside",{key:0,class:e.normalizeClass(e.unref(y)("fixed z-40 bg-white border-r border-gray-200 overflow-y-auto shadow-lg",s.value?"left-0 w-52 top-20 h-screen":"w-56 top-16 h-[calc(100vh-4rem)]")),style:e.normalizeStyle(p.value)},[e.createElementVNode("div",ap,[e.createElementVNode("div",np,[e.createElementVNode("button",{class:"p-2 -ml-2 rounded-lg text-gray-500 hover:text-gray-700 hover:bg-gray-100 transition-colors","aria-label":"Close submenu",onClick:i},[...O[1]||(O[1]=[e.createElementVNode("svg",{class:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 19l-7-7 7-7"})],-1)])]),e.createElementVNode("h3",op,e.toDisplayString(c.value?.label),1)])]),e.createElementVNode("nav",rp,[e.createElementVNode("div",lp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value?.subItems,x=>(e.openBlock(),e.createBlock(L,{key:x.name,to:x.route,class:e.normalizeClass(e.unref(y)("flex items-center px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",I(x)?"bg-gradient-to-br from-blue-50 to-blue-100 text-blue-700 shadow-sm border border-blue-200":"text-gray-700 hover:bg-gray-50 hover:text-gray-900 border border-transparent")),onClick:N=>V(x)},{default:e.withCtx(()=>[I(x)?(e.openBlock(),e.createElementBlock("div",sp)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)("flex items-center justify-center w-8 h-8 rounded-lg mr-3 flex-shrink-0 transition-colors ml-2",I(x)?"bg-gradient-to-br from-blue-500 to-blue-600 text-white shadow-md":"bg-gray-100 text-gray-600 group-hover:bg-gray-200"))},[x.icon?(e.openBlock(),e.createBlock(j,{key:0,icon:x.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(y)("flex-1 truncate font-semibold",I(x)?"text-blue-700":"text-gray-700"))},e.toDisplayString(x.label),3),x.badge?(e.openBlock(),e.createElementBlock("span",ip,e.toDisplayString(x.badge),1)):e.createCommentVNode("",!0)]),_:2},1032,["to","class","onClick"]))),128))])])],6)):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-300 ease-out","leave-active-class":"transition-all duration-300 ease-in","enter-from-class":"opacity-0 -translate-x-full","enter-to-class":"opacity-100 translate-x-0","leave-from-class":"opacity-100 translate-x-0","leave-to-class":"opacity-0 -translate-x-full"},{default:e.withCtx(()=>[m.value?(e.openBlock(),e.createElementBlock("aside",{key:0,class:e.normalizeClass(e.unref(y)("fixed z-40 bg-white border-r border-gray-200 overflow-y-auto shadow-lg",s.value?"left-0 w-52 top-20 h-full":"w-58 h-[calc(100vh-4rem)]")),style:e.normalizeStyle({...v.value,top:s.value?"55px":"4rem"})},[e.createElementVNode("div",{class:"sticky top-0 z-10 bg-white border-b border-gray-200"},[e.createElementVNode("div",{class:"flex items-center justify-between p-4"},[e.createElementVNode("button",{class:"p-2 -ml-2 rounded-lg text-gray-500 hover:text-gray-700 hover:bg-gray-100 transition-colors","aria-label":"Close management settings",onClick:b},[...O[2]||(O[2]=[e.createElementVNode("svg",{class:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 19l-7-7 7-7"})],-1)])]),O[3]||(O[3]=e.createElementVNode("h3",{class:"flex-1 text-sm font-bold text-gray-900 ml-2"}," Management Settings ",-1))])]),e.createElementVNode("nav",cp,[e.createElementVNode("div",dp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.managementSettings,x=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:x.name},[x.type==="section"?(e.openBlock(),e.createElementBlock("div",up,e.toDisplayString(x.label),1)):x.route?(e.openBlock(),e.createBlock(L,{key:1,to:x.route,class:e.normalizeClass(e.unref(y)("flex items-center px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",I(x)?"bg-gradient-to-br from-blue-50 to-blue-100 text-blue-700 shadow-sm border border-blue-200":"text-gray-700 hover:bg-gray-50 hover:text-gray-900 border border-transparent")),onClick:N=>F(x)},{default:e.withCtx(()=>[I(x)?(e.openBlock(),e.createElementBlock("div",mp)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)("flex items-center justify-center w-8 h-8 rounded-lg mr-3 flex-shrink-0 transition-colors",I(x)?"bg-gradient-to-br from-blue-500 to-blue-600 text-white shadow-md":"bg-gray-100 text-gray-600 group-hover:bg-gray-200"))},[x.icon?(e.openBlock(),e.createBlock(j,{key:0,icon:x.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(y)("flex-1 truncate font-semibold",I(x)?"text-blue-700":"text-gray-700"))},e.toDisplayString(x.label),3)]),_:2},1032,["to","class","onClick"])):e.createCommentVNode("",!0)],64))),128))])])],6)):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.Transition,{"enter-active-class":"transition-opacity duration-300","leave-active-class":"transition-opacity duration-300","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:e.withCtx(()=>[(l.value||m.value)&&s.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-30 bg-transparent",onClick:E})):e.createCommentVNode("",!0)]),_:1})])}}},qo={__name:"Timeline",props:{orientation:{type:String,default:"vertical",validator:t=>["vertical","horizontal"].includes(t)}},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["relative flex",t.orientation==="vertical"?"flex-col":"flex-row"])},[e.renderSlot(n.$slots,"default")],2))}},fp={key:0,class:"absolute left-3 top-0 w-0.5 h-full bg-slate-200"},gp={class:"z-10 flex items-center justify-center w-6 h-6 rounded-full border-2 border-blue-500 bg-white text-blue-500"},pp={class:"text-slate-900 font-medium"},vp={key:0,class:"text-slate-500 text-sm"},hp={class:"mt-2 text-slate-600 text-sm"},Wo={__name:"TimelineItem",props:{title:{type:String,required:!0},subtitle:{type:String,default:""},orientation:{type:String,default:"vertical",validator:t=>["vertical","horizontal"].includes(t)}},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["relative flex",t.orientation==="vertical"?"items-start mb-8 last:mb-0":"flex-col items-center mx-8 last:mx-0"])},[t.orientation==="vertical"?(e.openBlock(),e.createElementBlock("div",fp)):e.createCommentVNode("",!0),e.createElementVNode("div",gp,[e.renderSlot(n.$slots,"icon",{},()=>[a[0]||(a[0]=e.createElementVNode("div",{class:"w-2 h-2 rounded-full bg-blue-500"},null,-1))])]),e.createElementVNode("div",{class:e.normalizeClass(["ml-6",t.orientation==="horizontal"?"mt-2 text-center":""])},[e.createElementVNode("h3",pp,[e.renderSlot(n.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])]),t.subtitle?(e.openBlock(),e.createElementBlock("p",vp,[e.renderSlot(n.$slots,"subtitle",{},()=>[e.createTextVNode(e.toDisplayString(t.subtitle),1)])])):e.createCommentVNode("",!0),e.createElementVNode("div",hp,[e.renderSlot(n.$slots,"default")])],2)],2))}},bp={name:"AuthLayout",props:{title:{type:String,default:null},subtitle:{type:String,default:null},primaryLogoPrefix:{type:String,default:"e"},primaryLogoText:{type:String,default:"HORIZON"},secondaryLogoPrefix:{type:String,default:"e"},secondaryLogoText:{type:String,default:"Risk & Compliance"},quote:{type:String,default:""},primaryColor:{type:String,default:"#e74c3c"},backgroundColor:{type:String,default:"#2c2c2c"},backgroundImage:{type:String,default:"https://images.unsplash.com/photo-1497366216548-37526070297c?ixlib=rb-4.0.3&auto=format&fit=crop&w=2069&q=80"},backgroundOpacity:{type:Number,default:.4},companyName:{type:String,default:"SOFTWARE"},companyType:{type:String,default:"TECHNOLOGIES"},companyTagline:{type:String,default:"People | Processes | Governance"},companyInitials:{type:String,default:"ST"},appName:{type:String,default:"eHorizon eBoard X"},appVersion:{type:String,default:"Version 2.0"},copyright:{type:String,default:"Copyright © 2025 Software Technologies Limited"},socialLinks:{type:Array,default:()=>[{name:"linkedin",url:"#",icon:"linkedin-in",variant:"primary"},{name:"facebook",url:"#",icon:"facebook-f",variant:"primary"},{name:"twitter",url:"#",icon:"twitter",variant:"info"}]}},setup(){return{currentYear:e.computed(()=>new Date().getFullYear())}}},yp={class:"container mx-auto px-4 relative z-10"},xp={class:"grid lg:grid-cols-10 gap-8 items-center min-h-screen"},kp={class:"lg:col-span-6 text-white text-center lg:text-left space-y-6"},wp={class:"mb-6"},Cp={class:"text-4xl lg:text-6xl font-bold mb-2"},Bp={class:"text-white"},Sp={class:"flex items-center justify-center lg:justify-start mb-6"},Vp={class:"text-3xl lg:text-4xl font-bold text-white"},Ep={class:"lg:col-span-4"},Np={class:"bg-white rounded-lg shadow-xl p-6 lg:p-8 max-w-md mx-auto"},$p={key:0,class:"mb-6"},zp={class:"text-center"},Dp={class:"text-2xl font-bold text-gray-900"},Tp={key:0,class:"text-gray-600 mt-2"},Ap={class:"space-y-6"},Fp={key:1,class:"mt-6"},Pp={key:0,class:"mt-6 text-center"},Ip={class:"absolute bottom-4 right-4 text-right"},jp={class:"flex items-end justify-end mb-2"},Lp={class:"text-right mr-3"},Op={class:"text-red-500 font-bold text-xs"},Mp={class:"text-white text-xs"},Rp={class:"text-white/70 text-xs"},_p={class:"w-8 h-8 bg-red-500 rounded flex items-center justify-center text-white font-bold text-xs"},Up={class:"text-white/70 text-xs"},qp={class:"absolute bottom-4 left-4 flex gap-2"},Wp=["href"];function Yp(t,n,a,o,r,s){const l=e.resolveComponent("router-view"),c=e.resolveComponent("font-awesome-icon");return e.openBlock(),e.createElementBlock("div",{class:"min-h-screen relative flex items-center justify-center",style:e.normalizeStyle({backgroundColor:a.backgroundColor})},[e.createElementVNode("div",{class:"absolute inset-0 bg-cover bg-center",style:e.normalizeStyle({backgroundImage:`url('${a.backgroundImage}')`,opacity:a.backgroundOpacity})},null,4),e.createElementVNode("div",yp,[e.createElementVNode("div",xp,[e.createElementVNode("div",kp,[e.createElementVNode("div",wp,[e.createElementVNode("div",Cp,[e.createElementVNode("span",{style:e.normalizeStyle({color:a.primaryColor})},e.toDisplayString(a.primaryLogoPrefix),5),e.createElementVNode("span",Bp,e.toDisplayString(a.primaryLogoText),1)]),e.createElementVNode("div",{class:"h-0.5 w-30 mx-auto lg:mx-0",style:e.normalizeStyle({backgroundColor:a.primaryColor})},null,4)]),e.createElementVNode("div",Sp,[e.createElementVNode("div",{class:"flex items-center justify-center w-15 h-15 rounded-lg mr-4 text-white font-bold text-xl",style:e.normalizeStyle({backgroundColor:a.primaryColor})},e.toDisplayString(a.secondaryLogoPrefix),5),e.createElementVNode("span",Vp,e.toDisplayString(a.secondaryLogoText),1)]),n[0]||(n[0]=e.createElementVNode("div",{class:"max-w-md mx-auto lg:mx-0"},[e.createElementVNode("p",{class:"text-sm lg:text-base font-light text-white/70 italic leading-relaxed"})],-1))]),e.createElementVNode("div",Ep,[e.createElementVNode("div",Np,[t.$slots["card-header"]||a.title?(e.openBlock(),e.createElementBlock("div",$p,[e.renderSlot(t.$slots,"card-header",{},()=>[e.createElementVNode("div",zp,[e.createElementVNode("h1",Dp,e.toDisplayString(a.title),1),a.subtitle?(e.openBlock(),e.createElementBlock("p",Tp,e.toDisplayString(a.subtitle),1)):e.createCommentVNode("",!0)])])])):e.createCommentVNode("",!0),e.createElementVNode("div",Ap,[e.createVNode(l)]),t.$slots["card-footer"]?(e.openBlock(),e.createElementBlock("div",Fp,[e.renderSlot(t.$slots,"card-footer")])):e.createCommentVNode("",!0)]),t.$slots.links?(e.openBlock(),e.createElementBlock("div",Pp,[e.renderSlot(t.$slots,"links")])):e.createCommentVNode("",!0)])])]),e.createElementVNode("div",Ip,[e.createElementVNode("div",jp,[e.createElementVNode("div",Lp,[e.createElementVNode("div",Op,e.toDisplayString(a.companyName),1),e.createElementVNode("div",Mp,e.toDisplayString(a.companyType),1),e.createElementVNode("div",Rp,e.toDisplayString(a.companyTagline),1)]),e.createElementVNode("div",_p,e.toDisplayString(a.companyInitials),1)]),e.createElementVNode("div",Up,[e.createElementVNode("div",null,e.toDisplayString(a.appName)+" ("+e.toDisplayString(a.appVersion)+")",1),e.createElementVNode("div",null,e.toDisplayString(a.copyright),1)])]),e.createElementVNode("div",qp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.socialLinks,m=>(e.openBlock(),e.createElementBlock("a",{key:m.name,href:m.url,class:e.normalizeClass(["w-8 h-7 flex items-center justify-center rounded text-xs transition-colors",m.variant==="primary"?"bg-blue-600 hover:bg-blue-700 text-white":m.variant==="info"?"bg-cyan-500 hover:bg-cyan-600 text-white":"bg-gray-600 hover:bg-gray-700 text-white"])},[e.createVNode(c,{icon:["fab",m.icon]},null,8,["icon"])],10,Wp))),128))])],4)}const Yo=dt(bp,[["render",Yp]]),Hp={class:"min-h-screen bg-gray-50"},Gp={class:"flex-1"},Kp={key:0,class:"bg-white border-b border-gray-200"},Xp={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-4"},Jp={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8"},Ho={__name:"DefaultLayout",props:{navigationItems:{type:Array,default:()=>[{label:"Home",href:"/",active:!0},{label:"About",href:"/about"},{label:"Services",href:"/services"},{label:"Contact",href:"/contact"}]},breadcrumbItems:{type:Array,default:()=>[]},showBreadcrumb:{type:Boolean,default:!1}},setup(t){return(n,a)=>{const o=e.resolveComponent("Logo"),r=e.resolveComponent("MainNavigation"),s=e.resolveComponent("Button"),l=e.resolveComponent("Header"),c=e.resolveComponent("Breadcrumb"),m=e.resolveComponent("Text"),f=e.resolveComponent("Footer");return e.openBlock(),e.createElementBlock("div",Hp,[e.createVNode(l,null,{logo:e.withCtx(()=>[e.renderSlot(n.$slots,"logo",{},()=>[e.createVNode(o)])]),navigation:e.withCtx(()=>[e.renderSlot(n.$slots,"navigation",{},()=>[e.createVNode(r,{items:t.navigationItems},null,8,["items"])])]),actions:e.withCtx(()=>[e.renderSlot(n.$slots,"header-actions",{},()=>[e.createVNode(s,{variant:"ghost",size:"sm"},{default:e.withCtx(()=>[...a[0]||(a[0]=[e.createTextVNode(" Sign In ",-1)])]),_:1}),e.createVNode(s,{size:"sm"},{default:e.withCtx(()=>[...a[1]||(a[1]=[e.createTextVNode(" Get Started ",-1)])]),_:1})])]),_:3}),e.createElementVNode("main",Gp,[t.showBreadcrumb?(e.openBlock(),e.createElementBlock("div",Kp,[e.createElementVNode("div",Xp,[e.renderSlot(n.$slots,"breadcrumb",{},()=>[e.createVNode(c,{items:t.breadcrumbItems},null,8,["items"])])])])):e.createCommentVNode("",!0),e.createElementVNode("div",Jp,[e.renderSlot(n.$slots,"default")])]),e.createVNode(f,null,{brand:e.withCtx(()=>[e.renderSlot(n.$slots,"footer-brand",{},()=>[e.createVNode(o,{class:"mb-4"}),e.createVNode(m,{class:"text-gray-600 max-w-md"},{default:e.withCtx(()=>[...a[2]||(a[2]=[e.createTextVNode(" Your application description goes here. ",-1)])]),_:1})])]),_:3})])}}},Qp={name:"ErrorLayout",props:{errorType:{type:[String,Number],default:"404"},errorCode:{type:[String,Number],default:null},errorTitle:{type:String,default:null},errorMessage:{type:String,default:null},brandName:{type:String,default:"Software Technologies"},showLogo:{type:Boolean,default:!0},showBackground:{type:Boolean,default:!0},showDefaultIllustration:{type:Boolean,default:!0},showDefaultActions:{type:Boolean,default:!0},showHomeButton:{type:Boolean,default:!0},showBackButton:{type:Boolean,default:!0},showRetryButton:{type:Boolean,default:!1},showSupportButton:{type:Boolean,default:!1},showAdditionalInfo:{type:Boolean,default:!1},homeUrl:{type:String,default:"/"},homeButtonText:{type:String,default:"Go Home"},backButtonText:{type:String,default:"Go Back"},retryButtonText:{type:String,default:"Try Again"},helpText:{type:String,default:null},supportUrl:{type:String,default:null}},emits:["retry","back","contact-support"],setup(t,{emit:n}){const a=e.getCurrentInstance(),o=e.inject("$router",null)||a?.appContext.app.config.globalProperties?.$router,r=e.ref(!1),s=e.ref(!1),l=e.ref(navigator.onLine),c=e.ref(`err_${Date.now()}_${Math.random().toString(36).substr(2,9)}`),m=e.ref(!1),f=()=>{l.value=navigator.onLine};e.onMounted(()=>{window.addEventListener("online",f),window.addEventListener("offline",f)}),e.onUnmounted(()=>{window.removeEventListener("online",f),window.removeEventListener("offline",f)});const p=e.computed(()=>{const U={404:{title:"Page Not Found",message:"Sorry, we couldn't find the page you're looking for.",icon:"🔍",color:"#64748b",homeButtonIcon:"🏠",additionalInfo:{title:"What can you do?",items:[{icon:"✓",iconColor:"green-500",text:"Check the URL for typos"},{icon:"✓",iconColor:"green-500",text:"Go back to the previous page"},{icon:"✓",iconColor:"green-500",text:"Visit our homepage"}]}},403:{title:"Unauthorized Access",message:"You are not authorized to view this page.",icon:"🚫",color:"#ef4444",homeButtonIcon:"🔐",additionalInfo:{title:"Why am I seeing this?",items:[{icon:"⚠️",iconColor:"yellow-500",text:"You may need to log in to access this page"},{icon:"⚠️",iconColor:"yellow-500",text:"Your account might not have the required permissions"},{icon:"⚠️",iconColor:"yellow-500",text:"Contact support if you believe this is an error"}]}},401:{title:"Authentication Required",message:"You need to log in to access this resource.",icon:"🔐",color:"#f59e0b",homeButtonIcon:"🔐",additionalInfo:{title:"How to proceed?",items:[{icon:"✓",iconColor:"blue-500",text:"Log in with your credentials"},{icon:"✓",iconColor:"blue-500",text:"Create an account if you don't have one"},{icon:"✓",iconColor:"blue-500",text:"Reset your password if you forgot it"}]}},500:{title:"Internal Server Error",message:"Something went wrong on our end. Please try again later.",icon:"🔧",color:"#ef4444",homeButtonIcon:"🏠",additionalInfo:{title:"What happened?",items:[{icon:"⚠️",iconColor:"red-500",text:"Our servers are experiencing issues"},{icon:"⚠️",iconColor:"red-500",text:"The problem is temporary"},{icon:"⚠️",iconColor:"red-500",text:"Try refreshing the page or come back later"}]}},503:{title:"Service Unavailable",message:"The service is temporarily unavailable. Please try again later.",icon:"🔧",color:"#f59e0b",homeButtonIcon:"🏠",additionalInfo:{title:"Service Status",items:[{icon:"⚠️",iconColor:"amber-500",text:"We're performing scheduled maintenance"},{icon:"⚠️",iconColor:"amber-500",text:"Normal service will resume shortly"},{icon:"⚠️",iconColor:"amber-500",text:"Check our status page for updates"}]}},network:{title:"Network Error",message:"Unable to connect to the server. Please check your internet connection.",icon:"📶",color:"#ef4444",homeButtonIcon:"🏠",additionalInfo:{title:"Connection Issues",items:[{icon:"⚠️",iconColor:"red-500",text:"Check your internet connection"},{icon:"⚠️",iconColor:"red-500",text:"Try refreshing the page"},{icon:"⚠️",iconColor:"red-500",text:"Contact your network administrator"}]}}};return U[t.errorType]||U[404]}),v=e.computed(()=>p.value),B=e.computed(()=>t.errorTitle||v.value.title),h=e.computed(()=>t.errorMessage||v.value.message),k=e.computed(()=>v.value.homeButtonIcon||"🏠"),g=e.computed(()=>t.showAdditionalInfo?v.value.additionalInfo:null),d=()=>{o?o.push(t.homeUrl):window.location.href=t.homeUrl},u=()=>{o&&window.history.length>1?o.back():window.history.length>1?window.history.back():d(),n("back")},i=async()=>{r.value=!0;try{await new Promise(U=>setTimeout(U,1e3)),window.location.reload()}catch(U){console.error("Retry failed:",U)}finally{r.value=!1}n("retry")},b=e.computed(()=>["min-h-screen relative flex items-center justify-center","px-4 sm:px-6 lg:px-8"]),E=e.computed(()=>["absolute inset-0 -z-10"]),V=e.computed(()=>["w-full max-w-2xl mx-auto text-center"]),F=e.computed(()=>["mb-8"]),I=e.computed(()=>["space-y-8"]),W=e.computed(()=>["flex justify-center mb-6"]),_=e.computed(()=>["w-32 h-32 flex items-center justify-center"]),S=e.computed(()=>["space-y-4"]),O=e.computed(()=>["text-6xl font-bold text-slate-300 mb-4"]),L=e.computed(()=>["text-3xl font-bold text-slate-900"]),x=e.computed(()=>["text-lg text-slate-600 max-w-lg mx-auto"]),N=e.computed(()=>["mt-8"]),P=e.computed(()=>["mt-8"]),Y=e.computed(()=>["mt-6"]);return{isRetrying:r,reportSent:s,isOnline:l,errorId:c,isDev:m,errorConfig:v,title:B,message:h,homeButtonIcon:k,additionalInfoConfig:g,goHome:d,goBack:u,retry:i,layoutClasses:b,backgroundClasses:E,contentClasses:V,headerClasses:F,errorContentClasses:I,illustrationClasses:W,iconContainerClasses:_,detailsClasses:S,codeClasses:O,titleClasses:L,messageClasses:x,actionsClasses:N,additionalInfoClasses:P,helpClasses:Y}}},Zp={class:"flex justify-center"},ev={class:"flex items-center gap-3"},tv={class:"text-2xl font-bold text-slate-900"},av={key:1,class:"bg-red-100 border border-red-200 rounded-lg p-4 mx-auto max-w-md mb-6"},nv={class:"flex flex-col sm:flex-row gap-4 justify-center"},ov=["disabled"],rv={key:0,class:"animate-spin"},lv={key:1},sv=["disabled"],iv={key:0},cv={key:1},dv={key:0,class:"mt-8 max-w-md mx-auto"},uv={class:"bg-white rounded-lg border border-slate-200 shadow-sm p-6"},mv={class:"text-lg font-semibold text-slate-900 mb-4"},fv={class:"space-y-3"},gv={class:"text-sm text-slate-600"},pv=["href"],vv={key:5,class:"text-xs text-slate-400 font-mono mt-4"};function hv(t,n,a,o,r,s){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.layoutClasses)},[a.showBackground?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(o.backgroundClasses)},[e.renderSlot(t.$slots,"background",{},()=>[n[4]||(n[4]=e.createElementVNode("div",{class:"absolute inset-0 bg-gradient-to-br from-slate-50 to-slate-100"},null,-1))])],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(o.contentClasses)},[t.$slots.header||a.showLogo?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(o.headerClasses)},[e.renderSlot(t.$slots,"header",{},()=>[e.createElementVNode("div",Zp,[e.renderSlot(t.$slots,"logo",{},()=>[e.createElementVNode("div",ev,[n[5]||(n[5]=e.createElementVNode("div",{class:"w-10 h-10 bg-blue-600 rounded-xl flex items-center justify-center"},[e.createElementVNode("span",{class:"text-white font-bold text-lg"},"STL")],-1)),e.createElementVNode("span",tv,e.toDisplayString(a.brandName),1)])])])])],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(o.errorContentClasses)},[t.$slots.illustration||a.showDefaultIllustration?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(o.illustrationClasses)},[e.renderSlot(t.$slots,"illustration",{},()=>[e.createElementVNode("div",{class:e.normalizeClass(o.iconContainerClasses)},[e.createElementVNode("div",{class:"text-8xl",style:e.normalizeStyle({color:o.errorConfig.color})},e.toDisplayString(o.errorConfig.icon),5)],2)])],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(o.detailsClasses)},[a.errorCode?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(o.codeClasses)},e.toDisplayString(a.errorCode),3)):e.createCommentVNode("",!0),e.createElementVNode("h1",{class:e.normalizeClass(o.titleClasses)},[e.renderSlot(t.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(o.title),1)])],2),e.createElementVNode("p",{class:e.normalizeClass(o.messageClasses)},[e.renderSlot(t.$slots,"message",{},()=>[e.createTextVNode(e.toDisplayString(o.message),1)])],2)],2),o.isOnline?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",av,[...n[6]||(n[6]=[e.createElementVNode("div",{class:"flex items-center justify-center gap-2 text-red-700"},[e.createElementVNode("span",{class:"w-3 h-3 bg-red-500 rounded-full animate-pulse"}),e.createElementVNode("span",{class:"font-medium"},"No Internet Connection")],-1)])])),t.$slots.actions||a.showDefaultActions?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(o.actionsClasses)},[e.renderSlot(t.$slots,"actions",{},()=>[e.createElementVNode("div",nv,[a.showHomeButton?(e.openBlock(),e.createElementBlock("button",{key:0,class:"bg-blue-600 text-white px-6 py-3 rounded-lg font-medium hover:bg-blue-700 transition-colors flex items-center justify-center gap-2",onClick:n[0]||(n[0]=(...l)=>o.goHome&&o.goHome(...l))},[e.createElementVNode("span",null,e.toDisplayString(o.homeButtonIcon),1),e.createTextVNode(" "+e.toDisplayString(a.homeButtonText),1)])):e.createCommentVNode("",!0),a.showBackButton?(e.openBlock(),e.createElementBlock("button",{key:1,class:"border border-slate-300 text-slate-700 px-6 py-3 rounded-lg font-medium hover:bg-slate-50 transition-colors flex items-center justify-center gap-2",onClick:n[1]||(n[1]=(...l)=>o.goBack&&o.goBack(...l))},[n[7]||(n[7]=e.createElementVNode("span",null,"←",-1)),e.createTextVNode(" "+e.toDisplayString(a.backButtonText),1)])):e.createCommentVNode("",!0),a.showRetryButton?(e.openBlock(),e.createElementBlock("button",{key:2,disabled:o.isRetrying||!o.isOnline,class:"border border-slate-300 text-slate-700 px-6 py-3 rounded-lg font-medium hover:bg-slate-50 transition-colors flex items-center justify-center gap-2 disabled:opacity-50 disabled:cursor-not-allowed",onClick:n[2]||(n[2]=(...l)=>o.retry&&o.retry(...l))},[o.isRetrying?(e.openBlock(),e.createElementBlock("span",rv,"↻")):(e.openBlock(),e.createElementBlock("span",lv,"🔄")),e.createTextVNode(" "+e.toDisplayString(o.isRetrying?"Retrying...":a.retryButtonText),1)],8,ov)):e.createCommentVNode("",!0),a.showSupportButton?(e.openBlock(),e.createElementBlock("button",{key:3,disabled:o.reportSent,class:"bg-slate-600 text-white px-6 py-3 rounded-lg font-medium hover:bg-slate-700 transition-colors flex items-center justify-center gap-2 disabled:opacity-50 disabled:cursor-not-allowed",onClick:n[3]||(n[3]=l=>t.$emit("contact-support"))},[o.reportSent?(e.openBlock(),e.createElementBlock("span",iv,"✓")):(e.openBlock(),e.createElementBlock("span",cv,"📝")),e.createTextVNode(" "+e.toDisplayString(o.reportSent?"Report Sent":"Contact Support"),1)],8,sv)):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0),t.$slots["additional-info"]||a.showAdditionalInfo?(e.openBlock(),e.createElementBlock("div",{key:3,class:e.normalizeClass(o.additionalInfoClasses)},[e.renderSlot(t.$slots,"additional-info",{},()=>[o.additionalInfoConfig?(e.openBlock(),e.createElementBlock("div",dv,[e.createElementVNode("div",uv,[e.createElementVNode("h3",mv,e.toDisplayString(o.additionalInfoConfig.title),1),e.createElementVNode("ul",fv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.additionalInfoConfig.items,(l,c)=>(e.openBlock(),e.createElementBlock("li",{key:c,class:"flex items-start gap-3 text-sm text-slate-600"},[e.createElementVNode("span",{class:e.normalizeClass(`w-4 h-4 text-${l.iconColor||"slate-400"} flex-shrink-0 mt-0.5`)},e.toDisplayString(l.icon),3),e.createElementVNode("span",null,e.toDisplayString(l.text),1)]))),128))])])])):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0),t.$slots.help||a.helpText?(e.openBlock(),e.createElementBlock("div",{key:4,class:e.normalizeClass(o.helpClasses)},[e.renderSlot(t.$slots,"help",{},()=>[e.createElementVNode("p",gv,[e.createTextVNode(e.toDisplayString(a.helpText)+" ",1),a.supportUrl?(e.openBlock(),e.createElementBlock("a",{key:0,href:a.supportUrl,class:"text-blue-600 hover:text-blue-700 underline ml-1"},[...n[8]||(n[8]=[e.createElementVNode("span",{class:"inline-block w-4 h-4 mr-1"},"❓",-1),e.createTextVNode(" Get Help ",-1)])],8,pv)):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0),o.isDev?(e.openBlock(),e.createElementBlock("div",vv," Error ID: "+e.toDisplayString(o.errorId),1)):e.createCommentVNode("",!0)],2)],2)],2)}const Go=dt(Qp,[["render",hv]]),Ot={mounted(t,n){if(!n.value)return;const a=Object.keys(n.modifiers)[0]||"top",o=document.createElement("div");o.textContent=n.value,o.className="tooltip-custom",o.style.cssText=`
|
|
607
|
+
`},a=t,o=e.ref(!1),r=()=>o.value=!o.value,s=z.cva("",{variants:{variant:{default:"",bordered:"border border-slate-200 rounded-lg overflow-hidden",filled:"bg-slate-50 border border-slate-200 rounded-lg overflow-hidden",flush:""}}}),l=z.cva("flex items-center justify-between w-full text-left transition-all duration-200 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2",{variants:{size:{sm:"p-3 text-sm",md:"p-4 text-base",lg:"p-6 text-lg"}}}),c=z.cva("overflow-hidden text-slate-600 border-t border-slate-200",{variants:{size:{sm:"p-3 text-sm",md:"p-4 text-base",lg:"p-6 text-lg"}}}),m=e.computed(()=>y(s({variant:a.variant}))),f=e.computed(()=>y(l({size:a.size}))),p=e.computed(()=>y(c({size:a.size})));return(v,B)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(m.value)},[e.createVNode(Z,{class:e.normalizeClass(f.value),"aria-expanded":o.value,onClick:r},{default:e.withCtx(()=>[e.renderSlot(v.$slots,"header",{isOpen:o.value}),e.createVNode(n,{class:e.normalizeClass(e.unref(y)("w-5 h-5 transition-transform ml-2",{"rotate-180":o.value}))},null,8,["class"])]),_:3},8,["class","aria-expanded"]),e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-300 ease-out","enter-from-class":"opacity-0 max-h-0","enter-to-class":"opacity-100 max-h-96","leave-active-class":"transition-all duration-200 ease-in","leave-from-class":"opacity-100 max-h-96","leave-to-class":"opacity-0 max-h-0"},{default:e.withCtx(()=>[o.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(p.value)},[e.renderSlot(v.$slots,"content",{isOpen:o.value})],2)):e.createCommentVNode("",!0)]),_:3})],2))}},Qd={class:"relative w-full"},Zd={class:"relative"},eu=["id","value","disabled","placeholder","required","aria-describedby"],tu={class:"flex items-center justify-between mb-3"},au={class:"text-sm font-medium"},nu={class:"grid grid-cols-7 gap-1 mb-2"},ou={class:"grid grid-cols-7 gap-1"},ru=["disabled","onClick"],lu={key:0,class:"mt-4 pt-3 border-t border-slate-200"},Do={__name:"Calendar",props:{id:String,modelValue:[String,Date],disabled:Boolean,required:Boolean,min:[String,Date],max:[String,Date],placeholder:{type:String,default:"Select date"},format:{type:String,default:"MM/DD/YYYY"},clearable:{type:Boolean,default:!0},showToday:{type:Boolean,default:!0},calendarPosition:{type:String,default:"left-0"},ariaDescribedby:String},emits:["update:modelValue"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(!1),s=new Date,l=e.ref(s.getMonth()),c=e.ref(s.getFullYear()),m=e.ref(null),f=["Su","Mo","Tu","We","Th","Fr","Sa"],p=e.computed(()=>new Date(c.value,l.value).toLocaleString("default",{month:"long"})),v=e.computed(()=>new Date(c.value,l.value+1,0).getDate()),B=e.computed(()=>new Date(c.value,l.value,1).getDay()),h=e.computed(()=>{const L=new Date(c.value,l.value,0).getDate(),x=B.value;return Array.from({length:x},(N,P)=>L-x+P+1)}),k=e.computed(()=>{const L=h.value.length+v.value,x=L%7===0?0:7-L%7;return Array.from({length:x},(N,P)=>P+1)}),g=e.computed(()=>m.value?d(m.value):"");function d(L){if(!L)return"";const x=new Date(L),N=String(x.getMonth()+1).padStart(2,"0"),P=String(x.getDate()).padStart(2,"0"),Y=x.getFullYear();return a.format.replace("MM",N).replace("DD",P).replace("YYYY",Y)}function u(L){if(!L)return null;if(L instanceof Date)return L;const x=new Date(L);return isNaN(x.getTime())?null:x}function i(L){if(!m.value)return!1;const x=new Date(m.value);return x.getDate()===L&&x.getMonth()===l.value&&x.getFullYear()===c.value}function b(L){const x=new Date(c.value,l.value,L);if(a.min){const N=u(a.min);if(N&&x<N)return!0}if(a.max){const N=u(a.max);if(N&&x>N)return!0}return!1}function E(){a.disabled||(r.value=!r.value)}function V(){r.value=!1}function F(){l.value===0?(l.value=11,c.value--):l.value--}function I(){l.value===11?(l.value=0,c.value++):l.value++}function W(L){if(b(L))return;const x=new Date(c.value,l.value,L);m.value=x,o("update:modelValue",x.toISOString().split("T")[0]),r.value=!1}function _(){l.value=s.getMonth(),c.value=s.getFullYear(),W(s.getDate())}function S(){m.value=null,o("update:modelValue","")}e.watch(()=>a.modelValue,L=>{if(L){const x=u(L);x&&(m.value=x,l.value=x.getMonth(),c.value=x.getFullYear())}else m.value=null},{immediate:!0});function O(L){L.key==="Escape"&&r.value&&V()}return e.onMounted(()=>{document.addEventListener("keydown",O)}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",O)}),(L,x)=>(e.openBlock(),e.createElementBlock("div",Qd,[e.createElementVNode("div",Zd,[e.createElementVNode("input",{id:t.id,type:"text",value:g.value,readonly:"",disabled:t.disabled,placeholder:t.placeholder,required:t.required,"aria-describedby":t.ariaDescribedby,class:"w-full px-3 py-2 pr-10 border border-slate-300 rounded-md bg-white text-slate-900 placeholder-slate-400 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500 cursor-pointer disabled:bg-slate-50 disabled:text-slate-500 disabled:cursor-not-allowed",onClick:E},null,8,eu),x[2]||(x[2]=e.createElementVNode("div",{class:"absolute right-3 top-1/2 -translate-y-1/2 pointer-events-none"},[e.createElementVNode("svg",{class:"w-5 h-5 text-slate-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"})])],-1)),t.clearable&&g.value&&!t.disabled?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"absolute right-9 top-1/2 -translate-y-1/2 p-1 hover:bg-slate-100 rounded","aria-label":"Clear date",onClick:e.withModifiers(S,["stop"])},[...x[1]||(x[1]=[e.createElementVNode("svg",{class:"w-4 h-4 text-slate-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})],-1)])])):e.createCommentVNode("",!0)]),e.createVNode(e.Transition,{"enter-active-class":"transition ease-out duration-100","enter-from-class":"transform opacity-0 scale-95","enter-to-class":"transform opacity-100 scale-100","leave-active-class":"transition ease-in duration-75","leave-from-class":"transform opacity-100 scale-100","leave-to-class":"transform opacity-0 scale-95"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["absolute z-[99999] mt-2 bg-white border border-slate-200 rounded-lg shadow-lg p-4",t.calendarPosition]),onClick:x[0]||(x[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",tu,[e.createElementVNode("button",{type:"button",class:"p-1 hover:bg-gray-100 rounded","aria-label":"Previous Month",onClick:F},[...x[3]||(x[3]=[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 18l-6-6 6-6"})],-1)])]),e.createElementVNode("div",au,e.toDisplayString(p.value)+" "+e.toDisplayString(c.value),1),e.createElementVNode("button",{type:"button",class:"p-1 hover:bg-gray-100 rounded","aria-label":"Next Month",onClick:I},[...x[4]||(x[4]=[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 18l6-6-6-6"})],-1)])])]),e.createElementVNode("div",nu,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(f,N=>e.createElementVNode("div",{key:N,class:"text-center text-xs font-medium text-slate-600 py-1"},e.toDisplayString(N),1)),64))]),e.createElementVNode("div",ou,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,(N,P)=>(e.openBlock(),e.createElementBlock("div",{key:"prev-"+P,class:"text-center text-sm text-slate-300 py-2"},e.toDisplayString(N),1))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(v.value,N=>(e.openBlock(),e.createElementBlock("button",{key:N,type:"button",disabled:b(N),class:e.normalizeClass(["w-8 h-8 text-sm rounded flex items-center justify-center",i(N)?"bg-blue-500 text-white":"hover:bg-gray-100",b(N)?"text-gray-300 cursor-not-allowed":""]),onClick:P=>W(N)},e.toDisplayString(N),11,ru))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,(N,P)=>(e.openBlock(),e.createElementBlock("div",{key:"next-"+P,class:"text-center text-sm text-slate-300 py-2"},e.toDisplayString(N),1))),128))]),t.showToday?(e.openBlock(),e.createElementBlock("div",lu,[e.createElementVNode("button",{type:"button",class:"w-full px-3 py-2 text-sm font-medium text-blue-600 hover:bg-blue-50 rounded-lg transition-colors",onClick:_}," Today ")])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0)]),_:1}),r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-[99998]",onClick:V})):e.createCommentVNode("",!0)]))}},su={class:"flex items-start justify-between"},iu={class:"flex-1 min-w-0"},cu={key:0,class:"flex-shrink-0 ml-4"},du="text-lg font-semibold text-slate-900 truncate",uu="text-sm text-slate-600 mt-1",To={__name:"Graph",props:{variant:{type:String,default:"default",validator:t=>["default","outlined","elevated","filled"].includes(t)},padding:{type:String,default:"md",validator:t=>["none","sm","md","lg","xl"].includes(t)},title:String,description:String},setup(t){const n=z.cva("rounded-lg overflow-hidden transition-all duration-200",{variants:{variant:{default:"bg-white border border-slate-200",outlined:"bg-white border-2 border-slate-300",elevated:"bg-white shadow-lg border border-slate-100",filled:"bg-slate-50 border border-slate-200"},padding:{none:"",sm:"p-3",md:"p-4",lg:"p-6",xl:"p-8"}},defaultVariants:{variant:"default",padding:"md"}}),a=z.cva("border-b border-slate-100 last:border-b-0",{variants:{padding:{none:"p-4 pb-0",sm:"px-3 pt-3",md:"px-4 pt-4",lg:"px-6 pt-6",xl:"px-8 pt-8"}}}),o=z.cva("border-b border-slate-100",{variants:{padding:{none:"p-4 pb-0",sm:"px-3 py-3",md:"px-4 py-4",lg:"px-6 py-6",xl:"px-8 py-8"}}}),r=z.cva("",{variants:{padding:{none:"p-4",sm:"p-3",md:"p-4",lg:"p-6",xl:"p-8"}}}),s=z.cva("border-t border-slate-100 bg-slate-50/50",{variants:{padding:{none:"p-4 pt-0",sm:"px-3 pb-3",md:"px-4 pb-4",lg:"px-6 pb-6",xl:"px-8 pb-8"}}}),l=z.cva("border-t border-slate-100 bg-slate-50/50",{variants:{padding:{none:"p-4 pt-0",sm:"px-3 pb-3",md:"px-4 pb-4",lg:"px-6 pb-6",xl:"px-8 pb-8"}}});return(c,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(y)(e.unref(n)({variant:t.variant,padding:t.padding})))},[c.$slots.header||t.title||t.description?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(y)(e.unref(a)({padding:t.padding})))},[e.renderSlot(c.$slots,"header",{},()=>[e.createElementVNode("div",su,[e.createElementVNode("div",iu,[t.title?(e.openBlock(),e.createElementBlock("h3",{key:0,class:e.normalizeClass(du)},e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:e.normalizeClass(uu)},e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)]),c.$slots.actions?(e.openBlock(),e.createElementBlock("div",cu,[e.renderSlot(c.$slots,"actions")])):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0),c.$slots.filters?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(y)(e.unref(o)({padding:t.padding})))},[e.renderSlot(c.$slots,"filters")],2)):e.createCommentVNode("",!0),c.$slots.default?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(e.unref(y)(e.unref(r)({padding:t.padding})))},[e.renderSlot(c.$slots,"default")],2)):e.createCommentVNode("",!0),c.$slots.legend?(e.openBlock(),e.createElementBlock("div",{key:3,class:e.normalizeClass(e.unref(y)(e.unref(s)({padding:t.padding})))},[e.renderSlot(c.$slots,"legend")],2)):e.createCommentVNode("",!0),c.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:4,class:e.normalizeClass(e.unref(y)(e.unref(l)({padding:t.padding})))},[e.renderSlot(c.$slots,"footer")],2)):e.createCommentVNode("",!0)],2))}},mu={class:"w-full h-full"},fu=["width","height","viewBox"],gu={key:0},pu=["x1","y1","x2","y2","stroke"],vu=["x","y","width","height","fill","onMouseenter"],hu={key:1},bu=["x","y"],yu={key:2},xu=["x","y"],ku={key:3},wu=["x","y","width","height","fill","stroke"],Cu=["x","y"],Ao={__name:"BarChart",props:{data:{type:Array,required:!0},labels:{type:Array,default:()=>[]},colors:{type:Array,default:()=>["#3b82f6","#ef4444","#10b981","#f59e0b","#8b5cf6"]},width:{type:Number,default:400},height:{type:Number,default:300},padding:{type:Object,default:()=>({top:20,right:20,bottom:60,left:60})},showGrid:{type:Boolean,default:!0},showXAxis:{type:Boolean,default:!0},showYAxis:{type:Boolean,default:!0},gridColor:{type:String,default:"#e5e7eb"},barClasses:{type:String,default:"transition-all duration-200 hover:opacity-80 cursor-pointer"},axisLabelClasses:{type:String,default:"fill-slate-600 text-xs font-medium"},tooltipBackground:{type:String,default:"#1f2937"},tooltipBorder:{type:String,default:"#374151"},tooltipTextClasses:{type:String,default:"fill-white text-xs font-medium"},maxValue:{type:Number,default:null}},emits:["bar-click","bar-hover"],setup(t,{emit:n}){const a=t,o=n,r=e.ref({visible:!1,x:0,y:0,width:0,height:0,content:""}),s=e.computed(()=>a.maxValue||Math.max(...a.data)),l=e.computed(()=>(a.width-a.padding.left-a.padding.right)/a.data.length*.8),c=e.computed(()=>(a.width-a.padding.left-a.padding.right)/a.data.length*.2),m=e.computed(()=>{const d=[],u=a.height-a.padding.top-a.padding.bottom,i=5;for(let b=0;b<=i;b++){const E=a.padding.top+u/i*b;d.push(E)}return d}),f=d=>a.padding.left+d*(l.value+c.value)+c.value/2,p=d=>{const u=a.height-a.padding.top-a.padding.bottom,i=u/s.value;return a.padding.top+u-d*i},v=d=>{const i=(a.height-a.padding.top-a.padding.bottom)/s.value;return d*i},B=d=>a.colors[d%a.colors.length],h=d=>{const u=a.height-a.padding.top-a.padding.bottom,i=(a.height-a.padding.bottom-d)/u*s.value;return Math.round(i)},k=(d,u,i)=>{const b=d.target.getBoundingClientRect(),E=a.labels[i]||`Item ${i+1}`;r.value={visible:!0,x:b.left+b.width/2,y:b.top,width:80,height:24,content:`${E}: ${u}`},o("bar-hover",{value:u,index:i,label:E})},g=()=>{r.value.visible=!1};return(d,u)=>(e.openBlock(),e.createElementBlock("div",mu,[(e.openBlock(),e.createElementBlock("svg",{width:t.width,height:t.height,viewBox:`0 0 ${t.width} ${t.height}`,class:"overflow-visible"},[t.showGrid?(e.openBlock(),e.createElementBlock("g",gu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,i=>(e.openBlock(),e.createElementBlock("line",{key:`grid-${i}`,x1:t.padding.left,y1:i,x2:t.width-t.padding.right,y2:i,stroke:t.gridColor,"stroke-width":"1","stroke-dasharray":"2,2"},null,8,pu))),128))])):e.createCommentVNode("",!0),e.createElementVNode("g",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.data,(i,b)=>(e.openBlock(),e.createElementBlock("rect",{key:`bar-${b}`,x:f(b),y:p(i),width:l.value,height:v(i),fill:B(b),class:e.normalizeClass(t.barClasses),onMouseenter:E=>k(E,i,b),onMouseleave:g},null,42,vu))),128))]),t.showXAxis?(e.openBlock(),e.createElementBlock("g",hu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.labels,(i,b)=>(e.openBlock(),e.createElementBlock("text",{key:`xlabel-${b}`,x:f(b)+l.value/2,y:t.height-t.padding.bottom+20,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"middle"},e.toDisplayString(i),11,bu))),128))])):e.createCommentVNode("",!0),t.showYAxis?(e.openBlock(),e.createElementBlock("g",yu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,i=>(e.openBlock(),e.createElementBlock("text",{key:`ylabel-${i}`,x:t.padding.left-10,y:i+4,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"end"},e.toDisplayString(h(i)),11,xu))),128))])):e.createCommentVNode("",!0),r.value.visible?(e.openBlock(),e.createElementBlock("g",ku,[e.createElementVNode("rect",{x:r.value.x-r.value.width/2,y:r.value.y-r.value.height-10,width:r.value.width,height:r.value.height,fill:t.tooltipBackground,stroke:t.tooltipBorder,"stroke-width":"1",rx:"4"},null,8,wu),e.createElementVNode("text",{x:r.value.x,y:r.value.y-r.value.height/2-2,class:e.normalizeClass(t.tooltipTextClasses),"text-anchor":"middle"},e.toDisplayString(r.value.content),11,Cu)])):e.createCommentVNode("",!0)],8,fu))]))}},Bu={class:"w-full h-full"},Su=["width","height","viewBox"],Vu={key:0},Eu=["x1","y1","x2","y2","stroke"],Nu=["d","stroke","stroke-width"],$u={key:1},zu=["cx","cy","r","fill","stroke","onMouseenter"],Du=["d","fill","fill-opacity"],Tu={key:3},Au=["x","y"],Fu={key:4},Pu=["x","y"],Iu={key:5},ju=["x","y","width","height","fill","stroke"],Lu=["x","y"],Fo={__name:"LineChart",props:{data:{type:Array,required:!0},labels:{type:Array,default:()=>[]},width:{type:Number||String,default:400},height:{type:Number,default:300},padding:{type:Object,default:()=>({top:20,right:20,bottom:60,left:60})},showGrid:{type:Boolean,default:!0},showXAxis:{type:Boolean,default:!0},showYAxis:{type:Boolean,default:!0},showPoints:{type:Boolean,default:!0},fillArea:{type:Boolean,default:!1},gridColor:{type:String,default:"#e5e7eb"},lineColor:{type:String,default:"#3b82f6"},strokeWidth:{type:Number,default:2},pointRadius:{type:Number,default:4},pointColor:{type:String,default:"#ffffff"},fillColor:{type:String,default:"#3b82f6"},fillOpacity:{type:Number,default:.1},lineClasses:{type:String,default:"transition-all duration-200"},pointClasses:{type:String,default:"transition-all duration-200 hover:r-6 cursor-pointer"},axisLabelClasses:{type:String,default:"fill-slate-600 text-xs font-medium"},tooltipBackground:{type:String,default:"#1f2937"},tooltipBorder:{type:String,default:"#374151"},tooltipTextClasses:{type:String,default:"fill-white text-xs font-medium"},maxValue:{type:Number,default:null}},emits:["point-click","point-hover"],setup(t,{emit:n}){const a=t,o=n,r=e.ref({visible:!1,x:0,y:0,width:0,height:0,content:""}),s=e.computed(()=>a.maxValue||Math.max(...a.data)),l=e.computed(()=>a.data.map((g,d)=>({x:p(d),y:v(g),value:g}))),c=e.computed(()=>l.value.length===0?"":l.value.map((d,u)=>`${u===0?"M":"L"} ${d.x} ${d.y}`).join(" ")),m=e.computed(()=>{if(l.value.length===0)return"";const g=l.value.map((i,b)=>`${b===0?"M":"L"} ${i.x} ${i.y}`).join(" "),d=a.height-a.padding.bottom,u=`L ${l.value[l.value.length-1].x} ${d} L ${l.value[0].x} ${d} Z`;return g+" "+u}),f=e.computed(()=>{const g=[],d=a.height-a.padding.top-a.padding.bottom,u=5;for(let i=0;i<=u;i++){const b=a.padding.top+d/u*i;g.push(b)}return g}),p=g=>{const u=(a.width-a.padding.left-a.padding.right)/(a.data.length-1||1);return a.padding.left+g*u},v=g=>{const d=a.height-a.padding.top-a.padding.bottom,u=d/s.value;return a.padding.top+d-g*u},B=g=>{const d=a.height-a.padding.top-a.padding.bottom,u=(a.height-a.padding.bottom-g)/d*s.value;return Math.round(u)},h=(g,d,u)=>{const i=g.target.getBoundingClientRect(),b=a.labels[u]||`Point ${u+1}`;r.value={visible:!0,x:i.left+i.width/2,y:i.top,width:80,height:24,content:`${b}: ${d}`},o("point-hover",{value:d,index:u,label:b})},k=()=>{r.value.visible=!1};return(g,d)=>(e.openBlock(),e.createElementBlock("div",Bu,[(e.openBlock(),e.createElementBlock("svg",{width:t.width,height:t.height,viewBox:`0 0 ${t.width} ${t.height}`,class:"overflow-visible"},[t.showGrid?(e.openBlock(),e.createElementBlock("g",Vu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,u=>(e.openBlock(),e.createElementBlock("line",{key:`grid-${u}`,x1:t.padding.left,y1:u,x2:t.width-t.padding.right,y2:u,stroke:t.gridColor,"stroke-width":"1","stroke-dasharray":"2,2"},null,8,Eu))),128))])):e.createCommentVNode("",!0),e.createElementVNode("path",{d:c.value,stroke:t.lineColor,"stroke-width":t.strokeWidth,fill:"none",class:e.normalizeClass(t.lineClasses)},null,10,Nu),t.showPoints?(e.openBlock(),e.createElementBlock("g",$u,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,(u,i)=>(e.openBlock(),e.createElementBlock("circle",{key:`point-${i}`,cx:u.x,cy:u.y,r:t.pointRadius,fill:t.pointColor,stroke:t.lineColor,"stroke-width":2,class:e.normalizeClass(t.pointClasses),onMouseenter:b=>h(b,u.value,i),onMouseleave:k},null,42,zu))),128))])):e.createCommentVNode("",!0),t.fillArea?(e.openBlock(),e.createElementBlock("path",{key:2,d:m.value,fill:t.fillColor,"fill-opacity":t.fillOpacity},null,8,Du)):e.createCommentVNode("",!0),t.showXAxis?(e.openBlock(),e.createElementBlock("g",Tu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.labels,(u,i)=>(e.openBlock(),e.createElementBlock("text",{key:`xlabel-${i}`,x:p(i),y:t.height-t.padding.bottom+20,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"middle"},e.toDisplayString(u),11,Au))),128))])):e.createCommentVNode("",!0),t.showYAxis?(e.openBlock(),e.createElementBlock("g",Fu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,u=>(e.openBlock(),e.createElementBlock("text",{key:`ylabel-${u}`,x:t.padding.left-10,y:u+4,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"end"},e.toDisplayString(B(u)),11,Pu))),128))])):e.createCommentVNode("",!0),r.value.visible?(e.openBlock(),e.createElementBlock("g",Iu,[e.createElementVNode("rect",{x:r.value.x-r.value.width/2,y:r.value.y-r.value.height-10,width:r.value.width,height:r.value.height,fill:t.tooltipBackground,stroke:t.tooltipBorder,"stroke-width":"1",rx:"4"},null,8,ju),e.createElementVNode("text",{x:r.value.x,y:r.value.y-r.value.height/2-2,class:e.normalizeClass(t.tooltipTextClasses),"text-anchor":"middle"},e.toDisplayString(r.value.content),11,Lu)])):e.createCommentVNode("",!0)],8,Su))]))}},Ou={class:"bg-white border-b border-gray-200"},Mu={key:0,class:"flex items-center gap-3 min-w-64"},Ru={class:"relative flex-1"},_u={class:"relative flex-1"},Uu={key:1,class:"min-w-40"},qu={class:"relative"},Wu={key:2,class:"min-w-40"},Yu={class:"relative"},Hu=["value"],Gu={key:3,class:"flex items-center gap-2"},Ku={class:"flex items-center gap-3 ml-auto"},Xu={class:"flex items-center gap-3 flex-wrap"},Ju=["onClick"],Po={__name:"GraphFilters",props:{showDateFilter:{type:Boolean,default:!0},showChartTypeFilter:{type:Boolean,default:!0},showExport:{type:Boolean,default:!1},showRefresh:{type:Boolean,default:!0},dataSources:{type:Array,default:()=>[]},variant:{type:String,default:"default",validator:t=>["default","minimal","bordered"].includes(t)},padding:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)}},emits:["update:dateFrom","update:dateTo","update:chartType","update:dataSource","export","refresh","clear-filters"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(""),s=e.ref(""),l=e.ref("bar"),c=e.ref(""),m=z.cva("flex flex-wrap items-center gap-4",{variants:{variant:{default:"bg-white",minimal:"bg-transparent",bordered:"bg-gray-50"},padding:{compact:"px-4 py-3",normal:"px-6 py-4",comfortable:"px-8 py-6"}},defaultVariants:{variant:"default",padding:"normal"}}),f=e.computed(()=>r.value||s.value||c.value),p=e.computed(()=>{const _=[];if(r.value||s.value){let S="";r.value&&s.value?S=`${r.value} to ${s.value}`:r.value?S=`From ${r.value}`:s.value&&(S=`Until ${s.value}`),S&&_.push({key:"date",label:"Date Range",value:S,icon:"calendar"})}if(c.value){const S=a.dataSources.find(O=>O.value===c.value);_.push({key:"dataSource",label:"Data Source",value:S?.label||c.value,icon:"database"})}return _}),v=e.computed(()=>y(m({variant:a.variant,padding:a.padding}))),B=e.computed(()=>"w-full pl-10 pr-3 py-2 border border-gray-200 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent text-sm"),h=e.computed(()=>"w-full pr-8 appearance-none border border-gray-200 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent text-sm py-2 pl-3"),k=e.computed(()=>"text-gray-700 hover:text-gray-900 border border-gray-200 hover:bg-gray-50 bg-white px-3 py-2 rounded-lg text-sm font-medium transition-all"),g=e.computed(()=>"text-white bg-blue-600 hover:bg-blue-700 border border-blue-600 px-3 py-2 rounded-lg text-sm font-medium transition-all"),d=e.computed(()=>"text-gray-700 hover:text-gray-900 border border-gray-200 hover:bg-gray-50 bg-white px-3 py-2 rounded-lg text-sm font-medium transition-all"),u=e.computed(()=>"px-6 py-3 bg-blue-50 border-t border-blue-100"),i=e.computed(()=>"text-sm font-semibold text-blue-800"),b=e.computed(()=>"flex items-center gap-1.5 bg-white border border-blue-200 text-blue-800 px-3 py-1.5 rounded-full text-sm font-medium"),E=e.computed(()=>"text-blue-600 hover:text-blue-800 ml-1 hover:bg-blue-100 rounded-full p-0.5 transition-all"),V=_=>{l.value=_.target.value,o("update:chartType",_.target.value)},F=_=>{c.value=_.target.value,o("update:dataSource",_.target.value)},I=()=>{r.value="",s.value="",c.value="",o("clear-filters")},W=_=>{switch(_){case"date":r.value="",s.value="";break;case"dataSource":c.value="";break}};return e.watch(()=>r.value,_=>{o("update:dateFrom",_)}),e.watch(()=>s.value,_=>{o("update:dateTo",_)}),(_,S)=>(e.openBlock(),e.createElementBlock("div",Ou,[e.createElementVNode("div",{class:e.normalizeClass(v.value)},[t.showDateFilter?(e.openBlock(),e.createElementBlock("div",Mu,[e.createElementVNode("div",Ru,[e.createVNode(j,{icon:"calendar",class:"absolute left-3 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400"}),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":S[0]||(S[0]=O=>r.value=O),type:"date",class:e.normalizeClass(B.value),placeholder:"From date"},null,2),[[e.vModelText,r.value]])]),S[6]||(S[6]=e.createElementVNode("span",{class:"text-gray-500 text-sm"},"to",-1)),e.createElementVNode("div",_u,[e.createVNode(j,{icon:"calendar",class:"absolute left-3 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400"}),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":S[1]||(S[1]=O=>s.value=O),type:"date",class:e.normalizeClass(B.value),placeholder:"To date"},null,2),[[e.vModelText,s.value]])])])):e.createCommentVNode("",!0),t.showChartTypeFilter?(e.openBlock(),e.createElementBlock("div",Uu,[e.createElementVNode("div",qu,[e.createVNode(ue,{modelValue:l.value,"onUpdate:modelValue":S[2]||(S[2]=O=>l.value=O),class:e.normalizeClass(h.value),onChange:V},{default:e.withCtx(()=>[...S[7]||(S[7]=[e.createElementVNode("option",{value:"bar"}," Bar Chart ",-1),e.createElementVNode("option",{value:"line"}," Line Chart ",-1),e.createElementVNode("option",{value:"pie"}," Pie Chart ",-1)])]),_:1},8,["modelValue","class"]),e.createVNode(j,{icon:"chart-bar",class:"absolute right-2 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400 pointer-events-none"})])])):e.createCommentVNode("",!0),t.dataSources.length>0?(e.openBlock(),e.createElementBlock("div",Wu,[e.createElementVNode("div",Yu,[e.createVNode(ue,{modelValue:c.value,"onUpdate:modelValue":S[3]||(S[3]=O=>c.value=O),class:e.normalizeClass(h.value),onChange:F},{default:e.withCtx(()=>[S[8]||(S[8]=e.createElementVNode("option",{value:""}," All Sources ",-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.dataSources,O=>(e.openBlock(),e.createElementBlock("option",{key:O.value,value:O.value},e.toDisplayString(O.label),9,Hu))),128))]),_:1},8,["modelValue","class"]),e.createVNode(j,{icon:"database",class:"absolute right-2 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400 pointer-events-none"})])])):e.createCommentVNode("",!0),_.$slots.filters?(e.openBlock(),e.createElementBlock("div",Gu,[e.renderSlot(_.$slots,"filters")])):e.createCommentVNode("",!0),e.createElementVNode("div",Ku,[f.value?(e.openBlock(),e.createBlock(Z,{key:0,class:e.normalizeClass(k.value),onClick:I},{default:e.withCtx(()=>[e.createVNode(j,{icon:"rotate-left",class:"w-4 h-4 mr-2"}),S[9]||(S[9]=e.createTextVNode(" Clear Filters ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showExport?(e.openBlock(),e.createBlock(Z,{key:1,class:e.normalizeClass(g.value),onClick:S[4]||(S[4]=O=>_.$emit("export"))},{default:e.withCtx(()=>[e.createVNode(j,{icon:"download",class:"w-4 h-4 mr-2"}),S[10]||(S[10]=e.createTextVNode(" Export ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showRefresh?(e.openBlock(),e.createBlock(Z,{key:2,class:e.normalizeClass(d.value),onClick:S[5]||(S[5]=O=>_.$emit("refresh"))},{default:e.withCtx(()=>[e.createVNode(j,{icon:"sync",class:"w-4 h-4 mr-2"}),S[11]||(S[11]=e.createTextVNode(" Refresh ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0)])],2),p.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(u.value)},[e.createElementVNode("div",Xu,[e.createElementVNode("span",{class:e.normalizeClass(i.value)},"Active filters:",2),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,O=>(e.openBlock(),e.createElementBlock("div",{key:O.key,class:e.normalizeClass(b.value)},[e.createVNode(j,{icon:O.icon,class:"w-3 h-3"},null,8,["icon"]),e.createElementVNode("span",null,e.toDisplayString(O.label)+": "+e.toDisplayString(O.value),1),e.createElementVNode("button",{class:e.normalizeClass(E.value),onClick:L=>W(O.key)},[e.createVNode(j,{icon:"xmark",class:"w-3 h-3"})],10,Ju)],2))),128))])],2)):e.createCommentVNode("",!0)]))}},Qu={class:"flex items-start justify-between"},Zu={key:0,class:"flex items-center gap-2"},ra={__name:"DataTableHeader",props:{title:{type:String,default:null},description:{type:String,default:null},variant:{type:String,default:"default",validator:t=>["default","minimal","bordered"].includes(t)},padding:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)}},setup(t){const n=t,a=z.cva("border-b border-slate-200",{variants:{variant:{default:"bg-white",minimal:"bg-transparent border-none",bordered:"bg-slate-50 border-2"},padding:{compact:"px-4 py-2",normal:"px-6 py-4",comfortable:"px-8 py-6"}},defaultVariants:{variant:"default",padding:"normal"}}),o=z.cva("font-semibold text-slate-900",{variants:{size:{sm:"text-base",md:"text-lg",lg:"text-xl"}},defaultVariants:{size:"md"}}),r=z.cva("text-slate-600 mt-1",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-base"}},defaultVariants:{size:"md"}}),s=e.computed(()=>y(a({variant:n.variant,padding:n.padding}))),l=e.computed(()=>y(o({size:"md"}))),c=e.computed(()=>y(r({size:"md"})));return(m,f)=>t.title||t.description||m.$slots.header?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(s.value)},[e.renderSlot(m.$slots,"header",{},()=>[e.createElementVNode("div",Qu,[e.createElementVNode("div",null,[t.title?(e.openBlock(),e.createBlock(tt,{key:0,class:e.normalizeClass(l.value)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.title),1)]),_:1},8,["class"])):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createBlock(tt,{key:1,class:e.normalizeClass(c.value)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.description),1)]),_:1},8,["class"])):e.createCommentVNode("",!0)]),m.$slots.filters?(e.openBlock(),e.createElementBlock("div",Zu,[e.renderSlot(m.$slots,"filters")])):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0)}},la={__name:"DataTableRow",props:{item:{type:Object,required:!0},columns:{type:Array,required:!0},index:{type:Number,required:!0},selectable:{type:Boolean,default:!1},isSelected:{type:Boolean,default:!1},striped:{type:Boolean,default:!1},hoverable:{type:Boolean,default:!0},clickableRows:{type:Boolean,default:!1},density:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","bordered","minimal"].includes(t)}},emits:["toggle-selection","row-click"],setup(t,{emit:n}){const a=t,o=n,r=z.cva("transition-colors",{variants:{striped:{true:"odd:bg-slate-50/50",false:""},hoverable:{true:"hover:bg-slate-50",false:""},clickable:{true:"cursor-pointer hover:bg-slate-100",false:""},selected:{true:"bg-blue-50 border-blue-200",false:""},variant:{default:"",bordered:"border-b border-slate-200",minimal:"border-b border-slate-100"}},compoundVariants:[{hoverable:!0,clickable:!0,class:"hover:bg-slate-100"}],defaultVariants:{striped:!1,hoverable:!0,clickable:!1,selected:!1,variant:"default"}}),s=z.cva("whitespace-nowrap text-sm text-slate-900",{variants:{density:{compact:"px-4 py-2",normal:"px-6 py-4",comfortable:"px-8 py-6"},align:{left:"text-left",center:"text-center",right:"text-right"}},defaultVariants:{density:"normal",align:"left"}}),l=g=>typeof g=="string"?g:g?.key||g?.field||"unknown",c=(g,d)=>{const u=l(d);return typeof d=="object"&&d.accessor?d.accessor(g):u&&u.includes(".")?u.split(".").reduce((i,b)=>i?.[b],g):g?.[u]},m=(g,d)=>{const u=c(g,d);return typeof d=="object"&&d.formatter?d.formatter(u,g):u==null?"":u instanceof Date?u.toLocaleDateString():Array.isArray(u)?u.join(", "):u},f=()=>{a.clickableRows&&o("row-click",{item:a.item,index:a.index})},p=g=>typeof g=="object"&&g.align?g.align:"left",v=e.computed(()=>y(r({striped:a.striped,hoverable:a.hoverable&&!a.clickableRows,clickable:a.clickableRows,selected:a.isSelected,variant:a.variant}))),B=g=>{const d=p(g);return y(s({density:a.density,align:d}),g.cellClasses)},h=e.computed(()=>y(s({density:a.density}),"w-12")),k=e.computed(()=>y(s({density:a.density,align:"right"}),"font-medium"));return(g,d)=>(e.openBlock(),e.createElementBlock("tr",{class:e.normalizeClass(v.value),onClick:f},[t.selectable?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(h.value)},[e.createVNode(st,{"model-value":t.isSelected,"onUpdate:modelValue":d[0]||(d[0]=u=>g.$emit("toggle-selection",t.item))},null,8,["model-value"])],2)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,u=>(e.openBlock(),e.createElementBlock("td",{key:l(u),class:e.normalizeClass(B(u))},[e.renderSlot(g.$slots,`cell-${l(u)}`,{item:t.item,value:c(t.item,u),column:u,index:t.index},()=>[e.createTextVNode(e.toDisplayString(m(t.item,u)),1)])],2))),128)),g.$slots.actions?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass(k.value)},[e.renderSlot(g.$slots,"actions",{item:t.item,index:t.index})],2)):e.createCommentVNode("",!0)],2))}},em={class:"flex items-center justify-between"},tm={key:0,class:"text-sm text-slate-600"},am={key:1,class:"text-sm text-slate-600"},nm={key:2,class:"flex items-center gap-4"},om={key:3,class:"flex items-center gap-4"},rm={class:"flex items-center gap-2"},lm={class:"flex items-center gap-1"},sm=["disabled"],im=["disabled"],cm={class:"flex items-center gap-1"},dm=["onClick"],um=["disabled"],mm=["disabled"],fm={class:"text-sm text-slate-600 ml-4"},sa={__name:"DataTablePagination",props:{currentPage:{type:Number,required:!0},totalPages:{type:Number,required:!0},total:{type:Number,required:!0},pageSize:{type:Number,required:!0},showPagination:{type:Boolean,default:!0},selectable:{type:Boolean,default:!1},selectedCount:{type:Number,default:0},pageSizeOptions:{type:Array,default:()=>[5,10,25,50,100]},maxVisiblePages:{type:Number,default:7},variant:{type:String,default:"default",validator:t=>["default","minimal","bordered"].includes(t)},padding:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)}},emits:["update:currentPage","update:pageSize"],setup(t){const n=t,a=z.cva("border-t border-slate-200",{variants:{variant:{default:"bg-slate-50",minimal:"bg-transparent border-slate-100",bordered:"bg-slate-100 border-t-2 border-slate-300"},padding:{compact:"px-4 py-2",normal:"px-6 py-4",comfortable:"px-8 py-6"}},defaultVariants:{variant:"default",padding:"normal"}}),o=z.cva("text-sm font-medium border rounded-md transition-colors duration-200",{variants:{state:{active:"bg-blue-600 text-white border-blue-600",inactive:"bg-white text-slate-700 border-slate-300 hover:bg-slate-50",disabled:"bg-slate-100 text-slate-400 border-slate-200 cursor-not-allowed"},size:{sm:"px-2 py-1",md:"px-3 py-2",lg:"px-4 py-3"}},defaultVariants:{state:"inactive",size:"md"}}),r=z.cva("text-slate-700",{variants:{size:{sm:"text-sm",md:"text-base",lg:"text-lg"}},defaultVariants:{size:"md"}}),s=z.cva("border border-slate-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 text-sm min-w-[60px] focus:border-transparent",{variants:{size:{sm:"px-2 py-1",md:"px-3 py-2",lg:"px-4 py-3"}},defaultVariants:{size:"sm"}}),l=e.computed(()=>(n.currentPage-1)*n.pageSize+1),c=e.computed(()=>Math.min(n.currentPage*n.pageSize,n.total)),m=e.computed(()=>{const h=[],k=n.totalPages,g=n.currentPage,d=n.maxVisiblePages;if(k<=d)for(let u=1;u<=k;u++)h.push(u);else{const u=Math.floor(d/2);let i=Math.max(1,g-u),b=Math.min(k,i+d-1);b-i+1<d&&(i=Math.max(1,b-d+1));for(let E=i;E<=b;E++)h.push(E)}return h}),f=e.computed(()=>y(a({variant:n.variant,padding:n.padding}))),p=e.computed(()=>y(r({size:"md"}))),v=e.computed(()=>y(s({size:"sm"}))),B=(h,k)=>{let g="inactive";return k?g="disabled":h&&(g="active"),y(o({state:g,size:"md"}))};return(h,k)=>t.showPagination||h.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(f.value)},[e.createElementVNode("div",em,[t.selectable&&t.selectedCount>0?(e.openBlock(),e.createElementBlock("div",tm,e.toDisplayString(t.selectedCount)+" of "+e.toDisplayString(t.total)+" selected ",1)):(e.openBlock(),e.createElementBlock("div",am," Showing "+e.toDisplayString(l.value)+" to "+e.toDisplayString(c.value)+" of "+e.toDisplayString(t.total)+" entries ",1)),h.$slots.footer?(e.openBlock(),e.createElementBlock("div",nm,[e.renderSlot(h.$slots,"footer")])):e.createCommentVNode("",!0),t.showPagination?(e.openBlock(),e.createElementBlock("div",om,[e.createElementVNode("div",rm,[e.createVNode(Ve,{for:"pageSize",class:e.normalizeClass(p.value),inline:!0},{default:e.withCtx(()=>[...k[5]||(k[5]=[e.createTextVNode("Show:",-1)])]),_:1},8,["class"]),e.createVNode(ue,{id:"pageSize","model-value":t.pageSize.toString(),class:e.normalizeClass(v.value),"onUpdate:modelValue":k[0]||(k[0]=g=>h.$emit("update:pageSize",parseInt(g)))},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.pageSizeOptions,g=>(e.openBlock(),e.createBlock(Zt,{key:g,value:g.toString(),label:g.toString()},null,8,["value","label"]))),128))]),_:1},8,["model-value","class"])]),e.createElementVNode("div",lm,[e.createElementVNode("button",{disabled:t.currentPage===1,class:e.normalizeClass(B(!1,t.currentPage===1)),title:"First page",onClick:k[1]||(k[1]=g=>h.$emit("update:currentPage",1))},[...k[6]||(k[6]=[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m18.75 4.5-7.5 7.5 7.5 7.5m-6-15L5.25 12l7.5 7.5"})],-1)])],10,sm),e.createElementVNode("button",{disabled:t.currentPage===1,class:e.normalizeClass(B(!1,t.currentPage===1)),title:"Previous page",onClick:k[2]||(k[2]=g=>h.$emit("update:currentPage",t.currentPage-1))},[...k[7]||(k[7]=[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M15.75 19.5L8.25 12l7.5-7.5"})],-1)])],10,im),e.createElementVNode("div",cm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,g=>(e.openBlock(),e.createElementBlock("button",{key:g,class:e.normalizeClass(B(g===t.currentPage,!1)),onClick:d=>h.$emit("update:currentPage",g)},e.toDisplayString(g),11,dm))),128))]),e.createElementVNode("button",{disabled:t.currentPage===t.totalPages,class:e.normalizeClass(B(!1,t.currentPage===t.totalPages)),title:"Next page",onClick:k[3]||(k[3]=g=>h.$emit("update:currentPage",t.currentPage+1))},[...k[8]||(k[8]=[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m8.25 4.5 7.5 7.5-7.5 7.5"})],-1)])],10,um),e.createElementVNode("button",{disabled:t.currentPage===t.totalPages,class:e.normalizeClass(B(!1,t.currentPage===t.totalPages)),title:"Last page",onClick:k[4]||(k[4]=g=>h.$emit("update:currentPage",t.totalPages))},[...k[9]||(k[9]=[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m5.25 4.5 7.5 7.5-7.5 7.5m6-15 7.5 7.5-7.5 7.5"})],-1)])],10,mm)]),e.createElementVNode("div",fm," Page "+e.toDisplayString(t.currentPage)+" of "+e.toDisplayString(t.totalPages),1)])):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0)}},dt=(t,n)=>{const a=t.__vccOpts||t;for(const[o,r]of n)a[o]=r;return a},gm={key:0,class:"loader__backdrop"},pm={class:"loader__container"},vm={key:0,class:"loader__text loader__text--top"},hm={key:1,class:"loader__spin"},bm={key:2,class:"loader__pulse"},ym={key:3,class:"loader__bounce"},xm={key:4,class:"loader__ripple"},km={key:5,class:"loader__bars"},wm={key:6,class:"loader__dots"},Cm={key:7,class:"loader__ring"},Bm={key:8,class:"loader__spinner-text"},Sm={key:9,class:"loader__text loader__text--bottom"},Vm={__name:"Loader",props:{loading:{type:Boolean,default:!0},type:{type:String,default:"spin",validator:t=>["spin","pulse","bounce","ripple","bars","dots","ring","spinner-text"].includes(t)},size:{type:String,default:"medium",validator:t=>["small","medium","large","xl"].includes(t)},color:{type:String,default:"#3b82f6"},backgroundColor:{type:String,default:"rgba(255, 255, 255, 0.9)"},text:{type:String,default:""},textPosition:{type:String,default:"bottom",validator:t=>["top","bottom"].includes(t)},overlay:{type:Boolean,default:!1},fullscreen:{type:Boolean,default:!1}},setup(t){return(n,a)=>t.loading?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["loader",`loader--${t.type}`,`loader--${t.size}`,t.overlay?"loader--overlay":"",t.fullscreen?"loader--fullscreen":""]),style:e.normalizeStyle({"--loader-color":t.color,"--loader-bg":t.backgroundColor})},[t.overlay?(e.openBlock(),e.createElementBlock("div",gm)):e.createCommentVNode("",!0),e.createElementVNode("div",pm,[t.text&&t.textPosition==="top"?(e.openBlock(),e.createElementBlock("div",vm,e.toDisplayString(t.text),1)):e.createCommentVNode("",!0),t.type==="spin"?(e.openBlock(),e.createElementBlock("div",hm)):t.type==="pulse"?(e.openBlock(),e.createElementBlock("div",bm)):t.type==="bounce"?(e.openBlock(),e.createElementBlock("div",ym,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(3,o=>e.createElementVNode("div",{key:o,class:"loader__bounce-dot",style:e.normalizeStyle({animationDelay:`${(o-1)*.1}s`})},null,4)),64))])):t.type==="ripple"?(e.openBlock(),e.createElementBlock("div",xm,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(2,o=>e.createElementVNode("div",{key:o,class:"loader__ripple-ring",style:e.normalizeStyle({animationDelay:`${(o-1)*.5}s`})},null,4)),64))])):t.type==="bars"?(e.openBlock(),e.createElementBlock("div",km,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(5,o=>e.createElementVNode("div",{key:o,class:"loader__bar",style:e.normalizeStyle({animationDelay:`${(o-1)*.1}s`})},null,4)),64))])):t.type==="dots"?(e.openBlock(),e.createElementBlock("div",wm,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(3,o=>e.createElementVNode("div",{key:o,class:"loader__dot",style:e.normalizeStyle({animationDelay:`${(o-1)*.16}s`})},null,4)),64))])):t.type==="ring"?(e.openBlock(),e.createElementBlock("div",Cm,[...a[0]||(a[0]=[e.createElementVNode("div",{class:"loader__ring-track"},null,-1),e.createElementVNode("div",{class:"loader__ring-fill"},null,-1)])])):t.type==="spinner-text"?(e.openBlock(),e.createElementBlock("div",Bm,[...a[1]||(a[1]=[e.createElementVNode("div",{class:"loader__spinner"},null,-1)])])):e.createCommentVNode("",!0),t.text&&t.textPosition==="bottom"?(e.openBlock(),e.createElementBlock("div",Sm,e.toDisplayString(t.text),1)):e.createCommentVNode("",!0)])],6)):e.createCommentVNode("",!0)}},Le=dt(Vm,[["__scopeId","data-v-68532350"]]),Em={class:"relative"},Nm={class:"flex items-center justify-center"},$m=["onClick"],zm={class:"flex items-center gap-2"},Dm={key:1,class:"flex flex-col"},Tm={key:1,class:"flex items-center gap-1 justify-center"},Am={key:1,class:"text-xs"},Fm={key:2},Pm=["colspan"],Im={class:"flex flex-col items-center justify-center py-12"},jm={class:"text-slate-400 mb-4 flex justify-center"},Lm={class:"text-slate-600 text-lg font-medium mb-2"},Om={class:"text-slate-500 text-sm"},Mm={__name:"DataTable",props:{data:{type:Array,required:!0},columns:{type:Array,required:!0},title:{type:String,default:null},description:{type:String,default:null},selectable:{type:Boolean,default:!1},selectedItems:{type:Array,default:()=>[]},sortBy:{type:String,default:null},sortOrder:{type:String,default:"asc",validator:t=>["asc","desc"].includes(t)},pageSize:{type:Number,default:10},showPagination:{type:Boolean,default:!0},striped:{type:Boolean,default:!1},hoverable:{type:Boolean,default:!0},clickableRows:{type:Boolean,default:!1},emptyText:{type:String,default:"No data available"},emptySubtitle:{type:String,default:"Try adjusting your search or filter criteria"},rowKey:{type:String,default:"id"},variant:{type:String,default:"default",validator:t=>["default","bordered","minimal"].includes(t)},density:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)},headerVariant:{type:String,default:"default"},headerPadding:{type:String,default:"normal"},paginationVariant:{type:String,default:"default"},paginationPadding:{type:String,default:"normal"},actions:{type:Array,default:()=>[]},showActionsColumn:{type:Boolean,default:!0},loading:{type:Boolean,default:!1},dataLoading:{type:Boolean,default:!1},sortLoading:{type:Boolean,default:!1},paginationLoading:{type:Boolean,default:!1},bulkLoading:{type:Boolean,default:!1},rowLoading:{type:Object,default:()=>({})},loadingType:{type:String,default:"dots",validator:t=>["spin","pulse","bounce","ripple","bars","dots","ring"].includes(t)},loadingSize:{type:String,default:"medium",validator:t=>["small","medium","large","xl"].includes(t)},loadingColor:{type:String,default:"#3b82f6"},loadingText:{type:String,default:"Loading..."},loadingTextPosition:{type:String,default:"bottom",validator:t=>["top","bottom"].includes(t)},loadingBackground:{type:String,default:"rgba(255, 255, 255, 0.95)"},showSkeleton:{type:Boolean,default:!0},skeletonRows:{type:Number,default:5}},emits:["selection-change","sort-change","row-click","page-change","page-size-change","refresh","action"],setup(t,{expose:n,emit:a}){const o=t,r=a,s=e.ref(1),l=e.ref(o.pageSize),c=e.ref(o.sortBy),m=e.ref(o.sortOrder),f=z.cva("bg-white border border-slate-200 rounded-lg overflow-hidden",{variants:{variant:{default:"shadow-sm",bordered:"border-2 border-slate-300",minimal:"border-none shadow-none bg-transparent"}},defaultVariants:{variant:"default"}}),p=z.cva("min-w-full",{variants:{variant:{default:"divide-y divide-slate-200",bordered:"border-collapse [&_td]:border [&_th]:border",minimal:"divide-y divide-slate-100"}},defaultVariants:{variant:"default"}}),v=z.cva("",{variants:{variant:{default:"bg-slate-50",bordered:"bg-slate-100 border-b-2 border-slate-300",minimal:"bg-transparent border-b border-slate-200"}},defaultVariants:{variant:"default"}}),B=z.cva("divide-y",{variants:{variant:{default:"bg-white divide-slate-200",bordered:"bg-white divide-slate-300",minimal:"bg-transparent divide-slate-100"}},defaultVariants:{variant:"default"}}),h=e.computed(()=>{let D=[...o.data];if(c.value){const R=o.columns.find(G=>G.key===c.value);R&&D.sort((G,ee)=>{const te=W(G,R),X=W(ee,R);return te<X?m.value==="asc"?-1:1:te>X?m.value==="asc"?1:-1:0})}return D}),k=e.computed(()=>Math.ceil(h.value.length/l.value)),g=e.computed(()=>{if(!o.showPagination)return h.value;const D=(s.value-1)*l.value,R=D+l.value;return h.value.slice(D,R)}),d=e.computed(()=>{let D=o.columns.length;return o.selectable&&D++,(o.$slots?.actions||o.actions.length>0&&o.showActionsColumn)&&D++,D}),u=D=>o.actions.filter(R=>R.visible&&typeof R.visible=="function"?R.visible(D):!0),i=(D,R)=>D.permission&&typeof D.permission=="function"?D.permission(R):!0,b=(D,R)=>D.disabled&&typeof D.disabled=="function"?D.disabled(R):!1,E=(D,R)=>{b(D,R)||!i(D,R)||(r("action",{action:D.key,item:R,actionConfig:D}),D.onClick&&typeof D.onClick=="function"&&D.onClick(R))},V=D=>({default:"default",primary:"gradient",secondary:"secondary",danger:"danger",success:"success",warning:"warning",info:"info",subtle:"subtle",dark:"dark",light:"light",primaryOutline:"primaryOutline",dangerOutline:"dangerOutline",successOutline:"successOutline",outline:"outline",link:"link",ghost:"ghost"})[D]||"ghost",F=e.computed(()=>h.value.length>0&&h.value.every(D=>S(D))),I=e.computed(()=>{const D=h.value.filter(R=>S(R)).length;return D>0&&D<h.value.length}),W=(D,R)=>R.accessor?R.accessor(D):R.key.split(".").reduce((G,ee)=>G?.[ee],D),_=(D,R)=>D[o.rowKey]||R,S=D=>o.selectedItems.some(R=>_(R)===_(D)),O=D=>{const R=[...o.selectedItems],G=R.findIndex(ee=>_(ee)===_(D));G>-1?R.splice(G,1):R.push(D),r("selection-change",R)},L=()=>{if(o.loading||o.dataLoading)return;const D=F.value?[]:[...h.value];r("selection-change",D)},x=async D=>{!D.sortable||o.loading||o.sortLoading||(c.value===D.key?m.value=m.value==="asc"?"desc":"asc":(c.value=D.key,m.value="asc"),r("sort-change",{column:D.key,direction:m.value}))},N=D=>{o.loading||r("row-click",D)},P=async D=>{o.paginationLoading||o.loading||(s.value=D,r("page-change",D))},Y=async D=>{o.paginationLoading||o.loading||(l.value=D,s.value=1,r("page-size-change",D))},U=e.computed(()=>y(f({variant:o.variant}))),ne=e.computed(()=>y(p({variant:o.variant}))),ut=e.computed(()=>y(v({variant:o.variant}))),$e=e.computed(()=>y(B({variant:o.variant}))),mt=D=>y({compact:"px-4 py-2",normal:"px-6 py-3",comfortable:"px-8 py-4"}[o.density],"text-left text-xs font-medium text-slate-500 uppercase tracking-wider",{"cursor-pointer hover:bg-slate-100 transition-colors":D.sortable&&!o.loading&&!o.sortLoading,"cursor-not-allowed opacity-50":o.loading||o.sortLoading&&c.value===D.key}),ft=()=>y({compact:"px-4 py-2",normal:"px-6 py-4",comfortable:"px-8 py-6"}[o.density],"whitespace-nowrap text-sm text-slate-900"),qe=e.computed(()=>y({compact:"px-4 py-2",normal:"px-6 py-4",comfortable:"px-8 py-6"}[o.density],"whitespace-nowrap text-sm text-slate-900 w-12")),ye=e.computed(()=>y({compact:"px-4 py-2",normal:"px-6 py-4",comfortable:"px-8 py-6"}[o.density],"whitespace-nowrap text-sm font-medium text-center")),ze=e.computed(()=>y({compact:"px-4 py-4",normal:"px-6 py-6",comfortable:"px-8 py-8"}[o.density],"text-center")),De=(D,R)=>y({"text-blue-600":c.value===D.key&&m.value===R,"text-slate-300":c.value!==D.key||m.value!==R});return e.watch(()=>o.selectedItems,()=>{},{deep:!0}),e.watch(()=>o.pageSize,D=>{l.value=D}),n({refresh:()=>{r("refresh")},goToPage:D=>{P(D)},selectAll:()=>{L()},clearSelection:()=>{r("selection-change",[])},getCurrentPage:()=>s.value,getTotalPages:()=>k.value,getSelectedItems:()=>o.selectedItems}),(D,R)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(U.value)},[t.title||t.description||D.$slots.header?(e.openBlock(),e.createBlock(ra,{key:0,title:t.title,description:t.description,variant:t.headerVariant,padding:t.headerPadding},{header:e.withCtx(()=>[e.renderSlot(D.$slots,"header",{},void 0,!0)]),filters:e.withCtx(()=>[e.renderSlot(D.$slots,"filters",{},void 0,!0)]),_:3},8,["title","description","variant","padding"])):e.createCommentVNode("",!0),e.createElementVNode("div",Em,[t.loading?(e.openBlock(),e.createBlock(Le,{key:0,loading:!0,type:t.loadingType,size:t.loadingSize,color:t.loadingColor,overlay:!0,text:t.loadingText,"text-position":t.loadingTextPosition,"background-color":t.loadingBackground,class:"table-loading-overlay"},null,8,["type","size","color","text","text-position","background-color"])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["overflow-x-auto",{"opacity-50":t.loading}])},[e.createElementVNode("table",{class:e.normalizeClass(ne.value)},[e.createElementVNode("thead",{class:e.normalizeClass(ut.value)},[e.createElementVNode("tr",null,[t.selectable?(e.openBlock(),e.createElementBlock("th",{key:0,class:e.normalizeClass(qe.value)},[e.createElementVNode("div",Nm,[t.bulkLoading?(e.openBlock(),e.createBlock(Le,{key:0,loading:!0,type:"spin",size:"small",color:t.loadingColor},null,8,["color"])):(e.openBlock(),e.createBlock(st,{key:1,"model-value":F.value,indeterminate:I.value,disabled:t.loading||t.dataLoading,"onUpdate:modelValue":L},null,8,["model-value","indeterminate","disabled"]))])],2)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,G=>(e.openBlock(),e.createElementBlock("th",{key:G.key,class:e.normalizeClass(mt(G)),onClick:ee=>x(G)},[e.createElementVNode("div",zm,[e.createElementVNode("span",null,e.toDisplayString(G.label),1),t.sortLoading&&c.value===G.key?(e.openBlock(),e.createBlock(Le,{key:0,loading:!0,type:"spin",size:"small",color:t.loadingColor},null,8,["color"])):G.sortable?(e.openBlock(),e.createElementBlock("div",Dm,[(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass([De(G,"asc"),"w-3 h-3 transition-colors"]),fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...R[0]||(R[0]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m4.5 15.75 7.5-7.5 7.5 7.5"},null,-1)])],2)),(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass([De(G,"desc"),"w-3 h-3 transition-colors"]),fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...R[1]||(R[1]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"},null,-1)])],2))])):e.createCommentVNode("",!0)])],10,$m))),128)),D.$slots.actions||t.actions.length>0&&t.showActionsColumn?(e.openBlock(),e.createElementBlock("th",{key:1,class:e.normalizeClass(ye.value)}," Actions ",2)):e.createCommentVNode("",!0)])],2),e.createElementVNode("tbody",{class:e.normalizeClass($e.value)},[t.showSkeleton&&(t.loading||t.dataLoading)?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.skeletonRows,G=>(e.openBlock(),e.createElementBlock("tr",{key:`skeleton-${G}`,class:"animate-pulse"},[t.selectable?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(qe.value)},[...R[2]||(R[2]=[e.createElementVNode("div",{class:"w-4 h-4 bg-slate-200 rounded"},null,-1)])],2)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,ee=>(e.openBlock(),e.createElementBlock("td",{key:ee.key,class:e.normalizeClass(ft())},[...R[3]||(R[3]=[e.createElementVNode("div",{class:"h-4 bg-slate-200 rounded w-3/4"},null,-1)])],2))),128)),D.$slots.actions||t.actions.length>0&&t.showActionsColumn?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass(ye.value)},[...R[4]||(R[4]=[e.createElementVNode("div",{class:"flex gap-2 justify-center"},[e.createElementVNode("div",{class:"w-6 h-6 bg-slate-200 rounded"}),e.createElementVNode("div",{class:"w-6 h-6 bg-slate-200 rounded"})],-1)])],2)):e.createCommentVNode("",!0)]))),128)):g.value.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(g.value,(G,ee)=>(e.openBlock(),e.createBlock(la,{key:_(G,ee),item:G,columns:t.columns,index:ee,selectable:t.selectable,"is-selected":S(G),striped:t.striped,hoverable:t.hoverable,"clickable-rows":t.clickableRows,density:t.density,"row-loading":t.rowLoading[_(G,ee)],"loading-color":t.loadingColor,onToggleSelection:O,onRowClick:N},e.createSlots({actions:e.withCtx(te=>[D.$slots.actions?e.renderSlot(D.$slots,"actions",e.mergeProps({key:0,ref_for:!0},te),void 0,!0):t.actions.length>0&&t.showActionsColumn?(e.openBlock(),e.createElementBlock("div",Tm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u(te.item),X=>(e.openBlock(),e.createBlock(ta,{key:X.key,content:X.tooltip||X.label||X.key,placement:"top"},{default:e.withCtx(()=>[e.createVNode(Z,{variant:V(X.variant),size:"xs",disabled:b(X,te.item)||!i(X,te.item),class:"h-8 w-8",onClick:e.withModifiers(ia=>E(X,te.item),["stop"])},{default:e.withCtx(()=>[X.icon?(e.openBlock(),e.createBlock(j,{key:0,icon:X.icon,class:"w-4 h-4"},null,8,["icon"])):X.label?(e.openBlock(),e.createElementBlock("span",Am,e.toDisplayString(X.label),1)):e.createCommentVNode("",!0)]),_:2},1032,["variant","disabled","onClick"])]),_:2},1032,["content"]))),128))])):e.createCommentVNode("",!0)]),_:2},[e.renderList(t.columns,te=>({name:`cell-${te.key}`,fn:e.withCtx(X=>[e.renderSlot(D.$slots,`cell-${te.key}`,e.mergeProps({ref_for:!0},X),void 0,!0)])}))]),1032,["item","columns","index","selectable","is-selected","striped","hoverable","clickable-rows","density","row-loading","loading-color"]))),128)):(e.openBlock(),e.createElementBlock("tr",Fm,[e.createElementVNode("td",{colspan:d.value,class:e.normalizeClass(ze.value)},[e.renderSlot(D.$slots,"empty",{},()=>[e.createElementVNode("div",Im,[e.createElementVNode("div",jm,[e.createVNode(j,{icon:"search",class:"w-16 h-16"})]),e.createElementVNode("p",Lm,e.toDisplayString(t.emptyText),1),e.createElementVNode("p",Om,e.toDisplayString(t.emptySubtitle),1)])],!0)],10,Pm)]))],2)],2)],2)]),t.showPagination||D.$slots.footer?(e.openBlock(),e.createBlock(sa,{key:1,"current-page":s.value,"total-pages":k.value,total:h.value.length,"page-size":l.value,"show-pagination":t.showPagination,selectable:t.selectable,"selected-count":t.selectedItems.length,variant:t.paginationVariant,padding:t.paginationPadding,loading:t.paginationLoading,disabled:t.loading||t.dataLoading,"onUpdate:currentPage":P,"onUpdate:pageSize":Y},{footer:e.withCtx(()=>[e.renderSlot(D.$slots,"footer",{},void 0,!0)]),_:3},8,["current-page","total-pages","total","page-size","show-pagination","selectable","selected-count","variant","padding","loading","disabled"])):e.createCommentVNode("",!0)],2))}},Io=dt(Mm,[["__scopeId","data-v-32089b8f"]]),jo={__name:"DataTableCell",props:{item:{type:Object,required:!0},column:{type:Object,required:!0},value:{type:[String,Number,Boolean,Object,Array],default:null},align:{type:String,default:"left",validator:t=>["left","center","right"].includes(t)},width:{type:String,default:null},padding:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)},textSize:{type:String,default:"sm",validator:t=>["xs","sm","base","lg"].includes(t)},textColor:{type:String,default:"slate-900"}},setup(t){const n=t,a=e.computed(()=>{const l=n.value??o();return n.column.formatter?n.column.formatter(l,n.item):l}),o=()=>n.column.accessor?n.column.accessor(n.item):n.column.key.split(".").reduce((l,c)=>l?.[c],n.item),r=z.cva("whitespace-nowrap",{variants:{align:{left:"text-left",center:"text-center",right:"text-right"},padding:{compact:"px-4 py-2",normal:"px-6 py-4",comfortable:"px-8 py-6"},textSize:{xs:"text-xs",sm:"text-sm",base:"text-base",lg:"text-lg"}},defaultVariants:{align:"left",padding:"normal",textSize:"sm"}}),s=e.computed(()=>{const l=n.align||n.column.align||"left",c=`text-${n.textColor}`,m=n.width?`w-${n.width}`:"";return y(r({align:l,padding:n.padding,textSize:n.textSize}),c,m,n.column.cellClasses)});return(l,c)=>(e.openBlock(),e.createElementBlock("td",{class:e.normalizeClass(s.value)},[e.renderSlot(l.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(a.value),1)])],2))}},Rm={class:"bg-white border-b border-gray-200"},_m={key:0,class:"flex-1 min-w-80 max-w-md"},Um={class:"relative group"},qm=["model-value","placeholder"],Wm={class:"relative"},Ym={value:""},Hm=["value"],Gm={key:1,class:"min-w-36"},Km={class:"relative"},Xm=["value"],Jm={key:3,class:"flex items-center gap-2"},Qm={class:"flex items-center gap-3 ml-auto"},Zm={key:2},ef={class:"grid grid-cols-1 lg:grid-cols-3 gap-6"},tf={class:"flex items-center justify-between"},af={class:"flex items-center gap-3"},nf={class:"relative flex-1"},of=["model-value","placeholder","onInput"],rf={class:"relative flex-1"},lf=["model-value","placeholder","onInput"],sf=["onClick"],cf={class:"flex items-center justify-between"},df={class:"flex items-center gap-3"},uf={class:"relative flex-1"},mf=["model-value","placeholder","step","onInput"],ff={class:"relative flex-1"},gf=["model-value","placeholder","step","onInput"],pf=["onClick"],vf={class:"flex items-center justify-between"},hf={class:"relative"},bf={value:""},yf=["value"],xf={key:0,class:"flex flex-wrap gap-2 mt-2"},kf=["onClick"],wf={class:"flex items-center gap-3 flex-wrap"},Cf=["onClick"],Bf={key:2,class:"px-6 py-3 bg-gray-50 border-t border-gray-200"},Sf={class:"flex items-center justify-between"},Vf={class:"flex items-center gap-4"},Ef={class:"text-sm text-gray-600"},Nf={class:"font-medium"},Lo={__name:"DataTableFilters",props:{searchQuery:{type:String,default:""},searchPlaceholder:{type:String,default:"Search..."},selectedStatus:{type:String,default:""},statusOptions:{type:Array,default:()=>[]},showDateFilter:{type:Boolean,default:!1},dateFrom:{type:String,default:""},dateTo:{type:String,default:""},selectFilters:{type:Array,default:()=>[],validator:t=>t.every(n=>Object.prototype.hasOwnProperty.call(n,"key")&&Object.prototype.hasOwnProperty.call(n,"label")&&Object.prototype.hasOwnProperty.call(n,"options")&&Object.prototype.hasOwnProperty.call(n,"value"))},dateFilters:{type:Array,default:()=>[],validator:t=>t.every(n=>Object.prototype.hasOwnProperty.call(n,"key")&&Object.prototype.hasOwnProperty.call(n,"label")&&Object.prototype.hasOwnProperty.call(n,"from")&&Object.prototype.hasOwnProperty.call(n,"to"))},numberFilters:{type:Array,default:()=>[],validator:t=>t.every(n=>Object.prototype.hasOwnProperty.call(n,"key")&&Object.prototype.hasOwnProperty.call(n,"label")&&Object.prototype.hasOwnProperty.call(n,"min")&&Object.prototype.hasOwnProperty.call(n,"max"))},multiSelectFilters:{type:Array,default:()=>[],validator:t=>t.every(n=>Object.prototype.hasOwnProperty.call(n,"key")&&Object.prototype.hasOwnProperty.call(n,"label")&&Object.prototype.hasOwnProperty.call(n,"options")&&Object.prototype.hasOwnProperty.call(n,"selected"))},showExport:{type:Boolean,default:!1},showAdd:{type:Boolean,default:!1},addButton:{type:Object,default:()=>({})},showTableInfo:{type:Boolean,default:!0},showSearch:{type:Boolean,default:!0},showFilters:{type:Boolean,default:!0},totalItems:{type:Number,default:0},itemLabel:{type:String,default:"items"},variant:{type:String,default:"default",validator:t=>["default","minimal","bordered"].includes(t)},padding:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)}},emits:["update:searchQuery","update:selectedStatus","update:dateFrom","update:dateTo","update:dateFilters","update:selectFilters","update:numberFilters","update:multiSelectFilters","export","add","clear-filters","add-button-click"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(!1),s=e.computed(()=>Object.keys(a.addButton).length>0),l=e.computed(()=>s.value?a.addButton.visible&&typeof a.addButton.visible=="function"?a.addButton.visible():!0:a.showAdd),c=e.computed(()=>s.value&&a.addButton.permission&&typeof a.addButton.permission=="function"?a.addButton.permission():!0),m=e.computed(()=>s.value&&a.addButton.disabled&&typeof a.addButton.disabled=="function"?a.addButton.disabled():!1),f=()=>{m.value||!c.value||(o("add"),o("add-button-click",a.addButton),a.addButton.onClick&&typeof a.addButton.onClick=="function"&&a.addButton.onClick())},p=z.cva("flex flex-wrap items-center gap-4",{variants:{variant:{default:"bg-white",minimal:"bg-transparent",bordered:"bg-gray-50"},padding:{compact:"px-4 py-3",normal:"px-6 py-4",comfortable:"px-8 py-6"}},defaultVariants:{variant:"default",padding:"normal"}}),v=z.cva("border border-gray-200 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent transition-all text-sm",{variants:{size:{sm:"px-2 py-1.5",md:"px-3 py-2.5",lg:"px-4 py-3"}},defaultVariants:{size:"md"}}),B=z.cva("rounded-lg flex items-center font-medium transition-all",{variants:{variant:{default:"text-gray-700 hover:text-gray-900 border border-gray-200 hover:bg-gray-50 hover:border-gray-300 bg-white",primary:"text-white bg-blue-600 hover:bg-blue-700 border border-blue-600 shadow-sm",success:"text-white bg-green-600 hover:bg-green-700 border border-green-600 shadow-sm",ghost:"text-gray-600 hover:text-gray-800 hover:bg-gray-100"},size:{sm:"px-2 py-1.5 text-xs",md:"px-3 py-2 text-sm",lg:"px-4 py-2.5 text-sm"}},defaultVariants:{variant:"default",size:"md"}}),h=(T,C)=>{const w=a.selectFilters.map(A=>A.key===T?{...A,value:C}:A);o("update:selectFilters",w)},k=T=>!!(T.from||T.to),g=T=>{const C=a.dateFilters.map(w=>w.key===T?{...w,from:"",to:""}:w);o("update:dateFilters",C)},d=T=>`text-xs px-2 py-1 rounded ${k(T)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,u=(T,C,w)=>{const A=a.dateFilters.map(H=>H.key===T?{...H,[C]:w}:H);o("update:dateFilters",A)},i=T=>!!(T.min||T.max),b=T=>{const C=a.numberFilters.map(w=>w.key===T?{...w,min:"",max:""}:w);o("update:numberFilters",C)},E=T=>`text-xs px-2 py-1 rounded ${i(T)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,V=(T,C,w)=>{const A=a.numberFilters.map(H=>H.key===T?{...H,[C]:w}:H);o("update:numberFilters",A)},F=T=>T.selected&&T.selected.length>0,I=T=>`text-xs px-2 py-1 rounded ${F(T)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,W=(T,C)=>{if(!C)return;const w=a.multiSelectFilters.map(A=>{if(A.key===T){const H=A.selected||[],Te=H.includes(C);return{...A,selected:Te?H.filter(gt=>gt!==C):[...H,C]}}return A});o("update:multiSelectFilters",w)},_=(T,C)=>{const w=a.multiSelectFilters.map(A=>A.key===T?{...A,selected:A.selected.filter(H=>H!==C)}:A);o("update:multiSelectFilters",w)},S=(T,C)=>{const w=T.options.find(A=>A.value===C);return w?w.label:C},O=()=>{r.value=!r.value},L=e.computed(()=>a.numberFilters.length>0||a.multiSelectFilters.length>0),x=e.computed(()=>{const T=a.searchQuery,C=a.selectedStatus,w=a.dateFrom||a.dateTo,A=a.selectFilters.some(ie=>ie.value),H=a.dateFilters.some(ie=>ie.from||ie.to),Te=a.numberFilters.some(ie=>ie.min||ie.max),gt=a.multiSelectFilters.some(ie=>ie.selected&&ie.selected.length>0);return T||C||w||A||H||Te||gt}),N=e.computed(()=>{let T=0;return a.searchQuery&&T++,a.selectedStatus&&T++,(a.dateFrom||a.dateTo)&&T++,T+=a.selectFilters.filter(C=>C.value).length,T+=a.dateFilters.filter(C=>C.from||C.to).length,T+=a.numberFilters.filter(C=>C.min||C.max).length,T+=a.multiSelectFilters.filter(C=>C.selected&&C.selected.length>0).length,T}),P=e.computed(()=>{const T=[];if(a.searchQuery&&a.searchQuery.trim()&&T.push({key:"search",label:"Search",value:`"${a.searchQuery}"`,icon:"magnifying-glass"}),a.selectedStatus){const C=a.statusOptions.find(w=>w.value===a.selectedStatus);T.push({key:"status",label:"Status",value:C?.label||a.selectedStatus,icon:"filter"})}if(a.selectFilters.forEach(C=>{if(C.value){const w=C.options.find(A=>A.value===C.value);T.push({key:`select-${C.key}`,label:C.label,value:w?.label||C.value,icon:"filter"})}}),a.dateFrom||a.dateTo){let C="";a.dateFrom&&a.dateTo?C=`${a.dateFrom} to ${a.dateTo}`:a.dateFrom?C=`From ${a.dateFrom}`:a.dateTo&&(C=`Until ${a.dateTo}`),C&&T.push({key:"date",label:"Date Range",value:C,icon:"calendar"})}return a.dateFilters.forEach(C=>{if(C.from||C.to){let w="";C.from&&C.to?w=`${C.from} to ${C.to}`:C.from?w=`From ${C.from}`:C.to&&(w=`Until ${C.to}`),w&&T.push({key:`date-${C.key}`,label:C.label,value:w,icon:"calendar"})}}),a.numberFilters.forEach(C=>{if(C.min||C.max){let w="";C.min&&C.max?w=`${C.min} to ${C.max}`:C.min?w=`Min ${C.min}`:C.max&&(w=`Max ${C.max}`),w&&T.push({key:`number-${C.key}`,label:C.label,value:w,icon:"hashtag"})}}),a.multiSelectFilters.forEach(C=>{if(C.selected&&C.selected.length>0){const w=C.selected.map(A=>{const H=C.options.find(Te=>Te.value===A);return H?H.label:A});T.push({key:`multi-${C.key}`,label:C.label,value:w.join(", "),icon:"list"})}}),T}),Y=e.computed(()=>y(p({variant:a.variant,padding:a.padding}))),U=e.computed(()=>"absolute left-3 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400 group-hover:text-gray-600 transition-colors"),ne=e.computed(()=>y(v({size:"md"}),"w-full pl-10 pr-10 hover:border-gray-300")),ut=e.computed(()=>"absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-400 hover:text-gray-600 p-1 hover:bg-gray-100 rounded-full transition-all"),$e=e.computed(()=>y(v({size:"md"}),"w-full pr-8 appearance-none hover:border-gray-300")),mt=e.computed(()=>{const T=r.value||x.value;return y(B({variant:T?"primary":"default",size:"lg"}),"gap-2")}),ft=e.computed(()=>"bg-white text-blue-600 text-xs px-1.5 py-0.5 rounded-full min-w-[20px] text-center font-semibold"),qe=e.computed(()=>"px-6 py-4 border-t border-gray-100 bg-gray-50"),ye=e.computed(()=>y(v({size:"md"}),"pl-10 pr-3")),ze=e.computed(()=>"text-sm font-semibold text-gray-700"),De=e.computed(()=>"text-gray-500 text-sm font-medium"),D=e.computed(()=>"text-gray-400 hover:text-gray-600 p-1.5 hover:bg-gray-200 rounded-full transition-all"),R=e.computed(()=>y(B({variant:"ghost",size:"md"}))),G=e.computed(()=>y(B({variant:"default",size:"lg"}))),ee=e.computed(()=>"px-6 py-3 bg-blue-50 border-t border-blue-100"),te=e.computed(()=>"text-sm font-semibold text-blue-800"),X=e.computed(()=>"flex items-center gap-1.5 bg-white border border-blue-200 text-blue-800 px-3 py-1.5 rounded-full text-sm font-medium"),ia=e.computed(()=>"text-blue-600 hover:text-blue-800 ml-1 hover:bg-blue-100 rounded-full p-0.5 transition-all"),Ko=()=>{o("update:searchQuery",""),o("update:selectedStatus",""),o("update:dateFrom",""),o("update:dateTo","");const T=a.selectFilters.map(H=>({...H,value:""}));o("update:selectFilters",T);const C=a.dateFilters.map(H=>({...H,from:"",to:""}));o("update:dateFilters",C);const w=a.numberFilters.map(H=>({...H,min:"",max:""}));o("update:numberFilters",w);const A=a.multiSelectFilters.map(H=>({...H,selected:[]}));o("update:multiSelectFilters",A),o("clear-filters")},Xo=T=>{switch(T){case"search":o("update:searchQuery","");break;case"status":o("update:selectedStatus","");break;case"date":o("update:dateFrom",""),o("update:dateTo","");break;default:if(T.startsWith("select-")){const C=T.replace("select-",""),w=a.selectFilters.map(A=>A.key===C?{...A,value:""}:A);o("update:selectFilters",w)}else if(T.startsWith("date-")){const C=T.replace("date-",""),w=a.dateFilters.map(A=>A.key===C?{...A,from:"",to:""}:A);o("update:dateFilters",w)}else if(T.startsWith("number-")){const C=T.replace("number-",""),w=a.numberFilters.map(A=>A.key===C?{...A,min:"",max:""}:A);o("update:numberFilters",w)}else if(T.startsWith("multi-")){const C=T.replace("multi-",""),w=a.multiSelectFilters.map(A=>A.key===C?{...A,selected:[]}:A);o("update:multiSelectFilters",w)}break}};return(T,C)=>(e.openBlock(),e.createElementBlock("div",Rm,[e.createElementVNode("div",{class:e.normalizeClass(Y.value)},[t.showSearch?(e.openBlock(),e.createElementBlock("div",_m,[e.createElementVNode("div",Um,[e.createVNode(j,{icon:"magnifying-glass",class:e.normalizeClass(U.value)},null,8,["class"]),e.createElementVNode("input",{"model-value":t.searchQuery,placeholder:t.searchPlaceholder,class:e.normalizeClass(ne.value),onInput:C[0]||(C[0]=w=>T.$emit("update:searchQuery",w.target.value))},null,42,qm),t.searchQuery?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(ut.value),onClick:C[1]||(C[1]=w=>T.$emit("update:searchQuery",""))},[e.createVNode(j,{icon:"xmark",class:"w-3 h-3"})],2)):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.selectFilters,w=>(e.openBlock(),e.createElementBlock("div",{key:w.key,class:"min-w-36"},[e.createElementVNode("div",Wm,[e.createVNode(ue,{"model-value":w.value,class:e.normalizeClass($e.value),onChange:A=>h(w.key,A.target.value)},{default:e.withCtx(()=>[e.createElementVNode("option",Ym,e.toDisplayString(w.placeholder||`All ${w.label}`),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.options,A=>(e.openBlock(),e.createElementBlock("option",{key:A.value,value:A.value},e.toDisplayString(A.label),9,Hm))),128))]),_:2},1032,["model-value","class","onChange"]),e.createVNode(j,{icon:"chevron-down",class:"absolute right-2 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400 pointer-events-none"})])]))),128)),t.showFilters&&t.statusOptions.length>0?(e.openBlock(),e.createElementBlock("div",Gm,[e.createElementVNode("div",Km,[e.createVNode(ue,{"model-value":t.selectedStatus,class:e.normalizeClass($e.value),onChange:C[2]||(C[2]=w=>T.$emit("update:selectedStatus",w.target.value))},{default:e.withCtx(()=>[C[5]||(C[5]=e.createElementVNode("option",{value:""}," All Status ",-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.statusOptions,w=>(e.openBlock(),e.createElementBlock("option",{key:w.value,value:w.value},e.toDisplayString(w.label),9,Xm))),128))]),_:1},8,["model-value","class"]),e.createVNode(j,{icon:"chevron-down",class:"absolute right-2 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400 pointer-events-none"})])])):e.createCommentVNode("",!0),t.showFilters&&(t.dateFilters.length>0||L.value)?(e.openBlock(),e.createElementBlock("button",{key:2,class:e.normalizeClass(mt.value),onClick:O},[e.createVNode(j,{icon:"filter",class:"w-4 h-4"}),C[6]||(C[6]=e.createTextVNode(" Filters ",-1)),N.value>0?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(ft.value)},e.toDisplayString(N.value),3)):e.createCommentVNode("",!0),e.createVNode(j,{icon:r.value?"chevron-up":"chevron-down",class:"w-4 h-4 ml-1"},null,8,["icon"])],2)):e.createCommentVNode("",!0),T.$slots.filters?(e.openBlock(),e.createElementBlock("div",Jm,[e.renderSlot(T.$slots,"filters")])):e.createCommentVNode("",!0),e.createElementVNode("div",Qm,[x.value?(e.openBlock(),e.createBlock(Z,{key:0,class:e.normalizeClass(R.value),onClick:Ko},{default:e.withCtx(()=>[e.createVNode(j,{icon:"rotate-left",class:"w-4 h-4 mr-2"}),C[7]||(C[7]=e.createTextVNode(" Clear All ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showExport?(e.openBlock(),e.createBlock(Z,{key:1,class:e.normalizeClass(G.value),onClick:C[3]||(C[3]=w=>T.$emit("export"))},{default:e.withCtx(()=>[e.createVNode(j,{icon:"download",class:"w-4 h-4 mr-2"}),C[8]||(C[8]=e.createTextVNode(" Export ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showAdd&&l.value?(e.openBlock(),e.createElementBlock("div",Zm,[s.value?(e.openBlock(),e.createBlock(Z,{key:0,variant:t.addButton.variant||"success",size:t.addButton.size||"lg",disabled:m.value||!c.value,title:t.addButton.tooltip,onClick:f},{default:e.withCtx(()=>[t.addButton.icon?(e.openBlock(),e.createBlock(j,{key:0,icon:t.addButton.icon,class:"w-4 h-4 mr-2"},null,8,["icon"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(t.addButton.label||"Add"),1)]),_:1},8,["variant","size","disabled","title"])):e.renderSlot(T.$slots,"add",{key:1},()=>[e.createVNode(Z,{variant:"success",size:"lg",onClick:C[4]||(C[4]=w=>T.$emit("add"))},{default:e.withCtx(()=>[e.createVNode(j,{icon:"plus",class:"w-4 h-4 mr-2"}),C[9]||(C[9]=e.createTextVNode(" Add ",-1))]),_:1})])])):e.createCommentVNode("",!0)])],2),t.showFilters&&r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(qe.value)},[e.createElementVNode("div",ef,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.dateFilters,w=>(e.openBlock(),e.createElementBlock("div",{key:w.key,class:"space-y-3"},[e.createElementVNode("div",tf,[e.createElementVNode("label",{class:e.normalizeClass(ze.value)},e.toDisplayString(w.label),3),e.createElementVNode("span",{class:e.normalizeClass(d(w))},e.toDisplayString(k(w)?"Active":"Inactive"),3)]),e.createElementVNode("div",af,[e.createElementVNode("div",nf,[e.createVNode(j,{icon:"calendar",class:"absolute left-3 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400"}),e.createElementVNode("input",{type:"date","model-value":w.from,class:e.normalizeClass(ye.value),placeholder:`From ${w.label}`,onInput:A=>u(w.key,"from",A.target.value)},null,42,of)]),e.createElementVNode("span",{class:e.normalizeClass(De.value)},"to",2),e.createElementVNode("div",rf,[e.createVNode(j,{icon:"calendar",class:"absolute left-3 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400"}),e.createElementVNode("input",{type:"date","model-value":w.to,class:e.normalizeClass(ye.value),placeholder:`To ${w.label}`,onInput:A=>u(w.key,"to",A.target.value)},null,42,lf)]),k(w)?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(D.value),title:"Clear this filter",onClick:A=>g(w.key)},[e.createVNode(j,{icon:"xmark",class:"w-4 h-4"})],10,sf)):e.createCommentVNode("",!0)])]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.numberFilters,w=>(e.openBlock(),e.createElementBlock("div",{key:w.key,class:"space-y-3"},[e.createElementVNode("div",cf,[e.createElementVNode("label",{class:e.normalizeClass(ze.value)},e.toDisplayString(w.label),3),e.createElementVNode("span",{class:e.normalizeClass(E(w))},e.toDisplayString(i(w)?"Active":"Inactive"),3)]),e.createElementVNode("div",df,[e.createElementVNode("div",uf,[e.createElementVNode("input",{type:"number","model-value":w.min,class:e.normalizeClass(ye.value),placeholder:`Min ${w.label}`,step:w.step||1,onInput:A=>V(w.key,"min",A.target.value)},null,42,mf)]),e.createElementVNode("span",{class:e.normalizeClass(De.value)},"to",2),e.createElementVNode("div",ff,[e.createElementVNode("input",{type:"number","model-value":w.max,class:e.normalizeClass(ye.value),placeholder:`Max ${w.label}`,step:w.step||1,onInput:A=>V(w.key,"max",A.target.value)},null,42,gf)]),i(w)?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(D.value),title:"Clear this filter",onClick:A=>b(w.key)},[e.createVNode(j,{icon:"xmark",class:"w-4 h-4"})],10,pf)):e.createCommentVNode("",!0)])]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.multiSelectFilters,w=>(e.openBlock(),e.createElementBlock("div",{key:w.key,class:"space-y-3"},[e.createElementVNode("div",vf,[e.createElementVNode("label",{class:e.normalizeClass(ze.value)},e.toDisplayString(w.label),3),e.createElementVNode("span",{class:e.normalizeClass(I(w))},e.toDisplayString(F(w)?`${w.selected.length} selected`:"None"),3)]),e.createElementVNode("div",hf,[e.createVNode(ue,{"model-value":"",class:e.normalizeClass($e.value),onChange:A=>W(w.key,A.target.value)},{default:e.withCtx(()=>[e.createElementVNode("option",bf," Select "+e.toDisplayString(w.label),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.options,A=>(e.openBlock(),e.createElementBlock("option",{key:A.value,value:A.value},e.toDisplayString(A.label),9,yf))),128))]),_:2},1032,["class","onChange"]),e.createVNode(j,{icon:"chevron-down",class:"absolute right-2 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400 pointer-events-none"})]),w.selected.length>0?(e.openBlock(),e.createElementBlock("div",xf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.selected,A=>(e.openBlock(),e.createElementBlock("span",{key:A,class:"inline-flex items-center gap-1 bg-blue-100 text-blue-800 text-xs px-2 py-1 rounded-full"},[e.createTextVNode(e.toDisplayString(S(w,A))+" ",1),e.createElementVNode("button",{class:"hover:bg-blue-200 rounded-full p-0.5",onClick:H=>_(w.key,A)},[e.createVNode(j,{icon:"xmark",class:"w-3 h-3"})],8,kf)]))),128))])):e.createCommentVNode("",!0)]))),128))])],2)):e.createCommentVNode("",!0),t.showFilters&&P.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(ee.value)},[e.createElementVNode("div",wf,[e.createElementVNode("span",{class:e.normalizeClass(te.value)},"Active filters:",2),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(P.value,w=>(e.openBlock(),e.createElementBlock("div",{key:w.key,class:e.normalizeClass(X.value)},[e.createVNode(j,{icon:w.icon,class:"w-3 h-3"},null,8,["icon"]),e.createElementVNode("span",null,e.toDisplayString(w.label)+": "+e.toDisplayString(w.value),1),e.createElementVNode("button",{class:e.normalizeClass(ia.value),onClick:A=>Xo(w.key)},[e.createVNode(j,{icon:"xmark",class:"w-3 h-3"})],10,Cf)],2))),128))])],2)):e.createCommentVNode("",!0),t.showTableInfo?(e.openBlock(),e.createElementBlock("div",Bf,[e.createElementVNode("div",Sf,[e.createElementVNode("div",Vf,[e.createElementVNode("span",Ef,[e.createElementVNode("span",Nf,e.toDisplayString(t.totalItems||0),1),e.createTextVNode(" "+e.toDisplayString(t.itemLabel||"items")+" found ",1)])])])])):e.createCommentVNode("",!0)]))}},$f={class:"flex items-center gap-3"},zf={key:0,class:"flex items-center gap-3"},Df={class:"text-sm text-slate-600"},Tf={class:"flex items-center gap-2"},Af={class:"flex items-center gap-3"},Ff=["title","onClick"],Pf={key:1,class:"relative"},If={class:"p-3"},jf={class:"space-y-1"},Lf={class:"flex items-center gap-2 cursor-pointer w-full"},Of=["checked","onChange"],Mf=["disabled"],Rf={key:3,class:"flex items-center gap-2"},_f=[{key:"delete",label:"Delete",icon:{template:'<svg fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0" /></svg>'},variant:"danger"},{key:"edit",label:"Edit",icon:{template:'<svg fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="m16.862 4.487 1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L10.582 16.07a4.5 4.5 0 0 1-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 0 1 1.13-1.897l8.932-8.931Zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0 1 15.75 21H5.25A2.25 2.25 0 0 1 3 18.75V8.25A2.25 2.25 0 0 1 5.25 6H10" /></svg>'},variant:"primary"}],Uf={name:"DataTableToolBar"},Oo=Object.assign(Uf,{props:{selectedItems:{type:Array,default:()=>[]},totalItems:{type:Number,default:0},bulkActions:{type:Array,default:()=>_f},showDensityToggle:{type:Boolean,default:!0},showColumnToggle:{type:Boolean,default:!0},showRefresh:{type:Boolean,default:!0},isRefreshing:{type:Boolean,default:!1},density:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)},toggleableColumns:{type:Array,default:()=>[]},visibleColumns:{type:Array,default:()=>[]},variant:{type:String,default:"default",validator:t=>["default","minimal","bordered"].includes(t)},padding:{type:String,default:"normal",validator:t=>["compact","normal","comfortable"].includes(t)}},emits:["bulk-action","update:density","toggle-column","refresh"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(!1),s=e.ref(null),l=e.ref(null),c=e.computed(()=>a.selectedItems.length),m=[{value:"compact",label:"Compact",icon:["fas","minus"]},{value:"normal",label:"Normal",icon:["fas","bars"]},{value:"comfortable",label:"Comfortable",icon:["fas","bars-staggered"]}],f=z.cva("flex items-center justify-between border-b border-slate-200",{variants:{variant:{default:"bg-white",minimal:"bg-transparent border-slate-100",bordered:"bg-slate-50 border-slate-300"},padding:{compact:"p-2",normal:"p-4",comfortable:"p-6"}},defaultVariants:{variant:"default",padding:"normal"}}),p=z.cva("px-3 py-1.5 text-sm font-medium rounded-md flex items-center gap-1 transition-colors",{variants:{variant:{danger:"text-red-700 bg-red-500 hover:bg-red-400 border border-red-200",primary:"text-blue-700 bg-blue-50 hover:bg-blue-100 border border-blue-200",secondary:"text-slate-700 bg-slate-500 hover:bg-slate-400 border border-slate-200"}},defaultVariants:{variant:"secondary"}}),v=z.cva("p-2 border border-slate-300 transition-colors",{variants:{active:{true:"bg-blue-50 text-blue-600 border-blue-300",false:"bg-white text-slate-600 hover:bg-slate-50"},position:{first:"rounded-l-md border-r-0",middle:"border-x-0",last:"rounded-r-md border-l-0"}},defaultVariants:{active:!1,position:"middle"}}),B=z.cva("px-3 py-2 text-sm border border-slate-300 rounded-md flex items-center gap-2 transition-colors",{variants:{state:{normal:"text-slate-600 hover:text-slate-800 hover:bg-slate-50",refreshing:"text-slate-600 opacity-75 cursor-not-allowed"}},defaultVariants:{state:"normal"}}),h=e.computed(()=>y(f({variant:a.variant,padding:a.padding}))),k=e.computed(()=>"text-sm text-slate-600"),g=e.computed(()=>"flex items-center"),d=e.computed(()=>"flex items-center gap-2 px-3 py-2 text-sm text-slate-600 hover:text-slate-800 border border-slate-300 rounded-md hover:bg-slate-50 transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-1"),u=e.computed(()=>"absolute right-0 top-full mt-1 w-56 bg-white border border-slate-200 rounded-lg shadow-lg z-50 max-h-64 overflow-y-auto"),i=e.computed(()=>"text-xs font-medium text-slate-500 uppercase tracking-wider mb-2 border-b border-slate-100 pb-2"),b=e.computed(()=>"py-1 hover:bg-slate-50 rounded transition-colors"),E=e.computed(()=>"w-4 h-4 rounded border-slate-300 text-blue-600 focus:ring-blue-500 focus:ring-2 focus:ring-offset-1"),V=e.computed(()=>"text-sm text-slate-700 flex-1 select-none"),F=N=>{s.value&&l.value&&!s.value.contains(N.target)&&!l.value.contains(N.target)&&(r.value=!1)},I=()=>{r.value=!r.value},W=N=>y(p({variant:N.variant||"secondary"})),_=N=>{let P="middle";return N==="compact"?P="first":N==="comfortable"&&(P="last"),y(v({active:a.density===N,position:P}))},S=()=>y(B({state:a.isRefreshing?"refreshing":"normal"})),O=()=>y("w-4 h-4",{"animate-spin":a.isRefreshing}),L=N=>a.visibleColumns.includes(N),x=(N,P)=>{o("toggle-column",{column:N,visible:P})};return e.onMounted(()=>{document.addEventListener("click",F)}),e.onUnmounted(()=>{document.removeEventListener("click",F)}),(N,P)=>{const Y=e.resolveComponent("font-awesome-icon");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(h.value)},[e.createElementVNode("div",$f,[c.value>0?(e.openBlock(),e.createElementBlock("div",zf,[e.createElementVNode("span",Df,e.toDisplayString(c.value)+" selected ",1),e.createElementVNode("div",Tf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.bulkActions,U=>(e.openBlock(),e.createBlock(Z,{key:U.key,class:e.normalizeClass(W(U)),onClick:ne=>N.$emit("bulk-action",{action:U.key,items:t.selectedItems})},{default:e.withCtx(()=>[U.icon?(e.openBlock(),e.createBlock(Y,{key:0,icon:U.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(U.label),1)]),_:2},1032,["class","onClick"]))),128))])])):t.totalItems>0?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(k.value)},e.toDisplayString(t.totalItems)+" "+e.toDisplayString(t.totalItems===1?"item":"items"),3)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Af,[t.showDensityToggle?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(g.value)},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(m,U=>e.createElementVNode("button",{key:U.value,class:e.normalizeClass(_(U.value)),title:U.label,type:"button",onClick:ne=>N.$emit("update:density",U.value)},[e.createVNode(Y,{icon:U.icon,class:"w-4 h-4"},null,8,["icon"])],10,Ff)),64))],2)):e.createCommentVNode("",!0),t.showColumnToggle?(e.openBlock(),e.createElementBlock("div",Pf,[e.createElementVNode("button",{ref_key:"columnToggleButton",ref:s,class:e.normalizeClass(d.value),type:"button",onClick:e.withModifiers(I,["stop"])},[e.createVNode(Y,{icon:"columns",class:"w-4 h-4"}),P[2]||(P[2]=e.createElementVNode("span",null,"Columns",-1))],2),e.withDirectives(e.createElementVNode("div",{ref_key:"columnMenu",ref:l,class:e.normalizeClass(u.value),onClick:P[0]||(P[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",If,[e.createElementVNode("div",{class:e.normalizeClass(i.value)}," Show Columns ",2),e.createElementVNode("div",jf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.toggleableColumns,U=>(e.openBlock(),e.createElementBlock("div",{key:U.key,class:e.normalizeClass(b.value)},[e.createElementVNode("label",Lf,[e.createElementVNode("input",{type:"checkbox",checked:L(U.key),class:e.normalizeClass(E.value),onChange:ne=>x(U.key,ne.target.checked)},null,42,Of),e.createElementVNode("span",{class:e.normalizeClass(V.value)},e.toDisplayString(U.label),3)])],2))),128))])])],2),[[e.vShow,r.value]])])):e.createCommentVNode("",!0),t.showRefresh?(e.openBlock(),e.createElementBlock("button",{key:2,disabled:t.isRefreshing,class:e.normalizeClass(S()),type:"button",onClick:P[1]||(P[1]=U=>N.$emit("refresh"))},[e.createVNode(Y,{icon:"sync",class:e.normalizeClass(O())},null,8,["class"]),P[3]||(P[3]=e.createElementVNode("span",null,"Refresh",-1))],10,Mf)):e.createCommentVNode("",!0),N.$slots.actions?(e.openBlock(),e.createElementBlock("div",Rf,[e.renderSlot(N.$slots,"actions")])):e.createCommentVNode("",!0)])],2)}}}),qf={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-12"},Wf={class:"grid grid-cols-1 md:grid-cols-4 gap-8"},Yf={class:"col-span-1 md:col-span-2"},Hf={class:"space-y-2"},Gf={class:"flex space-x-4"},Kf={class:"flex flex-col md:flex-row justify-between items-center"},Xf={class:"flex space-x-6 mt-4 md:mt-0"},Mo={__name:"Footer",props:{className:{type:String,default:""}},setup(t){return(n,a)=>{const o=e.resolveComponent("Logo"),r=e.resolveComponent("Text"),s=e.resolveComponent("Typography"),l=e.resolveComponent("Link"),c=e.resolveComponent("Icon"),m=e.resolveComponent("Divider");return e.openBlock(),e.createElementBlock("footer",{class:e.normalizeClass(e.unref(y)("bg-gray-50 border-t border-gray-200",t.className))},[e.createElementVNode("div",qf,[e.createElementVNode("div",Wf,[e.createElementVNode("div",Yf,[e.renderSlot(n.$slots,"brand",{},()=>[e.createVNode(o,{class:"mb-4"}),e.createVNode(r,{class:"text-gray-600 max-w-md"},{default:e.withCtx(()=>[...a[0]||(a[0]=[e.createTextVNode(" Building beautiful applications with modern Vue.js components. ",-1)])]),_:1})])]),e.createElementVNode("div",null,[e.renderSlot(n.$slots,"links",{},()=>[e.createVNode(s,{variant:"h6",class:"mb-4"},{default:e.withCtx(()=>[...a[1]||(a[1]=[e.createTextVNode(" Quick Links ",-1)])]),_:1}),e.createElementVNode("div",Hf,[e.createVNode(l,{href:"#",class:"block text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[2]||(a[2]=[e.createTextVNode(" About ",-1)])]),_:1}),e.createVNode(l,{href:"#",class:"block text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[3]||(a[3]=[e.createTextVNode(" Services ",-1)])]),_:1}),e.createVNode(l,{href:"#",class:"block text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[4]||(a[4]=[e.createTextVNode(" Contact ",-1)])]),_:1})])])]),e.createElementVNode("div",null,[e.renderSlot(n.$slots,"social",{},()=>[e.createVNode(s,{variant:"h6",class:"mb-4"},{default:e.withCtx(()=>[...a[5]||(a[5]=[e.createTextVNode(" Follow Us ",-1)])]),_:1}),e.createElementVNode("div",Gf,[e.createVNode(l,{href:"#",class:"text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[e.createVNode(c,{name:"twitter",class:"h-5 w-5"})]),_:1}),e.createVNode(l,{href:"#",class:"text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[e.createVNode(c,{name:"github",class:"h-5 w-5"})]),_:1})])])])]),e.createVNode(m,{class:"my-8"}),e.createElementVNode("div",Kf,[e.renderSlot(n.$slots,"copyright",{},()=>[e.createVNode(r,{class:"text-gray-600"},{default:e.withCtx(()=>[e.createTextVNode(" © "+e.toDisplayString(new Date().getFullYear())+" Your Company. All rights reserved. ",1)]),_:1})]),e.renderSlot(n.$slots,"legal",{},()=>[e.createElementVNode("div",Xf,[e.createVNode(l,{href:"#",class:"text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[6]||(a[6]=[e.createTextVNode(" Privacy ",-1)])]),_:1}),e.createVNode(l,{href:"#",class:"text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[7]||(a[7]=[e.createTextVNode(" Terms ",-1)])]),_:1})])])])])],2)}}},Jf={class:"flex items-center justify-between h-16 px-4 md:px-6"},Qf={class:"flex items-center"},Zf={key:0,class:"mr-4 flex-shrink-0 bg-gradient-to-r from-blue-50 to-indigo-50 px-3 py-2 rounded-lg border border-blue-100"},eg={class:"text-lg font-bold text-blue-900 truncate max-w-[200px]"},tg={key:0,class:"text-xs text-blue-600 truncate font-medium"},ag={class:"hidden md:flex items-center space-x-2 text-sm truncate"},ng={class:"text-gray-500 truncate"},og={class:"text-gray-900 font-medium truncate"},rg={class:"flex items-center space-x-3 md:space-x-4"},lg={key:1,class:"relative"},sg={key:0,class:"absolute -top-1 -right-1 w-4 h-4 bg-red-500 text-white text-xs rounded-full flex items-center justify-center"},ig={key:0,class:"absolute right-4 md:right-6 top-16 mt-2 w-72 md:w-80 bg-white rounded-lg shadow-lg border border-gray-200 z-50"},cg={class:"max-h-96 overflow-y-auto"},dg={class:"flex items-start space-x-3"},ug={class:"flex-1"},mg={class:"text-sm text-gray-900"},fg={class:"text-xs text-gray-500 mt-1"},gg={class:"relative"},pg={class:"w-8 h-8 bg-gradient-to-br from-blue-100 to-indigo-100 rounded-full flex items-center justify-center transition-colors shadow-sm"},vg={class:"text-blue-700 text-sm font-medium"},hg={class:"hidden md:block text-left max-w-[160px] truncate"},bg={class:"text-sm font-medium text-gray-900 truncate"},yg={class:"text-xs text-gray-500 truncate leading-tight"},xg={key:0,class:"absolute right-0 mt-2 w-58 bg-white rounded-lg shadow-lg border border-gray-200 z-50"},kg={class:"p-4 border-b border-gray-200"},wg={class:"text-sm font-medium text-gray-900"},Cg={class:"text-xs text-gray-500"},Bg={class:"py-2"},Sg={key:0,class:"absolute left-0 top-1/2 transform -translate-y-1/2 w-1 h-8 bg-gradient-to-b from-blue-500 to-blue-600 rounded-r-full"},Vg=["onClick"],Eg={class:"flex items-center justify-center w-8 h-8 rounded-lg mr-3 flex-shrink-0 transition-colors ml-2 bg-gray-100 text-gray-600 group-hover:bg-gray-200"},Ng={class:"flex-1 truncate font-semibold text-gray-700"},Ro={__name:"Header",props:{sidebarWidth:{type:Number,default:256},currentSection:{type:String,default:"Dashboard"},currentPage:{type:String,default:"Overview"},currentRoute:{type:String,default:""},user:{type:Object,required:!0},notifications:{type:Array,default:()=>[]},profileMenuItems:{type:Array,required:!0},mobileOpen:{type:Boolean,default:!1},currentOrganisation:{type:Object,default:null},companyLogo:{type:String,default:""}},emits:["search","profile-action","logout","navigate","toggle-mobile-sidebar"],setup(t,{emit:n}){const a=t,o=n,r=e.ref(""),s=e.ref(!1),l=e.ref(!1),c=e.ref(a.notifications.length),m=e.ref(!1),f=e.ref(!1),p=e.computed(()=>(a.user?.name||"Guest").split(" ").map(V=>V[0]||"").join("").toUpperCase()),v=e.computed(()=>a.user?.roles?.length?a.user.roles.map(E=>E.name).join(", "):"No role"),B=()=>{s.value=!s.value,l.value=!1},h=()=>{l.value=!l.value,s.value=!1},k=E=>{o("navigate",E),l.value=!1},g=E=>E.route?!!(a.currentRoute===E.route||a.currentRoute.startsWith(E.route+"/")):!1,d=E=>{o("profile-action",E),l.value=!1},u=()=>{o("logout"),l.value=!1},i=E=>{!E.target.closest(".absolute")&&!E.target.closest("button")&&(s.value=!1,l.value=!1)},b=()=>{f.value=window.innerWidth<768};return e.onMounted(()=>{document.addEventListener("click",i),b(),window.addEventListener("resize",b)}),e.onUnmounted(()=>{document.removeEventListener("click",i),window.removeEventListener("resize",b)}),e.watch(r,E=>o("search",E)),(E,V)=>{const F=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("header",{class:e.normalizeClass(e.unref(y)("fixed top-0 z-50 bg-white border-b border-gray-200 transition-all duration-300 ease-in-out w-full")),style:{left:"0"}},[e.createElementVNode("div",Jf,[e.createElementVNode("div",Qf,[t.currentOrganisation?(e.openBlock(),e.createElementBlock("div",Zf,[e.createElementVNode("p",eg,e.toDisplayString(t.currentOrganisation.organisation_name),1),t.currentOrganisation.role?(e.openBlock(),e.createElementBlock("p",tg,e.toDisplayString(t.currentOrganisation.role),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("nav",ag,[e.createElementVNode("span",ng,e.toDisplayString(t.currentSection),1),V[4]||(V[4]=e.createElementVNode("svg",{class:"w-4 h-4 text-gray-400 flex-shrink-0",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 5l7 7-7 7"})],-1)),e.createElementVNode("span",og,e.toDisplayString(t.currentPage),1)])]),e.createElementVNode("div",rg,[f.value?(e.openBlock(),e.createElementBlock("button",{key:0,class:"p-2 text-gray-400 hover:text-gray-600 rounded-lg hover:bg-gray-50 transition-colors",onClick:V[0]||(V[0]=I=>o("toggle-mobile-sidebar"))},[...V[5]||(V[5]=[e.createElementVNode("svg",{class:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 6h16M4 12h16M4 18h16"})],-1)])])):e.createCommentVNode("",!0),!f.value||m.value?(e.openBlock(),e.createElementBlock("div",lg,[V[6]||(V[6]=e.createElementVNode("div",{class:"absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none"},[e.createElementVNode("svg",{class:"w-4 h-4 text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"})])],-1)),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":V[1]||(V[1]=I=>r.value=I),type:"text",placeholder:"Search...",class:"pl-10 pr-4 py-2 w-48 md:w-64 text-sm border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-blue-500 outline-none"},null,512),[[e.vModelText,r.value]]),f.value?(e.openBlock(),e.createElementBlock("button",{key:0,class:"absolute right-2 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600",onClick:V[2]||(V[2]=I=>m.value=!1)}," ✕ ")):e.createCommentVNode("",!0)])):f.value?(e.openBlock(),e.createElementBlock("button",{key:2,class:"p-2 text-gray-400 hover:text-gray-600 rounded-lg hover:bg-gray-50 transition-colors",onClick:V[3]||(V[3]=I=>m.value=!0)},[...V[7]||(V[7]=[e.createElementVNode("svg",{class:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"})],-1)])])):e.createCommentVNode("",!0),e.createElementVNode("button",{class:"relative p-2 text-gray-400 hover:text-gray-600 rounded-lg hover:bg-gray-50 transition-colors",onClick:B},[V[8]||(V[8]=e.createElementVNode("svg",{class:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 17h5l-5 5v-5z"}),e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M13 3h2.586a1 1 0 01.707.293l6.414 6.414a1 1 0 01.293.707V19a2 2 0 01-2 2H5a2 2 0 01-2-2V5a2 2 0 012-2h4L13 3z"})],-1)),c.value>0?(e.openBlock(),e.createElementBlock("span",sg,e.toDisplayString(c.value),1)):e.createCommentVNode("",!0)]),e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-300 ease-out","leave-active-class":"transition-all duration-300 ease-in","enter-from-class":"opacity-0 translate-y-2 scale-95","enter-to-class":"opacity-100 translate-y-0 scale-100","leave-from-class":"opacity-100 translate-y-0 scale-100","leave-to-class":"opacity-0 translate-y-2 scale-95"},{default:e.withCtx(()=>[s.value?(e.openBlock(),e.createElementBlock("div",ig,[V[10]||(V[10]=e.createElementVNode("div",{class:"p-4 border-b border-gray-200"},[e.createElementVNode("h3",{class:"text-lg font-semibold text-gray-900"}," Notifications ")],-1)),e.createElementVNode("div",cg,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.notifications,I=>(e.openBlock(),e.createElementBlock("div",{key:I.id,class:"p-4 border-b border-gray-100 hover:bg-gray-50 cursor-pointer"},[e.createElementVNode("div",dg,[V[9]||(V[9]=e.createElementVNode("div",{class:"flex-shrink-0 w-2 h-2 mt-2 bg-blue-500 rounded-full"},null,-1)),e.createElementVNode("div",ug,[e.createElementVNode("p",mg,e.toDisplayString(I.title),1),e.createElementVNode("p",fg,e.toDisplayString(I.time),1)])])]))),128))]),V[11]||(V[11]=e.createElementVNode("div",{class:"p-4 text-center"},[e.createElementVNode("button",{class:"text-sm text-blue-600 hover:text-blue-800"}," View all notifications ")],-1))])):e.createCommentVNode("",!0)]),_:1}),e.createElementVNode("div",gg,[e.createElementVNode("button",{class:"flex items-center space-x-2 md:space-x-3 p-2 rounded-lg hover:bg-gray-50 transition-colors",onClick:h},[e.createElementVNode("div",pg,[e.createElementVNode("span",vg,e.toDisplayString(p.value),1)]),e.createElementVNode("div",hg,[e.createElementVNode("p",bg,e.toDisplayString(t.user.name),1),e.createElementVNode("p",yg,e.toDisplayString(v.value),1)]),V[12]||(V[12]=e.createElementVNode("svg",{class:"w-4 h-4 text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 9l-7 7-7-7"})],-1))]),e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-200 ease-out","leave-active-class":"transition-all duration-200 ease-in","enter-from-class":"opacity-0 translate-y-2 scale-95","enter-to-class":"opacity-100 translate-y-0 scale-100","leave-from-class":"opacity-100 translate-y-0 scale-100","leave-to-class":"opacity-0 translate-y-2 scale-95"},{default:e.withCtx(()=>[l.value?(e.openBlock(),e.createElementBlock("div",xg,[e.createElementVNode("div",kg,[e.createElementVNode("p",wg,e.toDisplayString(t.user.name),1),e.createElementVNode("p",Cg,e.toDisplayString(t.user.email),1)]),e.createElementVNode("div",Bg,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.profileMenuItems,I=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:I.name},[I.route?(e.openBlock(),e.createBlock(F,{key:0,to:I.route,class:e.normalizeClass(e.unref(y)("flex items-center px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",g(I)?"bg-gradient-to-br from-blue-50 to-blue-100 text-blue-700 shadow-sm border border-blue-200":"text-gray-700 hover:bg-gray-50 hover:text-gray-900 border border-transparent")),onClick:W=>k(I)},{default:e.withCtx(()=>[g(I)?(e.openBlock(),e.createElementBlock("div",Sg)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)("flex items-center justify-center w-8 h-8 rounded-lg mr-3 flex-shrink-0 transition-colors ml-2",g(I)?"bg-gradient-to-br from-blue-500 to-blue-600 text-white shadow-md":"bg-gray-100 text-gray-600 group-hover:bg-gray-200"))},[I.icon?(e.openBlock(),e.createBlock(j,{key:0,icon:I.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(y)("flex-1 truncate font-semibold",g(I)?"text-blue-700":"text-gray-700"))},e.toDisplayString(I.label),3)]),_:2},1032,["to","class","onClick"])):(e.openBlock(),e.createElementBlock("button",{key:1,class:"flex items-center w-full px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative text-gray-700 hover:bg-gray-50 hover:text-gray-900 border border-transparent",onClick:W=>d(I)},[e.createElementVNode("div",Eg,[I.icon?(e.openBlock(),e.createBlock(j,{key:0,icon:I.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0)]),e.createElementVNode("span",Ng,e.toDisplayString(I.label),1)],8,Vg))],64))),128))]),e.createElementVNode("div",{class:"border-t border-gray-200 py-2"},[e.createElementVNode("button",{class:"flex items-center w-full px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative text-red-600 hover:bg-red-50 border border-transparent",onClick:u},[...V[13]||(V[13]=[e.createElementVNode("div",{class:"flex items-center justify-center w-8 h-8 rounded-lg mr-1 flex-shrink-0 transition-colors ml-2 bg-red-100 text-red-600 group-hover:bg-red-200"},[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M17 16l4-4m0 0l-4-4m4 4H7m6 4v1a3 3 0 01-3 3H6a3 3 0 01-3-3V7a2 2 0 013-3h4a3 3 0 013 3v1"})])],-1),e.createElementVNode("span",{class:"truncate font-semibold text-red-600"}," Sign out ",-1)])])])])):e.createCommentVNode("",!0)]),_:1})])])])],2)}}},$g={class:"mb-4"},zg={class:"text-lg font-semibold text-gray-900"},Dg={class:"text-sm text-gray-600"},Tg=["onUpdate:modelValue"],Ag={value:"",disabled:""},Fg=["value"],Pg={key:3,class:"flex items-center"},Ig={key:4,class:"flex items-center"},jg=["id","aria-checked","disabled","onClick"],Lg={key:5,class:"space-y-2"},Og={key:6,class:"space-y-2"},Mg={key:0,class:"text-xs text-gray-500"},Rg={key:8,class:"space-y-2"},_g={class:"flex items-center gap-4"},Ug={class:"text-sm font-medium text-gray-700 min-w-[3rem] text-right"},qg={class:"flex justify-end gap-3 pt-4"},_o={__name:"ReusableFormModal",props:{modelValue:{type:Boolean,default:!1},modalType:{type:String,required:!0,validator:t=>["create","edit"].includes(t)},entityName:{type:String,default:"Item"},fields:{type:Array,required:!0,validator:t=>t.every(n=>n.name&&n.label&&n.type&&["text","number","password","textarea","select","checkbox","slider","date","color","email","tel","url","time","datetime-local","month","week","file","radio","switch","range","search","hidden"].includes(n.type))},initialData:{type:Object,default:null},loading:{type:Boolean,default:!1},customValidation:{type:Function,default:null},modalSize:{type:String,default:"4xl",validator:t=>["sm","md","lg","xl","2xl","3xl","4xl","5xl","6xl","7xl","full"].includes(t)},modalResizable:{type:Boolean,default:!1}},emits:["update:modelValue","submit","close"],setup(t,{emit:n}){const a=t,o=n,r=e.computed({get:()=>a.modelValue,set:d=>o("update:modelValue",d)}),s=e.computed(()=>a.loading),l=e.ref({}),c=e.ref({}),m=e.ref(!1),f=()=>{const d={};return a.fields.forEach(u=>{u.type==="checkbox"||u.type==="switch"?d[u.name]=!1:u.type==="number"||u.type==="slider"||u.type==="range"?d[u.name]=u.min!==void 0?u.min:0:u.type==="file"?d[u.name]=null:u.type==="radio"?d[u.name]=u.options?.[0]?.value||"":d[u.name]=""}),d};e.watch(()=>a.initialData,d=>{if(a.modalType==="edit"&&d){const u={};a.fields.forEach(i=>{i.type==="checkbox"||i.type==="switch"?u[i.name]=d[i.name]??!1:i.type==="number"||i.type==="slider"||i.type==="range"?u[i.name]=d[i.name]??(i.min!==void 0?i.min:0):i.type==="file"?u[i.name]=null:u[i.name]=d[i.name]??""}),l.value=u,m.value=!0}else if(a.modalType==="create"&&d&&!m.value){const u={};a.fields.forEach(i=>{d[i.name]!==void 0&&d[i.name]!==null?u[i.name]=d[i.name]:i.type==="checkbox"||i.type==="switch"?u[i.name]=!1:i.type==="number"||i.type==="slider"||i.type==="range"?u[i.name]=i.min!==void 0?i.min:0:i.type==="file"?u[i.name]=null:i.type==="radio"?u[i.name]=i.options?.[0]?.value||"":u[i.name]=""}),l.value=u,m.value=!0}else a.modalType==="create"&&!d&&(l.value=f(),m.value=!1)},{immediate:!0,deep:!0}),e.watch(()=>a.modelValue,d=>{if(d&&(c.value={},a.modalType==="create")){if(m.value=!1,a.initialData){const u={};a.fields.forEach(i=>{a.initialData[i.name]!==void 0&&a.initialData[i.name]!==null?u[i.name]=a.initialData[i.name]:i.type==="checkbox"||i.type==="switch"?u[i.name]=!1:i.type==="number"||i.type==="slider"||i.type==="range"?u[i.name]=i.min!==void 0?i.min:0:i.type==="file"?u[i.name]=null:i.type==="radio"?u[i.name]=i.options?.[0]?.value||"":u[i.name]=""}),l.value=u}else l.value=f();m.value=!0}}),e.watch(()=>a.initialData,d=>{m.value&&d&&Object.keys(d).forEach(u=>{Object.prototype.hasOwnProperty.call(l.value,u)&&d[u]!==void 0&&d[u]!==null&&(l.value[u]=d[u])})},{deep:!0});const p=()=>{if(c.value={},a.fields.forEach(d=>{if(d.required&&!d.disabled&&d.type!=="hidden"){const u=l.value[d.name];d.type==="checkbox"||d.type==="switch"?d.required&&!u&&(c.value[d.name]=d.errorMessage||`${d.label} is required`):d.type==="number"||d.type==="slider"||d.type==="range"?u===""||u===null||u===void 0?c.value[d.name]=d.errorMessage||`${d.label} is required`:d.min!==void 0&&Number(u)<d.min?c.value[d.name]=`${d.label} must be at least ${d.min}`:d.max!==void 0&&Number(u)>d.max&&(c.value[d.name]=`${d.label} must be at most ${d.max}`):d.type==="email"?!u||!u.trim()?c.value[d.name]=d.errorMessage||`${d.label} is required`:/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(u)||(c.value[d.name]="Please enter a valid email address"):d.type==="url"?!u||!u.trim()?c.value[d.name]=d.errorMessage||`${d.label} is required`:/^https?:\/\/.+/.test(u)||(c.value[d.name]="Please enter a valid URL"):d.type==="tel"?(!u||!u.trim())&&(c.value[d.name]=d.errorMessage||`${d.label} is required`):d.type==="file"?u||(c.value[d.name]=d.errorMessage||`${d.label} is required`):d.type==="radio"?u||(c.value[d.name]=d.errorMessage||`${d.label} is required`):d.type==="date"||d.type==="time"||d.type==="datetime-local"||d.type==="month"||d.type==="week"?(!u||typeof u=="string"&&!u.trim())&&(c.value[d.name]=d.errorMessage||`${d.label} is required`):d.type==="password"?(!u||typeof u=="string"&&!u.trim())&&(c.value[d.name]=d.errorMessage||`${d.label} is required`):(!u||typeof u=="string"&&!u.trim())&&(c.value[d.name]=d.errorMessage||`${d.label} is required`)}if(d.validate&&typeof d.validate=="function"){const u=d.validate(l.value[d.name],l.value);u&&(c.value[d.name]=u)}}),a.customValidation){const d=a.customValidation(l.value);d&&Object.keys(d).length>0&&(c.value={...c.value,...d})}return Object.keys(c.value).length===0},v=async(d,u)=>{if(l.value[d.name]=u,d.onChange&&typeof d.onChange=="function")try{await d.onChange(u,l.value)}catch(i){console.error("Error in onChange handler:",i),pe.error("An error occurred while processing the change")}},B=(d,u)=>{if(l.value[d.name]=u,d.onChange&&typeof d.onChange=="function")try{d.onChange(u,l.value)}catch(i){console.error("Error in onChange handler:",i),pe.error("An error occurred while processing the change")}},h=(d,u)=>{const i=u.target.files?.[0]||null;if(l.value[d.name]=i,d.onChange&&typeof d.onChange=="function")try{d.onChange(i,l.value)}catch(b){console.error("Error in onChange handler:",b),pe.error("An error occurred while processing the file")}},k=async()=>{try{if(!p()){pe.error("Please fix the validation errors before submitting");return}const d={};a.fields.forEach(u=>{const i=l.value[u.name];u.type==="number"||u.type==="slider"||u.type==="range"?d[u.name]=Number(i):u.type==="text"||u.type==="textarea"||u.type==="date"||u.type==="email"||u.type==="url"||u.type==="tel"||u.type==="search"||u.type==="time"||u.type==="datetime-local"||u.type==="month"||u.type==="week"?d[u.name]=typeof i=="string"?i.trim():i:(u.type==="password"||u.type,d[u.name]=i)}),o("submit",{formData:d,modalType:a.modalType,originalData:a.initialData})}catch(d){console.error("Error during form submission:",d),pe.error("An error occurred during submission")}},g=()=>{l.value=f(),c.value={},m.value=!1,o("close")};return(d,u)=>(e.openBlock(),e.createBlock(na,{modelValue:r.value,"onUpdate:modelValue":u[0]||(u[0]=i=>r.value=i),"show-close":!0,"close-on-backdrop":!0,size:t.modalSize,resizable:t.modalResizable,onClose:g},{default:e.withCtx(()=>[e.createElementVNode("div",$g,[e.createElementVNode("h2",zg,e.toDisplayString(t.modalType==="create"?`Add New ${t.entityName}`:`Edit ${t.entityName}`),1),e.createElementVNode("p",Dg,e.toDisplayString(t.modalType==="create"?`Fill in the details to create a new ${t.entityName.toLowerCase()}.`:`Update the ${t.entityName.toLowerCase()} information below.`),1)]),e.createElementVNode("form",{class:"space-y-4",onSubmit:e.withModifiers(k,["prevent"])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.fields,i=>(e.openBlock(),e.createElementBlock("div",{key:i.name},[i.type==="hidden"?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,"onUpdate:modelValue":b=>l.value[i.name]=b,type:"hidden"},null,8,Tg)),[[e.vModelText,l.value[i.name]]]):(e.openBlock(),e.createBlock(aa,{key:1,id:`form-${t.entityName}-${i.name}-${Math.random().toString(36).slice(2,5)}`,label:i.label,required:i.required&&!i.disabled,error:c.value[i.name],"error-message":c.value[i.name]},{default:e.withCtx(({fieldId:b,hasError:E,ariaDescribedBy:V})=>[["text","number","password","color","email","tel","url","search"].includes(i.type)?(e.openBlock(),e.createBlock(oe,{key:0,id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,type:i.type,placeholder:i.placeholder,disabled:s.value||i.disabled,readonly:i.disabled,class:e.normalizeClass(E?"border-red-500":"border-slate-300"),"aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","type","placeholder","disabled","readonly","class","aria-describedby"])):i.type==="textarea"?(e.openBlock(),e.createBlock(ea,{key:1,id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,placeholder:i.placeholder,disabled:s.value||i.disabled,rows:i.rows||3,class:e.normalizeClass(["w-full px-3 py-2 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",E?"border-red-500":"border-slate-300"]),"aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","placeholder","disabled","rows","class","aria-describedby"])):i.type==="select"?(e.openBlock(),e.createBlock(ue,{key:2,id:b,"model-value":l.value[i.name],disabled:s.value||i.disabled,class:e.normalizeClass(["w-full px-3 py-2 border rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",E?"border-red-500":"border-slate-300"]),"aria-describedby":V,"onUpdate:modelValue":F=>v(i,F)},{default:e.withCtx(()=>[e.createElementVNode("option",Ag,e.toDisplayString(i.placeholder||"Select an option"),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.options,F=>(e.openBlock(),e.createElementBlock("option",{key:F.value,value:F.value},e.toDisplayString(F.label),9,Fg))),128))]),_:2},1032,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):i.type==="checkbox"?(e.openBlock(),e.createElementBlock("div",Pg,[e.createVNode(oe,{id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,type:"checkbox",disabled:s.value||i.disabled,class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300 rounded","aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","disabled","aria-describedby"]),e.createVNode(Ve,{for:b,class:"ml-2 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.checkboxLabel||i.label),1)]),_:2},1032,["for"])])):i.type==="switch"?(e.openBlock(),e.createElementBlock("div",Ig,[e.createElementVNode("button",{id:b,type:"button",role:"switch","aria-checked":l.value[i.name],disabled:s.value||i.disabled,class:e.normalizeClass(["relative inline-flex h-6 w-11 items-center rounded-full transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2",l.value[i.name]?"bg-blue-600":"bg-gray-200",s.value||i.disabled?"opacity-50 cursor-not-allowed":"cursor-pointer"]),onClick:F=>l.value[i.name]=!l.value[i.name]},[e.createElementVNode("span",{class:e.normalizeClass(["inline-block h-4 w-4 transform rounded-full bg-white transition-transform",l.value[i.name]?"translate-x-6":"translate-x-1"])},null,2)],10,jg),e.createVNode(Ve,{for:b,class:"ml-3 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.checkboxLabel||i.label),1)]),_:2},1032,["for"])])):i.type==="radio"?(e.openBlock(),e.createElementBlock("div",Lg,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.options,F=>(e.openBlock(),e.createElementBlock("div",{key:F.value,class:"flex items-center"},[e.createVNode(oe,{id:`${b}-${F.value}`,modelValue:l.value[i.name],"onUpdate:modelValue":I=>l.value[i.name]=I,type:"radio",value:F.value,disabled:s.value||i.disabled,class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300","aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","value","disabled","aria-describedby"]),e.createVNode(Ve,{for:`${b}-${F.value}`,class:"ml-2 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(F.label),1)]),_:2},1032,["for"])]))),128))])):i.type==="file"?(e.openBlock(),e.createElementBlock("div",Og,[e.createVNode(oe,{id:b,type:"file",accept:i.accept,disabled:s.value||i.disabled,class:e.normalizeClass(["w-full text-sm text-gray-500 file:mr-4 file:py-2 file:px-4 file:rounded-md file:border-0 file:text-sm file:font-semibold file:bg-blue-50 file:text-blue-700 hover:file:bg-blue-100",E?"border-red-500":"border-slate-300"]),"aria-describedby":V,onChange:F=>h(i,F)},null,8,["id","accept","disabled","class","aria-describedby","onChange"]),i.helpText?(e.openBlock(),e.createElementBlock("p",Mg,e.toDisplayString(i.helpText),1)):e.createCommentVNode("",!0)])):i.type==="slider"?(e.openBlock(),e.createBlock(oa,{key:7,"model-value":l.value[i.name],min:i.min,max:i.max,step:i.step,disabled:s.value||i.disabled,"onUpdate:modelValue":F=>B(i,F)},null,8,["model-value","min","max","step","disabled","onUpdate:modelValue"])):i.type==="range"?(e.openBlock(),e.createElementBlock("div",Rg,[e.createElementVNode("div",_g,[e.createVNode(oe,{id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,type:"range",min:i.min,max:i.max,step:i.step||1,disabled:s.value||i.disabled,class:"flex-1","aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","min","max","step","disabled","aria-describedby"]),e.createElementVNode("span",Ug,e.toDisplayString(l.value[i.name]),1)])])):i.type==="date"?(e.openBlock(),e.createBlock(ct,{key:9,id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,disabled:s.value||i.disabled,required:i.required,min:i.min,max:i.max,placeholder:i.placeholder||"Select date",format:i.format||"MM/DD/YYYY",clearable:i.clearable!==!1,"show-today":i.showToday!==!1,"calendar-position":i.calendarPosition||"left-0 bottom-full","aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","disabled","required","min","max","placeholder","format","clearable","show-today","calendar-position","aria-describedby"])):i.type==="time"?(e.openBlock(),e.createBlock(oe,{key:10,id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,type:"time",disabled:s.value||i.disabled,class:e.normalizeClass(E?"border-red-500":"border-slate-300"),"aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):i.type==="datetime-local"?(e.openBlock(),e.createBlock(oe,{key:11,id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,type:"datetime-local",disabled:s.value||i.disabled,class:e.normalizeClass(E?"border-red-500":"border-slate-300"),"aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):i.type==="month"?(e.openBlock(),e.createBlock(oe,{key:12,id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,type:"month",disabled:s.value||i.disabled,class:e.normalizeClass(E?"border-red-500":"border-slate-300"),"aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):i.type==="week"?(e.openBlock(),e.createBlock(oe,{key:13,id:b,modelValue:l.value[i.name],"onUpdate:modelValue":F=>l.value[i.name]=F,type:"week",disabled:s.value||i.disabled,class:e.normalizeClass(E?"border-red-500":"border-slate-300"),"aria-describedby":V},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):e.createCommentVNode("",!0)]),_:2},1032,["id","label","required","error","error-message"]))]))),128)),e.createElementVNode("div",qg,[e.createVNode(Z,{type:"button",variant:"outline",disabled:s.value,onClick:g},{default:e.withCtx(()=>[...u[1]||(u[1]=[e.createTextVNode(" Cancel ",-1)])]),_:1},8,["disabled"]),e.createVNode(Z,{type:"submit",disabled:s.value,loading:s.value,variant:"default"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.modalType==="create"?`Create ${t.entityName}`:`Update ${t.entityName}`),1)]),_:1},8,["disabled","loading"])])],32)]),_:1},8,["modelValue","size","resizable"]))}},Wg={key:0,class:"flex items-center justify-between p-4 border-b border-gray-200 flex-shrink-0 lg:hidden"},Yg={class:"text-lg font-bold text-gray-900"},Hg={class:"flex-1 overflow-y-auto overflow-x-hidden p-4"},Gg={class:"space-y-2"},Kg={key:0},Xg={key:0,class:"absolute top-2 right-2 inline-flex items-center justify-center w-5 h-5 text-xs font-bold rounded-full bg-red-500 text-white"},Jg=["onClick"],Qg={key:0,class:"absolute top-2 right-2 inline-flex items-center justify-center w-5 h-5 text-xs font-bold rounded-full bg-red-500 text-white"},Zg={key:1,class:"absolute top-1.5 right-1.5 w-2 h-2 bg-blue-500 rounded-full"},ep={key:1,class:"border-t border-gray-200 p-4 flex-shrink-0"},tp={key:0,class:"absolute top-1.5 right-1.5 w-2 h-2 bg-blue-500 rounded-full"},ap={class:"sticky top-0 bg-white border-b border-gray-200 z-10"},np={class:"flex items-center justify-between p-4"},op={class:"flex-1 text-sm font-bold text-gray-900 ml-2"},rp={class:"p-3"},lp={class:"space-y-1"},sp={key:0,class:"absolute left-0 top-1/2 transform -translate-y-1/2 w-1 h-8 bg-gradient-to-b from-blue-500 to-blue-600 rounded-r-full"},ip={key:1,class:"ml-2 inline-flex items-center justify-center px-2 py-0.5 text-xs font-bold rounded-full bg-red-500 text-white"},cp={class:"p-3"},dp={class:"space-y-1"},up={key:0,class:"px-3 py-2 text-xs font-semibold text-gray-500 uppercase tracking-wider"},mp={key:0,class:"absolute left-0 top-1/2 transform -translate-y-1/2 w-1 h-8 bg-gradient-to-b from-blue-500 to-blue-600 rounded-r-full"},Uo={__name:"Sidebar",props:{sidebarWidth:{type:Number,default:130},header:{type:Object,default:null},navigationItems:{type:Array,required:!0},managementSettings:{type:Array,default:()=>[]},showManagementSettings:{type:Boolean,default:!0},mobileOpen:{type:Boolean,default:!1},isManagementSettingsActive:{type:Boolean,default:!1},currentPath:{type:String,default:""}},emits:["navigate","update:mobileOpen"],setup(t,{expose:n,emit:a}){const o=t,r=a,s=e.ref(!1),l=e.ref(!1),c=e.ref(null),m=e.ref(!1),f=e.computed(()=>o.mobileOpen),p=e.computed(()=>s.value?{}:{left:`${o.sidebarWidth}px`}),v=e.computed(()=>s.value?{}:{left:`${o.sidebarWidth}px`}),B=e.computed(()=>{if(s.value)return 0;let S=o.sidebarWidth;return l.value&&(S+=220),m.value&&(S+=220),S}),h=S=>{r("navigate",S),s.value&&k();const O=l.value&&c.value&&c.value.subItems.some(x=>x.route===S.route),L=m.value&&o.managementSettings.some(x=>x.route===S.route);(s.value||!(O||L))&&E()},k=()=>{r("update:mobileOpen",!1)},g=S=>S.subItems&&S.subItems.length>0,d=S=>{m.value&&b(),l.value&&c.value!==S?(i(),setTimeout(()=>{c.value=S,l.value=!0},300)):l.value?c.value===S&&i():(c.value=S,l.value=!0),s.value&&k()},u=()=>{l.value&&i(),m.value?b():m.value=!0,s.value&&k()},i=()=>{l.value=!1,setTimeout(()=>{c.value=null},300)},b=()=>{m.value=!1},E=()=>{i(),b()},V=S=>{h(S)},F=S=>{h(S)},I=S=>{const O=o.currentPath;return S.route?!!(O===S.route||O.startsWith(S.route+"/")):S.subItems&&S.subItems.length>0?S.subItems.some(L=>L.route?O===L.route||O.startsWith(L.route+"/"):!1):!1},W=()=>{const S=s.value;s.value=window.innerWidth<1024,S&&!s.value&&f.value&&k()},_=S=>{S.key==="Escape"&&(l.value||m.value?E():s.value&&f.value&&k())};return e.onMounted(()=>{W(),window.addEventListener("resize",W),document.addEventListener("keydown",_)}),e.onUnmounted(()=>{window.removeEventListener("resize",W),document.removeEventListener("keydown",_)}),n({isMobile:s,isMobileOpen:f,submenuOpen:l,managementSettingsOpen:m,contentMarginLeft:B,closeAllMenus:E}),(S,O)=>{const L=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(e.Transition,{"enter-active-class":"transition-opacity duration-300","leave-active-class":"transition-opacity duration-300","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:e.withCtx(()=>[f.value&&s.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-30 lg:hidden",onClick:k})):e.createCommentVNode("",!0)]),_:1}),e.createElementVNode("aside",{class:e.normalizeClass(e.unref(y)("fixed left-0 z-40 border-r overflow-hidden flex flex-col","transition-all duration-300 ease-in-out","bg-white border-gray-200",s.value?e.unref(y)("transform h-screen",f.value?"translate-x-0":"-translate-x-full"):"translate-x-0 h-[calc(100vh-4rem)]")),style:e.normalizeStyle({width:t.sidebarWidth+"px",top:s.value?"0px":"4rem"})},[s.value?(e.openBlock(),e.createElementBlock("div",Wg,[e.createElementVNode("h2",Yg,e.toDisplayString(t.header?.title),1),e.createElementVNode("button",{class:"p-2 rounded-lg text-gray-500 hover:text-gray-900 hover:bg-gray-100 transition-colors","aria-label":"Close sidebar",onClick:k},[...O[0]||(O[0]=[e.createElementVNode("svg",{class:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})],-1)])])])):e.createCommentVNode("",!0),e.createElementVNode("nav",Hg,[e.createElementVNode("div",Gg,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.navigationItems,x=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:x.name||x.label},[x.type==="link"?(e.openBlock(),e.createElementBlock("div",Kg,[g(x)?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(y)("flex flex-col items-center justify-center rounded-xl transition-all duration-200 cursor-pointer group relative py-4 px-3",I(x)?"bg-gradient-to-br from-blue-50 to-blue-100 border border-blue-200 shadow-sm":"text-gray-500 hover:bg-gray-100 hover:text-gray-900 border border-transparent")),onClick:N=>d(x)},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)("flex items-center justify-center rounded-lg transition-colors mb-2","w-12 h-12",I(x)?"bg-gradient-to-br from-blue-500 to-blue-600 text-white shadow-md":"text-gray-500 group-hover:text-gray-900 bg-gray-100 group-hover:bg-gray-200"))},[e.createVNode(j,{icon:x.icon,class:"w-6 h-6"},null,8,["icon"])],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(y)("text-xs font-medium text-center",I(x)?"text-blue-700 font-semibold":"text-gray-500 group-hover:text-gray-900"))},e.toDisplayString(x.label),3),x.badge?(e.openBlock(),e.createElementBlock("span",Qg,e.toDisplayString(x.badge),1)):e.createCommentVNode("",!0),I(x)&&g(x)?(e.openBlock(),e.createElementBlock("div",Zg)):e.createCommentVNode("",!0)],10,Jg)):(e.openBlock(),e.createBlock(L,{key:0,to:x.route,class:e.normalizeClass(e.unref(y)("flex flex-col items-center justify-center rounded-xl transition-all duration-200 group relative py-4 px-3",I(x)?"bg-gradient-to-br from-blue-50 to-blue-100 border border-blue-200 shadow-sm":"text-gray-500 hover:bg-gray-100 hover:text-gray-900 border border-transparent")),onClick:N=>h(x)},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)("flex items-center justify-center rounded-lg transition-colors mb-2","w-12 h-12",I(x)?"bg-gradient-to-br from-blue-500 to-blue-600 text-white shadow-md":"text-gray-500 group-hover:text-gray-900 bg-gray-100 group-hover:bg-gray-200"))},[e.createVNode(j,{icon:x.icon,class:"w-6 h-6"},null,8,["icon"])],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(y)("text-xs font-medium text-center",I(x)?"text-blue-700 font-semibold":"text-gray-500 group-hover:text-gray-900"))},e.toDisplayString(x.label),3),x.badge?(e.openBlock(),e.createElementBlock("span",Xg,e.toDisplayString(x.badge),1)):e.createCommentVNode("",!0)]),_:2},1032,["to","class","onClick"]))])):e.createCommentVNode("",!0)],64))),128))])]),t.showManagementSettings?(e.openBlock(),e.createElementBlock("div",ep,[e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)("flex flex-col items-center justify-center rounded-xl transition-all duration-200 cursor-pointer group relative py-4 px-3",t.isManagementSettingsActive?"bg-gradient-to-br from-blue-50 to-blue-100 border border-blue-200 shadow-sm":"text-gray-500 hover:bg-gray-100 hover:text-gray-900 border border-transparent")),onClick:u},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)("flex items-center justify-center rounded-lg transition-colors mb-2","w-12 h-12",t.isManagementSettingsActive?"bg-gradient-to-br from-blue-500 to-blue-600 text-white shadow-md":"text-gray-500 group-hover:text-gray-900 bg-gray-100 group-hover:bg-gray-200"))},[e.createVNode(j,{icon:"cog",class:"w-6 h-6"})],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(y)("text-xs font-medium text-center",t.isManagementSettingsActive?"text-blue-700 font-semibold":"text-gray-500 group-hover:text-gray-900"))}," Settings ",2),t.isManagementSettingsActive?(e.openBlock(),e.createElementBlock("div",tp)):e.createCommentVNode("",!0)],2)])):e.createCommentVNode("",!0)],6),e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-300 ease-out","leave-active-class":"transition-all duration-300 ease-in","enter-from-class":"opacity-0 -translate-x-full","enter-to-class":"opacity-100 translate-x-0","leave-from-class":"opacity-100 translate-x-0","leave-to-class":"opacity-0 -translate-x-full"},{default:e.withCtx(()=>[l.value?(e.openBlock(),e.createElementBlock("aside",{key:0,class:e.normalizeClass(e.unref(y)("fixed z-40 bg-white border-r border-gray-200 overflow-y-auto shadow-lg",s.value?"left-0 w-52 top-20 h-screen":"w-56 top-16 h-[calc(100vh-4rem)]")),style:e.normalizeStyle(p.value)},[e.createElementVNode("div",ap,[e.createElementVNode("div",np,[e.createElementVNode("button",{class:"p-2 -ml-2 rounded-lg text-gray-500 hover:text-gray-700 hover:bg-gray-100 transition-colors","aria-label":"Close submenu",onClick:i},[...O[1]||(O[1]=[e.createElementVNode("svg",{class:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 19l-7-7 7-7"})],-1)])]),e.createElementVNode("h3",op,e.toDisplayString(c.value?.label),1)])]),e.createElementVNode("nav",rp,[e.createElementVNode("div",lp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value?.subItems,x=>(e.openBlock(),e.createBlock(L,{key:x.name,to:x.route,class:e.normalizeClass(e.unref(y)("flex items-center px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",I(x)?"bg-gradient-to-br from-blue-50 to-blue-100 text-blue-700 shadow-sm border border-blue-200":"text-gray-700 hover:bg-gray-50 hover:text-gray-900 border border-transparent")),onClick:N=>V(x)},{default:e.withCtx(()=>[I(x)?(e.openBlock(),e.createElementBlock("div",sp)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)("flex items-center justify-center w-8 h-8 rounded-lg mr-3 flex-shrink-0 transition-colors ml-2",I(x)?"bg-gradient-to-br from-blue-500 to-blue-600 text-white shadow-md":"bg-gray-100 text-gray-600 group-hover:bg-gray-200"))},[x.icon?(e.openBlock(),e.createBlock(j,{key:0,icon:x.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(y)("flex-1 truncate font-semibold",I(x)?"text-blue-700":"text-gray-700"))},e.toDisplayString(x.label),3),x.badge?(e.openBlock(),e.createElementBlock("span",ip,e.toDisplayString(x.badge),1)):e.createCommentVNode("",!0)]),_:2},1032,["to","class","onClick"]))),128))])])],6)):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-300 ease-out","leave-active-class":"transition-all duration-300 ease-in","enter-from-class":"opacity-0 -translate-x-full","enter-to-class":"opacity-100 translate-x-0","leave-from-class":"opacity-100 translate-x-0","leave-to-class":"opacity-0 -translate-x-full"},{default:e.withCtx(()=>[m.value?(e.openBlock(),e.createElementBlock("aside",{key:0,class:e.normalizeClass(e.unref(y)("fixed z-40 bg-white border-r border-gray-200 overflow-y-auto shadow-lg",s.value?"left-0 w-52 top-20 h-full":"w-58 h-[calc(100vh-4rem)]")),style:e.normalizeStyle({...v.value,top:s.value?"55px":"4rem"})},[e.createElementVNode("div",{class:"sticky top-0 z-10 bg-white border-b border-gray-200"},[e.createElementVNode("div",{class:"flex items-center justify-between p-4"},[e.createElementVNode("button",{class:"p-2 -ml-2 rounded-lg text-gray-500 hover:text-gray-700 hover:bg-gray-100 transition-colors","aria-label":"Close management settings",onClick:b},[...O[2]||(O[2]=[e.createElementVNode("svg",{class:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 19l-7-7 7-7"})],-1)])]),O[3]||(O[3]=e.createElementVNode("h3",{class:"flex-1 text-sm font-bold text-gray-900 ml-2"}," Management Settings ",-1))])]),e.createElementVNode("nav",cp,[e.createElementVNode("div",dp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.managementSettings,x=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:x.name},[x.type==="section"?(e.openBlock(),e.createElementBlock("div",up,e.toDisplayString(x.label),1)):x.route?(e.openBlock(),e.createBlock(L,{key:1,to:x.route,class:e.normalizeClass(e.unref(y)("flex items-center px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",I(x)?"bg-gradient-to-br from-blue-50 to-blue-100 text-blue-700 shadow-sm border border-blue-200":"text-gray-700 hover:bg-gray-50 hover:text-gray-900 border border-transparent")),onClick:N=>F(x)},{default:e.withCtx(()=>[I(x)?(e.openBlock(),e.createElementBlock("div",mp)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(y)("flex items-center justify-center w-8 h-8 rounded-lg mr-3 flex-shrink-0 transition-colors",I(x)?"bg-gradient-to-br from-blue-500 to-blue-600 text-white shadow-md":"bg-gray-100 text-gray-600 group-hover:bg-gray-200"))},[x.icon?(e.openBlock(),e.createBlock(j,{key:0,icon:x.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(y)("flex-1 truncate font-semibold",I(x)?"text-blue-700":"text-gray-700"))},e.toDisplayString(x.label),3)]),_:2},1032,["to","class","onClick"])):e.createCommentVNode("",!0)],64))),128))])])],6)):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.Transition,{"enter-active-class":"transition-opacity duration-300","leave-active-class":"transition-opacity duration-300","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:e.withCtx(()=>[(l.value||m.value)&&s.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-30 bg-transparent",onClick:E})):e.createCommentVNode("",!0)]),_:1})])}}},qo={__name:"Timeline",props:{orientation:{type:String,default:"vertical",validator:t=>["vertical","horizontal"].includes(t)}},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["relative flex",t.orientation==="vertical"?"flex-col":"flex-row"])},[e.renderSlot(n.$slots,"default")],2))}},fp={key:0,class:"absolute left-3 top-0 w-0.5 h-full bg-slate-200"},gp={class:"z-10 flex items-center justify-center w-6 h-6 rounded-full border-2 border-blue-500 bg-white text-blue-500"},pp={class:"text-slate-900 font-medium"},vp={key:0,class:"text-slate-500 text-sm"},hp={class:"mt-2 text-slate-600 text-sm"},Wo={__name:"TimelineItem",props:{title:{type:String,required:!0},subtitle:{type:String,default:""},orientation:{type:String,default:"vertical",validator:t=>["vertical","horizontal"].includes(t)}},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["relative flex",t.orientation==="vertical"?"items-start mb-8 last:mb-0":"flex-col items-center mx-8 last:mx-0"])},[t.orientation==="vertical"?(e.openBlock(),e.createElementBlock("div",fp)):e.createCommentVNode("",!0),e.createElementVNode("div",gp,[e.renderSlot(n.$slots,"icon",{},()=>[a[0]||(a[0]=e.createElementVNode("div",{class:"w-2 h-2 rounded-full bg-blue-500"},null,-1))])]),e.createElementVNode("div",{class:e.normalizeClass(["ml-6",t.orientation==="horizontal"?"mt-2 text-center":""])},[e.createElementVNode("h3",pp,[e.renderSlot(n.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])]),t.subtitle?(e.openBlock(),e.createElementBlock("p",vp,[e.renderSlot(n.$slots,"subtitle",{},()=>[e.createTextVNode(e.toDisplayString(t.subtitle),1)])])):e.createCommentVNode("",!0),e.createElementVNode("div",hp,[e.renderSlot(n.$slots,"default")])],2)],2))}},bp={name:"AuthLayout",props:{title:{type:String,default:null},subtitle:{type:String,default:null},primaryLogoPrefix:{type:String,default:"e"},primaryLogoText:{type:String,default:"HORIZON"},secondaryLogoPrefix:{type:String,default:"e"},secondaryLogoText:{type:String,default:"Risk & Compliance"},quote:{type:String,default:""},primaryColor:{type:String,default:"#e74c3c"},backgroundColor:{type:String,default:"#2c2c2c"},backgroundImage:{type:String,default:"https://images.unsplash.com/photo-1497366216548-37526070297c?ixlib=rb-4.0.3&auto=format&fit=crop&w=2069&q=80"},backgroundOpacity:{type:Number,default:.4},companyName:{type:String,default:"SOFTWARE"},companyType:{type:String,default:"TECHNOLOGIES"},companyTagline:{type:String,default:"People | Processes | Governance"},companyInitials:{type:String,default:"ST"},appName:{type:String,default:"eHorizon eBoard X"},appVersion:{type:String,default:"Version 2.0"},copyright:{type:String,default:"Copyright © 2025 Software Technologies Limited"},socialLinks:{type:Array,default:()=>[{name:"linkedin",url:"#",icon:"linkedin-in",variant:"primary"},{name:"facebook",url:"#",icon:"facebook-f",variant:"primary"},{name:"twitter",url:"#",icon:"twitter",variant:"info"}]}},setup(){return{currentYear:e.computed(()=>new Date().getFullYear())}}},yp={class:"container mx-auto px-4 relative z-10"},xp={class:"grid lg:grid-cols-10 gap-8 items-center min-h-screen"},kp={class:"lg:col-span-6 text-white text-center lg:text-left space-y-6"},wp={class:"mb-6"},Cp={class:"text-4xl lg:text-6xl font-bold mb-2"},Bp={class:"text-white"},Sp={class:"flex items-center justify-center lg:justify-start mb-6"},Vp={class:"text-3xl lg:text-4xl font-bold text-white"},Ep={class:"lg:col-span-4"},Np={class:"bg-white rounded-lg shadow-xl p-6 lg:p-8 max-w-md mx-auto"},$p={key:0,class:"mb-6"},zp={class:"text-center"},Dp={class:"text-2xl font-bold text-gray-900"},Tp={key:0,class:"text-gray-600 mt-2"},Ap={class:"space-y-6"},Fp={key:1,class:"mt-6"},Pp={key:0,class:"mt-6 text-center"},Ip={class:"absolute bottom-4 right-4 text-right"},jp={class:"flex items-end justify-end mb-2"},Lp={class:"text-right mr-3"},Op={class:"text-red-500 font-bold text-xs"},Mp={class:"text-white text-xs"},Rp={class:"text-white/70 text-xs"},_p={class:"w-8 h-8 bg-red-500 rounded flex items-center justify-center text-white font-bold text-xs"},Up={class:"text-white/70 text-xs"},qp={class:"absolute bottom-4 left-4 flex gap-2"},Wp=["href"];function Yp(t,n,a,o,r,s){const l=e.resolveComponent("router-view"),c=e.resolveComponent("font-awesome-icon");return e.openBlock(),e.createElementBlock("div",{class:"min-h-screen relative flex items-center justify-center",style:e.normalizeStyle({backgroundColor:a.backgroundColor})},[e.createElementVNode("div",{class:"absolute inset-0 bg-cover bg-center",style:e.normalizeStyle({backgroundImage:`url('${a.backgroundImage}')`,opacity:a.backgroundOpacity})},null,4),e.createElementVNode("div",yp,[e.createElementVNode("div",xp,[e.createElementVNode("div",kp,[e.createElementVNode("div",wp,[e.createElementVNode("div",Cp,[e.createElementVNode("span",{style:e.normalizeStyle({color:a.primaryColor})},e.toDisplayString(a.primaryLogoPrefix),5),e.createElementVNode("span",Bp,e.toDisplayString(a.primaryLogoText),1)]),e.createElementVNode("div",{class:"h-0.5 w-30 mx-auto lg:mx-0",style:e.normalizeStyle({backgroundColor:a.primaryColor})},null,4)]),e.createElementVNode("div",Sp,[e.createElementVNode("div",{class:"flex items-center justify-center w-15 h-15 rounded-lg mr-4 text-white font-bold text-xl",style:e.normalizeStyle({backgroundColor:a.primaryColor})},e.toDisplayString(a.secondaryLogoPrefix),5),e.createElementVNode("span",Vp,e.toDisplayString(a.secondaryLogoText),1)]),n[0]||(n[0]=e.createElementVNode("div",{class:"max-w-md mx-auto lg:mx-0"},[e.createElementVNode("p",{class:"text-sm lg:text-base font-light text-white/70 italic leading-relaxed"})],-1))]),e.createElementVNode("div",Ep,[e.createElementVNode("div",Np,[t.$slots["card-header"]||a.title?(e.openBlock(),e.createElementBlock("div",$p,[e.renderSlot(t.$slots,"card-header",{},()=>[e.createElementVNode("div",zp,[e.createElementVNode("h1",Dp,e.toDisplayString(a.title),1),a.subtitle?(e.openBlock(),e.createElementBlock("p",Tp,e.toDisplayString(a.subtitle),1)):e.createCommentVNode("",!0)])])])):e.createCommentVNode("",!0),e.createElementVNode("div",Ap,[e.createVNode(l)]),t.$slots["card-footer"]?(e.openBlock(),e.createElementBlock("div",Fp,[e.renderSlot(t.$slots,"card-footer")])):e.createCommentVNode("",!0)]),t.$slots.links?(e.openBlock(),e.createElementBlock("div",Pp,[e.renderSlot(t.$slots,"links")])):e.createCommentVNode("",!0)])])]),e.createElementVNode("div",Ip,[e.createElementVNode("div",jp,[e.createElementVNode("div",Lp,[e.createElementVNode("div",Op,e.toDisplayString(a.companyName),1),e.createElementVNode("div",Mp,e.toDisplayString(a.companyType),1),e.createElementVNode("div",Rp,e.toDisplayString(a.companyTagline),1)]),e.createElementVNode("div",_p,e.toDisplayString(a.companyInitials),1)]),e.createElementVNode("div",Up,[e.createElementVNode("div",null,e.toDisplayString(a.appName)+" ("+e.toDisplayString(a.appVersion)+")",1),e.createElementVNode("div",null,e.toDisplayString(a.copyright),1)])]),e.createElementVNode("div",qp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.socialLinks,m=>(e.openBlock(),e.createElementBlock("a",{key:m.name,href:m.url,class:e.normalizeClass(["w-8 h-7 flex items-center justify-center rounded text-xs transition-colors",m.variant==="primary"?"bg-blue-600 hover:bg-blue-700 text-white":m.variant==="info"?"bg-cyan-500 hover:bg-cyan-600 text-white":"bg-gray-600 hover:bg-gray-700 text-white"])},[e.createVNode(c,{icon:["fab",m.icon]},null,8,["icon"])],10,Wp))),128))])],4)}const Yo=dt(bp,[["render",Yp]]),Hp={class:"min-h-screen bg-gray-50"},Gp={class:"flex-1"},Kp={key:0,class:"bg-white border-b border-gray-200"},Xp={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-4"},Jp={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8"},Ho={__name:"DefaultLayout",props:{navigationItems:{type:Array,default:()=>[{label:"Home",href:"/",active:!0},{label:"About",href:"/about"},{label:"Services",href:"/services"},{label:"Contact",href:"/contact"}]},breadcrumbItems:{type:Array,default:()=>[]},showBreadcrumb:{type:Boolean,default:!1}},setup(t){return(n,a)=>{const o=e.resolveComponent("Logo"),r=e.resolveComponent("MainNavigation"),s=e.resolveComponent("Button"),l=e.resolveComponent("Header"),c=e.resolveComponent("Breadcrumb"),m=e.resolveComponent("Text"),f=e.resolveComponent("Footer");return e.openBlock(),e.createElementBlock("div",Hp,[e.createVNode(l,null,{logo:e.withCtx(()=>[e.renderSlot(n.$slots,"logo",{},()=>[e.createVNode(o)])]),navigation:e.withCtx(()=>[e.renderSlot(n.$slots,"navigation",{},()=>[e.createVNode(r,{items:t.navigationItems},null,8,["items"])])]),actions:e.withCtx(()=>[e.renderSlot(n.$slots,"header-actions",{},()=>[e.createVNode(s,{variant:"ghost",size:"sm"},{default:e.withCtx(()=>[...a[0]||(a[0]=[e.createTextVNode(" Sign In ",-1)])]),_:1}),e.createVNode(s,{size:"sm"},{default:e.withCtx(()=>[...a[1]||(a[1]=[e.createTextVNode(" Get Started ",-1)])]),_:1})])]),_:3}),e.createElementVNode("main",Gp,[t.showBreadcrumb?(e.openBlock(),e.createElementBlock("div",Kp,[e.createElementVNode("div",Xp,[e.renderSlot(n.$slots,"breadcrumb",{},()=>[e.createVNode(c,{items:t.breadcrumbItems},null,8,["items"])])])])):e.createCommentVNode("",!0),e.createElementVNode("div",Jp,[e.renderSlot(n.$slots,"default")])]),e.createVNode(f,null,{brand:e.withCtx(()=>[e.renderSlot(n.$slots,"footer-brand",{},()=>[e.createVNode(o,{class:"mb-4"}),e.createVNode(m,{class:"text-gray-600 max-w-md"},{default:e.withCtx(()=>[...a[2]||(a[2]=[e.createTextVNode(" Your application description goes here. ",-1)])]),_:1})])]),_:3})])}}},Qp={name:"ErrorLayout",props:{errorType:{type:[String,Number],default:"404"},errorCode:{type:[String,Number],default:null},errorTitle:{type:String,default:null},errorMessage:{type:String,default:null},brandName:{type:String,default:"Software Technologies"},showLogo:{type:Boolean,default:!0},showBackground:{type:Boolean,default:!0},showDefaultIllustration:{type:Boolean,default:!0},showDefaultActions:{type:Boolean,default:!0},showHomeButton:{type:Boolean,default:!0},showBackButton:{type:Boolean,default:!0},showRetryButton:{type:Boolean,default:!1},showSupportButton:{type:Boolean,default:!1},showAdditionalInfo:{type:Boolean,default:!1},homeUrl:{type:String,default:"/"},homeButtonText:{type:String,default:"Go Home"},backButtonText:{type:String,default:"Go Back"},retryButtonText:{type:String,default:"Try Again"},helpText:{type:String,default:null},supportUrl:{type:String,default:null}},emits:["retry","back","contact-support"],setup(t,{emit:n}){const a=e.getCurrentInstance(),o=e.inject("$router",null)||a?.appContext.app.config.globalProperties?.$router,r=e.ref(!1),s=e.ref(!1),l=e.ref(navigator.onLine),c=e.ref(`err_${Date.now()}_${Math.random().toString(36).substr(2,9)}`),m=e.ref(!1),f=()=>{l.value=navigator.onLine};e.onMounted(()=>{window.addEventListener("online",f),window.addEventListener("offline",f)}),e.onUnmounted(()=>{window.removeEventListener("online",f),window.removeEventListener("offline",f)});const p=e.computed(()=>{const U={404:{title:"Page Not Found",message:"Sorry, we couldn't find the page you're looking for.",icon:"🔍",color:"#64748b",homeButtonIcon:"🏠",additionalInfo:{title:"What can you do?",items:[{icon:"✓",iconColor:"green-500",text:"Check the URL for typos"},{icon:"✓",iconColor:"green-500",text:"Go back to the previous page"},{icon:"✓",iconColor:"green-500",text:"Visit our homepage"}]}},403:{title:"Unauthorized Access",message:"You are not authorized to view this page.",icon:"🚫",color:"#ef4444",homeButtonIcon:"🔐",additionalInfo:{title:"Why am I seeing this?",items:[{icon:"⚠️",iconColor:"yellow-500",text:"You may need to log in to access this page"},{icon:"⚠️",iconColor:"yellow-500",text:"Your account might not have the required permissions"},{icon:"⚠️",iconColor:"yellow-500",text:"Contact support if you believe this is an error"}]}},401:{title:"Authentication Required",message:"You need to log in to access this resource.",icon:"🔐",color:"#f59e0b",homeButtonIcon:"🔐",additionalInfo:{title:"How to proceed?",items:[{icon:"✓",iconColor:"blue-500",text:"Log in with your credentials"},{icon:"✓",iconColor:"blue-500",text:"Create an account if you don't have one"},{icon:"✓",iconColor:"blue-500",text:"Reset your password if you forgot it"}]}},500:{title:"Internal Server Error",message:"Something went wrong on our end. Please try again later.",icon:"🔧",color:"#ef4444",homeButtonIcon:"🏠",additionalInfo:{title:"What happened?",items:[{icon:"⚠️",iconColor:"red-500",text:"Our servers are experiencing issues"},{icon:"⚠️",iconColor:"red-500",text:"The problem is temporary"},{icon:"⚠️",iconColor:"red-500",text:"Try refreshing the page or come back later"}]}},503:{title:"Service Unavailable",message:"The service is temporarily unavailable. Please try again later.",icon:"🔧",color:"#f59e0b",homeButtonIcon:"🏠",additionalInfo:{title:"Service Status",items:[{icon:"⚠️",iconColor:"amber-500",text:"We're performing scheduled maintenance"},{icon:"⚠️",iconColor:"amber-500",text:"Normal service will resume shortly"},{icon:"⚠️",iconColor:"amber-500",text:"Check our status page for updates"}]}},network:{title:"Network Error",message:"Unable to connect to the server. Please check your internet connection.",icon:"📶",color:"#ef4444",homeButtonIcon:"🏠",additionalInfo:{title:"Connection Issues",items:[{icon:"⚠️",iconColor:"red-500",text:"Check your internet connection"},{icon:"⚠️",iconColor:"red-500",text:"Try refreshing the page"},{icon:"⚠️",iconColor:"red-500",text:"Contact your network administrator"}]}}};return U[t.errorType]||U[404]}),v=e.computed(()=>p.value),B=e.computed(()=>t.errorTitle||v.value.title),h=e.computed(()=>t.errorMessage||v.value.message),k=e.computed(()=>v.value.homeButtonIcon||"🏠"),g=e.computed(()=>t.showAdditionalInfo?v.value.additionalInfo:null),d=()=>{o?o.push(t.homeUrl):window.location.href=t.homeUrl},u=()=>{o&&window.history.length>1?o.back():window.history.length>1?window.history.back():d(),n("back")},i=async()=>{r.value=!0;try{await new Promise(U=>setTimeout(U,1e3)),window.location.reload()}catch(U){console.error("Retry failed:",U)}finally{r.value=!1}n("retry")},b=e.computed(()=>["min-h-screen relative flex items-center justify-center","px-4 sm:px-6 lg:px-8"]),E=e.computed(()=>["absolute inset-0 -z-10"]),V=e.computed(()=>["w-full max-w-2xl mx-auto text-center"]),F=e.computed(()=>["mb-8"]),I=e.computed(()=>["space-y-8"]),W=e.computed(()=>["flex justify-center mb-6"]),_=e.computed(()=>["w-32 h-32 flex items-center justify-center"]),S=e.computed(()=>["space-y-4"]),O=e.computed(()=>["text-6xl font-bold text-slate-300 mb-4"]),L=e.computed(()=>["text-3xl font-bold text-slate-900"]),x=e.computed(()=>["text-lg text-slate-600 max-w-lg mx-auto"]),N=e.computed(()=>["mt-8"]),P=e.computed(()=>["mt-8"]),Y=e.computed(()=>["mt-6"]);return{isRetrying:r,reportSent:s,isOnline:l,errorId:c,isDev:m,errorConfig:v,title:B,message:h,homeButtonIcon:k,additionalInfoConfig:g,goHome:d,goBack:u,retry:i,layoutClasses:b,backgroundClasses:E,contentClasses:V,headerClasses:F,errorContentClasses:I,illustrationClasses:W,iconContainerClasses:_,detailsClasses:S,codeClasses:O,titleClasses:L,messageClasses:x,actionsClasses:N,additionalInfoClasses:P,helpClasses:Y}}},Zp={class:"flex justify-center"},ev={class:"flex items-center gap-3"},tv={class:"text-2xl font-bold text-slate-900"},av={key:1,class:"bg-red-100 border border-red-200 rounded-lg p-4 mx-auto max-w-md mb-6"},nv={class:"flex flex-col sm:flex-row gap-4 justify-center"},ov=["disabled"],rv={key:0,class:"animate-spin"},lv={key:1},sv=["disabled"],iv={key:0},cv={key:1},dv={key:0,class:"mt-8 max-w-md mx-auto"},uv={class:"bg-white rounded-lg border border-slate-200 shadow-sm p-6"},mv={class:"text-lg font-semibold text-slate-900 mb-4"},fv={class:"space-y-3"},gv={class:"text-sm text-slate-600"},pv=["href"],vv={key:5,class:"text-xs text-slate-400 font-mono mt-4"};function hv(t,n,a,o,r,s){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.layoutClasses)},[a.showBackground?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(o.backgroundClasses)},[e.renderSlot(t.$slots,"background",{},()=>[n[4]||(n[4]=e.createElementVNode("div",{class:"absolute inset-0 bg-gradient-to-br from-slate-50 to-slate-100"},null,-1))])],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(o.contentClasses)},[t.$slots.header||a.showLogo?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(o.headerClasses)},[e.renderSlot(t.$slots,"header",{},()=>[e.createElementVNode("div",Zp,[e.renderSlot(t.$slots,"logo",{},()=>[e.createElementVNode("div",ev,[n[5]||(n[5]=e.createElementVNode("div",{class:"w-10 h-10 bg-blue-600 rounded-xl flex items-center justify-center"},[e.createElementVNode("span",{class:"text-white font-bold text-lg"},"STL")],-1)),e.createElementVNode("span",tv,e.toDisplayString(a.brandName),1)])])])])],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(o.errorContentClasses)},[t.$slots.illustration||a.showDefaultIllustration?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(o.illustrationClasses)},[e.renderSlot(t.$slots,"illustration",{},()=>[e.createElementVNode("div",{class:e.normalizeClass(o.iconContainerClasses)},[e.createElementVNode("div",{class:"text-8xl",style:e.normalizeStyle({color:o.errorConfig.color})},e.toDisplayString(o.errorConfig.icon),5)],2)])],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(o.detailsClasses)},[a.errorCode?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(o.codeClasses)},e.toDisplayString(a.errorCode),3)):e.createCommentVNode("",!0),e.createElementVNode("h1",{class:e.normalizeClass(o.titleClasses)},[e.renderSlot(t.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(o.title),1)])],2),e.createElementVNode("p",{class:e.normalizeClass(o.messageClasses)},[e.renderSlot(t.$slots,"message",{},()=>[e.createTextVNode(e.toDisplayString(o.message),1)])],2)],2),o.isOnline?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",av,[...n[6]||(n[6]=[e.createElementVNode("div",{class:"flex items-center justify-center gap-2 text-red-700"},[e.createElementVNode("span",{class:"w-3 h-3 bg-red-500 rounded-full animate-pulse"}),e.createElementVNode("span",{class:"font-medium"},"No Internet Connection")],-1)])])),t.$slots.actions||a.showDefaultActions?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(o.actionsClasses)},[e.renderSlot(t.$slots,"actions",{},()=>[e.createElementVNode("div",nv,[a.showHomeButton?(e.openBlock(),e.createElementBlock("button",{key:0,class:"bg-blue-600 text-white px-6 py-3 rounded-lg font-medium hover:bg-blue-700 transition-colors flex items-center justify-center gap-2",onClick:n[0]||(n[0]=(...l)=>o.goHome&&o.goHome(...l))},[e.createElementVNode("span",null,e.toDisplayString(o.homeButtonIcon),1),e.createTextVNode(" "+e.toDisplayString(a.homeButtonText),1)])):e.createCommentVNode("",!0),a.showBackButton?(e.openBlock(),e.createElementBlock("button",{key:1,class:"border border-slate-300 text-slate-700 px-6 py-3 rounded-lg font-medium hover:bg-slate-50 transition-colors flex items-center justify-center gap-2",onClick:n[1]||(n[1]=(...l)=>o.goBack&&o.goBack(...l))},[n[7]||(n[7]=e.createElementVNode("span",null,"←",-1)),e.createTextVNode(" "+e.toDisplayString(a.backButtonText),1)])):e.createCommentVNode("",!0),a.showRetryButton?(e.openBlock(),e.createElementBlock("button",{key:2,disabled:o.isRetrying||!o.isOnline,class:"border border-slate-300 text-slate-700 px-6 py-3 rounded-lg font-medium hover:bg-slate-50 transition-colors flex items-center justify-center gap-2 disabled:opacity-50 disabled:cursor-not-allowed",onClick:n[2]||(n[2]=(...l)=>o.retry&&o.retry(...l))},[o.isRetrying?(e.openBlock(),e.createElementBlock("span",rv,"↻")):(e.openBlock(),e.createElementBlock("span",lv,"🔄")),e.createTextVNode(" "+e.toDisplayString(o.isRetrying?"Retrying...":a.retryButtonText),1)],8,ov)):e.createCommentVNode("",!0),a.showSupportButton?(e.openBlock(),e.createElementBlock("button",{key:3,disabled:o.reportSent,class:"bg-slate-600 text-white px-6 py-3 rounded-lg font-medium hover:bg-slate-700 transition-colors flex items-center justify-center gap-2 disabled:opacity-50 disabled:cursor-not-allowed",onClick:n[3]||(n[3]=l=>t.$emit("contact-support"))},[o.reportSent?(e.openBlock(),e.createElementBlock("span",iv,"✓")):(e.openBlock(),e.createElementBlock("span",cv,"📝")),e.createTextVNode(" "+e.toDisplayString(o.reportSent?"Report Sent":"Contact Support"),1)],8,sv)):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0),t.$slots["additional-info"]||a.showAdditionalInfo?(e.openBlock(),e.createElementBlock("div",{key:3,class:e.normalizeClass(o.additionalInfoClasses)},[e.renderSlot(t.$slots,"additional-info",{},()=>[o.additionalInfoConfig?(e.openBlock(),e.createElementBlock("div",dv,[e.createElementVNode("div",uv,[e.createElementVNode("h3",mv,e.toDisplayString(o.additionalInfoConfig.title),1),e.createElementVNode("ul",fv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.additionalInfoConfig.items,(l,c)=>(e.openBlock(),e.createElementBlock("li",{key:c,class:"flex items-start gap-3 text-sm text-slate-600"},[e.createElementVNode("span",{class:e.normalizeClass(`w-4 h-4 text-${l.iconColor||"slate-400"} flex-shrink-0 mt-0.5`)},e.toDisplayString(l.icon),3),e.createElementVNode("span",null,e.toDisplayString(l.text),1)]))),128))])])])):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0),t.$slots.help||a.helpText?(e.openBlock(),e.createElementBlock("div",{key:4,class:e.normalizeClass(o.helpClasses)},[e.renderSlot(t.$slots,"help",{},()=>[e.createElementVNode("p",gv,[e.createTextVNode(e.toDisplayString(a.helpText)+" ",1),a.supportUrl?(e.openBlock(),e.createElementBlock("a",{key:0,href:a.supportUrl,class:"text-blue-600 hover:text-blue-700 underline ml-1"},[...n[8]||(n[8]=[e.createElementVNode("span",{class:"inline-block w-4 h-4 mr-1"},"❓",-1),e.createTextVNode(" Get Help ",-1)])],8,pv)):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0),o.isDev?(e.openBlock(),e.createElementBlock("div",vv," Error ID: "+e.toDisplayString(o.errorId),1)):e.createCommentVNode("",!0)],2)],2)],2)}const Go=dt(Qp,[["render",hv]]),Ot={mounted(t,n){if(!n.value)return;const a=Object.keys(n.modifiers)[0]||"top",o=document.createElement("div");o.textContent=n.value,o.className="tooltip-custom",o.style.cssText=`
|
|
608
608
|
position: fixed;
|
|
609
609
|
z-index: 9999;
|
|
610
610
|
background-color: rgba(0, 0, 0, 0.9);
|