@stlhorizon/vue-ui 3.20.3 → 3.22.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,11 +1,11 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),O=require("class-variance-authority"),il=require("clsx");function N(...t){return il.clsx(t)}/*!
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),P=require("class-variance-authority"),il=require("clsx");function N(...t){return il.clsx(t)}/*!
2
2
  * Font Awesome Free 7.0.1 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4
4
  * Copyright 2025 Fonticons, Inc.
5
5
  */function Mt(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 cl(t){if(Array.isArray(t))return t}function dl(t){if(Array.isArray(t))return Mt(t)}function ul(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}function ml(t,n){for(var a=0;a<n.length;a++){var o=n[a];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,en(o.key),o)}}function fl(t,n,a){return n&&ml(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),t}function rt(t,n){var a=typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(!a){if(Array.isArray(t)||(a=Zt(t))||n){a&&(t=a);var o=0,l=function(){};return{s:l,n:function(){return o>=t.length?{done:!0}:{done:!1,value:t[o++]}},e:function(c){throw c},f:l}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
6
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var r,s=!0,i=!1;return{s:function(){a=a.call(t)},n:function(){var c=a.next();return s=c.done,c},e:function(c){i=!0,r=c},f:function(){try{s||a.return==null||a.return()}finally{if(i)throw r}}}}function le(t,n,a){return(n=en(n))in t?Object.defineProperty(t,n,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[n]=a,t}function pl(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function gl(t,n){var a=t==null?null:typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(a!=null){var o,l,r,s,i=[],c=!0,u=!1;try{if(r=(a=a.call(t)).next,n===0){if(Object(a)!==a)return;c=!1}else for(;!(c=(o=r.call(a)).done)&&(i.push(o.value),i.length!==n);c=!0);}catch(b){u=!0,l=b}finally{try{if(!c&&a.return!=null&&(s=a.return(),Object(s)!==s))return}finally{if(u)throw l}}return i}}function vl(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
6
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var r,s=!0,i=!1;return{s:function(){a=a.call(t)},n:function(){var c=a.next();return s=c.done,c},e:function(c){i=!0,r=c},f:function(){try{s||a.return==null||a.return()}finally{if(i)throw r}}}}function J(t,n,a){return(n=en(n))in t?Object.defineProperty(t,n,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[n]=a,t}function pl(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function gl(t,n){var a=t==null?null:typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(a!=null){var o,l,r,s,i=[],c=!0,f=!1;try{if(r=(a=a.call(t)).next,n===0){if(Object(a)!==a)return;c=!1}else for(;!(c=(o=r.call(a)).done)&&(i.push(o.value),i.length!==n);c=!0);}catch(x){f=!0,l=x}finally{try{if(!c&&a.return!=null&&(s=a.return(),Object(s)!==s))return}finally{if(f)throw l}}return i}}function vl(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
7
7
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function hl(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
8
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function xa(t,n){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);n&&(o=o.filter(function(l){return Object.getOwnPropertyDescriptor(t,l).enumerable})),a.push.apply(a,o)}return a}function R(t){for(var n=1;n<arguments.length;n++){var a=arguments[n]!=null?arguments[n]:{};n%2?xa(Object(a),!0).forEach(function(o){le(t,o,a[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):xa(Object(a)).forEach(function(o){Object.defineProperty(t,o,Object.getOwnPropertyDescriptor(a,o))})}return t}function gt(t,n){return cl(t)||gl(t,n)||Zt(t,n)||vl()}function Ce(t){return dl(t)||pl(t)||Zt(t)||hl()}function yl(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 en(t){var n=yl(t,"string");return typeof n=="symbol"?n:n+""}function ct(t){"@babel/helpers - typeof";return ct=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},ct(t)}function Zt(t,n){if(t){if(typeof t=="string")return Mt(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)?Mt(t,n):void 0}}var ka=function(){},ea={},tn={},an=null,nn={mark:ka,measure:ka};try{typeof window<"u"&&(ea=window),typeof document<"u"&&(tn=document),typeof MutationObserver<"u"&&(an=MutationObserver),typeof performance<"u"&&(nn=performance)}catch{}var bl=ea.navigator||{},wa=bl.userAgent,Ca=wa===void 0?"":wa,De=ea,ce=tn,Ba=an,ot=nn;De.document;var ze=!!ce.documentElement&&!!ce.head&&typeof ce.addEventListener=="function"&&typeof ce.createElement=="function",on=~Ca.indexOf("MSIE")||~Ca.indexOf("Trident/"),St,xl=/fa(k|kd|s|r|l|t|d|dr|dl|dt|b|slr|slpr|wsb|tl|ns|nds|es|jr|jfr|jdr|cr|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/,kl=/Font ?Awesome ?([567 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit|Notdog Duo|Notdog|Chisel|Etch|Thumbprint|Jelly Fill|Jelly Duo|Jelly|Slab Press|Slab|Whiteboard)?.*/i,ln={classic:{fa:"solid",fas:"solid","fa-solid":"solid",far:"regular","fa-regular":"regular",fal:"light","fa-light":"light",fat:"thin","fa-thin":"thin",fab:"brands","fa-brands":"brands"},duotone:{fa:"solid",fad:"solid","fa-solid":"solid","fa-duotone":"solid",fadr:"regular","fa-regular":"regular",fadl:"light","fa-light":"light",fadt:"thin","fa-thin":"thin"},sharp:{fa:"solid",fass:"solid","fa-solid":"solid",fasr:"regular","fa-regular":"regular",fasl:"light","fa-light":"light",fast:"thin","fa-thin":"thin"},"sharp-duotone":{fa:"solid",fasds:"solid","fa-solid":"solid",fasdr:"regular","fa-regular":"regular",fasdl:"light","fa-light":"light",fasdt:"thin","fa-thin":"thin"},slab:{"fa-regular":"regular",faslr:"regular"},"slab-press":{"fa-regular":"regular",faslpr:"regular"},thumbprint:{"fa-light":"light",fatl:"light"},whiteboard:{"fa-semibold":"semibold",fawsb:"semibold"},notdog:{"fa-solid":"solid",fans:"solid"},"notdog-duo":{"fa-solid":"solid",fands:"solid"},etch:{"fa-solid":"solid",faes:"solid"},jelly:{"fa-regular":"regular",fajr:"regular"},"jelly-fill":{"fa-regular":"regular",fajfr:"regular"},"jelly-duo":{"fa-regular":"regular",fajdr:"regular"},chisel:{"fa-regular":"regular",facr:"regular"}},wl={GROUP:"duotone-group",PRIMARY:"primary",SECONDARY:"secondary"},rn=["fa-classic","fa-duotone","fa-sharp","fa-sharp-duotone","fa-thumbprint","fa-whiteboard","fa-notdog","fa-notdog-duo","fa-chisel","fa-etch","fa-jelly","fa-jelly-fill","fa-jelly-duo","fa-slab","fa-slab-press"],fe="classic",et="duotone",sn="sharp",cn="sharp-duotone",dn="chisel",un="etch",mn="jelly",fn="jelly-duo",pn="jelly-fill",gn="notdog",vn="notdog-duo",hn="slab",yn="slab-press",bn="thumbprint",xn="whiteboard",Cl="Classic",Bl="Duotone",Vl="Sharp",El="Sharp Duotone",Nl="Chisel",Sl="Etch",$l="Jelly",zl="Jelly Duo",Dl="Jelly Fill",Fl="Notdog",Tl="Notdog Duo",Al="Slab",Ml="Slab Press",Ll="Thumbprint",Pl="Whiteboard",kn=[fe,et,sn,cn,dn,un,mn,fn,pn,gn,vn,hn,yn,bn,xn];St={},le(le(le(le(le(le(le(le(le(le(St,fe,Cl),et,Bl),sn,Vl),cn,El),dn,Nl),un,Sl),mn,$l),fn,zl),pn,Dl),gn,Fl),le(le(le(le(le(St,vn,Tl),hn,Al),yn,Ml),bn,Ll),xn,Pl);var jl={classic:{900:"fas",400:"far",normal:"far",300:"fal",100:"fat"},duotone:{900:"fad",400:"fadr",300:"fadl",100:"fadt"},sharp:{900:"fass",400:"fasr",300:"fasl",100:"fast"},"sharp-duotone":{900:"fasds",400:"fasdr",300:"fasdl",100:"fasdt"},slab:{400:"faslr"},"slab-press":{400:"faslpr"},whiteboard:{600:"fawsb"},thumbprint:{300:"fatl"},notdog:{900:"fans"},"notdog-duo":{900:"fands"},etch:{900:"faes"},chisel:{400:"facr"},jelly:{400:"fajr"},"jelly-fill":{400:"fajfr"},"jelly-duo":{400:"fajdr"}},Ol={"Font Awesome 7 Free":{900:"fas",400:"far"},"Font Awesome 7 Pro":{900:"fas",400:"far",normal:"far",300:"fal",100:"fat"},"Font Awesome 7 Brands":{400:"fab",normal:"fab"},"Font Awesome 7 Duotone":{900:"fad",400:"fadr",normal:"fadr",300:"fadl",100:"fadt"},"Font Awesome 7 Sharp":{900:"fass",400:"fasr",normal:"fasr",300:"fasl",100:"fast"},"Font Awesome 7 Sharp Duotone":{900:"fasds",400:"fasdr",normal:"fasdr",300:"fasdl",100:"fasdt"},"Font Awesome 7 Jelly":{400:"fajr",normal:"fajr"},"Font Awesome 7 Jelly Fill":{400:"fajfr",normal:"fajfr"},"Font Awesome 7 Jelly Duo":{400:"fajdr",normal:"fajdr"},"Font Awesome 7 Slab":{400:"faslr",normal:"faslr"},"Font Awesome 7 Slab Press":{400:"faslpr",normal:"faslpr"},"Font Awesome 7 Thumbprint":{300:"fatl",normal:"fatl"},"Font Awesome 7 Notdog":{900:"fans",normal:"fans"},"Font Awesome 7 Notdog Duo":{900:"fands",normal:"fands"},"Font Awesome 7 Etch":{900:"faes",normal:"faes"},"Font Awesome 7 Chisel":{400:"facr",normal:"facr"},"Font Awesome 7 Whiteboard":{600:"fawsb",normal:"fawsb"}},Il=new Map([["classic",{defaultShortPrefixId:"fas",defaultStyleId:"solid",styleIds:["solid","regular","light","thin","brands"],futureStyleIds:[],defaultFontWeight:900}],["duotone",{defaultShortPrefixId:"fad",defaultStyleId:"solid",styleIds:["solid","regular","light","thin"],futureStyleIds:[],defaultFontWeight:900}],["sharp",{defaultShortPrefixId:"fass",defaultStyleId:"solid",styleIds:["solid","regular","light","thin"],futureStyleIds:[],defaultFontWeight:900}],["sharp-duotone",{defaultShortPrefixId:"fasds",defaultStyleId:"solid",styleIds:["solid","regular","light","thin"],futureStyleIds:[],defaultFontWeight:900}],["chisel",{defaultShortPrefixId:"facr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["etch",{defaultShortPrefixId:"faes",defaultStyleId:"solid",styleIds:["solid"],futureStyleIds:[],defaultFontWeight:900}],["jelly",{defaultShortPrefixId:"fajr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["jelly-duo",{defaultShortPrefixId:"fajdr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["jelly-fill",{defaultShortPrefixId:"fajfr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["notdog",{defaultShortPrefixId:"fans",defaultStyleId:"solid",styleIds:["solid"],futureStyleIds:[],defaultFontWeight:900}],["notdog-duo",{defaultShortPrefixId:"fands",defaultStyleId:"solid",styleIds:["solid"],futureStyleIds:[],defaultFontWeight:900}],["slab",{defaultShortPrefixId:"faslr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["slab-press",{defaultShortPrefixId:"faslpr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["thumbprint",{defaultShortPrefixId:"fatl",defaultStyleId:"light",styleIds:["light"],futureStyleIds:[],defaultFontWeight:300}],["whiteboard",{defaultShortPrefixId:"fawsb",defaultStyleId:"semibold",styleIds:["semibold"],futureStyleIds:[],defaultFontWeight:600}]]),_l={chisel:{regular:"facr"},classic:{brands:"fab",light:"fal",regular:"far",solid:"fas",thin:"fat"},duotone:{light:"fadl",regular:"fadr",solid:"fad",thin:"fadt"},etch:{solid:"faes"},jelly:{regular:"fajr"},"jelly-duo":{regular:"fajdr"},"jelly-fill":{regular:"fajfr"},notdog:{solid:"fans"},"notdog-duo":{solid:"fands"},sharp:{light:"fasl",regular:"fasr",solid:"fass",thin:"fast"},"sharp-duotone":{light:"fasdl",regular:"fasdr",solid:"fasds",thin:"fasdt"},slab:{regular:"faslr"},"slab-press":{regular:"faslpr"},thumbprint:{light:"fatl"},whiteboard:{semibold:"fawsb"}},wn=["fak","fa-kit","fakd","fa-kit-duotone"],Va={kit:{fak:"kit","fa-kit":"kit"},"kit-duotone":{fakd:"kit-duotone","fa-kit-duotone":"kit-duotone"}},Rl=["kit"],Ul="kit",ql="kit-duotone",Hl="Kit",Wl="Kit Duotone";le(le({},Ul,Hl),ql,Wl);var Yl={kit:{"fa-kit":"fak"}},Gl={"Font Awesome Kit":{400:"fak",normal:"fak"},"Font Awesome Kit Duotone":{400:"fakd",normal:"fakd"}},Kl={kit:{fak:"fa-kit"}},Ea={kit:{kit:"fak"},"kit-duotone":{"kit-duotone":"fakd"}},$t,lt={GROUP:"duotone-group",SWAP_OPACITY:"swap-opacity",PRIMARY:"primary",SECONDARY:"secondary"},Xl=["fa-classic","fa-duotone","fa-sharp","fa-sharp-duotone","fa-thumbprint","fa-whiteboard","fa-notdog","fa-notdog-duo","fa-chisel","fa-etch","fa-jelly","fa-jelly-fill","fa-jelly-duo","fa-slab","fa-slab-press"],Ql="classic",Jl="duotone",Zl="sharp",er="sharp-duotone",tr="chisel",ar="etch",nr="jelly",or="jelly-duo",lr="jelly-fill",rr="notdog",sr="notdog-duo",ir="slab",cr="slab-press",dr="thumbprint",ur="whiteboard",mr="Classic",fr="Duotone",pr="Sharp",gr="Sharp Duotone",vr="Chisel",hr="Etch",yr="Jelly",br="Jelly Duo",xr="Jelly Fill",kr="Notdog",wr="Notdog Duo",Cr="Slab",Br="Slab Press",Vr="Thumbprint",Er="Whiteboard";$t={},le(le(le(le(le(le(le(le(le(le($t,Ql,mr),Jl,fr),Zl,pr),er,gr),tr,vr),ar,hr),nr,yr),or,br),lr,xr),rr,kr),le(le(le(le(le($t,sr,wr),ir,Cr),cr,Br),dr,Vr),ur,Er);var Nr="kit",Sr="kit-duotone",$r="Kit",zr="Kit Duotone";le(le({},Nr,$r),Sr,zr);var Dr={classic:{"fa-brands":"fab","fa-duotone":"fad","fa-light":"fal","fa-regular":"far","fa-solid":"fas","fa-thin":"fat"},duotone:{"fa-regular":"fadr","fa-light":"fadl","fa-thin":"fadt"},sharp:{"fa-solid":"fass","fa-regular":"fasr","fa-light":"fasl","fa-thin":"fast"},"sharp-duotone":{"fa-solid":"fasds","fa-regular":"fasdr","fa-light":"fasdl","fa-thin":"fasdt"},slab:{"fa-regular":"faslr"},"slab-press":{"fa-regular":"faslpr"},whiteboard:{"fa-semibold":"fawsb"},thumbprint:{"fa-light":"fatl"},notdog:{"fa-solid":"fans"},"notdog-duo":{"fa-solid":"fands"},etch:{"fa-solid":"faes"},jelly:{"fa-regular":"fajr"},"jelly-fill":{"fa-regular":"fajfr"},"jelly-duo":{"fa-regular":"fajdr"},chisel:{"fa-regular":"facr"}},Fr={classic:["fas","far","fal","fat","fad"],duotone:["fadr","fadl","fadt"],sharp:["fass","fasr","fasl","fast"],"sharp-duotone":["fasds","fasdr","fasdl","fasdt"],slab:["faslr"],"slab-press":["faslpr"],whiteboard:["fawsb"],thumbprint:["fatl"],notdog:["fans"],"notdog-duo":["fands"],etch:["faes"],jelly:["fajr"],"jelly-fill":["fajfr"],"jelly-duo":["fajdr"],chisel:["facr"]},Lt={classic:{fab:"fa-brands",fad:"fa-duotone",fal:"fa-light",far:"fa-regular",fas:"fa-solid",fat:"fa-thin"},duotone:{fadr:"fa-regular",fadl:"fa-light",fadt:"fa-thin"},sharp:{fass:"fa-solid",fasr:"fa-regular",fasl:"fa-light",fast:"fa-thin"},"sharp-duotone":{fasds:"fa-solid",fasdr:"fa-regular",fasdl:"fa-light",fasdt:"fa-thin"},slab:{faslr:"fa-regular"},"slab-press":{faslpr:"fa-regular"},whiteboard:{fawsb:"fa-semibold"},thumbprint:{fatl:"fa-light"},notdog:{fans:"fa-solid"},"notdog-duo":{fands:"fa-solid"},etch:{faes:"fa-solid"},jelly:{fajr:"fa-regular"},"jelly-fill":{fajfr:"fa-regular"},"jelly-duo":{fajdr:"fa-regular"},chisel:{facr:"fa-regular"}},Tr=["fa-solid","fa-regular","fa-light","fa-thin","fa-duotone","fa-brands","fa-semibold"],Cn=["fa","fas","far","fal","fat","fad","fadr","fadl","fadt","fab","fass","fasr","fasl","fast","fasds","fasdr","fasdl","fasdt","faslr","faslpr","fawsb","fatl","fans","fands","faes","fajr","fajfr","fajdr","facr"].concat(Xl,Tr),Ar=["solid","regular","light","thin","duotone","brands","semibold"],Bn=[1,2,3,4,5,6,7,8,9,10],Mr=Bn.concat([11,12,13,14,15,16,17,18,19,20]),Lr=["aw","fw","pull-left","pull-right"],Pr=[].concat(Ce(Object.keys(Fr)),Ar,Lr,["2xs","xs","sm","lg","xl","2xl","beat","border","fade","beat-fade","bounce","flip-both","flip-horizontal","flip-vertical","flip","inverse","layers","layers-bottom-left","layers-bottom-right","layers-counter","layers-text","layers-top-left","layers-top-right","li","pull-end","pull-start","pulse","rotate-180","rotate-270","rotate-90","rotate-by","shake","spin-pulse","spin-reverse","spin","stack-1x","stack-2x","stack","ul","width-auto","width-fixed",lt.GROUP,lt.SWAP_OPACITY,lt.PRIMARY,lt.SECONDARY]).concat(Bn.map(function(t){return"".concat(t,"x")})).concat(Mr.map(function(t){return"w-".concat(t)})),jr={"Font Awesome 5 Free":{900:"fas",400:"far"},"Font Awesome 5 Pro":{900:"fas",400:"far",normal:"far",300:"fal"},"Font Awesome 5 Brands":{400:"fab",normal:"fab"},"Font Awesome 5 Duotone":{900:"fad"}},Se="___FONT_AWESOME___",Pt=16,Vn="fa",En="svg-inline--fa",Me="data-fa-i2svg",jt="data-fa-pseudo-element",Or="data-fa-pseudo-element-pending",ta="data-prefix",aa="data-icon",Na="fontawesome-i2svg",Ir="async",_r=["HTML","HEAD","STYLE","SCRIPT"],Nn=["::before","::after",":before",":after"],Sn=(function(){try{return process.env.NODE_ENV==="production"}catch{return!1}})();function tt(t){return new Proxy(t,{get:function(a,o){return o in a?a[o]:a[fe]}})}var $n=R({},ln);$n[fe]=R(R(R(R({},{"fa-duotone":"duotone"}),ln[fe]),Va.kit),Va["kit-duotone"]);var Rr=tt($n),Ot=R({},_l);Ot[fe]=R(R(R(R({},{duotone:"fad"}),Ot[fe]),Ea.kit),Ea["kit-duotone"]);var Sa=tt(Ot),It=R({},Lt);It[fe]=R(R({},It[fe]),Kl.kit);var na=tt(It),_t=R({},Dr);_t[fe]=R(R({},_t[fe]),Yl.kit);tt(_t);var Ur=xl,zn="fa-layers-text",qr=kl,Hr=R({},jl);tt(Hr);var Wr=["class","data-prefix","data-icon","data-fa-transform","data-fa-mask"],zt=wl,Yr=[].concat(Ce(Rl),Ce(Pr)),Ye=De.FontAwesomeConfig||{};function Gr(t){var n=ce.querySelector("script["+t+"]");if(n)return n.getAttribute(t)}function Kr(t){return t===""?!0:t==="false"?!1:t==="true"?!0:t}if(ce&&typeof ce.querySelector=="function"){var Xr=[["data-family-prefix","familyPrefix"],["data-css-prefix","cssPrefix"],["data-family-default","familyDefault"],["data-style-default","styleDefault"],["data-replacement-class","replacementClass"],["data-auto-replace-svg","autoReplaceSvg"],["data-auto-add-css","autoAddCss"],["data-search-pseudo-elements","searchPseudoElements"],["data-search-pseudo-elements-warnings","searchPseudoElementsWarnings"],["data-search-pseudo-elements-full-scan","searchPseudoElementsFullScan"],["data-observe-mutations","observeMutations"],["data-mutate-approach","mutateApproach"],["data-keep-original-source","keepOriginalSource"],["data-measure-performance","measurePerformance"],["data-show-missing-icons","showMissingIcons"]];Xr.forEach(function(t){var n=gt(t,2),a=n[0],o=n[1],l=Kr(Gr(a));l!=null&&(Ye[o]=l)})}var Dn={styleDefault:"solid",familyDefault:fe,cssPrefix:Vn,replacementClass:En,autoReplaceSvg:!0,autoAddCss:!0,searchPseudoElements:!1,searchPseudoElementsWarnings:!0,searchPseudoElementsFullScan:!1,observeMutations:!0,mutateApproach:"async",keepOriginalSource:!0,measurePerformance:!1,showMissingIcons:!0};Ye.familyPrefix&&(Ye.cssPrefix=Ye.familyPrefix);var Ue=R(R({},Dn),Ye);Ue.autoReplaceSvg||(Ue.observeMutations=!1);var ae={};Object.keys(Dn).forEach(function(t){Object.defineProperty(ae,t,{enumerable:!0,set:function(a){Ue[t]=a,Ge.forEach(function(o){return o(ae)})},get:function(){return Ue[t]}})});Object.defineProperty(ae,"familyPrefix",{enumerable:!0,set:function(n){Ue.cssPrefix=n,Ge.forEach(function(a){return a(ae)})},get:function(){return Ue.cssPrefix}});De.FontAwesomeConfig=ae;var Ge=[];function Qr(t){return Ge.push(t),function(){Ge.splice(Ge.indexOf(t),1)}}var Oe=Pt,Ve={size:16,x:0,y:0,rotate:0,flipX:!1,flipY:!1};function Jr(t){if(!(!t||!ze)){var n=ce.createElement("style");n.setAttribute("type","text/css"),n.innerHTML=t;for(var a=ce.head.childNodes,o=null,l=a.length-1;l>-1;l--){var r=a[l],s=(r.tagName||"").toUpperCase();["STYLE","LINK"].indexOf(s)>-1&&(o=r)}return ce.head.insertBefore(n,o),t}}var Zr="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";function $a(){for(var t=12,n="";t-- >0;)n+=Zr[Math.random()*62|0];return n}function qe(t){for(var n=[],a=(t||[]).length>>>0;a--;)n[a]=t[a];return n}function oa(t){return t.classList?qe(t.classList):(t.getAttribute("class")||"").split(" ").filter(function(n){return n})}function Fn(t){return"".concat(t).replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function es(t){return Object.keys(t||{}).reduce(function(n,a){return n+"".concat(a,'="').concat(Fn(t[a]),'" ')},"").trim()}function vt(t){return Object.keys(t||{}).reduce(function(n,a){return n+"".concat(a,": ").concat(t[a].trim(),";")},"")}function la(t){return t.size!==Ve.size||t.x!==Ve.x||t.y!==Ve.y||t.rotate!==Ve.rotate||t.flipX||t.flipY}function ts(t){var n=t.transform,a=t.containerWidth,o=t.iconWidth,l={transform:"translate(".concat(a/2," 256)")},r="translate(".concat(n.x*32,", ").concat(n.y*32,") "),s="scale(".concat(n.size/16*(n.flipX?-1:1),", ").concat(n.size/16*(n.flipY?-1:1),") "),i="rotate(".concat(n.rotate," 0 0)"),c={transform:"".concat(r," ").concat(s," ").concat(i)},u={transform:"translate(".concat(o/2*-1," -256)")};return{outer:l,inner:c,path:u}}function as(t){var n=t.transform,a=t.width,o=a===void 0?Pt:a,l=t.height,r=l===void 0?Pt:l,s="";return on?s+="translate(".concat(n.x/Oe-o/2,"em, ").concat(n.y/Oe-r/2,"em) "):s+="translate(calc(-50% + ".concat(n.x/Oe,"em), calc(-50% + ").concat(n.y/Oe,"em)) "),s+="scale(".concat(n.size/Oe*(n.flipX?-1:1),", ").concat(n.size/Oe*(n.flipY?-1:1),") "),s+="rotate(".concat(n.rotate,"deg) "),s}var ns=`:root, :host {
8
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function xa(t,n){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);n&&(o=o.filter(function(l){return Object.getOwnPropertyDescriptor(t,l).enumerable})),a.push.apply(a,o)}return a}function I(t){for(var n=1;n<arguments.length;n++){var a=arguments[n]!=null?arguments[n]:{};n%2?xa(Object(a),!0).forEach(function(o){J(t,o,a[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):xa(Object(a)).forEach(function(o){Object.defineProperty(t,o,Object.getOwnPropertyDescriptor(a,o))})}return t}function gt(t,n){return cl(t)||gl(t,n)||Zt(t,n)||vl()}function ye(t){return dl(t)||pl(t)||Zt(t)||hl()}function yl(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 en(t){var n=yl(t,"string");return typeof n=="symbol"?n:n+""}function ct(t){"@babel/helpers - typeof";return ct=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},ct(t)}function Zt(t,n){if(t){if(typeof t=="string")return Mt(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)?Mt(t,n):void 0}}var ka=function(){},ea={},tn={},an=null,nn={mark:ka,measure:ka};try{typeof window<"u"&&(ea=window),typeof document<"u"&&(tn=document),typeof MutationObserver<"u"&&(an=MutationObserver),typeof performance<"u"&&(nn=performance)}catch{}var bl=ea.navigator||{},wa=bl.userAgent,Ca=wa===void 0?"":wa,Ne=ea,te=tn,Ba=an,ot=nn;Ne.document;var Se=!!te.documentElement&&!!te.head&&typeof te.addEventListener=="function"&&typeof te.createElement=="function",on=~Ca.indexOf("MSIE")||~Ca.indexOf("Trident/"),Nt,xl=/fa(k|kd|s|r|l|t|d|dr|dl|dt|b|slr|slpr|wsb|tl|ns|nds|es|jr|jfr|jdr|cr|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/,kl=/Font ?Awesome ?([567 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit|Notdog Duo|Notdog|Chisel|Etch|Thumbprint|Jelly Fill|Jelly Duo|Jelly|Slab Press|Slab|Whiteboard)?.*/i,ln={classic:{fa:"solid",fas:"solid","fa-solid":"solid",far:"regular","fa-regular":"regular",fal:"light","fa-light":"light",fat:"thin","fa-thin":"thin",fab:"brands","fa-brands":"brands"},duotone:{fa:"solid",fad:"solid","fa-solid":"solid","fa-duotone":"solid",fadr:"regular","fa-regular":"regular",fadl:"light","fa-light":"light",fadt:"thin","fa-thin":"thin"},sharp:{fa:"solid",fass:"solid","fa-solid":"solid",fasr:"regular","fa-regular":"regular",fasl:"light","fa-light":"light",fast:"thin","fa-thin":"thin"},"sharp-duotone":{fa:"solid",fasds:"solid","fa-solid":"solid",fasdr:"regular","fa-regular":"regular",fasdl:"light","fa-light":"light",fasdt:"thin","fa-thin":"thin"},slab:{"fa-regular":"regular",faslr:"regular"},"slab-press":{"fa-regular":"regular",faslpr:"regular"},thumbprint:{"fa-light":"light",fatl:"light"},whiteboard:{"fa-semibold":"semibold",fawsb:"semibold"},notdog:{"fa-solid":"solid",fans:"solid"},"notdog-duo":{"fa-solid":"solid",fands:"solid"},etch:{"fa-solid":"solid",faes:"solid"},jelly:{"fa-regular":"regular",fajr:"regular"},"jelly-fill":{"fa-regular":"regular",fajfr:"regular"},"jelly-duo":{"fa-regular":"regular",fajdr:"regular"},chisel:{"fa-regular":"regular",facr:"regular"}},wl={GROUP:"duotone-group",PRIMARY:"primary",SECONDARY:"secondary"},rn=["fa-classic","fa-duotone","fa-sharp","fa-sharp-duotone","fa-thumbprint","fa-whiteboard","fa-notdog","fa-notdog-duo","fa-chisel","fa-etch","fa-jelly","fa-jelly-fill","fa-jelly-duo","fa-slab","fa-slab-press"],ie="classic",Ze="duotone",sn="sharp",cn="sharp-duotone",dn="chisel",un="etch",mn="jelly",fn="jelly-duo",pn="jelly-fill",gn="notdog",vn="notdog-duo",hn="slab",yn="slab-press",bn="thumbprint",xn="whiteboard",Cl="Classic",Bl="Duotone",Vl="Sharp",El="Sharp Duotone",Sl="Chisel",Nl="Etch",$l="Jelly",zl="Jelly Duo",Dl="Jelly Fill",Tl="Notdog",Fl="Notdog Duo",Al="Slab",Ml="Slab Press",Ll="Thumbprint",Pl="Whiteboard",kn=[ie,Ze,sn,cn,dn,un,mn,fn,pn,gn,vn,hn,yn,bn,xn];Nt={},J(J(J(J(J(J(J(J(J(J(Nt,ie,Cl),Ze,Bl),sn,Vl),cn,El),dn,Sl),un,Nl),mn,$l),fn,zl),pn,Dl),gn,Tl),J(J(J(J(J(Nt,vn,Fl),hn,Al),yn,Ml),bn,Ll),xn,Pl);var jl={classic:{900:"fas",400:"far",normal:"far",300:"fal",100:"fat"},duotone:{900:"fad",400:"fadr",300:"fadl",100:"fadt"},sharp:{900:"fass",400:"fasr",300:"fasl",100:"fast"},"sharp-duotone":{900:"fasds",400:"fasdr",300:"fasdl",100:"fasdt"},slab:{400:"faslr"},"slab-press":{400:"faslpr"},whiteboard:{600:"fawsb"},thumbprint:{300:"fatl"},notdog:{900:"fans"},"notdog-duo":{900:"fands"},etch:{900:"faes"},chisel:{400:"facr"},jelly:{400:"fajr"},"jelly-fill":{400:"fajfr"},"jelly-duo":{400:"fajdr"}},Ol={"Font Awesome 7 Free":{900:"fas",400:"far"},"Font Awesome 7 Pro":{900:"fas",400:"far",normal:"far",300:"fal",100:"fat"},"Font Awesome 7 Brands":{400:"fab",normal:"fab"},"Font Awesome 7 Duotone":{900:"fad",400:"fadr",normal:"fadr",300:"fadl",100:"fadt"},"Font Awesome 7 Sharp":{900:"fass",400:"fasr",normal:"fasr",300:"fasl",100:"fast"},"Font Awesome 7 Sharp Duotone":{900:"fasds",400:"fasdr",normal:"fasdr",300:"fasdl",100:"fasdt"},"Font Awesome 7 Jelly":{400:"fajr",normal:"fajr"},"Font Awesome 7 Jelly Fill":{400:"fajfr",normal:"fajfr"},"Font Awesome 7 Jelly Duo":{400:"fajdr",normal:"fajdr"},"Font Awesome 7 Slab":{400:"faslr",normal:"faslr"},"Font Awesome 7 Slab Press":{400:"faslpr",normal:"faslpr"},"Font Awesome 7 Thumbprint":{300:"fatl",normal:"fatl"},"Font Awesome 7 Notdog":{900:"fans",normal:"fans"},"Font Awesome 7 Notdog Duo":{900:"fands",normal:"fands"},"Font Awesome 7 Etch":{900:"faes",normal:"faes"},"Font Awesome 7 Chisel":{400:"facr",normal:"facr"},"Font Awesome 7 Whiteboard":{600:"fawsb",normal:"fawsb"}},Il=new Map([["classic",{defaultShortPrefixId:"fas",defaultStyleId:"solid",styleIds:["solid","regular","light","thin","brands"],futureStyleIds:[],defaultFontWeight:900}],["duotone",{defaultShortPrefixId:"fad",defaultStyleId:"solid",styleIds:["solid","regular","light","thin"],futureStyleIds:[],defaultFontWeight:900}],["sharp",{defaultShortPrefixId:"fass",defaultStyleId:"solid",styleIds:["solid","regular","light","thin"],futureStyleIds:[],defaultFontWeight:900}],["sharp-duotone",{defaultShortPrefixId:"fasds",defaultStyleId:"solid",styleIds:["solid","regular","light","thin"],futureStyleIds:[],defaultFontWeight:900}],["chisel",{defaultShortPrefixId:"facr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["etch",{defaultShortPrefixId:"faes",defaultStyleId:"solid",styleIds:["solid"],futureStyleIds:[],defaultFontWeight:900}],["jelly",{defaultShortPrefixId:"fajr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["jelly-duo",{defaultShortPrefixId:"fajdr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["jelly-fill",{defaultShortPrefixId:"fajfr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["notdog",{defaultShortPrefixId:"fans",defaultStyleId:"solid",styleIds:["solid"],futureStyleIds:[],defaultFontWeight:900}],["notdog-duo",{defaultShortPrefixId:"fands",defaultStyleId:"solid",styleIds:["solid"],futureStyleIds:[],defaultFontWeight:900}],["slab",{defaultShortPrefixId:"faslr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["slab-press",{defaultShortPrefixId:"faslpr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["thumbprint",{defaultShortPrefixId:"fatl",defaultStyleId:"light",styleIds:["light"],futureStyleIds:[],defaultFontWeight:300}],["whiteboard",{defaultShortPrefixId:"fawsb",defaultStyleId:"semibold",styleIds:["semibold"],futureStyleIds:[],defaultFontWeight:600}]]),_l={chisel:{regular:"facr"},classic:{brands:"fab",light:"fal",regular:"far",solid:"fas",thin:"fat"},duotone:{light:"fadl",regular:"fadr",solid:"fad",thin:"fadt"},etch:{solid:"faes"},jelly:{regular:"fajr"},"jelly-duo":{regular:"fajdr"},"jelly-fill":{regular:"fajfr"},notdog:{solid:"fans"},"notdog-duo":{solid:"fands"},sharp:{light:"fasl",regular:"fasr",solid:"fass",thin:"fast"},"sharp-duotone":{light:"fasdl",regular:"fasdr",solid:"fasds",thin:"fasdt"},slab:{regular:"faslr"},"slab-press":{regular:"faslpr"},thumbprint:{light:"fatl"},whiteboard:{semibold:"fawsb"}},wn=["fak","fa-kit","fakd","fa-kit-duotone"],Va={kit:{fak:"kit","fa-kit":"kit"},"kit-duotone":{fakd:"kit-duotone","fa-kit-duotone":"kit-duotone"}},Rl=["kit"],Ul="kit",ql="kit-duotone",Hl="Kit",Wl="Kit Duotone";J(J({},Ul,Hl),ql,Wl);var Yl={kit:{"fa-kit":"fak"}},Gl={"Font Awesome Kit":{400:"fak",normal:"fak"},"Font Awesome Kit Duotone":{400:"fakd",normal:"fakd"}},Kl={kit:{fak:"fa-kit"}},Ea={kit:{kit:"fak"},"kit-duotone":{"kit-duotone":"fakd"}},$t,lt={GROUP:"duotone-group",SWAP_OPACITY:"swap-opacity",PRIMARY:"primary",SECONDARY:"secondary"},Xl=["fa-classic","fa-duotone","fa-sharp","fa-sharp-duotone","fa-thumbprint","fa-whiteboard","fa-notdog","fa-notdog-duo","fa-chisel","fa-etch","fa-jelly","fa-jelly-fill","fa-jelly-duo","fa-slab","fa-slab-press"],Ql="classic",Jl="duotone",Zl="sharp",er="sharp-duotone",tr="chisel",ar="etch",nr="jelly",or="jelly-duo",lr="jelly-fill",rr="notdog",sr="notdog-duo",ir="slab",cr="slab-press",dr="thumbprint",ur="whiteboard",mr="Classic",fr="Duotone",pr="Sharp",gr="Sharp Duotone",vr="Chisel",hr="Etch",yr="Jelly",br="Jelly Duo",xr="Jelly Fill",kr="Notdog",wr="Notdog Duo",Cr="Slab",Br="Slab Press",Vr="Thumbprint",Er="Whiteboard";$t={},J(J(J(J(J(J(J(J(J(J($t,Ql,mr),Jl,fr),Zl,pr),er,gr),tr,vr),ar,hr),nr,yr),or,br),lr,xr),rr,kr),J(J(J(J(J($t,sr,wr),ir,Cr),cr,Br),dr,Vr),ur,Er);var Sr="kit",Nr="kit-duotone",$r="Kit",zr="Kit Duotone";J(J({},Sr,$r),Nr,zr);var Dr={classic:{"fa-brands":"fab","fa-duotone":"fad","fa-light":"fal","fa-regular":"far","fa-solid":"fas","fa-thin":"fat"},duotone:{"fa-regular":"fadr","fa-light":"fadl","fa-thin":"fadt"},sharp:{"fa-solid":"fass","fa-regular":"fasr","fa-light":"fasl","fa-thin":"fast"},"sharp-duotone":{"fa-solid":"fasds","fa-regular":"fasdr","fa-light":"fasdl","fa-thin":"fasdt"},slab:{"fa-regular":"faslr"},"slab-press":{"fa-regular":"faslpr"},whiteboard:{"fa-semibold":"fawsb"},thumbprint:{"fa-light":"fatl"},notdog:{"fa-solid":"fans"},"notdog-duo":{"fa-solid":"fands"},etch:{"fa-solid":"faes"},jelly:{"fa-regular":"fajr"},"jelly-fill":{"fa-regular":"fajfr"},"jelly-duo":{"fa-regular":"fajdr"},chisel:{"fa-regular":"facr"}},Tr={classic:["fas","far","fal","fat","fad"],duotone:["fadr","fadl","fadt"],sharp:["fass","fasr","fasl","fast"],"sharp-duotone":["fasds","fasdr","fasdl","fasdt"],slab:["faslr"],"slab-press":["faslpr"],whiteboard:["fawsb"],thumbprint:["fatl"],notdog:["fans"],"notdog-duo":["fands"],etch:["faes"],jelly:["fajr"],"jelly-fill":["fajfr"],"jelly-duo":["fajdr"],chisel:["facr"]},Lt={classic:{fab:"fa-brands",fad:"fa-duotone",fal:"fa-light",far:"fa-regular",fas:"fa-solid",fat:"fa-thin"},duotone:{fadr:"fa-regular",fadl:"fa-light",fadt:"fa-thin"},sharp:{fass:"fa-solid",fasr:"fa-regular",fasl:"fa-light",fast:"fa-thin"},"sharp-duotone":{fasds:"fa-solid",fasdr:"fa-regular",fasdl:"fa-light",fasdt:"fa-thin"},slab:{faslr:"fa-regular"},"slab-press":{faslpr:"fa-regular"},whiteboard:{fawsb:"fa-semibold"},thumbprint:{fatl:"fa-light"},notdog:{fans:"fa-solid"},"notdog-duo":{fands:"fa-solid"},etch:{faes:"fa-solid"},jelly:{fajr:"fa-regular"},"jelly-fill":{fajfr:"fa-regular"},"jelly-duo":{fajdr:"fa-regular"},chisel:{facr:"fa-regular"}},Fr=["fa-solid","fa-regular","fa-light","fa-thin","fa-duotone","fa-brands","fa-semibold"],Cn=["fa","fas","far","fal","fat","fad","fadr","fadl","fadt","fab","fass","fasr","fasl","fast","fasds","fasdr","fasdl","fasdt","faslr","faslpr","fawsb","fatl","fans","fands","faes","fajr","fajfr","fajdr","facr"].concat(Xl,Fr),Ar=["solid","regular","light","thin","duotone","brands","semibold"],Bn=[1,2,3,4,5,6,7,8,9,10],Mr=Bn.concat([11,12,13,14,15,16,17,18,19,20]),Lr=["aw","fw","pull-left","pull-right"],Pr=[].concat(ye(Object.keys(Tr)),Ar,Lr,["2xs","xs","sm","lg","xl","2xl","beat","border","fade","beat-fade","bounce","flip-both","flip-horizontal","flip-vertical","flip","inverse","layers","layers-bottom-left","layers-bottom-right","layers-counter","layers-text","layers-top-left","layers-top-right","li","pull-end","pull-start","pulse","rotate-180","rotate-270","rotate-90","rotate-by","shake","spin-pulse","spin-reverse","spin","stack-1x","stack-2x","stack","ul","width-auto","width-fixed",lt.GROUP,lt.SWAP_OPACITY,lt.PRIMARY,lt.SECONDARY]).concat(Bn.map(function(t){return"".concat(t,"x")})).concat(Mr.map(function(t){return"w-".concat(t)})),jr={"Font Awesome 5 Free":{900:"fas",400:"far"},"Font Awesome 5 Pro":{900:"fas",400:"far",normal:"far",300:"fal"},"Font Awesome 5 Brands":{400:"fab",normal:"fab"},"Font Awesome 5 Duotone":{900:"fad"}},Ve="___FONT_AWESOME___",Pt=16,Vn="fa",En="svg-inline--fa",Fe="data-fa-i2svg",jt="data-fa-pseudo-element",Or="data-fa-pseudo-element-pending",ta="data-prefix",aa="data-icon",Sa="fontawesome-i2svg",Ir="async",_r=["HTML","HEAD","STYLE","SCRIPT"],Sn=["::before","::after",":before",":after"],Nn=(function(){try{return process.env.NODE_ENV==="production"}catch{return!1}})();function et(t){return new Proxy(t,{get:function(a,o){return o in a?a[o]:a[ie]}})}var $n=I({},ln);$n[ie]=I(I(I(I({},{"fa-duotone":"duotone"}),ln[ie]),Va.kit),Va["kit-duotone"]);var Rr=et($n),Ot=I({},_l);Ot[ie]=I(I(I(I({},{duotone:"fad"}),Ot[ie]),Ea.kit),Ea["kit-duotone"]);var Na=et(Ot),It=I({},Lt);It[ie]=I(I({},It[ie]),Kl.kit);var na=et(It),_t=I({},Dr);_t[ie]=I(I({},_t[ie]),Yl.kit);et(_t);var Ur=xl,zn="fa-layers-text",qr=kl,Hr=I({},jl);et(Hr);var Wr=["class","data-prefix","data-icon","data-fa-transform","data-fa-mask"],zt=wl,Yr=[].concat(ye(Rl),ye(Pr)),He=Ne.FontAwesomeConfig||{};function Gr(t){var n=te.querySelector("script["+t+"]");if(n)return n.getAttribute(t)}function Kr(t){return t===""?!0:t==="false"?!1:t==="true"?!0:t}if(te&&typeof te.querySelector=="function"){var Xr=[["data-family-prefix","familyPrefix"],["data-css-prefix","cssPrefix"],["data-family-default","familyDefault"],["data-style-default","styleDefault"],["data-replacement-class","replacementClass"],["data-auto-replace-svg","autoReplaceSvg"],["data-auto-add-css","autoAddCss"],["data-search-pseudo-elements","searchPseudoElements"],["data-search-pseudo-elements-warnings","searchPseudoElementsWarnings"],["data-search-pseudo-elements-full-scan","searchPseudoElementsFullScan"],["data-observe-mutations","observeMutations"],["data-mutate-approach","mutateApproach"],["data-keep-original-source","keepOriginalSource"],["data-measure-performance","measurePerformance"],["data-show-missing-icons","showMissingIcons"]];Xr.forEach(function(t){var n=gt(t,2),a=n[0],o=n[1],l=Kr(Gr(a));l!=null&&(He[o]=l)})}var Dn={styleDefault:"solid",familyDefault:ie,cssPrefix:Vn,replacementClass:En,autoReplaceSvg:!0,autoAddCss:!0,searchPseudoElements:!1,searchPseudoElementsWarnings:!0,searchPseudoElementsFullScan:!1,observeMutations:!0,mutateApproach:"async",keepOriginalSource:!0,measurePerformance:!1,showMissingIcons:!0};He.familyPrefix&&(He.cssPrefix=He.familyPrefix);var Ie=I(I({},Dn),He);Ie.autoReplaceSvg||(Ie.observeMutations=!1);var Q={};Object.keys(Dn).forEach(function(t){Object.defineProperty(Q,t,{enumerable:!0,set:function(a){Ie[t]=a,We.forEach(function(o){return o(Q)})},get:function(){return Ie[t]}})});Object.defineProperty(Q,"familyPrefix",{enumerable:!0,set:function(n){Ie.cssPrefix=n,We.forEach(function(a){return a(Q)})},get:function(){return Ie.cssPrefix}});Ne.FontAwesomeConfig=Q;var We=[];function Qr(t){return We.push(t),function(){We.splice(We.indexOf(t),1)}}var Le=Pt,ke={size:16,x:0,y:0,rotate:0,flipX:!1,flipY:!1};function Jr(t){if(!(!t||!Se)){var n=te.createElement("style");n.setAttribute("type","text/css"),n.innerHTML=t;for(var a=te.head.childNodes,o=null,l=a.length-1;l>-1;l--){var r=a[l],s=(r.tagName||"").toUpperCase();["STYLE","LINK"].indexOf(s)>-1&&(o=r)}return te.head.insertBefore(n,o),t}}var Zr="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";function $a(){for(var t=12,n="";t-- >0;)n+=Zr[Math.random()*62|0];return n}function _e(t){for(var n=[],a=(t||[]).length>>>0;a--;)n[a]=t[a];return n}function oa(t){return t.classList?_e(t.classList):(t.getAttribute("class")||"").split(" ").filter(function(n){return n})}function Tn(t){return"".concat(t).replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function es(t){return Object.keys(t||{}).reduce(function(n,a){return n+"".concat(a,'="').concat(Tn(t[a]),'" ')},"").trim()}function vt(t){return Object.keys(t||{}).reduce(function(n,a){return n+"".concat(a,": ").concat(t[a].trim(),";")},"")}function la(t){return t.size!==ke.size||t.x!==ke.x||t.y!==ke.y||t.rotate!==ke.rotate||t.flipX||t.flipY}function ts(t){var n=t.transform,a=t.containerWidth,o=t.iconWidth,l={transform:"translate(".concat(a/2," 256)")},r="translate(".concat(n.x*32,", ").concat(n.y*32,") "),s="scale(".concat(n.size/16*(n.flipX?-1:1),", ").concat(n.size/16*(n.flipY?-1:1),") "),i="rotate(".concat(n.rotate," 0 0)"),c={transform:"".concat(r," ").concat(s," ").concat(i)},f={transform:"translate(".concat(o/2*-1," -256)")};return{outer:l,inner:c,path:f}}function as(t){var n=t.transform,a=t.width,o=a===void 0?Pt:a,l=t.height,r=l===void 0?Pt:l,s="";return on?s+="translate(".concat(n.x/Le-o/2,"em, ").concat(n.y/Le-r/2,"em) "):s+="translate(calc(-50% + ".concat(n.x/Le,"em), calc(-50% + ").concat(n.y/Le,"em)) "),s+="scale(".concat(n.size/Le*(n.flipX?-1:1),", ").concat(n.size/Le*(n.flipY?-1:1),") "),s+="rotate(".concat(n.rotate,"deg) "),s}var ns=`:root, :host {
9
9
  --fa-font-solid: normal 900 1em/1 "Font Awesome 7 Free";
10
10
  --fa-font-regular: normal 400 1em/1 "Font Awesome 7 Free";
11
11
  --fa-font-light: normal 300 1em/1 "Font Awesome 7 Pro";
@@ -552,11 +552,11 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
552
552
  margin: auto;
553
553
  position: absolute;
554
554
  z-index: var(--fa-stack-z-index, auto);
555
- }`;function Tn(){var t=Vn,n=En,a=ae.cssPrefix,o=ae.replacementClass,l=ns;if(a!==t||o!==n){var r=new RegExp("\\.".concat(t,"\\-"),"g"),s=new RegExp("\\--".concat(t,"\\-"),"g"),i=new RegExp("\\.".concat(n),"g");l=l.replace(r,".".concat(a,"-")).replace(s,"--".concat(a,"-")).replace(i,".".concat(o))}return l}var za=!1;function Dt(){ae.autoAddCss&&!za&&(Jr(Tn()),za=!0)}var os={mixout:function(){return{dom:{css:Tn,insertCss:Dt}}},hooks:function(){return{beforeDOMElementCreation:function(){Dt()},beforeI2svg:function(){Dt()}}}},$e=De||{};$e[Se]||($e[Se]={});$e[Se].styles||($e[Se].styles={});$e[Se].hooks||($e[Se].hooks={});$e[Se].shims||($e[Se].shims=[]);var ke=$e[Se],An=[],Mn=function(){ce.removeEventListener("DOMContentLoaded",Mn),dt=1,An.map(function(n){return n()})},dt=!1;ze&&(dt=(ce.documentElement.doScroll?/^loaded|^c/:/^loaded|^i|^c/).test(ce.readyState),dt||ce.addEventListener("DOMContentLoaded",Mn));function ls(t){ze&&(dt?setTimeout(t,0):An.push(t))}function at(t){var n=t.tag,a=t.attributes,o=a===void 0?{}:a,l=t.children,r=l===void 0?[]:l;return typeof t=="string"?Fn(t):"<".concat(n," ").concat(es(o),">").concat(r.map(at).join(""),"</").concat(n,">")}function Da(t,n,a){if(t&&t[n]&&t[n][a])return{prefix:n,iconName:a,icon:t[n][a]}}var Ft=function(n,a,o,l){var r=Object.keys(n),s=r.length,i=a,c,u,b;for(o===void 0?(c=1,b=n[r[0]]):(c=0,b=o);c<s;c++)u=r[c],b=i(b,n[u],u,n);return b};function Ln(t){return Ce(t).length!==1?null:t.codePointAt(0).toString(16)}function Fa(t){return Object.keys(t).reduce(function(n,a){var o=t[a],l=!!o.icon;return l?n[o.iconName]=o.icon:n[a]=o,n},{})}function Rt(t,n){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=a.skipHooks,l=o===void 0?!1:o,r=Fa(n);typeof ke.hooks.addPack=="function"&&!l?ke.hooks.addPack(t,Fa(n)):ke.styles[t]=R(R({},ke.styles[t]||{}),r),t==="fas"&&Rt("fa",n)}var Qe=ke.styles,rs=ke.shims,Pn=Object.keys(na),ss=Pn.reduce(function(t,n){return t[n]=Object.keys(na[n]),t},{}),ra=null,jn={},On={},In={},_n={},Rn={};function is(t){return~Yr.indexOf(t)}function cs(t,n){var a=n.split("-"),o=a[0],l=a.slice(1).join("-");return o===t&&l!==""&&!is(l)?l:null}var Un=function(){var n=function(r){return Ft(Qe,function(s,i,c){return s[c]=Ft(i,r,{}),s},{})};jn=n(function(l,r,s){if(r[3]&&(l[r[3]]=s),r[2]){var i=r[2].filter(function(c){return typeof c=="number"});i.forEach(function(c){l[c.toString(16)]=s})}return l}),On=n(function(l,r,s){if(l[s]=s,r[2]){var i=r[2].filter(function(c){return typeof c=="string"});i.forEach(function(c){l[c]=s})}return l}),Rn=n(function(l,r,s){var i=r[2];return l[s]=s,i.forEach(function(c){l[c]=s}),l});var a="far"in Qe||ae.autoFetchSvg,o=Ft(rs,function(l,r){var s=r[0],i=r[1],c=r[2];return i==="far"&&!a&&(i="fas"),typeof s=="string"&&(l.names[s]={prefix:i,iconName:c}),typeof s=="number"&&(l.unicodes[s.toString(16)]={prefix:i,iconName:c}),l},{names:{},unicodes:{}});In=o.names,_n=o.unicodes,ra=ht(ae.styleDefault,{family:ae.familyDefault})};Qr(function(t){ra=ht(t.styleDefault,{family:ae.familyDefault})});Un();function sa(t,n){return(jn[t]||{})[n]}function ds(t,n){return(On[t]||{})[n]}function Ae(t,n){return(Rn[t]||{})[n]}function qn(t){return In[t]||{prefix:null,iconName:null}}function us(t){var n=_n[t],a=sa("fas",t);return n||(a?{prefix:"fas",iconName:a}:null)||{prefix:null,iconName:null}}function Fe(){return ra}var Hn=function(){return{prefix:null,iconName:null,rest:[]}};function ms(t){var n=fe,a=Pn.reduce(function(o,l){return o[l]="".concat(ae.cssPrefix,"-").concat(l),o},{});return kn.forEach(function(o){(t.includes(a[o])||t.some(function(l){return ss[o].includes(l)}))&&(n=o)}),n}function ht(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=n.family,o=a===void 0?fe:a,l=Rr[o][t];if(o===et&&!t)return"fad";var r=Sa[o][t]||Sa[o][l],s=t in ke.styles?t:null,i=r||s||null;return i}function fs(t){var n=[],a=null;return t.forEach(function(o){var l=cs(ae.cssPrefix,o);l?a=l:o&&n.push(o)}),{iconName:a,rest:n}}function Ta(t){return t.sort().filter(function(n,a,o){return o.indexOf(n)===a})}var Aa=Cn.concat(wn);function yt(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=n.skipLookups,o=a===void 0?!1:a,l=null,r=Ta(t.filter(function(B){return Aa.includes(B)})),s=Ta(t.filter(function(B){return!Aa.includes(B)})),i=r.filter(function(B){return l=B,!rn.includes(B)}),c=gt(i,1),u=c[0],b=u===void 0?null:u,C=ms(r),z=R(R({},fs(s)),{},{prefix:ht(b,{family:C})});return R(R(R({},z),hs({values:t,family:C,styles:Qe,config:ae,canonical:z,givenPrefix:l})),ps(o,l,z))}function ps(t,n,a){var o=a.prefix,l=a.iconName;if(t||!o||!l)return{prefix:o,iconName:l};var r=n==="fa"?qn(l):{},s=Ae(o,l);return l=r.iconName||s||l,o=r.prefix||o,o==="far"&&!Qe.far&&Qe.fas&&!ae.autoFetchSvg&&(o="fas"),{prefix:o,iconName:l}}var gs=kn.filter(function(t){return t!==fe||t!==et}),vs=Object.keys(Lt).filter(function(t){return t!==fe}).map(function(t){return Object.keys(Lt[t])}).flat();function hs(t){var n=t.values,a=t.family,o=t.canonical,l=t.givenPrefix,r=l===void 0?"":l,s=t.styles,i=s===void 0?{}:s,c=t.config,u=c===void 0?{}:c,b=a===et,C=n.includes("fa-duotone")||n.includes("fad"),z=u.familyDefault==="duotone",B=o.prefix==="fad"||o.prefix==="fa-duotone";if(!b&&(C||z||B)&&(o.prefix="fad"),(n.includes("fa-brands")||n.includes("fab"))&&(o.prefix="fab"),!o.prefix&&gs.includes(a)){var V=Object.keys(i).find(function(h){return vs.includes(h)});if(V||u.autoFetchSvg){var k=Il.get(a).defaultShortPrefixId;o.prefix=k,o.iconName=Ae(o.prefix,o.iconName)||o.iconName}}return(o.prefix==="fa"||r==="fa")&&(o.prefix=Fe()||"fas"),o}var ys=(function(){function t(){ul(this,t),this.definitions={}}return fl(t,[{key:"add",value:function(){for(var a=this,o=arguments.length,l=new Array(o),r=0;r<o;r++)l[r]=arguments[r];var s=l.reduce(this._pullDefinitions,{});Object.keys(s).forEach(function(i){a.definitions[i]=R(R({},a.definitions[i]||{}),s[i]),Rt(i,s[i]);var c=na[fe][i];c&&Rt(c,s[i]),Un()})}},{key:"reset",value:function(){this.definitions={}}},{key:"_pullDefinitions",value:function(a,o){var l=o.prefix&&o.iconName&&o.icon?{0:o}:o;return Object.keys(l).map(function(r){var s=l[r],i=s.prefix,c=s.iconName,u=s.icon,b=u[2];a[i]||(a[i]={}),b.length>0&&b.forEach(function(C){typeof C=="string"&&(a[i][C]=u)}),a[i][c]=u}),a}}])})(),Ma=[],Ie={},_e={},bs=Object.keys(_e);function xs(t,n){var a=n.mixoutsTo;return Ma=t,Ie={},Object.keys(_e).forEach(function(o){bs.indexOf(o)===-1&&delete _e[o]}),Ma.forEach(function(o){var l=o.mixout?o.mixout():{};if(Object.keys(l).forEach(function(s){typeof l[s]=="function"&&(a[s]=l[s]),ct(l[s])==="object"&&Object.keys(l[s]).forEach(function(i){a[s]||(a[s]={}),a[s][i]=l[s][i]})}),o.hooks){var r=o.hooks();Object.keys(r).forEach(function(s){Ie[s]||(Ie[s]=[]),Ie[s].push(r[s])})}o.provides&&o.provides(_e)}),a}function Ut(t,n){for(var a=arguments.length,o=new Array(a>2?a-2:0),l=2;l<a;l++)o[l-2]=arguments[l];var r=Ie[t]||[];return r.forEach(function(s){n=s.apply(null,[n].concat(o))}),n}function Le(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),o=1;o<n;o++)a[o-1]=arguments[o];var l=Ie[t]||[];l.forEach(function(r){r.apply(null,a)})}function Te(){var t=arguments[0],n=Array.prototype.slice.call(arguments,1);return _e[t]?_e[t].apply(null,n):void 0}function qt(t){t.prefix==="fa"&&(t.prefix="fas");var n=t.iconName,a=t.prefix||Fe();if(n)return n=Ae(a,n)||n,Da(Wn.definitions,a,n)||Da(ke.styles,a,n)}var Wn=new ys,ks=function(){ae.autoReplaceSvg=!1,ae.observeMutations=!1,Le("noAuto")},ws={i2svg:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return ze?(Le("beforeI2svg",n),Te("pseudoElements2svg",n),Te("i2svg",n)):Promise.reject(new Error("Operation requires a DOM of some kind."))},watch:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},a=n.autoReplaceSvgRoot;ae.autoReplaceSvg===!1&&(ae.autoReplaceSvg=!0),ae.observeMutations=!0,ls(function(){Bs({autoReplaceSvgRoot:a}),Le("watch",n)})}},Cs={icon:function(n){if(n===null)return null;if(ct(n)==="object"&&n.prefix&&n.iconName)return{prefix:n.prefix,iconName:Ae(n.prefix,n.iconName)||n.iconName};if(Array.isArray(n)&&n.length===2){var a=n[1].indexOf("fa-")===0?n[1].slice(3):n[1],o=ht(n[0]);return{prefix:o,iconName:Ae(o,a)||a}}if(typeof n=="string"&&(n.indexOf("".concat(ae.cssPrefix,"-"))>-1||n.match(Ur))){var l=yt(n.split(" "),{skipLookups:!0});return{prefix:l.prefix||Fe(),iconName:Ae(l.prefix,l.iconName)||l.iconName}}if(typeof n=="string"){var r=Fe();return{prefix:r,iconName:Ae(r,n)||n}}}},be={noAuto:ks,config:ae,dom:ws,parse:Cs,library:Wn,findIconDefinition:qt,toHtml:at},Bs=function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},a=n.autoReplaceSvgRoot,o=a===void 0?ce:a;(Object.keys(ke.styles).length>0||ae.autoFetchSvg)&&ze&&ae.autoReplaceSvg&&be.dom.i2svg({node:o})};function bt(t,n){return Object.defineProperty(t,"abstract",{get:n}),Object.defineProperty(t,"html",{get:function(){return t.abstract.map(function(o){return at(o)})}}),Object.defineProperty(t,"node",{get:function(){if(ze){var o=ce.createElement("div");return o.innerHTML=t.html,o.children}}}),t}function Vs(t){var n=t.children,a=t.main,o=t.mask,l=t.attributes,r=t.styles,s=t.transform;if(la(s)&&a.found&&!o.found){var i=a.width,c=a.height,u={x:i/c/2,y:.5};l.style=vt(R(R({},r),{},{"transform-origin":"".concat(u.x+s.x/16,"em ").concat(u.y+s.y/16,"em")}))}return[{tag:"svg",attributes:l,children:n}]}function Es(t){var n=t.prefix,a=t.iconName,o=t.children,l=t.attributes,r=t.symbol,s=r===!0?"".concat(n,"-").concat(ae.cssPrefix,"-").concat(a):r;return[{tag:"svg",attributes:{style:"display: none;"},children:[{tag:"symbol",attributes:R(R({},l),{},{id:s}),children:o}]}]}function Ns(t){var n=["aria-label","aria-labelledby","title","role"];return n.some(function(a){return a in t})}function ia(t){var n=t.icons,a=n.main,o=n.mask,l=t.prefix,r=t.iconName,s=t.transform,i=t.symbol,c=t.maskId,u=t.extra,b=t.watchable,C=b===void 0?!1:b,z=o.found?o:a,B=z.width,V=z.height,k=[ae.replacementClass,r?"".concat(ae.cssPrefix,"-").concat(r):""].filter(function(S){return u.classes.indexOf(S)===-1}).filter(function(S){return S!==""||!!S}).concat(u.classes).join(" "),h={children:[],attributes:R(R({},u.attributes),{},{"data-prefix":l,"data-icon":r,class:k,role:u.attributes.role||"img",viewBox:"0 0 ".concat(B," ").concat(V)})};!Ns(u.attributes)&&!u.attributes["aria-hidden"]&&(h.attributes["aria-hidden"]="true"),C&&(h.attributes[Me]="");var g=R(R({},h),{},{prefix:l,iconName:r,main:a,mask:o,maskId:c,transform:s,symbol:i,styles:R({},u.styles)}),v=o.found&&a.found?Te("generateAbstractMask",g)||{children:[],attributes:{}}:Te("generateAbstractIcon",g)||{children:[],attributes:{}},x=v.children,D=v.attributes;return g.children=x,g.attributes=D,i?Es(g):Vs(g)}function La(t){var n=t.content,a=t.width,o=t.height,l=t.transform,r=t.extra,s=t.watchable,i=s===void 0?!1:s,c=R(R({},r.attributes),{},{class:r.classes.join(" ")});i&&(c[Me]="");var u=R({},r.styles);la(l)&&(u.transform=as({transform:l,width:a,height:o}),u["-webkit-transform"]=u.transform);var b=vt(u);b.length>0&&(c.style=b);var C=[];return C.push({tag:"span",attributes:c,children:[n]}),C}function Ss(t){var n=t.content,a=t.extra,o=R(R({},a.attributes),{},{class:a.classes.join(" ")}),l=vt(a.styles);l.length>0&&(o.style=l);var r=[];return r.push({tag:"span",attributes:o,children:[n]}),r}var Tt=ke.styles;function Ht(t){var n=t[0],a=t[1],o=t.slice(4),l=gt(o,1),r=l[0],s=null;return Array.isArray(r)?s={tag:"g",attributes:{class:"".concat(ae.cssPrefix,"-").concat(zt.GROUP)},children:[{tag:"path",attributes:{class:"".concat(ae.cssPrefix,"-").concat(zt.SECONDARY),fill:"currentColor",d:r[0]}},{tag:"path",attributes:{class:"".concat(ae.cssPrefix,"-").concat(zt.PRIMARY),fill:"currentColor",d:r[1]}}]}:s={tag:"path",attributes:{fill:"currentColor",d:r}},{found:!0,width:n,height:a,icon:s}}var $s={found:!1,width:512,height:512};function zs(t,n){!Sn&&!ae.showMissingIcons&&t&&console.error('Icon with name "'.concat(t,'" and prefix "').concat(n,'" is missing.'))}function Wt(t,n){var a=n;return n==="fa"&&ae.styleDefault!==null&&(n=Fe()),new Promise(function(o,l){if(a==="fa"){var r=qn(t)||{};t=r.iconName||t,n=r.prefix||n}if(t&&n&&Tt[n]&&Tt[n][t]){var s=Tt[n][t];return o(Ht(s))}zs(t,n),o(R(R({},$s),{},{icon:ae.showMissingIcons&&t?Te("missingIconAbstract")||{}:{}}))})}var Pa=function(){},Yt=ae.measurePerformance&&ot&&ot.mark&&ot.measure?ot:{mark:Pa,measure:Pa},We='FA "7.0.1"',Ds=function(n){return Yt.mark("".concat(We," ").concat(n," begins")),function(){return Yn(n)}},Yn=function(n){Yt.mark("".concat(We," ").concat(n," ends")),Yt.measure("".concat(We," ").concat(n),"".concat(We," ").concat(n," begins"),"".concat(We," ").concat(n," ends"))},ca={begin:Ds,end:Yn},st=function(){};function ja(t){var n=t.getAttribute?t.getAttribute(Me):null;return typeof n=="string"}function Fs(t){var n=t.getAttribute?t.getAttribute(ta):null,a=t.getAttribute?t.getAttribute(aa):null;return n&&a}function Ts(t){return t&&t.classList&&t.classList.contains&&t.classList.contains(ae.replacementClass)}function As(){if(ae.autoReplaceSvg===!0)return it.replace;var t=it[ae.autoReplaceSvg];return t||it.replace}function Ms(t){return ce.createElementNS("http://www.w3.org/2000/svg",t)}function Ls(t){return ce.createElement(t)}function Gn(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=n.ceFn,o=a===void 0?t.tag==="svg"?Ms:Ls:a;if(typeof t=="string")return ce.createTextNode(t);var l=o(t.tag);Object.keys(t.attributes||[]).forEach(function(s){l.setAttribute(s,t.attributes[s])});var r=t.children||[];return r.forEach(function(s){l.appendChild(Gn(s,{ceFn:o}))}),l}function Ps(t){var n=" ".concat(t.outerHTML," ");return n="".concat(n,"Font Awesome fontawesome.com "),n}var it={replace:function(n){var a=n[0];if(a.parentNode)if(n[1].forEach(function(l){a.parentNode.insertBefore(Gn(l),a)}),a.getAttribute(Me)===null&&ae.keepOriginalSource){var o=ce.createComment(Ps(a));a.parentNode.replaceChild(o,a)}else a.remove()},nest:function(n){var a=n[0],o=n[1];if(~oa(a).indexOf(ae.replacementClass))return it.replace(n);var l=new RegExp("".concat(ae.cssPrefix,"-.*"));if(delete o[0].attributes.id,o[0].attributes.class){var r=o[0].attributes.class.split(" ").reduce(function(i,c){return c===ae.replacementClass||c.match(l)?i.toSvg.push(c):i.toNode.push(c),i},{toNode:[],toSvg:[]});o[0].attributes.class=r.toSvg.join(" "),r.toNode.length===0?a.removeAttribute("class"):a.setAttribute("class",r.toNode.join(" "))}var s=o.map(function(i){return at(i)}).join(`
556
- `);a.setAttribute(Me,""),a.innerHTML=s}};function Oa(t){t()}function Kn(t,n){var a=typeof n=="function"?n:st;if(t.length===0)a();else{var o=Oa;ae.mutateApproach===Ir&&(o=De.requestAnimationFrame||Oa),o(function(){var l=As(),r=ca.begin("mutate");t.map(l),r(),a()})}}var da=!1;function Xn(){da=!0}function Gt(){da=!1}var ut=null;function Ia(t){if(Ba&&ae.observeMutations){var n=t.treeCallback,a=n===void 0?st:n,o=t.nodeCallback,l=o===void 0?st:o,r=t.pseudoElementsCallback,s=r===void 0?st:r,i=t.observeMutationsRoot,c=i===void 0?ce:i;ut=new Ba(function(u){if(!da){var b=Fe();qe(u).forEach(function(C){if(C.type==="childList"&&C.addedNodes.length>0&&!ja(C.addedNodes[0])&&(ae.searchPseudoElements&&s(C.target),a(C.target)),C.type==="attributes"&&C.target.parentNode&&ae.searchPseudoElements&&s([C.target],!0),C.type==="attributes"&&ja(C.target)&&~Wr.indexOf(C.attributeName))if(C.attributeName==="class"&&Fs(C.target)){var z=yt(oa(C.target)),B=z.prefix,V=z.iconName;C.target.setAttribute(ta,B||b),V&&C.target.setAttribute(aa,V)}else Ts(C.target)&&l(C.target)})}}),ze&&ut.observe(c,{childList:!0,attributes:!0,characterData:!0,subtree:!0})}}function js(){ut&&ut.disconnect()}function Os(t){var n=t.getAttribute("style"),a=[];return n&&(a=n.split(";").reduce(function(o,l){var r=l.split(":"),s=r[0],i=r.slice(1);return s&&i.length>0&&(o[s]=i.join(":").trim()),o},{})),a}function Is(t){var n=t.getAttribute("data-prefix"),a=t.getAttribute("data-icon"),o=t.innerText!==void 0?t.innerText.trim():"",l=yt(oa(t));return l.prefix||(l.prefix=Fe()),n&&a&&(l.prefix=n,l.iconName=a),l.iconName&&l.prefix||(l.prefix&&o.length>0&&(l.iconName=ds(l.prefix,t.innerText)||sa(l.prefix,Ln(t.innerText))),!l.iconName&&ae.autoFetchSvg&&t.firstChild&&t.firstChild.nodeType===Node.TEXT_NODE&&(l.iconName=t.firstChild.data)),l}function _s(t){var n=qe(t.attributes).reduce(function(a,o){return a.name!=="class"&&a.name!=="style"&&(a[o.name]=o.value),a},{});return n}function Rs(){return{iconName:null,prefix:null,transform:Ve,symbol:!1,mask:{iconName:null,prefix:null,rest:[]},maskId:null,extra:{classes:[],styles:{},attributes:{}}}}function _a(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{styleParser:!0},a=Is(t),o=a.iconName,l=a.prefix,r=a.rest,s=_s(t),i=Ut("parseNodeAttributes",{},t),c=n.styleParser?Os(t):[];return R({iconName:o,prefix:l,transform:Ve,mask:{iconName:null,prefix:null,rest:[]},maskId:null,symbol:!1,extra:{classes:r,styles:c,attributes:s}},i)}var Us=ke.styles;function Qn(t){var n=ae.autoReplaceSvg==="nest"?_a(t,{styleParser:!1}):_a(t);return~n.extra.classes.indexOf(zn)?Te("generateLayersText",t,n):Te("generateSvgReplacementMutation",t,n)}function qs(){return[].concat(Ce(wn),Ce(Cn))}function Ra(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;if(!ze)return Promise.resolve();var a=ce.documentElement.classList,o=function(C){return a.add("".concat(Na,"-").concat(C))},l=function(C){return a.remove("".concat(Na,"-").concat(C))},r=ae.autoFetchSvg?qs():rn.concat(Object.keys(Us));r.includes("fa")||r.push("fa");var s=[".".concat(zn,":not([").concat(Me,"])")].concat(r.map(function(b){return".".concat(b,":not([").concat(Me,"])")})).join(", ");if(s.length===0)return Promise.resolve();var i=[];try{i=qe(t.querySelectorAll(s))}catch{}if(i.length>0)o("pending"),l("complete");else return Promise.resolve();var c=ca.begin("onTree"),u=i.reduce(function(b,C){try{var z=Qn(C);z&&b.push(z)}catch(B){Sn||B.name==="MissingIcon"&&console.error(B)}return b},[]);return new Promise(function(b,C){Promise.all(u).then(function(z){Kn(z,function(){o("active"),o("complete"),l("pending"),typeof n=="function"&&n(),c(),b()})}).catch(function(z){c(),C(z)})})}function Hs(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;Qn(t).then(function(a){a&&Kn([a],n)})}function Ws(t){return function(n){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=(n||{}).icon?n:qt(n||{}),l=a.mask;return l&&(l=(l||{}).icon?l:qt(l||{})),t(o,R(R({},a),{},{mask:l}))}}var Ys=function(n){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=a.transform,l=o===void 0?Ve:o,r=a.symbol,s=r===void 0?!1:r,i=a.mask,c=i===void 0?null:i,u=a.maskId,b=u===void 0?null:u,C=a.classes,z=C===void 0?[]:C,B=a.attributes,V=B===void 0?{}:B,k=a.styles,h=k===void 0?{}:k;if(n){var g=n.prefix,v=n.iconName,x=n.icon;return bt(R({type:"icon"},n),function(){return Le("beforeDOMElementCreation",{iconDefinition:n,params:a}),ia({icons:{main:Ht(x),mask:c?Ht(c.icon):{found:!1,width:null,height:null,icon:{}}},prefix:g,iconName:v,transform:R(R({},Ve),l),symbol:s,maskId:b,extra:{attributes:V,styles:h,classes:z}})})}},Gs={mixout:function(){return{icon:Ws(Ys)}},hooks:function(){return{mutationObserverCallbacks:function(a){return a.treeCallback=Ra,a.nodeCallback=Hs,a}}},provides:function(n){n.i2svg=function(a){var o=a.node,l=o===void 0?ce:o,r=a.callback,s=r===void 0?function(){}:r;return Ra(l,s)},n.generateSvgReplacementMutation=function(a,o){var l=o.iconName,r=o.prefix,s=o.transform,i=o.symbol,c=o.mask,u=o.maskId,b=o.extra;return new Promise(function(C,z){Promise.all([Wt(l,r),c.iconName?Wt(c.iconName,c.prefix):Promise.resolve({found:!1,width:512,height:512,icon:{}})]).then(function(B){var V=gt(B,2),k=V[0],h=V[1];C([a,ia({icons:{main:k,mask:h},prefix:r,iconName:l,transform:s,symbol:i,maskId:u,extra:b,watchable:!0})])}).catch(z)})},n.generateAbstractIcon=function(a){var o=a.children,l=a.attributes,r=a.main,s=a.transform,i=a.styles,c=vt(i);c.length>0&&(l.style=c);var u;return la(s)&&(u=Te("generateAbstractTransformGrouping",{main:r,transform:s,containerWidth:r.width,iconWidth:r.width})),o.push(u||r.icon),{children:o,attributes:l}}}},Ks={mixout:function(){return{layer:function(a){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},l=o.classes,r=l===void 0?[]:l;return bt({type:"layer"},function(){Le("beforeDOMElementCreation",{assembler:a,params:o});var s=[];return a(function(i){Array.isArray(i)?i.map(function(c){s=s.concat(c.abstract)}):s=s.concat(i.abstract)}),[{tag:"span",attributes:{class:["".concat(ae.cssPrefix,"-layers")].concat(Ce(r)).join(" ")},children:s}]})}}}},Xs={mixout:function(){return{counter:function(a){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};o.title;var l=o.classes,r=l===void 0?[]:l,s=o.attributes,i=s===void 0?{}:s,c=o.styles,u=c===void 0?{}:c;return bt({type:"counter",content:a},function(){return Le("beforeDOMElementCreation",{content:a,params:o}),Ss({content:a.toString(),extra:{attributes:i,styles:u,classes:["".concat(ae.cssPrefix,"-layers-counter")].concat(Ce(r))}})})}}}},Qs={mixout:function(){return{text:function(a){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},l=o.transform,r=l===void 0?Ve:l,s=o.classes,i=s===void 0?[]:s,c=o.attributes,u=c===void 0?{}:c,b=o.styles,C=b===void 0?{}:b;return bt({type:"text",content:a},function(){return Le("beforeDOMElementCreation",{content:a,params:o}),La({content:a,transform:R(R({},Ve),r),extra:{attributes:u,styles:C,classes:["".concat(ae.cssPrefix,"-layers-text")].concat(Ce(i))}})})}}},provides:function(n){n.generateLayersText=function(a,o){var l=o.transform,r=o.extra,s=null,i=null;if(on){var c=parseInt(getComputedStyle(a).fontSize,10),u=a.getBoundingClientRect();s=u.width/c,i=u.height/c}return Promise.resolve([a,La({content:a.innerHTML,width:s,height:i,transform:l,extra:r,watchable:!0})])}}},Jn=new RegExp('"',"ug"),Ua=[1105920,1112319],qa=R(R(R(R({},{FontAwesome:{normal:"fas",400:"fas"}}),Ol),jr),Gl),Kt=Object.keys(qa).reduce(function(t,n){return t[n.toLowerCase()]=qa[n],t},{}),Js=Object.keys(Kt).reduce(function(t,n){var a=Kt[n];return t[n]=a[900]||Ce(Object.entries(a))[0][1],t},{});function Zs(t){var n=t.replace(Jn,"");return Ln(Ce(n)[0]||"")}function ei(t){var n=t.getPropertyValue("font-feature-settings").includes("ss01"),a=t.getPropertyValue("content"),o=a.replace(Jn,""),l=o.codePointAt(0),r=l>=Ua[0]&&l<=Ua[1],s=o.length===2?o[0]===o[1]:!1;return r||s||n}function ti(t,n){var a=t.replace(/^['"]|['"]$/g,"").toLowerCase(),o=parseInt(n),l=isNaN(o)?"normal":o;return(Kt[a]||{})[l]||Js[a]}function Ha(t,n){var a="".concat(Or).concat(n.replace(":","-"));return new Promise(function(o,l){if(t.getAttribute(a)!==null)return o();var r=qe(t.children),s=r.filter(function(M){return M.getAttribute(jt)===n})[0],i=De.getComputedStyle(t,n),c=i.getPropertyValue("font-family"),u=c.match(qr),b=i.getPropertyValue("font-weight"),C=i.getPropertyValue("content");if(s&&!u)return t.removeChild(s),o();if(u&&C!=="none"&&C!==""){var z=i.getPropertyValue("content"),B=ti(c,b),V=Zs(z),k=u[0].startsWith("FontAwesome"),h=ei(i),g=sa(B,V),v=g;if(k){var x=us(V);x.iconName&&x.prefix&&(g=x.iconName,B=x.prefix)}if(g&&!h&&(!s||s.getAttribute(ta)!==B||s.getAttribute(aa)!==v)){t.setAttribute(a,v),s&&t.removeChild(s);var D=Rs(),S=D.extra;S.attributes[jt]=n,Wt(g,B).then(function(M){var _=ia(R(R({},D),{},{icons:{main:M,mask:Hn()},prefix:B,iconName:v,extra:S,watchable:!0})),te=ce.createElementNS("http://www.w3.org/2000/svg","svg");n==="::before"?t.insertBefore(te,t.firstChild):t.appendChild(te),te.outerHTML=_.map(function(U){return at(U)}).join(`
557
- `),t.removeAttribute(a),o()}).catch(l)}else o()}else o()})}function ai(t){return Promise.all([Ha(t,"::before"),Ha(t,"::after")])}function ni(t){return t.parentNode!==document.head&&!~_r.indexOf(t.tagName.toUpperCase())&&!t.getAttribute(jt)&&(!t.parentNode||t.parentNode.tagName!=="svg")}var oi=function(n){return!!n&&Nn.some(function(a){return n.includes(a)})},li=function(n){if(!n)return[];var a=new Set,o=n.split(/,(?![^()]*\))/).map(function(c){return c.trim()});o=o.flatMap(function(c){return c.includes("(")?c:c.split(",").map(function(u){return u.trim()})});var l=rt(o),r;try{for(l.s();!(r=l.n()).done;){var s=r.value;if(oi(s)){var i=Nn.reduce(function(c,u){return c.replace(u,"")},s);i!==""&&i!=="*"&&a.add(i)}}}catch(c){l.e(c)}finally{l.f()}return a};function Wa(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(ze){var a;if(n)a=t;else if(ae.searchPseudoElementsFullScan)a=t.querySelectorAll("*");else{var o=new Set,l=rt(document.styleSheets),r;try{for(l.s();!(r=l.n()).done;){var s=r.value;try{var i=rt(s.cssRules),c;try{for(i.s();!(c=i.n()).done;){var u=c.value,b=li(u.selectorText),C=rt(b),z;try{for(C.s();!(z=C.n()).done;){var B=z.value;o.add(B)}}catch(k){C.e(k)}finally{C.f()}}}catch(k){i.e(k)}finally{i.f()}}catch(k){ae.searchPseudoElementsWarnings&&console.warn("Font Awesome: cannot parse stylesheet: ".concat(s.href," (").concat(k.message,`)
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(k){l.e(k)}finally{l.f()}if(!o.size)return;var V=Array.from(o).join(", ");try{a=t.querySelectorAll(V)}catch{}}return new Promise(function(k,h){var g=qe(a).filter(ni).map(ai),v=ca.begin("searchPseudoElements");Xn(),Promise.all(g).then(function(){v(),Gt(),k()}).catch(function(){v(),Gt(),h()})})}}var ri={hooks:function(){return{mutationObserverCallbacks:function(a){return a.pseudoElementsCallback=Wa,a}}},provides:function(n){n.pseudoElements2svg=function(a){var o=a.node,l=o===void 0?ce:o;ae.searchPseudoElements&&Wa(l)}}},Ya=!1,si={mixout:function(){return{dom:{unwatch:function(){Xn(),Ya=!0}}}},hooks:function(){return{bootstrap:function(){Ia(Ut("mutationObserverCallbacks",{}))},noAuto:function(){js()},watch:function(a){var o=a.observeMutationsRoot;Ya?Gt():Ia(Ut("mutationObserverCallbacks",{observeMutationsRoot:o}))}}}},Ga=function(n){var a={size:16,x:0,y:0,flipX:!1,flipY:!1,rotate:0};return n.toLowerCase().split(" ").reduce(function(o,l){var r=l.toLowerCase().split("-"),s=r[0],i=r.slice(1).join("-");if(s&&i==="h")return o.flipX=!0,o;if(s&&i==="v")return o.flipY=!0,o;if(i=parseFloat(i),isNaN(i))return o;switch(s){case"grow":o.size=o.size+i;break;case"shrink":o.size=o.size-i;break;case"left":o.x=o.x-i;break;case"right":o.x=o.x+i;break;case"up":o.y=o.y-i;break;case"down":o.y=o.y+i;break;case"rotate":o.rotate=o.rotate+i;break}return o},a)},ii={mixout:function(){return{parse:{transform:function(a){return Ga(a)}}}},hooks:function(){return{parseNodeAttributes:function(a,o){var l=o.getAttribute("data-fa-transform");return l&&(a.transform=Ga(l)),a}}},provides:function(n){n.generateAbstractTransformGrouping=function(a){var o=a.main,l=a.transform,r=a.containerWidth,s=a.iconWidth,i={transform:"translate(".concat(r/2," 256)")},c="translate(".concat(l.x*32,", ").concat(l.y*32,") "),u="scale(".concat(l.size/16*(l.flipX?-1:1),", ").concat(l.size/16*(l.flipY?-1:1),") "),b="rotate(".concat(l.rotate," 0 0)"),C={transform:"".concat(c," ").concat(u," ").concat(b)},z={transform:"translate(".concat(s/2*-1," -256)")},B={outer:i,inner:C,path:z};return{tag:"g",attributes:R({},B.outer),children:[{tag:"g",attributes:R({},B.inner),children:[{tag:o.icon.tag,children:o.icon.children,attributes:R(R({},o.icon.attributes),B.path)}]}]}}}},At={x:0,y:0,width:"100%",height:"100%"};function Ka(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 ci(t){return t.tag==="g"?t.children:[t]}var di={hooks:function(){return{parseNodeAttributes:function(a,o){var l=o.getAttribute("data-fa-mask"),r=l?yt(l.split(" ").map(function(s){return s.trim()})):Hn();return r.prefix||(r.prefix=Fe()),a.mask=r,a.maskId=o.getAttribute("data-fa-mask-id"),a}}},provides:function(n){n.generateAbstractMask=function(a){var o=a.children,l=a.attributes,r=a.main,s=a.mask,i=a.maskId,c=a.transform,u=r.width,b=r.icon,C=s.width,z=s.icon,B=ts({transform:c,containerWidth:C,iconWidth:u}),V={tag:"rect",attributes:R(R({},At),{},{fill:"white"})},k=b.children?{children:b.children.map(Ka)}:{},h={tag:"g",attributes:R({},B.inner),children:[Ka(R({tag:b.tag,attributes:R(R({},b.attributes),B.path)},k))]},g={tag:"g",attributes:R({},B.outer),children:[h]},v="mask-".concat(i||$a()),x="clip-".concat(i||$a()),D={tag:"mask",attributes:R(R({},At),{},{id:v,maskUnits:"userSpaceOnUse",maskContentUnits:"userSpaceOnUse"}),children:[V,g]},S={tag:"defs",children:[{tag:"clipPath",attributes:{id:x},children:ci(z)},D]};return o.push(S,{tag:"rect",attributes:R({fill:"currentColor","clip-path":"url(#".concat(x,")"),mask:"url(#".concat(v,")")},At)}),{children:o,attributes:l}}}},ui={provides:function(n){var a=!1;De.matchMedia&&(a=De.matchMedia("(prefers-reduced-motion: reduce)").matches),n.missingIconAbstract=function(){var o=[],l={fill:"currentColor"},r={attributeType:"XML",repeatCount:"indefinite",dur:"2s"};o.push({tag:"path",attributes:R(R({},l),{},{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 s=R(R({},r),{},{attributeName:"opacity"}),i={tag:"circle",attributes:R(R({},l),{},{cx:"256",cy:"364",r:"28"}),children:[]};return a||i.children.push({tag:"animate",attributes:R(R({},r),{},{attributeName:"r",values:"28;14;28;28;14;28;"})},{tag:"animate",attributes:R(R({},s),{},{values:"1;0;1;1;0;1;"})}),o.push(i),o.push({tag:"path",attributes:R(R({},l),{},{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:R(R({},s),{},{values:"1;0;0;0;0;1;"})}]}),a||o.push({tag:"path",attributes:R(R({},l),{},{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:R(R({},s),{},{values:"0;0;1;1;0;0;"})}]}),{tag:"g",attributes:{class:"missing"},children:o}}}},mi={hooks:function(){return{parseNodeAttributes:function(a,o){var l=o.getAttribute("data-fa-symbol"),r=l===null?!1:l===""?!0:l;return a.symbol=r,a}}}},fi=[os,Gs,Ks,Xs,Qs,ri,si,ii,di,ui,mi];xs(fi,{mixoutsTo:be});be.noAuto;var Zn=be.config;be.library;be.dom;var mt=be.parse;be.findIconDefinition;be.toHtml;var pi=be.icon;be.layer;var gi=be.text;be.counter;function Xt(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 vi(t){if(Array.isArray(t))return Xt(t)}function ge(t,n,a){return(n=wi(n))in t?Object.defineProperty(t,n,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[n]=a,t}function hi(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function yi(){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 Xa(t,n){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);n&&(o=o.filter(function(l){return Object.getOwnPropertyDescriptor(t,l).enumerable})),a.push.apply(a,o)}return a}function xe(t){for(var n=1;n<arguments.length;n++){var a=arguments[n]!=null?arguments[n]:{};n%2?Xa(Object(a),!0).forEach(function(o){ge(t,o,a[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):Xa(Object(a)).forEach(function(o){Object.defineProperty(t,o,Object.getOwnPropertyDescriptor(a,o))})}return t}function bi(t,n){if(t==null)return{};var a,o,l=xi(t,n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);for(o=0;o<r.length;o++)a=r[o],n.indexOf(a)===-1&&{}.propertyIsEnumerable.call(t,a)&&(l[a]=t[a])}return l}function xi(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 Qt(t){return vi(t)||hi(t)||Ci(t)||yi()}function ki(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 wi(t){var n=ki(t,"string");return typeof n=="symbol"?n:n+""}function ft(t){"@babel/helpers - typeof";return ft=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},ft(t)}function Ci(t,n){if(t){if(typeof t=="string")return Xt(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)?Xt(t,n):void 0}}function Ke(t,n){return Array.isArray(n)&&n.length>0||!Array.isArray(n)&&n?ge({},t,n):{}}function Bi(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"},ge(ge(ge(ge(ge(ge(ge(ge(ge(ge(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),ge(ge(ge(ge(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 Vi=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},eo={exports:{}};(function(t){(function(n){var a=function(g,v,x){if(!u(v)||C(v)||z(v)||B(v)||c(v))return v;var D,S=0,M=0;if(b(v))for(D=[],M=v.length;S<M;S++)D.push(a(g,v[S],x));else{D={};for(var _ in v)Object.prototype.hasOwnProperty.call(v,_)&&(D[g(_,x)]=a(g,v[_],x))}return D},o=function(g,v){v=v||{};var x=v.separator||"_",D=v.split||/(?=[A-Z])/;return g.split(D).join(x)},l=function(g){return V(g)?g:(g=g.replace(/[\-_\s]+(.)?/g,function(v,x){return x?x.toUpperCase():""}),g.substr(0,1).toLowerCase()+g.substr(1))},r=function(g){var v=l(g);return v.substr(0,1).toUpperCase()+v.substr(1)},s=function(g,v){return o(g,v).toLowerCase()},i=Object.prototype.toString,c=function(g){return typeof g=="function"},u=function(g){return g===Object(g)},b=function(g){return i.call(g)=="[object Array]"},C=function(g){return i.call(g)=="[object Date]"},z=function(g){return i.call(g)=="[object RegExp]"},B=function(g){return i.call(g)=="[object Boolean]"},V=function(g){return g=g-0,g===g},k=function(g,v){var x=v&&"process"in v?v.process:v;return typeof x!="function"?g:function(D,S){return x(D,g,S)}},h={camelize:l,decamelize:s,pascalize:r,depascalize:s,camelizeKeys:function(g,v){return a(k(l,v),g)},decamelizeKeys:function(g,v){return a(k(s,v),g,v)},pascalizeKeys:function(g,v){return a(k(r,v),g)},depascalizeKeys:function(){return this.decamelizeKeys.apply(this,arguments)}};t.exports?t.exports=h:n.humps=h})(Vi)})(eo);var Ei=eo.exports,Ni=["class","style"];function Si(t){return t.split(";").map(function(n){return n.trim()}).filter(function(n){return n}).reduce(function(n,a){var o=a.indexOf(":"),l=Ei.camelize(a.slice(0,o)),r=a.slice(o+1).trim();return n[l]=r,n},{})}function $i(t){return t.split(/\s+/).reduce(function(n,a){return n[a]=!0,n},{})}function ua(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(c){return ua(c)}),l=Object.keys(t.attributes||{}).reduce(function(c,u){var b=t.attributes[u];switch(u){case"class":c.class=$i(b);break;case"style":c.style=Si(b);break;default:c.attrs[u]=b}return c},{attrs:{},class:{},style:{}});a.class;var r=a.style,s=r===void 0?{}:r,i=bi(a,Ni);return e.h(t.tag,xe(xe(xe({},n),{},{class:l.class,style:xe(xe({},l.style),s)},l.attrs),i),o)}var to=!1;try{to=process.env.NODE_ENV==="production"}catch{}function zi(){if(!to&&console&&typeof console.error=="function"){var t;(t=console).error.apply(t,arguments)}}function Qa(t){if(t&&ft(t)==="object"&&t.prefix&&t.iconName&&t.icon)return t;if(mt.icon)return mt.icon(t);if(t===null)return null;if(ft(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 Di=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,l=e.computed(function(){return Qa(n.icon)}),r=e.computed(function(){return Ke("classes",Bi(n))}),s=e.computed(function(){return Ke("transform",typeof n.transform=="string"?mt.transform(n.transform):n.transform)}),i=e.computed(function(){return Ke("mask",Qa(n.mask))}),c=e.computed(function(){var b=xe(xe(xe(xe({},r.value),s.value),i.value),{},{symbol:n.symbol,maskId:n.maskId});return b.title=n.title,b.titleId=n.titleId,pi(l.value,b)});e.watch(c,function(b){if(!b)return zi("Could not find one or more icon(s)",l.value,i.value)},{immediate:!0});var u=e.computed(function(){return c.value?ua(c.value.abstract[0],{},o):null});return function(){return u.value}}});e.defineComponent({name:"FontAwesomeLayers",props:{fixedWidth:{type:Boolean,default:!1}},setup:function(n,a){var o=a.slots,l=Zn.familyPrefix,r=e.computed(function(){return["".concat(l,"-layers")].concat(Qt(n.fixedWidth?["".concat(l,"-fw")]:[]))});return function(){return e.h("div",{class:r.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,l=Zn.familyPrefix,r=e.computed(function(){return Ke("classes",[].concat(Qt(n.counter?["".concat(l,"-layers-counter")]:[]),Qt(n.position?["".concat(l,"-layers-").concat(n.position)]:[])))}),s=e.computed(function(){return Ke("transform",typeof n.transform=="string"?mt.transform(n.transform):n.transform)}),i=e.computed(function(){var u=gi(n.value.toString(),xe(xe({},s.value),r.value)),b=u.abstract;return n.counter&&(b[0].attributes.class=b[0].attributes.class.replace("fa-layers-text","")),b[0]}),c=e.computed(function(){return ua(i.value,{},o)});return function(){return c.value}}});const K={__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"),l=e.computed(()=>[o.value,"inline-block"]);return(r,s)=>(e.openBlock(),e.createBlock(e.unref(Di),{icon:[t.prefix,t.icon],size:a.value,class:e.normalizeClass(l.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"]))}},Fi=["src","alt"],ao={__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=O.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"}}}),l=e.computed(()=>N(o({size:n.size,variant:n.variant}),n.class)),r=e.computed(()=>"aspect-square h-full w-full object-cover"),s=e.computed(()=>N("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"})),i=e.computed(()=>N("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"})),c=()=>{a.value=!0};return(u,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(l.value)},[t.src?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.src,alt:t.alt,class:e.normalizeClass(r.value),onError:c},null,42,Fi)):t.initials?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(s.value)},e.toDisplayString(t.initials),3)):(e.openBlock(),e.createBlock(K,{key:2,name:"User",class:e.normalizeClass(i.value)},null,8,["class"]))],2))}},Ti=["aria-label"],ma=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,l=()=>o("dismiss"),r=O.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"}}),s=e.computed(()=>["mr-1",{sm:"w-3 h-3",md:"w-4 h-4",lg:"w-5 h-5"}[a.size]]);return(i,c)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(e.unref(N)(e.unref(r)({variant:t.variant,size:t.size,shape:t.shape}),i.$attrs.class))},[t.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.icon),{key:0,class:e.normalizeClass(s.value)},null,8,["class"])):e.createCommentVNode("",!0),e.renderSlot(i.$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:l},[e.createVNode(K,{icon:"xmark",class:"w-3 h-3"})],8,Ti)):e.createCommentVNode("",!0)],2))}}),Ai=["disabled","aria-disabled","aria-busy"],Mi={key:2},me=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:"default",validator:t=>["2xs","xs","sm","default","md","lg","xl","2xl","icon-sm","icon","icon-lg"].includes(t)},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},loadingText:{type:String,default:null},icon:{type:String,default:null}},setup(t){const n=t,a=O.cva("inline-flex items-center justify-center whitespace-nowrap rounded-md 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:{"2xs":"h-6 px-2 py-1 text-xs rounded",xs:"h-7 px-2.5 py-1 text-xs rounded-md",sm:"h-8 px-3 py-1.5 text-sm rounded-md",default:"h-10 px-4 py-2 text-sm rounded-md",md:"h-10 px-4 py-2 text-sm rounded-md",lg:"h-11 px-6 py-2.5 text-base rounded-md",xl:"h-12 px-8 py-3 text-base rounded-lg","2xl":"h-14 px-10 py-3.5 text-lg rounded-lg","icon-sm":"h-8 w-8 p-0",icon:"h-10 w-10 p-0","icon-lg":"h-12 w-12 p-0"}},defaultVariants:{variant:"default",size:"default"}}),o=e.computed(()=>({"2xs":"h-3 w-3",xs:"h-3.5 w-3.5",sm:"h-4 w-4",default:"h-4 w-4",md:"h-4 w-4",lg:"h-5 w-5",xl:"h-5 w-5","2xl":"h-6 w-6","icon-sm":"h-4 w-4",icon:"h-5 w-5","icon-lg":"h-6 w-6"})[n.size]||"h-4 w-4"),l=e.computed(()=>({"2xs":"h-3 w-3",xs:"h-3.5 w-3.5",sm:"h-4 w-4",default:"h-4 w-4",md:"h-4 w-4",lg:"h-5 w-5",xl:"h-5 w-5","2xl":"h-6 w-6","icon-sm":"h-4 w-4",icon:"h-5 w-5","icon-lg":"h-6 w-6"})[n.size]||"h-4 w-4");return(r,s)=>(e.openBlock(),e.createElementBlock("button",e.mergeProps({class:e.unref(N)(e.unref(a)({variant:t.variant,size:t.size}),r.$attrs.class),disabled:t.disabled||t.loading,"aria-disabled":t.disabled||t.loading,"aria-busy":t.loading},r.$attrs),[t.loading?(e.openBlock(),e.createElementBlock("svg",{key:0,class:e.normalizeClass([l.value,"animate-spin mr-2 text-current"]),xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},[...s[0]||(s[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)])],2)):e.createCommentVNode("",!0),t.icon&&!t.loading?(e.openBlock(),e.createBlock(K,{key:1,icon:t.icon,class:e.normalizeClass(o.value)},null,8,["icon","class"])):e.createCommentVNode("",!0),t.loading&&t.loadingText?(e.openBlock(),e.createElementBlock("span",Mi,e.toDisplayString(t.loadingText),1)):e.renderSlot(r.$slots,"default",{key:3})],16,Ai))}}),Li={class:"flex items-center gap-3"},Pi={class:"relative"},ji=["id","checked","indeterminate","disabled","required","aria-describedby"],Oi={class:"flex-1"},Ii=["for"],Je={__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={render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m4.5 12.75 6 6 9-13.5"})])}},o={render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M5 12h14"})])}},l=t,r=n,s=e.ref(null),i=e.computed(()=>l.id||e.useId()),c=e.computed(()=>Array.isArray(l.modelValue)?l.modelValue.includes(l.value):l.modelValue),u=g=>{const v=g.target.checked;if(Array.isArray(l.modelValue)){const x=[...l.modelValue];if(v)x.push(l.value);else{const D=x.indexOf(l.value);D>-1&&x.splice(D,1)}r("update:modelValue",x)}else r("update:modelValue",v);r("change",v)},b=()=>{!l.disabled&&s.value&&s.value.click()},C=e.computed(()=>{if(l.error)return`${i.value}-error`}),z=e.computed(()=>({sm:"w-4 h-4",md:"w-5 h-5",lg:"w-6 h-6"})[l.size]),B=e.computed(()=>["absolute inset-0 w-full h-full opacity-0 cursor-pointer",{"cursor-not-allowed":l.disabled}]),V=e.computed(()=>["flex items-center justify-center rounded border-2 transition-all duration-200","cursor-pointer select-none",z.value,{"bg-blue-600 border-blue-600 text-white":c.value&&!l.disabled&&l.variant==="default","bg-red-600 border-red-600 text-white":c.value&&!l.disabled&&l.variant==="error","bg-slate-200 border-slate-300 text-slate-400":c.value&&l.disabled,"bg-white border-slate-300 hover:border-slate-400":!c.value&&!l.disabled&&l.variant==="default","bg-white border-red-300 hover:border-red-400":!c.value&&!l.disabled&&l.variant==="error","bg-slate-50 border-slate-200":!c.value&&l.disabled,"cursor-not-allowed":l.disabled,"focus-within:ring-2 focus-within:ring-offset-2":!l.disabled,"focus-within:ring-blue-500":!l.disabled&&l.variant==="default","focus-within:ring-red-500":!l.disabled&&l.variant==="error"}]),k=e.computed(()=>["text-sm font-medium cursor-pointer select-none",{"text-slate-900":!l.disabled,"text-slate-500":l.disabled}]),h=e.computed(()=>["text-xs text-slate-500 mt-1"]);return e.watch(()=>l.indeterminate,g=>{s.value&&(s.value.indeterminate=g)},{immediate:!0}),(g,v)=>(e.openBlock(),e.createElementBlock("div",Li,[e.createElementVNode("div",Pi,[e.createElementVNode("input",{id:i.value,ref_key:"checkboxRef",ref:s,type:"checkbox",checked:c.value,indeterminate:t.indeterminate,disabled:t.disabled,required:t.required,class:e.normalizeClass(B.value),"aria-describedby":C.value,onChange:u},null,42,ji),e.createElementVNode("div",{class:e.normalizeClass(V.value),onClick:b},[c.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",Oi,[e.createElementVNode("label",{for:i.value,class:e.normalizeClass(k.value)},[e.renderSlot(g.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])],10,Ii),t.description?(e.openBlock(),e.createElementBlock("p",{key:0,class:e.normalizeClass(h.value)},e.toDisplayString(t.description),3)):e.createCommentVNode("",!0)])]))}},_i={key:0,class:"px-3 text-sm text-gray-500 bg-white dark:bg-gray-900 dark:text-gray-400 relative z-10"},no={__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=O.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(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(N)(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",_i,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)],2))}},Ri=["aria-label"],Ui={key:0,class:"sr-only"},xt={__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=O.cva("inline-flex items-center justify-center",{variants:{variant:{default:"text-muted-foreground",primary:"text-primary",secondary:"text-secondary-foreground"}}}),o=O.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"}}}),l=e.computed(()=>N(a({variant:n.variant}),n.class)),r=e.computed(()=>o({size:n.size}));return(s,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(l.value),role:"status","aria-label":t.label},[(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass(r.value),xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},[...i[0]||(i[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",Ui,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)],10,Ri))}},qi=["src","alt","loading"],oo={__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,l=e.ref(!0),r=e.ref(!1),s=O.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]"}}}),i=e.computed(()=>N(s({aspectRatio:a.aspectRatio}),a.class)),c=e.computed(()=>N("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"},l.value&&"opacity-0",r.value&&"hidden")),u=e.computed(()=>"absolute inset-0 flex items-center justify-center bg-muted"),b=e.computed(()=>"absolute inset-0 flex flex-col items-center justify-center gap-2 bg-muted"),C=B=>{l.value=!1,r.value=!1,o("load",B)},z=B=>{l.value=!1,r.value=!0,o("error",B)};return(B,V)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(i.value)},[e.createElementVNode("img",{src:t.src,alt:t.alt,class:e.normalizeClass(c.value),loading:t.loading,onLoad:C,onError:z},null,42,qi),l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(u.value)},[t.showSpinner?(e.openBlock(),e.createBlock(xt,{key:0,size:"sm"})):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),r.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(b.value)},[e.createVNode(K,{name:"ImageOff",class:"h-8 w-8 text-muted-foreground"}),V[0]||(V[0]=e.createElementVNode("span",{class:"text-sm text-muted-foreground"},"Failed to load image",-1))],2)):e.createCommentVNode("",!0)],2))}},Hi={class:"relative"},Wi={key:0,class:"absolute left-3 top-1/2 transform -translate-y-1/2 pointer-events-none"},Yi=["id","type","value","placeholder","disabled","readonly","required","autocomplete","aria-describedby","aria-invalid"],Gi={key:1,class:"absolute right-3 top-1/2 transform -translate-y-1/2"},Ki=["aria-label"],ue={__name:"Input",props:{modelValue:{type:[String,Number],default:""},type:{type:String,default:"text",validator:t=>["text","email","password","number","tel","url","search","date","color","file"].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,l=a,r=e.ref(null),s=e.computed(()=>o.id||e.useId()),i=v=>{l("update:modelValue",v.target.value)},c=v=>{l("blur",v)},u=v=>{l("focus",v)},b=v=>{l("keydown",v)},C=()=>{l("update:modelValue",""),l("clear"),r.value?.focus()},z=e.computed(()=>!!o.error||o.variant==="error"),B=e.computed(()=>{if(o.error)return`${s.value}-error`}),V=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]),k=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]),h=e.computed(()=>["text-slate-400",{sm:"w-4 h-4",md:"w-4 h-4",lg:"w-5 h-5"}[o.size]]),g=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",V.value,k.value,{"pl-10":o.iconLeft,"pr-10":o.iconRight||o.clearable}]);return n({focus:()=>r.value?.focus(),blur:()=>r.value?.blur(),select:()=>r.value?.select()}),(v,x)=>(e.openBlock(),e.createElementBlock("div",Hi,[t.iconLeft?(e.openBlock(),e.createElementBlock("div",Wi,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.iconLeft),{class:e.normalizeClass(h.value)},null,8,["class"]))])):e.createCommentVNode("",!0),e.createElementVNode("input",{id:s.value,ref_key:"inputRef",ref:r,type:t.type,value:t.modelValue,placeholder:t.placeholder,disabled:t.disabled,readonly:t.readonly,required:t.required,autocomplete:t.autocomplete,class:e.normalizeClass(g.value),"aria-describedby":B.value,"aria-invalid":z.value,onInput:i,onBlur:c,onFocus:u,onKeydown:b},null,42,Yi),t.iconRight||t.clearable?(e.openBlock(),e.createElementBlock("div",Gi,[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:C},[e.createVNode(K,{name:"x-mark",class:"w-5 h-5"})],8,Ki)):t.iconRight?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.iconRight),{key:1,class:e.normalizeClass(h.value)},null,8,["class"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]))}},Xi=["for"],Ne={__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=O.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(()=>N(a({size:n.size}),n.disabled&&"cursor-not-allowed opacity-70",n.class));return(l,r)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(o.value),for:t.htmlFor},[e.renderSlot(l.$slots,"default")],10,Xi))}},lo={__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"),l=e.computed(()=>`w-4 h-4 ${a.iconPosition==="left"?"mr-2":"ml-2"}`),r=O.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}}),s=c=>{if(a.disabled){c.preventDefault();return}i("click",c)},i=n;return(c,u)=>(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(N)(e.unref(r)({variant:t.variant,size:t.size,underline:t.underline,block:t.block,disabled:t.disabled}),c.$attrs.class)),onClick:s},{default:e.withCtx(()=>[t.icon&&t.iconPosition==="left"?(e.openBlock(),e.createBlock(K,{key:0,name:t.icon,class:e.normalizeClass(l.value)},null,8,["name","class"])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default"),t.icon&&t.iconPosition==="right"?(e.openBlock(),e.createBlock(K,{key:1,name:t.icon,class:e.normalizeClass(l.value)},null,8,["name","class"])):e.createCommentVNode("",!0),t.external&&t.showExternalIcon?(e.openBlock(),e.createBlock(K,{key:2,name:"external-link",class:"w-3 h-3 ml-1 inline-block"})):e.createCommentVNode("",!0)]),_:3},8,["href","to","target","rel","class"]))}},Qi=["src","alt"],ro={__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=O.cva("flex items-center",{variants:{size:{sm:"h-6",md:"h-8",lg:"h-10",xl:"h-12"}}}),o=e.computed(()=>N(a({size:n.size}),n.class)),l=e.computed(()=>N("h-full w-auto object-contain")),r=e.computed(()=>N("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(s,i)=>(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(l.value)},null,10,Qi)):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(r.value)},e.toDisplayString(t.text||"Logo"),3))],2))}},Ji=["value","disabled","selected"],fa={__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,Ji))}},Zi=["aria-valuenow"],so={__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 r=n.value/n.max*100;return Math.min(Math.max(r,0),100)}),o=O.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"}}),l=O.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(r,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(N)(e.unref(o)({size:t.size}),r.$attrs.class))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)(e.unref(l)({variant:t.variant}))),style:e.normalizeStyle({width:`${a.value}%`}),role:"progressbar","aria-valuenow":a.value,"aria-valuemin":0,"aria-valuemax":100},null,14,Zi)],2))}},ec=["aria-valuenow"],io={__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 c=n.value/n.max*100;return Math.min(Math.max(c,0),100)}),o=O.cva("relative w-full overflow-hidden rounded-full bg-secondary",{variants:{size:{sm:"h-2",md:"h-3",lg:"h-4"}}}),l=O.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"}}}),r=e.computed(()=>N(o({size:n.size}),n.class)),s=e.computed(()=>l({variant:n.variant})),i=e.computed(()=>"absolute inset-0 flex items-center justify-center text-xs font-medium text-primary-foreground");return(c,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(r.value)},[e.createElementVNode("div",{class:e.normalizeClass(s.value),style:e.normalizeStyle({width:`${a.value}%`}),role:"progressbar","aria-valuenow":a.value,"aria-valuemin":0,"aria-valuemax":100},null,14,ec),t.showLabel?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(i.value)},e.toDisplayString(a.value)+"% ",3)):e.createCommentVNode("",!0)],2))}},tc=["width","height","viewBox"],ac=["cx","cy","r","stroke","stroke-width"],nc=["cx","cy","r","stroke","stroke-width","stroke-dasharray","stroke-dashoffset","stroke-linecap"],oc={key:0,class:"absolute inset-0 flex items-center justify-center"},kt={__name:"CircularProgress",props:{value:{type:[Number,String],default:0},max:{type:[Number,String],default:100},size:{type:String,default:"md",validator:t=>["xs","sm","md","lg","xl"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","success","warning","danger"].includes(t)},showValue:{type:Boolean,default:!0},showRawValue:{type:Boolean,default:!1},dynamicColor:{type:Boolean,default:!0},strokeLinecap:{type:String,default:"round",validator:t=>["butt","round","square"].includes(t)}},setup(t){const n=t,a=e.computed(()=>parseFloat(n.value)||0),o=e.computed(()=>parseFloat(n.max)||100),l=e.computed(()=>{const V=a.value/o.value*100;return Math.min(Math.max(V,0),100)}),r=e.computed(()=>({xs:42,sm:48,md:64,lg:80,xl:96})[n.size]||64),s=e.computed(()=>({xs:2.5,sm:4,md:5,lg:6,xl:7})[n.size]||5),i=e.computed(()=>r.value/2),c=e.computed(()=>i.value-s.value/2),u=e.computed(()=>2*Math.PI*c.value),b=e.computed(()=>u.value-l.value/100*u.value),C=e.computed(()=>{if(n.dynamicColor){const k=l.value;return k>=80?"#ef4444":k>=60?"#f59e0b":k>=40?"#eab308":k>=20?"#22c55e":"#6b7280"}const V={default:"#3b82f6",success:"#10b981",warning:"#f59e0b",danger:"#ef4444"};return V[n.variant]||V.default}),z=e.computed(()=>"#e5e7eb"),B=e.computed(()=>{if(n.dynamicColor){const k=l.value;return k>=80?"text-red-600":k>=60?"text-orange-600":k>=40?"text-yellow-600":k>=20?"text-green-600":"text-gray-600"}const V={default:"text-blue-600",success:"text-green-600",warning:"text-yellow-600",danger:"text-red-600"};return V[n.variant]||V.default});return(V,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(N)("relative inline-flex items-center justify-center",V.$attrs.class))},[(e.openBlock(),e.createElementBlock("svg",{width:r.value,height:r.value,viewBox:`0 0 ${r.value} ${r.value}`,class:"transform -rotate-90"},[e.createElementVNode("circle",{cx:i.value,cy:i.value,r:c.value,stroke:z.value,"stroke-width":s.value,fill:"none"},null,8,ac),e.createElementVNode("circle",{cx:i.value,cy:i.value,r:c.value,stroke:C.value,"stroke-width":s.value,fill:"none","stroke-dasharray":u.value,"stroke-dashoffset":b.value,"stroke-linecap":t.strokeLinecap,class:"transition-all duration-300 ease-in-out"},null,8,nc)],8,tc)),t.showValue?(e.openBlock(),e.createElementBlock("div",oc,[e.createElementVNode("span",{class:e.normalizeClass(e.unref(N)("text-xs font-medium",B.value))},e.toDisplayString(t.showRawValue?a.value.toFixed(2):Math.round(l.value)+"%"),3)])):e.createCommentVNode("",!0)],2))}},lc={class:"flex items-center space-x-2"},rc=["aria-checked","disabled"],co={__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,l=e.computed(()=>a.modelValue===a.value),r=O.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"}}}),s=e.computed(()=>N(r({size:a.size}),a.disabled&&"cursor-not-allowed opacity-50",a.class)),i=e.computed(()=>N("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"})),c=e.computed(()=>N("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",!a.disabled&&"cursor-pointer")),u=()=>{a.disabled||o("update:modelValue",a.value)};return(b,C)=>(e.openBlock(),e.createElementBlock("div",lc,[e.createElementVNode("button",{type:"button",role:"radio","aria-checked":l.value,disabled:t.disabled,class:e.normalizeClass(s.value),onClick:u},[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(i.value)},null,2)):e.createCommentVNode("",!0)],10,rc),t.label?(e.openBlock(),e.createElementBlock("label",{key:0,class:e.normalizeClass(c.value),onClick:u},e.toDisplayString(t.label),3)):e.createCommentVNode("",!0)]))}},sc=["id","name","value","disabled","required"],ic={key:1,class:"relative"},cc=["id","disabled"],dc={key:0,class:"text-gray-500"},uc={key:1,class:"text-gray-900"},mc={class:"px-3 py-2 border-b border-gray-200"},fc=["onKeydown"],pc={key:0,class:"max-h-48 overflow-y-auto"},gc=["onClick"],vc={class:"block font-normal truncate"},hc={key:0,class:"absolute inset-y-0 right-0 flex items-center pr-4 text-blue-600"},yc={key:1,class:"px-4 py-3 text-sm text-gray-500 text-center"},bc={key:2,class:"px-4 py-3"},we={__name:"Select",props:{modelValue:{type:[String,Number,Boolean],default:""},options:{type:Array,default:()=>[]},placeholder:{type:String,default:null},hasError:{type:Boolean,default:!1},id:{type:String,default:null},name:{type:String,default:null},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},allowCreate:{type:Boolean,default:!1},class:String},emits:["update:modelValue"],setup(t,{emit:n}){const a=t,o=n,l=e.ref(!1),r=e.ref(""),s=e.ref(null),i=e.ref(null),c=e.ref(null),u=e.ref([...a.options]),b=e.ref({}),C=e.computed(()=>a.options.find(S=>S.value===a.modelValue)),z=O.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"}}}),B=e.computed(()=>N(z({disabled:a.disabled}),"px-3 py-2",a.class)),V=()=>{if(!i.value)return;const S=i.value.getBoundingClientRect();b.value={position:"fixed",top:`${S.bottom+4}px`,left:`${S.left}px`,width:`${S.width}px`,zIndex:9999}},k=()=>{a.disabled||(l.value=!l.value,l.value&&(V(),e.nextTick(()=>{s.value?.focus()})))},h=S=>{o("update:modelValue",S),l.value=!1,r.value="",u.value=[...a.options]},g=S=>{if(S&&(S.stopPropagation(),S.preventDefault()),a.allowCreate&&r.value.trim()){const M=r.value.trim();o("update:modelValue",M),l.value=!1,r.value="",u.value=[...a.options]}},v=()=>{if(!r.value.trim())u.value=[...a.options];else{const S=r.value.toLowerCase();u.value=a.options.filter(M=>M.label.toLowerCase().includes(S))}},x=S=>{S.key==="Escape"?(l.value=!1,r.value="",u.value=[...a.options]):S.key==="Enter"&&a.allowCreate&&r.value.trim()&&u.value.length===0&&(S.preventDefault(),g(S))},D=S=>{if(!i.value)return;const M=S.target,_=c.value&&c.value.contains(M),te=i.value.contains(M);!_&&!te&&(l.value=!1,r.value="",u.value=[...a.options])};return e.onMounted(()=>{document.addEventListener("click",D),window.addEventListener("scroll",V,!0),window.addEventListener("resize",V)}),e.onUnmounted(()=>{document.removeEventListener("click",D),window.removeEventListener("scroll",V,!0),window.removeEventListener("resize",V)}),e.watch(()=>a.options,S=>{u.value=[...S]},{immediate:!0}),e.watch(l,S=>{S&&V()}),(S,M)=>!t.options||t.options.length===0?(e.openBlock(),e.createElementBlock("select",e.mergeProps({key:0,id:t.id,name:t.name,value:t.modelValue,disabled:t.disabled,required:t.required,class:B.value},S.$attrs,{onChange:M[0]||(M[0]=_=>S.$emit("update:modelValue",_.target.value))}),[e.renderSlot(S.$slots,"default")],16,sc)):(e.openBlock(),e.createElementBlock("div",ic,[e.createElementVNode("button",{id:t.id,ref_key:"buttonRef",ref:i,type:"button",disabled:t.disabled,class:e.normalizeClass(["w-full px-3 py-2 text-left border rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 bg-white",t.hasError?"border-red-500":"border-slate-300",t.disabled?"bg-gray-100 cursor-not-allowed opacity-50":"hover:border-slate-400"]),onClick:k,onKeydown:x},[C.value?(e.openBlock(),e.createElementBlock("div",uc,e.toDisplayString(C.value.label),1)):(e.openBlock(),e.createElementBlock("div",dc,e.toDisplayString(t.placeholder||"Select an option"),1)),M[3]||(M[3]=e.createElementVNode("svg",{class:"absolute right-2 top-2.5 h-5 w-5 text-gray-400",fill:"currentColor",viewBox:"0 0 20 20"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z","clip-rule":"evenodd"})],-1))],42,cc),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:c,style:e.normalizeStyle(b.value),"data-select-dropdown":"",class:"bg-white shadow-lg max-h-60 rounded-md py-1 text-base ring-1 ring-black ring-opacity-5 overflow-auto focus:outline-none"},[e.createElementVNode("div",mc,[e.withDirectives(e.createElementVNode("input",{ref_key:"searchInput",ref:s,"onUpdate:modelValue":M[1]||(M[1]=_=>r.value=_),type:"text",placeholder:"Search options...",class:"w-full px-2 py-1 text-sm border border-gray-300 rounded focus:outline-none focus:ring-1 focus:ring-blue-500",onInput:v,onKeydown:[x,e.withKeys(e.withModifiers(x,["prevent"]),["enter"])]},null,40,fc),[[e.vModelText,r.value]])]),u.value.length>0?(e.openBlock(),e.createElementBlock("div",pc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,_=>(e.openBlock(),e.createElementBlock("button",{key:_.value,type:"button",class:e.normalizeClass(["cursor-pointer select-none relative py-2 pl-3 pr-9 w-full text-left hover:bg-blue-50 focus:bg-blue-50 focus:outline-none transition-colors duration-150",{"bg-blue-50 text-blue-900":t.modelValue===_.value}]),onClick:e.withModifiers(te=>h(_.value),["stop"])},[e.createElementVNode("span",vc,e.toDisplayString(_.label),1),t.modelValue===_.value?(e.openBlock(),e.createElementBlock("span",hc,[...M[4]||(M[4]=[e.createElementVNode("svg",{class:"h-5 w-5",fill:"currentColor",viewBox:"0 0 20 20"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z","clip-rule":"evenodd"})],-1)])])):e.createCommentVNode("",!0)],10,gc))),128))])):a.allowCreate?(e.openBlock(),e.createElementBlock("div",bc,[e.createElementVNode("button",{type:"button",class:"w-full text-left px-2 py-1 text-sm text-blue-600 hover:bg-blue-50 rounded cursor-pointer transition-colors",onClick:e.withModifiers(g,["stop"]),onMousedown:M[2]||(M[2]=e.withModifiers(()=>{},["prevent"]))},' Create "'+e.toDisplayString(r.value)+'" ',33)])):(e.openBlock(),e.createElementBlock("div",yc," No options found "))],4)):e.createCommentVNode("",!0)]))]))}},xc=["aria-checked","disabled"],uo={__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,l=O.cva("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-gray-400 focus-visible:ring-offset-2 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-red-600",false:"bg-gray-300"}}}),r=O.cva("pointer-events-none block rounded-full bg-white 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"}]}),s=e.computed(()=>N(l({size:a.size,checked:a.modelValue}),a.class)),i=e.computed(()=>r({size:a.size,checked:a.modelValue})),c=()=>{a.disabled||o("update:modelValue",!a.modelValue)};return(u,b)=>(e.openBlock(),e.createElementBlock("button",{type:"button",role:"switch","aria-checked":t.modelValue,disabled:t.disabled,class:e.normalizeClass(s.value),onClick:c},[e.createElementVNode("span",{class:e.normalizeClass(i.value)},null,2)],10,xc))}},mo={__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=O.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(()=>N(a({size:n.size,variant:n.variant,weight:n.weight,align:n.align}),n.class));return(l,r)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.as),{class:e.normalizeClass(o.value)},{default:e.withCtx(()=>[e.renderSlot(l.$slots,"default")]),_:3},8,["class"]))}},kc=["id","value","placeholder","disabled","readonly","required","rows","maxlength","aria-describedby","aria-invalid"],wt={__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,l=a,r=e.ref(null),s=e.computed(()=>o.id||e.useId()),i=h=>{l("update:modelValue",h.target.value),o.autoResize&&e.nextTick(()=>k())},c=h=>l("blur",h),u=h=>l("focus",h),b=h=>l("keydown",h),C=e.computed(()=>!!o.error||o.variant==="error"),z=e.computed(()=>o.error?`${s.value}-error`:void 0),B=O.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"}}),V=e.computed(()=>N(B({size:o.size,variant:o.variant,resize:o.resize}))),k=()=>{if(!r.value||!o.autoResize)return;const h=r.value;h.style.height="auto",h.style.height=`${h.scrollHeight}px`};return e.watch(()=>o.modelValue,()=>{o.autoResize&&e.nextTick(()=>k())},{immediate:!0}),n({focus:()=>r.value?.focus(),blur:()=>r.value?.blur(),select:()=>r.value?.select()}),(h,g)=>(e.openBlock(),e.createElementBlock("textarea",{id:s.value,ref_key:"textareaRef",ref:r,value:t.modelValue,placeholder:t.placeholder,disabled:t.disabled,readonly:t.readonly,required:t.required,rows:t.rows,maxlength:t.maxlength,class:e.normalizeClass(V.value),"aria-describedby":z.value,"aria-invalid":C.value,onInput:i,onBlur:c,onFocus:u,onKeydown:b},null,42,kc))}},pa={__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),l=e.ref(null),r=e.ref({});let s=null;const i=O.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:""}}}),c=O.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"}}}),u=e.computed(()=>N(i({placement:n.placement}),n.class)),b=e.computed(()=>c({placement:n.placement})),C=()=>{if(!o.value||!l.value)return;const V=o.value.getBoundingClientRect(),k=l.value.getBoundingClientRect();let h=0,g=0;const v=8;switch(n.placement){case"top":h=V.top-k.height-v,g=V.left+V.width/2-k.width/2;break;case"bottom":h=V.bottom+v,g=V.left+V.width/2-k.width/2;break;case"left":h=V.top+V.height/2-k.height/2,g=V.left-k.width-v;break;case"right":h=V.top+V.height/2-k.height/2,g=V.right+v;break}const x=8;g<x&&(g=x),g+k.width>window.innerWidth-x&&(g=window.innerWidth-k.width-x),h<x&&(h=x),h+k.height>window.innerHeight-x&&(h=window.innerHeight-k.height-x),r.value={top:`${h}px`,left:`${g}px`}},z=()=>{s&&clearTimeout(s),s=setTimeout(async()=>{a.value=!0,await e.nextTick(),C()},n.delay)},B=()=>{s&&clearTimeout(s),a.value=!1};return(V,k)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"triggerRef",ref:o,class:"relative inline-block",onMouseenter:z,onMouseleave:B},[e.renderSlot(V.$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:l,class:e.normalizeClass(u.value),style:e.normalizeStyle(r.value),role:"tooltip"},[e.createTextVNode(e.toDisplayString(t.content)+" ",1),e.createElementVNode("div",{class:e.normalizeClass(b.value)},null,2)],6)):e.createCommentVNode("",!0)]),_:1})]))],544))}},wc={key:0,class:"text-red-600 ml-1","aria-hidden":"true"},pt={__name:"Typography",props:{variant:{type:String,default:"body-md",validator:t=>["body-2xs","body-xs","body-sm","body-md","body-lg","body-xl","body-2xl","text-2xs","text-xs","text-sm","text-md","text-lg","text-xl","text-2xl","display-xs","display-sm","display-md","display-lg","display-xl","display-2xl","caption","overline","label"].includes(t)},color:{type:String,default:"default",validator:t=>["default","primary","secondary","accent","success","warning","danger","info","muted","disabled","white","black"].includes(t)},align:{type:String,default:"left",validator:t=>["left","center","right","justify"].includes(t)},weight:{type:String,default:null,validator:t=>["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"].includes(t)},transform:{type:String,default:null,validator:t=>["uppercase","lowercase","capitalize","normal"].includes(t)},leading:{type:String,default:null,validator:t=>["none","tight","snug","normal","relaxed","loose"].includes(t)},tracking:{type:String,default:null,validator:t=>["tighter","tight","normal","wide","wider","widest"].includes(t)},italic:Boolean,underline:Boolean,lineThrough:Boolean,truncate:Boolean,noWrap:Boolean,required:Boolean,gradient:Boolean,maxLines:{type:Number,default:null},shadow:{type:String,default:null,validator:t=>["sm","md","lg","xl","2xl"].includes(t)},spacing:{type:String,default:null,validator:t=>["tight","normal","relaxed","loose"].includes(t)},responsive:Boolean,opacity:{type:Number,default:null,validator:t=>t>=0&&t<=100}},setup(t){const n=t,a=e.computed(()=>({"body-2xs":"p","body-xs":"p","body-sm":"p","body-md":"p","body-lg":"p","body-xl":"p","body-2xl":"p","text-2xs":"h6","text-xs":"h6","text-sm":"h5","text-md":"h4","text-lg":"h3","text-xl":"h2","text-2xl":"h1","display-xs":"h2","display-sm":"h2","display-md":"h1","display-lg":"h1","display-xl":"h1","display-2xl":"h1",caption:"span",overline:"span",label:"label"})[n.variant]||"p"),o=e.computed(()=>({"body-2xs":"text-[10px] leading-normal","body-xs":"text-xs leading-normal","body-sm":"text-sm leading-relaxed","body-md":"text-base leading-relaxed","body-lg":"text-lg leading-relaxed","body-xl":"text-xl leading-relaxed","body-2xl":"text-2xl leading-relaxed","text-2xs":"text-xs font-semibold leading-snug","text-xs":"text-sm font-semibold leading-snug","text-sm":"text-lg font-semibold leading-snug","text-md":"text-xl font-semibold leading-snug","text-lg":"text-2xl font-bold leading-snug","text-xl":"text-3xl font-bold leading-snug","text-2xl":"text-4xl font-bold leading-snug","display-xs":"text-3xl font-bold leading-tight tracking-tight","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","display-xl":"text-7xl font-bold leading-tight tracking-tighter","display-2xl":"text-8xl font-bold leading-tight tracking-tighter",caption:"text-xs leading-normal text-slate-600",overline:"text-xs font-medium uppercase tracking-wider leading-normal",label:"text-sm font-medium leading-normal"})[n.variant]),l=e.computed(()=>n.gradient?"bg-gradient-to-r from-blue-600 to-purple-600 bg-clip-text text-transparent":{default:"text-slate-900",primary:"text-blue-600",secondary:"text-slate-600",accent:"text-purple-600",success:"text-green-600",warning:"text-yellow-600",danger:"text-red-600",info:"text-cyan-600",muted:"text-slate-500",disabled:"text-slate-400",white:"text-white",black:"text-black"}[n.color]),r=e.computed(()=>({left:"text-left",center:"text-center",right:"text-right",justify:"text-justify"})[n.align]),s=e.computed(()=>n.weight?{thin:"font-thin",extralight:"font-extralight",light:"font-light",normal:"font-normal",medium:"font-medium",semibold:"font-semibold",bold:"font-bold",extrabold:"font-extrabold",black:"font-black"}[n.weight]:""),i=e.computed(()=>n.transform?{uppercase:"uppercase",lowercase:"lowercase",capitalize:"capitalize",normal:"normal-case"}[n.transform]:""),c=e.computed(()=>n.leading?{none:"leading-none",tight:"leading-tight",snug:"leading-snug",normal:"leading-normal",relaxed:"leading-relaxed",loose:"leading-loose"}[n.leading]:""),u=e.computed(()=>n.tracking?{tighter:"tracking-tighter",tight:"tracking-tight",normal:"tracking-normal",wide:"tracking-wide",wider:"tracking-wider",widest:"tracking-widest"}[n.tracking]:""),b=e.computed(()=>n.shadow?{sm:"drop-shadow-sm",md:"drop-shadow-md",lg:"drop-shadow-lg",xl:"drop-shadow-xl","2xl":"drop-shadow-2xl"}[n.shadow]:""),C=e.computed(()=>n.spacing?{tight:"mb-1",normal:"mb-2",relaxed:"mb-4",loose:"mb-6"}[n.spacing]:""),z=e.computed(()=>n.responsive?"text-sm sm:text-base md:text-lg lg:text-xl":""),B=e.computed(()=>n.maxLines?`line-clamp-${n.maxLines}`:""),V=e.computed(()=>{const h={};return n.opacity!==null&&(h.opacity=n.opacity/100),h}),k=e.computed(()=>[o.value,l.value,r.value,s.value,i.value,c.value,u.value,b.value,C.value,z.value,B.value,{italic:n.italic,underline:n.underline,"line-through":n.lineThrough,truncate:n.truncate&&!n.maxLines,"whitespace-nowrap":n.noWrap,"transition-colors duration-200":!0,"select-none":n.variant==="overline"||n.variant==="label"}]);return(h,g)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.value),e.mergeProps({class:k.value,style:V.value},h.$attrs),{default:e.withCtx(()=>[e.renderSlot(h.$slots,"default"),t.required?(e.openBlock(),e.createElementBlock("span",wc,"*")):e.createCommentVNode("",!0)]),_:3},16,["class","style"]))}},Cc={class:"flex items-start gap-3"},Bc={key:0,class:"flex-shrink-0 mt-0.5"},Vc={class:"flex-1 min-w-0"},Ec={key:0,class:"font-medium text-sm mb-1"},Nc={key:1,class:"mt-3 flex gap-2"},Sc=["aria-label"],fo=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,l=e.ref(!0),r=()=>{l.value=!1,o("dismiss")},s=h=>{o("action",h),h.onClick&&h.onClick()};if(a.autoClose){const h=typeof a.autoClose=="number"?a.autoClose:5e3;setTimeout(r,h)}const i={render(){return e.h("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 9v2m0 4h.01M21 12A9 9 0 1112 3a9 9 0 019 9z"})])}},c={render(){return e.h("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 12l2 2l4-4m5 2a9 9 0 11-18 0a9 9 0 0118 0z"})])}},u={render(){return e.h("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 9v2m0 4h.01M10.29 3.86L1.82 18a1.5 1.5 0 001.29 2.25h18.78a1.5 1.5 0 001.29-2.25L13.71 3.86a1.5 1.5 0 00-2.42 0z"})])}},b={render(){return e.h("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0a9 9 0 0118 0z"})])}},C={render(){return e.h("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})])}},z=e.computed(()=>({info:i,success:c,warning:u,error:b,default:i,danger:b})[a.variant]),B=O.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"}}),V=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]]),k=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(h,g)=>(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(()=>[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(N)(e.unref(B)({variant:t.variant}),h.$attrs.class)),role:"alert"},[e.createElementVNode("div",Cc,[t.showIcon?(e.openBlock(),e.createElementBlock("div",Bc,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(z.value),{class:e.normalizeClass(V.value)},null,8,["class"]))])):e.createCommentVNode("",!0),e.createElementVNode("div",Vc,[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(h.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.message),1)])],2),h.$slots.actions||t.actions.length>0?(e.openBlock(),e.createElementBlock("div",Nc,[e.renderSlot(h.$slots,"actions",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.actions,v=>(e.openBlock(),e.createBlock(me,{key:v.label,variant:v.variant||"outline",size:v.size||"sm",onClick:x=>s(v)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(v.label),1)]),_:2},1032,["variant","size","onClick"]))),128))])])):e.createCommentVNode("",!0)]),t.dismissible?(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass(k.value),"aria-label":t.dismissLabel,onClick:r},[e.createVNode(C,{class:"w-4 h-4"})],10,Sc)):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0)]),_:3}))}}),$c=["aria-label"],zc={class:"flex items-center space-x-1"},po={__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=O.cva("",{variants:{variant:{default:"",ghost:"text-muted-foreground"}}}),o=e.computed(()=>N(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("nav",{"aria-label":t.ariaLabel,class:e.normalizeClass(["flex",o.value])},[e.createElementVNode("ol",zc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(s,i)=>(e.openBlock(),e.createElementBlock("li",{key:i,class:"flex items-center"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.href?"a":"span"),{href:s.href,class:e.normalizeClass(["text-sm font-medium transition-colors hover:text-foreground",i===t.items.length-1?"text-foreground":"text-muted-foreground hover:text-foreground"]),"aria-current":i===t.items.length-1?"page":void 0},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.label),1)]),_:2},1032,["href","class","aria-current"])),i<t.items.length-1?(e.openBlock(),e.createBlock(K,{key:0,name:t.separator,class:"mx-2 h-4 w-4 text-muted-foreground"},null,8,["name"])):e.createCommentVNode("",!0)]))),128))])],10,$c))}},Dc=["aria-label"],go={__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=O.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(()=>N(a({orientation:n.orientation})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value),role:"group","aria-label":t.ariaLabel},[e.renderSlot(l.$slots,"default")],10,Dc))}},Fc={key:0,class:"absolute inset-0 bg-white/60 backdrop-blur-sm flex items-center justify-center z-10","aria-hidden":"true"},Tc={class:"flex items-start justify-between gap-4"},Ac={class:"flex-1 min-w-0"},Mc={key:0,class:"flex-shrink-0"},Lc=["src","alt","loading"],Pc={key:5,class:"absolute top-3 right-3"},jc={class:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-slate-900 text-white"},Oc="w-full h-full object-cover",Ic="font-semibold text-slate-900 line-clamp-2",_c="text-sm text-slate-600 mt-1 line-clamp-2",vo={__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,l=B=>{a.clickable&&!a.disabled&&!a.loading&&o("click",B)},r=B=>{a.clickable&&!a.disabled&&!a.loading&&o("click",B)},s=e.computed(()=>({sm:"text-base",default:"text-lg",lg:"text-xl",xl:"text-2xl"})[a.titleSize]),i=e.computed(()=>({auto:"",video:"aspect-video",square:"aspect-square",portrait:"aspect-[3/4]"})[a.imageAspect]),c=O.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}}),u=O.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:""}}}),b=O.cva("",{variants:{padding:{none:"p-4",sm:"p-3",md:"p-4",lg:"p-6",xl:"p-8"}}}),C=O.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"}}}),z=O.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(B,V)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.as),{class:e.normalizeClass(e.unref(N)(e.unref(c)({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:l,onKeydown:[e.withKeys(r,["enter"]),e.withKeys(e.withModifiers(r,["prevent"]),["space"])]},{default:e.withCtx(()=>[t.loading?(e.openBlock(),e.createElementBlock("div",Fc,[...V[0]||(V[0]=[e.createElementVNode("div",{class:"animate-spin rounded-full h-8 w-8 border-b-2 border-slate-900"},null,-1)])])):e.createCommentVNode("",!0),B.$slots.header||t.title||t.subtitle||B.$slots.actions?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(N)(e.unref(u)({padding:t.padding,hasBorder:!!(B.$slots.default||B.$slots.footer)})))},[e.renderSlot(B.$slots,"header",{},()=>[e.createElementVNode("div",Tc,[e.createElementVNode("div",Ac,[t.title?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.titleTag),{key:0,class:e.normalizeClass(e.unref(N)(Ic,s.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(_c)},e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)]),B.$slots.actions?(e.openBlock(),e.createElementBlock("div",Mc,[e.renderSlot(B.$slots,"actions")])):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0),B.$slots.image||t.image?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(e.unref(N)(e.unref(z)({padding:t.padding,hasHeader:!!(B.$slots.header||t.title)})))},[e.renderSlot(B.$slots,"image",{},()=>[t.image?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.image,alt:t.imageAlt,class:e.normalizeClass(e.unref(N)(Oc,i.value)),loading:t.imageLazy?"lazy":"eager"},null,10,Lc)):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0),B.$slots.default?(e.openBlock(),e.createElementBlock("div",{key:3,class:e.normalizeClass(e.unref(N)(e.unref(b)({padding:t.padding})))},[e.renderSlot(B.$slots,"default")],2)):e.createCommentVNode("",!0),B.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:4,class:e.normalizeClass(e.unref(N)(e.unref(C)({padding:t.padding})))},[e.renderSlot(B.$slots,"footer")],2)):e.createCommentVNode("",!0),t.badge?(e.openBlock(),e.createElementBlock("div",Pc,[e.createElementVNode("span",jc,e.toDisplayString(t.badge),1)])):e.createCommentVNode("",!0)]),_:3},40,["class","disabled","aria-busy","aria-disabled","role","tabindex","onKeydown"]))}},Rc={key:0},Uc={key:1},qc={key:0},ho=Object.assign({inheritAttrs:!1},{__name:"CardHeader",props:{title:{type:String,default:""},subtitle:{type:String,default:""},size:{type:String,default:"medium",validator:t=>["small","medium","large"].includes(t)},alignment:{type:String,default:"left",validator:t=>["left","center","right"].includes(t)}},setup(t){const n=O.cva("flex items-center justify-between",{variants:{size:{small:"p-2",medium:"p-4",large:"p-6"}},defaultVariants:{size:"medium"}}),a=O.cva("",{variants:{alignment:{left:"text-left",center:"text-center",right:"text-right"}},defaultVariants:{alignment:"left"}});return(o,l)=>(e.openBlock(),e.createElementBlock("header",{class:e.normalizeClass(e.unref(N)(e.unref(n)({size:t.size}),o.$attrs.class))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)(e.unref(a)({alignment:t.alignment}),"flex flex-col"))},[t.title||o.$slots.title?(e.openBlock(),e.createElementBlock("h2",Rc,[e.renderSlot(o.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])])):e.createCommentVNode("",!0),t.subtitle||o.$slots.description?(e.openBlock(),e.createElementBlock("p",Uc,[e.renderSlot(o.$slots,"description",{},()=>[e.createTextVNode(e.toDisplayString(t.subtitle),1)])])):e.createCommentVNode("",!0)],2),o.$slots.actions?(e.openBlock(),e.createElementBlock("div",qc,[e.renderSlot(o.$slots,"actions")])):e.createCommentVNode("",!0)],2))}}),yo={__name:"CardBody",props:{variant:{type:String,default:"default",validator:t=>["default","compact","spacious"].includes(t)}},setup(t){const n=t,a=O.cva("p-6",{variants:{variant:{default:"p-6",compact:"p-4",spacious:"p-8"}}}),o=e.computed(()=>N(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}},bo={__name:"CardFooter",props:{variant:{type:String,default:"default",validator:t=>["default","compact","spacious"].includes(t)}},setup(t){const n=t,a=O.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(()=>N(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}},xo=Object.assign({inheritAttrs:!1},{__name:"CardContent",setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(N)("p-6 pt-0",n.$attrs.class))},[e.renderSlot(n.$slots,"default")],2))}}),ko=Object.assign({inheritAttrs:!1},{__name:"CardTitle",setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("h3",{class:e.normalizeClass(e.unref(N)("text-2xl font-semibold leading-none tracking-tight",n.$attrs.class))},[e.renderSlot(n.$slots,"default")],2))}}),Hc={class:"relative w-full"},Wc={class:"relative"},Yc=["id","value","disabled","placeholder","required","aria-describedby"],Gc={class:"flex items-center justify-between mb-3"},Kc={class:"text-sm font-semibold text-slate-900"},Xc={class:"grid grid-cols-7 gap-1 mb-1"},Qc={class:"grid grid-cols-7 gap-1"},Jc=["disabled","onClick"],Zc={key:0,class:"mt-3 pt-2 border-t border-slate-200"},nt={__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},ariaDescribedby:String,customValidation:{type:Function,default:null},disabledDates:{type:[Array,Function],default:null}},emits:["update:modelValue","validation-error"],setup(t,{emit:n}){const a=t,o=n,l=e.ref(!1),r=e.ref(null),s=e.ref({}),i=new Date,c=e.ref(i.getMonth()),u=e.ref(i.getFullYear()),b=e.ref(null),C=e.ref(!1),z=["Su","Mo","Tu","We","Th","Fr","Sa"],B=e.computed(()=>new Date(u.value,c.value).toLocaleString("default",{month:"long"})),V=e.computed(()=>new Date(u.value,c.value+1,0).getDate()),k=e.computed(()=>new Date(u.value,c.value,1).getDay()),h=e.computed(()=>{const I=new Date(u.value,c.value,0).getDate(),j=k.value;return Array.from({length:j},(Q,H)=>I-j+H+1)}),g=e.computed(()=>{const I=h.value.length+V.value,j=I%7===0?0:7-I%7;return Array.from({length:j},(Q,H)=>H+1)}),v=e.computed(()=>b.value?x(b.value):"");function x(I){if(!I)return"";const j=new Date(I),Q=String(j.getMonth()+1).padStart(2,"0"),H=String(j.getDate()).padStart(2,"0"),m=j.getFullYear();return a.format.replace("MM",Q).replace("DD",H).replace("YYYY",m)}function D(I){if(!I)return null;if(I instanceof Date)return I;if(typeof I=="string"){const Q=I.split("-");if(Q.length===3){const H=parseInt(Q[0],10),m=parseInt(Q[1],10)-1,w=parseInt(Q[2],10);return new Date(H,m,w)}}const j=new Date(I);return isNaN(j.getTime())?null:j}function S(I){return i.getDate()===I&&i.getMonth()===c.value&&i.getFullYear()===u.value}function M(I){if(!b.value)return!1;const j=new Date(b.value);return j.getDate()===I&&j.getMonth()===c.value&&j.getFullYear()===u.value}function _(I){const j=new Date(u.value,c.value,I);if(a.min){const Q=D(a.min);if(Q&&j<Q)return!0}if(a.max){const Q=D(a.max);if(Q&&j>Q)return!0}if(a.disabledDates){if(typeof a.disabledDates=="function")return a.disabledDates(j);if(Array.isArray(a.disabledDates))return a.disabledDates.some(Q=>{const H=D(Q);return H&&H.getTime()===j.getTime()})}return!!(a.customValidation&&a.customValidation(j))}function te(I){if(!I)return C.value=!1,o("validation-error",null),!0;if(a.customValidation){const j=a.customValidation(I);if(j)return C.value=!0,o("validation-error",j),!1}return C.value=!1,o("validation-error",null),!0}async function U(){await e.nextTick();const I=document.getElementById(a.id);if(!I||!r.value)return;const j=I.getBoundingClientRect(),Q=320,H=window.innerHeight-j.bottom,m=j.top,w=8;let f,X;H>=Q||H>m?f=j.bottom+w:f=j.top-Q-w,X=j.left;const oe=256;X+oe>window.innerWidth&&(X=window.innerWidth-oe-16),X<16&&(X=16),s.value={top:`${f}px`,left:`${X}px`}}async function E(){a.disabled||(l.value=!l.value,l.value&&await U())}function $(){l.value=!1}function L(){c.value===0?(c.value=11,u.value--):c.value--}function T(){c.value===11?(c.value=0,u.value++):c.value++}function J(I){if(_(I))return;const j=new Date(u.value,c.value,I);if(!te(j))return;b.value=j;const Q=j.getFullYear(),H=String(j.getMonth()+1).padStart(2,"0"),m=String(j.getDate()).padStart(2,"0"),w=`${Q}-${H}-${m}`;o("update:modelValue",w),setTimeout(()=>{l.value=!1},150)}function q(){c.value=i.getMonth(),u.value=i.getFullYear(),J(i.getDate())}function p(){b.value=null,C.value=!1,o("update:modelValue",""),o("validation-error",null)}e.watch(()=>a.modelValue,I=>{if(I){const j=D(I);j&&(b.value=j,c.value=j.getMonth(),u.value=j.getFullYear(),te(j))}else b.value=null,C.value=!1},{immediate:!0});function y(){l.value&&U()}function d(I){I.key==="Escape"&&l.value&&$()}return e.onMounted(()=>{document.addEventListener("keydown",d),window.addEventListener("resize",y)}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",d),window.removeEventListener("resize",y)}),(I,j)=>(e.openBlock(),e.createElementBlock("div",Hc,[e.createElementVNode("div",Wc,[e.createElementVNode("input",{id:t.id,type:"text",value:v.value,readonly:"",disabled:t.disabled,placeholder:t.placeholder,required:t.required,"aria-describedby":t.ariaDescribedby,class:e.normalizeClass(["w-full px-3 py-2 pr-10 border rounded-md bg-white text-slate-900 placeholder-slate-400 text-sm","focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500 cursor-pointer transition-colors","disabled:bg-slate-50 disabled:text-slate-500 disabled:cursor-not-allowed",C.value?"border-red-500 focus:ring-red-500 focus:border-red-500":"border-slate-300"]),onClick:E},null,10,Yc),j[2]||(j[2]=e.createElementVNode("div",{class:"absolute right-3 top-1/2 -translate-y-1/2 pointer-events-none"},[e.createElementVNode("svg",{class:"w-4 h-4 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&&v.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 transition-colors","aria-label":"Clear date",onClick:e.withModifiers(p,["stop"])},[...j[1]||(j[1]=[e.createElementVNode("svg",{class:"w-3.5 h-3.5 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.openBlock(),e.createBlock(e.Teleport,{to:"body"},[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(()=>[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"calendarRef",ref:r,style:e.normalizeStyle(s.value),class:"fixed z-[10000] bg-white border border-slate-200 rounded-lg shadow-xl p-3 w-64",onClick:j[0]||(j[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Gc,[e.createElementVNode("button",{type:"button",class:"p-1.5 rounded hover:bg-slate-100 transition-colors","aria-label":"Previous Month",onClick:L},[...j[3]||(j[3]=[e.createElementVNode("svg",{class:"w-4 h-4 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",Kc,e.toDisplayString(B.value)+" "+e.toDisplayString(u.value),1),e.createElementVNode("button",{type:"button",class:"p-1.5 rounded hover:bg-slate-100 transition-colors","aria-label":"Next Month",onClick:T},[...j[4]||(j[4]=[e.createElementVNode("svg",{class:"w-4 h-4 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",Xc,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(z,Q=>e.createElementVNode("div",{key:Q,class:"text-center text-xs font-medium text-slate-500 py-1"},e.toDisplayString(Q),1)),64))]),e.createElementVNode("div",Qc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,(Q,H)=>(e.openBlock(),e.createElementBlock("div",{key:"prev-"+H,class:"text-center text-xs text-slate-300 py-1.5"},e.toDisplayString(Q),1))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,Q=>(e.openBlock(),e.createElementBlock("button",{key:Q,type:"button",disabled:_(Q),class:e.normalizeClass(["w-8 h-8 rounded text-xs font-medium transition-colors",S(Q)&&!M(Q)?"bg-blue-50 text-blue-600 ring-1 ring-blue-200":"",M(Q)?"bg-blue-500 text-white hover:bg-blue-600":"text-slate-700 hover:bg-slate-100",_(Q)?"text-slate-300 cursor-not-allowed hover:bg-transparent line-through":"cursor-pointer"]),onClick:H=>J(Q)},e.toDisplayString(Q),11,Jc))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.value,(Q,H)=>(e.openBlock(),e.createElementBlock("div",{key:"next-"+H,class:"text-center text-xs text-slate-300 py-1.5"},e.toDisplayString(Q),1))),128))]),t.showToday?(e.openBlock(),e.createElementBlock("div",Zc,[e.createElementVNode("button",{type:"button",class:"w-full px-3 py-1.5 text-xs font-medium text-blue-600 hover:bg-blue-50 rounded transition-colors",onClick:q}," Today ")])):e.createCommentVNode("",!0)],4)):e.createCommentVNode("",!0)]),_:1}),l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-[9999]",onClick:$})):e.createCommentVNode("",!0)]))]))}},ed=["aria-expanded"],wo={__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),l=O.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"}}}),r=O.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"}}}),s=e.computed(()=>N(l({variant:n.variant}),"h-10 px-4 py-2")),i=e.computed(()=>N(r({placement:n.placement}))),c=()=>{a.value=!a.value},u=b=>{o.value&&!o.value.contains(b.target)&&(a.value=!1)};return e.onMounted(()=>{document.addEventListener("click",u)}),e.onUnmounted(()=>{document.removeEventListener("click",u)}),(b,C)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"dropdownRef",ref:o,class:"relative"},[e.createElementVNode("button",{class:e.normalizeClass(s.value),"aria-expanded":a.value,"aria-haspopup":!0,onClick:c},[e.renderSlot(b.$slots,"trigger",{},()=>[e.createElementVNode("span",null,e.toDisplayString(t.triggerText),1),e.createVNode(K,{name:"chevron-down",class:"ml-2 h-4 w-4"})])],10,ed),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(i.value),role:"menu","aria-orientation":"vertical"},[e.renderSlot(b.$slots,"default")],2)):e.createCommentVNode("",!0)]),_:3})],512))}},td={key:1,class:"ml-auto text-xs tracking-widest opacity-60"},Co={__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,l=O.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"}}}),r=e.computed(()=>N(l({variant:a.variant}))),s=i=>{a.disabled||o("click",i)};return(i,c)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.href?"a":"button"),{href:t.href,class:e.normalizeClass(r.value),disabled:t.disabled,role:"menuitem",onClick:s},{default:e.withCtx(()=>[t.icon?(e.openBlock(),e.createBlock(K,{key:0,name:t.icon,class:"mr-2 h-4 w-4"},null,8,["name"])):e.createCommentVNode("",!0),e.renderSlot(i.$slots,"default"),t.shortcut?(e.openBlock(),e.createElementBlock("span",td,e.toDisplayString(t.shortcut),1)):e.createCommentVNode("",!0)]),_:3},8,["href","class","disabled"]))}},ad={class:"w-full"},nd=["multiple","accept"],od={class:"flex items-center justify-center px-4 py-3"},ld={class:"bg-gray-100 rounded-full p-2 mr-3"},rd={class:"flex flex-col"},sd={class:"text-xs text-gray-500"},id={key:0,class:"ml-2"},cd={key:1,class:"mt-4 space-y-2"},dd={class:"flex items-center space-x-3"},ud={class:"flex flex-col"},md={class:"text-sm font-medium text-gray-900"},fd={class:"text-xs text-gray-500"},pd={class:"flex items-center space-x-3"},gd={class:"bg-green-100 rounded-md p-2"},vd={class:"flex flex-col"},hd={class:"text-sm font-medium text-gray-900"},yd={class:"text-xs text-gray-500"},bd=["onClick"],ga={__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,l=e.ref([]),r=e.ref(!1),s=e.ref(null),i=e.ref([]),c=O.cva("border-2 border-dashed rounded-xl cursor-pointer transition-all duration-300 ease-in-out shadow-sm",{variants:{variant:{default:"border-gray-300 hover:border-gray-400 hover:bg-gray-50 focus-within:ring-2 focus-within:ring-blue-500 focus-within:ring-opacity-50",dashed:"border-blue-300 hover:border-blue-400 hover:bg-blue-50 focus-within:ring-2 focus-within:ring-blue-500 focus-within:ring-opacity-50"}}}),u=e.computed(()=>N(c({variant:a.variant}),{"border-green-500 bg-green-50 shadow-md":l.value.length>0&&!r.value,"border-blue-500 bg-blue-50 ring-4 ring-blue-200 ring-opacity-50 shadow-lg":r.value,"border-green-600 bg-green-100 ring-4 ring-green-200 ring-opacity-50 shadow-lg":l.value.length>0&&r.value})),b=x=>{x.preventDefault(),r.value=!1;const D=Array.from(x.dataTransfer.files);h(D)},C=x=>{x.preventDefault()},z=x=>{x.preventDefault(),r.value=!0},B=x=>{x.preventDefault(),r.value=!1},V=()=>{s.value?.click()},k=x=>{const D=Array.from(x.target.files);h(D)},h=x=>{const S=x.filter(M=>!(a.maxSize&&M.size>a.maxSize)).map(M=>e.reactive({file:M,progress:0,uploading:!0}));i.value.push(...S),S.forEach(M=>{const _=2e3+Math.random()*2e3,te=50,E=100/(_/te),$=setInterval(()=>{M.progress+=E,M.progress>=100&&(M.progress=100,M.uploading=!1,clearInterval($),a.multiple?l.value.push(M.file):l.value=[M.file],i.value.splice(i.value.indexOf(M),1),o("files-selected",l.value))},te)})},g=x=>{l.value.splice(x,1),o("file-removed",l.value)},v=x=>{if(x===0)return"0 Bytes";const D=1024,S=["Bytes","KB","MB","GB"],M=Math.floor(Math.log(x)/Math.log(D));return parseFloat((x/Math.pow(D,M)).toFixed(2))+" "+S[M]};return(x,D)=>(e.openBlock(),e.createElementBlock("div",ad,[!l.value.length||t.multiple?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(u.value),onDrop:b,onDragover:C,onDragenter:z,onDragleave:B,onClick:V},[e.createElementVNode("input",{ref_key:"fileInput",ref:s,type:"file",multiple:t.multiple,accept:t.accept,class:"hidden",onChange:k},null,40,nd),e.createElementVNode("div",od,[e.createElementVNode("div",ld,[e.createVNode(K,{icon:"upload",class:"h-6 w-6 text-gray-600"})]),e.createElementVNode("div",rd,[D[0]||(D[0]=e.createElementVNode("p",{class:"text-sm font-medium text-gray-700"},[e.createElementVNode("span",{class:"text-blue-600 font-semibold"},"Click to upload"),e.createTextVNode(" or drag and drop ")],-1)),e.createElementVNode("p",sd,[e.createTextVNode(e.toDisplayString(t.maxSize?`Up to ${v(t.maxSize)}`:"No size limit")+" ",1),t.accept?(e.openBlock(),e.createElementBlock("span",id,"• "+e.toDisplayString(t.accept),1)):e.createCommentVNode("",!0)])])])],34)):e.createCommentVNode("",!0),l.value.length>0||i.value.length>0?(e.openBlock(),e.createElementBlock("div",cd,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,(S,M)=>(e.openBlock(),e.createElementBlock("div",{key:`uploading-${M}`,class:"flex items-center justify-between p-3 bg-white border border-gray-200 rounded-lg shadow-sm"},[e.createElementVNode("div",dd,[e.createVNode(kt,{value:S.progress,max:100,size:"sm",variant:"default","dynamic-color":!0,class:"flex-shrink-0"},null,8,["value"]),e.createElementVNode("div",ud,[e.createElementVNode("span",md,e.toDisplayString(S.file.name),1),e.createElementVNode("span",fd,"Uploading... "+e.toDisplayString(Math.round(S.progress))+"%",1)])])]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,(S,M)=>(e.openBlock(),e.createElementBlock("div",{key:`uploaded-${M}`,class:"flex items-center justify-between p-3 bg-white border border-gray-200 rounded-lg shadow-sm hover:shadow-md transition-shadow"},[e.createElementVNode("div",pd,[e.createElementVNode("div",gd,[e.createVNode(K,{icon:"file",class:"h-5 w-5 text-green-600"})]),e.createElementVNode("div",vd,[e.createElementVNode("span",hd,e.toDisplayString(S.name),1),e.createElementVNode("span",yd,e.toDisplayString(v(S.size)),1)])]),e.createElementVNode("button",{class:"text-gray-400 hover:text-red-500 hover:bg-red-50 rounded-full p-1 transition-colors",onClick:_=>g(M)},[e.createVNode(K,{icon:"x",class:"h-4 w-4"})],8,bd)]))),128))])):e.createCommentVNode("",!0)]))}},xd=["for"],kd={key:0,class:"text-red-500 ml-1","aria-label":"required"},wd={class:"relative"},Cd=["aria-label"],Bd=["id"],Vd=["id"],Ct={__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,l=`field-${Math.random().toString(36).slice(2,9)}`,r=e.computed(()=>`${a.id||l}-${Math.random().toString(36).slice(2,5)}`),s=e.computed(()=>!!a.error),i=e.ref(!1),c=()=>{i.value=!i.value},u=e.computed(()=>{const k=[];return a.error?k.push(`${r.value}-error`):a.helpText&&k.push(`${r.value}-help`),k.length>0?k.join(" "):void 0}),b=O.cva("",{variants:{size:{sm:"space-y-1",md:"space-y-2",lg:"space-y-3"}},defaultVariants:{size:"md"}}),C=O.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"}}),z=O.cva("text-slate-600",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-base"}},defaultVariants:{size:"md"}}),B=O.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"}}),V=O.cva("text-slate-500",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-sm"}},defaultVariants:{size:"md"}});return(k,h)=>{const g=e.resolveComponent("font-awesome-icon");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(N)(e.unref(b)({size:t.size}),k.$attrs.class))},[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:r.value,class:e.normalizeClass(e.unref(N)(e.unref(C)({size:t.size})))},[e.createTextVNode(e.toDisplayString(t.label)+" ",1),t.required?(e.openBlock(),e.createElementBlock("span",kd,"*")):e.createCommentVNode("",!0)],10,xd)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:e.normalizeClass(e.unref(N)(e.unref(z)({size:t.size})))},e.toDisplayString(t.description),3)):e.createCommentVNode("",!0),e.createElementVNode("div",wd,[t.type==="date"?(e.openBlock(),e.createBlock(nt,{key:0,id:r.value,"model-value":t.modelValue,disabled:!1,required:t.required,class:e.normalizeClass(s.value?"border-red-500":""),"onUpdate:modelValue":h[0]||(h[0]=v=>o("update:modelValue",v))},null,8,["id","model-value","required","class"])):e.renderSlot(k.$slots,"default",{key:1,fieldId:r.value,hasError:s.value,ariaDescribedBy:u.value,showPassword:i.value,togglePasswordVisibility:c}),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":i.value?"Hide password":"Show password",onClick:c},[e.createVNode(g,{icon:i.value?"eye-slash":"eye",class:"w-4 h-4"},null,8,["icon"])],8,Cd)):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(()=>[s.value?(e.openBlock(),e.createElementBlock("div",{key:0,id:`${r.value}-error`,class:e.normalizeClass(e.unref(N)(e.unref(B)({size:t.size,intent:"error"}))),role:"alert","aria-live":"polite"},[e.createVNode(g,{icon:"exclamation-triangle",class:"w-4 h-4 flex-shrink-0 mt-0.5"}),e.createElementVNode("span",null,e.toDisplayString(t.error),1)],10,Bd)):e.createCommentVNode("",!0)]),_:1}),t.helpText&&!s.value?(e.openBlock(),e.createElementBlock("p",{key:2,id:`${r.value}-help`,class:e.normalizeClass(e.unref(N)(e.unref(V)({size:t.size})))},e.toDisplayString(t.helpText),11,Vd)):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&&!s.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(N)(e.unref(B)({size:t.size,intent:"success"})))},[e.createVNode(g,{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)}}},Ed={key:0,class:"flex items-center px-3 bg-muted border border-r-0 rounded-l-md"},Nd={key:1,class:"flex items-center px-3 bg-muted border border-l-0 rounded-r-md"},Bo={__name:"InputGroup",props:{variant:{type:String,default:"default",validator:t=>["default","outline"].includes(t)}},setup(t){const n=t,a=O.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(()=>N(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[l.$slots.prefix?(e.openBlock(),e.createElementBlock("div",Ed,[e.renderSlot(l.$slots,"prefix")])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default"),l.$slots.suffix?(e.openBlock(),e.createElementBlock("div",Nd,[e.renderSlot(l.$slots,"suffix")])):e.createCommentVNode("",!0)],2))}},Sd=["role"],$d={key:0,class:"flex-shrink-0"},zd={class:"flex-1 min-w-0"},Dd={key:0,class:"text-sm font-medium text-foreground"},Fd={key:1,class:"text-sm text-muted-foreground"},Td={key:1,class:"flex-shrink-0"},Vo={__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,l=O.cva("",{variants:{variant:{default:"",interactive:"hover:bg-accent/50 cursor-pointer"}}}),r=O.cva("flex items-center space-x-3 p-3",{variants:{variant:{default:"",interactive:"transition-colors rounded-md"}}}),s=e.computed(()=>N(l({variant:a.variant}))),i=e.computed(()=>N(r({variant:a.variant}))),c=u=>{o("click",u)};return(u,b)=>(e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(s.value),role:t.role},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.href?"a":"div"),{href:t.href,class:e.normalizeClass(i.value),onClick:c},{default:e.withCtx(()=>[u.$slots.icon||t.icon?(e.openBlock(),e.createElementBlock("div",$d,[e.renderSlot(u.$slots,"icon",{},()=>[t.icon?(e.openBlock(),e.createBlock(K,{key:0,name:t.icon,class:"h-5 w-5"},null,8,["name"])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),e.createElementVNode("div",zd,[t.title?(e.openBlock(),e.createElementBlock("div",Dd,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("div",Fd,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0),e.renderSlot(u.$slots,"default")]),u.$slots.action?(e.openBlock(),e.createElementBlock("div",Td,[e.renderSlot(u.$slots,"action")])):e.createCommentVNode("",!0)]),_:3},8,["href","class"]))],10,Sd))}},Ad={key:1,class:"ml-auto text-xs tracking-widest opacity-60"},Eo={__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,l=O.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"}}}),r=e.computed(()=>N(l({variant:a.variant}))),s=i=>{a.disabled||o("click",i)};return(i,c)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.href?"a":"button"),{href:t.href,class:e.normalizeClass(r.value),disabled:t.disabled,role:"menuitem",onClick:s},{default:e.withCtx(()=>[t.icon?(e.openBlock(),e.createBlock(K,{key:0,name:t.icon,class:"mr-2 h-4 w-4"},null,8,["name"])):e.createCommentVNode("",!0),e.renderSlot(i.$slots,"default"),t.shortcut?(e.openBlock(),e.createElementBlock("span",Ad,e.toDisplayString(t.shortcut),1)):e.createCommentVNode("",!0),t.hasSubmenu?(e.openBlock(),e.createBlock(K,{key:2,name:"chevron-right",class:"ml-auto h-4 w-4"})):e.createCommentVNode("",!0)]),_:3},8,["href","class","disabled"]))}},Bt={__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","8xl","full"].includes(t)},class:{type:String,default:""},resizable:{type:Boolean,default:!1}},emits:["update:modelValue","close"],setup(t,{emit:n}){const a=O.cva("relative w-full max-h-[100vh] overflow-y-auto border bg-white pt-12 pr-12 pb-6 pl-6 shadow-lg duration-200 sm:rounded-lg",{variants:{size:{sm:"max-w-sm",md:"max-w-md",lg:"max-w-lg",xl:"max-w-xl","2xl":"max-w-2xl","3xl":"max-w-3xl","4xl":"max-w-4xl","5xl":"max-w-5xl","6xl":"max-w-6xl","7xl":"max-w-7xl","8xl":"max-w-8xl",full:"max-w-full"}},defaultVariants:{size:"6xl"}}),o=t,l=n,r=()=>{l("update:modelValue",!1),l("close")},s=c=>{o.closeOnBackdrop&&c.target===c.currentTarget&&!o.resizable&&r()};let i=null;return e.watch(()=>o.modelValue,c=>{c?(i=u=>{u.key==="Escape"&&r()},document.addEventListener("keydown",i)):i&&(document.removeEventListener("keydown",i),i=null)},{immediate:!0}),e.onUnmounted(()=>{i&&(document.removeEventListener("keydown",i),i=null)}),(c,u)=>(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:e.normalizeClass(["fixed inset-0 z-50 bg-background/80 backdrop-blur-sm flex items-center justify-center",{"pointer-events-none":t.resizable}]),onClick:s},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)(e.unref(a)({size:t.size}),o.class,t.resizable?"resize overflow-hidden pointer-events-auto relative":"")),style:e.normalizeStyle(t.resizable?"min-width: 400px; min-height: 200px; resize: both;":"")},[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:r},[e.createVNode(K,{icon:"x",class:"h-4 w-4"}),u[0]||(u[0]=e.createElementVNode("span",{class:"sr-only"},"Close",-1))])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default")],6)],2)):e.createCommentVNode("",!0)]),_:3})]))}},Md={class:"flex flex-col space-y-1.5 text-center sm:text-left"},Ld={key:0,class:"text-lg font-semibold leading-none tracking-tight"},Pd={key:1,class:"text-sm text-muted-foreground"},No={__name:"ModalHeader",props:{title:String,description:String},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",Md,[t.title?(e.openBlock(),e.createElementBlock("h2",Ld,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",Pd,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"default")]))}},So={__name:"ModalBody",props:{variant:{type:String,default:"default",validator:t=>["default","compact"].includes(t)}},setup(t){const n=t,a=O.cva("",{variants:{variant:{default:"py-4",compact:"py-2"}}}),o=e.computed(()=>N(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}},$o={__name:"ModalFooter",props:{variant:{type:String,default:"default",validator:t=>["default","center"].includes(t)}},setup(t){const n=t,a=O.cva("flex gap-2 pt-4",{variants:{variant:{default:"flex-col-reverse sm:flex-row sm:justify-end",center:"justify-center"}}}),o=e.computed(()=>N(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}},jd=["aria-live"],Od={class:"flex items-start space-x-3"},Id={key:0,class:"flex-shrink-0"},_d={class:"flex-1 min-w-0"},Rd={key:0,class:"text-sm font-medium"},zo={__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,l=e.ref(!0),r=O.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"}}}),s={default:"info",success:"check-circle",warning:"alert-triangle",danger:"alert-circle"},i=O.cva("h-5 w-5",{variants:{variant:{default:"text-primary",success:"text-green-500",warning:"text-yellow-500",danger:"text-danger"}}}),c=e.computed(()=>N(r({variant:a.variant}),"p-4")),u=e.computed(()=>s[a.variant]),b=e.computed(()=>i({variant:a.variant})),C=()=>{l.value=!1,o("dismiss")};return e.onMounted(()=>{a.autoClose>0&&setTimeout(()=>{C()},a.autoClose)}),(z,B)=>(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(()=>[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(c.value),role:"alert","aria-live":t.variant==="danger"?"assertive":"polite"},[e.createElementVNode("div",Od,[t.showIcon?(e.openBlock(),e.createElementBlock("div",Id,[e.createVNode(K,{name:u.value,class:e.normalizeClass(b.value)},null,8,["name","class"])])):e.createCommentVNode("",!0),e.createElementVNode("div",_d,[t.title?(e.openBlock(),e.createElementBlock("div",Rd,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(z.$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:C},[e.createVNode(K,{name:"x",class:"h-4 w-4"})])):e.createCommentVNode("",!0)])],10,jd)):e.createCommentVNode("",!0)]),_:3}))}},Ze=e.ref([]);let Ud=0;const qd={duration:3e3,position:"top-center",dismissible:!0,closeButton:!1},Hd=()=>`toast-${++Ud}-${Date.now()}`,Ee=(t,n={})=>{const a=Hd(),o={id:a,message:t,...qd,...n,createdAt:Date.now()};return Ze.value.push(e.markRaw(o)),o.duration&&o.duration>0&&setTimeout(()=>{Xe(a)},o.duration),a},Xe=t=>{const n=Ze.value.findIndex(a=>a.id===t);n>-1&&Ze.value.splice(n,1)},Do=()=>{Ze.value=[]},de=Object.assign((t,n)=>Ee(t,{...n}),{success:(t,n)=>Ee(t,{...n,variant:"success"}),error:(t,n)=>Ee(t,{...n,variant:"error"}),warning:(t,n)=>Ee(t,{...n,variant:"warning"}),info:(t,n)=>Ee(t,{...n,variant:"info"}),promise:(t,n={})=>{const{loading:a="Loading...",success:o="Success",error:l="Error",...r}=n,s=Ee(a,{...r,variant:"loading",duration:0,dismissible:!1});return t.then(i=>{Xe(s);const c=typeof o=="function"?o(i):o;return Ee(c,{...r,variant:"success"}),i}).catch(i=>{Xe(s);const c=typeof l=="function"?l(i):l;throw Ee(c,{...r,variant:"error"}),i})},dismiss:Xe,dismissAll:Do,custom:(t,n={})=>Ee("",{...n,component:e.markRaw(t)})}),Fo=()=>({toasts:Ze,dismiss:Xe,dismissAll:Do}),Wd=["aria-live"],Yd={class:"flex-1 grid gap-1"},Gd={key:0,class:"text-lg font-extrabold"},Kd={key:1,class:"text-md opacity-90"},Xd={key:2,class:"text-md opacity-90"},Qd=["onClick"],Jd=["onClick"],To={__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}=Fo(),l={"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"},r=e.computed(()=>N(l[n.position])),s=O.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"}}),i=V=>N(s({variant:V.variant})),c={default:"bell",info:"info",success:"check-circle",warning:"triangle-exclamation",error:"circle-exclamation",loading:"loader"},u={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"},b=V=>V.icon||c[V.variant]||c.default,C=V=>{const k=u[V.variant]||u.default;return V.variant==="loading"?`${k} animate-spin`:k},z=V=>V.icon!==!1,B=V=>V.dismissible!==!1&&(V.closeButton||n.closeButton||V.dismissible);return(V,k)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)(r.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),h=>(e.openBlock(),e.createElementBlock("div",{key:h.id,class:e.normalizeClass([i(h),"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":h.variant==="error"?"assertive":"polite"},[z(h)?(e.openBlock(),e.createBlock(K,{key:0,icon:b(h),class:e.normalizeClass([C(h),"h-4 w-4 shrink-0"])},null,8,["icon","class"])):e.createCommentVNode("",!0),e.createElementVNode("div",Yd,[h.title?(e.openBlock(),e.createElementBlock("div",Gd,e.toDisplayString(h.title),1)):e.createCommentVNode("",!0),h.message?(e.openBlock(),e.createElementBlock("div",Kd,e.toDisplayString(h.message),1)):e.createCommentVNode("",!0),h.description?(e.openBlock(),e.createElementBlock("div",Xd,e.toDisplayString(h.description),1)):e.createCommentVNode("",!0),h.component?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(h.component),e.mergeProps({key:3,ref_for:!0},h.componentProps),null,16)):e.createCommentVNode("",!0)]),h.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:h.action.onClick},e.toDisplayString(h.action.label),9,Qd)):e.createCommentVNode("",!0),B(h)?(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:g=>e.unref(o)(h.id)},[e.createVNode(K,{icon:"x",class:"h-4 w-4"})],8,Jd)):e.createCommentVNode("",!0)],10,Wd))),128))]),_:1})],2)]))}},Zd={class:"relative"},eu={class:"absolute left-3 top-1/2 transform -translate-y-1/2 pointer-events-none"},tu=["value","placeholder","disabled"],au={key:0,class:"absolute right-3 top-1/2 transform -translate-y-1/2"},nu=["aria-label"],ou={key:1,class:"animate-spin"},lu={key:0,class:"max-h-64 overflow-y-auto"},ru=["onClick","onMouseenter"],su={class:"flex-1 text-left"},iu={class:"font-medium text-slate-900"},cu={key:0,class:"text-sm text-slate-500 truncate"},du={key:1,class:"text-xs text-slate-400 ml-3"},uu={key:1,class:"px-4 py-3 text-sm text-slate-500 text-center"},mu={key:2,class:"border-t border-slate-200 p-2"},Ao={__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={render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.h("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"})])}},o={render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18 18 6M6 6l12 12"})])}},l={render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24",class:"animate-spin"},[e.h("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),e.h("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"})])}},r=t,s=n,i=e.ref(null),c=e.ref(null),u=e.ref(!1),b=e.ref(-1),C=e.ref(null),z=E=>{const $=E.target.value;s("update:modelValue",$),C.value&&clearTimeout(C.value),C.value=setTimeout(()=>{$.length>=r.minLength?(s("search",$),u.value=!0):u.value=!1},r.debounce)},B=E=>{s("focus",E),r.modelValue.length>=r.minLength&&(u.value=!0)},V=E=>{s("blur",E),setTimeout(()=>{u.value=!1,b.value=-1},150)},k=()=>{s("update:modelValue",""),s("clear"),u.value=!1,c.value?.focus()},h=E=>{s("select",E),u.value=!1,b.value=-1},g=E=>{if(!(!u.value||r.results.length===0))switch(E.key){case"ArrowDown":E.preventDefault(),b.value=Math.min(b.value+1,r.results.length-1);break;case"ArrowUp":E.preventDefault(),b.value=Math.max(b.value-1,-1);break;case"Enter":E.preventDefault(),b.value>=0&&h(r.results[b.value]);break;case"Escape":E.preventDefault(),u.value=!1,b.value=-1;break}},v=E=>{if(!r.highlightMatches||!r.modelValue||!E)return E;const $=new RegExp(`(${r.modelValue})`,"gi");return E.replace($,"$1")},x=O.cva("block w-full rounded-lg border bg-white transition-colors duration-200 placeholder:text-slate-400 disabled:bg-slate-50 disabled:text-slate-500 disabled:cursor-not-allowed focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500",{variants:{size:{sm:"px-9 py-1.5 text-sm",md:"px-10 py-2 text-sm",lg:"px-12 py-3 text-base"}},defaultVariants:{size:"md"}}),D=O.cva("text-slate-400",{variants:{size:{sm:"w-4 h-4",md:"w-4 h-4",lg:"w-5 h-5"}},defaultVariants:{size:"md"}}),S=e.computed(()=>N(x({size:r.size}))),M=e.computed(()=>N(D({size:r.size}))),_=e.computed(()=>N("absolute z-50 w-full mt-1 bg-white rounded-lg shadow-lg border border-slate-200 max-h-96 overflow-hidden")),te=E=>N("flex items-center w-full px-4 py-3 text-left transition-colors duration-150 hover:bg-slate-50 focus:bg-slate-50 focus:outline-none",{"bg-slate-50":b.value===E}),U=E=>{i.value&&!i.value.contains(E.target)&&(u.value=!1,b.value=-1)};return e.onMounted(()=>document.addEventListener("click",U)),e.onUnmounted(()=>{document.removeEventListener("click",U),C.value&&clearTimeout(C.value)}),e.watch(()=>r.results,()=>b.value=-1),(E,$)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"searchRef",ref:i,class:"relative"},[e.createElementVNode("div",Zd,[e.createElementVNode("div",eu,[e.createVNode(a,{class:e.normalizeClass(M.value)},null,8,["class"])]),e.createElementVNode("input",{ref_key:"inputRef",ref:c,value:t.modelValue,placeholder:t.placeholder,disabled:t.disabled,class:e.normalizeClass(S.value),onInput:z,onFocus:B,onBlur:V,onKeydown:g},null,42,tu),t.modelValue||t.loading?(e.openBlock(),e.createElementBlock("div",au,[!t.loading&&t.clearable?(e.openBlock(),e.createElementBlock("button",{key:0,class:"text-slate-400 hover:text-slate-600 transition-colors p-1 rounded-full hover:bg-slate-100","aria-label":t.clearLabel,onClick:k},[e.createVNode(o,{class:"w-4 h-4"})],8,nu)):t.loading?(e.openBlock(),e.createElementBlock("div",ou,[e.createVNode(l,{class:"w-4 h-4 text-slate-400"})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-200","enter-from-class":"opacity-0 scale-95 translate-y-1","enter-to-class":"opacity-100 scale-100 translate-y-0","leave-active-class":"transition-all duration-150","leave-from-class":"opacity-100 scale-100 translate-y-0","leave-to-class":"opacity-0 scale-95 translate-y-1"},{default:e.withCtx(()=>[u.value&&(t.results.length>0||t.showNoResults)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(_.value)},[t.results.length>0?(e.openBlock(),e.createElementBlock("div",lu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.results,(L,T)=>(e.openBlock(),e.createElementBlock("button",{key:L.id||T,class:e.normalizeClass(te(T)),onClick:J=>h(L),onMouseenter:J=>b.value=T},[L.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(L.icon),{key:0,class:"w-4 h-4 mr-3 flex-shrink-0"})):e.createCommentVNode("",!0),e.createElementVNode("div",su,[e.createElementVNode("div",iu,e.toDisplayString(v(L.title)),1),L.description?(e.openBlock(),e.createElementBlock("div",cu,e.toDisplayString(v(L.description)),1)):e.createCommentVNode("",!0)]),L.category?(e.openBlock(),e.createElementBlock("div",du,e.toDisplayString(L.category),1)):e.createCommentVNode("",!0)],42,ru))),128))])):t.showNoResults?(e.openBlock(),e.createElementBlock("div",uu,e.toDisplayString(t.noResultsText),1)):e.createCommentVNode("",!0),E.$slots.footer?(e.openBlock(),e.createElementBlock("div",mu,[e.renderSlot(E.$slots,"footer")])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0)]),_:3})],512))}},fu={class:"w-full"},pu=["min","max","step","value"],gu={class:"flex justify-between text-xs text-slate-500 mt-1"},Vt={__name:"Slider",props:{modelValue:{type:[Number,String],default:0},min:{type:Number,default:0},max:{type:Number,default:100},step:{type:Number,default:1}},emits:["update:modelValue"],setup(t,{emit:n}){const a=n,o=l=>{a("update:modelValue",Number(l.target.value))};return(l,r)=>(e.openBlock(),e.createElementBlock("div",fu,[e.createElementVNode("input",{type:"range",min:t.min,max:t.max,step:t.step,value:t.modelValue,class:"w-full accent-blue-500 cursor-pointer",onInput:o},null,40,pu),e.createElementVNode("div",gu,[e.createElementVNode("span",null,e.toDisplayString(t.min),1),e.createElementVNode("span",null,e.toDisplayString(t.modelValue),1),e.createElementVNode("span",null,e.toDisplayString(t.max),1)])]))}},vu={class:"flex items-center space-x-4"},Mo={__name:"Stepper",setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",vu,[e.renderSlot(n.$slots,"default")]))}},hu={class:"flex items-center"},yu={class:"ml-2"},bu={class:"font-medium"},xu={key:0,class:"text-sm text-slate-400"},Lo={__name:"StepperItem",props:{step:{type:Number,required:!0},title:{type:String,required:!0},description:{type:String,default:""},active:{type:Boolean,default:!1},completed:{type:Boolean,default:!1}},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",hu,[e.createElementVNode("div",{class:e.normalizeClass(["flex items-center justify-center w-8 h-8 rounded-full border-2",t.active?"bg-blue-500 border-blue-500 text-white":t.completed?"bg-green-500 border-green-500 text-white":"border-slate-300 text-slate-500"])},[e.createElementVNode("span",null,e.toDisplayString(t.step),1)],2),e.createElementVNode("div",yu,[e.createElementVNode("div",bu,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("div",xu,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)])]))}},ku={class:"w-full"},wu={class:"flex space-x-1 border-b border-slate-200",role:"tablist"},Cu=["id","disabled","aria-selected","aria-controls","onClick"],Bu={class:"mt-4"},Po={__name:"Tab",props:{defaultIndex:{type:Number,default:0},size:{type:String,default:"md"},variant:{type:String,default:"default"},loading:{type:Boolean,default:!1}},emits:["tab-change"],setup(t,{emit:n}){const a=t,o=O.cva("font-medium transition-colors border-b-2 -mb-px",{variants:{size:{sm:"px-3 py-1.5 text-xs",md:"px-4 py-2 text-sm",lg:"px-5 py-2.5 text-base"},variant:{default:""}},defaultVariants:{size:"md",variant:"default"}}),l=e.ref(a.defaultIndex),r=e.ref([]),s=c=>{l.value=c,i("tab-change",c)},i=n;return e.provide("tabsContext",{activeIndex:l,tabs:r,registerTab:c=>(r.value.push({label:c}),r.value.length-1),unregisterTab:c=>{r.value.splice(c,1)}}),(c,u)=>(e.openBlock(),e.createElementBlock("div",ku,[e.createElementVNode("div",wu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,(b,C)=>(e.openBlock(),e.createElementBlock("button",{id:`tab-${C}`,key:C,disabled:a.loading,class:e.normalizeClass(e.unref(N)(e.unref(o)({size:a.size,variant:a.variant}),l.value===C?"border-blue-500 text-blue-600 bg-blue-50":"border-transparent text-slate-500 hover:text-slate-700 hover:border-slate-300",a.loading&&"cursor-not-allowed opacity-50")),"aria-selected":l.value===C,"aria-controls":`panel-${C}`,role:"tab",onClick:z=>!a.loading&&s(C)},e.toDisplayString(b.label),11,Cu))),128))]),e.createElementVNode("div",Bu,[e.renderSlot(c.$slots,"default")])]))}},Vu=["id","aria-labelledby"],Eu={key:0,class:"flex items-center justify-center p-8"},jo={__name:"TabPanel",props:{label:{type:String,required:!0},loading:{type:Boolean,default:!1}},setup(t){const n=t,a=e.inject("tabsContext");if(!a)throw new Error("TabPanel must be used within a Tab component");const o=e.ref(null),l=e.ref(!1);return e.onMounted(()=>{o.value=a.registerTab(n.label),l.value=a.activeIndex.value===o.value,e.watch(a.activeIndex,r=>{l.value=r===o.value})}),e.onUnmounted(()=>{o.value!==null&&a.unregisterTab(o.value)}),(r,s)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{id:`panel-${o.value}`,role:"tabpanel","aria-labelledby":`tab-${o.value}`},[t.loading?(e.openBlock(),e.createElementBlock("div",Eu,[e.createVNode(xt,{size:"lg",label:`Loading ${n.label}`},null,8,["label"])])):e.renderSlot(r.$slots,"default",{key:1})],8,Vu)),[[e.vShow,l.value]])}},Nu=["id","aria-expanded","aria-controls","onClick"],Su={class:"flex items-center flex-1 min-w-0"},$u={key:0},zu=["id","aria-labelledby"],Du={key:0},Oo={__name:"Accordion",props:{items:{type:Array,required:!0},modelValue:{type:[Number,Array],default:null},multiple:Boolean,variant:{type:String,default:"default",validator:t=>["default","bordered","filled","flush"].includes(t)},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},disabled:Boolean},emits:["update:modelValue","change"],setup(t,{emit:n}){const a={render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"})])}},o=t,l=n,r=e.ref(o.multiple?Array.isArray(o.modelValue)?[...o.modelValue]:[]:typeof o.modelValue=="number"?[o.modelValue]:[]),s=v=>{if(!(o.disabled||o.items[v]?.disabled)){if(o.multiple){const x=r.value.indexOf(v);x>-1?r.value.splice(x,1):r.value.push(v),l("update:modelValue",[...r.value])}else{const x=r.value.includes(v)?null:v;r.value=x!==null?[x]:[],l("update:modelValue",x)}l("change",{index:v,expanded:r.value.includes(v)})}},i=v=>r.value.includes(v),c=O.cva("w-full",{variants:{variant:{default:"space-y-1",bordered:"space-y-3",filled:"space-y-3",flush:"divide-y divide-slate-200"}}}),u=O.cva("transition-all duration-200",{variants:{variant:{default:"bg-white border border-slate-200 rounded-lg overflow-hidden shadow-sm hover:shadow-md",bordered:"border-2 border-slate-200 rounded-xl overflow-hidden hover:border-blue-300",filled:"bg-gradient-to-br from-slate-50 to-white border border-slate-200 rounded-xl overflow-hidden shadow-sm",flush:""}}}),b=O.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 disabled:cursor-not-allowed disabled:opacity-50",{variants:{variant:{default:"hover:bg-slate-50",bordered:"hover:bg-blue-50/50",filled:"hover:bg-white/70",flush:"hover:bg-slate-50"},size:{sm:"px-4 py-3",md:"px-5 py-4",lg:"px-6 py-5"}}}),C=O.cva("ml-4 flex-shrink-0 text-slate-400 transition-all duration-200",{variants:{expanded:{true:"rotate-180 text-blue-500",false:""}}}),z=O.cva("overflow-hidden text-slate-600 bg-white",{variants:{size:{sm:"px-4 py-3 text-sm",md:"px-5 py-4 text-sm",lg:"px-6 py-5 text-base"}}}),B=e.computed(()=>N(c({variant:o.variant}))),V=e.computed(()=>N(u({variant:o.variant}))),k=v=>N(b({variant:o.variant,size:o.size}),i(v)&&o.variant==="bordered"&&"bg-blue-50/30 border-blue-300",i(v)&&o.variant==="filled"&&"bg-white",i(v)&&o.variant==="default"&&"bg-slate-50",(o.disabled||o.items[v]?.disabled)&&"cursor-not-allowed opacity-50"),h=v=>N(C({expanded:i(v)})),g=e.computed(()=>N(z({size:o.size})));return e.watch(()=>o.modelValue,v=>{o.multiple?r.value=Array.isArray(v)?[...v]:[]:r.value=typeof v=="number"?[v]:[]}),(v,x)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(B.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(D,S)=>(e.openBlock(),e.createElementBlock("div",{key:D.id||S,class:e.normalizeClass(V.value)},[e.createElementVNode("button",{id:`header-${D.id||S}`,class:e.normalizeClass(k(S)),"aria-expanded":i(S),"aria-controls":`panel-${D.id||S}`,onClick:M=>s(S)},[e.createElementVNode("div",Su,[e.renderSlot(v.$slots,`header-${S}`,{item:D,index:S,isExpanded:i(S)},()=>[D.title?(e.openBlock(),e.createElementBlock("div",$u,e.toDisplayString(D.title),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",{class:e.normalizeClass(h(S))},[e.createVNode(a,{class:"w-5 h-5 transition-transform duration-200"})],2)],10,Nu),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-[600px]","leave-active-class":"transition-all duration-200 ease-in","leave-from-class":"opacity-100 max-h-[600px]","leave-to-class":"opacity-0 max-h-0"},{default:e.withCtx(()=>[i(S)?(e.openBlock(),e.createElementBlock("div",{key:0,id:`panel-${D.id||S}`,class:e.normalizeClass(g.value),"aria-labelledby":`header-${D.id||S}`,role:"region"},[e.renderSlot(v.$slots,`content-${S}`,{item:D,index:S},()=>[e.renderSlot(v.$slots,"content",{item:D,index:S},()=>[D.content?(e.openBlock(),e.createElementBlock("div",Du,e.toDisplayString(D.content),1)):e.createCommentVNode("",!0)])])],10,zu)):e.createCommentVNode("",!0)]),_:2},1024)],2))),128))],2))}},Io={__name:"AccordionItem",props:{variant:{type:String,default:"default",validator:t=>["default","bordered","filled","flush"].includes(t)},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)}},setup(t){const n={render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"})])}},a=t,o=e.ref(!1),l=()=>o.value=!o.value,r=O.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:""}}}),s=O.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"}}}),i=O.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"}}}),c=e.computed(()=>N(r({variant:a.variant}))),u=e.computed(()=>N(s({size:a.size}))),b=e.computed(()=>N(i({size:a.size})));return(C,z)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(c.value)},[e.createVNode(me,{class:e.normalizeClass(u.value),"aria-expanded":o.value,onClick:l},{default:e.withCtx(()=>[e.renderSlot(C.$slots,"header",{isOpen:o.value}),e.createVNode(n,{class:e.normalizeClass(e.unref(N)("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(b.value)},[e.renderSlot(C.$slots,"content",{isOpen:o.value})],2)):e.createCommentVNode("",!0)]),_:3})],2))}},Fu={class:"relative w-full"},Tu={class:"relative"},Au=["id","value","disabled","placeholder","required","aria-describedby"],Mu={class:"flex items-center justify-between mb-3"},Lu={class:"text-sm font-medium"},Pu={class:"grid grid-cols-7 gap-1 mb-2"},ju={class:"grid grid-cols-7 gap-1"},Ou=["disabled","onClick"],Iu={key:0,class:"mt-4 pt-3 border-t border-slate-200"},_o={__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,l=e.ref(!1),r=new Date,s=e.ref(r.getMonth()),i=e.ref(r.getFullYear()),c=e.ref(null),u=["Su","Mo","Tu","We","Th","Fr","Sa"],b=e.computed(()=>new Date(i.value,s.value).toLocaleString("default",{month:"long"})),C=e.computed(()=>new Date(i.value,s.value+1,0).getDate()),z=e.computed(()=>new Date(i.value,s.value,1).getDay()),B=e.computed(()=>{const L=new Date(i.value,s.value,0).getDate(),T=z.value;return Array.from({length:T},(J,q)=>L-T+q+1)}),V=e.computed(()=>{const L=B.value.length+C.value,T=L%7===0?0:7-L%7;return Array.from({length:T},(J,q)=>q+1)}),k=e.computed(()=>c.value?h(c.value):"");function h(L){if(!L)return"";const T=new Date(L),J=String(T.getMonth()+1).padStart(2,"0"),q=String(T.getDate()).padStart(2,"0"),p=T.getFullYear();return a.format.replace("MM",J).replace("DD",q).replace("YYYY",p)}function g(L){if(!L)return null;if(L instanceof Date)return L;const T=new Date(L);return isNaN(T.getTime())?null:T}function v(L){if(!c.value)return!1;const T=new Date(c.value);return T.getDate()===L&&T.getMonth()===s.value&&T.getFullYear()===i.value}function x(L){const T=new Date(i.value,s.value,L);if(a.min){const J=g(a.min);if(J&&T<J)return!0}if(a.max){const J=g(a.max);if(J&&T>J)return!0}return!1}function D(){a.disabled||(l.value=!l.value)}function S(){l.value=!1}function M(){s.value===0?(s.value=11,i.value--):s.value--}function _(){s.value===11?(s.value=0,i.value++):s.value++}function te(L){if(x(L))return;const T=new Date(i.value,s.value,L);c.value=T,o("update:modelValue",T.toISOString().split("T")[0]),l.value=!1}function U(){s.value=r.getMonth(),i.value=r.getFullYear(),te(r.getDate())}function E(){c.value=null,o("update:modelValue","")}e.watch(()=>a.modelValue,L=>{if(L){const T=g(L);T&&(c.value=T,s.value=T.getMonth(),i.value=T.getFullYear())}else c.value=null},{immediate:!0});function $(L){L.key==="Escape"&&l.value&&S()}return e.onMounted(()=>{document.addEventListener("keydown",$)}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",$)}),(L,T)=>(e.openBlock(),e.createElementBlock("div",Fu,[e.createElementVNode("div",Tu,[e.createElementVNode("input",{id:t.id,type:"text",value:k.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:D},null,8,Au),T[2]||(T[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&&k.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(E,["stop"])},[...T[1]||(T[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(()=>[l.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:T[0]||(T[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Mu,[e.createElementVNode("button",{type:"button",class:"p-1 hover:bg-gray-100 rounded","aria-label":"Previous Month",onClick:M},[...T[3]||(T[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",Lu,e.toDisplayString(b.value)+" "+e.toDisplayString(i.value),1),e.createElementVNode("button",{type:"button",class:"p-1 hover:bg-gray-100 rounded","aria-label":"Next Month",onClick:_},[...T[4]||(T[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",Pu,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(u,J=>e.createElementVNode("div",{key:J,class:"text-center text-xs font-medium text-slate-600 py-1"},e.toDisplayString(J),1)),64))]),e.createElementVNode("div",ju,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value,(J,q)=>(e.openBlock(),e.createElementBlock("div",{key:"prev-"+q,class:"text-center text-sm text-slate-300 py-2"},e.toDisplayString(J),1))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,J=>(e.openBlock(),e.createElementBlock("button",{key:J,type:"button",disabled:x(J),class:e.normalizeClass(["w-8 h-8 text-sm rounded flex items-center justify-center",v(J)?"bg-blue-500 text-white":"hover:bg-gray-100",x(J)?"text-gray-300 cursor-not-allowed":""]),onClick:q=>te(J)},e.toDisplayString(J),11,Ou))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,(J,q)=>(e.openBlock(),e.createElementBlock("div",{key:"next-"+q,class:"text-center text-sm text-slate-300 py-2"},e.toDisplayString(J),1))),128))]),t.showToday?(e.openBlock(),e.createElementBlock("div",Iu,[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:U}," Today ")])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0)]),_:1}),l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-[99998]",onClick:S})):e.createCommentVNode("",!0)]))}},_u={class:"flex items-start justify-between"},Ru={class:"flex-1 min-w-0"},Uu={key:0,class:"flex-shrink-0 ml-4"},qu="text-lg font-semibold text-slate-900 truncate",Hu="text-sm text-slate-600 mt-1",Ro={__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=O.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=O.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=O.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"}}}),l=O.cva("",{variants:{padding:{none:"p-4",sm:"p-3",md:"p-4",lg:"p-6",xl:"p-8"}}}),r=O.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"}}}),s=O.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(i,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(N)(e.unref(n)({variant:t.variant,padding:t.padding})))},[i.$slots.header||t.title||t.description?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(N)(e.unref(a)({padding:t.padding})))},[e.renderSlot(i.$slots,"header",{},()=>[e.createElementVNode("div",_u,[e.createElementVNode("div",Ru,[t.title?(e.openBlock(),e.createElementBlock("h3",{key:0,class:e.normalizeClass(qu)},e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:e.normalizeClass(Hu)},e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)]),i.$slots.actions?(e.openBlock(),e.createElementBlock("div",Uu,[e.renderSlot(i.$slots,"actions")])):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0),i.$slots.filters?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(N)(e.unref(o)({padding:t.padding})))},[e.renderSlot(i.$slots,"filters")],2)):e.createCommentVNode("",!0),i.$slots.default?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(e.unref(N)(e.unref(l)({padding:t.padding})))},[e.renderSlot(i.$slots,"default")],2)):e.createCommentVNode("",!0),i.$slots.legend?(e.openBlock(),e.createElementBlock("div",{key:3,class:e.normalizeClass(e.unref(N)(e.unref(r)({padding:t.padding})))},[e.renderSlot(i.$slots,"legend")],2)):e.createCommentVNode("",!0),i.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:4,class:e.normalizeClass(e.unref(N)(e.unref(s)({padding:t.padding})))},[e.renderSlot(i.$slots,"footer")],2)):e.createCommentVNode("",!0)],2))}},Wu={class:"w-full h-full relative"},Yu=["width","height","viewBox"],Gu={key:0},Ku=["x1","y1","x2","y2","stroke"],Xu=["id"],Qu=["stop-color"],Ju=["stop-color"],Zu=["x","y","width","height","fill","onMouseenter"],em=["to"],tm=["from","to"],am={key:1},nm=["x","y"],om={key:2},lm=["x","y"],rm=["x1","y1","x2","y2"],sm=["x1","y1","x2","y2"],im={class:"bg-slate-900 text-white px-4 py-3 rounded-lg shadow-2xl border border-slate-700 min-w-[160px]"},cm={class:"flex items-center gap-2 mb-1"},dm={class:"font-semibold text-sm"},um={class:"ml-5"},mm={class:"text-2xl font-bold"},va={__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-90 cursor-pointer"},axisLabelClasses:{type:String,default:"fill-slate-600 text-xs font-medium"},maxValue:{type:Number,default:null}},emits:["bar-click","bar-hover"],setup(t,{emit:n}){const a=t,o=n,l=e.ref({visible:!1,x:0,y:0,label:"",value:0,color:""}),r=e.computed(()=>a.maxValue||Math.max(...a.data)),s=e.computed(()=>(a.width-a.padding.left-a.padding.right)/a.data.length*.7),i=e.computed(()=>(a.width-a.padding.left-a.padding.right)/a.data.length*.3),c=e.computed(()=>{const h=[],g=a.height-a.padding.top-a.padding.bottom,v=5;for(let x=0;x<=v;x++){const D=a.padding.top+g/v*x;h.push(D)}return h}),u=h=>a.padding.left+h*(s.value+i.value)+i.value/2,b=h=>{const g=a.height-a.padding.top-a.padding.bottom,v=g/r.value;return a.padding.top+g-h*v},C=h=>{const v=(a.height-a.padding.top-a.padding.bottom)/r.value;return h*v},z=h=>a.colors[h%a.colors.length],B=h=>{const g=a.height-a.padding.top-a.padding.bottom,v=(a.height-a.padding.bottom-h)/g*r.value;return Math.round(v)},V=(h,g,v)=>{const x=a.labels[v]||`Item ${v+1}`;l.value={visible:!0,x:h.clientX,y:h.clientY,label:x,value:g,color:z(v)},o("bar-hover",{value:g,index:v,label:x})},k=()=>{l.value.visible=!1};return(h,g)=>(e.openBlock(),e.createElementBlock("div",Wu,[(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(c.value,v=>(e.openBlock(),e.createElementBlock("line",{key:`grid-${v}`,x1:t.padding.left,y1:v,x2:t.width-t.padding.right,y2:v,stroke:t.gridColor,"stroke-width":"1","stroke-dasharray":"4,4",opacity:"0.3"},null,8,Ku))),128))])):e.createCommentVNode("",!0),e.createElementVNode("defs",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.data,(v,x)=>(e.openBlock(),e.createElementBlock("linearGradient",{id:`barGradient-${x}`,key:`gradient-${x}`,x1:"0%",y1:"0%",x2:"0%",y2:"100%"},[e.createElementVNode("stop",{offset:"0%","stop-color":z(x),"stop-opacity":"1"},null,8,Qu),e.createElementVNode("stop",{offset:"100%","stop-color":z(x),"stop-opacity":"0.7"},null,8,Ju)],8,Xu))),128))]),e.createElementVNode("g",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.data,(v,x)=>(e.openBlock(),e.createElementBlock("rect",{key:`bar-${x}`,x:u(x),y:b(v),width:s.value,height:C(v),fill:`url(#barGradient-${x})`,class:e.normalizeClass(t.barClasses),rx:"4",onMouseenter:D=>V(D,v,x),onMouseleave:k},[e.createElementVNode("animate",{attributeName:"height",from:0,to:C(v),dur:"0.8s",fill:"freeze"},null,8,em),e.createElementVNode("animate",{attributeName:"y",from:t.padding.top+(t.height-t.padding.top-t.padding.bottom),to:b(v),dur:"0.8s",fill:"freeze"},null,8,tm)],42,Zu))),128))]),t.showXAxis?(e.openBlock(),e.createElementBlock("g",am,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.labels,(v,x)=>(e.openBlock(),e.createElementBlock("text",{key:`xlabel-${x}`,x:u(x)+s.value/2,y:t.height-t.padding.bottom+20,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"middle"},e.toDisplayString(v),11,nm))),128))])):e.createCommentVNode("",!0),t.showYAxis?(e.openBlock(),e.createElementBlock("g",om,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,v=>(e.openBlock(),e.createElementBlock("text",{key:`ylabel-${v}`,x:t.padding.left-10,y:v+4,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"end"},e.toDisplayString(B(v)),11,lm))),128))])):e.createCommentVNode("",!0),e.createElementVNode("line",{x1:t.padding.left,y1:t.padding.top,x2:t.padding.left,y2:t.height-t.padding.bottom,stroke:"#cbd5e1","stroke-width":"2"},null,8,rm),e.createElementVNode("line",{x1:t.padding.left,y1:t.height-t.padding.bottom,x2:t.width-t.padding.right,y2:t.height-t.padding.bottom,stroke:"#cbd5e1","stroke-width":"2"},null,8,sm)],8,Yu)),l.value.visible?(e.openBlock(),e.createElementBlock("div",{key:0,style:e.normalizeStyle({position:"fixed",left:`${l.value.x}px`,top:`${l.value.y}px`,transform:"translate(-50%, -120%)",pointerEvents:"none",zIndex:9999}),class:"animate-in fade-in duration-200"},[e.createElementVNode("div",im,[e.createElementVNode("div",cm,[e.createElementVNode("div",{style:e.normalizeStyle({backgroundColor:l.value.color}),class:"w-3 h-3 rounded shadow-sm"},null,4),e.createElementVNode("p",dm,e.toDisplayString(l.value.label),1)]),e.createElementVNode("div",um,[e.createElementVNode("span",mm,e.toDisplayString(l.value.value),1)]),g[0]||(g[0]=e.createElementVNode("div",{class:"absolute bottom-0 left-1/2 transform -translate-x-1/2 translate-y-1/2 rotate-45 w-2 h-2 bg-slate-900 border-r border-b border-slate-700"},null,-1))])],4)):e.createCommentVNode("",!0)]))}},fm={class:"w-full h-full"},pm=["width","height","viewBox"],gm={key:0},vm=["x1","y1","x2","y2","stroke"],hm=["d","stroke","stroke-width"],ym={key:1},bm=["cx","cy","r","fill","stroke","onMouseenter"],xm=["d","fill","fill-opacity"],km={key:3},wm=["x","y"],Cm={key:4},Bm=["x","y"],Vm={key:5},Em=["x","y","width","height","fill","stroke"],Nm=["x","y"],ha={__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,l=e.ref({visible:!1,x:0,y:0,width:0,height:0,content:""}),r=e.computed(()=>a.maxValue||Math.max(...a.data)),s=e.computed(()=>a.data.map((k,h)=>({x:b(h),y:C(k),value:k}))),i=e.computed(()=>s.value.length===0?"":s.value.map((h,g)=>`${g===0?"M":"L"} ${h.x} ${h.y}`).join(" ")),c=e.computed(()=>{if(s.value.length===0)return"";const k=s.value.map((v,x)=>`${x===0?"M":"L"} ${v.x} ${v.y}`).join(" "),h=a.height-a.padding.bottom,g=`L ${s.value[s.value.length-1].x} ${h} L ${s.value[0].x} ${h} Z`;return k+" "+g}),u=e.computed(()=>{const k=[],h=a.height-a.padding.top-a.padding.bottom,g=5;for(let v=0;v<=g;v++){const x=a.padding.top+h/g*v;k.push(x)}return k}),b=k=>{const g=(a.width-a.padding.left-a.padding.right)/(a.data.length-1||1);return a.padding.left+k*g},C=k=>{const h=a.height-a.padding.top-a.padding.bottom,g=h/r.value;return a.padding.top+h-k*g},z=k=>{const h=a.height-a.padding.top-a.padding.bottom,g=(a.height-a.padding.bottom-k)/h*r.value;return Math.round(g)},B=(k,h,g)=>{const v=k.target.getBoundingClientRect(),x=a.labels[g]||`Point ${g+1}`;l.value={visible:!0,x:v.left+v.width/2,y:v.top,width:80,height:24,content:`${x}: ${h}`},o("point-hover",{value:h,index:g,label:x})},V=()=>{l.value.visible=!1};return(k,h)=>(e.openBlock(),e.createElementBlock("div",fm,[(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",gm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,g=>(e.openBlock(),e.createElementBlock("line",{key:`grid-${g}`,x1:t.padding.left,y1:g,x2:t.width-t.padding.right,y2:g,stroke:t.gridColor,"stroke-width":"1","stroke-dasharray":"2,2"},null,8,vm))),128))])):e.createCommentVNode("",!0),e.createElementVNode("path",{d:i.value,stroke:t.lineColor,"stroke-width":t.strokeWidth,fill:"none",class:e.normalizeClass(t.lineClasses)},null,10,hm),t.showPoints?(e.openBlock(),e.createElementBlock("g",ym,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(g,v)=>(e.openBlock(),e.createElementBlock("circle",{key:`point-${v}`,cx:g.x,cy:g.y,r:t.pointRadius,fill:t.pointColor,stroke:t.lineColor,"stroke-width":2,class:e.normalizeClass(t.pointClasses),onMouseenter:x=>B(x,g.value,v),onMouseleave:V},null,42,bm))),128))])):e.createCommentVNode("",!0),t.fillArea?(e.openBlock(),e.createElementBlock("path",{key:2,d:c.value,fill:t.fillColor,"fill-opacity":t.fillOpacity},null,8,xm)):e.createCommentVNode("",!0),t.showXAxis?(e.openBlock(),e.createElementBlock("g",km,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.labels,(g,v)=>(e.openBlock(),e.createElementBlock("text",{key:`xlabel-${v}`,x:b(v),y:t.height-t.padding.bottom+20,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"middle"},e.toDisplayString(g),11,wm))),128))])):e.createCommentVNode("",!0),t.showYAxis?(e.openBlock(),e.createElementBlock("g",Cm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,g=>(e.openBlock(),e.createElementBlock("text",{key:`ylabel-${g}`,x:t.padding.left-10,y:g+4,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"end"},e.toDisplayString(z(g)),11,Bm))),128))])):e.createCommentVNode("",!0),l.value.visible?(e.openBlock(),e.createElementBlock("g",Vm,[e.createElementVNode("rect",{x:l.value.x-l.value.width/2,y:l.value.y-l.value.height-10,width:l.value.width,height:l.value.height,fill:t.tooltipBackground,stroke:t.tooltipBorder,"stroke-width":"1",rx:"4"},null,8,Em),e.createElementVNode("text",{x:l.value.x,y:l.value.y-l.value.height/2-2,class:e.normalizeClass(t.tooltipTextClasses),"text-anchor":"middle"},e.toDisplayString(l.value.content),11,Nm)])):e.createCommentVNode("",!0)],8,pm))]))}},Sm={class:"bg-white border-b border-gray-200"},$m={key:0,class:"flex items-center gap-3 min-w-64"},zm={class:"relative flex-1"},Dm={class:"relative flex-1"},Fm={key:1,class:"min-w-40"},Tm={class:"relative"},Am={key:2,class:"min-w-40"},Mm={class:"relative"},Lm=["value"],Pm={key:3,class:"flex items-center gap-2"},jm={class:"flex items-center gap-3 ml-auto"},Om={class:"flex items-center gap-3 flex-wrap"},Im=["onClick"],Uo={__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,l=e.ref(""),r=e.ref(""),s=e.ref("bar"),i=e.ref(""),c=O.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"}}),u=e.computed(()=>l.value||r.value||i.value),b=e.computed(()=>{const U=[];if(l.value||r.value){let E="";l.value&&r.value?E=`${l.value} to ${r.value}`:l.value?E=`From ${l.value}`:r.value&&(E=`Until ${r.value}`),E&&U.push({key:"date",label:"Date Range",value:E,icon:"calendar"})}if(i.value){const E=a.dataSources.find($=>$.value===i.value);U.push({key:"dataSource",label:"Data Source",value:E?.label||i.value,icon:"database"})}return U}),C=e.computed(()=>N(c({variant:a.variant,padding:a.padding}))),z=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"),B=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"),V=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"),k=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"),h=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(()=>"px-6 py-3 bg-blue-50 border-t border-blue-100"),v=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"),D=e.computed(()=>"text-blue-600 hover:text-blue-800 ml-1 hover:bg-blue-100 rounded-full p-0.5 transition-all"),S=U=>{s.value=U.target.value,o("update:chartType",U.target.value)},M=U=>{i.value=U.target.value,o("update:dataSource",U.target.value)},_=()=>{l.value="",r.value="",i.value="",o("clear-filters")},te=U=>{switch(U){case"date":l.value="",r.value="";break;case"dataSource":i.value="";break}};return e.watch(()=>l.value,U=>{o("update:dateFrom",U)}),e.watch(()=>r.value,U=>{o("update:dateTo",U)}),(U,E)=>(e.openBlock(),e.createElementBlock("div",Sm,[e.createElementVNode("div",{class:e.normalizeClass(C.value)},[t.showDateFilter?(e.openBlock(),e.createElementBlock("div",$m,[e.createElementVNode("div",zm,[e.createVNode(K,{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":E[0]||(E[0]=$=>l.value=$),type:"date",class:e.normalizeClass(z.value),placeholder:"From date"},null,2),[[e.vModelText,l.value]])]),E[6]||(E[6]=e.createElementVNode("span",{class:"text-gray-500 text-sm"},"to",-1)),e.createElementVNode("div",Dm,[e.createVNode(K,{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":E[1]||(E[1]=$=>r.value=$),type:"date",class:e.normalizeClass(z.value),placeholder:"To date"},null,2),[[e.vModelText,r.value]])])])):e.createCommentVNode("",!0),t.showChartTypeFilter?(e.openBlock(),e.createElementBlock("div",Fm,[e.createElementVNode("div",Tm,[e.createVNode(we,{modelValue:s.value,"onUpdate:modelValue":E[2]||(E[2]=$=>s.value=$),class:e.normalizeClass(B.value),onChange:S},{default:e.withCtx(()=>[...E[7]||(E[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(K,{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",Am,[e.createElementVNode("div",Mm,[e.createVNode(we,{modelValue:i.value,"onUpdate:modelValue":E[3]||(E[3]=$=>i.value=$),class:e.normalizeClass(B.value),onChange:M},{default:e.withCtx(()=>[E[8]||(E[8]=e.createElementVNode("option",{value:""}," All Sources ",-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.dataSources,$=>(e.openBlock(),e.createElementBlock("option",{key:$.value,value:$.value},e.toDisplayString($.label),9,Lm))),128))]),_:1},8,["modelValue","class"]),e.createVNode(K,{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),U.$slots.filters?(e.openBlock(),e.createElementBlock("div",Pm,[e.renderSlot(U.$slots,"filters")])):e.createCommentVNode("",!0),e.createElementVNode("div",jm,[u.value?(e.openBlock(),e.createBlock(me,{key:0,class:e.normalizeClass(V.value),onClick:_},{default:e.withCtx(()=>[e.createVNode(K,{icon:"rotate-left",class:"w-4 h-4 mr-2"}),E[9]||(E[9]=e.createTextVNode(" Clear Filters ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showExport?(e.openBlock(),e.createBlock(me,{key:1,class:e.normalizeClass(k.value),onClick:E[4]||(E[4]=$=>U.$emit("export"))},{default:e.withCtx(()=>[e.createVNode(K,{icon:"download",class:"w-4 h-4 mr-2"}),E[10]||(E[10]=e.createTextVNode(" Export ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showRefresh?(e.openBlock(),e.createBlock(me,{key:2,class:e.normalizeClass(h.value),onClick:E[5]||(E[5]=$=>U.$emit("refresh"))},{default:e.withCtx(()=>[e.createVNode(K,{icon:"sync",class:"w-4 h-4 mr-2"}),E[11]||(E[11]=e.createTextVNode(" Refresh ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0)])],2),b.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(g.value)},[e.createElementVNode("div",Om,[e.createElementVNode("span",{class:e.normalizeClass(v.value)},"Active filters:",2),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value,$=>(e.openBlock(),e.createElementBlock("div",{key:$.key,class:e.normalizeClass(x.value)},[e.createVNode(K,{icon:$.icon,class:"w-3 h-3"},null,8,["icon"]),e.createElementVNode("span",null,e.toDisplayString($.label)+": "+e.toDisplayString($.value),1),e.createElementVNode("button",{class:e.normalizeClass(D.value),onClick:L=>te($.key)},[e.createVNode(K,{icon:"xmark",class:"w-3 h-3"})],10,Im)],2))),128))])],2)):e.createCommentVNode("",!0)]))}},_m={class:"flex items-start justify-between"},Rm={key:0,class:"flex items-center gap-2"},ya={__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=O.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=O.cva("font-semibold text-slate-900",{variants:{size:{sm:"text-base",md:"text-lg",lg:"text-xl"}},defaultVariants:{size:"md"}}),l=O.cva("text-slate-600 mt-1",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-base"}},defaultVariants:{size:"md"}}),r=e.computed(()=>N(a({variant:n.variant,padding:n.padding}))),s=e.computed(()=>N(o({size:"md"}))),i=e.computed(()=>N(l({size:"md"})));return(c,u)=>t.title||t.description||c.$slots.header?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(r.value)},[e.renderSlot(c.$slots,"header",{},()=>[e.createElementVNode("div",_m,[e.createElementVNode("div",null,[t.title?(e.openBlock(),e.createBlock(pt,{key:0,class:e.normalizeClass(s.value)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.title),1)]),_:1},8,["class"])):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createBlock(pt,{key:1,class:e.normalizeClass(i.value)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.description),1)]),_:1},8,["class"])):e.createCommentVNode("",!0)]),c.$slots.filters?(e.openBlock(),e.createElementBlock("div",Rm,[e.renderSlot(c.$slots,"filters")])):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0)}},Um={class:"flex items-center justify-between"},qm={key:0,class:"text-sm text-slate-600"},Hm={key:1,class:"text-sm text-slate-600"},Wm={key:2,class:"flex items-center gap-4"},Ym={key:3,class:"flex items-center gap-4"},Gm={class:"flex items-center gap-2"},Km={class:"flex items-center gap-1"},Xm=["disabled"],Qm=["disabled"],Jm={class:"flex items-center gap-1"},Zm=["onClick"],ef=["disabled"],tf=["disabled"],af={class:"text-sm text-slate-600 ml-4"},ba={__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=O.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=O.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"}}),l=O.cva("text-slate-700",{variants:{size:{sm:"text-sm",md:"text-base",lg:"text-lg"}},defaultVariants:{size:"md"}}),r=O.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"}}),s=e.computed(()=>(n.currentPage-1)*n.pageSize+1),i=e.computed(()=>Math.min(n.currentPage*n.pageSize,n.total)),c=e.computed(()=>{const B=[],V=n.totalPages,k=n.currentPage,h=n.maxVisiblePages;if(V<=h)for(let g=1;g<=V;g++)B.push(g);else{const g=Math.floor(h/2);let v=Math.max(1,k-g),x=Math.min(V,v+h-1);x-v+1<h&&(v=Math.max(1,x-h+1));for(let D=v;D<=x;D++)B.push(D)}return B}),u=e.computed(()=>N(a({variant:n.variant,padding:n.padding}))),b=e.computed(()=>N(l({size:"md"}))),C=e.computed(()=>N(r({size:"sm"}))),z=(B,V)=>{let k="inactive";return V?k="disabled":B&&(k="active"),N(o({state:k,size:"md"}))};return(B,V)=>t.showPagination||B.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(u.value)},[e.createElementVNode("div",Um,[t.selectable&&t.selectedCount>0?(e.openBlock(),e.createElementBlock("div",qm,e.toDisplayString(t.selectedCount)+" of "+e.toDisplayString(t.total)+" selected ",1)):(e.openBlock(),e.createElementBlock("div",Hm," Showing "+e.toDisplayString(s.value)+" to "+e.toDisplayString(i.value)+" of "+e.toDisplayString(t.total)+" entries ",1)),B.$slots.footer?(e.openBlock(),e.createElementBlock("div",Wm,[e.renderSlot(B.$slots,"footer")])):e.createCommentVNode("",!0),t.showPagination?(e.openBlock(),e.createElementBlock("div",Ym,[e.createElementVNode("div",Gm,[e.createVNode(Ne,{for:"pageSize",class:e.normalizeClass(b.value),inline:!0},{default:e.withCtx(()=>[...V[5]||(V[5]=[e.createTextVNode("Show:",-1)])]),_:1},8,["class"]),e.createVNode(we,{id:"pageSize","model-value":t.pageSize.toString(),class:e.normalizeClass(C.value),"onUpdate:modelValue":V[0]||(V[0]=k=>B.$emit("update:pageSize",parseInt(k)))},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.pageSizeOptions,k=>(e.openBlock(),e.createBlock(fa,{key:k,value:k.toString(),label:k.toString()},null,8,["value","label"]))),128))]),_:1},8,["model-value","class"])]),e.createElementVNode("div",Km,[e.createElementVNode("button",{disabled:t.currentPage===1,class:e.normalizeClass(z(!1,t.currentPage===1)),title:"First page",onClick:V[1]||(V[1]=k=>B.$emit("update:currentPage",1))},[...V[6]||(V[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,Xm),e.createElementVNode("button",{disabled:t.currentPage===1,class:e.normalizeClass(z(!1,t.currentPage===1)),title:"Previous page",onClick:V[2]||(V[2]=k=>B.$emit("update:currentPage",t.currentPage-1))},[...V[7]||(V[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,Qm),e.createElementVNode("div",Jm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,k=>(e.openBlock(),e.createElementBlock("button",{key:k,class:e.normalizeClass(z(k===t.currentPage,!1)),onClick:h=>B.$emit("update:currentPage",k)},e.toDisplayString(k),11,Zm))),128))]),e.createElementVNode("button",{disabled:t.currentPage===t.totalPages,class:e.normalizeClass(z(!1,t.currentPage===t.totalPages)),title:"Next page",onClick:V[3]||(V[3]=k=>B.$emit("update:currentPage",t.currentPage+1))},[...V[8]||(V[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,ef),e.createElementVNode("button",{disabled:t.currentPage===t.totalPages,class:e.normalizeClass(z(!1,t.currentPage===t.totalPages)),title:"Last page",onClick:V[4]||(V[4]=k=>B.$emit("update:currentPage",t.totalPages))},[...V[9]||(V[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,tf)]),e.createElementVNode("div",af," Page "+e.toDisplayString(t.currentPage)+" of "+e.toDisplayString(t.totalPages),1)])):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0)}},Et=(t,n)=>{const a=t.__vccOpts||t;for(const[o,l]of n)a[o]=l;return a},nf={key:0,class:"loader__backdrop"},of={class:"loader__container"},lf={key:0,class:"loader__text loader__text--top"},rf={key:1,class:"loader__spin"},sf={key:2,class:"loader__pulse"},cf={key:3,class:"loader__bounce"},df={key:4,class:"loader__ripple"},uf={key:5,class:"loader__bars"},mf={key:6,class:"loader__dots"},ff={key:7,class:"loader__ring"},pf={key:8,class:"loader__spinner-text"},gf={key:9,class:"loader__text loader__text--bottom"},vf={__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",nf)):e.createCommentVNode("",!0),e.createElementVNode("div",of,[t.text&&t.textPosition==="top"?(e.openBlock(),e.createElementBlock("div",lf,e.toDisplayString(t.text),1)):e.createCommentVNode("",!0),t.type==="spin"?(e.openBlock(),e.createElementBlock("div",rf)):t.type==="pulse"?(e.openBlock(),e.createElementBlock("div",sf)):t.type==="bounce"?(e.openBlock(),e.createElementBlock("div",cf,[(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",df,[(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",uf,[(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",mf,[(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",ff,[...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",pf,[...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",gf,e.toDisplayString(t.text),1)):e.createCommentVNode("",!0)])],6)):e.createCommentVNode("",!0)}},Re=Et(vf,[["__scopeId","data-v-68532350"]]),hf={class:"relative"},yf={class:"flex items-center justify-center"},bf=["onClick"],xf={class:"flex items-center gap-2"},kf={key:1,class:"flex flex-col"},wf=["onClick"],Cf=["onClick"],Bf={key:1},Vf={key:1,class:"flex items-center gap-1 justify-center"},Ef={key:1,class:"text-xs"},Nf={key:2},Sf=["colspan"],$f={class:"flex flex-col items-center justify-center py-12"},zf={class:"text-slate-400 mb-4 flex justify-center"},Df={class:"text-slate-600 text-lg font-medium mb-2"},Ff={class:"text-slate-500 text-sm"},Tf={class:"p-6"},Af={class:"text-xl font-bold text-gray-700 whitespace-pre-wrap break-words"},Mf={__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,l=a,r=e.ref(1),s=e.ref(o.pageSize),i=e.ref(o.sortBy),c=e.ref(o.sortOrder),u=e.ref(!1),b=e.ref(""),C=O.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"}}),z=O.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"}}),B=O.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"}}),V=O.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"}}),k=e.computed(()=>{let P=[...o.data];if(i.value){const Y=o.columns.find(ee=>ee.key===i.value);Y&&P.sort((ee,pe)=>{const re=$(ee,Y),je=$(pe,Y);return re<je?c.value==="asc"?-1:1:re>je?c.value==="asc"?1:-1:0})}return P}),h=e.computed(()=>Math.ceil(k.value.length/s.value)),g=e.computed(()=>{if(!o.showPagination)return k.value;const P=(r.value-1)*s.value,Y=P+s.value;return k.value.slice(P,Y)}),v=e.computed(()=>o.showActionsColumn?o.$slots?.actions?!0:!o.actions||o.actions.length===0?!1:o.actions.some(Y=>Y.permission===void 0?!0:typeof Y.permission=="boolean"?Y.permission===!0:typeof Y.permission=="function"):!1),x=e.computed(()=>{let P=o.columns.length;return o.selectable&&P++,v.value&&P++,P}),D=P=>o.actions.filter(Y=>{if(Y.permission!==void 0){if(typeof Y.permission=="function"){if(!Y.permission(P))return!1}else if(!Y.permission)return!1}return Y.visible&&typeof Y.visible=="function"?Y.visible(P):!0}),S=(P,Y)=>P.permission&&typeof P.permission=="function"?P.permission(Y):!0,M=(P,Y)=>P.disabled&&typeof P.disabled=="function"?P.disabled(Y):!1,_=(P,Y)=>{M(P,Y)||!S(P,Y)||(l("action",{action:P.key,item:Y,actionConfig:P}),P.onClick&&typeof P.onClick=="function"&&P.onClick(Y))},te=P=>({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"})[P]||"ghost",U=e.computed(()=>k.value.length>0&&k.value.every(P=>T(P))),E=e.computed(()=>{const P=k.value.filter(Y=>T(Y)).length;return P>0&&P<k.value.length}),$=(P,Y)=>Y.accessor?Y.accessor(P):Y.key.split(".").reduce((ee,pe)=>ee?.[pe],P),L=(P,Y)=>P[o.rowKey]||Y,T=P=>o.selectedItems.some(Y=>L(Y)===L(P)),J=P=>{const Y=[...o.selectedItems],ee=Y.findIndex(pe=>L(pe)===L(P));ee>-1?Y.splice(ee,1):Y.push(P),l("selection-change",Y)},q=()=>{if(o.loading||o.dataLoading)return;const P=U.value?[]:[...k.value];l("selection-change",P)},p=async P=>{!P.sortable||o.loading||o.sortLoading||(i.value===P.key?c.value=c.value==="asc"?"desc":"asc":(i.value=P.key,c.value="asc"),l("sort-change",{column:P.key,direction:c.value}))},y=P=>{o.loading||l("row-click",P)},d=async P=>{o.paginationLoading||o.loading||(r.value=P,l("page-change",P))},I=async P=>{o.paginationLoading||o.loading||(s.value=P,r.value=1,l("page-size-change",P))},j=e.computed(()=>N(C({variant:o.variant}))),Q=e.computed(()=>N(z({variant:o.variant}))),H=e.computed(()=>N(B({variant:o.variant}))),m=e.computed(()=>N(V({variant:o.variant}))),w=P=>N({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":P.sortable&&!o.loading&&!o.sortLoading,"cursor-not-allowed opacity-50":o.loading||o.sortLoading&&i.value===P.key}),f=()=>N({compact:"px-4 py-2",normal:"px-6 py-4",comfortable:"px-8 py-6"}[o.density],"whitespace-nowrap text-sm text-slate-900"),X=(P,Y)=>{const ee=[];return o.striped&&Y%2===1&&ee.push("bg-slate-50/50"),o.hoverable&&!o.clickableRows&&ee.push("hover:bg-slate-50"),o.clickableRows&&ee.push("cursor-pointer hover:bg-slate-100"),o.selectable&&T(P)&&ee.push("bg-blue-50 border-blue-200"),o.variant==="bordered"?ee.push("border-b border-slate-200"):o.variant==="minimal"&&ee.push("border-b border-slate-100"),N("transition-colors",...ee)},oe=(P,Y)=>{const ee=$(P,Y);return typeof Y=="object"&&Y.formatter?Y.formatter(ee,P):ee==null?"":ee instanceof Date?ee.toLocaleDateString():Array.isArray(ee)?ee.join(", "):ee},ne=(P,Y=10)=>{if(!P)return P;const ee=P.toString().split(" ");return ee.length<=Y?P:ee.slice(0,Y).join(" ")+"..."},W=P=>{b.value||(b.value=P,u.value=!0)},ie=()=>{u.value=!1,b.value=""},ye=e.computed(()=>N({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")),ve=e.computed(()=>N({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")),Pe=e.computed(()=>N({compact:"px-4 py-4",normal:"px-6 py-6",comfortable:"px-8 py-8"}[o.density],"text-center")),he=(P,Y)=>N({"text-blue-600":i.value===P.key&&c.value===Y,"text-slate-300":i.value!==P.key||c.value!==Y});return e.watch(()=>o.selectedItems,()=>{},{deep:!0}),e.watch(()=>o.pageSize,P=>{s.value=P}),n({refresh:()=>{l("refresh")},goToPage:P=>{d(P)},selectAll:()=>{q()},clearSelection:()=>{l("selection-change",[])},getCurrentPage:()=>r.value,getTotalPages:()=>h.value,getSelectedItems:()=>o.selectedItems}),(P,Y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(j.value)},[t.title||t.description||P.$slots.header?(e.openBlock(),e.createBlock(ya,{key:0,title:t.title,description:t.description,variant:t.headerVariant,padding:t.headerPadding},{header:e.withCtx(()=>[e.renderSlot(P.$slots,"header",{},void 0,!0)]),filters:e.withCtx(()=>[e.renderSlot(P.$slots,"filters",{},void 0,!0)]),_:3},8,["title","description","variant","padding"])):e.createCommentVNode("",!0),e.createElementVNode("div",hf,[t.loading?(e.openBlock(),e.createBlock(Re,{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(Q.value)},[e.createElementVNode("thead",{class:e.normalizeClass(H.value)},[e.createElementVNode("tr",null,[t.selectable?(e.openBlock(),e.createElementBlock("th",{key:0,class:e.normalizeClass(ye.value)},[e.createElementVNode("div",yf,[t.bulkLoading?(e.openBlock(),e.createBlock(Re,{key:0,loading:!0,type:"spin",size:"small",color:t.loadingColor},null,8,["color"])):(e.openBlock(),e.createBlock(Je,{key:1,"model-value":U.value,indeterminate:E.value,disabled:t.loading||t.dataLoading,"onUpdate:modelValue":q},null,8,["model-value","indeterminate","disabled"]))])],2)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,ee=>(e.openBlock(),e.createElementBlock("th",{key:ee.key,class:e.normalizeClass(w(ee)),onClick:pe=>p(ee)},[e.createElementVNode("div",xf,[e.createElementVNode("span",null,e.toDisplayString(ee.label),1),t.sortLoading&&i.value===ee.key?(e.openBlock(),e.createBlock(Re,{key:0,loading:!0,type:"spin",size:"small",color:t.loadingColor},null,8,["color"])):ee.sortable?(e.openBlock(),e.createElementBlock("div",kf,[(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass([he(ee,"asc"),"w-3 h-3 transition-colors"]),fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...Y[1]||(Y[1]=[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([he(ee,"desc"),"w-3 h-3 transition-colors"]),fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...Y[2]||(Y[2]=[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,bf))),128)),v.value?(e.openBlock(),e.createElementBlock("th",{key:1,class:e.normalizeClass(ve.value)}," Actions ",2)):e.createCommentVNode("",!0)])],2),e.createElementVNode("tbody",{class:e.normalizeClass(m.value)},[t.showSkeleton&&(t.loading||t.dataLoading)?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.skeletonRows,ee=>(e.openBlock(),e.createElementBlock("tr",{key:`skeleton-${ee}`,class:"animate-pulse"},[t.selectable?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(ye.value)},[...Y[3]||(Y[3]=[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,pe=>(e.openBlock(),e.createElementBlock("td",{key:pe.key,class:e.normalizeClass(f())},[...Y[4]||(Y[4]=[e.createElementVNode("div",{class:"h-4 bg-slate-200 rounded w-3/4"},null,-1)])],2))),128)),v.value?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass(ve.value)},[...Y[5]||(Y[5]=[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,(ee,pe)=>(e.openBlock(),e.createElementBlock("tr",{key:L(ee,pe),class:e.normalizeClass(X(ee,pe)),onClick:re=>y({item:ee,index:pe})},[t.selectable?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(ye.value)},[e.createVNode(Je,{"model-value":T(ee),"onUpdate:modelValue":re=>J(ee)},null,8,["model-value","onUpdate:modelValue"])],2)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,re=>(e.openBlock(),e.createElementBlock("td",{key:re.key,class:e.normalizeClass(f())},[e.renderSlot(P.$slots,`cell-${re.key}`,{item:ee,value:$(ee,re),column:re,index:pe},()=>[oe(ee,re).toString().split(" ").length>10?(e.openBlock(),e.createElementBlock("span",{key:0,class:"cursor-pointer text-blue-600 hover:text-blue-800",onClick:e.withModifiers(je=>W(oe(ee,re)),["stop"])},e.toDisplayString(ne(oe(ee,re))),9,Cf)):(e.openBlock(),e.createElementBlock("span",Bf,e.toDisplayString(oe(ee,re)),1))],!0)],2))),128)),v.value?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass(ve.value)},[P.$slots.actions?e.renderSlot(P.$slots,"actions",{key:0,item:ee,index:pe},void 0,!0):t.actions.length>0?(e.openBlock(),e.createElementBlock("div",Vf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(D(ee),re=>(e.openBlock(),e.createBlock(pa,{key:re.key,content:typeof re.tooltip=="function"?re.tooltip(ee):re.tooltip||re.label||re.key,placement:"top"},{default:e.withCtx(()=>[e.createVNode(me,{variant:te(re.variant),size:"xs",disabled:M(re,ee)||!S(re,ee),class:e.normalizeClass(["h-8 w-8",typeof re.class=="function"?re.class(ee):re.class]),onClick:e.withModifiers(je=>_(re,ee),["stop"])},{default:e.withCtx(()=>[re.icon?(e.openBlock(),e.createBlock(K,{key:0,icon:re.icon,class:"w-4 h-4"},null,8,["icon"])):re.label?(e.openBlock(),e.createElementBlock("span",Ef,e.toDisplayString(re.label),1)):e.createCommentVNode("",!0)]),_:2},1032,["variant","disabled","class","onClick"])]),_:2},1032,["content"]))),128))])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0)],10,wf))),128)):(e.openBlock(),e.createElementBlock("tr",Nf,[e.createElementVNode("td",{colspan:x.value,class:e.normalizeClass(Pe.value)},[e.renderSlot(P.$slots,"empty",{},()=>[e.createElementVNode("div",$f,[e.createElementVNode("div",zf,[e.createVNode(K,{icon:"search",class:"w-16 h-16"})]),e.createElementVNode("p",Df,e.toDisplayString(t.emptyText),1),e.createElementVNode("p",Ff,e.toDisplayString(t.emptySubtitle),1)])],!0)],10,Sf)]))],2)],2)],2)]),t.showPagination||P.$slots.footer?(e.openBlock(),e.createBlock(ba,{key:1,"current-page":r.value,"total-pages":h.value,total:k.value.length,"page-size":s.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":d,"onUpdate:pageSize":I},{footer:e.withCtx(()=>[e.renderSlot(P.$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),e.createVNode(Bt,{modelValue:u.value,"onUpdate:modelValue":Y[0]||(Y[0]=ee=>u.value=ee),size:"lg",onClose:ie},{default:e.withCtx(()=>[e.createElementVNode("div",Tf,[Y[6]||(Y[6]=e.createElementVNode("h3",{class:"text-md font-semibold mb-4"}," Full Text ",-1)),e.createElementVNode("div",Af,e.toDisplayString(b.value),1)])]),_:1},8,["modelValue"])],2))}},qo=Et(Mf,[["__scopeId","data-v-c2fc0c79"]]),Ho={__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,l=O.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"}}),r=O.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"}}),s=k=>typeof k=="string"?k:k?.key||k?.field||"unknown",i=(k,h)=>{const g=s(h);return typeof h=="object"&&h.accessor?h.accessor(k):g&&g.includes(".")?g.split(".").reduce((v,x)=>v?.[x],k):k?.[g]},c=(k,h)=>{const g=i(k,h);return typeof h=="object"&&h.formatter?h.formatter(g,k):g==null?"":g instanceof Date?g.toLocaleDateString():Array.isArray(g)?g.join(", "):g},u=()=>{a.clickableRows&&o("row-click",{item:a.item,index:a.index})},b=k=>typeof k=="object"&&k.align?k.align:"left",C=e.computed(()=>N(l({striped:a.striped,hoverable:a.hoverable&&!a.clickableRows,clickable:a.clickableRows,selected:a.isSelected,variant:a.variant}))),z=k=>{const h=b(k);return N(r({density:a.density,align:h}),k.cellClasses)},B=e.computed(()=>N(r({density:a.density}),"w-12")),V=e.computed(()=>N(r({density:a.density,align:"right"}),"font-medium"));return(k,h)=>(e.openBlock(),e.createElementBlock("tr",{class:e.normalizeClass(C.value),onClick:u},[t.selectable?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(B.value)},[e.createVNode(Je,{"model-value":t.isSelected,"onUpdate:modelValue":h[0]||(h[0]=g=>k.$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,g=>(e.openBlock(),e.createElementBlock("td",{key:s(g),class:e.normalizeClass(z(g))},[e.renderSlot(k.$slots,`cell-${s(g)}`,{item:t.item,value:i(t.item,g),column:g,index:t.index},()=>[e.createTextVNode(e.toDisplayString(c(t.item,g)),1)])],2))),128)),k.$slots.actions?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass(V.value)},[e.renderSlot(k.$slots,"actions",{item:t.item,index:t.index})],2)):e.createCommentVNode("",!0)],2))}},Wo={__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 s=n.value??o();return n.column.formatter?n.column.formatter(s,n.item):s}),o=()=>n.column.accessor?n.column.accessor(n.item):n.column.key.split(".").reduce((s,i)=>s?.[i],n.item),l=O.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"}}),r=e.computed(()=>{const s=n.align||n.column.align||"left",i=`text-${n.textColor}`,c=n.width?`w-${n.width}`:"";return N(l({align:s,padding:n.padding,textSize:n.textSize}),i,c,n.column.cellClasses)});return(s,i)=>(e.openBlock(),e.createElementBlock("td",{class:e.normalizeClass(r.value)},[e.renderSlot(s.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(a.value),1)])],2))}},Lf={class:"bg-white border-b border-gray-200"},Pf={key:0,class:"flex-1 min-w-80 max-w-md"},jf={class:"relative group"},Of=["model-value","placeholder"],If={class:"relative"},_f={value:""},Rf=["value"],Uf={key:1,class:"min-w-36"},qf={class:"relative"},Hf=["value"],Wf={key:3,class:"flex items-center gap-2"},Yf={class:"flex items-center gap-3 ml-auto"},Gf={key:0},Kf={key:3},Xf={class:"grid grid-cols-1 lg:grid-cols-3 gap-6"},Qf={class:"flex items-center justify-between"},Jf={class:"flex items-center gap-3"},Zf={class:"relative flex-1"},ep=["model-value","placeholder","onInput"],tp={class:"relative flex-1"},ap=["model-value","placeholder","onInput"],np=["onClick"],op={class:"flex items-center justify-between"},lp={class:"flex items-center gap-3"},rp={class:"relative flex-1"},sp=["model-value","placeholder","step","onInput"],ip={class:"relative flex-1"},cp=["model-value","placeholder","step","onInput"],dp=["onClick"],up={class:"flex items-center justify-between"},mp={class:"relative"},fp={value:""},pp=["value"],gp={key:0,class:"flex flex-wrap gap-2 mt-2"},vp=["onClick"],hp={class:"flex items-center gap-3 flex-wrap"},yp=["onClick"],bp={key:2,class:"px-6 py-3 bg-gray-50 border-t border-gray-200"},xp={class:"flex items-center justify-between"},kp={class:"flex items-center gap-4"},wp={class:"text-sm text-gray-600"},Cp={class:"font-medium"},Bp={class:"bg-white rounded-xl shadow-2xl max-w-2xl w-full p-6"},Vp={class:"flex items-center justify-between mb-4"},Ep={class:"flex justify-end gap-3 mt-6"},Yo={__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},showFileUpload:{type:Boolean,default:!1},fileUploadMultiple:{type:Boolean,default:!1},fileUploadAccept:{type:String,default:""},fileUploadMaxSize:{type:Number,default:null},fileUploadVariant:{type:String,default:"default",validator:t=>["default","dashed"].includes(t)},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","files-selected","file-removed"],setup(t,{emit:n}){const a=t,o=n,l=e.ref(!1),r=e.ref(!1),s=e.computed(()=>Object.keys(a.addButton).length>0),i=e.computed(()=>{if(!s.value)return a.showAdd;if(a.addButton.permission!==void 0){if(typeof a.addButton.permission=="function"){if(!a.addButton.permission())return!1}else if(!a.addButton.permission)return!1}return a.addButton.visible&&typeof a.addButton.visible=="function"?a.addButton.visible():!0}),c=e.computed(()=>s.value&&a.addButton.permission!==void 0?typeof a.addButton.permission=="function"?a.addButton.permission():a.addButton.permission:!0),u=e.computed(()=>s.value&&a.addButton.disabled&&typeof a.addButton.disabled=="function"?a.addButton.disabled():!1),b=()=>{r.value=!0},C=()=>{r.value=!1},z=G=>{o("files-selected",G)},B=G=>{o("file-removed",G)},V=()=>{u.value||!c.value||(o("add"),o("add-button-click",a.addButton),a.addButton.onClick&&typeof a.addButton.onClick=="function"&&a.addButton.onClick())},k=O.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"}}),h=O.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"}}),g=O.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"}}),v=(G,F)=>{const A=a.selectFilters.map(Z=>Z.key===G?{...Z,value:F}:Z);o("update:selectFilters",A)},x=G=>!!(G.from||G.to),D=G=>{const F=a.dateFilters.map(A=>A.key===G?{...A,from:"",to:""}:A);o("update:dateFilters",F)},S=G=>`text-xs px-2 py-1 rounded ${x(G)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,M=(G,F,A)=>{const Z=a.dateFilters.map(se=>se.key===G?{...se,[F]:A}:se);o("update:dateFilters",Z)},_=G=>!!(G.min||G.max),te=G=>{const F=a.numberFilters.map(A=>A.key===G?{...A,min:"",max:""}:A);o("update:numberFilters",F)},U=G=>`text-xs px-2 py-1 rounded ${_(G)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,E=(G,F,A)=>{const Z=a.numberFilters.map(se=>se.key===G?{...se,[F]:A}:se);o("update:numberFilters",Z)},$=G=>G.selected&&G.selected.length>0,L=G=>`text-xs px-2 py-1 rounded ${$(G)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,T=(G,F)=>{if(!F)return;const A=a.multiSelectFilters.map(Z=>{if(Z.key===G){const se=Z.selected||[],He=se.includes(F);return{...Z,selected:He?se.filter(Nt=>Nt!==F):[...se,F]}}return Z});o("update:multiSelectFilters",A)},J=(G,F)=>{const A=a.multiSelectFilters.map(Z=>Z.key===G?{...Z,selected:Z.selected.filter(se=>se!==F)}:Z);o("update:multiSelectFilters",A)},q=(G,F)=>{const A=G.options.find(Z=>Z.value===F);return A?A.label:F},p=()=>{l.value=!l.value},y=e.computed(()=>a.numberFilters.length>0||a.multiSelectFilters.length>0),d=e.computed(()=>{const G=a.searchQuery,F=a.selectedStatus,A=a.dateFrom||a.dateTo,Z=a.selectFilters.some(Be=>Be.value),se=a.dateFilters.some(Be=>Be.from||Be.to),He=a.numberFilters.some(Be=>Be.min||Be.max),Nt=a.multiSelectFilters.some(Be=>Be.selected&&Be.selected.length>0);return G||F||A||Z||se||He||Nt}),I=e.computed(()=>{let G=0;return a.searchQuery&&G++,a.selectedStatus&&G++,(a.dateFrom||a.dateTo)&&G++,G+=a.selectFilters.filter(F=>F.value).length,G+=a.dateFilters.filter(F=>F.from||F.to).length,G+=a.numberFilters.filter(F=>F.min||F.max).length,G+=a.multiSelectFilters.filter(F=>F.selected&&F.selected.length>0).length,G}),j=e.computed(()=>{const G=[];if(a.searchQuery&&a.searchQuery.trim()&&G.push({key:"search",label:"Search",value:`"${a.searchQuery}"`,icon:"magnifying-glass"}),a.selectedStatus){const F=a.statusOptions.find(A=>A.value===a.selectedStatus);G.push({key:"status",label:"Status",value:F?.label||a.selectedStatus,icon:"filter"})}if(a.selectFilters.forEach(F=>{if(F.value){const A=F.options.find(Z=>Z.value===F.value);G.push({key:`select-${F.key}`,label:F.label,value:A?.label||F.value,icon:"filter"})}}),a.dateFrom||a.dateTo){let F="";a.dateFrom&&a.dateTo?F=`${a.dateFrom} to ${a.dateTo}`:a.dateFrom?F=`From ${a.dateFrom}`:a.dateTo&&(F=`Until ${a.dateTo}`),F&&G.push({key:"date",label:"Date Range",value:F,icon:"calendar"})}return a.dateFilters.forEach(F=>{if(F.from||F.to){let A="";F.from&&F.to?A=`${F.from} to ${F.to}`:F.from?A=`From ${F.from}`:F.to&&(A=`Until ${F.to}`),A&&G.push({key:`date-${F.key}`,label:F.label,value:A,icon:"calendar"})}}),a.numberFilters.forEach(F=>{if(F.min||F.max){let A="";F.min&&F.max?A=`${F.min} to ${F.max}`:F.min?A=`Min ${F.min}`:F.max&&(A=`Max ${F.max}`),A&&G.push({key:`number-${F.key}`,label:F.label,value:A,icon:"hashtag"})}}),a.multiSelectFilters.forEach(F=>{if(F.selected&&F.selected.length>0){const A=F.selected.map(Z=>{const se=F.options.find(He=>He.value===Z);return se?se.label:Z});G.push({key:`multi-${F.key}`,label:F.label,value:A.join(", "),icon:"list"})}}),G}),Q=e.computed(()=>N(k({variant:a.variant,padding:a.padding}))),H=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"),m=e.computed(()=>N(h({size:"md"}),"w-full pl-10 pr-10 hover:border-gray-300")),w=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"),f=e.computed(()=>N(h({size:"md"}),"w-full pr-8 appearance-none hover:border-gray-300")),X=e.computed(()=>{const G=l.value||d.value;return N(g({variant:G?"primary":"default",size:"lg"}),"gap-2")}),oe=e.computed(()=>"bg-white text-blue-600 text-xs px-1.5 py-0.5 rounded-full min-w-[20px] text-center font-semibold"),ne=e.computed(()=>"px-6 py-4 border-t border-gray-100 bg-gray-50"),W=e.computed(()=>N(h({size:"md"}),"pl-10 pr-3")),ie=e.computed(()=>"text-sm font-semibold text-gray-700"),ye=e.computed(()=>"text-gray-500 text-sm font-medium"),ve=e.computed(()=>"text-gray-400 hover:text-gray-600 p-1.5 hover:bg-gray-200 rounded-full transition-all"),Pe=e.computed(()=>N(g({variant:"ghost",size:"md"}))),he=e.computed(()=>N(g({variant:"default",size:"lg"}))),P=e.computed(()=>"px-6 py-3 bg-blue-50 border-t border-blue-100"),Y=e.computed(()=>"text-sm font-semibold text-blue-800"),ee=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"),pe=e.computed(()=>"text-blue-600 hover:text-blue-800 ml-1 hover:bg-blue-100 rounded-full p-0.5 transition-all"),re=()=>{o("update:searchQuery",""),o("update:selectedStatus",""),o("update:dateFrom",""),o("update:dateTo","");const G=a.selectFilters.map(se=>({...se,value:""}));o("update:selectFilters",G);const F=a.dateFilters.map(se=>({...se,from:"",to:""}));o("update:dateFilters",F);const A=a.numberFilters.map(se=>({...se,min:"",max:""}));o("update:numberFilters",A);const Z=a.multiSelectFilters.map(se=>({...se,selected:[]}));o("update:multiSelectFilters",Z),o("clear-filters")},je=G=>{switch(G){case"search":o("update:searchQuery","");break;case"status":o("update:selectedStatus","");break;case"date":o("update:dateFrom",""),o("update:dateTo","");break;default:if(G.startsWith("select-")){const F=G.replace("select-",""),A=a.selectFilters.map(Z=>Z.key===F?{...Z,value:""}:Z);o("update:selectFilters",A)}else if(G.startsWith("date-")){const F=G.replace("date-",""),A=a.dateFilters.map(Z=>Z.key===F?{...Z,from:"",to:""}:Z);o("update:dateFilters",A)}else if(G.startsWith("number-")){const F=G.replace("number-",""),A=a.numberFilters.map(Z=>Z.key===F?{...Z,min:"",max:""}:Z);o("update:numberFilters",A)}else if(G.startsWith("multi-")){const F=G.replace("multi-",""),A=a.multiSelectFilters.map(Z=>Z.key===F?{...Z,selected:[]}:Z);o("update:multiSelectFilters",A)}break}};return(G,F)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Lf,[e.createElementVNode("div",{class:e.normalizeClass(Q.value)},[t.showSearch?(e.openBlock(),e.createElementBlock("div",Pf,[e.createElementVNode("div",jf,[e.createVNode(K,{icon:"magnifying-glass",class:e.normalizeClass(H.value)},null,8,["class"]),e.createElementVNode("input",{"model-value":t.searchQuery,placeholder:t.searchPlaceholder,class:e.normalizeClass(m.value),onInput:F[0]||(F[0]=A=>G.$emit("update:searchQuery",A.target.value))},null,42,Of),t.searchQuery?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(w.value),onClick:F[1]||(F[1]=A=>G.$emit("update:searchQuery",""))},[e.createVNode(K,{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,A=>(e.openBlock(),e.createElementBlock("div",{key:A.key,class:"min-w-36"},[e.createElementVNode("div",If,[e.createVNode(we,{"model-value":A.value,class:e.normalizeClass(f.value),onChange:Z=>v(A.key,Z.target.value)},{default:e.withCtx(()=>[e.createElementVNode("option",_f,e.toDisplayString(A.placeholder||`All ${A.label}`),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.options,Z=>(e.openBlock(),e.createElementBlock("option",{key:Z.value,value:Z.value},e.toDisplayString(Z.label),9,Rf))),128))]),_:2},1032,["model-value","class","onChange"]),e.createVNode(K,{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",Uf,[e.createElementVNode("div",qf,[e.createVNode(we,{"model-value":t.selectedStatus,class:e.normalizeClass(f.value),onChange:F[2]||(F[2]=A=>G.$emit("update:selectedStatus",A.target.value))},{default:e.withCtx(()=>[F[5]||(F[5]=e.createElementVNode("option",{value:""}," All Status ",-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.statusOptions,A=>(e.openBlock(),e.createElementBlock("option",{key:A.value,value:A.value},e.toDisplayString(A.label),9,Hf))),128))]),_:1},8,["model-value","class"]),e.createVNode(K,{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||y.value)?(e.openBlock(),e.createElementBlock("button",{key:2,class:e.normalizeClass(X.value),onClick:p},[e.createVNode(K,{icon:"filter",class:"w-4 h-4"}),F[6]||(F[6]=e.createTextVNode(" Filters ",-1)),I.value>0?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(oe.value)},e.toDisplayString(I.value),3)):e.createCommentVNode("",!0),e.createVNode(K,{icon:l.value?"chevron-up":"chevron-down",class:"w-4 h-4 ml-1"},null,8,["icon"])],2)):e.createCommentVNode("",!0),G.$slots.filters?(e.openBlock(),e.createElementBlock("div",Wf,[e.renderSlot(G.$slots,"filters")])):e.createCommentVNode("",!0),e.createElementVNode("div",Yf,[t.showFileUpload?(e.openBlock(),e.createElementBlock("div",Gf,[e.createVNode(me,{variant:"default",size:"lg",onClick:b},{default:e.withCtx(()=>[e.createVNode(K,{icon:"upload",class:"w-4 h-4 mr-2"}),F[7]||(F[7]=e.createTextVNode(" Upload Files ",-1))]),_:1})])):e.createCommentVNode("",!0),d.value?(e.openBlock(),e.createBlock(me,{key:1,class:e.normalizeClass(Pe.value),onClick:re},{default:e.withCtx(()=>[e.createVNode(K,{icon:"rotate-left",class:"w-4 h-4 mr-2"}),F[8]||(F[8]=e.createTextVNode(" Clear All ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showExport?(e.openBlock(),e.createBlock(me,{key:2,class:e.normalizeClass(he.value),onClick:F[3]||(F[3]=A=>G.$emit("export"))},{default:e.withCtx(()=>[e.createVNode(K,{icon:"download",class:"w-4 h-4 mr-2"}),F[9]||(F[9]=e.createTextVNode(" Export ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showAdd&&i.value?(e.openBlock(),e.createElementBlock("div",Kf,[s.value?(e.openBlock(),e.createBlock(me,{key:0,variant:t.addButton.variant||"success",size:t.addButton.size||"lg",disabled:u.value||!c.value,title:t.addButton.tooltip,onClick:V},{default:e.withCtx(()=>[t.addButton.icon?(e.openBlock(),e.createBlock(K,{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(G.$slots,"add",{key:1},()=>[e.createVNode(me,{variant:"success",size:"lg",onClick:F[4]||(F[4]=A=>G.$emit("add"))},{default:e.withCtx(()=>[e.createVNode(K,{icon:"plus",class:"w-4 h-4 mr-2"}),F[10]||(F[10]=e.createTextVNode(" Add ",-1))]),_:1})])])):e.createCommentVNode("",!0)])],2),t.showFilters&&l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(ne.value)},[e.createElementVNode("div",Xf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.dateFilters,A=>(e.openBlock(),e.createElementBlock("div",{key:A.key,class:"space-y-3"},[e.createElementVNode("div",Qf,[e.createElementVNode("label",{class:e.normalizeClass(ie.value)},e.toDisplayString(A.label),3),e.createElementVNode("span",{class:e.normalizeClass(S(A))},e.toDisplayString(x(A)?"Active":"Inactive"),3)]),e.createElementVNode("div",Jf,[e.createElementVNode("div",Zf,[e.createVNode(K,{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":A.from,class:e.normalizeClass(W.value),placeholder:`From ${A.label}`,onInput:Z=>M(A.key,"from",Z.target.value)},null,42,ep)]),e.createElementVNode("span",{class:e.normalizeClass(ye.value)},"to",2),e.createElementVNode("div",tp,[e.createVNode(K,{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":A.to,class:e.normalizeClass(W.value),placeholder:`To ${A.label}`,onInput:Z=>M(A.key,"to",Z.target.value)},null,42,ap)]),x(A)?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(ve.value),title:"Clear this filter",onClick:Z=>D(A.key)},[e.createVNode(K,{icon:"xmark",class:"w-4 h-4"})],10,np)):e.createCommentVNode("",!0)])]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.numberFilters,A=>(e.openBlock(),e.createElementBlock("div",{key:A.key,class:"space-y-3"},[e.createElementVNode("div",op,[e.createElementVNode("label",{class:e.normalizeClass(ie.value)},e.toDisplayString(A.label),3),e.createElementVNode("span",{class:e.normalizeClass(U(A))},e.toDisplayString(_(A)?"Active":"Inactive"),3)]),e.createElementVNode("div",lp,[e.createElementVNode("div",rp,[e.createElementVNode("input",{type:"number","model-value":A.min,class:e.normalizeClass(W.value),placeholder:`Min ${A.label}`,step:A.step||1,onInput:Z=>E(A.key,"min",Z.target.value)},null,42,sp)]),e.createElementVNode("span",{class:e.normalizeClass(ye.value)},"to",2),e.createElementVNode("div",ip,[e.createElementVNode("input",{type:"number","model-value":A.max,class:e.normalizeClass(W.value),placeholder:`Max ${A.label}`,step:A.step||1,onInput:Z=>E(A.key,"max",Z.target.value)},null,42,cp)]),_(A)?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(ve.value),title:"Clear this filter",onClick:Z=>te(A.key)},[e.createVNode(K,{icon:"xmark",class:"w-4 h-4"})],10,dp)):e.createCommentVNode("",!0)])]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.multiSelectFilters,A=>(e.openBlock(),e.createElementBlock("div",{key:A.key,class:"space-y-3"},[e.createElementVNode("div",up,[e.createElementVNode("label",{class:e.normalizeClass(ie.value)},e.toDisplayString(A.label),3),e.createElementVNode("span",{class:e.normalizeClass(L(A))},e.toDisplayString($(A)?`${A.selected.length} selected`:"None"),3)]),e.createElementVNode("div",mp,[e.createVNode(we,{"model-value":"",class:e.normalizeClass(f.value),onChange:Z=>T(A.key,Z.target.value)},{default:e.withCtx(()=>[e.createElementVNode("option",fp," Select "+e.toDisplayString(A.label),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.options,Z=>(e.openBlock(),e.createElementBlock("option",{key:Z.value,value:Z.value},e.toDisplayString(Z.label),9,pp))),128))]),_:2},1032,["class","onChange"]),e.createVNode(K,{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"})]),A.selected.length>0?(e.openBlock(),e.createElementBlock("div",gp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.selected,Z=>(e.openBlock(),e.createElementBlock("span",{key:Z,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(q(A,Z))+" ",1),e.createElementVNode("button",{class:"hover:bg-blue-200 rounded-full p-0.5",onClick:se=>J(A.key,Z)},[e.createVNode(K,{icon:"xmark",class:"w-3 h-3"})],8,vp)]))),128))])):e.createCommentVNode("",!0)]))),128))])],2)):e.createCommentVNode("",!0),t.showFilters&&j.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(P.value)},[e.createElementVNode("div",hp,[e.createElementVNode("span",{class:e.normalizeClass(Y.value)},"Active filters:",2),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(j.value,A=>(e.openBlock(),e.createElementBlock("div",{key:A.key,class:e.normalizeClass(ee.value)},[e.createVNode(K,{icon:A.icon,class:"w-3 h-3"},null,8,["icon"]),e.createElementVNode("span",null,e.toDisplayString(A.label)+": "+e.toDisplayString(A.value),1),e.createElementVNode("button",{class:e.normalizeClass(pe.value),onClick:Z=>je(A.key)},[e.createVNode(K,{icon:"xmark",class:"w-3 h-3"})],10,yp)],2))),128))])],2)):e.createCommentVNode("",!0),t.showTableInfo?(e.openBlock(),e.createElementBlock("div",bp,[e.createElementVNode("div",xp,[e.createElementVNode("div",kp,[e.createElementVNode("span",wp,[e.createElementVNode("span",Cp,e.toDisplayString(t.totalItems||0),1),e.createTextVNode(" "+e.toDisplayString(t.itemLabel||"items")+" found ",1)])])])])):e.createCommentVNode("",!0)]),t.showFileUpload&&r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 bg-black bg-opacity-50 z-50 flex items-center justify-center p-4",onClick:e.withModifiers(C,["self"])},[e.createElementVNode("div",Bp,[e.createElementVNode("div",Vp,[F[11]||(F[11]=e.createElementVNode("h3",{class:"text-lg font-semibold text-gray-900"}," Upload Files ",-1)),e.createElementVNode("button",{class:"text-gray-400 hover:text-gray-600 p-2 hover:bg-gray-100 rounded-full transition-all",onClick:C},[e.createVNode(K,{icon:"xmark",class:"w-5 h-5"})])]),e.createVNode(ga,{multiple:t.fileUploadMultiple,accept:t.fileUploadAccept,"max-size":t.fileUploadMaxSize,variant:t.fileUploadVariant,onFilesSelected:z,onFileRemoved:B},null,8,["multiple","accept","max-size","variant"]),e.createElementVNode("div",Ep,[e.createVNode(me,{variant:"default",onClick:C},{default:e.withCtx(()=>[...F[12]||(F[12]=[e.createTextVNode(" Close ",-1)])]),_:1})])])])):e.createCommentVNode("",!0)],64))}},Np={class:"flex items-center gap-3"},Sp={key:0,class:"flex items-center gap-3"},$p={class:"text-sm text-slate-600"},zp={class:"flex items-center gap-2"},Dp={class:"flex items-center gap-3"},Fp=["title","onClick"],Tp={key:1,class:"relative"},Ap={class:"p-3"},Mp={class:"space-y-1"},Lp={class:"flex items-center gap-2 cursor-pointer w-full"},Pp=["checked","onChange"],jp=["disabled"],Op={key:3,class:"flex items-center gap-2"},Ip=[{key:"delete",label:"Delete",icon:{render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.h("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"})])}},variant:"danger"},{key:"edit",label:"Edit",icon:{render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.h("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"})])}},variant:"primary"}],_p={name:"DataTableToolBar"},Go=Object.assign(_p,{props:{selectedItems:{type:Array,default:()=>[]},totalItems:{type:Number,default:0},bulkActions:{type:Array,default:()=>Ip},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,l=e.ref(!1),r=e.ref(null),s=e.ref(null),i=e.computed(()=>a.selectedItems.length),c=[{value:"compact",label:"Compact",icon:["fas","minus"]},{value:"normal",label:"Normal",icon:["fas","bars"]},{value:"comfortable",label:"Comfortable",icon:["fas","bars-staggered"]}],u=O.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"}}),b=O.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"}}),C=O.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"}}),z=O.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"}}),B=e.computed(()=>N(u({variant:a.variant,padding:a.padding}))),V=e.computed(()=>"text-sm text-slate-600"),k=e.computed(()=>"flex items-center"),h=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"),g=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"),v=e.computed(()=>"text-xs font-medium text-slate-500 uppercase tracking-wider mb-2 border-b border-slate-100 pb-2"),x=e.computed(()=>"py-1 hover:bg-slate-50 rounded transition-colors"),D=e.computed(()=>"w-4 h-4 rounded border-slate-300 text-blue-600 focus:ring-blue-500 focus:ring-2 focus:ring-offset-1"),S=e.computed(()=>"text-sm text-slate-700 flex-1 select-none"),M=J=>{r.value&&s.value&&!r.value.contains(J.target)&&!s.value.contains(J.target)&&(l.value=!1)},_=()=>{l.value=!l.value},te=J=>N(b({variant:J.variant||"secondary"})),U=J=>{let q="middle";return J==="compact"?q="first":J==="comfortable"&&(q="last"),N(C({active:a.density===J,position:q}))},E=()=>N(z({state:a.isRefreshing?"refreshing":"normal"})),$=()=>N("w-4 h-4",{"animate-spin":a.isRefreshing}),L=J=>a.visibleColumns.includes(J),T=(J,q)=>{o("toggle-column",{column:J,visible:q})};return e.onMounted(()=>{document.addEventListener("click",M)}),e.onUnmounted(()=>{document.removeEventListener("click",M)}),(J,q)=>{const p=e.resolveComponent("font-awesome-icon");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(B.value)},[e.createElementVNode("div",Np,[i.value>0?(e.openBlock(),e.createElementBlock("div",Sp,[e.createElementVNode("span",$p,e.toDisplayString(i.value)+" selected ",1),e.createElementVNode("div",zp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.bulkActions,y=>(e.openBlock(),e.createBlock(me,{key:y.key,class:e.normalizeClass(te(y)),onClick:d=>J.$emit("bulk-action",{action:y.key,items:t.selectedItems})},{default:e.withCtx(()=>[y.icon?(e.openBlock(),e.createBlock(p,{key:0,icon:y.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(y.label),1)]),_:2},1032,["class","onClick"]))),128))])])):t.totalItems>0?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(V.value)},e.toDisplayString(t.totalItems)+" "+e.toDisplayString(t.totalItems===1?"item":"items"),3)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Dp,[t.showDensityToggle?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(k.value)},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(c,y=>e.createElementVNode("button",{key:y.value,class:e.normalizeClass(U(y.value)),title:y.label,type:"button",onClick:d=>J.$emit("update:density",y.value)},[e.createVNode(p,{icon:y.icon,class:"w-4 h-4"},null,8,["icon"])],10,Fp)),64))],2)):e.createCommentVNode("",!0),t.showColumnToggle?(e.openBlock(),e.createElementBlock("div",Tp,[e.createElementVNode("button",{ref_key:"columnToggleButton",ref:r,class:e.normalizeClass(h.value),type:"button",onClick:e.withModifiers(_,["stop"])},[e.createVNode(p,{icon:"columns",class:"w-4 h-4"}),q[2]||(q[2]=e.createElementVNode("span",null,"Columns",-1))],2),e.withDirectives(e.createElementVNode("div",{ref_key:"columnMenu",ref:s,class:e.normalizeClass(g.value),onClick:q[0]||(q[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Ap,[e.createElementVNode("div",{class:e.normalizeClass(v.value)}," Show Columns ",2),e.createElementVNode("div",Mp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.toggleableColumns,y=>(e.openBlock(),e.createElementBlock("div",{key:y.key,class:e.normalizeClass(x.value)},[e.createElementVNode("label",Lp,[e.createElementVNode("input",{type:"checkbox",checked:L(y.key),class:e.normalizeClass(D.value),onChange:d=>T(y.key,d.target.checked)},null,42,Pp),e.createElementVNode("span",{class:e.normalizeClass(S.value)},e.toDisplayString(y.label),3)])],2))),128))])])],2),[[e.vShow,l.value]])])):e.createCommentVNode("",!0),t.showRefresh?(e.openBlock(),e.createElementBlock("button",{key:2,disabled:t.isRefreshing,class:e.normalizeClass(E()),type:"button",onClick:q[1]||(q[1]=y=>J.$emit("refresh"))},[e.createVNode(p,{icon:"sync",class:e.normalizeClass($())},null,8,["class"]),q[3]||(q[3]=e.createElementVNode("span",null,"Refresh",-1))],10,jp)):e.createCommentVNode("",!0),J.$slots.actions?(e.openBlock(),e.createElementBlock("div",Op,[e.renderSlot(J.$slots,"actions")])):e.createCommentVNode("",!0)])],2)}}}),Rp={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-12"},Up={class:"grid grid-cols-1 md:grid-cols-4 gap-8"},qp={class:"col-span-1 md:col-span-2"},Hp={class:"space-y-2"},Wp={class:"flex space-x-4"},Yp={class:"flex flex-col md:flex-row justify-between items-center"},Gp={class:"flex space-x-6 mt-4 md:mt-0"},Ko={__name:"Footer",props:{className:{type:String,default:""}},setup(t){return(n,a)=>{const o=e.resolveComponent("Logo"),l=e.resolveComponent("Text"),r=e.resolveComponent("Typography"),s=e.resolveComponent("Link"),i=e.resolveComponent("Icon"),c=e.resolveComponent("Divider");return e.openBlock(),e.createElementBlock("footer",{class:e.normalizeClass(e.unref(N)("bg-gray-50 border-t border-gray-200",t.className))},[e.createElementVNode("div",Rp,[e.createElementVNode("div",Up,[e.createElementVNode("div",qp,[e.renderSlot(n.$slots,"brand",{},()=>[e.createVNode(o,{class:"mb-4"}),e.createVNode(l,{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(r,{variant:"h6",class:"mb-4"},{default:e.withCtx(()=>[...a[1]||(a[1]=[e.createTextVNode(" Quick Links ",-1)])]),_:1}),e.createElementVNode("div",Hp,[e.createVNode(s,{href:"#",class:"block text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[2]||(a[2]=[e.createTextVNode(" About ",-1)])]),_:1}),e.createVNode(s,{href:"#",class:"block text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[3]||(a[3]=[e.createTextVNode(" Services ",-1)])]),_:1}),e.createVNode(s,{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(r,{variant:"h6",class:"mb-4"},{default:e.withCtx(()=>[...a[5]||(a[5]=[e.createTextVNode(" Follow Us ",-1)])]),_:1}),e.createElementVNode("div",Wp,[e.createVNode(s,{href:"#",class:"text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[e.createVNode(i,{name:"twitter",class:"h-5 w-5"})]),_:1}),e.createVNode(s,{href:"#",class:"text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[e.createVNode(i,{name:"github",class:"h-5 w-5"})]),_:1})])])])]),e.createVNode(c,{class:"my-8"}),e.createElementVNode("div",Yp,[e.renderSlot(n.$slots,"copyright",{},()=>[e.createVNode(l,{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",Gp,[e.createVNode(s,{href:"#",class:"text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[6]||(a[6]=[e.createTextVNode(" Privacy ",-1)])]),_:1}),e.createVNode(s,{href:"#",class:"text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[7]||(a[7]=[e.createTextVNode(" Terms ",-1)])]),_:1})])])])])],2)}}},Kp={class:"flex items-center justify-between h-16 px-4 md:px-6"},Xp={class:"flex items-center"},Qp={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 flex items-center gap-3 relative"},Jp={key:0,class:"flex-shrink-0"},Zp=["src"],eg={key:1,class:"flex-shrink-0"},tg=["src","alt"],ag={class:"min-w-0"},ng={class:"text-lg font-bold text-blue-900 truncate max-w-[200px]"},og={key:0,class:"text-xs text-blue-600 truncate font-medium"},lg={class:"w-4 h-4 text-blue-600 flex-shrink-0",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},rg=["d"],sg={key:3,class:"min-w-0"},ig={class:"text-lg font-bold text-blue-900 truncate max-w-[200px]"},cg={key:0,class:"text-xs text-blue-600 truncate font-medium"},dg={key:0,class:"absolute top-full left-0 mt-2 w-80 bg-white rounded-lg shadow-lg border border-gray-200 z-50 max-h-96 overflow-y-auto"},ug={class:"p-3 border-b border-gray-200"},mg={class:"text-sm font-semibold text-gray-900"},fg={class:"text-xs text-gray-500 mt-1"},pg={class:"py-2"},gg=["onClick"],vg={key:0,class:"flex-shrink-0 mr-3"},hg=["src","alt"],yg={class:"flex-1 text-left min-w-0"},bg={class:"font-medium truncate"},xg={key:1,class:"w-4 h-4 text-blue-500 flex-shrink-0 ml-2",fill:"currentColor",viewBox:"0 0 20 20"},kg={key:1,class:"mr-4 flex-shrink-0"},wg=["src"],Cg={key:2,class:"hidden md:flex items-center space-x-2 text-sm truncate"},Bg={class:"text-gray-500 truncate"},Vg={class:"text-gray-900 font-medium truncate"},Eg={class:"flex items-center space-x-3 md:space-x-4"},Ng={key:1,class:"relative"},Sg=["placeholder"],$g={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"},zg={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"},Dg={class:"p-4 border-b border-gray-200"},Fg={class:"text-lg font-semibold text-gray-900"},Tg={class:"max-h-96 overflow-y-auto"},Ag={key:0,class:"p-8 text-center"},Mg=["onClick"],Lg={class:"flex items-start space-x-3"},Pg={class:"flex-1"},jg={class:"text-sm text-gray-900"},Og={class:"text-xs text-gray-500 mt-1"},Ig={key:0,class:"p-4 text-center"},_g={class:"relative"},Rg={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"},Ug={class:"text-blue-700 text-sm font-medium"},qg={key:0,class:"hidden md:block text-left max-w-[160px] truncate"},Hg={class:"text-sm font-medium text-gray-900 truncate"},Wg={class:"text-xs text-gray-500 truncate leading-tight"},Yg={key:0,class:"absolute right-0 mt-2 w-58 bg-white rounded-lg shadow-lg border border-gray-200 z-50"},Gg={class:"p-4 border-b border-gray-200"},Kg={class:"text-sm font-medium text-gray-900"},Xg={class:"text-xs text-gray-500"},Qg={class:"py-2"},Jg={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"},Zg=["onClick"],e0={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"},t0={class:"flex-1 truncate font-semibold text-gray-700"},Xo={__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:""},organisationLogo:{type:String,default:""},organisations:{type:Array,default:()=>[]},activeRoles:{type:Array,default:()=>[]},showSearch:{type:Boolean,default:!0},showNotifications:{type:Boolean,default:!0},showBreadcrumb:{type:Boolean,default:!0},showOrganisationInfo:{type:Boolean,default:!0},showUserDetails:{type:Boolean,default:!0},showHeaderLogo:{type:Boolean,default:!0},headerLogo:{type:String,default:"dist/logo.png"},searchPlaceholder:{type:String,default:"Search..."},notificationsTitle:{type:String,default:"Notifications"},organisationSwitcherTitle:{type:String,default:"Switch Organisation"},organisationSwitcherDescription:{type:String,default:"Select an organisation to view its data"},userInitialsOverride:{type:String,default:""},userRoleDisplayOverride:{type:String,default:""}},emits:["search","profile-action","logout","navigate","toggle-mobile-sidebar","organisation-change","notification-click","view-all-notifications"],setup(t,{emit:n}){const a=t,o=n,l=e.ref(""),r=e.ref(!1),s=e.ref(!1),i=e.ref(a.notifications.length),c=e.ref(!1),u=e.ref(!1),b=e.ref(!1),C=e.computed(()=>a.userInitialsOverride?a.userInitialsOverride:(a.user?.name||"Guest").split(" ").map($=>$[0]||"").join("").toUpperCase()),z=e.computed(()=>{if(a.userRoleDisplayOverride)return a.userRoleDisplayOverride;const E=[];return a.activeRoles?.length>0&&E.push(...a.activeRoles.map($=>typeof $=="string"?$:$.name)),E.length===0&&a.user?.roles?.length>0&&E.push(...a.user.roles.map($=>typeof $=="string"?$:$.name)),E.length===0&&a.currentOrganisation?.role&&E.push(a.currentOrganisation.role),E.length===0?"Member":E.map($=>$.charAt(0).toUpperCase()+$.slice(1).replace(/-/g," ")).join(", ")}),B=e.computed(()=>!a.activeRoles||a.activeRoles.length===0?"":a.activeRoles.map(E=>typeof E=="string"?E:E.name).map(E=>E.charAt(0).toUpperCase()+E.slice(1).replace(/-/g," ")).join(", ")),V=()=>{r.value=!r.value,s.value=!1},k=()=>{s.value=!s.value,r.value=!1,b.value=!1},h=()=>{b.value=!b.value,s.value=!1,r.value=!1},g=E=>{o("navigate",E),s.value=!1},v=E=>E.route?!!(a.currentRoute===E.route||a.currentRoute.startsWith(E.route+"/")):!1,x=E=>{o("profile-action",E),s.value=!1},D=()=>{o("logout"),s.value=!1},S=E=>{o("organisation-change",E),b.value=!1},M=E=>{o("notification-click",E)},_=()=>{o("view-all-notifications"),r.value=!1},te=E=>{!E.target.closest(".absolute")&&!E.target.closest("button")&&(r.value=!1,s.value=!1,b.value=!1)},U=()=>{u.value=window.innerWidth<768};return e.onMounted(()=>{document.addEventListener("click",te),U(),window.addEventListener("resize",U)}),e.onUnmounted(()=>{document.removeEventListener("click",te),window.removeEventListener("resize",U)}),e.watch(l,E=>o("search",E)),e.watch(()=>a.notifications.length,E=>{i.value=E}),(E,$)=>{const L=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("header",{class:e.normalizeClass(e.unref(N)("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",Kp,[e.createElementVNode("div",Xp,[t.showOrganisationInfo&&t.currentOrganisation?(e.openBlock(),e.createElementBlock("div",Qp,[t.companyLogo?(e.openBlock(),e.createElementBlock("div",Jp,[e.createElementVNode("img",{src:t.companyLogo,alt:"Company logo",class:"w-12 h-12 object-contain rounded"},null,8,Zp)])):e.createCommentVNode("",!0),t.organisationLogo?(e.openBlock(),e.createElementBlock("div",eg,[e.createElementVNode("img",{src:t.organisationLogo,alt:`${t.currentOrganisation.organisation_name} logo`,class:"w-12 h-12 object-contain rounded border border-blue-200"},null,8,tg)])):e.createCommentVNode("",!0),t.organisations.length>1?(e.openBlock(),e.createElementBlock("button",{key:2,class:"flex items-center gap-2 min-w-0 cursor-pointer hover:bg-blue-100/50 rounded-md px-2 py-1 transition-colors",onClick:h},[e.createElementVNode("div",ag,[e.createElementVNode("p",ng,e.toDisplayString(t.currentOrganisation.organisation_name),1),B.value?(e.openBlock(),e.createElementBlock("p",og,e.toDisplayString(B.value),1)):e.createCommentVNode("",!0)]),(e.openBlock(),e.createElementBlock("svg",lg,[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:b.value?"m5 15 7-7 7 7":"m19 9-7 7-7-7"},null,8,rg)]))])):(e.openBlock(),e.createElementBlock("div",sg,[e.createElementVNode("p",ig,e.toDisplayString(t.currentOrganisation.organisation_name),1),B.value?(e.openBlock(),e.createElementBlock("p",cg,e.toDisplayString(B.value),1)):e.createCommentVNode("",!0)])),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(()=>[b.value?(e.openBlock(),e.createElementBlock("div",dg,[e.createElementVNode("div",ug,[e.createElementVNode("h3",mg,e.toDisplayString(t.organisationSwitcherTitle),1),e.createElementVNode("p",fg,e.toDisplayString(t.organisationSwitcherDescription),1)]),e.createElementVNode("div",pg,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.organisations,T=>(e.openBlock(),e.createElementBlock("button",{key:T.org_id||T.organisation_name,class:e.normalizeClass(e.unref(N)("flex items-center w-full px-3 py-2.5 text-sm transition-colors",T.org_id===t.currentOrganisation?.org_id?"bg-blue-50 text-blue-700 border-l-4 border-blue-500":"text-gray-700 hover:bg-gray-50")),onClick:J=>S(T)},[T.logo?(e.openBlock(),e.createElementBlock("div",vg,[e.createElementVNode("img",{src:T.logo,alt:`${T.organisation_name} logo`,class:"w-6 h-6 object-contain rounded"},null,8,hg)])):e.createCommentVNode("",!0),e.createElementVNode("div",yg,[e.createElementVNode("p",bg,e.toDisplayString(T.organisation_name),1)]),T.org_id===t.currentOrganisation?.org_id?(e.openBlock(),e.createElementBlock("svg",xg,[...$[4]||($[4]=[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 01 1.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z","clip-rule":"evenodd"},null,-1)])])):e.createCommentVNode("",!0)],10,gg))),128))])])):e.createCommentVNode("",!0)]),_:1})])):e.createCommentVNode("",!0),t.showHeaderLogo?(e.openBlock(),e.createElementBlock("div",kg,[e.createElementVNode("img",{src:t.headerLogo,alt:"Company Logo",class:"w-8 h-8 object-contain"},null,8,wg)])):e.createCommentVNode("",!0),t.showBreadcrumb?(e.openBlock(),e.createElementBlock("nav",Cg,[e.createElementVNode("span",Bg,e.toDisplayString(t.currentSection),1),$[5]||($[5]=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",Vg,e.toDisplayString(t.currentPage),1)])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Eg,[u.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:$[0]||($[0]=T=>o("toggle-mobile-sidebar"))},[...$[6]||($[6]=[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),t.showSearch&&(!u.value||c.value)?(e.openBlock(),e.createElementBlock("div",Ng,[$[7]||($[7]=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":$[1]||($[1]=T=>l.value=T),type:"text",placeholder:t.searchPlaceholder,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,8,Sg),[[e.vModelText,l.value]]),u.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:$[2]||($[2]=T=>c.value=!1)}," ✕ ")):e.createCommentVNode("",!0)])):t.showSearch&&u.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:$[3]||($[3]=T=>c.value=!0)},[...$[8]||($[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:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"})],-1)])])):e.createCommentVNode("",!0),t.showNotifications?(e.openBlock(),e.createElementBlock("button",{key:3,class:"relative p-2 text-gray-400 hover:text-gray-600 rounded-lg hover:bg-gray-50 transition-colors",onClick:V},[$[9]||($[9]=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-1.405-1.405A2.032 2.032 0 0118 14.158V11a6.002 6.002 0 00-4-5.659V5a2 2 0 10-4 0v.341C7.67 6.165 6 8.388 6 11v3.159c0 .538-.214 1.055-.595 1.436L4 17h5m6 0v1a3 3 0 11-6 0v-1m6 0H9"})],-1)),i.value>0?(e.openBlock(),e.createElementBlock("span",$g,e.toDisplayString(i.value>9?"9+":i.value),1)):e.createCommentVNode("",!0)])):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(()=>[r.value?(e.openBlock(),e.createElementBlock("div",zg,[e.createElementVNode("div",Dg,[e.createElementVNode("h3",Fg,e.toDisplayString(t.notificationsTitle),1)]),e.createElementVNode("div",Tg,[t.notifications.length===0?(e.openBlock(),e.createElementBlock("div",Ag,[...$[10]||($[10]=[e.createElementVNode("svg",{class:"w-12 h-12 mx-auto text-gray-300 mb-2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 17h5l-1.405-1.405A2.032 2.032 0 0118 14.158V11a6.002 6.002 0 00-4-5.659V5a2 2 0 10-4 0v.341C7.67 6.165 6 8.388 6 11v3.159c0 .538-.214 1.055-.595 1.436L4 17h5m6 0v1a3 3 0 11-6 0v-1m6 0H9"})],-1),e.createElementVNode("p",{class:"text-sm text-gray-500"}," No notifications ",-1)])])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(t.notifications,T=>(e.openBlock(),e.createElementBlock("div",{key:T.id,class:"p-4 border-b border-gray-100 hover:bg-gray-50 cursor-pointer",onClick:J=>M(T)},[e.createElementVNode("div",Lg,[$[11]||($[11]=e.createElementVNode("div",{class:"flex-shrink-0 w-2 h-2 mt-2 bg-blue-500 rounded-full"},null,-1)),e.createElementVNode("div",Pg,[e.createElementVNode("p",jg,e.toDisplayString(T.title),1),e.createElementVNode("p",Og,e.toDisplayString(T.time),1)])])],8,Mg))),128))]),t.notifications.length>0?(e.openBlock(),e.createElementBlock("div",Ig,[e.createElementVNode("button",{class:"text-sm text-blue-600 hover:text-blue-800",onClick:_}," View all notifications ")])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),_:1}),e.createElementVNode("div",_g,[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:k},[e.createElementVNode("div",Rg,[e.createElementVNode("span",Ug,e.toDisplayString(C.value),1)]),t.showUserDetails?(e.openBlock(),e.createElementBlock("div",qg,[e.createElementVNode("p",Hg,e.toDisplayString(t.user.name),1),e.createElementVNode("p",Wg,e.toDisplayString(z.value),1)])):e.createCommentVNode("",!0),$[12]||($[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(()=>[s.value?(e.openBlock(),e.createElementBlock("div",Yg,[e.createElementVNode("div",Gg,[e.createElementVNode("p",Kg,e.toDisplayString(t.user.name),1),e.createElementVNode("p",Xg,e.toDisplayString(t.user.email),1)]),e.createElementVNode("div",Qg,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.profileMenuItems,T=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:T.name},[T.route?(e.openBlock(),e.createBlock(L,{key:0,to:T.route,class:e.normalizeClass(e.unref(N)("flex items-center px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",v(T)?"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:J=>g(T)},{default:e.withCtx(()=>[v(T)?(e.openBlock(),e.createElementBlock("div",Jg)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)("flex items-center justify-center w-8 h-8 rounded-lg mr-3 flex-shrink-0 transition-colors ml-2",v(T)?"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"))},[T.icon?(e.openBlock(),e.createBlock(K,{key:0,icon:T.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(N)("flex-1 truncate font-semibold",v(T)?"text-blue-700":"text-gray-700"))},e.toDisplayString(T.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:J=>x(T)},[e.createElementVNode("div",e0,[T.icon?(e.openBlock(),e.createBlock(K,{key:0,icon:T.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0)]),e.createElementVNode("span",t0,e.toDisplayString(T.label),1)],8,Zg))],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:D},[...$[13]||($[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 3 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)}}},a0={class:"relative"},n0=["id","disabled"],o0={key:0,class:"text-gray-500"},l0={key:1,class:"flex flex-wrap gap-1.5"},r0={class:"px-3 py-2.5 border-b border-gray-200 bg-gray-50"},s0={key:0,class:"max-h-52 overflow-y-auto py-1"},i0=["onClick"],c0={class:"flex items-center gap-3"},d0=["checked"],u0={key:1,class:"px-4 py-6 text-sm text-gray-500 text-center"},Qo={__name:"MultiSelect",props:{modelValue:{type:Array,default:()=>[]},options:{type:Array,required:!0,validator:t=>t.every(n=>n.value!==void 0&&n.label)},id:{type:String,default:null},disabled:{type:Boolean,default:!1},placeholder:{type:String,default:"Select options"},hasError:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:n}){const a=t,o=n,l=e.ref(!1),r=e.ref(""),s=e.ref(null),i=e.ref([...a.options]),c=e.ref(null),u=e.ref({}),b=e.computed(()=>a.options.filter(g=>a.modelValue.includes(g.value)).map(g=>g.label)),C=()=>{if(!c.value)return;const g=c.value.getBoundingClientRect(),v=window.innerHeight,x=v-g.bottom,D=320;x<D&&g.top>D?u.value={position:"fixed",bottom:`${v-g.top+4}px`,left:`${g.left}px`,width:`${g.width}px`,zIndex:9999}:u.value={position:"fixed",top:`${g.bottom+4}px`,left:`${g.left}px`,width:`${g.width}px`,zIndex:9999}},z=()=>{a.disabled||(l.value=!l.value,l.value?(C(),e.nextTick(()=>{s.value?.focus()})):(r.value="",i.value=[...a.options]))},B=g=>{let v;a.modelValue.includes(g)?v=a.modelValue.filter(x=>x!==g):v=[...a.modelValue,g],o("update:modelValue",v)},V=()=>{if(!r.value.trim())i.value=[...a.options];else{const g=r.value.toLowerCase();i.value=a.options.filter(v=>v.label.toLowerCase().includes(g))}},k=g=>{g.key==="Escape"&&(l.value=!1,r.value="",i.value=[...a.options])},h=g=>{if(!c.value)return;const v=g.target;v&&!c.value.contains(v)&&!v.closest("[data-multiselect-dropdown]")&&(l.value=!1,r.value="",i.value=[...a.options])};return e.onMounted(()=>{document.addEventListener("click",h),window.addEventListener("scroll",C,!0),window.addEventListener("resize",C)}),e.onUnmounted(()=>{document.removeEventListener("click",h),window.removeEventListener("scroll",C,!0),window.removeEventListener("resize",C)}),e.watch(()=>a.options,g=>{i.value=[...g]},{immediate:!0}),e.watch(l,g=>{g&&C()}),(g,v)=>(e.openBlock(),e.createElementBlock("div",a0,[e.createElementVNode("button",{id:t.id,ref_key:"buttonRef",ref:c,type:"button",disabled:t.disabled,class:e.normalizeClass(["w-full px-3 py-2.5 text-left border rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 bg-white min-h-[42px]",t.hasError?"border-red-500":"border-slate-300",t.disabled?"bg-gray-100 cursor-not-allowed opacity-50":"hover:border-slate-400"]),onClick:z,onKeydown:k},[b.value.length===0?(e.openBlock(),e.createElementBlock("div",o0,e.toDisplayString(t.placeholder||"Select options"),1)):(e.openBlock(),e.createElementBlock("div",l0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value,x=>(e.openBlock(),e.createBlock(ma,{key:x,variant:"primary",size:"sm"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(x),1)]),_:2},1024))),128))])),(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass(["absolute right-3 top-1/2 -translate-y-1/2 h-5 w-5 text-gray-400 pointer-events-none transition-transform duration-200",{"rotate-180":l.value}]),fill:"currentColor",viewBox:"0 0 20 20"},[...v[2]||(v[2]=[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z","clip-rule":"evenodd"},null,-1)])],2))],42,n0),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[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(()=>[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,style:e.normalizeStyle(u.value),"data-multiselect-dropdown":"",class:"bg-white shadow-lg max-h-72 rounded-md text-base ring-1 ring-black ring-opacity-5 overflow-hidden focus:outline-none"},[e.createElementVNode("div",r0,[e.withDirectives(e.createElementVNode("input",{ref_key:"searchInput",ref:s,"onUpdate:modelValue":v[0]||(v[0]=x=>r.value=x),type:"text",placeholder:"Search options...",class:"w-full px-3 py-2 text-sm border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent bg-white",onInput:V,onKeydown:v[1]||(v[1]=e.withModifiers(()=>{},["stop"]))},null,544),[[e.vModelText,r.value]])]),i.value.length>0?(e.openBlock(),e.createElementBlock("div",s0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,x=>(e.openBlock(),e.createElementBlock("button",{key:x.value,type:"button",class:e.normalizeClass(["cursor-pointer select-none relative py-2.5 pl-3 pr-9 w-full text-left hover:bg-blue-50 focus:bg-blue-50 focus:outline-none transition-colors duration-150",{"bg-blue-50":t.modelValue.includes(x.value)}]),onClick:D=>B(x.value)},[e.createElementVNode("div",c0,[e.createElementVNode("input",{type:"checkbox",checked:t.modelValue.includes(x.value),class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300 rounded cursor-pointer pointer-events-none",readonly:"",tabindex:"-1"},null,8,d0),e.createElementVNode("span",{class:e.normalizeClass(["block font-normal truncate",{"text-blue-900 font-medium":t.modelValue.includes(x.value)}])},e.toDisplayString(x.label),3)])],10,i0))),128))])):(e.openBlock(),e.createElementBlock("div",u0," No options found "))],4)):e.createCommentVNode("",!0)]),_:1})]))]))}},m0={class:"mb-6"},f0={class:"text-xl font-semibold text-gray-900"},p0={class:"text-sm text-gray-600 mt-1"},g0=["value"],v0={key:5,class:"flex items-center"},h0={key:6,class:"flex items-center"},y0=["id","aria-checked","disabled","onClick"],b0={key:7,class:"space-y-2"},x0={key:8,class:"space-y-2"},k0={key:0,class:"text-xs text-gray-500"},w0={key:9,class:"w-full"},C0=["onDrop","onDragenter","onDragleave","onClick"],B0=["multiple","accept","disabled","onChange"],V0={class:"flex items-center justify-center px-4 py-4"},E0={class:"bg-gray-100 rounded-full p-2.5 mr-3"},N0={class:"flex flex-col"},S0={class:"text-xs text-gray-500 mt-0.5"},$0={key:0,class:"ml-1"},z0={key:1,class:"ml-1"},D0={key:1,class:"mt-3 space-y-2"},F0={class:"flex items-center space-x-3 min-w-0 flex-1"},T0={class:"flex flex-col min-w-0"},A0={class:"text-sm font-medium text-gray-900 truncate"},M0={class:"text-xs text-gray-500"},L0=["onClick"],P0={class:"flex items-center space-x-3 min-w-0 flex-1"},j0={class:"flex flex-col min-w-0"},O0={class:"text-sm font-medium text-gray-900 truncate"},I0={class:"text-xs text-gray-500"},_0=["disabled","onClick"],R0={key:2,class:"mt-2 text-xs text-gray-500"},U0={key:11,class:"space-y-2"},q0={class:"flex items-center gap-4"},H0={class:"text-sm font-medium text-gray-700 min-w-[3rem] text-right"},W0={class:"flex justify-end gap-3 pt-6"},Jo={__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","multifile","radio","switch","range","search","hidden","multiselect","combobox"].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","8xl","full"].includes(t)},modalHeight:{type:String,default:"auto"},modalResizable:{type:Boolean,default:!1}},emits:["update:modelValue","submit","close"],setup(t,{emit:n}){const a=t,o=n,l=e.computed({get:()=>a.modelValue,set:m=>o("update:modelValue",m)}),r=e.computed(()=>a.loading),s=e.ref({}),i=e.ref({}),c=e.ref(!1),u=e.ref({}),b=e.ref({}),C=e.ref({}),z=(m,w)=>{if(!(!m||!w))return w.split(".").reduce((f,X)=>f?.[X],m)},B=(m,w,f)=>{const X=w.split("."),oe=X.pop(),ne=X.reduce((W,ie)=>(W[ie]||(W[ie]={}),W[ie]),m);ne[oe]=f},V=()=>{const m={};return a.fields.forEach(w=>{if(w.name.includes(".")){const[f]=w.name.split(".");m[f]||(m[f]={}),B(m,w.name,k(w))}else w.type==="checkbox"||w.type==="switch"?m[w.name]=!1:w.type==="number"||w.type==="slider"||w.type==="range"?m[w.name]=w.min!==void 0?w.min:0:w.type==="file"?m[w.name]=null:w.type==="multifile"?(m[w.name]=[],u.value[w.name]=[],b.value[w.name]=!1):w.type==="radio"?m[w.name]=w.options?.[0]?.value||"":w.type==="multiselect"?m[w.name]=[]:(w.type,m[w.name]="")}),m},k=m=>m.type==="checkbox"||m.type==="switch"?!1:m.type==="number"||m.type==="slider"||m.type==="range"?m.min!==void 0?m.min:0:m.type==="file"?null:m.type==="multifile"?[]:m.type==="radio"?m.options?.[0]?.value||"":m.type==="multiselect"?[]:(m.type==="combobox",""),h=m=>{const w={};return a.fields.forEach(f=>{if(f.name.includes(".")){const X=z(m,f.name);w[f.name.split(".")[0]]||(w[f.name.split(".")[0]]={}),B(w,f.name,X!==void 0?X:k(f))}else{const X=m?.[f.name];f.type==="checkbox"||f.type==="switch"?w[f.name]=X??!1:f.type==="number"||f.type==="slider"||f.type==="range"?w[f.name]=X??(f.min!==void 0?f.min:0):f.type==="file"?w[f.name]=null:f.type==="multifile"?(w[f.name]=Array.isArray(X)?X:[],u.value[f.name]=[],b.value[f.name]=!1):f.type==="multiselect"?w[f.name]=Array.isArray(X)?X:[]:w[f.name]=X??k(f)}}),w};e.watch(()=>a.initialData,m=>{a.modalType==="edit"&&m||a.modalType==="create"&&m&&!c.value?(s.value=h(m),c.value=!0):a.modalType==="create"&&!m&&(s.value=V(),c.value=!1)},{immediate:!0,deep:!0}),e.watch(()=>a.modelValue,m=>{m&&(i.value={},a.modalType==="create"&&(c.value=!1,a.initialData?s.value=h(a.initialData):s.value=V(),c.value=!0))}),e.watch(()=>a.initialData,m=>{c.value&&m&&(s.value=h(m))},{deep:!0});const g=()=>{if(i.value={},a.fields.forEach(m=>{if(m.required&&!m.disabled&&m.type!=="hidden"){const w=m.name.includes(".")?z(s.value,m.name):s.value[m.name];m.type==="checkbox"||m.type==="switch"?m.required&&!w&&(i.value[m.name]=m.errorMessage||`${m.label} is required`):m.type==="number"||m.type==="slider"||m.type==="range"?w===""||w===null||w===void 0?i.value[m.name]=m.errorMessage||`${m.label} is required`:m.min!==void 0&&Number(w)<m.min?i.value[m.name]=`${m.label} must be at least ${m.min}`:m.max!==void 0&&Number(w)>m.max&&(i.value[m.name]=`${m.label} must be at most ${m.max}`):m.type==="email"?!w||!w.trim()?i.value[m.name]=m.errorMessage||`${m.label} is required`:/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(w)||(i.value[m.name]="Please enter a valid email address"):m.type==="url"?!w||!w.trim()?i.value[m.name]=m.errorMessage||`${m.label} is required`:/^https?:\/\/.+/.test(w)||(i.value[m.name]="Please enter a valid URL"):m.type==="tel"?(!w||!w.trim())&&(i.value[m.name]=m.errorMessage||`${m.label} is required`):m.type==="file"?w||(i.value[m.name]=m.errorMessage||`${m.label} is required`):m.type==="multifile"?!Array.isArray(w)||w.length===0?i.value[m.name]=m.errorMessage||`${m.label} is required`:m.minFiles&&w.length<m.minFiles?i.value[m.name]=`Please upload at least ${m.minFiles} file(s)`:m.maxFiles&&w.length>m.maxFiles&&(i.value[m.name]=`Maximum ${m.maxFiles} file(s) allowed`):m.type==="radio"?w||(i.value[m.name]=m.errorMessage||`${m.label} is required`):m.type==="multiselect"?(!Array.isArray(w)||w.length===0)&&(i.value[m.name]=m.errorMessage||`${m.label} is required`):m.type==="combobox"?(!w||typeof w=="string"&&!w.trim())&&(i.value[m.name]=m.errorMessage||`${m.label} is required`):m.type==="date"||m.type==="time"||m.type==="datetime-local"||m.type==="month"||m.type==="week"?(!w||typeof w=="string"&&!w.trim())&&(i.value[m.name]=m.errorMessage||`${m.label} is required`):m.type==="password"?(!w||typeof w=="string"&&!w.trim())&&(i.value[m.name]=m.errorMessage||`${m.label} is required`):(!w||typeof w=="string"&&!w.trim())&&(i.value[m.name]=m.errorMessage||`${m.label} is required`)}if(m.validate&&typeof m.validate=="function"){const w=m.name.includes(".")?z(s.value,m.name):s.value[m.name],f=m.validate(w,s.value);f&&(i.value[m.name]=f)}}),a.customValidation){const m=a.customValidation(s.value);m&&Object.keys(m).length>0&&(i.value={...i.value,...m})}return Object.keys(i.value).length===0},v=async(m,w)=>{if(m.name.includes(".")?B(s.value,m.name,w):s.value[m.name]=w,m.onChange&&typeof m.onChange=="function")try{await m.onChange(w,s.value)}catch(f){console.error("Error in onChange handler:",f),de.error("An error occurred while processing the change")}},x=(m,w)=>{if(m.name.includes(".")?B(s.value,m.name,w):s.value[m.name]=w,m.onChange&&typeof m.onChange=="function")try{m.onChange(w,s.value)}catch(f){console.error("Error in onChange handler:",f),de.error("An error occurred while processing the change")}},D=(m,w)=>{const f=w.target.files?.[0]||null;if(m.name.includes(".")?B(s.value,m.name,f):s.value[m.name]=f,m.onChange&&typeof m.onChange=="function")try{m.onChange(f,s.value)}catch(X){console.error("Error in onChange handler:",X),de.error("An error occurred while processing the file")}},S=m=>{const w=j(m.name)||[],f=b.value[m.name],X=w.length>0;return N("border-2 border-dashed rounded-xl cursor-pointer transition-all duration-300 ease-in-out shadow-sm",m.variant==="dashed"?"border-blue-300 hover:border-blue-400 hover:bg-blue-50":"border-gray-300 hover:border-gray-400 hover:bg-gray-50","focus-within:ring-2 focus-within:ring-blue-500 focus-within:ring-opacity-50",{"border-green-500 bg-green-50 shadow-md":X&&!f,"border-blue-500 bg-blue-50 ring-4 ring-blue-200 ring-opacity-50 shadow-lg":f,"border-green-600 bg-green-100 ring-4 ring-green-200 ring-opacity-50 shadow-lg":X&&f})},M=(m,w)=>{w.preventDefault(),b.value[m.name]=!1;const f=Array.from(w.dataTransfer.files);L(m,f)},_=m=>{m.preventDefault()},te=(m,w)=>{w.preventDefault(),b.value[m.name]=!0},U=(m,w)=>{w.preventDefault(),b.value[m.name]=!1},E=m=>{const w=C.value[m.name];w&&w.click()},$=(m,w)=>{const f=Array.from(w.target.files);L(m,f),w.target.value=""},L=(m,w)=>{const f=j(m.name)||[],X=w.filter(ne=>{if(m.maxSize&&ne.size>m.maxSize)return de.error(`File "${ne.name}" exceeds maximum size of ${q(m.maxSize)}`),!1;if(m.accept){const ie=m.accept.split(",").map(he=>he.trim().toLowerCase()),ye="."+ne.name.split(".").pop().toLowerCase(),ve=ne.type.toLowerCase();if(!ie.some(he=>he.startsWith(".")?ye===he:he.endsWith("/*")?ve.startsWith(he.replace("/*","/")):ve===he))return de.error(`File "${ne.name}" is not an accepted file type`),!1}return m.maxFiles&&f.length+(u.value[m.name]?.length||0)>=m.maxFiles?(de.error(`Maximum ${m.maxFiles} file(s) allowed`),!1):f.some(ie=>ie.name===ne.name&&ie.size===ne.size)?(de.error(`File "${ne.name}" has already been added`),!1):!0});if(X.length===0)return;u.value[m.name]||(u.value[m.name]=[]);const oe=X.map(ne=>e.reactive({file:ne,progress:0,uploading:!0,id:Math.random().toString(36).slice(2,11)}));u.value[m.name].push(...oe),oe.forEach(ne=>{const W=1500+Math.random()*1500,ie=50,ve=100/(W/ie),Pe=setInterval(()=>{if(ne.progress+=ve,ne.progress>=100){ne.progress=100,ne.uploading=!1,clearInterval(Pe);const he=j(m.name)||[];m.multiple!==!1?Q(m.name,[...he,ne.file]):Q(m.name,[ne.file]);const P=u.value[m.name].findIndex(Y=>Y.id===ne.id);if(P>-1&&u.value[m.name].splice(P,1),m.onChange&&typeof m.onChange=="function")try{m.onChange(j(m.name),s.value)}catch(Y){console.error("Error in onChange handler:",Y)}}},ie)})},T=(m,w)=>{const X=[...j(m.name)||[]];if(X.splice(w,1),Q(m.name,X),m.onChange&&typeof m.onChange=="function")try{m.onChange(X,s.value)}catch(oe){console.error("Error in onChange handler:",oe)}},J=(m,w)=>{const f=u.value[m.name]?.findIndex(X=>X.id===w);f>-1&&u.value[m.name].splice(f,1)},q=m=>{if(m===0)return"0 Bytes";const w=1024,f=["Bytes","KB","MB","GB"],X=Math.floor(Math.log(m)/Math.log(w));return parseFloat((m/Math.pow(w,X)).toFixed(2))+" "+f[X]},p=m=>{const w=m.type||"";return w.startsWith("image/")?"image":w.startsWith("video/")?"video":w.startsWith("audio/")?"music":w.includes("pdf")?"file-text":w.includes("zip")||w.includes("rar")||w.includes("7z")?"archive":w.includes("word")||w.includes("document")?"file-text":w.includes("excel")||w.includes("spreadsheet")?"table":w.includes("powerpoint")||w.includes("presentation")?"presentation":"file"},y=m=>{const w=m.type||"";return w.startsWith("image/")?"text-purple-600 bg-purple-100":w.startsWith("video/")?"text-red-600 bg-red-100":w.startsWith("audio/")?"text-pink-600 bg-pink-100":w.includes("pdf")?"text-red-600 bg-red-100":w.includes("zip")||w.includes("rar")?"text-yellow-600 bg-yellow-100":w.includes("word")?"text-blue-600 bg-blue-100":w.includes("excel")?"text-green-600 bg-green-100":"text-gray-600 bg-gray-100"},d=async()=>{try{if(a.fields.some(f=>f.type==="multifile"&&u.value[f.name]?.length>0)){de.error("Please wait for all files to finish uploading");return}if(!g()){de.error("Please fix the validation errors before submitting");return}const w={};a.fields.forEach(f=>{const X=f.name.includes(".")?z(s.value,f.name):s.value[f.name];if(f.type==="number"||f.type==="slider"||f.type==="range")f.name.includes(".")?B(w,f.name,Number(X)):w[f.name]=Number(X);else if(f.type==="text"||f.type==="textarea"||f.type==="date"||f.type==="email"||f.type==="url"||f.type==="tel"||f.type==="search"||f.type==="time"||f.type==="datetime-local"||f.type==="month"||f.type==="week"){const oe=typeof X=="string"?X.trim():X;f.name.includes(".")?B(w,f.name,oe):w[f.name]=oe}else f.type==="password"||f.type==="file"||f.type,f.name.includes(".")?B(w,f.name,X):w[f.name]=X}),o("submit",{formData:w,modalType:a.modalType,originalData:a.initialData})}catch(m){console.error("Error during form submission:",m),de.error("An error occurred during submission")}},I=()=>{s.value=V(),i.value={},c.value=!1,u.value={},b.value={},o("close")},j=m=>m.includes(".")?z(s.value,m):s.value[m],Q=(m,w)=>{m.includes(".")?B(s.value,m,w):s.value[m]=w},H=(m,w)=>{m&&(C.value[w]=m)};return(m,w)=>(e.openBlock(),e.createBlock(Bt,{modelValue:l.value,"onUpdate:modelValue":w[0]||(w[0]=f=>l.value=f),"show-close":!0,"close-on-backdrop":!0,size:t.modalSize,class:e.normalizeClass(t.modalHeight==="auto"?"":t.modalHeight),resizable:t.modalResizable,onClose:I},{default:e.withCtx(()=>[e.createElementVNode("div",m0,[e.createElementVNode("h2",f0,e.toDisplayString(t.modalType==="create"?`Add New ${t.entityName}`:`Edit ${t.entityName}`),1),e.createElementVNode("p",p0,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-6 overflow-y-auto",onSubmit:e.withModifiers(d,["prevent"])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.fields,f=>(e.openBlock(),e.createElementBlock("div",{key:f.name},[f.type==="hidden"?(e.openBlock(),e.createElementBlock("input",{key:0,value:j(f.name),type:"hidden"},null,8,g0)):(e.openBlock(),e.createBlock(Ct,{key:1,id:`form-${t.entityName}-${f.name}-${Math.random().toString(36).slice(2,5)}`,label:f.label,required:f.required&&!f.disabled,error:i.value[f.name],"error-message":i.value[f.name]},{default:e.withCtx(({fieldId:X,hasError:oe,ariaDescribedBy:ne})=>[["text","number","password","color","email","tel","url","search"].includes(f.type)?(e.openBlock(),e.createBlock(ue,{key:0,id:X,"model-value":j(f.name),type:f.type,placeholder:f.placeholder,disabled:r.value||f.disabled,readonly:f.disabled,class:e.normalizeClass(oe?"border-red-500":"border-slate-300"),"aria-describedby":ne,"onUpdate:modelValue":W=>Q(f.name,W)},null,8,["id","model-value","type","placeholder","disabled","readonly","class","aria-describedby","onUpdate:modelValue"])):f.type==="textarea"?(e.openBlock(),e.createBlock(wt,{key:1,id:X,"model-value":j(f.name),placeholder:f.placeholder,disabled:r.value||f.disabled,rows:f.rows||3,class:e.normalizeClass(["w-full px-3 py-2 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",oe?"border-red-500":"border-slate-300"]),"aria-describedby":ne,"onUpdate:modelValue":W=>Q(f.name,W)},null,8,["id","model-value","placeholder","disabled","rows","class","aria-describedby","onUpdate:modelValue"])):f.type==="select"?(e.openBlock(),e.createBlock(we,{key:2,id:X,"model-value":j(f.name),options:f.options,placeholder:f.placeholder||"Select an option",disabled:r.value||f.disabled,"has-error":oe,"aria-describedby":ne,"onUpdate:modelValue":W=>v(f,W)},null,8,["id","model-value","options","placeholder","disabled","has-error","aria-describedby","onUpdate:modelValue"])):f.type==="multiselect"?(e.openBlock(),e.createBlock(Qo,{key:3,id:X,"model-value":j(f.name),options:f.options,disabled:r.value||f.disabled,placeholder:f.placeholder||"Select options","has-error":oe,"aria-describedby":ne,"onUpdate:modelValue":W=>Q(f.name,W)},null,8,["id","model-value","options","disabled","placeholder","has-error","aria-describedby","onUpdate:modelValue"])):f.type==="combobox"?(e.openBlock(),e.createBlock(we,{key:4,id:X,"model-value":j(f.name),options:f.options,placeholder:f.placeholder||"Select or type to add new",disabled:r.value||f.disabled,"has-error":oe,"aria-describedby":ne,"allow-create":f.allowCreate,"onUpdate:modelValue":W=>v(f,W)},null,8,["id","model-value","options","placeholder","disabled","has-error","aria-describedby","allow-create","onUpdate:modelValue"])):f.type==="checkbox"?(e.openBlock(),e.createElementBlock("div",v0,[e.createVNode(ue,{id:X,"model-value":j(f.name),type:"checkbox",disabled:r.value||f.disabled,class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300 rounded","aria-describedby":ne,"onUpdate:modelValue":W=>Q(f.name,W)},null,8,["id","model-value","disabled","aria-describedby","onUpdate:modelValue"]),e.createVNode(Ne,{for:X,class:"ml-2 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(f.checkboxLabel||f.label),1)]),_:2},1032,["for"])])):f.type==="switch"?(e.openBlock(),e.createElementBlock("div",h0,[e.createElementVNode("button",{id:X,type:"button",role:"switch","aria-checked":j(f.name),disabled:r.value||f.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",j(f.name)?"bg-blue-600":"bg-gray-200",r.value||f.disabled?"opacity-50 cursor-not-allowed":"cursor-pointer"]),onClick:W=>Q(f.name,!j(f.name))},[e.createElementVNode("span",{class:e.normalizeClass(["inline-block h-4 w-4 transform rounded-full bg-white transition-transform",j(f.name)?"translate-x-6":"translate-x-1"])},null,2)],10,y0),e.createVNode(Ne,{for:X,class:"ml-3 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(f.checkboxLabel||f.label),1)]),_:2},1032,["for"])])):f.type==="radio"?(e.openBlock(),e.createElementBlock("div",b0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.options,W=>(e.openBlock(),e.createElementBlock("div",{key:W.value,class:"flex items-center"},[e.createVNode(ue,{id:`${X}-${W.value}`,"model-value":j(f.name),type:"radio",value:W.value,disabled:r.value||f.disabled,class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300","aria-describedby":ne,"onUpdate:modelValue":ie=>Q(f.name,ie)},null,8,["id","model-value","value","disabled","aria-describedby","onUpdate:modelValue"]),e.createVNode(Ne,{for:`${X}-${W.value}`,class:"ml-2 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(W.label),1)]),_:2},1032,["for"])]))),128))])):f.type==="file"?(e.openBlock(),e.createElementBlock("div",x0,[e.createVNode(ue,{id:X,type:"file",accept:f.accept,disabled:r.value||f.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",oe?"border-red-500":"border-slate-300"]),"aria-describedby":ne,onChange:W=>D(f,W)},null,8,["id","accept","disabled","class","aria-describedby","onChange"]),f.helpText?(e.openBlock(),e.createElementBlock("p",k0,e.toDisplayString(f.helpText),1)):e.createCommentVNode("",!0)])):f.type==="multifile"?(e.openBlock(),e.createElementBlock("div",w0,[j(f.name)?.length>0&&f.multiple===!1?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(S(f)),onDrop:W=>M(f,W),onDragover:_,onDragenter:W=>te(f,W),onDragleave:W=>U(f,W),onClick:W=>E(f)},[e.createElementVNode("input",{ref_for:!0,ref:W=>H(W,f.name),type:"file",multiple:f.multiple!==!1,accept:f.accept,class:"hidden",disabled:r.value||f.disabled,onChange:W=>$(f,W)},null,40,B0),e.createElementVNode("div",V0,[e.createElementVNode("div",E0,[e.createVNode(K,{icon:"upload",class:"h-6 w-6 text-gray-600"})]),e.createElementVNode("div",N0,[w[1]||(w[1]=e.createElementVNode("p",{class:"text-sm font-medium text-gray-700"},[e.createElementVNode("span",{class:"text-blue-600 font-semibold"},"Click to upload"),e.createTextVNode(" or drag and drop ")],-1)),e.createElementVNode("p",S0,[e.createTextVNode(e.toDisplayString(f.maxSize?`Up to ${q(f.maxSize)}`:"No size limit")+" ",1),f.accept?(e.openBlock(),e.createElementBlock("span",$0,"• "+e.toDisplayString(f.accept),1)):e.createCommentVNode("",!0),f.maxFiles?(e.openBlock(),e.createElementBlock("span",z0,"• Max "+e.toDisplayString(f.maxFiles)+" file(s)",1)):e.createCommentVNode("",!0)])])])],42,C0)),j(f.name)?.length>0||u.value[f.name]?.length>0?(e.openBlock(),e.createElementBlock("div",D0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value[f.name]||[],W=>(e.openBlock(),e.createElementBlock("div",{key:`uploading-${W.id}`,class:"flex items-center justify-between p-3 bg-white border border-gray-200 rounded-lg shadow-sm"},[e.createElementVNode("div",F0,[e.createVNode(kt,{value:W.progress,max:100,size:"sm",variant:"default","dynamic-color":!0,class:"flex-shrink-0"},null,8,["value"]),e.createElementVNode("div",T0,[e.createElementVNode("span",A0,e.toDisplayString(W.file.name),1),e.createElementVNode("span",M0,"Uploading... "+e.toDisplayString(Math.round(W.progress))+"%",1)])]),e.createElementVNode("button",{type:"button",class:"text-gray-400 hover:text-red-500 hover:bg-red-50 rounded-full p-1 transition-colors ml-2",onClick:e.withModifiers(ie=>J(f,W.id),["stop"])},[e.createVNode(K,{icon:"x",class:"h-4 w-4"})],8,L0)]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(j(f.name)||[],(W,ie)=>(e.openBlock(),e.createElementBlock("div",{key:`uploaded-${ie}-${W.name}`,class:"flex items-center justify-between p-3 bg-white border border-gray-200 rounded-lg shadow-sm hover:shadow-md transition-shadow"},[e.createElementVNode("div",P0,[e.createElementVNode("div",{class:e.normalizeClass(["rounded-md p-2 flex-shrink-0",y(W)])},[e.createVNode(K,{icon:p(W),class:"h-5 w-5"},null,8,["icon"])],2),e.createElementVNode("div",j0,[e.createElementVNode("span",O0,e.toDisplayString(W.name),1),e.createElementVNode("span",I0,e.toDisplayString(q(W.size)),1)])]),e.createElementVNode("button",{type:"button",class:"text-gray-400 hover:text-red-500 hover:bg-red-50 rounded-full p-1.5 transition-colors ml-2",disabled:r.value||f.disabled,onClick:e.withModifiers(ye=>T(f,ie),["stop"])},[e.createVNode(K,{icon:"x",class:"h-4 w-4"})],8,_0)]))),128))])):e.createCommentVNode("",!0),f.helpText?(e.openBlock(),e.createElementBlock("p",R0,e.toDisplayString(f.helpText),1)):e.createCommentVNode("",!0)])):f.type==="slider"?(e.openBlock(),e.createBlock(Vt,{key:10,"model-value":j(f.name),min:f.min,max:f.max,step:f.step,disabled:r.value||f.disabled,"onUpdate:modelValue":W=>x(f,W)},null,8,["model-value","min","max","step","disabled","onUpdate:modelValue"])):f.type==="range"?(e.openBlock(),e.createElementBlock("div",U0,[e.createElementVNode("div",q0,[e.createVNode(ue,{id:X,"model-value":j(f.name),type:"range",min:f.min,max:f.max,step:f.step||1,disabled:r.value||f.disabled,class:"flex-1","aria-describedby":ne,"onUpdate:modelValue":W=>Q(f.name,W)},null,8,["id","model-value","min","max","step","disabled","aria-describedby","onUpdate:modelValue"]),e.createElementVNode("span",H0,e.toDisplayString(j(f.name)),1)])])):f.type==="date"?(e.openBlock(),e.createBlock(nt,{key:12,id:X,"model-value":j(f.name),disabled:r.value||f.disabled,required:f.required,min:f.min,max:f.max,placeholder:f.placeholder||"Select date",format:f.format||"MM/DD/YYYY",clearable:f.clearable!==!1,"show-today":f.showToday!==!1,"calendar-position":f.calendarPosition||"left-0 bottom-full","aria-describedby":ne,"onUpdate:modelValue":W=>Q(f.name,W)},null,8,["id","model-value","disabled","required","min","max","placeholder","format","clearable","show-today","calendar-position","aria-describedby","onUpdate:modelValue"])):f.type==="time"?(e.openBlock(),e.createBlock(ue,{key:13,id:X,"model-value":j(f.name),type:"time",disabled:r.value||f.disabled,class:e.normalizeClass(oe?"border-red-500":"border-slate-300"),"aria-describedby":ne,"onUpdate:modelValue":W=>Q(f.name,W)},null,8,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):f.type==="datetime-local"?(e.openBlock(),e.createBlock(ue,{key:14,id:X,"model-value":j(f.name),type:"datetime-local",disabled:r.value||f.disabled,class:e.normalizeClass(oe?"border-red-500":"border-slate-300"),"aria-describedby":ne,"onUpdate:modelValue":W=>Q(f.name,W)},null,8,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):f.type==="month"?(e.openBlock(),e.createBlock(ue,{key:15,id:X,"model-value":j(f.name),type:"month",disabled:r.value||f.disabled,class:e.normalizeClass(oe?"border-red-500":"border-slate-300"),"aria-describedby":ne,"onUpdate:modelValue":W=>Q(f.name,W)},null,8,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):f.type==="week"?(e.openBlock(),e.createBlock(ue,{key:16,id:X,"model-value":j(f.name),type:"week",disabled:r.value||f.disabled,class:e.normalizeClass(oe?"border-red-500":"border-slate-300"),"aria-describedby":ne,"onUpdate:modelValue":W=>Q(f.name,W)},null,8,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):e.createCommentVNode("",!0)]),_:2},1032,["id","label","required","error","error-message"]))]))),128)),e.createElementVNode("div",W0,[e.createVNode(me,{type:"button",variant:"outline",disabled:r.value,onClick:I},{default:e.withCtx(()=>[...w[2]||(w[2]=[e.createTextVNode(" Cancel ",-1)])]),_:1},8,["disabled"]),e.createVNode(me,{type:"submit",disabled:r.value,loading:r.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","class","resizable"]))}},Y0={class:"w-full p-2"},G0={key:0,class:"mb-6"},K0={class:"text-xl font-semibold text-gray-900"},X0={key:0,class:"text-sm text-gray-600 mt-1"},Q0=["onUpdate:modelValue"],J0={key:4,class:"flex items-center"},Z0={key:5,class:"flex items-center"},ev=["id","aria-checked","disabled","onClick"],tv={key:6,class:"space-y-2"},av={key:7,class:"space-y-2"},nv={key:0,class:"text-xs text-gray-500"},ov={key:8,class:"space-y-3"},lv=["onDrop","onDragenter","onDragleave","onClick"],rv=["multiple","accept","disabled","onChange"],sv={class:"flex items-center justify-center px-4 py-4"},iv={class:"flex flex-col"},cv={class:"text-xs text-gray-500"},dv={key:0,class:"ml-1"},uv={key:1,class:"ml-1"},mv={key:0,class:"text-xs text-gray-500"},fv={key:1,class:"space-y-2"},pv={class:"flex items-center space-x-3 flex-1 min-w-0"},gv={class:"relative h-10 w-10 flex-shrink-0"},vv={class:"h-10 w-10 text-gray-300",viewBox:"0 0 36 36"},hv=["stroke-dasharray"],yv={class:"absolute inset-0 flex items-center justify-center text-xs font-medium text-gray-700"},bv={class:"flex flex-col min-w-0"},xv={class:"text-sm font-medium text-gray-900 truncate"},kv=["onClick"],wv={key:2,class:"space-y-2"},Cv={class:"flex items-center space-x-3 flex-1 min-w-0"},Bv={class:"h-5 w-5",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},Vv={key:0,"stroke-linecap":"round","stroke-linejoin":"round",d:"M2.25 15.75l5.159-5.159a2.25 2.25 0 013.182 0l5.159 5.159m-1.5-1.5l1.409-1.409a2.25 2.25 0 013.182 0l2.909 2.909m-18 3.75h16.5a1.5 1.5 0 001.5-1.5V6a1.5 1.5 0 00-1.5-1.5H3.75A1.5 1.5 0 002.25 6v12a1.5 1.5 0 001.5 1.5zm10.5-11.25h.008v.008h-.008V8.25zm.375 0a.375.375 0 11-.75 0 .375.375 0 01.75 0z"},Ev={key:1,"stroke-linecap":"round","stroke-linejoin":"round",d:"M19.5 14.25v-2.625a3.375 3.375 0 00-3.375-3.375h-1.5A1.125 1.125 0 0113.5 7.125v-1.5a3.375 3.375 0 00-3.375-3.375H8.25m2.25 0H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 00-9-9z"},Nv={class:"flex flex-col min-w-0"},Sv={class:"text-sm font-medium text-gray-900 truncate"},$v={class:"text-xs text-gray-500"},zv=["disabled","onClick"],Dv={key:3,class:"text-xs text-blue-600 font-medium"},Fv={key:0},Tv={key:10,class:"space-y-2"},Av={class:"flex items-center gap-4"},Mv={class:"text-sm font-medium text-gray-700 min-w-[3rem] text-right"},Lv={class:"flex justify-end gap-3 pt-6"},Zo={__name:"ReusableForm",props:{title:{type:String,default:"Form"},description:{type:String,default:""},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","multifile","radio","switch","range","search","hidden","multiselect"].includes(n.type))},initialData:{type:Object,default:null},loading:{type:Boolean,default:!1},customValidation:{type:Function,default:null},submitLabel:{type:String,default:"Submit"},showReset:{type:Boolean,default:!0},showCancel:{type:Boolean,default:!0}},emits:["submit","reset","cancel"],setup(t,{emit:n}){const a=t,o=n,l=e.computed(()=>a.loading),r=e.ref({}),s=e.ref({}),i=e.ref(!1),c=e.ref({}),u=e.ref({}),b=e.ref({}),C=p=>{const y=b.value[p];y&&y.click()},z=(p,y)=>{y&&(b.value[p]=y)},B=()=>{const p={};return a.fields.forEach(y=>{y.type==="checkbox"||y.type==="switch"?p[y.name]=!1:y.type==="number"||y.type==="slider"||y.type==="range"?p[y.name]=y.min!==void 0?y.min:0:y.type==="file"?p[y.name]=null:y.type==="multifile"?p[y.name]=[]:y.type==="radio"?p[y.name]=y.options?.[0]?.value||"":y.type==="multiselect"?p[y.name]=[]:p[y.name]=""}),p};e.watch(()=>a.initialData,p=>{if(p){const y={};a.fields.forEach(d=>{d.type==="checkbox"||d.type==="switch"?y[d.name]=p[d.name]??!1:d.type==="number"||d.type==="slider"||d.type==="range"?y[d.name]=p[d.name]??(d.min!==void 0?d.min:0):d.type==="file"?y[d.name]=null:d.type==="multifile"?y[d.name]=Array.isArray(p[d.name])?p[d.name]:[]:d.type==="multiselect"?y[d.name]=Array.isArray(p[d.name])?p[d.name]:[]:y[d.name]=p[d.name]??""}),r.value=y,i.value=!0}else r.value=B(),i.value=!1},{immediate:!0,deep:!0}),e.watch(()=>a.initialData,p=>{i.value&&p&&Object.keys(p).forEach(y=>{Object.prototype.hasOwnProperty.call(r.value,y)&&p[y]!==void 0&&p[y]!==null&&(r.value[y]=p[y])})},{deep:!0});const V=()=>{if(s.value={},a.fields.forEach(p=>{if(p.required&&!p.disabled&&p.type!=="hidden"){const y=r.value[p.name];p.type==="checkbox"||p.type==="switch"?p.required&&!y&&(s.value[p.name]=p.errorMessage||`${p.label} is required`):p.type==="number"||p.type==="slider"||p.type==="range"?y===""||y===null||y===void 0?s.value[p.name]=p.errorMessage||`${p.label} is required`:p.min!==void 0&&Number(y)<p.min?s.value[p.name]=`${p.label} must be at least ${p.min}`:p.max!==void 0&&Number(y)>p.max&&(s.value[p.name]=`${p.label} must be at most ${p.max}`):p.type==="email"?!y||!y.trim()?s.value[p.name]=p.errorMessage||`${p.label} is required`:/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(y)||(s.value[p.name]="Please enter a valid email address"):p.type==="url"?!y||!y.trim()?s.value[p.name]=p.errorMessage||`${p.label} is required`:/^https?:\/\/.+/.test(y)||(s.value[p.name]="Please enter a valid URL"):p.type==="tel"?(!y||!y.trim())&&(s.value[p.name]=p.errorMessage||`${p.label} is required`):p.type==="file"?y||(s.value[p.name]=p.errorMessage||`${p.label} is required`):p.type==="multifile"?!Array.isArray(y)||y.length===0?s.value[p.name]=p.errorMessage||`${p.label} is required`:p.minFiles&&y.length<p.minFiles?s.value[p.name]=`Please upload at least ${p.minFiles} file(s)`:p.maxFiles&&y.length>p.maxFiles&&(s.value[p.name]=`Maximum ${p.maxFiles} file(s) allowed`):p.type==="radio"?y||(s.value[p.name]=p.errorMessage||`${p.label} is required`):p.type==="multiselect"?(!Array.isArray(y)||y.length===0)&&(s.value[p.name]=p.errorMessage||`${p.label} is required`):p.type==="date"||p.type==="time"||p.type==="datetime-local"||p.type==="month"||p.type==="week"?(!y||typeof y=="string"&&!y.trim())&&(s.value[p.name]=p.errorMessage||`${p.label} is required`):p.type==="password"?(!y||typeof y=="string"&&!y.trim())&&(s.value[p.name]=p.errorMessage||`${p.label} is required`):(!y||typeof y=="string"&&!y.trim())&&(s.value[p.name]=p.errorMessage||`${p.label} is required`)}if(p.validate&&typeof p.validate=="function"){const y=p.validate(r.value[p.name],r.value);y&&(s.value[p.name]=y)}}),a.customValidation){const p=a.customValidation(r.value);p&&Object.keys(p).length>0&&(s.value={...s.value,...p})}return Object.keys(s.value).length===0},k=async(p,y)=>{if(r.value[p.name]=y,p.onChange&&typeof p.onChange=="function")try{await p.onChange(y,r.value)}catch(d){console.error("Error in onChange handler:",d),de.error("An error occurred while processing the change")}},h=(p,y)=>{if(r.value[p.name]=y,p.onChange&&typeof p.onChange=="function")try{p.onChange(y,r.value)}catch(d){console.error("Error in onChange handler:",d),de.error("An error occurred while processing the change")}},g=(p,y)=>{const d=y.target.files?.[0]||null;if(r.value[p.name]=d,p.onChange&&typeof p.onChange=="function")try{p.onChange(d,r.value)}catch(I){console.error("Error in onChange handler:",I),de.error("An error occurred while processing the file")}},v=(p,y)=>{y.preventDefault(),u.value[p.name]=!1;const d=Array.from(y.dataTransfer?.files||[]);_(p,d)},x=p=>{p.preventDefault()},D=(p,y)=>{y.preventDefault(),u.value[p.name]=!0},S=(p,y)=>{y.preventDefault(),u.value[p.name]=!1},M=(p,y)=>{const d=Array.from(y.target?.files||[]);_(p,d),y.target.value=""},_=(p,y)=>{const d=r.value[p.name]||[],I=p.maxFiles||1/0,j=p.maxSize||1/0,Q=y.filter(w=>{if(w.size>j)return de.error(`${w.name} exceeds maximum size of ${E(j)}`),!1;if(p.accept){const f=p.accept.split(",").map(W=>W.trim().toLowerCase()),X="."+w.name.split(".").pop()?.toLowerCase(),oe=w.type.toLowerCase();if(!f.some(W=>W.startsWith(".")?X===W:W.endsWith("/*")?oe.startsWith(W.replace("/*","/")):oe===W))return de.error(`${w.name} is not an accepted file type`),!1}return!0}),H=I-d.length;if(H<=0){de.error(`Maximum ${I} file(s) allowed`);return}const m=Q.slice(0,H);m.length<Q.length&&de.warning(`Only ${m.length} file(s) added. Maximum ${I} file(s) allowed`),c.value[p.name]||(c.value[p.name]=[]),m.forEach(w=>{const f=e.reactive({file:w,progress:0,id:`${Date.now()}-${Math.random().toString(36).slice(2,9)}`});c.value[p.name].push(f);const X=1500+Math.random()*1500,oe=50,W=100/(X/oe),ie=setInterval(()=>{if(f.progress+=W,f.progress>=100){f.progress=100,clearInterval(ie),r.value[p.name]=[...r.value[p.name]||[],w];const ye=c.value[p.name]?.findIndex(ve=>ve.id===f.id);if(ye>-1&&c.value[p.name].splice(ye,1),p.onChange&&typeof p.onChange=="function")try{p.onChange(r.value[p.name],r.value)}catch(ve){console.error("Error in onChange handler:",ve)}}},oe)})},te=(p,y)=>{const d=[...r.value[p.name]||[]];if(d.splice(y,1),r.value[p.name]=d,p.onFileRemoved&&typeof p.onFileRemoved=="function")try{p.onFileRemoved(d,r.value)}catch(I){console.error("Error in onFileRemoved handler:",I)}},U=(p,y)=>{const d=c.value[p.name]?.findIndex(I=>I.id===y);d>-1&&c.value[p.name].splice(d,1)},E=p=>{if(p===0)return"0 Bytes";const y=1024,d=["Bytes","KB","MB","GB"],I=Math.floor(Math.log(p)/Math.log(y));return parseFloat((p/Math.pow(y,I)).toFixed(2))+" "+d[I]},$=p=>{const y=p.name.split(".").pop()?.toLowerCase();return["jpg","jpeg","png","gif","webp","svg","bmp"].includes(y)?"image":["pdf"].includes(y)||["doc","docx"].includes(y)?"file-text":["xls","xlsx","csv"].includes(y)?"table":["zip","rar","7z","tar","gz"].includes(y)?"archive":["mp4","mov","avi","mkv","webm"].includes(y)?"video":["mp3","wav","ogg","flac"].includes(y)?"music":"file"},L=p=>{const y=p.name.split(".").pop()?.toLowerCase();return["jpg","jpeg","png","gif","webp","svg","bmp"].includes(y)?"text-purple-600 bg-purple-100":["pdf"].includes(y)?"text-red-600 bg-red-100":["doc","docx"].includes(y)?"text-blue-600 bg-blue-100":["xls","xlsx","csv"].includes(y)?"text-green-600 bg-green-100":["zip","rar","7z","tar","gz"].includes(y)?"text-yellow-600 bg-yellow-100":["mp4","mov","avi","mkv","webm"].includes(y)?"text-pink-600 bg-pink-100":["mp3","wav","ogg","flac"].includes(y)?"text-orange-600 bg-orange-100":"text-gray-600 bg-gray-100"},T=async()=>{try{if(Object.values(c.value).some(d=>d.length>0)){de.error("Please wait for all files to finish uploading");return}if(!V()){de.error("Please fix the validation errors before submitting");return}const y={};a.fields.forEach(d=>{const I=r.value[d.name];d.type==="number"||d.type==="slider"||d.type==="range"?y[d.name]=Number(I):d.type==="text"||d.type==="textarea"||d.type==="date"||d.type==="email"||d.type==="url"||d.type==="tel"||d.type==="search"||d.type==="time"||d.type==="datetime-local"||d.type==="month"||d.type==="week"?y[d.name]=typeof I=="string"?I.trim():I:(d.type==="password"||d.type==="file"||d.type,y[d.name]=I)}),o("submit",{formData:y,originalData:a.initialData})}catch(p){console.error("Error during form submission:",p),de.error("An error occurred during submission")}},J=()=>{r.value=B(),s.value={},c.value={},i.value=!1,o("reset")},q=()=>{o("cancel")};return(p,y)=>(e.openBlock(),e.createElementBlock("div",Y0,[t.title?(e.openBlock(),e.createElementBlock("div",G0,[e.createElementVNode("h2",K0,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("p",X0,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("form",{class:"space-y-6",onSubmit:e.withModifiers(T,["prevent"])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.fields,d=>(e.openBlock(),e.createElementBlock("div",{key:d.name},[d.type==="hidden"?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,"onUpdate:modelValue":I=>r.value[d.name]=I,type:"hidden"},null,8,Q0)),[[e.vModelText,r.value[d.name]]]):(e.openBlock(),e.createBlock(Ct,{key:1,id:`form-${t.entityName}-${d.name}-${Math.random().toString(36).slice(2,5)}`,label:d.label,required:d.required&&!d.disabled,error:s.value[d.name],"error-message":s.value[d.name]},{default:e.withCtx(({fieldId:I,hasError:j,ariaDescribedBy:Q})=>[["text","number","password","color","email","tel","url","search"].includes(d.type)?(e.openBlock(),e.createBlock(ue,{key:0,id:I,modelValue:r.value[d.name],"onUpdate:modelValue":H=>r.value[d.name]=H,type:d.type,placeholder:d.placeholder,disabled:l.value||d.disabled,readonly:d.disabled,class:e.normalizeClass(j?"border-red-500":"border-slate-300"),"aria-describedby":Q},null,8,["id","modelValue","onUpdate:modelValue","type","placeholder","disabled","readonly","class","aria-describedby"])):d.type==="textarea"?(e.openBlock(),e.createBlock(wt,{key:1,id:I,modelValue:r.value[d.name],"onUpdate:modelValue":H=>r.value[d.name]=H,placeholder:d.placeholder,disabled:l.value||d.disabled,rows:d.rows||3,class:e.normalizeClass(["w-full px-3 py-2 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",j?"border-red-500":"border-slate-300"]),"aria-describedby":Q},null,8,["id","modelValue","onUpdate:modelValue","placeholder","disabled","rows","class","aria-describedby"])):d.type==="select"?(e.openBlock(),e.createBlock(we,{key:2,id:I,"model-value":r.value[d.name],options:d.options,placeholder:d.placeholder||"Select an option",disabled:l.value||d.disabled,"has-error":j,"aria-describedby":Q,"onUpdate:modelValue":H=>k(d,H)},null,8,["id","model-value","options","placeholder","disabled","has-error","aria-describedby","onUpdate:modelValue"])):d.type==="multiselect"?(e.openBlock(),e.createBlock(Qo,{key:3,id:I,"model-value":r.value[d.name],options:d.options,disabled:l.value||d.disabled,placeholder:d.placeholder||"Select options","has-error":j,"aria-describedby":Q,"onUpdate:modelValue":H=>r.value[d.name]=H},null,8,["id","model-value","options","disabled","placeholder","has-error","aria-describedby","onUpdate:modelValue"])):d.type==="checkbox"?(e.openBlock(),e.createElementBlock("div",J0,[e.createVNode(ue,{id:I,modelValue:r.value[d.name],"onUpdate:modelValue":H=>r.value[d.name]=H,type:"checkbox",disabled:l.value||d.disabled,class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300 rounded","aria-describedby":Q},null,8,["id","modelValue","onUpdate:modelValue","disabled","aria-describedby"]),e.createVNode(Ne,{for:I,class:"ml-2 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(d.checkboxLabel||d.label),1)]),_:2},1032,["for"])])):d.type==="switch"?(e.openBlock(),e.createElementBlock("div",Z0,[e.createElementVNode("button",{id:I,type:"button",role:"switch","aria-checked":r.value[d.name],disabled:l.value||d.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",r.value[d.name]?"bg-blue-600":"bg-gray-200",l.value||d.disabled?"opacity-50 cursor-not-allowed":"cursor-pointer"]),onClick:H=>r.value[d.name]=!r.value[d.name]},[e.createElementVNode("span",{class:e.normalizeClass(["inline-block h-4 w-4 transform rounded-full bg-white transition-transform",r.value[d.name]?"translate-x-6":"translate-x-1"])},null,2)],10,ev),e.createVNode(Ne,{for:I,class:"ml-3 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(d.checkboxLabel||d.label),1)]),_:2},1032,["for"])])):d.type==="radio"?(e.openBlock(),e.createElementBlock("div",tv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.options,H=>(e.openBlock(),e.createElementBlock("div",{key:H.value,class:"flex items-center"},[e.createVNode(ue,{id:`${I}-${H.value}`,modelValue:r.value[d.name],"onUpdate:modelValue":m=>r.value[d.name]=m,type:"radio",value:H.value,disabled:l.value||d.disabled,class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300","aria-describedby":Q},null,8,["id","modelValue","onUpdate:modelValue","value","disabled","aria-describedby"]),e.createVNode(Ne,{for:`${I}-${H.value}`,class:"ml-2 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(H.label),1)]),_:2},1032,["for"])]))),128))])):d.type==="file"?(e.openBlock(),e.createElementBlock("div",av,[e.createVNode(ue,{id:I,type:"file",accept:d.accept,disabled:l.value||d.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",j?"border-red-500":"border-slate-300"]),"aria-describedby":Q,onChange:H=>g(d,H)},null,8,["id","accept","disabled","class","aria-describedby","onChange"]),d.helpText?(e.openBlock(),e.createElementBlock("p",nv,e.toDisplayString(d.helpText),1)):e.createCommentVNode("",!0)])):d.type==="multifile"?(e.openBlock(),e.createElementBlock("div",ov,[e.createElementVNode("div",{class:e.normalizeClass(["border-2 border-dashed rounded-xl cursor-pointer transition-all duration-200",u.value[d.name]?"border-blue-500 bg-blue-50 ring-2 ring-blue-200":j?"border-red-300 hover:border-red-400 bg-red-50/50":"border-gray-300 hover:border-gray-400 hover:bg-gray-50",l.value||d.disabled?"opacity-50 cursor-not-allowed":""]),onDrop:H=>v(d,H),onDragover:x,onDragenter:H=>D(d,H),onDragleave:H=>S(d,H),onClick:H=>C(d.name)},[e.createElementVNode("input",{ref_for:!0,ref:H=>z(d.name,H),type:"file",multiple:d.multiple!==!1,accept:d.accept,class:"hidden",disabled:l.value||d.disabled,onChange:H=>M(d,H)},null,40,rv),e.createElementVNode("div",sv,[y[1]||(y[1]=e.createElementVNode("div",{class:"bg-gray-100 rounded-full p-2.5 mr-3"},[e.createElementVNode("svg",{class:"h-6 w-6 text-gray-600",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M3 16.5v2.25A2.25 2.25 0 005.25 21h13.5A2.25 2.25 0 0021 18.75V16.5m-13.5-9L12 3m0 0l4.5 4.5M12 3v13.5"})])],-1)),e.createElementVNode("div",iv,[y[0]||(y[0]=e.createElementVNode("p",{class:"text-sm font-medium text-gray-700"},[e.createElementVNode("span",{class:"text-blue-600 font-semibold"},"Click to upload"),e.createTextVNode(" or drag and drop ")],-1)),e.createElementVNode("p",cv,[e.createTextVNode(e.toDisplayString(d.maxSize?`Up to ${E(d.maxSize)}`:"No size limit")+" ",1),d.accept?(e.openBlock(),e.createElementBlock("span",dv,"• "+e.toDisplayString(d.accept),1)):e.createCommentVNode("",!0),d.maxFiles?(e.openBlock(),e.createElementBlock("span",uv,"• Max "+e.toDisplayString(d.maxFiles)+" files",1)):e.createCommentVNode("",!0)])])])],42,lv),d.helpText?(e.openBlock(),e.createElementBlock("p",mv,e.toDisplayString(d.helpText),1)):e.createCommentVNode("",!0),c.value[d.name]?.length>0?(e.openBlock(),e.createElementBlock("div",fv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value[d.name],H=>(e.openBlock(),e.createElementBlock("div",{key:H.id,class:"flex items-center justify-between p-3 bg-white border border-gray-200 rounded-lg"},[e.createElementVNode("div",pv,[e.createElementVNode("div",gv,[(e.openBlock(),e.createElementBlock("svg",vv,[y[2]||(y[2]=e.createElementVNode("circle",{cx:"18",cy:"18",r:"16",fill:"none",stroke:"currentColor","stroke-width":"3"},null,-1)),e.createElementVNode("circle",{cx:"18",cy:"18",r:"16",fill:"none",stroke:"#3B82F6","stroke-width":"3","stroke-linecap":"round","stroke-dasharray":`${H.progress} 100`,transform:"rotate(-90 18 18)"},null,8,hv)])),e.createElementVNode("span",yv,e.toDisplayString(Math.round(H.progress))+"% ",1)]),e.createElementVNode("div",bv,[e.createElementVNode("span",xv,e.toDisplayString(H.file.name),1),y[3]||(y[3]=e.createElementVNode("span",{class:"text-xs text-gray-500"},"Uploading...",-1))])]),e.createElementVNode("button",{type:"button",class:"text-gray-400 hover:text-red-500 hover:bg-red-50 rounded-full p-1 transition-colors ml-2",onClick:e.withModifiers(m=>U(d,H.id),["stop"])},[...y[4]||(y[4]=[e.createElementVNode("svg",{class:"h-4 w-4",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})],-1)])],8,kv)]))),128))])):e.createCommentVNode("",!0),r.value[d.name]?.length>0?(e.openBlock(),e.createElementBlock("div",wv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value[d.name],(H,m)=>(e.openBlock(),e.createElementBlock("div",{key:`uploaded-${m}`,class:"flex items-center justify-between p-3 bg-white border border-gray-200 rounded-lg hover:shadow-sm transition-shadow"},[e.createElementVNode("div",Cv,[e.createElementVNode("div",{class:e.normalizeClass(["rounded-lg p-2 flex-shrink-0",L(H)])},[(e.openBlock(),e.createElementBlock("svg",Bv,[$(H)==="image"?(e.openBlock(),e.createElementBlock("path",Vv)):(e.openBlock(),e.createElementBlock("path",Ev))]))],2),e.createElementVNode("div",Nv,[e.createElementVNode("span",Sv,e.toDisplayString(H.name),1),e.createElementVNode("span",$v,e.toDisplayString(E(H.size)),1)])]),e.createElementVNode("button",{type:"button",class:"text-gray-400 hover:text-red-500 hover:bg-red-50 rounded-full p-1.5 transition-colors ml-2",disabled:l.value||d.disabled,onClick:e.withModifiers(w=>te(d,m),["stop"])},[...y[5]||(y[5]=[e.createElementVNode("svg",{class:"h-4 w-4",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M14.74 9l-.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 01-2.244 2.077H8.084a2.25 2.25 0 01-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 00-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 013.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 00-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 00-7.5 0"})],-1)])],8,zv)]))),128))])):e.createCommentVNode("",!0),r.value[d.name]?.length>0?(e.openBlock(),e.createElementBlock("p",Dv,[e.createTextVNode(e.toDisplayString(r.value[d.name].length)+" file(s) uploaded ",1),d.maxFiles?(e.openBlock(),e.createElementBlock("span",Fv," of "+e.toDisplayString(d.maxFiles)+" max",1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])):d.type==="slider"?(e.openBlock(),e.createBlock(Vt,{key:9,"model-value":r.value[d.name],min:d.min,max:d.max,step:d.step,disabled:l.value||d.disabled,"onUpdate:modelValue":H=>h(d,H)},null,8,["model-value","min","max","step","disabled","onUpdate:modelValue"])):d.type==="range"?(e.openBlock(),e.createElementBlock("div",Tv,[e.createElementVNode("div",Av,[e.createVNode(ue,{id:I,modelValue:r.value[d.name],"onUpdate:modelValue":H=>r.value[d.name]=H,type:"range",min:d.min,max:d.max,step:d.step||1,disabled:l.value||d.disabled,class:"flex-1","aria-describedby":Q},null,8,["id","modelValue","onUpdate:modelValue","min","max","step","disabled","aria-describedby"]),e.createElementVNode("span",Mv,e.toDisplayString(r.value[d.name]),1)])])):d.type==="date"?(e.openBlock(),e.createBlock(nt,{key:11,id:I,modelValue:r.value[d.name],"onUpdate:modelValue":H=>r.value[d.name]=H,disabled:l.value||d.disabled,required:d.required,min:d.min,max:d.max,placeholder:d.placeholder||"Select date",format:d.format||"MM/DD/YYYY",clearable:d.clearable!==!1,"show-today":d.showToday!==!1,"calendar-position":d.calendarPosition||"left-0 bottom-full","aria-describedby":Q},null,8,["id","modelValue","onUpdate:modelValue","disabled","required","min","max","placeholder","format","clearable","show-today","calendar-position","aria-describedby"])):d.type==="time"?(e.openBlock(),e.createBlock(ue,{key:12,id:I,modelValue:r.value[d.name],"onUpdate:modelValue":H=>r.value[d.name]=H,type:"time",disabled:l.value||d.disabled,class:e.normalizeClass(j?"border-red-500":"border-slate-300"),"aria-describedby":Q},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):d.type==="datetime-local"?(e.openBlock(),e.createBlock(ue,{key:13,id:I,modelValue:r.value[d.name],"onUpdate:modelValue":H=>r.value[d.name]=H,type:"datetime-local",disabled:l.value||d.disabled,class:e.normalizeClass(j?"border-red-500":"border-slate-300"),"aria-describedby":Q},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):d.type==="month"?(e.openBlock(),e.createBlock(ue,{key:14,id:I,modelValue:r.value[d.name],"onUpdate:modelValue":H=>r.value[d.name]=H,type:"month",disabled:l.value||d.disabled,class:e.normalizeClass(j?"border-red-500":"border-slate-300"),"aria-describedby":Q},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):d.type==="week"?(e.openBlock(),e.createBlock(ue,{key:15,id:I,modelValue:r.value[d.name],"onUpdate:modelValue":H=>r.value[d.name]=H,type:"week",disabled:l.value||d.disabled,class:e.normalizeClass(j?"border-red-500":"border-slate-300"),"aria-describedby":Q},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",Lv,[t.showReset?(e.openBlock(),e.createBlock(me,{key:0,type:"button",variant:"outline",disabled:l.value,onClick:J},{default:e.withCtx(()=>[...y[6]||(y[6]=[e.createTextVNode(" Reset ",-1)])]),_:1},8,["disabled"])):e.createCommentVNode("",!0),t.showCancel?(e.openBlock(),e.createBlock(me,{key:1,type:"button",variant:"outline",disabled:l.value,onClick:q},{default:e.withCtx(()=>[...y[7]||(y[7]=[e.createTextVNode(" Cancel ",-1)])]),_:1},8,["disabled"])):e.createCommentVNode("",!0),e.createVNode(me,{type:"submit",disabled:l.value,loading:l.value,variant:"default"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.submitLabel),1)]),_:1},8,["disabled","loading"])])],32)]))}},Pv={key:0,class:"flex items-center justify-between p-4 border-b border-gray-200 flex-shrink-0 lg:hidden"},jv={class:"text-lg font-bold text-gray-900"},Ov={class:"flex-1 overflow-y-auto overflow-x-hidden p-4"},Iv={class:"space-y-2"},_v={key:0},Rv={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"},Uv=["onClick"],qv={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"},Hv={key:1,class:"absolute top-1.5 right-1.5 w-2 h-2 bg-blue-500 rounded-full"},Wv={key:1,class:"border-t border-gray-200 p-4 flex-shrink-0"},Yv={key:0,class:"absolute top-1.5 right-1.5 w-2 h-2 bg-blue-500 rounded-full"},Gv={class:"sticky top-0 bg-white border-b border-gray-200 z-10"},Kv={class:"flex items-center justify-between p-4"},Xv={class:"flex-1 text-sm font-bold text-gray-900 ml-2"},Qv={key:0,class:"px-4 pb-3"},Jv={class:"relative"},Zv=["placeholder"],eh={class:"absolute left-3 top-1/2 transform -translate-y-1/2 text-gray-400"},th={key:0,class:"mt-2 text-xs text-gray-500 px-1"},ah={class:"p-3"},nh={key:0,class:"px-3 py-8 text-center"},oh={key:1,class:"space-y-1"},lh={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"},rh={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"},sh={class:"p-3"},ih={class:"space-y-1"},ch={key:0,class:"px-3 py-2 text-xs font-semibold text-gray-500 uppercase tracking-wider"},dh={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"},el={__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:""},showSearch:{type:Boolean,default:!1},searchPlaceholder:{type:String,default:"Search..."},searchableMenus:{type:Array,default:()=>[]}},emits:["navigate","update:mobileOpen","search"],setup(t,{expose:n,emit:a}){const o=t,l=a,r=e.ref(!1),s=e.ref(!1),i=e.ref(null),c=e.ref(!1),u=e.ref(""),b=e.computed(()=>o.mobileOpen),C=e.computed(()=>r.value?{}:{left:`${o.sidebarWidth}px`}),z=e.computed(()=>r.value?{}:{left:`${o.sidebarWidth}px`}),B=e.computed(()=>{if(!o.showSearch||!i.value)return!1;const q=i.value.name?.toLowerCase()||"";return o.searchableMenus.some(p=>q.includes(p.toLowerCase()))}),V=e.computed(()=>{if(!i.value?.subItems)return[];if(!u.value.trim())return i.value.subItems;const q=u.value.toLowerCase().trim();return i.value.subItems.filter(p=>{const y=p.label?.toLowerCase()||"",d=p.name?.toLowerCase()||"";return y.includes(q)||d.includes(q)})}),k=e.computed(()=>{if(r.value)return 0;let q=o.sidebarWidth;return s.value&&(q+=220),c.value&&(q+=220),q}),h=q=>{l("navigate",q),r.value&&g();const p=s.value&&i.value&&i.value.subItems.some(d=>d.route===q.route),y=c.value&&o.managementSettings.some(d=>d.route===q.route);(r.value||!(p||y))&&_()},g=()=>{l("update:mobileOpen",!1)},v=q=>q.subItems&&q.subItems.length>0,x=q=>{c.value&&M(),s.value&&i.value!==q?(S(),setTimeout(()=>{i.value=q,s.value=!0,u.value=""},300)):s.value?i.value===q&&S():(i.value=q,s.value=!0,u.value=""),r.value&&g()},D=()=>{s.value&&S(),c.value?M():c.value=!0,r.value&&g()},S=()=>{s.value=!1,u.value="",setTimeout(()=>{i.value=null},300)},M=()=>{c.value=!1},_=()=>{S(),M()},te=q=>{h(q)},U=q=>{h(q)},E=q=>{u.value=q,l("search",{query:q,menu:i.value?.name})},$=()=>{u.value=""},L=q=>{const p=o.currentPath;return q.route?!!(p===q.route||p.startsWith(q.route+"/")):q.subItems&&q.subItems.length>0?q.subItems.some(y=>y.route?p===y.route||p.startsWith(y.route+"/"):!1):!1},T=()=>{const q=r.value;r.value=window.innerWidth<1024,q&&!r.value&&b.value&&g()},J=q=>{q.key==="Escape"&&(s.value||c.value?_():r.value&&b.value&&g())};return e.onMounted(()=>{T(),window.addEventListener("resize",T),document.addEventListener("keydown",J)}),e.onUnmounted(()=>{window.removeEventListener("resize",T),document.removeEventListener("keydown",J)}),n({isMobile:r,isMobileOpen:b,submenuOpen:s,managementSettingsOpen:c,contentMarginLeft:k,closeAllMenus:_}),(q,p)=>{const y=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(()=>[b.value&&r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-30 lg:hidden",onClick:g})):e.createCommentVNode("",!0)]),_:1}),e.createElementVNode("aside",{class:e.normalizeClass(e.unref(N)("fixed left-0 z-40 border-r overflow-hidden flex flex-col","transition-all duration-300 ease-in-out","bg-white border-gray-200",r.value?e.unref(N)("transform h-screen",b.value?"translate-x-0":"-translate-x-full"):"translate-x-0 h-[calc(100vh-4rem)]")),style:e.normalizeStyle({width:t.sidebarWidth+"px",top:r.value?"0px":"4rem"})},[r.value?(e.openBlock(),e.createElementBlock("div",Pv,[e.createElementVNode("h2",jv,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:g},[...p[2]||(p[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:"M6 18L18 6M6 6l12 12"})],-1)])])])):e.createCommentVNode("",!0),e.createElementVNode("nav",Ov,[e.createElementVNode("div",Iv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.navigationItems,d=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:d.name||d.label},[d.type==="link"?(e.openBlock(),e.createElementBlock("div",_v,[v(d)?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(N)("flex flex-col items-center justify-center rounded-xl transition-all duration-200 cursor-pointer group relative py-4 px-3",L(d)?"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:I=>x(d)},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)("flex items-center justify-center rounded-lg transition-colors mb-2","w-12 h-12",L(d)?"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(K,{icon:d.icon,class:"w-6 h-6"},null,8,["icon"])],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(N)("text-xs font-medium text-center",L(d)?"text-blue-700 font-semibold":"text-gray-500 group-hover:text-gray-900"))},e.toDisplayString(d.label),3),d.badge?(e.openBlock(),e.createElementBlock("span",qv,e.toDisplayString(d.badge),1)):e.createCommentVNode("",!0),L(d)&&v(d)?(e.openBlock(),e.createElementBlock("div",Hv)):e.createCommentVNode("",!0)],10,Uv)):(e.openBlock(),e.createBlock(y,{key:0,to:d.route,class:e.normalizeClass(e.unref(N)("flex flex-col items-center justify-center rounded-xl transition-all duration-200 group relative py-4 px-3",L(d)?"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:I=>h(d)},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)("flex items-center justify-center rounded-lg transition-colors mb-2","w-12 h-12",L(d)?"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(K,{icon:d.icon,class:"w-6 h-6"},null,8,["icon"])],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(N)("text-xs font-medium text-center",L(d)?"text-blue-700 font-semibold":"text-gray-500 group-hover:text-gray-900"))},e.toDisplayString(d.label),3),d.badge?(e.openBlock(),e.createElementBlock("span",Rv,e.toDisplayString(d.badge),1)):e.createCommentVNode("",!0)]),_:2},1032,["to","class","onClick"]))])):e.createCommentVNode("",!0)],64))),128))])]),t.showManagementSettings?(e.openBlock(),e.createElementBlock("div",Wv,[e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)("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:D},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)("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(K,{icon:"cog",class:"w-6 h-6"})],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(N)("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",Yv)):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(()=>[s.value?(e.openBlock(),e.createElementBlock("aside",{key:0,class:e.normalizeClass(e.unref(N)("fixed z-40 bg-white border-r border-gray-200 overflow-y-auto shadow-lg",r.value?"left-0 w-52 top-20 h-screen":"w-56 top-16 h-[calc(100vh-4rem)]")),style:e.normalizeStyle(C.value)},[e.createElementVNode("div",Gv,[e.createElementVNode("div",Kv,[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:S},[...p[3]||(p[3]=[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",Xv,e.toDisplayString(i.value?.label),1)]),B.value?(e.openBlock(),e.createElementBlock("div",Qv,[e.createElementVNode("div",Jv,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":p[0]||(p[0]=d=>u.value=d),type:"text",placeholder:t.searchPlaceholder,class:"w-full px-3 py-2 pl-9 pr-9 text-sm border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent transition-all",onInput:p[1]||(p[1]=d=>E(u.value))},null,40,Zv),[[e.vModelText,u.value]]),e.createElementVNode("div",eh,[e.createVNode(K,{icon:"search",class:"w-4 h-4"})]),u.value?(e.openBlock(),e.createElementBlock("button",{key:0,class:"absolute right-2 top-1/2 transform -translate-y-1/2 text-gray-400 hover:text-gray-600 transition-colors p-1",onClick:$},[e.createVNode(K,{icon:"times",class:"w-4 h-4"})])):e.createCommentVNode("",!0)]),u.value?(e.openBlock(),e.createElementBlock("div",th,e.toDisplayString(V.value.length)+" result"+e.toDisplayString(V.value.length!==1?"s":"")+" found ",1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),e.createElementVNode("nav",ah,[B.value&&u.value&&V.value.length===0?(e.openBlock(),e.createElementBlock("div",nh,[e.createVNode(K,{icon:"search",class:"w-12 h-12 mx-auto text-gray-300 mb-3"}),p[4]||(p[4]=e.createElementVNode("p",{class:"text-sm text-gray-500 mb-1"}," No results found ",-1)),p[5]||(p[5]=e.createElementVNode("p",{class:"text-xs text-gray-400"}," Try a different search term ",-1))])):(e.openBlock(),e.createElementBlock("div",oh,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,d=>(e.openBlock(),e.createBlock(y,{key:d.name,to:d.route,class:e.normalizeClass(e.unref(N)("flex items-center px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",L(d)?"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:I=>te(d)},{default:e.withCtx(()=>[L(d)?(e.openBlock(),e.createElementBlock("div",lh)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)("flex items-center justify-center w-8 h-8 rounded-lg mr-3 flex-shrink-0 transition-colors ml-2",L(d)?"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"))},[d.icon?(e.openBlock(),e.createBlock(K,{key:0,icon:d.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(N)("flex-1 truncate font-semibold",L(d)?"text-blue-700":"text-gray-700"))},e.toDisplayString(d.label),3),d.badge?(e.openBlock(),e.createElementBlock("span",rh,e.toDisplayString(d.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(()=>[c.value?(e.openBlock(),e.createElementBlock("aside",{key:0,class:e.normalizeClass(e.unref(N)("fixed z-40 bg-white border-r border-gray-200 overflow-y-auto shadow-lg",r.value?"left-0 w-52 top-20 h-full":"w-58 h-[calc(100vh-4rem)]")),style:e.normalizeStyle({...z.value,top:r.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:M},[...p[6]||(p[6]=[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)])]),p[7]||(p[7]=e.createElementVNode("h3",{class:"flex-1 text-sm font-bold text-gray-900 ml-2"}," Management Settings ",-1))])]),e.createElementVNode("nav",sh,[e.createElementVNode("div",ih,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.managementSettings,d=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:d.name},[d.type==="section"?(e.openBlock(),e.createElementBlock("div",ch,e.toDisplayString(d.label),1)):d.route?(e.openBlock(),e.createBlock(y,{key:1,to:d.route,class:e.normalizeClass(e.unref(N)("flex items-center px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",L(d)?"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:I=>U(d)},{default:e.withCtx(()=>[L(d)?(e.openBlock(),e.createElementBlock("div",dh)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)("flex items-center justify-center w-8 h-8 rounded-lg mr-3 flex-shrink-0 transition-colors",L(d)?"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"))},[d.icon?(e.openBlock(),e.createBlock(K,{key:0,icon:d.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(N)("flex-1 truncate font-semibold",L(d)?"text-blue-700":"text-gray-700"))},e.toDisplayString(d.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(()=>[(s.value||c.value)&&r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-30 bg-transparent",onClick:_})):e.createCommentVNode("",!0)]),_:1})])}}},tl={__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))}},uh={key:0,class:"absolute left-3 top-0 w-0.5 h-full bg-slate-200"},mh={class:"z-10 flex items-center justify-center w-6 h-6 rounded-full border-2 border-blue-500 bg-white text-blue-500"},fh={class:"text-slate-900 font-medium"},ph={key:0,class:"text-slate-500 text-sm"},gh={class:"mt-2 text-slate-600 text-sm"},al={__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",uh)):e.createCommentVNode("",!0),e.createElementVNode("div",mh,[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",fh,[e.renderSlot(n.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])]),t.subtitle?(e.openBlock(),e.createElementBlock("p",ph,[e.renderSlot(n.$slots,"subtitle",{},()=>[e.createTextVNode(e.toDisplayString(t.subtitle),1)])])):e.createCommentVNode("",!0),e.createElementVNode("div",gh,[e.renderSlot(n.$slots,"default")])],2)],2))}},vh={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())}}},hh={class:"container mx-auto px-4 relative z-10"},yh={class:"grid lg:grid-cols-10 gap-8 items-center min-h-screen"},bh={class:"lg:col-span-6 text-white text-center lg:text-left space-y-6"},xh={class:"mb-6"},kh={class:"text-4xl lg:text-6xl font-bold mb-2"},wh={class:"text-white"},Ch={class:"flex items-center justify-center lg:justify-start mb-6"},Bh={class:"text-3xl lg:text-4xl font-bold text-white"},Vh={class:"lg:col-span-4"},Eh={class:"bg-white rounded-lg shadow-xl p-6 lg:p-8 max-w-md mx-auto"},Nh={key:0,class:"mb-6"},Sh={class:"text-center"},$h={class:"text-2xl font-bold text-gray-900"},zh={key:0,class:"text-gray-600 mt-2"},Dh={class:"space-y-6"},Fh={key:1,class:"mt-6"},Th={key:0,class:"mt-6 text-center"},Ah={class:"absolute bottom-4 right-4 text-right"},Mh={class:"flex items-end justify-end mb-2"},Lh={class:"text-right mr-3"},Ph={class:"text-red-500 font-bold text-xs"},jh={class:"text-white text-xs"},Oh={class:"text-white/70 text-xs"},Ih={class:"w-8 h-8 bg-red-500 rounded flex items-center justify-center text-white font-bold text-xs"},_h={class:"text-white/70 text-xs"},Rh={class:"absolute bottom-4 left-4 flex gap-2"},Uh=["href"];function qh(t,n,a,o,l,r){const s=e.resolveComponent("router-view"),i=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",hh,[e.createElementVNode("div",yh,[e.createElementVNode("div",bh,[e.createElementVNode("div",xh,[e.createElementVNode("div",kh,[e.createElementVNode("span",{style:e.normalizeStyle({color:a.primaryColor})},e.toDisplayString(a.primaryLogoPrefix),5),e.createElementVNode("span",wh,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",Ch,[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",Bh,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",Vh,[e.createElementVNode("div",Eh,[t.$slots["card-header"]||a.title?(e.openBlock(),e.createElementBlock("div",Nh,[e.renderSlot(t.$slots,"card-header",{},()=>[e.createElementVNode("div",Sh,[e.createElementVNode("h1",$h,e.toDisplayString(a.title),1),a.subtitle?(e.openBlock(),e.createElementBlock("p",zh,e.toDisplayString(a.subtitle),1)):e.createCommentVNode("",!0)])])])):e.createCommentVNode("",!0),e.createElementVNode("div",Dh,[e.createVNode(s)]),t.$slots["card-footer"]?(e.openBlock(),e.createElementBlock("div",Fh,[e.renderSlot(t.$slots,"card-footer")])):e.createCommentVNode("",!0)]),t.$slots.links?(e.openBlock(),e.createElementBlock("div",Th,[e.renderSlot(t.$slots,"links")])):e.createCommentVNode("",!0)])])]),e.createElementVNode("div",Ah,[e.createElementVNode("div",Mh,[e.createElementVNode("div",Lh,[e.createElementVNode("div",Ph,e.toDisplayString(a.companyName),1),e.createElementVNode("div",jh,e.toDisplayString(a.companyType),1),e.createElementVNode("div",Oh,e.toDisplayString(a.companyTagline),1)]),e.createElementVNode("div",Ih,e.toDisplayString(a.companyInitials),1)]),e.createElementVNode("div",_h,[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",Rh,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.socialLinks,c=>(e.openBlock(),e.createElementBlock("a",{key:c.name,href:c.url,class:e.normalizeClass(["w-8 h-7 flex items-center justify-center rounded text-xs transition-colors",c.variant==="primary"?"bg-blue-600 hover:bg-blue-700 text-white":c.variant==="info"?"bg-cyan-500 hover:bg-cyan-600 text-white":"bg-gray-600 hover:bg-gray-700 text-white"])},[e.createVNode(i,{icon:["fab",c.icon]},null,8,["icon"])],10,Uh))),128))])],4)}const nl=Et(vh,[["render",qh]]),Hh={class:"min-h-screen bg-gray-50"},Wh={class:"flex-1"},Yh={key:0,class:"bg-white border-b border-gray-200"},Gh={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-4"},Kh={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8"},ol={__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"),l=e.resolveComponent("MainNavigation"),r=e.resolveComponent("Button"),s=e.resolveComponent("Header"),i=e.resolveComponent("Breadcrumb"),c=e.resolveComponent("Text"),u=e.resolveComponent("Footer");return e.openBlock(),e.createElementBlock("div",Hh,[e.createVNode(s,null,{logo:e.withCtx(()=>[e.renderSlot(n.$slots,"logo",{},()=>[e.createVNode(o)])]),navigation:e.withCtx(()=>[e.renderSlot(n.$slots,"navigation",{},()=>[e.createVNode(l,{items:t.navigationItems},null,8,["items"])])]),actions:e.withCtx(()=>[e.renderSlot(n.$slots,"header-actions",{},()=>[e.createVNode(r,{variant:"ghost",size:"sm"},{default:e.withCtx(()=>[...a[0]||(a[0]=[e.createTextVNode(" Sign In ",-1)])]),_:1}),e.createVNode(r,{size:"sm"},{default:e.withCtx(()=>[...a[1]||(a[1]=[e.createTextVNode(" Get Started ",-1)])]),_:1})])]),_:3}),e.createElementVNode("main",Wh,[t.showBreadcrumb?(e.openBlock(),e.createElementBlock("div",Yh,[e.createElementVNode("div",Gh,[e.renderSlot(n.$slots,"breadcrumb",{},()=>[e.createVNode(i,{items:t.breadcrumbItems},null,8,["items"])])])])):e.createCommentVNode("",!0),e.createElementVNode("div",Kh,[e.renderSlot(n.$slots,"default")])]),e.createVNode(u,null,{brand:e.withCtx(()=>[e.renderSlot(n.$slots,"footer-brand",{},()=>[e.createVNode(o,{class:"mb-4"}),e.createVNode(c,{class:"text-gray-600 max-w-md"},{default:e.withCtx(()=>[...a[2]||(a[2]=[e.createTextVNode(" Your application description goes here. ",-1)])]),_:1})])]),_:3})])}}},Xh={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,l=e.ref(!1),r=e.ref(!1),s=e.ref(navigator.onLine),i=e.ref(`err_${Date.now()}_${Math.random().toString(36).substr(2,9)}`),c=e.ref(!1),u=()=>{s.value=navigator.onLine};e.onMounted(()=>{window.addEventListener("online",u),window.addEventListener("offline",u)}),e.onUnmounted(()=>{window.removeEventListener("online",u),window.removeEventListener("offline",u)});const b=e.computed(()=>{const y={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 y[t.errorType]||y[404]}),C=e.computed(()=>b.value),z=e.computed(()=>t.errorTitle||C.value.title),B=e.computed(()=>t.errorMessage||C.value.message),V=e.computed(()=>C.value.homeButtonIcon||"🏠"),k=e.computed(()=>t.showAdditionalInfo?C.value.additionalInfo:null),h=()=>{o?o.push(t.homeUrl):window.location.href=t.homeUrl},g=()=>{o&&window.history.length>1?o.back():window.history.length>1?window.history.back():h(),n("back")},v=async()=>{l.value=!0;try{await new Promise(y=>setTimeout(y,1e3)),window.location.reload()}catch(y){console.error("Retry failed:",y)}finally{l.value=!1}n("retry")},x=e.computed(()=>["min-h-screen relative flex items-center justify-center","px-4 sm:px-6 lg:px-8"]),D=e.computed(()=>["absolute inset-0 -z-10"]),S=e.computed(()=>["w-full max-w-2xl mx-auto text-center"]),M=e.computed(()=>["mb-8"]),_=e.computed(()=>["space-y-8"]),te=e.computed(()=>["flex justify-center mb-6"]),U=e.computed(()=>["w-32 h-32 flex items-center justify-center"]),E=e.computed(()=>["space-y-4"]),$=e.computed(()=>["text-6xl font-bold text-slate-300 mb-4"]),L=e.computed(()=>["text-3xl font-bold text-slate-900"]),T=e.computed(()=>["text-lg text-slate-600 max-w-lg mx-auto"]),J=e.computed(()=>["mt-8"]),q=e.computed(()=>["mt-8"]),p=e.computed(()=>["mt-6"]);return{isRetrying:l,reportSent:r,isOnline:s,errorId:i,isDev:c,errorConfig:C,title:z,message:B,homeButtonIcon:V,additionalInfoConfig:k,goHome:h,goBack:g,retry:v,layoutClasses:x,backgroundClasses:D,contentClasses:S,headerClasses:M,errorContentClasses:_,illustrationClasses:te,iconContainerClasses:U,detailsClasses:E,codeClasses:$,titleClasses:L,messageClasses:T,actionsClasses:J,additionalInfoClasses:q,helpClasses:p}}},Qh={class:"flex justify-center"},Jh={class:"flex items-center gap-3"},Zh={class:"text-2xl font-bold text-slate-900"},ey={key:1,class:"bg-red-100 border border-red-200 rounded-lg p-4 mx-auto max-w-md mb-6"},ty={class:"flex flex-col sm:flex-row gap-4 justify-center"},ay=["disabled"],ny={key:0,class:"animate-spin"},oy={key:1},ly=["disabled"],ry={key:0},sy={key:1},iy={key:0,class:"mt-8 max-w-md mx-auto"},cy={class:"bg-white rounded-lg border border-slate-200 shadow-sm p-6"},dy={class:"text-lg font-semibold text-slate-900 mb-4"},uy={class:"space-y-3"},my={class:"text-sm text-slate-600"},fy=["href"],py={key:5,class:"text-xs text-slate-400 font-mono mt-4"};function gy(t,n,a,o,l,r){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",Qh,[e.renderSlot(t.$slots,"logo",{},()=>[e.createElementVNode("div",Jh,[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",Zh,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",ey,[...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",ty,[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]=(...s)=>o.goHome&&o.goHome(...s))},[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]=(...s)=>o.goBack&&o.goBack(...s))},[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]=(...s)=>o.retry&&o.retry(...s))},[o.isRetrying?(e.openBlock(),e.createElementBlock("span",ny,"↻")):(e.openBlock(),e.createElementBlock("span",oy,"🔄")),e.createTextVNode(" "+e.toDisplayString(o.isRetrying?"Retrying...":a.retryButtonText),1)],8,ay)):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]=s=>t.$emit("contact-support"))},[o.reportSent?(e.openBlock(),e.createElementBlock("span",ry,"✓")):(e.openBlock(),e.createElementBlock("span",sy,"📝")),e.createTextVNode(" "+e.toDisplayString(o.reportSent?"Report Sent":"Contact Support"),1)],8,ly)):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",iy,[e.createElementVNode("div",cy,[e.createElementVNode("h3",dy,e.toDisplayString(o.additionalInfoConfig.title),1),e.createElementVNode("ul",uy,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.additionalInfoConfig.items,(s,i)=>(e.openBlock(),e.createElementBlock("li",{key:i,class:"flex items-start gap-3 text-sm text-slate-600"},[e.createElementVNode("span",{class:e.normalizeClass(`w-4 h-4 text-${s.iconColor||"slate-400"} flex-shrink-0 mt-0.5`)},e.toDisplayString(s.icon),3),e.createElementVNode("span",null,e.toDisplayString(s.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",my,[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,fy)):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0),o.isDev?(e.openBlock(),e.createElementBlock("div",py," Error ID: "+e.toDisplayString(o.errorId),1)):e.createCommentVNode("",!0)],2)],2)],2)}const ll=Et(Xh,[["render",gy]]),vy={class:"w-full h-full relative"},hy={key:0,class:"w-full h-full flex items-center justify-center"},yy=["width","height","viewBox"],by=["d","fill","stroke","stroke-width","onMouseenter","onClick"],xy=["cx","cy","r","fill"],ky={key:1},wy=["x","y"],Cy=["x","y"],By={key:2},Vy=["x","y"],Ey={key:3},Ny=["transform"],Sy=["fill"],$y={class:"bg-slate-900 text-white px-4 py-3 rounded-lg shadow-2xl border border-slate-700 min-w-[180px]"},zy={class:"flex items-center gap-2 mb-1.5"},Dy={class:"font-semibold text-sm"},Fy={class:"flex items-baseline gap-2 ml-5"},Ty={class:"text-2xl font-bold"},Ay={class:"mt-1 ml-5"},My={class:"text-xs text-slate-300"},Ja={__name:"PieChart",props:{data:{type:Array,required:!0},labels:{type:Array,default:()=>[]},colors:{type:Array,default:()=>["#3b82f6","#ef4444","#10b981","#f59e0b","#8b5cf6","#ec4899","#14b8a6","#f97316"]},width:{type:Number,default:400},height:{type:Number,default:300},doughnut:{type:Boolean,default:!1},innerRadiusRatio:{type:Number,default:.6},showValues:{type:Boolean,default:!0},showPercentages:{type:Boolean,default:!0},showLegend:{type:Boolean,default:!0},showCenterText:{type:Boolean,default:!0},legendPosition:{type:String,default:"bottom",validator:t=>["bottom","right"].includes(t)},strokeColor:{type:String,default:"#ffffff"},strokeWidth:{type:Number,default:2},centerFill:{type:String,default:"#ffffff"},sliceClasses:{type:String,default:"transition-all duration-200 hover:opacity-80 cursor-pointer"},valueLabelClasses:{type:String,default:"fill-white text-sm font-bold drop-shadow-md"},centerTextClasses:{type:String,default:"fill-slate-900 text-2xl font-bold"},centerLabelClasses:{type:String,default:"fill-slate-600 text-sm"},legendTextClasses:{type:String,default:"fill-slate-700 text-xs font-medium"}},emits:["slice-click","slice-hover"],setup(t,{emit:n}){const a=t,o=n,l=e.ref({visible:!1,x:0,y:0,label:"",value:0,percentage:"0",color:""}),r=e.computed(()=>a.data.reduce((D,S)=>D+(S||0),0)||0),s=e.computed(()=>a.data.length>0&&r.value>0),i=e.computed(()=>a.showLegend&&a.legendPosition==="right"?a.width/3:a.width/2),c=e.computed(()=>{const x=a.showLegend&&a.legendPosition==="bottom"?Math.ceil(a.data.length/2)*25:0;return(a.height-x)/2}),u=e.computed(()=>{const x=a.showLegend&&a.legendPosition==="bottom"?Math.ceil(a.data.length/2)*25:0,D=a.height-x,S=a.showLegend&&a.legendPosition==="right"?a.width*.6:a.width;return Math.min(S,D)/2-40}),b=e.computed(()=>a.doughnut?u.value*a.innerRadiusRatio:0),C=e.computed(()=>{if(!s.value)return[];const x=r.value;let D=-Math.PI/2;return a.data.map((S,M)=>{const _=S||0,te=(_/x*100).toFixed(1),U=_/x*2*Math.PI,E=D+U,$=z(i.value,c.value,u.value,b.value,D,E),L=a.doughnut?(u.value+b.value)/2:u.value*.7,T=D+U/2,J=i.value+Math.cos(T)*L,q=c.value+Math.sin(T)*L,p={value:_,percentage:te,path:$,labelX:J,labelY:q,label:a.labels[M]||`Item ${M+1}`,startAngle:D,endAngle:E};return D=E,p}).filter(S=>S.value>0)}),z=(x,D,S,M,_,te)=>{const U=x+S*Math.cos(_),E=D+S*Math.sin(_),$=x+S*Math.cos(te),L=D+S*Math.sin(te),T=te-_>Math.PI?1:0;if(M===0)return`M ${x} ${D} L ${U} ${E} A ${S} ${S} 0 ${T} 1 ${$} ${L} Z`;{const J=x+M*Math.cos(te),q=D+M*Math.sin(te),p=x+M*Math.cos(_),y=D+M*Math.sin(_);return`M ${U} ${E} A ${S} ${S} 0 ${T} 1 ${$} ${L} L ${J} ${q} A ${M} ${M} 0 ${T} 0 ${p} ${y} Z`}},B=x=>a.colors[x%a.colors.length],V=x=>{if(a.legendPosition==="right")return a.width*.65;const S=x%2;return a.width/4+S*(a.width/2)},k=x=>{if(a.legendPosition==="right")return 40+x*25;const S=Math.floor(x/2),M=Math.ceil(a.data.length/2)*25;return a.height-M+20+S*25},h=(x,D,S)=>{l.value={visible:!0,x:x.clientX,y:x.clientY,label:D.label,value:D.value,percentage:D.percentage,color:B(S)},o("slice-hover",{value:D.value,index:S,label:D.label,percentage:D.percentage})},g=()=>{l.value.visible=!1},v=(x,D)=>{o("slice-click",{value:x.value,index:D,label:x.label,percentage:x.percentage})};return(x,D)=>(e.openBlock(),e.createElementBlock("div",vy,[s.value?(e.openBlock(),e.createElementBlock("svg",{key:1,width:t.width,height:t.height,viewBox:`0 0 ${t.width} ${t.height}`,class:"overflow-visible"},[e.createElementVNode("g",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(S,M)=>(e.openBlock(),e.createElementBlock("path",{key:`slice-${M}`,d:S.path,fill:B(M),stroke:t.strokeColor,"stroke-width":t.strokeWidth,class:e.normalizeClass(t.sliceClasses),onMouseenter:_=>h(_,S,M),onMouseleave:g,onClick:_=>v(S,M)},null,42,by))),128))]),t.doughnut?(e.openBlock(),e.createElementBlock("circle",{key:0,cx:i.value,cy:c.value,r:b.value,fill:t.centerFill},null,8,xy)):e.createCommentVNode("",!0),t.doughnut&&t.showCenterText?(e.openBlock(),e.createElementBlock("g",ky,[e.createElementVNode("text",{x:i.value,y:c.value-5,class:e.normalizeClass(t.centerTextClasses),"text-anchor":"middle","dominant-baseline":"middle"},e.toDisplayString(r.value),11,wy),e.createElementVNode("text",{x:i.value,y:c.value+15,class:e.normalizeClass(t.centerLabelClasses),"text-anchor":"middle","dominant-baseline":"middle"}," Total ",10,Cy)])):e.createCommentVNode("",!0),t.showValues?(e.openBlock(),e.createElementBlock("g",By,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(S,M)=>(e.openBlock(),e.createElementBlock("text",{key:`value-${M}`,x:S.labelX,y:S.labelY,class:e.normalizeClass(t.valueLabelClasses),"text-anchor":"middle","dominant-baseline":"middle"},e.toDisplayString(t.showPercentages?`${S.percentage}%`:S.value),11,Vy))),128))])):e.createCommentVNode("",!0),t.showLegend?(e.openBlock(),e.createElementBlock("g",Ey,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(S,M)=>(e.openBlock(),e.createElementBlock("g",{key:`legend-${M}`,transform:`translate(${V(M)}, ${k(M)})`},[e.createElementVNode("rect",{width:12,height:12,fill:B(M),rx:"2"},null,8,Sy),e.createElementVNode("text",{x:18,y:10,class:e.normalizeClass(t.legendTextClasses)},e.toDisplayString(S.label),3)],8,Ny))),128))])):e.createCommentVNode("",!0)],8,yy)):(e.openBlock(),e.createElementBlock("div",hy,[...D[0]||(D[0]=[e.createStaticVNode('<div class="text-center"><div class="text-slate-300 mb-2"><svg class="w-16 h-16 mx-auto" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11 3.055A9.001 9.001 0 1020.945 13H11V3.055z"></path><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M20.488 9H15V3.512A9.025 9.025 0 0120.488 9z"></path></svg></div><p class="text-sm text-slate-500"> No data available </p></div>',1)])])),l.value.visible?(e.openBlock(),e.createElementBlock("div",{key:2,style:e.normalizeStyle({position:"fixed",left:`${l.value.x}px`,top:`${l.value.y}px`,transform:"translate(-50%, -120%)",pointerEvents:"none",zIndex:9999}),class:"animate-in fade-in duration-200"},[e.createElementVNode("div",$y,[e.createElementVNode("div",zy,[e.createElementVNode("div",{style:e.normalizeStyle({backgroundColor:l.value.color}),class:"w-3 h-3 rounded-full shadow-sm"},null,4),e.createElementVNode("p",Dy,e.toDisplayString(l.value.label),1)]),e.createElementVNode("div",Fy,[e.createElementVNode("span",Ty,e.toDisplayString(l.value.value),1),D[1]||(D[1]=e.createElementVNode("span",{class:"text-xs text-slate-400"},"tasks",-1))]),e.createElementVNode("div",Ay,[e.createElementVNode("span",My,e.toDisplayString(l.value.percentage)+"% of total",1)]),D[2]||(D[2]=e.createElementVNode("div",{class:"absolute bottom-0 left-1/2 transform -translate-x-1/2 translate-y-1/2 rotate-45 w-2 h-2 bg-slate-900 border-r border-b border-slate-700"},null,-1))])],4)):e.createCommentVNode("",!0)]))}},Ly={key:0,class:"flex items-center justify-between px-6 py-4 border-b border-slate-200 bg-gradient-to-r from-slate-50 to-slate-100 flex-shrink-0"},Py={class:"flex items-center gap-3"},jy={class:"font-semibold text-lg text-slate-900"},Oy={class:"flex items-center gap-2"},Iy=["disabled"],_y={key:1,class:"absolute top-16 right-4 z-20 bg-white rounded-lg shadow-xl border border-slate-200 p-4 min-w-[250px]"},Ry={class:"flex items-center justify-between mb-3"},Uy={class:"space-y-3"},qy=["for"],Hy=["id","onClick"],Wy={key:2,class:"absolute top-16 right-4 z-20 bg-white rounded-lg shadow-xl border border-slate-200 p-4 min-w-[280px]"},Yy={class:"flex items-center justify-between mb-3"},Gy={class:"space-y-2"},Ky={class:"text-slate-700"},Xy={class:"px-2 py-1 bg-slate-100 border border-slate-300 rounded text-xs font-mono"},Qy={class:"relative flex-1 overflow-hidden"},Jy={key:0,class:"absolute inset-0 bg-white/90 backdrop-blur-sm z-10 flex items-center justify-center"},Zy={class:"w-full h-full flex items-center justify-center"},eb={key:3,class:"border-t border-slate-200 px-6 py-3 bg-slate-50 flex-shrink-0"},rl={__name:"DashboardWidget",props:{id:{type:String,required:!0},title:{type:String,required:!0},icon:{type:String,default:null},requiredRoles:{type:Function,default:null},loading:{type:Boolean,default:!1},height:{type:String,default:"auto"},maxHeight:{type:String,default:"none"},minHeight:{type:String,default:"200px"},width:{type:String,default:"100%"},showRefresh:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},padding:{type:String,default:"normal"},hasRole:{type:Function,default:()=>()=>!1},chartType:{type:String,default:null},chartData:{type:Object,default:null},chartOptions:{type:Object,default:()=>({})},customizationOptions:{type:Array,default:()=>[]}},emits:["refresh","dragstart","dragend","customize","keypress"],setup(t,{emit:n}){const a=t,o=n,l=e.computed(()=>a.requiredRoles?a.requiredRoles(a.hasRole):!0),r=e.computed(()=>({width:a.width,height:a.height!=="auto"?a.height:void 0,maxHeight:a.maxHeight!=="none"?a.maxHeight:void 0,minHeight:a.minHeight})),s={none:"",small:"p-3",normal:"p-4",large:"p-6"},i=e.ref(!1),c=e.ref({});e.onMounted(()=>{a.customizationOptions.forEach(E=>{c.value[E.id]=E.default??!0})});const u=()=>{i.value=!i.value},b=(E,$)=>{c.value[E]=$,o("customize",{...c.value})},C=e.ref(null),z=e.ref(!1),B=E=>{if(!z.value)return;const $={r:()=>o("refresh"),R:()=>o("refresh"),c:()=>u(),C:()=>u(),Escape:()=>i.value=!1,h:()=>h.value=!h.value,H:()=>h.value=!h.value,"?":()=>h.value=!h.value};$[E.key]&&(E.preventDefault(),$[E.key](),o("keypress",E.key))},V=()=>{z.value=!0},k=()=>{z.value=!1},h=e.ref(!1),g=[{key:"R",description:"Refresh widget"},{key:"C",description:"Open customization"},{key:"Esc",description:"Close panels"},{key:"?",description:"Toggle help"}],v=e.ref(!1);let x=null;const D=E=>{if(!E.dataTransfer)return;v.value=!0,o("dragstart",a.id);const $=E.target.getBoundingClientRect();x=E.target.cloneNode(!0),Object.assign(x.style,{position:"fixed",width:`${$.width}px`,height:`${$.height}px`,pointerEvents:"none",opacity:"0.8",zIndex:"1000",left:`${E.clientX-$.width/2}px`,top:`${E.clientY-$.height/2}px`}),document.body.appendChild(x),E.dataTransfer.setDragImage(x,$.width/2,$.height/2),E.dataTransfer.effectAllowed="move",E.dataTransfer.setData("text/plain",a.id)},S=E=>{x&&E.clientX&&E.clientY&&(x.style.left=`${E.clientX-x.offsetWidth/2}px`,x.style.top=`${E.clientY-x.offsetHeight/2}px`)},M=()=>{v.value=!1,o("dragend",a.id),x&&(document.body.removeChild(x),x=null)},_=e.computed(()=>{if(!a.chartType||!a.chartData)return null;const E=a.chartData.datasets?.[0]?.data||a.chartData.data||[],$=a.chartData.labels||[],L=E.filter(y=>y!=null&&!isNaN(y));if(L.length===0)return null;const T=a.chartType==="pie"||a.chartType==="doughnut",J=T?450:400,q=T?450:400,p={data:L,labels:$.slice(0,L.length),width:J,height:q,...a.chartOptions};if(c.value.legend!==void 0&&(p.showLegend=c.value.legend),c.value.grid!==void 0&&(p.showGrid=c.value.grid),c.value.values!==void 0&&(p.showValues=c.value.values),c.value.percentages!==void 0&&(p.showPercentages=c.value.percentages),c.value.points!==void 0&&(p.showPoints=c.value.points),c.value.fillArea!==void 0&&(p.fillArea=c.value.fillArea),a.chartData.datasets?.[0]?.backgroundColor){const y=a.chartData.datasets[0].backgroundColor;p.colors=Array.isArray(y)?y:[y]}return a.chartData.datasets?.[0]?.borderColor&&(p.lineColor=a.chartData.datasets[0].borderColor),p}),te=e.computed(()=>{switch(a.chartType){case"bar":return va;case"line":return ha;case"pie":return Ja;case"doughnut":return Ja;default:return null}}),U=e.computed(()=>a.chartType==="doughnut");return e.onMounted(()=>{window.addEventListener("dragover",S),window.addEventListener("keydown",B)}),e.onUnmounted(()=>{window.removeEventListener("dragover",S),window.removeEventListener("keydown",B),x&&document.body.removeChild(x)}),(E,$)=>l.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"widgetRef",ref:C,draggable:"true",tabindex:"0",style:e.normalizeStyle(r.value),class:e.normalizeClass(e.unref(N)("bg-white rounded-xl shadow-sm border border-slate-200 overflow-hidden transition-all select-none flex flex-col relative",v.value?"opacity-50 scale-95":"hover:shadow-lg cursor-move",z.value?"ring-2 ring-blue-400 ring-offset-2":"")),onDragstart:D,onDragend:M,onFocus:V,onBlur:k},[t.showHeader?(e.openBlock(),e.createElementBlock("div",Ly,[e.createElementVNode("div",Py,[t.icon?(e.openBlock(),e.createBlock(K,{key:0,icon:t.icon,class:"w-5 h-5 text-slate-700"},null,8,["icon"])):e.createCommentVNode("",!0),e.createElementVNode("h3",jy,e.toDisplayString(t.title),1)]),e.createElementVNode("div",Oy,[e.renderSlot(E.$slots,"header-actions"),e.createElementVNode("button",{class:"p-2 rounded-lg hover:bg-white/80 transition-all duration-200 hover:scale-105 active:scale-95",title:"Keyboard shortcuts (?)",onClick:$[0]||($[0]=L=>h.value=!h.value)},[e.createVNode(K,{icon:"circle-info",class:"w-4 h-4 text-slate-600"})]),t.customizationOptions.length>0?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(["p-2 rounded-lg hover:bg-white/80 transition-all duration-200 hover:scale-105 active:scale-95",{"bg-blue-100":i.value}]),title:"Customize (C)",onClick:u},[e.createVNode(K,{icon:"gear",class:"w-4 h-4 text-slate-600"})],2)):e.createCommentVNode("",!0),t.showRefresh?(e.openBlock(),e.createElementBlock("button",{key:1,class:"p-2 rounded-lg hover:bg-white/80 transition-all duration-200 hover:scale-105 active:scale-95",disabled:t.loading,title:"Refresh (R)",onClick:$[1]||($[1]=L=>E.$emit("refresh"))},[e.createVNode(K,{icon:"refresh",class:e.normalizeClass(["w-4 h-4 text-slate-600 transition-transform duration-500",{"animate-spin":t.loading}])},null,8,["class"])],8,Iy)):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),i.value?(e.openBlock(),e.createElementBlock("div",_y,[e.createElementVNode("div",Ry,[$[4]||($[4]=e.createElementVNode("h4",{class:"font-semibold text-sm text-slate-900"}," Customize Widget ",-1)),e.createElementVNode("button",{class:"p-1 rounded hover:bg-slate-100",onClick:$[2]||($[2]=L=>i.value=!1)},[e.createVNode(K,{icon:"x",class:"w-4 h-4 text-slate-600"})])]),e.createElementVNode("div",Uy,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.customizationOptions,L=>(e.openBlock(),e.createElementBlock("div",{key:L.id,class:"flex items-center justify-between"},[e.createElementVNode("label",{for:`setting-${L.id}`,class:"text-sm text-slate-700 cursor-pointer"},e.toDisplayString(L.label),9,qy),e.createElementVNode("button",{id:`setting-${L.id}`,class:e.normalizeClass(["relative inline-flex h-6 w-11 items-center rounded-full transition-colors",c.value[L.id]?"bg-blue-600":"bg-slate-300"]),onClick:T=>b(L.id,!c.value[L.id])},[e.createElementVNode("span",{class:e.normalizeClass(["inline-block h-4 w-4 transform rounded-full bg-white transition-transform",c.value[L.id]?"translate-x-6":"translate-x-1"])},null,2)],10,Hy)]))),128))])])):e.createCommentVNode("",!0),h.value?(e.openBlock(),e.createElementBlock("div",Wy,[e.createElementVNode("div",Yy,[$[5]||($[5]=e.createElementVNode("h4",{class:"font-semibold text-sm text-slate-900"}," Keyboard Shortcuts ",-1)),e.createElementVNode("button",{class:"p-1 rounded hover:bg-slate-100",onClick:$[3]||($[3]=L=>h.value=!1)},[e.createVNode(K,{icon:"x",class:"w-4 h-4 text-slate-600"})])]),e.createElementVNode("div",Gy,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(g,L=>e.createElementVNode("div",{key:L.key,class:"flex items-center justify-between text-sm"},[e.createElementVNode("span",Ky,e.toDisplayString(L.description),1),e.createElementVNode("kbd",Xy,e.toDisplayString(L.key),1)])),64))])])):e.createCommentVNode("",!0),e.createElementVNode("div",Qy,[t.loading?(e.openBlock(),e.createElementBlock("div",Jy,[e.createVNode(Re,{type:"spin",size:"medium",color:"#3b82f6"})])):e.createCommentVNode("",!0),t.chartType&&t.chartData&&te.value&&_.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["w-full h-full flex items-center justify-center p-4",s[t.padding]])},[e.createElementVNode("div",Zy,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(te.value),e.mergeProps(_.value,{doughnut:U.value}),null,16,["doughnut"]))])],2)):(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(["overflow-auto h-full",s[t.padding]])},[e.renderSlot(E.$slots,"default")],2))]),E.$slots.footer?(e.openBlock(),e.createElementBlock("div",eb,[e.renderSlot(E.$slots,"footer")])):e.createCommentVNode("",!0)],38)):e.createCommentVNode("",!0)}},Jt={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=`
555
+ }`;function Fn(){var t=Vn,n=En,a=Q.cssPrefix,o=Q.replacementClass,l=ns;if(a!==t||o!==n){var r=new RegExp("\\.".concat(t,"\\-"),"g"),s=new RegExp("\\--".concat(t,"\\-"),"g"),i=new RegExp("\\.".concat(n),"g");l=l.replace(r,".".concat(a,"-")).replace(s,"--".concat(a,"-")).replace(i,".".concat(o))}return l}var za=!1;function Dt(){Q.autoAddCss&&!za&&(Jr(Fn()),za=!0)}var os={mixout:function(){return{dom:{css:Fn,insertCss:Dt}}},hooks:function(){return{beforeDOMElementCreation:function(){Dt()},beforeI2svg:function(){Dt()}}}},Ee=Ne||{};Ee[Ve]||(Ee[Ve]={});Ee[Ve].styles||(Ee[Ve].styles={});Ee[Ve].hooks||(Ee[Ve].hooks={});Ee[Ve].shims||(Ee[Ve].shims=[]);var ve=Ee[Ve],An=[],Mn=function(){te.removeEventListener("DOMContentLoaded",Mn),dt=1,An.map(function(n){return n()})},dt=!1;Se&&(dt=(te.documentElement.doScroll?/^loaded|^c/:/^loaded|^i|^c/).test(te.readyState),dt||te.addEventListener("DOMContentLoaded",Mn));function ls(t){Se&&(dt?setTimeout(t,0):An.push(t))}function tt(t){var n=t.tag,a=t.attributes,o=a===void 0?{}:a,l=t.children,r=l===void 0?[]:l;return typeof t=="string"?Tn(t):"<".concat(n," ").concat(es(o),">").concat(r.map(tt).join(""),"</").concat(n,">")}function Da(t,n,a){if(t&&t[n]&&t[n][a])return{prefix:n,iconName:a,icon:t[n][a]}}var Tt=function(n,a,o,l){var r=Object.keys(n),s=r.length,i=a,c,f,x;for(o===void 0?(c=1,x=n[r[0]]):(c=0,x=o);c<s;c++)f=r[c],x=i(x,n[f],f,n);return x};function Ln(t){return ye(t).length!==1?null:t.codePointAt(0).toString(16)}function Ta(t){return Object.keys(t).reduce(function(n,a){var o=t[a],l=!!o.icon;return l?n[o.iconName]=o.icon:n[a]=o,n},{})}function Rt(t,n){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=a.skipHooks,l=o===void 0?!1:o,r=Ta(n);typeof ve.hooks.addPack=="function"&&!l?ve.hooks.addPack(t,Ta(n)):ve.styles[t]=I(I({},ve.styles[t]||{}),r),t==="fas"&&Rt("fa",n)}var Ke=ve.styles,rs=ve.shims,Pn=Object.keys(na),ss=Pn.reduce(function(t,n){return t[n]=Object.keys(na[n]),t},{}),ra=null,jn={},On={},In={},_n={},Rn={};function is(t){return~Yr.indexOf(t)}function cs(t,n){var a=n.split("-"),o=a[0],l=a.slice(1).join("-");return o===t&&l!==""&&!is(l)?l:null}var Un=function(){var n=function(r){return Tt(Ke,function(s,i,c){return s[c]=Tt(i,r,{}),s},{})};jn=n(function(l,r,s){if(r[3]&&(l[r[3]]=s),r[2]){var i=r[2].filter(function(c){return typeof c=="number"});i.forEach(function(c){l[c.toString(16)]=s})}return l}),On=n(function(l,r,s){if(l[s]=s,r[2]){var i=r[2].filter(function(c){return typeof c=="string"});i.forEach(function(c){l[c]=s})}return l}),Rn=n(function(l,r,s){var i=r[2];return l[s]=s,i.forEach(function(c){l[c]=s}),l});var a="far"in Ke||Q.autoFetchSvg,o=Tt(rs,function(l,r){var s=r[0],i=r[1],c=r[2];return i==="far"&&!a&&(i="fas"),typeof s=="string"&&(l.names[s]={prefix:i,iconName:c}),typeof s=="number"&&(l.unicodes[s.toString(16)]={prefix:i,iconName:c}),l},{names:{},unicodes:{}});In=o.names,_n=o.unicodes,ra=ht(Q.styleDefault,{family:Q.familyDefault})};Qr(function(t){ra=ht(t.styleDefault,{family:Q.familyDefault})});Un();function sa(t,n){return(jn[t]||{})[n]}function ds(t,n){return(On[t]||{})[n]}function Te(t,n){return(Rn[t]||{})[n]}function qn(t){return In[t]||{prefix:null,iconName:null}}function us(t){var n=_n[t],a=sa("fas",t);return n||(a?{prefix:"fas",iconName:a}:null)||{prefix:null,iconName:null}}function $e(){return ra}var Hn=function(){return{prefix:null,iconName:null,rest:[]}};function ms(t){var n=ie,a=Pn.reduce(function(o,l){return o[l]="".concat(Q.cssPrefix,"-").concat(l),o},{});return kn.forEach(function(o){(t.includes(a[o])||t.some(function(l){return ss[o].includes(l)}))&&(n=o)}),n}function ht(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=n.family,o=a===void 0?ie:a,l=Rr[o][t];if(o===Ze&&!t)return"fad";var r=Na[o][t]||Na[o][l],s=t in ve.styles?t:null,i=r||s||null;return i}function fs(t){var n=[],a=null;return t.forEach(function(o){var l=cs(Q.cssPrefix,o);l?a=l:o&&n.push(o)}),{iconName:a,rest:n}}function Fa(t){return t.sort().filter(function(n,a,o){return o.indexOf(n)===a})}var Aa=Cn.concat(wn);function yt(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=n.skipLookups,o=a===void 0?!1:a,l=null,r=Fa(t.filter(function(E){return Aa.includes(E)})),s=Fa(t.filter(function(E){return!Aa.includes(E)})),i=r.filter(function(E){return l=E,!rn.includes(E)}),c=gt(i,1),f=c[0],x=f===void 0?null:f,C=ms(r),$=I(I({},fs(s)),{},{prefix:ht(x,{family:C})});return I(I(I({},$),hs({values:t,family:C,styles:Ke,config:Q,canonical:$,givenPrefix:l})),ps(o,l,$))}function ps(t,n,a){var o=a.prefix,l=a.iconName;if(t||!o||!l)return{prefix:o,iconName:l};var r=n==="fa"?qn(l):{},s=Te(o,l);return l=r.iconName||s||l,o=r.prefix||o,o==="far"&&!Ke.far&&Ke.fas&&!Q.autoFetchSvg&&(o="fas"),{prefix:o,iconName:l}}var gs=kn.filter(function(t){return t!==ie||t!==Ze}),vs=Object.keys(Lt).filter(function(t){return t!==ie}).map(function(t){return Object.keys(Lt[t])}).flat();function hs(t){var n=t.values,a=t.family,o=t.canonical,l=t.givenPrefix,r=l===void 0?"":l,s=t.styles,i=s===void 0?{}:s,c=t.config,f=c===void 0?{}:c,x=a===Ze,C=n.includes("fa-duotone")||n.includes("fad"),$=f.familyDefault==="duotone",E=o.prefix==="fad"||o.prefix==="fa-duotone";if(!x&&(C||$||E)&&(o.prefix="fad"),(n.includes("fa-brands")||n.includes("fab"))&&(o.prefix="fab"),!o.prefix&&gs.includes(a)){var B=Object.keys(i).find(function(b){return vs.includes(b)});if(B||f.autoFetchSvg){var w=Il.get(a).defaultShortPrefixId;o.prefix=w,o.iconName=Te(o.prefix,o.iconName)||o.iconName}}return(o.prefix==="fa"||r==="fa")&&(o.prefix=$e()||"fas"),o}var ys=(function(){function t(){ul(this,t),this.definitions={}}return fl(t,[{key:"add",value:function(){for(var a=this,o=arguments.length,l=new Array(o),r=0;r<o;r++)l[r]=arguments[r];var s=l.reduce(this._pullDefinitions,{});Object.keys(s).forEach(function(i){a.definitions[i]=I(I({},a.definitions[i]||{}),s[i]),Rt(i,s[i]);var c=na[ie][i];c&&Rt(c,s[i]),Un()})}},{key:"reset",value:function(){this.definitions={}}},{key:"_pullDefinitions",value:function(a,o){var l=o.prefix&&o.iconName&&o.icon?{0:o}:o;return Object.keys(l).map(function(r){var s=l[r],i=s.prefix,c=s.iconName,f=s.icon,x=f[2];a[i]||(a[i]={}),x.length>0&&x.forEach(function(C){typeof C=="string"&&(a[i][C]=f)}),a[i][c]=f}),a}}])})(),Ma=[],Pe={},je={},bs=Object.keys(je);function xs(t,n){var a=n.mixoutsTo;return Ma=t,Pe={},Object.keys(je).forEach(function(o){bs.indexOf(o)===-1&&delete je[o]}),Ma.forEach(function(o){var l=o.mixout?o.mixout():{};if(Object.keys(l).forEach(function(s){typeof l[s]=="function"&&(a[s]=l[s]),ct(l[s])==="object"&&Object.keys(l[s]).forEach(function(i){a[s]||(a[s]={}),a[s][i]=l[s][i]})}),o.hooks){var r=o.hooks();Object.keys(r).forEach(function(s){Pe[s]||(Pe[s]=[]),Pe[s].push(r[s])})}o.provides&&o.provides(je)}),a}function Ut(t,n){for(var a=arguments.length,o=new Array(a>2?a-2:0),l=2;l<a;l++)o[l-2]=arguments[l];var r=Pe[t]||[];return r.forEach(function(s){n=s.apply(null,[n].concat(o))}),n}function Ae(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),o=1;o<n;o++)a[o-1]=arguments[o];var l=Pe[t]||[];l.forEach(function(r){r.apply(null,a)})}function ze(){var t=arguments[0],n=Array.prototype.slice.call(arguments,1);return je[t]?je[t].apply(null,n):void 0}function qt(t){t.prefix==="fa"&&(t.prefix="fas");var n=t.iconName,a=t.prefix||$e();if(n)return n=Te(a,n)||n,Da(Wn.definitions,a,n)||Da(ve.styles,a,n)}var Wn=new ys,ks=function(){Q.autoReplaceSvg=!1,Q.observeMutations=!1,Ae("noAuto")},ws={i2svg:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Se?(Ae("beforeI2svg",n),ze("pseudoElements2svg",n),ze("i2svg",n)):Promise.reject(new Error("Operation requires a DOM of some kind."))},watch:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},a=n.autoReplaceSvgRoot;Q.autoReplaceSvg===!1&&(Q.autoReplaceSvg=!0),Q.observeMutations=!0,ls(function(){Bs({autoReplaceSvgRoot:a}),Ae("watch",n)})}},Cs={icon:function(n){if(n===null)return null;if(ct(n)==="object"&&n.prefix&&n.iconName)return{prefix:n.prefix,iconName:Te(n.prefix,n.iconName)||n.iconName};if(Array.isArray(n)&&n.length===2){var a=n[1].indexOf("fa-")===0?n[1].slice(3):n[1],o=ht(n[0]);return{prefix:o,iconName:Te(o,a)||a}}if(typeof n=="string"&&(n.indexOf("".concat(Q.cssPrefix,"-"))>-1||n.match(Ur))){var l=yt(n.split(" "),{skipLookups:!0});return{prefix:l.prefix||$e(),iconName:Te(l.prefix,l.iconName)||l.iconName}}if(typeof n=="string"){var r=$e();return{prefix:r,iconName:Te(r,n)||n}}}},pe={noAuto:ks,config:Q,dom:ws,parse:Cs,library:Wn,findIconDefinition:qt,toHtml:tt},Bs=function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},a=n.autoReplaceSvgRoot,o=a===void 0?te:a;(Object.keys(ve.styles).length>0||Q.autoFetchSvg)&&Se&&Q.autoReplaceSvg&&pe.dom.i2svg({node:o})};function bt(t,n){return Object.defineProperty(t,"abstract",{get:n}),Object.defineProperty(t,"html",{get:function(){return t.abstract.map(function(o){return tt(o)})}}),Object.defineProperty(t,"node",{get:function(){if(Se){var o=te.createElement("div");return o.innerHTML=t.html,o.children}}}),t}function Vs(t){var n=t.children,a=t.main,o=t.mask,l=t.attributes,r=t.styles,s=t.transform;if(la(s)&&a.found&&!o.found){var i=a.width,c=a.height,f={x:i/c/2,y:.5};l.style=vt(I(I({},r),{},{"transform-origin":"".concat(f.x+s.x/16,"em ").concat(f.y+s.y/16,"em")}))}return[{tag:"svg",attributes:l,children:n}]}function Es(t){var n=t.prefix,a=t.iconName,o=t.children,l=t.attributes,r=t.symbol,s=r===!0?"".concat(n,"-").concat(Q.cssPrefix,"-").concat(a):r;return[{tag:"svg",attributes:{style:"display: none;"},children:[{tag:"symbol",attributes:I(I({},l),{},{id:s}),children:o}]}]}function Ss(t){var n=["aria-label","aria-labelledby","title","role"];return n.some(function(a){return a in t})}function ia(t){var n=t.icons,a=n.main,o=n.mask,l=t.prefix,r=t.iconName,s=t.transform,i=t.symbol,c=t.maskId,f=t.extra,x=t.watchable,C=x===void 0?!1:x,$=o.found?o:a,E=$.width,B=$.height,w=[Q.replacementClass,r?"".concat(Q.cssPrefix,"-").concat(r):""].filter(function(V){return f.classes.indexOf(V)===-1}).filter(function(V){return V!==""||!!V}).concat(f.classes).join(" "),b={children:[],attributes:I(I({},f.attributes),{},{"data-prefix":l,"data-icon":r,class:w,role:f.attributes.role||"img",viewBox:"0 0 ".concat(E," ").concat(B)})};!Ss(f.attributes)&&!f.attributes["aria-hidden"]&&(b.attributes["aria-hidden"]="true"),C&&(b.attributes[Fe]="");var v=I(I({},b),{},{prefix:l,iconName:r,main:a,mask:o,maskId:c,transform:s,symbol:i,styles:I({},f.styles)}),h=o.found&&a.found?ze("generateAbstractMask",v)||{children:[],attributes:{}}:ze("generateAbstractIcon",v)||{children:[],attributes:{}},k=h.children,z=h.attributes;return v.children=k,v.attributes=z,i?Es(v):Vs(v)}function La(t){var n=t.content,a=t.width,o=t.height,l=t.transform,r=t.extra,s=t.watchable,i=s===void 0?!1:s,c=I(I({},r.attributes),{},{class:r.classes.join(" ")});i&&(c[Fe]="");var f=I({},r.styles);la(l)&&(f.transform=as({transform:l,width:a,height:o}),f["-webkit-transform"]=f.transform);var x=vt(f);x.length>0&&(c.style=x);var C=[];return C.push({tag:"span",attributes:c,children:[n]}),C}function Ns(t){var n=t.content,a=t.extra,o=I(I({},a.attributes),{},{class:a.classes.join(" ")}),l=vt(a.styles);l.length>0&&(o.style=l);var r=[];return r.push({tag:"span",attributes:o,children:[n]}),r}var Ft=ve.styles;function Ht(t){var n=t[0],a=t[1],o=t.slice(4),l=gt(o,1),r=l[0],s=null;return Array.isArray(r)?s={tag:"g",attributes:{class:"".concat(Q.cssPrefix,"-").concat(zt.GROUP)},children:[{tag:"path",attributes:{class:"".concat(Q.cssPrefix,"-").concat(zt.SECONDARY),fill:"currentColor",d:r[0]}},{tag:"path",attributes:{class:"".concat(Q.cssPrefix,"-").concat(zt.PRIMARY),fill:"currentColor",d:r[1]}}]}:s={tag:"path",attributes:{fill:"currentColor",d:r}},{found:!0,width:n,height:a,icon:s}}var $s={found:!1,width:512,height:512};function zs(t,n){!Nn&&!Q.showMissingIcons&&t&&console.error('Icon with name "'.concat(t,'" and prefix "').concat(n,'" is missing.'))}function Wt(t,n){var a=n;return n==="fa"&&Q.styleDefault!==null&&(n=$e()),new Promise(function(o,l){if(a==="fa"){var r=qn(t)||{};t=r.iconName||t,n=r.prefix||n}if(t&&n&&Ft[n]&&Ft[n][t]){var s=Ft[n][t];return o(Ht(s))}zs(t,n),o(I(I({},$s),{},{icon:Q.showMissingIcons&&t?ze("missingIconAbstract")||{}:{}}))})}var Pa=function(){},Yt=Q.measurePerformance&&ot&&ot.mark&&ot.measure?ot:{mark:Pa,measure:Pa},qe='FA "7.0.1"',Ds=function(n){return Yt.mark("".concat(qe," ").concat(n," begins")),function(){return Yn(n)}},Yn=function(n){Yt.mark("".concat(qe," ").concat(n," ends")),Yt.measure("".concat(qe," ").concat(n),"".concat(qe," ").concat(n," begins"),"".concat(qe," ").concat(n," ends"))},ca={begin:Ds,end:Yn},st=function(){};function ja(t){var n=t.getAttribute?t.getAttribute(Fe):null;return typeof n=="string"}function Ts(t){var n=t.getAttribute?t.getAttribute(ta):null,a=t.getAttribute?t.getAttribute(aa):null;return n&&a}function Fs(t){return t&&t.classList&&t.classList.contains&&t.classList.contains(Q.replacementClass)}function As(){if(Q.autoReplaceSvg===!0)return it.replace;var t=it[Q.autoReplaceSvg];return t||it.replace}function Ms(t){return te.createElementNS("http://www.w3.org/2000/svg",t)}function Ls(t){return te.createElement(t)}function Gn(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=n.ceFn,o=a===void 0?t.tag==="svg"?Ms:Ls:a;if(typeof t=="string")return te.createTextNode(t);var l=o(t.tag);Object.keys(t.attributes||[]).forEach(function(s){l.setAttribute(s,t.attributes[s])});var r=t.children||[];return r.forEach(function(s){l.appendChild(Gn(s,{ceFn:o}))}),l}function Ps(t){var n=" ".concat(t.outerHTML," ");return n="".concat(n,"Font Awesome fontawesome.com "),n}var it={replace:function(n){var a=n[0];if(a.parentNode)if(n[1].forEach(function(l){a.parentNode.insertBefore(Gn(l),a)}),a.getAttribute(Fe)===null&&Q.keepOriginalSource){var o=te.createComment(Ps(a));a.parentNode.replaceChild(o,a)}else a.remove()},nest:function(n){var a=n[0],o=n[1];if(~oa(a).indexOf(Q.replacementClass))return it.replace(n);var l=new RegExp("".concat(Q.cssPrefix,"-.*"));if(delete o[0].attributes.id,o[0].attributes.class){var r=o[0].attributes.class.split(" ").reduce(function(i,c){return c===Q.replacementClass||c.match(l)?i.toSvg.push(c):i.toNode.push(c),i},{toNode:[],toSvg:[]});o[0].attributes.class=r.toSvg.join(" "),r.toNode.length===0?a.removeAttribute("class"):a.setAttribute("class",r.toNode.join(" "))}var s=o.map(function(i){return tt(i)}).join(`
556
+ `);a.setAttribute(Fe,""),a.innerHTML=s}};function Oa(t){t()}function Kn(t,n){var a=typeof n=="function"?n:st;if(t.length===0)a();else{var o=Oa;Q.mutateApproach===Ir&&(o=Ne.requestAnimationFrame||Oa),o(function(){var l=As(),r=ca.begin("mutate");t.map(l),r(),a()})}}var da=!1;function Xn(){da=!0}function Gt(){da=!1}var ut=null;function Ia(t){if(Ba&&Q.observeMutations){var n=t.treeCallback,a=n===void 0?st:n,o=t.nodeCallback,l=o===void 0?st:o,r=t.pseudoElementsCallback,s=r===void 0?st:r,i=t.observeMutationsRoot,c=i===void 0?te:i;ut=new Ba(function(f){if(!da){var x=$e();_e(f).forEach(function(C){if(C.type==="childList"&&C.addedNodes.length>0&&!ja(C.addedNodes[0])&&(Q.searchPseudoElements&&s(C.target),a(C.target)),C.type==="attributes"&&C.target.parentNode&&Q.searchPseudoElements&&s([C.target],!0),C.type==="attributes"&&ja(C.target)&&~Wr.indexOf(C.attributeName))if(C.attributeName==="class"&&Ts(C.target)){var $=yt(oa(C.target)),E=$.prefix,B=$.iconName;C.target.setAttribute(ta,E||x),B&&C.target.setAttribute(aa,B)}else Fs(C.target)&&l(C.target)})}}),Se&&ut.observe(c,{childList:!0,attributes:!0,characterData:!0,subtree:!0})}}function js(){ut&&ut.disconnect()}function Os(t){var n=t.getAttribute("style"),a=[];return n&&(a=n.split(";").reduce(function(o,l){var r=l.split(":"),s=r[0],i=r.slice(1);return s&&i.length>0&&(o[s]=i.join(":").trim()),o},{})),a}function Is(t){var n=t.getAttribute("data-prefix"),a=t.getAttribute("data-icon"),o=t.innerText!==void 0?t.innerText.trim():"",l=yt(oa(t));return l.prefix||(l.prefix=$e()),n&&a&&(l.prefix=n,l.iconName=a),l.iconName&&l.prefix||(l.prefix&&o.length>0&&(l.iconName=ds(l.prefix,t.innerText)||sa(l.prefix,Ln(t.innerText))),!l.iconName&&Q.autoFetchSvg&&t.firstChild&&t.firstChild.nodeType===Node.TEXT_NODE&&(l.iconName=t.firstChild.data)),l}function _s(t){var n=_e(t.attributes).reduce(function(a,o){return a.name!=="class"&&a.name!=="style"&&(a[o.name]=o.value),a},{});return n}function Rs(){return{iconName:null,prefix:null,transform:ke,symbol:!1,mask:{iconName:null,prefix:null,rest:[]},maskId:null,extra:{classes:[],styles:{},attributes:{}}}}function _a(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{styleParser:!0},a=Is(t),o=a.iconName,l=a.prefix,r=a.rest,s=_s(t),i=Ut("parseNodeAttributes",{},t),c=n.styleParser?Os(t):[];return I({iconName:o,prefix:l,transform:ke,mask:{iconName:null,prefix:null,rest:[]},maskId:null,symbol:!1,extra:{classes:r,styles:c,attributes:s}},i)}var Us=ve.styles;function Qn(t){var n=Q.autoReplaceSvg==="nest"?_a(t,{styleParser:!1}):_a(t);return~n.extra.classes.indexOf(zn)?ze("generateLayersText",t,n):ze("generateSvgReplacementMutation",t,n)}function qs(){return[].concat(ye(wn),ye(Cn))}function Ra(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;if(!Se)return Promise.resolve();var a=te.documentElement.classList,o=function(C){return a.add("".concat(Sa,"-").concat(C))},l=function(C){return a.remove("".concat(Sa,"-").concat(C))},r=Q.autoFetchSvg?qs():rn.concat(Object.keys(Us));r.includes("fa")||r.push("fa");var s=[".".concat(zn,":not([").concat(Fe,"])")].concat(r.map(function(x){return".".concat(x,":not([").concat(Fe,"])")})).join(", ");if(s.length===0)return Promise.resolve();var i=[];try{i=_e(t.querySelectorAll(s))}catch{}if(i.length>0)o("pending"),l("complete");else return Promise.resolve();var c=ca.begin("onTree"),f=i.reduce(function(x,C){try{var $=Qn(C);$&&x.push($)}catch(E){Nn||E.name==="MissingIcon"&&console.error(E)}return x},[]);return new Promise(function(x,C){Promise.all(f).then(function($){Kn($,function(){o("active"),o("complete"),l("pending"),typeof n=="function"&&n(),c(),x()})}).catch(function($){c(),C($)})})}function Hs(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;Qn(t).then(function(a){a&&Kn([a],n)})}function Ws(t){return function(n){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=(n||{}).icon?n:qt(n||{}),l=a.mask;return l&&(l=(l||{}).icon?l:qt(l||{})),t(o,I(I({},a),{},{mask:l}))}}var Ys=function(n){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=a.transform,l=o===void 0?ke:o,r=a.symbol,s=r===void 0?!1:r,i=a.mask,c=i===void 0?null:i,f=a.maskId,x=f===void 0?null:f,C=a.classes,$=C===void 0?[]:C,E=a.attributes,B=E===void 0?{}:E,w=a.styles,b=w===void 0?{}:w;if(n){var v=n.prefix,h=n.iconName,k=n.icon;return bt(I({type:"icon"},n),function(){return Ae("beforeDOMElementCreation",{iconDefinition:n,params:a}),ia({icons:{main:Ht(k),mask:c?Ht(c.icon):{found:!1,width:null,height:null,icon:{}}},prefix:v,iconName:h,transform:I(I({},ke),l),symbol:s,maskId:x,extra:{attributes:B,styles:b,classes:$}})})}},Gs={mixout:function(){return{icon:Ws(Ys)}},hooks:function(){return{mutationObserverCallbacks:function(a){return a.treeCallback=Ra,a.nodeCallback=Hs,a}}},provides:function(n){n.i2svg=function(a){var o=a.node,l=o===void 0?te:o,r=a.callback,s=r===void 0?function(){}:r;return Ra(l,s)},n.generateSvgReplacementMutation=function(a,o){var l=o.iconName,r=o.prefix,s=o.transform,i=o.symbol,c=o.mask,f=o.maskId,x=o.extra;return new Promise(function(C,$){Promise.all([Wt(l,r),c.iconName?Wt(c.iconName,c.prefix):Promise.resolve({found:!1,width:512,height:512,icon:{}})]).then(function(E){var B=gt(E,2),w=B[0],b=B[1];C([a,ia({icons:{main:w,mask:b},prefix:r,iconName:l,transform:s,symbol:i,maskId:f,extra:x,watchable:!0})])}).catch($)})},n.generateAbstractIcon=function(a){var o=a.children,l=a.attributes,r=a.main,s=a.transform,i=a.styles,c=vt(i);c.length>0&&(l.style=c);var f;return la(s)&&(f=ze("generateAbstractTransformGrouping",{main:r,transform:s,containerWidth:r.width,iconWidth:r.width})),o.push(f||r.icon),{children:o,attributes:l}}}},Ks={mixout:function(){return{layer:function(a){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},l=o.classes,r=l===void 0?[]:l;return bt({type:"layer"},function(){Ae("beforeDOMElementCreation",{assembler:a,params:o});var s=[];return a(function(i){Array.isArray(i)?i.map(function(c){s=s.concat(c.abstract)}):s=s.concat(i.abstract)}),[{tag:"span",attributes:{class:["".concat(Q.cssPrefix,"-layers")].concat(ye(r)).join(" ")},children:s}]})}}}},Xs={mixout:function(){return{counter:function(a){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};o.title;var l=o.classes,r=l===void 0?[]:l,s=o.attributes,i=s===void 0?{}:s,c=o.styles,f=c===void 0?{}:c;return bt({type:"counter",content:a},function(){return Ae("beforeDOMElementCreation",{content:a,params:o}),Ns({content:a.toString(),extra:{attributes:i,styles:f,classes:["".concat(Q.cssPrefix,"-layers-counter")].concat(ye(r))}})})}}}},Qs={mixout:function(){return{text:function(a){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},l=o.transform,r=l===void 0?ke:l,s=o.classes,i=s===void 0?[]:s,c=o.attributes,f=c===void 0?{}:c,x=o.styles,C=x===void 0?{}:x;return bt({type:"text",content:a},function(){return Ae("beforeDOMElementCreation",{content:a,params:o}),La({content:a,transform:I(I({},ke),r),extra:{attributes:f,styles:C,classes:["".concat(Q.cssPrefix,"-layers-text")].concat(ye(i))}})})}}},provides:function(n){n.generateLayersText=function(a,o){var l=o.transform,r=o.extra,s=null,i=null;if(on){var c=parseInt(getComputedStyle(a).fontSize,10),f=a.getBoundingClientRect();s=f.width/c,i=f.height/c}return Promise.resolve([a,La({content:a.innerHTML,width:s,height:i,transform:l,extra:r,watchable:!0})])}}},Jn=new RegExp('"',"ug"),Ua=[1105920,1112319],qa=I(I(I(I({},{FontAwesome:{normal:"fas",400:"fas"}}),Ol),jr),Gl),Kt=Object.keys(qa).reduce(function(t,n){return t[n.toLowerCase()]=qa[n],t},{}),Js=Object.keys(Kt).reduce(function(t,n){var a=Kt[n];return t[n]=a[900]||ye(Object.entries(a))[0][1],t},{});function Zs(t){var n=t.replace(Jn,"");return Ln(ye(n)[0]||"")}function ei(t){var n=t.getPropertyValue("font-feature-settings").includes("ss01"),a=t.getPropertyValue("content"),o=a.replace(Jn,""),l=o.codePointAt(0),r=l>=Ua[0]&&l<=Ua[1],s=o.length===2?o[0]===o[1]:!1;return r||s||n}function ti(t,n){var a=t.replace(/^['"]|['"]$/g,"").toLowerCase(),o=parseInt(n),l=isNaN(o)?"normal":o;return(Kt[a]||{})[l]||Js[a]}function Ha(t,n){var a="".concat(Or).concat(n.replace(":","-"));return new Promise(function(o,l){if(t.getAttribute(a)!==null)return o();var r=_e(t.children),s=r.filter(function(D){return D.getAttribute(jt)===n})[0],i=Ne.getComputedStyle(t,n),c=i.getPropertyValue("font-family"),f=c.match(qr),x=i.getPropertyValue("font-weight"),C=i.getPropertyValue("content");if(s&&!f)return t.removeChild(s),o();if(f&&C!=="none"&&C!==""){var $=i.getPropertyValue("content"),E=ti(c,x),B=Zs($),w=f[0].startsWith("FontAwesome"),b=ei(i),v=sa(E,B),h=v;if(w){var k=us(B);k.iconName&&k.prefix&&(v=k.iconName,E=k.prefix)}if(v&&!b&&(!s||s.getAttribute(ta)!==E||s.getAttribute(aa)!==h)){t.setAttribute(a,h),s&&t.removeChild(s);var z=Rs(),V=z.extra;V.attributes[jt]=n,Wt(v,E).then(function(D){var j=ia(I(I({},z),{},{icons:{main:D,mask:Hn()},prefix:E,iconName:h,extra:V,watchable:!0})),K=te.createElementNS("http://www.w3.org/2000/svg","svg");n==="::before"?t.insertBefore(K,t.firstChild):t.appendChild(K),K.outerHTML=j.map(function(_){return tt(_)}).join(`
557
+ `),t.removeAttribute(a),o()}).catch(l)}else o()}else o()})}function ai(t){return Promise.all([Ha(t,"::before"),Ha(t,"::after")])}function ni(t){return t.parentNode!==document.head&&!~_r.indexOf(t.tagName.toUpperCase())&&!t.getAttribute(jt)&&(!t.parentNode||t.parentNode.tagName!=="svg")}var oi=function(n){return!!n&&Sn.some(function(a){return n.includes(a)})},li=function(n){if(!n)return[];var a=new Set,o=n.split(/,(?![^()]*\))/).map(function(c){return c.trim()});o=o.flatMap(function(c){return c.includes("(")?c:c.split(",").map(function(f){return f.trim()})});var l=rt(o),r;try{for(l.s();!(r=l.n()).done;){var s=r.value;if(oi(s)){var i=Sn.reduce(function(c,f){return c.replace(f,"")},s);i!==""&&i!=="*"&&a.add(i)}}}catch(c){l.e(c)}finally{l.f()}return a};function Wa(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(Se){var a;if(n)a=t;else if(Q.searchPseudoElementsFullScan)a=t.querySelectorAll("*");else{var o=new Set,l=rt(document.styleSheets),r;try{for(l.s();!(r=l.n()).done;){var s=r.value;try{var i=rt(s.cssRules),c;try{for(i.s();!(c=i.n()).done;){var f=c.value,x=li(f.selectorText),C=rt(x),$;try{for(C.s();!($=C.n()).done;){var E=$.value;o.add(E)}}catch(w){C.e(w)}finally{C.f()}}}catch(w){i.e(w)}finally{i.f()}}catch(w){Q.searchPseudoElementsWarnings&&console.warn("Font Awesome: cannot parse stylesheet: ".concat(s.href," (").concat(w.message,`)
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(w){l.e(w)}finally{l.f()}if(!o.size)return;var B=Array.from(o).join(", ");try{a=t.querySelectorAll(B)}catch{}}return new Promise(function(w,b){var v=_e(a).filter(ni).map(ai),h=ca.begin("searchPseudoElements");Xn(),Promise.all(v).then(function(){h(),Gt(),w()}).catch(function(){h(),Gt(),b()})})}}var ri={hooks:function(){return{mutationObserverCallbacks:function(a){return a.pseudoElementsCallback=Wa,a}}},provides:function(n){n.pseudoElements2svg=function(a){var o=a.node,l=o===void 0?te:o;Q.searchPseudoElements&&Wa(l)}}},Ya=!1,si={mixout:function(){return{dom:{unwatch:function(){Xn(),Ya=!0}}}},hooks:function(){return{bootstrap:function(){Ia(Ut("mutationObserverCallbacks",{}))},noAuto:function(){js()},watch:function(a){var o=a.observeMutationsRoot;Ya?Gt():Ia(Ut("mutationObserverCallbacks",{observeMutationsRoot:o}))}}}},Ga=function(n){var a={size:16,x:0,y:0,flipX:!1,flipY:!1,rotate:0};return n.toLowerCase().split(" ").reduce(function(o,l){var r=l.toLowerCase().split("-"),s=r[0],i=r.slice(1).join("-");if(s&&i==="h")return o.flipX=!0,o;if(s&&i==="v")return o.flipY=!0,o;if(i=parseFloat(i),isNaN(i))return o;switch(s){case"grow":o.size=o.size+i;break;case"shrink":o.size=o.size-i;break;case"left":o.x=o.x-i;break;case"right":o.x=o.x+i;break;case"up":o.y=o.y-i;break;case"down":o.y=o.y+i;break;case"rotate":o.rotate=o.rotate+i;break}return o},a)},ii={mixout:function(){return{parse:{transform:function(a){return Ga(a)}}}},hooks:function(){return{parseNodeAttributes:function(a,o){var l=o.getAttribute("data-fa-transform");return l&&(a.transform=Ga(l)),a}}},provides:function(n){n.generateAbstractTransformGrouping=function(a){var o=a.main,l=a.transform,r=a.containerWidth,s=a.iconWidth,i={transform:"translate(".concat(r/2," 256)")},c="translate(".concat(l.x*32,", ").concat(l.y*32,") "),f="scale(".concat(l.size/16*(l.flipX?-1:1),", ").concat(l.size/16*(l.flipY?-1:1),") "),x="rotate(".concat(l.rotate," 0 0)"),C={transform:"".concat(c," ").concat(f," ").concat(x)},$={transform:"translate(".concat(s/2*-1," -256)")},E={outer:i,inner:C,path:$};return{tag:"g",attributes:I({},E.outer),children:[{tag:"g",attributes:I({},E.inner),children:[{tag:o.icon.tag,children:o.icon.children,attributes:I(I({},o.icon.attributes),E.path)}]}]}}}},At={x:0,y:0,width:"100%",height:"100%"};function Ka(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 ci(t){return t.tag==="g"?t.children:[t]}var di={hooks:function(){return{parseNodeAttributes:function(a,o){var l=o.getAttribute("data-fa-mask"),r=l?yt(l.split(" ").map(function(s){return s.trim()})):Hn();return r.prefix||(r.prefix=$e()),a.mask=r,a.maskId=o.getAttribute("data-fa-mask-id"),a}}},provides:function(n){n.generateAbstractMask=function(a){var o=a.children,l=a.attributes,r=a.main,s=a.mask,i=a.maskId,c=a.transform,f=r.width,x=r.icon,C=s.width,$=s.icon,E=ts({transform:c,containerWidth:C,iconWidth:f}),B={tag:"rect",attributes:I(I({},At),{},{fill:"white"})},w=x.children?{children:x.children.map(Ka)}:{},b={tag:"g",attributes:I({},E.inner),children:[Ka(I({tag:x.tag,attributes:I(I({},x.attributes),E.path)},w))]},v={tag:"g",attributes:I({},E.outer),children:[b]},h="mask-".concat(i||$a()),k="clip-".concat(i||$a()),z={tag:"mask",attributes:I(I({},At),{},{id:h,maskUnits:"userSpaceOnUse",maskContentUnits:"userSpaceOnUse"}),children:[B,v]},V={tag:"defs",children:[{tag:"clipPath",attributes:{id:k},children:ci($)},z]};return o.push(V,{tag:"rect",attributes:I({fill:"currentColor","clip-path":"url(#".concat(k,")"),mask:"url(#".concat(h,")")},At)}),{children:o,attributes:l}}}},ui={provides:function(n){var a=!1;Ne.matchMedia&&(a=Ne.matchMedia("(prefers-reduced-motion: reduce)").matches),n.missingIconAbstract=function(){var o=[],l={fill:"currentColor"},r={attributeType:"XML",repeatCount:"indefinite",dur:"2s"};o.push({tag:"path",attributes:I(I({},l),{},{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 s=I(I({},r),{},{attributeName:"opacity"}),i={tag:"circle",attributes:I(I({},l),{},{cx:"256",cy:"364",r:"28"}),children:[]};return a||i.children.push({tag:"animate",attributes:I(I({},r),{},{attributeName:"r",values:"28;14;28;28;14;28;"})},{tag:"animate",attributes:I(I({},s),{},{values:"1;0;1;1;0;1;"})}),o.push(i),o.push({tag:"path",attributes:I(I({},l),{},{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:I(I({},s),{},{values:"1;0;0;0;0;1;"})}]}),a||o.push({tag:"path",attributes:I(I({},l),{},{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:I(I({},s),{},{values:"0;0;1;1;0;0;"})}]}),{tag:"g",attributes:{class:"missing"},children:o}}}},mi={hooks:function(){return{parseNodeAttributes:function(a,o){var l=o.getAttribute("data-fa-symbol"),r=l===null?!1:l===""?!0:l;return a.symbol=r,a}}}},fi=[os,Gs,Ks,Xs,Qs,ri,si,ii,di,ui,mi];xs(fi,{mixoutsTo:pe});pe.noAuto;var Zn=pe.config;pe.library;pe.dom;var mt=pe.parse;pe.findIconDefinition;pe.toHtml;var pi=pe.icon;pe.layer;var gi=pe.text;pe.counter;function Xt(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 vi(t){if(Array.isArray(t))return Xt(t)}function ue(t,n,a){return(n=wi(n))in t?Object.defineProperty(t,n,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[n]=a,t}function hi(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function yi(){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 Xa(t,n){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);n&&(o=o.filter(function(l){return Object.getOwnPropertyDescriptor(t,l).enumerable})),a.push.apply(a,o)}return a}function ge(t){for(var n=1;n<arguments.length;n++){var a=arguments[n]!=null?arguments[n]:{};n%2?Xa(Object(a),!0).forEach(function(o){ue(t,o,a[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):Xa(Object(a)).forEach(function(o){Object.defineProperty(t,o,Object.getOwnPropertyDescriptor(a,o))})}return t}function bi(t,n){if(t==null)return{};var a,o,l=xi(t,n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);for(o=0;o<r.length;o++)a=r[o],n.indexOf(a)===-1&&{}.propertyIsEnumerable.call(t,a)&&(l[a]=t[a])}return l}function xi(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 Qt(t){return vi(t)||hi(t)||Ci(t)||yi()}function ki(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 wi(t){var n=ki(t,"string");return typeof n=="symbol"?n:n+""}function ft(t){"@babel/helpers - typeof";return ft=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},ft(t)}function Ci(t,n){if(t){if(typeof t=="string")return Xt(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)?Xt(t,n):void 0}}function Ye(t,n){return Array.isArray(n)&&n.length>0||!Array.isArray(n)&&n?ue({},t,n):{}}function Bi(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"},ue(ue(ue(ue(ue(ue(ue(ue(ue(ue(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),ue(ue(ue(ue(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 Vi=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},eo={exports:{}};(function(t){(function(n){var a=function(v,h,k){if(!f(h)||C(h)||$(h)||E(h)||c(h))return h;var z,V=0,D=0;if(x(h))for(z=[],D=h.length;V<D;V++)z.push(a(v,h[V],k));else{z={};for(var j in h)Object.prototype.hasOwnProperty.call(h,j)&&(z[v(j,k)]=a(v,h[j],k))}return z},o=function(v,h){h=h||{};var k=h.separator||"_",z=h.split||/(?=[A-Z])/;return v.split(z).join(k)},l=function(v){return B(v)?v:(v=v.replace(/[\-_\s]+(.)?/g,function(h,k){return k?k.toUpperCase():""}),v.substr(0,1).toLowerCase()+v.substr(1))},r=function(v){var h=l(v);return h.substr(0,1).toUpperCase()+h.substr(1)},s=function(v,h){return o(v,h).toLowerCase()},i=Object.prototype.toString,c=function(v){return typeof v=="function"},f=function(v){return v===Object(v)},x=function(v){return i.call(v)=="[object Array]"},C=function(v){return i.call(v)=="[object Date]"},$=function(v){return i.call(v)=="[object RegExp]"},E=function(v){return i.call(v)=="[object Boolean]"},B=function(v){return v=v-0,v===v},w=function(v,h){var k=h&&"process"in h?h.process:h;return typeof k!="function"?v:function(z,V){return k(z,v,V)}},b={camelize:l,decamelize:s,pascalize:r,depascalize:s,camelizeKeys:function(v,h){return a(w(l,h),v)},decamelizeKeys:function(v,h){return a(w(s,h),v,h)},pascalizeKeys:function(v,h){return a(w(r,h),v)},depascalizeKeys:function(){return this.decamelizeKeys.apply(this,arguments)}};t.exports?t.exports=b:n.humps=b})(Vi)})(eo);var Ei=eo.exports,Si=["class","style"];function Ni(t){return t.split(";").map(function(n){return n.trim()}).filter(function(n){return n}).reduce(function(n,a){var o=a.indexOf(":"),l=Ei.camelize(a.slice(0,o)),r=a.slice(o+1).trim();return n[l]=r,n},{})}function $i(t){return t.split(/\s+/).reduce(function(n,a){return n[a]=!0,n},{})}function ua(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(c){return ua(c)}),l=Object.keys(t.attributes||{}).reduce(function(c,f){var x=t.attributes[f];switch(f){case"class":c.class=$i(x);break;case"style":c.style=Ni(x);break;default:c.attrs[f]=x}return c},{attrs:{},class:{},style:{}});a.class;var r=a.style,s=r===void 0?{}:r,i=bi(a,Si);return e.h(t.tag,ge(ge(ge({},n),{},{class:l.class,style:ge(ge({},l.style),s)},l.attrs),i),o)}var to=!1;try{to=process.env.NODE_ENV==="production"}catch{}function zi(){if(!to&&console&&typeof console.error=="function"){var t;(t=console).error.apply(t,arguments)}}function Qa(t){if(t&&ft(t)==="object"&&t.prefix&&t.iconName&&t.icon)return t;if(mt.icon)return mt.icon(t);if(t===null)return null;if(ft(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 Di=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,l=e.computed(function(){return Qa(n.icon)}),r=e.computed(function(){return Ye("classes",Bi(n))}),s=e.computed(function(){return Ye("transform",typeof n.transform=="string"?mt.transform(n.transform):n.transform)}),i=e.computed(function(){return Ye("mask",Qa(n.mask))}),c=e.computed(function(){var x=ge(ge(ge(ge({},r.value),s.value),i.value),{},{symbol:n.symbol,maskId:n.maskId});return x.title=n.title,x.titleId=n.titleId,pi(l.value,x)});e.watch(c,function(x){if(!x)return zi("Could not find one or more icon(s)",l.value,i.value)},{immediate:!0});var f=e.computed(function(){return c.value?ua(c.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,l=Zn.familyPrefix,r=e.computed(function(){return["".concat(l,"-layers")].concat(Qt(n.fixedWidth?["".concat(l,"-fw")]:[]))});return function(){return e.h("div",{class:r.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,l=Zn.familyPrefix,r=e.computed(function(){return Ye("classes",[].concat(Qt(n.counter?["".concat(l,"-layers-counter")]:[]),Qt(n.position?["".concat(l,"-layers-").concat(n.position)]:[])))}),s=e.computed(function(){return Ye("transform",typeof n.transform=="string"?mt.transform(n.transform):n.transform)}),i=e.computed(function(){var f=gi(n.value.toString(),ge(ge({},s.value),r.value)),x=f.abstract;return n.counter&&(x[0].attributes.class=x[0].attributes.class.replace("fa-layers-text","")),x[0]}),c=e.computed(function(){return ua(i.value,{},o)});return function(){return c.value}}});const H={__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"),l=e.computed(()=>[o.value,"inline-block"]);return(r,s)=>(e.openBlock(),e.createBlock(e.unref(Di),{icon:[t.prefix,t.icon],size:a.value,class:e.normalizeClass(l.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"]))}},Ti=["src","alt"],ao={__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=P.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"}}}),l=e.computed(()=>N(o({size:n.size,variant:n.variant}),n.class)),r=e.computed(()=>"aspect-square h-full w-full object-cover"),s=e.computed(()=>N("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"})),i=e.computed(()=>N("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"})),c=()=>{a.value=!0};return(f,x)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(l.value)},[t.src?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.src,alt:t.alt,class:e.normalizeClass(r.value),onError:c},null,42,Ti)):t.initials?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(s.value)},e.toDisplayString(t.initials),3)):(e.openBlock(),e.createBlock(H,{key:2,name:"User",class:e.normalizeClass(i.value)},null,8,["class"]))],2))}},Fi=["aria-label"],ma=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,l=()=>o("dismiss"),r=P.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"}}),s=e.computed(()=>["mr-1",{sm:"w-3 h-3",md:"w-4 h-4",lg:"w-5 h-5"}[a.size]]);return(i,c)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(e.unref(N)(e.unref(r)({variant:t.variant,size:t.size,shape:t.shape}),i.$attrs.class))},[t.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.icon),{key:0,class:e.normalizeClass(s.value)},null,8,["class"])):e.createCommentVNode("",!0),e.renderSlot(i.$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:l},[e.createVNode(H,{icon:"xmark",class:"w-3 h-3"})],8,Fi)):e.createCommentVNode("",!0)],2))}}),Ai=["disabled","aria-disabled","aria-busy"],Mi={key:2},oe=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:"default",validator:t=>["2xs","xs","sm","default","md","lg","xl","2xl","icon-sm","icon","icon-lg"].includes(t)},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},loadingText:{type:String,default:null},icon:{type:String,default:null}},setup(t){const n=t,a=P.cva("inline-flex items-center justify-center whitespace-nowrap rounded-md 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:{"2xs":"h-6 px-2 py-1 text-xs rounded",xs:"h-7 px-2.5 py-1 text-xs rounded-md",sm:"h-8 px-3 py-1.5 text-sm rounded-md",default:"h-10 px-4 py-2 text-sm rounded-md",md:"h-10 px-4 py-2 text-sm rounded-md",lg:"h-11 px-6 py-2.5 text-base rounded-md",xl:"h-12 px-8 py-3 text-base rounded-lg","2xl":"h-14 px-10 py-3.5 text-lg rounded-lg","icon-sm":"h-8 w-8 p-0",icon:"h-10 w-10 p-0","icon-lg":"h-12 w-12 p-0"}},defaultVariants:{variant:"default",size:"default"}}),o=e.computed(()=>({"2xs":"h-3 w-3",xs:"h-3.5 w-3.5",sm:"h-4 w-4",default:"h-4 w-4",md:"h-4 w-4",lg:"h-5 w-5",xl:"h-5 w-5","2xl":"h-6 w-6","icon-sm":"h-4 w-4",icon:"h-5 w-5","icon-lg":"h-6 w-6"})[n.size]||"h-4 w-4"),l=e.computed(()=>({"2xs":"h-3 w-3",xs:"h-3.5 w-3.5",sm:"h-4 w-4",default:"h-4 w-4",md:"h-4 w-4",lg:"h-5 w-5",xl:"h-5 w-5","2xl":"h-6 w-6","icon-sm":"h-4 w-4",icon:"h-5 w-5","icon-lg":"h-6 w-6"})[n.size]||"h-4 w-4");return(r,s)=>(e.openBlock(),e.createElementBlock("button",e.mergeProps({class:e.unref(N)(e.unref(a)({variant:t.variant,size:t.size}),r.$attrs.class),disabled:t.disabled||t.loading,"aria-disabled":t.disabled||t.loading,"aria-busy":t.loading},r.$attrs),[t.loading?(e.openBlock(),e.createElementBlock("svg",{key:0,class:e.normalizeClass([l.value,"animate-spin mr-2 text-current"]),xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},[...s[0]||(s[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)])],2)):e.createCommentVNode("",!0),t.icon&&!t.loading?(e.openBlock(),e.createBlock(H,{key:1,icon:t.icon,class:e.normalizeClass(o.value)},null,8,["icon","class"])):e.createCommentVNode("",!0),t.loading&&t.loadingText?(e.openBlock(),e.createElementBlock("span",Mi,e.toDisplayString(t.loadingText),1)):e.renderSlot(r.$slots,"default",{key:3})],16,Ai))}}),Li={class:"flex items-center gap-3"},Pi={class:"relative"},ji=["id","checked","indeterminate","disabled","required","aria-describedby"],Oi={class:"flex-1"},Ii=["for"],Xe={__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={render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m4.5 12.75 6 6 9-13.5"})])}},o={render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M5 12h14"})])}},l=t,r=n,s=e.ref(null),i=e.computed(()=>l.id||e.useId()),c=e.computed(()=>Array.isArray(l.modelValue)?l.modelValue.includes(l.value):l.modelValue),f=v=>{const h=v.target.checked;if(Array.isArray(l.modelValue)){const k=[...l.modelValue];if(h)k.push(l.value);else{const z=k.indexOf(l.value);z>-1&&k.splice(z,1)}r("update:modelValue",k)}else r("update:modelValue",h);r("change",h)},x=()=>{!l.disabled&&s.value&&s.value.click()},C=e.computed(()=>{if(l.error)return`${i.value}-error`}),$=e.computed(()=>({sm:"w-4 h-4",md:"w-5 h-5",lg:"w-6 h-6"})[l.size]),E=e.computed(()=>["absolute inset-0 w-full h-full opacity-0 cursor-pointer",{"cursor-not-allowed":l.disabled}]),B=e.computed(()=>["flex items-center justify-center rounded border-2 transition-all duration-200","cursor-pointer select-none",$.value,{"bg-blue-600 border-blue-600 text-white":c.value&&!l.disabled&&l.variant==="default","bg-red-600 border-red-600 text-white":c.value&&!l.disabled&&l.variant==="error","bg-slate-200 border-slate-300 text-slate-400":c.value&&l.disabled,"bg-white border-slate-300 hover:border-slate-400":!c.value&&!l.disabled&&l.variant==="default","bg-white border-red-300 hover:border-red-400":!c.value&&!l.disabled&&l.variant==="error","bg-slate-50 border-slate-200":!c.value&&l.disabled,"cursor-not-allowed":l.disabled,"focus-within:ring-2 focus-within:ring-offset-2":!l.disabled,"focus-within:ring-blue-500":!l.disabled&&l.variant==="default","focus-within:ring-red-500":!l.disabled&&l.variant==="error"}]),w=e.computed(()=>["text-sm font-medium cursor-pointer select-none",{"text-slate-900":!l.disabled,"text-slate-500":l.disabled}]),b=e.computed(()=>["text-xs text-slate-500 mt-1"]);return e.watch(()=>l.indeterminate,v=>{s.value&&(s.value.indeterminate=v)},{immediate:!0}),(v,h)=>(e.openBlock(),e.createElementBlock("div",Li,[e.createElementVNode("div",Pi,[e.createElementVNode("input",{id:i.value,ref_key:"checkboxRef",ref:s,type:"checkbox",checked:c.value,indeterminate:t.indeterminate,disabled:t.disabled,required:t.required,class:e.normalizeClass(E.value),"aria-describedby":C.value,onChange:f},null,42,ji),e.createElementVNode("div",{class:e.normalizeClass(B.value),onClick:x},[c.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",Oi,[e.createElementVNode("label",{for:i.value,class:e.normalizeClass(w.value)},[e.renderSlot(v.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])],10,Ii),t.description?(e.openBlock(),e.createElementBlock("p",{key:0,class:e.normalizeClass(b.value)},e.toDisplayString(t.description),3)):e.createCommentVNode("",!0)])]))}},_i={key:0,class:"px-3 text-sm text-gray-500 bg-white dark:bg-gray-900 dark:text-gray-400 relative z-10"},no={__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=P.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(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(N)(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",_i,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)],2))}},Ri=["aria-label"],Ui={key:0,class:"sr-only"},xt={__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=P.cva("inline-flex items-center justify-center",{variants:{variant:{default:"text-muted-foreground",primary:"text-primary",secondary:"text-secondary-foreground"}}}),o=P.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"}}}),l=e.computed(()=>N(a({variant:n.variant}),n.class)),r=e.computed(()=>o({size:n.size}));return(s,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(l.value),role:"status","aria-label":t.label},[(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass(r.value),xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},[...i[0]||(i[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",Ui,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)],10,Ri))}},qi=["src","alt","loading"],oo={__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,l=e.ref(!0),r=e.ref(!1),s=P.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]"}}}),i=e.computed(()=>N(s({aspectRatio:a.aspectRatio}),a.class)),c=e.computed(()=>N("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"},l.value&&"opacity-0",r.value&&"hidden")),f=e.computed(()=>"absolute inset-0 flex items-center justify-center bg-muted"),x=e.computed(()=>"absolute inset-0 flex flex-col items-center justify-center gap-2 bg-muted"),C=E=>{l.value=!1,r.value=!1,o("load",E)},$=E=>{l.value=!1,r.value=!0,o("error",E)};return(E,B)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(i.value)},[e.createElementVNode("img",{src:t.src,alt:t.alt,class:e.normalizeClass(c.value),loading:t.loading,onLoad:C,onError:$},null,42,qi),l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(f.value)},[t.showSpinner?(e.openBlock(),e.createBlock(xt,{key:0,size:"sm"})):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),r.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(x.value)},[e.createVNode(H,{name:"ImageOff",class:"h-8 w-8 text-muted-foreground"}),B[0]||(B[0]=e.createElementVNode("span",{class:"text-sm text-muted-foreground"},"Failed to load image",-1))],2)):e.createCommentVNode("",!0)],2))}},Hi={class:"relative"},Wi={key:0,class:"absolute left-3 top-1/2 transform -translate-y-1/2 pointer-events-none"},Yi=["id","type","value","placeholder","disabled","readonly","required","autocomplete","aria-describedby","aria-invalid"],Gi={key:1,class:"absolute right-3 top-1/2 transform -translate-y-1/2"},Ki=["aria-label"],le={__name:"Input",props:{modelValue:{type:[String,Number],default:""},type:{type:String,default:"text",validator:t=>["text","email","password","number","tel","url","search","date","color","file"].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,l=a,r=e.ref(null),s=e.computed(()=>o.id||e.useId()),i=h=>{l("update:modelValue",h.target.value)},c=h=>{l("blur",h)},f=h=>{l("focus",h)},x=h=>{l("keydown",h)},C=()=>{l("update:modelValue",""),l("clear"),r.value?.focus()},$=e.computed(()=>!!o.error||o.variant==="error"),E=e.computed(()=>{if(o.error)return`${s.value}-error`}),B=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]),w=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]),b=e.computed(()=>["text-slate-400",{sm:"w-4 h-4",md:"w-4 h-4",lg:"w-5 h-5"}[o.size]]),v=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",B.value,w.value,{"pl-10":o.iconLeft,"pr-10":o.iconRight||o.clearable}]);return n({focus:()=>r.value?.focus(),blur:()=>r.value?.blur(),select:()=>r.value?.select()}),(h,k)=>(e.openBlock(),e.createElementBlock("div",Hi,[t.iconLeft?(e.openBlock(),e.createElementBlock("div",Wi,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.iconLeft),{class:e.normalizeClass(b.value)},null,8,["class"]))])):e.createCommentVNode("",!0),e.createElementVNode("input",{id:s.value,ref_key:"inputRef",ref:r,type:t.type,value:t.modelValue,placeholder:t.placeholder,disabled:t.disabled,readonly:t.readonly,required:t.required,autocomplete:t.autocomplete,class:e.normalizeClass(v.value),"aria-describedby":E.value,"aria-invalid":$.value,onInput:i,onBlur:c,onFocus:f,onKeydown:x},null,42,Yi),t.iconRight||t.clearable?(e.openBlock(),e.createElementBlock("div",Gi,[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:C},[e.createVNode(H,{name:"x-mark",class:"w-5 h-5"})],8,Ki)):t.iconRight?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.iconRight),{key:1,class:e.normalizeClass(b.value)},null,8,["class"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]))}},Xi=["for"],Be={__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=P.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(()=>N(a({size:n.size}),n.disabled&&"cursor-not-allowed opacity-70",n.class));return(l,r)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(o.value),for:t.htmlFor},[e.renderSlot(l.$slots,"default")],10,Xi))}},lo={__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"),l=e.computed(()=>`w-4 h-4 ${a.iconPosition==="left"?"mr-2":"ml-2"}`),r=P.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}}),s=c=>{if(a.disabled){c.preventDefault();return}i("click",c)},i=n;return(c,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(N)(e.unref(r)({variant:t.variant,size:t.size,underline:t.underline,block:t.block,disabled:t.disabled}),c.$attrs.class)),onClick:s},{default:e.withCtx(()=>[t.icon&&t.iconPosition==="left"?(e.openBlock(),e.createBlock(H,{key:0,name:t.icon,class:e.normalizeClass(l.value)},null,8,["name","class"])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default"),t.icon&&t.iconPosition==="right"?(e.openBlock(),e.createBlock(H,{key:1,name:t.icon,class:e.normalizeClass(l.value)},null,8,["name","class"])):e.createCommentVNode("",!0),t.external&&t.showExternalIcon?(e.openBlock(),e.createBlock(H,{key:2,name:"external-link",class:"w-3 h-3 ml-1 inline-block"})):e.createCommentVNode("",!0)]),_:3},8,["href","to","target","rel","class"]))}},Qi=["src","alt"],ro={__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=P.cva("flex items-center",{variants:{size:{sm:"h-6",md:"h-8",lg:"h-10",xl:"h-12"}}}),o=e.computed(()=>N(a({size:n.size}),n.class)),l=e.computed(()=>N("h-full w-auto object-contain")),r=e.computed(()=>N("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(s,i)=>(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(l.value)},null,10,Qi)):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(r.value)},e.toDisplayString(t.text||"Logo"),3))],2))}},Ji=["value","disabled","selected"],fa={__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,Ji))}},Zi=["aria-valuenow"],so={__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 r=n.value/n.max*100;return Math.min(Math.max(r,0),100)}),o=P.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"}}),l=P.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(r,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(N)(e.unref(o)({size:t.size}),r.$attrs.class))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)(e.unref(l)({variant:t.variant}))),style:e.normalizeStyle({width:`${a.value}%`}),role:"progressbar","aria-valuenow":a.value,"aria-valuemin":0,"aria-valuemax":100},null,14,Zi)],2))}},ec=["aria-valuenow"],io={__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 c=n.value/n.max*100;return Math.min(Math.max(c,0),100)}),o=P.cva("relative w-full overflow-hidden rounded-full bg-secondary",{variants:{size:{sm:"h-2",md:"h-3",lg:"h-4"}}}),l=P.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"}}}),r=e.computed(()=>N(o({size:n.size}),n.class)),s=e.computed(()=>l({variant:n.variant})),i=e.computed(()=>"absolute inset-0 flex items-center justify-center text-xs font-medium text-primary-foreground");return(c,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(r.value)},[e.createElementVNode("div",{class:e.normalizeClass(s.value),style:e.normalizeStyle({width:`${a.value}%`}),role:"progressbar","aria-valuenow":a.value,"aria-valuemin":0,"aria-valuemax":100},null,14,ec),t.showLabel?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(i.value)},e.toDisplayString(a.value)+"% ",3)):e.createCommentVNode("",!0)],2))}},tc=["width","height","viewBox"],ac=["cx","cy","r","stroke","stroke-width"],nc=["cx","cy","r","stroke","stroke-width","stroke-dasharray","stroke-dashoffset","stroke-linecap"],oc={key:0,class:"absolute inset-0 flex items-center justify-center"},pa={__name:"CircularProgress",props:{value:{type:[Number,String],default:0},max:{type:[Number,String],default:100},size:{type:String,default:"md",validator:t=>["xs","sm","md","lg","xl"].includes(t)},variant:{type:String,default:"default",validator:t=>["default","success","warning","danger"].includes(t)},showValue:{type:Boolean,default:!0},showRawValue:{type:Boolean,default:!1},dynamicColor:{type:Boolean,default:!0},strokeLinecap:{type:String,default:"round",validator:t=>["butt","round","square"].includes(t)}},setup(t){const n=t,a=e.computed(()=>parseFloat(n.value)||0),o=e.computed(()=>parseFloat(n.max)||100),l=e.computed(()=>{const B=a.value/o.value*100;return Math.min(Math.max(B,0),100)}),r=e.computed(()=>({xs:42,sm:48,md:64,lg:80,xl:96})[n.size]||64),s=e.computed(()=>({xs:2.5,sm:4,md:5,lg:6,xl:7})[n.size]||5),i=e.computed(()=>r.value/2),c=e.computed(()=>i.value-s.value/2),f=e.computed(()=>2*Math.PI*c.value),x=e.computed(()=>f.value-l.value/100*f.value),C=e.computed(()=>{if(n.dynamicColor){const w=l.value;return w>=80?"#ef4444":w>=60?"#f59e0b":w>=40?"#eab308":w>=20?"#22c55e":"#6b7280"}const B={default:"#3b82f6",success:"#10b981",warning:"#f59e0b",danger:"#ef4444"};return B[n.variant]||B.default}),$=e.computed(()=>"#e5e7eb"),E=e.computed(()=>{if(n.dynamicColor){const w=l.value;return w>=80?"text-red-600":w>=60?"text-orange-600":w>=40?"text-yellow-600":w>=20?"text-green-600":"text-gray-600"}const B={default:"text-blue-600",success:"text-green-600",warning:"text-yellow-600",danger:"text-red-600"};return B[n.variant]||B.default});return(B,w)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(N)("relative inline-flex items-center justify-center",B.$attrs.class))},[(e.openBlock(),e.createElementBlock("svg",{width:r.value,height:r.value,viewBox:`0 0 ${r.value} ${r.value}`,class:"transform -rotate-90"},[e.createElementVNode("circle",{cx:i.value,cy:i.value,r:c.value,stroke:$.value,"stroke-width":s.value,fill:"none"},null,8,ac),e.createElementVNode("circle",{cx:i.value,cy:i.value,r:c.value,stroke:C.value,"stroke-width":s.value,fill:"none","stroke-dasharray":f.value,"stroke-dashoffset":x.value,"stroke-linecap":t.strokeLinecap,class:"transition-all duration-300 ease-in-out"},null,8,nc)],8,tc)),t.showValue?(e.openBlock(),e.createElementBlock("div",oc,[e.createElementVNode("span",{class:e.normalizeClass(e.unref(N)("text-xs font-medium",E.value))},e.toDisplayString(t.showRawValue?a.value.toFixed(2):Math.round(l.value)+"%"),3)])):e.createCommentVNode("",!0)],2))}},lc={class:"flex items-center space-x-2"},rc=["aria-checked","disabled"],co={__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,l=e.computed(()=>a.modelValue===a.value),r=P.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"}}}),s=e.computed(()=>N(r({size:a.size}),a.disabled&&"cursor-not-allowed opacity-50",a.class)),i=e.computed(()=>N("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"})),c=e.computed(()=>N("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(x,C)=>(e.openBlock(),e.createElementBlock("div",lc,[e.createElementVNode("button",{type:"button",role:"radio","aria-checked":l.value,disabled:t.disabled,class:e.normalizeClass(s.value),onClick:f},[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(i.value)},null,2)):e.createCommentVNode("",!0)],10,rc),t.label?(e.openBlock(),e.createElementBlock("label",{key:0,class:e.normalizeClass(c.value),onClick:f},e.toDisplayString(t.label),3)):e.createCommentVNode("",!0)]))}},sc=["id","name","value","disabled","required"],ic={key:1,class:"relative"},cc=["id","disabled"],dc={key:0,class:"text-gray-500"},uc={key:1,class:"text-gray-900"},mc={class:"px-3 py-2 border-b border-gray-200"},fc=["onKeydown"],pc={key:0,class:"max-h-48 overflow-y-auto"},gc=["onClick"],vc={class:"block font-normal truncate"},hc={key:0,class:"absolute inset-y-0 right-0 flex items-center pr-4 text-blue-600"},yc={key:1,class:"px-4 py-3 text-sm text-gray-500 text-center"},bc={key:2,class:"px-4 py-3"},he={__name:"Select",props:{modelValue:{type:[String,Number,Boolean],default:""},options:{type:Array,default:()=>[]},placeholder:{type:String,default:null},hasError:{type:Boolean,default:!1},id:{type:String,default:null},name:{type:String,default:null},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},allowCreate:{type:Boolean,default:!1},class:String},emits:["update:modelValue"],setup(t,{emit:n}){const a=t,o=n,l=e.ref(!1),r=e.ref(""),s=e.ref(null),i=e.ref(null),c=e.ref(null),f=e.ref([...a.options]),x=e.ref({}),C=e.computed(()=>a.options.find(V=>V.value===a.modelValue)),$=P.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"}}}),E=e.computed(()=>N($({disabled:a.disabled}),"px-3 py-2",a.class)),B=()=>{if(!i.value)return;const V=i.value.getBoundingClientRect();x.value={position:"fixed",top:`${V.bottom+4}px`,left:`${V.left}px`,width:`${V.width}px`,zIndex:9999}},w=()=>{a.disabled||(l.value=!l.value,l.value&&(B(),e.nextTick(()=>{s.value?.focus()})))},b=V=>{o("update:modelValue",V),l.value=!1,r.value="",f.value=[...a.options]},v=V=>{if(V&&(V.stopPropagation(),V.preventDefault()),a.allowCreate&&r.value.trim()){const D=r.value.trim();o("update:modelValue",D),l.value=!1,r.value="",f.value=[...a.options]}},h=()=>{if(!r.value.trim())f.value=[...a.options];else{const V=r.value.toLowerCase();f.value=a.options.filter(D=>D.label.toLowerCase().includes(V))}},k=V=>{V.key==="Escape"?(l.value=!1,r.value="",f.value=[...a.options]):V.key==="Enter"&&a.allowCreate&&r.value.trim()&&f.value.length===0&&(V.preventDefault(),v(V))},z=V=>{if(!i.value)return;const D=V.target,j=c.value&&c.value.contains(D),K=i.value.contains(D);!j&&!K&&(l.value=!1,r.value="",f.value=[...a.options])};return e.onMounted(()=>{document.addEventListener("click",z),window.addEventListener("scroll",B,!0),window.addEventListener("resize",B)}),e.onUnmounted(()=>{document.removeEventListener("click",z),window.removeEventListener("scroll",B,!0),window.removeEventListener("resize",B)}),e.watch(()=>a.options,V=>{f.value=[...V]},{immediate:!0}),e.watch(l,V=>{V&&B()}),(V,D)=>!t.options||t.options.length===0?(e.openBlock(),e.createElementBlock("select",e.mergeProps({key:0,id:t.id,name:t.name,value:t.modelValue,disabled:t.disabled,required:t.required,class:E.value},V.$attrs,{onChange:D[0]||(D[0]=j=>V.$emit("update:modelValue",j.target.value))}),[e.renderSlot(V.$slots,"default")],16,sc)):(e.openBlock(),e.createElementBlock("div",ic,[e.createElementVNode("button",{id:t.id,ref_key:"buttonRef",ref:i,type:"button",disabled:t.disabled,class:e.normalizeClass(["w-full px-3 py-2 text-left border rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 bg-white",t.hasError?"border-red-500":"border-slate-300",t.disabled?"bg-gray-100 cursor-not-allowed opacity-50":"hover:border-slate-400"]),onClick:w,onKeydown:k},[C.value?(e.openBlock(),e.createElementBlock("div",uc,e.toDisplayString(C.value.label),1)):(e.openBlock(),e.createElementBlock("div",dc,e.toDisplayString(t.placeholder||"Select an option"),1)),D[3]||(D[3]=e.createElementVNode("svg",{class:"absolute right-2 top-2.5 h-5 w-5 text-gray-400",fill:"currentColor",viewBox:"0 0 20 20"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z","clip-rule":"evenodd"})],-1))],42,cc),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:c,style:e.normalizeStyle(x.value),"data-select-dropdown":"",class:"bg-white shadow-lg max-h-60 rounded-md py-1 text-base ring-1 ring-black ring-opacity-5 overflow-auto focus:outline-none"},[e.createElementVNode("div",mc,[e.withDirectives(e.createElementVNode("input",{ref_key:"searchInput",ref:s,"onUpdate:modelValue":D[1]||(D[1]=j=>r.value=j),type:"text",placeholder:"Search options...",class:"w-full px-2 py-1 text-sm border border-gray-300 rounded focus:outline-none focus:ring-1 focus:ring-blue-500",onInput:h,onKeydown:[k,e.withKeys(e.withModifiers(k,["prevent"]),["enter"])]},null,40,fc),[[e.vModelText,r.value]])]),f.value.length>0?(e.openBlock(),e.createElementBlock("div",pc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,j=>(e.openBlock(),e.createElementBlock("button",{key:j.value,type:"button",class:e.normalizeClass(["cursor-pointer select-none relative py-2 pl-3 pr-9 w-full text-left hover:bg-blue-50 focus:bg-blue-50 focus:outline-none transition-colors duration-150",{"bg-blue-50 text-blue-900":t.modelValue===j.value}]),onClick:e.withModifiers(K=>b(j.value),["stop"])},[e.createElementVNode("span",vc,e.toDisplayString(j.label),1),t.modelValue===j.value?(e.openBlock(),e.createElementBlock("span",hc,[...D[4]||(D[4]=[e.createElementVNode("svg",{class:"h-5 w-5",fill:"currentColor",viewBox:"0 0 20 20"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z","clip-rule":"evenodd"})],-1)])])):e.createCommentVNode("",!0)],10,gc))),128))])):a.allowCreate?(e.openBlock(),e.createElementBlock("div",bc,[e.createElementVNode("button",{type:"button",class:"w-full text-left px-2 py-1 text-sm text-blue-600 hover:bg-blue-50 rounded cursor-pointer transition-colors",onClick:e.withModifiers(v,["stop"]),onMousedown:D[2]||(D[2]=e.withModifiers(()=>{},["prevent"]))},' Create "'+e.toDisplayString(r.value)+'" ',33)])):(e.openBlock(),e.createElementBlock("div",yc," No options found "))],4)):e.createCommentVNode("",!0)]))]))}},xc=["aria-checked","disabled"],uo={__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,l=P.cva("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-gray-400 focus-visible:ring-offset-2 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-red-600",false:"bg-gray-300"}}}),r=P.cva("pointer-events-none block rounded-full bg-white 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"}]}),s=e.computed(()=>N(l({size:a.size,checked:a.modelValue}),a.class)),i=e.computed(()=>r({size:a.size,checked:a.modelValue})),c=()=>{a.disabled||o("update:modelValue",!a.modelValue)};return(f,x)=>(e.openBlock(),e.createElementBlock("button",{type:"button",role:"switch","aria-checked":t.modelValue,disabled:t.disabled,class:e.normalizeClass(s.value),onClick:c},[e.createElementVNode("span",{class:e.normalizeClass(i.value)},null,2)],10,xc))}},mo={__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=P.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(()=>N(a({size:n.size,variant:n.variant,weight:n.weight,align:n.align}),n.class));return(l,r)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.as),{class:e.normalizeClass(o.value)},{default:e.withCtx(()=>[e.renderSlot(l.$slots,"default")]),_:3},8,["class"]))}},kc=["id","value","placeholder","disabled","readonly","required","rows","maxlength","aria-describedby","aria-invalid"],kt={__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,l=a,r=e.ref(null),s=e.computed(()=>o.id||e.useId()),i=b=>{l("update:modelValue",b.target.value),o.autoResize&&e.nextTick(()=>w())},c=b=>l("blur",b),f=b=>l("focus",b),x=b=>l("keydown",b),C=e.computed(()=>!!o.error||o.variant==="error"),$=e.computed(()=>o.error?`${s.value}-error`:void 0),E=P.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"}}),B=e.computed(()=>N(E({size:o.size,variant:o.variant,resize:o.resize}))),w=()=>{if(!r.value||!o.autoResize)return;const b=r.value;b.style.height="auto",b.style.height=`${b.scrollHeight}px`};return e.watch(()=>o.modelValue,()=>{o.autoResize&&e.nextTick(()=>w())},{immediate:!0}),n({focus:()=>r.value?.focus(),blur:()=>r.value?.blur(),select:()=>r.value?.select()}),(b,v)=>(e.openBlock(),e.createElementBlock("textarea",{id:s.value,ref_key:"textareaRef",ref:r,value:t.modelValue,placeholder:t.placeholder,disabled:t.disabled,readonly:t.readonly,required:t.required,rows:t.rows,maxlength:t.maxlength,class:e.normalizeClass(B.value),"aria-describedby":$.value,"aria-invalid":C.value,onInput:i,onBlur:c,onFocus:f,onKeydown:x},null,42,kc))}},ga={__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),l=e.ref(null),r=e.ref({});let s=null;const i=P.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:""}}}),c=P.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(()=>N(i({placement:n.placement}),n.class)),x=e.computed(()=>c({placement:n.placement})),C=()=>{if(!o.value||!l.value)return;const B=o.value.getBoundingClientRect(),w=l.value.getBoundingClientRect();let b=0,v=0;const h=8;switch(n.placement){case"top":b=B.top-w.height-h,v=B.left+B.width/2-w.width/2;break;case"bottom":b=B.bottom+h,v=B.left+B.width/2-w.width/2;break;case"left":b=B.top+B.height/2-w.height/2,v=B.left-w.width-h;break;case"right":b=B.top+B.height/2-w.height/2,v=B.right+h;break}const k=8;v<k&&(v=k),v+w.width>window.innerWidth-k&&(v=window.innerWidth-w.width-k),b<k&&(b=k),b+w.height>window.innerHeight-k&&(b=window.innerHeight-w.height-k),r.value={top:`${b}px`,left:`${v}px`}},$=()=>{s&&clearTimeout(s),s=setTimeout(async()=>{a.value=!0,await e.nextTick(),C()},n.delay)},E=()=>{s&&clearTimeout(s),a.value=!1};return(B,w)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"triggerRef",ref:o,class:"relative inline-block",onMouseenter:$,onMouseleave:E},[e.renderSlot(B.$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:l,class:e.normalizeClass(f.value),style:e.normalizeStyle(r.value),role:"tooltip"},[e.createTextVNode(e.toDisplayString(t.content)+" ",1),e.createElementVNode("div",{class:e.normalizeClass(x.value)},null,2)],6)):e.createCommentVNode("",!0)]),_:1})]))],544))}},wc={key:0,class:"text-red-600 ml-1","aria-hidden":"true"},pt={__name:"Typography",props:{variant:{type:String,default:"body-md",validator:t=>["body-2xs","body-xs","body-sm","body-md","body-lg","body-xl","body-2xl","text-2xs","text-xs","text-sm","text-md","text-lg","text-xl","text-2xl","display-xs","display-sm","display-md","display-lg","display-xl","display-2xl","caption","overline","label"].includes(t)},color:{type:String,default:"default",validator:t=>["default","primary","secondary","accent","success","warning","danger","info","muted","disabled","white","black"].includes(t)},align:{type:String,default:"left",validator:t=>["left","center","right","justify"].includes(t)},weight:{type:String,default:null,validator:t=>["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"].includes(t)},transform:{type:String,default:null,validator:t=>["uppercase","lowercase","capitalize","normal"].includes(t)},leading:{type:String,default:null,validator:t=>["none","tight","snug","normal","relaxed","loose"].includes(t)},tracking:{type:String,default:null,validator:t=>["tighter","tight","normal","wide","wider","widest"].includes(t)},italic:Boolean,underline:Boolean,lineThrough:Boolean,truncate:Boolean,noWrap:Boolean,required:Boolean,gradient:Boolean,maxLines:{type:Number,default:null},shadow:{type:String,default:null,validator:t=>["sm","md","lg","xl","2xl"].includes(t)},spacing:{type:String,default:null,validator:t=>["tight","normal","relaxed","loose"].includes(t)},responsive:Boolean,opacity:{type:Number,default:null,validator:t=>t>=0&&t<=100}},setup(t){const n=t,a=e.computed(()=>({"body-2xs":"p","body-xs":"p","body-sm":"p","body-md":"p","body-lg":"p","body-xl":"p","body-2xl":"p","text-2xs":"h6","text-xs":"h6","text-sm":"h5","text-md":"h4","text-lg":"h3","text-xl":"h2","text-2xl":"h1","display-xs":"h2","display-sm":"h2","display-md":"h1","display-lg":"h1","display-xl":"h1","display-2xl":"h1",caption:"span",overline:"span",label:"label"})[n.variant]||"p"),o=e.computed(()=>({"body-2xs":"text-[10px] leading-normal","body-xs":"text-xs leading-normal","body-sm":"text-sm leading-relaxed","body-md":"text-base leading-relaxed","body-lg":"text-lg leading-relaxed","body-xl":"text-xl leading-relaxed","body-2xl":"text-2xl leading-relaxed","text-2xs":"text-xs font-semibold leading-snug","text-xs":"text-sm font-semibold leading-snug","text-sm":"text-lg font-semibold leading-snug","text-md":"text-xl font-semibold leading-snug","text-lg":"text-2xl font-bold leading-snug","text-xl":"text-3xl font-bold leading-snug","text-2xl":"text-4xl font-bold leading-snug","display-xs":"text-3xl font-bold leading-tight tracking-tight","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","display-xl":"text-7xl font-bold leading-tight tracking-tighter","display-2xl":"text-8xl font-bold leading-tight tracking-tighter",caption:"text-xs leading-normal text-slate-600",overline:"text-xs font-medium uppercase tracking-wider leading-normal",label:"text-sm font-medium leading-normal"})[n.variant]),l=e.computed(()=>n.gradient?"bg-gradient-to-r from-blue-600 to-purple-600 bg-clip-text text-transparent":{default:"text-slate-900",primary:"text-blue-600",secondary:"text-slate-600",accent:"text-purple-600",success:"text-green-600",warning:"text-yellow-600",danger:"text-red-600",info:"text-cyan-600",muted:"text-slate-500",disabled:"text-slate-400",white:"text-white",black:"text-black"}[n.color]),r=e.computed(()=>({left:"text-left",center:"text-center",right:"text-right",justify:"text-justify"})[n.align]),s=e.computed(()=>n.weight?{thin:"font-thin",extralight:"font-extralight",light:"font-light",normal:"font-normal",medium:"font-medium",semibold:"font-semibold",bold:"font-bold",extrabold:"font-extrabold",black:"font-black"}[n.weight]:""),i=e.computed(()=>n.transform?{uppercase:"uppercase",lowercase:"lowercase",capitalize:"capitalize",normal:"normal-case"}[n.transform]:""),c=e.computed(()=>n.leading?{none:"leading-none",tight:"leading-tight",snug:"leading-snug",normal:"leading-normal",relaxed:"leading-relaxed",loose:"leading-loose"}[n.leading]:""),f=e.computed(()=>n.tracking?{tighter:"tracking-tighter",tight:"tracking-tight",normal:"tracking-normal",wide:"tracking-wide",wider:"tracking-wider",widest:"tracking-widest"}[n.tracking]:""),x=e.computed(()=>n.shadow?{sm:"drop-shadow-sm",md:"drop-shadow-md",lg:"drop-shadow-lg",xl:"drop-shadow-xl","2xl":"drop-shadow-2xl"}[n.shadow]:""),C=e.computed(()=>n.spacing?{tight:"mb-1",normal:"mb-2",relaxed:"mb-4",loose:"mb-6"}[n.spacing]:""),$=e.computed(()=>n.responsive?"text-sm sm:text-base md:text-lg lg:text-xl":""),E=e.computed(()=>n.maxLines?`line-clamp-${n.maxLines}`:""),B=e.computed(()=>{const b={};return n.opacity!==null&&(b.opacity=n.opacity/100),b}),w=e.computed(()=>[o.value,l.value,r.value,s.value,i.value,c.value,f.value,x.value,C.value,$.value,E.value,{italic:n.italic,underline:n.underline,"line-through":n.lineThrough,truncate:n.truncate&&!n.maxLines,"whitespace-nowrap":n.noWrap,"transition-colors duration-200":!0,"select-none":n.variant==="overline"||n.variant==="label"}]);return(b,v)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.value),e.mergeProps({class:w.value,style:B.value},b.$attrs),{default:e.withCtx(()=>[e.renderSlot(b.$slots,"default"),t.required?(e.openBlock(),e.createElementBlock("span",wc,"*")):e.createCommentVNode("",!0)]),_:3},16,["class","style"]))}},Cc={class:"flex items-start gap-3"},Bc={key:0,class:"flex-shrink-0 mt-0.5"},Vc={class:"flex-1 min-w-0"},Ec={key:0,class:"font-medium text-sm mb-1"},Sc={key:1,class:"mt-3 flex gap-2"},Nc=["aria-label"],fo=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,l=e.ref(!0),r=()=>{l.value=!1,o("dismiss")},s=b=>{o("action",b),b.onClick&&b.onClick()};if(a.autoClose){const b=typeof a.autoClose=="number"?a.autoClose:5e3;setTimeout(r,b)}const i={render(){return e.h("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 9v2m0 4h.01M21 12A9 9 0 1112 3a9 9 0 019 9z"})])}},c={render(){return e.h("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 12l2 2l4-4m5 2a9 9 0 11-18 0a9 9 0 0118 0z"})])}},f={render(){return e.h("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 9v2m0 4h.01M10.29 3.86L1.82 18a1.5 1.5 0 001.29 2.25h18.78a1.5 1.5 0 001.29-2.25L13.71 3.86a1.5 1.5 0 00-2.42 0z"})])}},x={render(){return e.h("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0a9 9 0 0118 0z"})])}},C={render(){return e.h("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})])}},$=e.computed(()=>({info:i,success:c,warning:f,error:x,default:i,danger:x})[a.variant]),E=P.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"}}),B=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]]),w=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(b,v)=>(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(()=>[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(N)(e.unref(E)({variant:t.variant}),b.$attrs.class)),role:"alert"},[e.createElementVNode("div",Cc,[t.showIcon?(e.openBlock(),e.createElementBlock("div",Bc,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent($.value),{class:e.normalizeClass(B.value)},null,8,["class"]))])):e.createCommentVNode("",!0),e.createElementVNode("div",Vc,[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(b.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.message),1)])],2),b.$slots.actions||t.actions.length>0?(e.openBlock(),e.createElementBlock("div",Sc,[e.renderSlot(b.$slots,"actions",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.actions,h=>(e.openBlock(),e.createBlock(oe,{key:h.label,variant:h.variant||"outline",size:h.size||"sm",onClick:k=>s(h)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(h.label),1)]),_:2},1032,["variant","size","onClick"]))),128))])])):e.createCommentVNode("",!0)]),t.dismissible?(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass(w.value),"aria-label":t.dismissLabel,onClick:r},[e.createVNode(C,{class:"w-4 h-4"})],10,Nc)):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0)]),_:3}))}}),$c=["aria-label"],zc={class:"flex items-center space-x-1"},po={__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=P.cva("",{variants:{variant:{default:"",ghost:"text-muted-foreground"}}}),o=e.computed(()=>N(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("nav",{"aria-label":t.ariaLabel,class:e.normalizeClass(["flex",o.value])},[e.createElementVNode("ol",zc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(s,i)=>(e.openBlock(),e.createElementBlock("li",{key:i,class:"flex items-center"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.href?"a":"span"),{href:s.href,class:e.normalizeClass(["text-sm font-medium transition-colors hover:text-foreground",i===t.items.length-1?"text-foreground":"text-muted-foreground hover:text-foreground"]),"aria-current":i===t.items.length-1?"page":void 0},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.label),1)]),_:2},1032,["href","class","aria-current"])),i<t.items.length-1?(e.openBlock(),e.createBlock(H,{key:0,name:t.separator,class:"mx-2 h-4 w-4 text-muted-foreground"},null,8,["name"])):e.createCommentVNode("",!0)]))),128))])],10,$c))}},Dc=["aria-label"],go={__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=P.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(()=>N(a({orientation:n.orientation})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value),role:"group","aria-label":t.ariaLabel},[e.renderSlot(l.$slots,"default")],10,Dc))}},Tc={key:0,class:"absolute inset-0 bg-white/60 backdrop-blur-sm flex items-center justify-center z-10","aria-hidden":"true"},Fc={class:"flex items-start justify-between gap-4"},Ac={class:"flex-1 min-w-0"},Mc={key:0,class:"flex-shrink-0"},Lc=["src","alt","loading"],Pc={key:5,class:"absolute top-3 right-3"},jc={class:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-slate-900 text-white"},Oc="w-full h-full object-cover",Ic="font-semibold text-slate-900 line-clamp-2",_c="text-sm text-slate-600 mt-1 line-clamp-2",vo={__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,l=E=>{a.clickable&&!a.disabled&&!a.loading&&o("click",E)},r=E=>{a.clickable&&!a.disabled&&!a.loading&&o("click",E)},s=e.computed(()=>({sm:"text-base",default:"text-lg",lg:"text-xl",xl:"text-2xl"})[a.titleSize]),i=e.computed(()=>({auto:"",video:"aspect-video",square:"aspect-square",portrait:"aspect-[3/4]"})[a.imageAspect]),c=P.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=P.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:""}}}),x=P.cva("",{variants:{padding:{none:"p-4",sm:"p-3",md:"p-4",lg:"p-6",xl:"p-8"}}}),C=P.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"}}}),$=P.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(E,B)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.as),{class:e.normalizeClass(e.unref(N)(e.unref(c)({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:l,onKeydown:[e.withKeys(r,["enter"]),e.withKeys(e.withModifiers(r,["prevent"]),["space"])]},{default:e.withCtx(()=>[t.loading?(e.openBlock(),e.createElementBlock("div",Tc,[...B[0]||(B[0]=[e.createElementVNode("div",{class:"animate-spin rounded-full h-8 w-8 border-b-2 border-slate-900"},null,-1)])])):e.createCommentVNode("",!0),E.$slots.header||t.title||t.subtitle||E.$slots.actions?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(N)(e.unref(f)({padding:t.padding,hasBorder:!!(E.$slots.default||E.$slots.footer)})))},[e.renderSlot(E.$slots,"header",{},()=>[e.createElementVNode("div",Fc,[e.createElementVNode("div",Ac,[t.title?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.titleTag),{key:0,class:e.normalizeClass(e.unref(N)(Ic,s.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(_c)},e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)]),E.$slots.actions?(e.openBlock(),e.createElementBlock("div",Mc,[e.renderSlot(E.$slots,"actions")])):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0),E.$slots.image||t.image?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(e.unref(N)(e.unref($)({padding:t.padding,hasHeader:!!(E.$slots.header||t.title)})))},[e.renderSlot(E.$slots,"image",{},()=>[t.image?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.image,alt:t.imageAlt,class:e.normalizeClass(e.unref(N)(Oc,i.value)),loading:t.imageLazy?"lazy":"eager"},null,10,Lc)):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0),E.$slots.default?(e.openBlock(),e.createElementBlock("div",{key:3,class:e.normalizeClass(e.unref(N)(e.unref(x)({padding:t.padding})))},[e.renderSlot(E.$slots,"default")],2)):e.createCommentVNode("",!0),E.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:4,class:e.normalizeClass(e.unref(N)(e.unref(C)({padding:t.padding})))},[e.renderSlot(E.$slots,"footer")],2)):e.createCommentVNode("",!0),t.badge?(e.openBlock(),e.createElementBlock("div",Pc,[e.createElementVNode("span",jc,e.toDisplayString(t.badge),1)])):e.createCommentVNode("",!0)]),_:3},40,["class","disabled","aria-busy","aria-disabled","role","tabindex","onKeydown"]))}},Rc={key:0},Uc={key:1},qc={key:0},ho=Object.assign({inheritAttrs:!1},{__name:"CardHeader",props:{title:{type:String,default:""},subtitle:{type:String,default:""},size:{type:String,default:"medium",validator:t=>["small","medium","large"].includes(t)},alignment:{type:String,default:"left",validator:t=>["left","center","right"].includes(t)}},setup(t){const n=P.cva("flex items-center justify-between",{variants:{size:{small:"p-2",medium:"p-4",large:"p-6"}},defaultVariants:{size:"medium"}}),a=P.cva("",{variants:{alignment:{left:"text-left",center:"text-center",right:"text-right"}},defaultVariants:{alignment:"left"}});return(o,l)=>(e.openBlock(),e.createElementBlock("header",{class:e.normalizeClass(e.unref(N)(e.unref(n)({size:t.size}),o.$attrs.class))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)(e.unref(a)({alignment:t.alignment}),"flex flex-col"))},[t.title||o.$slots.title?(e.openBlock(),e.createElementBlock("h2",Rc,[e.renderSlot(o.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])])):e.createCommentVNode("",!0),t.subtitle||o.$slots.description?(e.openBlock(),e.createElementBlock("p",Uc,[e.renderSlot(o.$slots,"description",{},()=>[e.createTextVNode(e.toDisplayString(t.subtitle),1)])])):e.createCommentVNode("",!0)],2),o.$slots.actions?(e.openBlock(),e.createElementBlock("div",qc,[e.renderSlot(o.$slots,"actions")])):e.createCommentVNode("",!0)],2))}}),yo={__name:"CardBody",props:{variant:{type:String,default:"default",validator:t=>["default","compact","spacious"].includes(t)}},setup(t){const n=t,a=P.cva("p-6",{variants:{variant:{default:"p-6",compact:"p-4",spacious:"p-8"}}}),o=e.computed(()=>N(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}},bo={__name:"CardFooter",props:{variant:{type:String,default:"default",validator:t=>["default","compact","spacious"].includes(t)}},setup(t){const n=t,a=P.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(()=>N(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}},xo=Object.assign({inheritAttrs:!1},{__name:"CardContent",setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(N)("p-6 pt-0",n.$attrs.class))},[e.renderSlot(n.$slots,"default")],2))}}),ko=Object.assign({inheritAttrs:!1},{__name:"CardTitle",setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("h3",{class:e.normalizeClass(e.unref(N)("text-2xl font-semibold leading-none tracking-tight",n.$attrs.class))},[e.renderSlot(n.$slots,"default")],2))}}),Hc={class:"relative w-full"},Wc={class:"relative"},Yc=["id","value","disabled","placeholder","required","aria-describedby"],Gc={class:"flex items-center justify-between mb-3"},Kc={class:"text-sm font-semibold text-slate-900"},Xc={class:"grid grid-cols-7 gap-1 mb-1"},Qc={class:"grid grid-cols-7 gap-1"},Jc=["disabled","onClick"],Zc={key:0,class:"mt-3 pt-2 border-t border-slate-200"},at={__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},ariaDescribedby:String,customValidation:{type:Function,default:null},disabledDates:{type:[Array,Function],default:null}},emits:["update:modelValue","validation-error"],setup(t,{emit:n}){const a=t,o=n,l=e.ref(!1),r=e.ref(null),s=e.ref({}),i=new Date,c=e.ref(i.getMonth()),f=e.ref(i.getFullYear()),x=e.ref(null),C=e.ref(!1),$=["Su","Mo","Tu","We","Th","Fr","Sa"],E=e.computed(()=>new Date(f.value,c.value).toLocaleString("default",{month:"long"})),B=e.computed(()=>new Date(f.value,c.value+1,0).getDate()),w=e.computed(()=>new Date(f.value,c.value,1).getDay()),b=e.computed(()=>{const O=new Date(f.value,c.value,0).getDate(),W=w.value;return Array.from({length:W},(X,R)=>O-W+R+1)}),v=e.computed(()=>{const O=b.value.length+B.value,W=O%7===0?0:7-O%7;return Array.from({length:W},(X,R)=>R+1)}),h=e.computed(()=>x.value?k(x.value):"");function k(O){if(!O)return"";const W=new Date(O),X=String(W.getMonth()+1).padStart(2,"0"),R=String(W.getDate()).padStart(2,"0"),ae=W.getFullYear();return a.format.replace("MM",X).replace("DD",R).replace("YYYY",ae)}function z(O){if(!O)return null;if(O instanceof Date)return O;if(typeof O=="string"){const X=O.split("-");if(X.length===3){const R=parseInt(X[0],10),ae=parseInt(X[1],10)-1,ne=parseInt(X[2],10);return new Date(R,ae,ne)}}const W=new Date(O);return isNaN(W.getTime())?null:W}function V(O){return i.getDate()===O&&i.getMonth()===c.value&&i.getFullYear()===f.value}function D(O){if(!x.value)return!1;const W=new Date(x.value);return W.getDate()===O&&W.getMonth()===c.value&&W.getFullYear()===f.value}function j(O){const W=new Date(f.value,c.value,O);if(a.min){const X=z(a.min);if(X&&W<X)return!0}if(a.max){const X=z(a.max);if(X&&W>X)return!0}if(a.disabledDates){if(typeof a.disabledDates=="function")return a.disabledDates(W);if(Array.isArray(a.disabledDates))return a.disabledDates.some(X=>{const R=z(X);return R&&R.getTime()===W.getTime()})}return!!(a.customValidation&&a.customValidation(W))}function K(O){if(!O)return C.value=!1,o("validation-error",null),!0;if(a.customValidation){const W=a.customValidation(O);if(W)return C.value=!0,o("validation-error",W),!1}return C.value=!1,o("validation-error",null),!0}async function _(){await e.nextTick();const O=document.getElementById(a.id);if(!O||!r.value)return;const W=O.getBoundingClientRect(),X=320,R=window.innerHeight-W.bottom,ae=W.top,ne=8;let re,fe;R>=X||R>ae?re=W.bottom+ne:re=W.top-X-ne,fe=W.left;const me=256;fe+me>window.innerWidth&&(fe=window.innerWidth-me-16),fe<16&&(fe=16),s.value={top:`${re}px`,left:`${fe}px`}}async function S(){a.disabled||(l.value=!l.value,l.value&&await _())}function d(){l.value=!1}function y(){c.value===0?(c.value=11,f.value--):c.value--}function u(){c.value===11?(c.value=0,f.value++):c.value++}function F(O){if(j(O))return;const W=new Date(f.value,c.value,O);if(!K(W))return;x.value=W;const X=W.getFullYear(),R=String(W.getMonth()+1).padStart(2,"0"),ae=String(W.getDate()).padStart(2,"0"),ne=`${X}-${R}-${ae}`;o("update:modelValue",ne),setTimeout(()=>{l.value=!1},150)}function M(){c.value=i.getMonth(),f.value=i.getFullYear(),F(i.getDate())}function p(){x.value=null,C.value=!1,o("update:modelValue",""),o("validation-error",null)}e.watch(()=>a.modelValue,O=>{if(O){const W=z(O);W&&(x.value=W,c.value=W.getMonth(),f.value=W.getFullYear(),K(W))}else x.value=null,C.value=!1},{immediate:!0});function g(){l.value&&_()}function m(O){O.key==="Escape"&&l.value&&d()}return e.onMounted(()=>{document.addEventListener("keydown",m),window.addEventListener("resize",g)}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",m),window.removeEventListener("resize",g)}),(O,W)=>(e.openBlock(),e.createElementBlock("div",Hc,[e.createElementVNode("div",Wc,[e.createElementVNode("input",{id:t.id,type:"text",value:h.value,readonly:"",disabled:t.disabled,placeholder:t.placeholder,required:t.required,"aria-describedby":t.ariaDescribedby,class:e.normalizeClass(["w-full px-3 py-2 pr-10 border rounded-md bg-white text-slate-900 placeholder-slate-400 text-sm","focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500 cursor-pointer transition-colors","disabled:bg-slate-50 disabled:text-slate-500 disabled:cursor-not-allowed",C.value?"border-red-500 focus:ring-red-500 focus:border-red-500":"border-slate-300"]),onClick:S},null,10,Yc),W[2]||(W[2]=e.createElementVNode("div",{class:"absolute right-3 top-1/2 -translate-y-1/2 pointer-events-none"},[e.createElementVNode("svg",{class:"w-4 h-4 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&&h.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 transition-colors","aria-label":"Clear date",onClick:e.withModifiers(p,["stop"])},[...W[1]||(W[1]=[e.createElementVNode("svg",{class:"w-3.5 h-3.5 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.openBlock(),e.createBlock(e.Teleport,{to:"body"},[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(()=>[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"calendarRef",ref:r,style:e.normalizeStyle(s.value),class:"fixed z-[10000] bg-white border border-slate-200 rounded-lg shadow-xl p-3 w-64",onClick:W[0]||(W[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Gc,[e.createElementVNode("button",{type:"button",class:"p-1.5 rounded hover:bg-slate-100 transition-colors","aria-label":"Previous Month",onClick:y},[...W[3]||(W[3]=[e.createElementVNode("svg",{class:"w-4 h-4 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",Kc,e.toDisplayString(E.value)+" "+e.toDisplayString(f.value),1),e.createElementVNode("button",{type:"button",class:"p-1.5 rounded hover:bg-slate-100 transition-colors","aria-label":"Next Month",onClick:u},[...W[4]||(W[4]=[e.createElementVNode("svg",{class:"w-4 h-4 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",Xc,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList($,X=>e.createElementVNode("div",{key:X,class:"text-center text-xs font-medium text-slate-500 py-1"},e.toDisplayString(X),1)),64))]),e.createElementVNode("div",Qc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value,(X,R)=>(e.openBlock(),e.createElementBlock("div",{key:"prev-"+R,class:"text-center text-xs text-slate-300 py-1.5"},e.toDisplayString(X),1))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value,X=>(e.openBlock(),e.createElementBlock("button",{key:X,type:"button",disabled:j(X),class:e.normalizeClass(["w-8 h-8 rounded text-xs font-medium transition-colors",V(X)&&!D(X)?"bg-blue-50 text-blue-600 ring-1 ring-blue-200":"",D(X)?"bg-blue-500 text-white hover:bg-blue-600":"text-slate-700 hover:bg-slate-100",j(X)?"text-slate-300 cursor-not-allowed hover:bg-transparent line-through":"cursor-pointer"]),onClick:R=>F(X)},e.toDisplayString(X),11,Jc))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(v.value,(X,R)=>(e.openBlock(),e.createElementBlock("div",{key:"next-"+R,class:"text-center text-xs text-slate-300 py-1.5"},e.toDisplayString(X),1))),128))]),t.showToday?(e.openBlock(),e.createElementBlock("div",Zc,[e.createElementVNode("button",{type:"button",class:"w-full px-3 py-1.5 text-xs font-medium text-blue-600 hover:bg-blue-50 rounded transition-colors",onClick:M}," Today ")])):e.createCommentVNode("",!0)],4)):e.createCommentVNode("",!0)]),_:1}),l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-[9999]",onClick:d})):e.createCommentVNode("",!0)]))]))}},ed=["aria-expanded"],wo={__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),l=P.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"}}}),r=P.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"}}}),s=e.computed(()=>N(l({variant:n.variant}),"h-10 px-4 py-2")),i=e.computed(()=>N(r({placement:n.placement}))),c=()=>{a.value=!a.value},f=x=>{o.value&&!o.value.contains(x.target)&&(a.value=!1)};return e.onMounted(()=>{document.addEventListener("click",f)}),e.onUnmounted(()=>{document.removeEventListener("click",f)}),(x,C)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"dropdownRef",ref:o,class:"relative"},[e.createElementVNode("button",{class:e.normalizeClass(s.value),"aria-expanded":a.value,"aria-haspopup":!0,onClick:c},[e.renderSlot(x.$slots,"trigger",{},()=>[e.createElementVNode("span",null,e.toDisplayString(t.triggerText),1),e.createVNode(H,{name:"chevron-down",class:"ml-2 h-4 w-4"})])],10,ed),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(i.value),role:"menu","aria-orientation":"vertical"},[e.renderSlot(x.$slots,"default")],2)):e.createCommentVNode("",!0)]),_:3})],512))}},td={key:1,class:"ml-auto text-xs tracking-widest opacity-60"},Co={__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,l=P.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"}}}),r=e.computed(()=>N(l({variant:a.variant}))),s=i=>{a.disabled||o("click",i)};return(i,c)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.href?"a":"button"),{href:t.href,class:e.normalizeClass(r.value),disabled:t.disabled,role:"menuitem",onClick:s},{default:e.withCtx(()=>[t.icon?(e.openBlock(),e.createBlock(H,{key:0,name:t.icon,class:"mr-2 h-4 w-4"},null,8,["name"])):e.createCommentVNode("",!0),e.renderSlot(i.$slots,"default"),t.shortcut?(e.openBlock(),e.createElementBlock("span",td,e.toDisplayString(t.shortcut),1)):e.createCommentVNode("",!0)]),_:3},8,["href","class","disabled"]))}},ad={class:"w-full"},nd=["multiple","accept"],od={class:"flex items-center justify-center px-4 py-3"},ld={class:"bg-gray-100 rounded-full p-2 mr-3"},rd={class:"flex flex-col"},sd={class:"text-xs text-gray-500"},id={key:0,class:"ml-2"},cd={key:1,class:"mt-4 space-y-2"},dd={class:"flex items-center space-x-3"},ud={class:"flex flex-col"},md={class:"text-sm font-medium text-gray-900"},fd={class:"text-xs text-gray-500"},pd={class:"flex items-center space-x-3"},gd={class:"bg-green-100 rounded-md p-2"},vd={class:"flex flex-col"},hd={class:"text-sm font-medium text-gray-900"},yd={class:"text-xs text-gray-500"},bd=["onClick"],Qe={__name:"FileUpload",props:{multiple:Boolean,accept:String,maxSize:Number,maxFiles: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,l=e.ref([]),r=e.ref(!1),s=e.ref(null),i=e.ref([]),c=P.cva("border-2 border-dashed rounded-xl cursor-pointer transition-all duration-300 ease-in-out shadow-sm",{variants:{variant:{default:"border-gray-300 hover:border-gray-400 hover:bg-gray-50 focus-within:ring-2 focus-within:ring-blue-500 focus-within:ring-opacity-50",dashed:"border-blue-300 hover:border-blue-400 hover:bg-blue-50 focus-within:ring-2 focus-within:ring-blue-500 focus-within:ring-opacity-50"}}}),f=e.computed(()=>N(c({variant:a.variant}),{"border-green-500 bg-green-50 shadow-md":l.value.length>0&&!r.value,"border-blue-500 bg-blue-50 ring-4 ring-blue-200 ring-opacity-50 shadow-lg":r.value,"border-green-600 bg-green-100 ring-4 ring-green-200 ring-opacity-50 shadow-lg":l.value.length>0&&r.value})),x=k=>{k.preventDefault(),r.value=!1;const z=Array.from(k.dataTransfer.files);b(z)},C=k=>{k.preventDefault()},$=k=>{k.preventDefault(),r.value=!0},E=k=>{k.preventDefault(),r.value=!1},B=()=>{s.value?.click()},w=k=>{const z=Array.from(k.target.files);b(z)},b=k=>{const z=k.filter(D=>!(a.maxSize&&D.size>a.maxSize));if(z.length===0)return;if(a.maxFiles){const D=l.value.length+i.value.length;if(D>=a.maxFiles)return;const j=a.maxFiles-D;z.splice(j)}const V=z.map(D=>e.reactive({file:D,progress:0,uploading:!0}));i.value.push(...V),V.forEach(D=>{const j=2e3+Math.random()*2e3,K=50,S=100/(j/K),d=setInterval(()=>{D.progress+=S,D.progress>=100&&(D.progress=100,D.uploading=!1,clearInterval(d),a.multiple?(l.value.push(D.file),o("files-selected",l.value)):(l.value=[D.file],o("files-selected",D.file)),i.value.splice(i.value.indexOf(D),1))},K)})},v=k=>{l.value.splice(k,1),a.multiple?o("file-removed",l.value):o("file-removed",l.value.length>0?l.value[0]:null)},h=k=>{if(k===0)return"0 Bytes";const z=1024,V=["Bytes","KB","MB","GB"],D=Math.floor(Math.log(k)/Math.log(z));return parseFloat((k/Math.pow(z,D)).toFixed(2))+" "+V[D]};return(k,z)=>(e.openBlock(),e.createElementBlock("div",ad,[!l.value.length||t.multiple?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(f.value),onDrop:x,onDragover:C,onDragenter:$,onDragleave:E,onClick:B},[e.createElementVNode("input",{ref_key:"fileInput",ref:s,type:"file",multiple:t.multiple,accept:t.accept,class:"hidden",onChange:w},null,40,nd),e.createElementVNode("div",od,[e.createElementVNode("div",ld,[e.createVNode(H,{icon:"upload",class:"h-6 w-6 text-gray-600"})]),e.createElementVNode("div",rd,[z[0]||(z[0]=e.createElementVNode("p",{class:"text-sm font-medium text-gray-700"},[e.createElementVNode("span",{class:"text-blue-600 font-semibold"},"Click to upload"),e.createTextVNode(" or drag and drop ")],-1)),e.createElementVNode("p",sd,[e.createTextVNode(e.toDisplayString(t.maxSize?`Up to ${h(t.maxSize)}`:"No size limit")+" ",1),t.accept?(e.openBlock(),e.createElementBlock("span",id,"• "+e.toDisplayString(t.accept),1)):e.createCommentVNode("",!0)])])])],34)):e.createCommentVNode("",!0),l.value.length>0||i.value.length>0?(e.openBlock(),e.createElementBlock("div",cd,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,(V,D)=>(e.openBlock(),e.createElementBlock("div",{key:`uploading-${D}`,class:"flex items-center justify-between p-3 bg-white border border-gray-200 rounded-lg shadow-sm"},[e.createElementVNode("div",dd,[e.createVNode(pa,{value:V.progress,max:100,size:"sm",variant:"default","dynamic-color":!0,class:"flex-shrink-0"},null,8,["value"]),e.createElementVNode("div",ud,[e.createElementVNode("span",md,e.toDisplayString(V.file.name),1),e.createElementVNode("span",fd,"Uploading... "+e.toDisplayString(Math.round(V.progress))+"%",1)])])]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,(V,D)=>(e.openBlock(),e.createElementBlock("div",{key:`uploaded-${D}`,class:"flex items-center justify-between p-3 bg-white border border-gray-200 rounded-lg shadow-sm hover:shadow-md transition-shadow"},[e.createElementVNode("div",pd,[e.createElementVNode("div",gd,[e.createVNode(H,{icon:"file",class:"h-5 w-5 text-green-600"})]),e.createElementVNode("div",vd,[e.createElementVNode("span",hd,e.toDisplayString(V.name),1),e.createElementVNode("span",yd,e.toDisplayString(h(V.size)),1)])]),e.createElementVNode("button",{class:"text-gray-400 hover:text-red-500 hover:bg-red-50 rounded-full p-1 transition-colors",onClick:j=>v(D)},[e.createVNode(H,{icon:"x",class:"h-4 w-4"})],8,bd)]))),128))])):e.createCommentVNode("",!0)]))}},xd=["for"],kd={key:0,class:"text-red-500 ml-1","aria-label":"required"},wd={class:"relative"},Cd=["aria-label"],Bd=["id"],Vd=["id"],wt={__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,l=`field-${Math.random().toString(36).slice(2,9)}`,r=e.computed(()=>`${a.id||l}-${Math.random().toString(36).slice(2,5)}`),s=e.computed(()=>!!a.error),i=e.ref(!1),c=()=>{i.value=!i.value},f=e.computed(()=>{const w=[];return a.error?w.push(`${r.value}-error`):a.helpText&&w.push(`${r.value}-help`),w.length>0?w.join(" "):void 0}),x=P.cva("",{variants:{size:{sm:"space-y-1",md:"space-y-2",lg:"space-y-3"}},defaultVariants:{size:"md"}}),C=P.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"}}),$=P.cva("text-slate-600",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-base"}},defaultVariants:{size:"md"}}),E=P.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"}}),B=P.cva("text-slate-500",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-sm"}},defaultVariants:{size:"md"}});return(w,b)=>{const v=e.resolveComponent("font-awesome-icon");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(N)(e.unref(x)({size:t.size}),w.$attrs.class))},[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:r.value,class:e.normalizeClass(e.unref(N)(e.unref(C)({size:t.size})))},[e.createTextVNode(e.toDisplayString(t.label)+" ",1),t.required?(e.openBlock(),e.createElementBlock("span",kd,"*")):e.createCommentVNode("",!0)],10,xd)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:e.normalizeClass(e.unref(N)(e.unref($)({size:t.size})))},e.toDisplayString(t.description),3)):e.createCommentVNode("",!0),e.createElementVNode("div",wd,[t.type==="date"?(e.openBlock(),e.createBlock(at,{key:0,id:r.value,"model-value":t.modelValue,disabled:!1,required:t.required,class:e.normalizeClass(s.value?"border-red-500":""),"onUpdate:modelValue":b[0]||(b[0]=h=>o("update:modelValue",h))},null,8,["id","model-value","required","class"])):e.renderSlot(w.$slots,"default",{key:1,fieldId:r.value,hasError:s.value,ariaDescribedBy:f.value,showPassword:i.value,togglePasswordVisibility:c}),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":i.value?"Hide password":"Show password",onClick:c},[e.createVNode(v,{icon:i.value?"eye-slash":"eye",class:"w-4 h-4"},null,8,["icon"])],8,Cd)):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(()=>[s.value?(e.openBlock(),e.createElementBlock("div",{key:0,id:`${r.value}-error`,class:e.normalizeClass(e.unref(N)(e.unref(E)({size:t.size,intent:"error"}))),role:"alert","aria-live":"polite"},[e.createVNode(v,{icon:"exclamation-triangle",class:"w-4 h-4 flex-shrink-0 mt-0.5"}),e.createElementVNode("span",null,e.toDisplayString(t.error),1)],10,Bd)):e.createCommentVNode("",!0)]),_:1}),t.helpText&&!s.value?(e.openBlock(),e.createElementBlock("p",{key:2,id:`${r.value}-help`,class:e.normalizeClass(e.unref(N)(e.unref(B)({size:t.size})))},e.toDisplayString(t.helpText),11,Vd)):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&&!s.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(N)(e.unref(E)({size:t.size,intent:"success"})))},[e.createVNode(v,{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)}}},Ed={key:0,class:"flex items-center px-3 bg-muted border border-r-0 rounded-l-md"},Sd={key:1,class:"flex items-center px-3 bg-muted border border-l-0 rounded-r-md"},Bo={__name:"InputGroup",props:{variant:{type:String,default:"default",validator:t=>["default","outline"].includes(t)}},setup(t){const n=t,a=P.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(()=>N(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[l.$slots.prefix?(e.openBlock(),e.createElementBlock("div",Ed,[e.renderSlot(l.$slots,"prefix")])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default"),l.$slots.suffix?(e.openBlock(),e.createElementBlock("div",Sd,[e.renderSlot(l.$slots,"suffix")])):e.createCommentVNode("",!0)],2))}},Nd=["role"],$d={key:0,class:"flex-shrink-0"},zd={class:"flex-1 min-w-0"},Dd={key:0,class:"text-sm font-medium text-foreground"},Td={key:1,class:"text-sm text-muted-foreground"},Fd={key:1,class:"flex-shrink-0"},Vo={__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,l=P.cva("",{variants:{variant:{default:"",interactive:"hover:bg-accent/50 cursor-pointer"}}}),r=P.cva("flex items-center space-x-3 p-3",{variants:{variant:{default:"",interactive:"transition-colors rounded-md"}}}),s=e.computed(()=>N(l({variant:a.variant}))),i=e.computed(()=>N(r({variant:a.variant}))),c=f=>{o("click",f)};return(f,x)=>(e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(s.value),role:t.role},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.href?"a":"div"),{href:t.href,class:e.normalizeClass(i.value),onClick:c},{default:e.withCtx(()=>[f.$slots.icon||t.icon?(e.openBlock(),e.createElementBlock("div",$d,[e.renderSlot(f.$slots,"icon",{},()=>[t.icon?(e.openBlock(),e.createBlock(H,{key:0,name:t.icon,class:"h-5 w-5"},null,8,["name"])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),e.createElementVNode("div",zd,[t.title?(e.openBlock(),e.createElementBlock("div",Dd,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("div",Td,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0),e.renderSlot(f.$slots,"default")]),f.$slots.action?(e.openBlock(),e.createElementBlock("div",Fd,[e.renderSlot(f.$slots,"action")])):e.createCommentVNode("",!0)]),_:3},8,["href","class"]))],10,Nd))}},Ad={key:1,class:"ml-auto text-xs tracking-widest opacity-60"},Eo={__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,l=P.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"}}}),r=e.computed(()=>N(l({variant:a.variant}))),s=i=>{a.disabled||o("click",i)};return(i,c)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.href?"a":"button"),{href:t.href,class:e.normalizeClass(r.value),disabled:t.disabled,role:"menuitem",onClick:s},{default:e.withCtx(()=>[t.icon?(e.openBlock(),e.createBlock(H,{key:0,name:t.icon,class:"mr-2 h-4 w-4"},null,8,["name"])):e.createCommentVNode("",!0),e.renderSlot(i.$slots,"default"),t.shortcut?(e.openBlock(),e.createElementBlock("span",Ad,e.toDisplayString(t.shortcut),1)):e.createCommentVNode("",!0),t.hasSubmenu?(e.openBlock(),e.createBlock(H,{key:2,name:"chevron-right",class:"ml-auto h-4 w-4"})):e.createCommentVNode("",!0)]),_:3},8,["href","class","disabled"]))}},Ct={__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","8xl","full"].includes(t)},class:{type:String,default:""},resizable:{type:Boolean,default:!1}},emits:["update:modelValue","close"],setup(t,{emit:n}){const a=P.cva("relative w-full max-h-[100vh] overflow-y-auto border bg-white pt-12 pr-12 pb-6 pl-6 shadow-lg duration-200 sm:rounded-lg",{variants:{size:{sm:"max-w-sm",md:"max-w-md",lg:"max-w-lg",xl:"max-w-xl","2xl":"max-w-2xl","3xl":"max-w-3xl","4xl":"max-w-4xl","5xl":"max-w-5xl","6xl":"max-w-6xl","7xl":"max-w-7xl","8xl":"max-w-8xl",full:"max-w-full"}},defaultVariants:{size:"6xl"}}),o=t,l=n,r=()=>{l("update:modelValue",!1),l("close")},s=c=>{o.closeOnBackdrop&&c.target===c.currentTarget&&!o.resizable&&r()};let i=null;return e.watch(()=>o.modelValue,c=>{c?(i=f=>{f.key==="Escape"&&r()},document.addEventListener("keydown",i)):i&&(document.removeEventListener("keydown",i),i=null)},{immediate:!0}),e.onUnmounted(()=>{i&&(document.removeEventListener("keydown",i),i=null)}),(c,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:e.normalizeClass(["fixed inset-0 z-50 bg-background/80 backdrop-blur-sm flex items-center justify-center",{"pointer-events-none":t.resizable}]),onClick:s},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)(e.unref(a)({size:t.size}),o.class,t.resizable?"resize overflow-hidden pointer-events-auto relative":"")),style:e.normalizeStyle(t.resizable?"min-width: 400px; min-height: 200px; resize: both;":"")},[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:r},[e.createVNode(H,{icon:"x",class:"h-4 w-4"}),f[0]||(f[0]=e.createElementVNode("span",{class:"sr-only"},"Close",-1))])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default")],6)],2)):e.createCommentVNode("",!0)]),_:3})]))}},Md={class:"flex flex-col space-y-1.5 text-center sm:text-left"},Ld={key:0,class:"text-lg font-semibold leading-none tracking-tight"},Pd={key:1,class:"text-sm text-muted-foreground"},So={__name:"ModalHeader",props:{title:String,description:String},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",Md,[t.title?(e.openBlock(),e.createElementBlock("h2",Ld,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",Pd,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"default")]))}},No={__name:"ModalBody",props:{variant:{type:String,default:"default",validator:t=>["default","compact"].includes(t)}},setup(t){const n=t,a=P.cva("",{variants:{variant:{default:"py-4",compact:"py-2"}}}),o=e.computed(()=>N(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}},$o={__name:"ModalFooter",props:{variant:{type:String,default:"default",validator:t=>["default","center"].includes(t)}},setup(t){const n=t,a=P.cva("flex gap-2 pt-4",{variants:{variant:{default:"flex-col-reverse sm:flex-row sm:justify-end",center:"justify-center"}}}),o=e.computed(()=>N(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}},jd=["aria-live"],Od={class:"flex items-start space-x-3"},Id={key:0,class:"flex-shrink-0"},_d={class:"flex-1 min-w-0"},Rd={key:0,class:"text-sm font-medium"},zo={__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,l=e.ref(!0),r=P.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"}}}),s={default:"info",success:"check-circle",warning:"alert-triangle",danger:"alert-circle"},i=P.cva("h-5 w-5",{variants:{variant:{default:"text-primary",success:"text-green-500",warning:"text-yellow-500",danger:"text-danger"}}}),c=e.computed(()=>N(r({variant:a.variant}),"p-4")),f=e.computed(()=>s[a.variant]),x=e.computed(()=>i({variant:a.variant})),C=()=>{l.value=!1,o("dismiss")};return e.onMounted(()=>{a.autoClose>0&&setTimeout(()=>{C()},a.autoClose)}),($,E)=>(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(()=>[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(c.value),role:"alert","aria-live":t.variant==="danger"?"assertive":"polite"},[e.createElementVNode("div",Od,[t.showIcon?(e.openBlock(),e.createElementBlock("div",Id,[e.createVNode(H,{name:f.value,class:e.normalizeClass(x.value)},null,8,["name","class"])])):e.createCommentVNode("",!0),e.createElementVNode("div",_d,[t.title?(e.openBlock(),e.createElementBlock("div",Rd,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($.$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:C},[e.createVNode(H,{name:"x",class:"h-4 w-4"})])):e.createCommentVNode("",!0)])],10,jd)):e.createCommentVNode("",!0)]),_:3}))}},Je=e.ref([]);let Ud=0;const qd={duration:3e3,position:"top-center",dismissible:!0,closeButton:!1},Hd=()=>`toast-${++Ud}-${Date.now()}`,Ce=(t,n={})=>{const a=Hd(),o={id:a,message:t,...qd,...n,createdAt:Date.now()};return Je.value.push(e.markRaw(o)),o.duration&&o.duration>0&&setTimeout(()=>{Ge(a)},o.duration),a},Ge=t=>{const n=Je.value.findIndex(a=>a.id===t);n>-1&&Je.value.splice(n,1)},Do=()=>{Je.value=[]},se=Object.assign((t,n)=>Ce(t,{...n}),{success:(t,n)=>Ce(t,{...n,variant:"success"}),error:(t,n)=>Ce(t,{...n,variant:"error"}),warning:(t,n)=>Ce(t,{...n,variant:"warning"}),info:(t,n)=>Ce(t,{...n,variant:"info"}),promise:(t,n={})=>{const{loading:a="Loading...",success:o="Success",error:l="Error",...r}=n,s=Ce(a,{...r,variant:"loading",duration:0,dismissible:!1});return t.then(i=>{Ge(s);const c=typeof o=="function"?o(i):o;return Ce(c,{...r,variant:"success"}),i}).catch(i=>{Ge(s);const c=typeof l=="function"?l(i):l;throw Ce(c,{...r,variant:"error"}),i})},dismiss:Ge,dismissAll:Do,custom:(t,n={})=>Ce("",{...n,component:e.markRaw(t)})}),To=()=>({toasts:Je,dismiss:Ge,dismissAll:Do}),Wd=["aria-live"],Yd={class:"flex-1 grid gap-1"},Gd={key:0,class:"text-lg font-extrabold"},Kd={key:1,class:"text-md opacity-90"},Xd={key:2,class:"text-md opacity-90"},Qd=["onClick"],Jd=["onClick"],Fo={__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}=To(),l={"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"},r=e.computed(()=>N(l[n.position])),s=P.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"}}),i=B=>N(s({variant:B.variant})),c={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"},x=B=>B.icon||c[B.variant]||c.default,C=B=>{const w=f[B.variant]||f.default;return B.variant==="loading"?`${w} animate-spin`:w},$=B=>B.icon!==!1,E=B=>B.dismissible!==!1&&(B.closeButton||n.closeButton||B.dismissible);return(B,w)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)(r.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),b=>(e.openBlock(),e.createElementBlock("div",{key:b.id,class:e.normalizeClass([i(b),"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":b.variant==="error"?"assertive":"polite"},[$(b)?(e.openBlock(),e.createBlock(H,{key:0,icon:x(b),class:e.normalizeClass([C(b),"h-4 w-4 shrink-0"])},null,8,["icon","class"])):e.createCommentVNode("",!0),e.createElementVNode("div",Yd,[b.title?(e.openBlock(),e.createElementBlock("div",Gd,e.toDisplayString(b.title),1)):e.createCommentVNode("",!0),b.message?(e.openBlock(),e.createElementBlock("div",Kd,e.toDisplayString(b.message),1)):e.createCommentVNode("",!0),b.description?(e.openBlock(),e.createElementBlock("div",Xd,e.toDisplayString(b.description),1)):e.createCommentVNode("",!0),b.component?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(b.component),e.mergeProps({key:3,ref_for:!0},b.componentProps),null,16)):e.createCommentVNode("",!0)]),b.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:b.action.onClick},e.toDisplayString(b.action.label),9,Qd)):e.createCommentVNode("",!0),E(b)?(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:v=>e.unref(o)(b.id)},[e.createVNode(H,{icon:"x",class:"h-4 w-4"})],8,Jd)):e.createCommentVNode("",!0)],10,Wd))),128))]),_:1})],2)]))}},Zd={class:"relative"},eu={class:"absolute left-3 top-1/2 transform -translate-y-1/2 pointer-events-none"},tu=["value","placeholder","disabled"],au={key:0,class:"absolute right-3 top-1/2 transform -translate-y-1/2"},nu=["aria-label"],ou={key:1,class:"animate-spin"},lu={key:0,class:"max-h-64 overflow-y-auto"},ru=["onClick","onMouseenter"],su={class:"flex-1 text-left"},iu={class:"font-medium text-slate-900"},cu={key:0,class:"text-sm text-slate-500 truncate"},du={key:1,class:"text-xs text-slate-400 ml-3"},uu={key:1,class:"px-4 py-3 text-sm text-slate-500 text-center"},mu={key:2,class:"border-t border-slate-200 p-2"},Ao={__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={render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.h("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"})])}},o={render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18 18 6M6 6l12 12"})])}},l={render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24",class:"animate-spin"},[e.h("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),e.h("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"})])}},r=t,s=n,i=e.ref(null),c=e.ref(null),f=e.ref(!1),x=e.ref(-1),C=e.ref(null),$=S=>{const d=S.target.value;s("update:modelValue",d),C.value&&clearTimeout(C.value),C.value=setTimeout(()=>{d.length>=r.minLength?(s("search",d),f.value=!0):f.value=!1},r.debounce)},E=S=>{s("focus",S),r.modelValue.length>=r.minLength&&(f.value=!0)},B=S=>{s("blur",S),setTimeout(()=>{f.value=!1,x.value=-1},150)},w=()=>{s("update:modelValue",""),s("clear"),f.value=!1,c.value?.focus()},b=S=>{s("select",S),f.value=!1,x.value=-1},v=S=>{if(!(!f.value||r.results.length===0))switch(S.key){case"ArrowDown":S.preventDefault(),x.value=Math.min(x.value+1,r.results.length-1);break;case"ArrowUp":S.preventDefault(),x.value=Math.max(x.value-1,-1);break;case"Enter":S.preventDefault(),x.value>=0&&b(r.results[x.value]);break;case"Escape":S.preventDefault(),f.value=!1,x.value=-1;break}},h=S=>{if(!r.highlightMatches||!r.modelValue||!S)return S;const d=new RegExp(`(${r.modelValue})`,"gi");return S.replace(d,"$1")},k=P.cva("block w-full rounded-lg border bg-white transition-colors duration-200 placeholder:text-slate-400 disabled:bg-slate-50 disabled:text-slate-500 disabled:cursor-not-allowed focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500",{variants:{size:{sm:"px-9 py-1.5 text-sm",md:"px-10 py-2 text-sm",lg:"px-12 py-3 text-base"}},defaultVariants:{size:"md"}}),z=P.cva("text-slate-400",{variants:{size:{sm:"w-4 h-4",md:"w-4 h-4",lg:"w-5 h-5"}},defaultVariants:{size:"md"}}),V=e.computed(()=>N(k({size:r.size}))),D=e.computed(()=>N(z({size:r.size}))),j=e.computed(()=>N("absolute z-50 w-full mt-1 bg-white rounded-lg shadow-lg border border-slate-200 max-h-96 overflow-hidden")),K=S=>N("flex items-center w-full px-4 py-3 text-left transition-colors duration-150 hover:bg-slate-50 focus:bg-slate-50 focus:outline-none",{"bg-slate-50":x.value===S}),_=S=>{i.value&&!i.value.contains(S.target)&&(f.value=!1,x.value=-1)};return e.onMounted(()=>document.addEventListener("click",_)),e.onUnmounted(()=>{document.removeEventListener("click",_),C.value&&clearTimeout(C.value)}),e.watch(()=>r.results,()=>x.value=-1),(S,d)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"searchRef",ref:i,class:"relative"},[e.createElementVNode("div",Zd,[e.createElementVNode("div",eu,[e.createVNode(a,{class:e.normalizeClass(D.value)},null,8,["class"])]),e.createElementVNode("input",{ref_key:"inputRef",ref:c,value:t.modelValue,placeholder:t.placeholder,disabled:t.disabled,class:e.normalizeClass(V.value),onInput:$,onFocus:E,onBlur:B,onKeydown:v},null,42,tu),t.modelValue||t.loading?(e.openBlock(),e.createElementBlock("div",au,[!t.loading&&t.clearable?(e.openBlock(),e.createElementBlock("button",{key:0,class:"text-slate-400 hover:text-slate-600 transition-colors p-1 rounded-full hover:bg-slate-100","aria-label":t.clearLabel,onClick:w},[e.createVNode(o,{class:"w-4 h-4"})],8,nu)):t.loading?(e.openBlock(),e.createElementBlock("div",ou,[e.createVNode(l,{class:"w-4 h-4 text-slate-400"})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-200","enter-from-class":"opacity-0 scale-95 translate-y-1","enter-to-class":"opacity-100 scale-100 translate-y-0","leave-active-class":"transition-all duration-150","leave-from-class":"opacity-100 scale-100 translate-y-0","leave-to-class":"opacity-0 scale-95 translate-y-1"},{default:e.withCtx(()=>[f.value&&(t.results.length>0||t.showNoResults)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(j.value)},[t.results.length>0?(e.openBlock(),e.createElementBlock("div",lu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.results,(y,u)=>(e.openBlock(),e.createElementBlock("button",{key:y.id||u,class:e.normalizeClass(K(u)),onClick:F=>b(y),onMouseenter:F=>x.value=u},[y.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(y.icon),{key:0,class:"w-4 h-4 mr-3 flex-shrink-0"})):e.createCommentVNode("",!0),e.createElementVNode("div",su,[e.createElementVNode("div",iu,e.toDisplayString(h(y.title)),1),y.description?(e.openBlock(),e.createElementBlock("div",cu,e.toDisplayString(h(y.description)),1)):e.createCommentVNode("",!0)]),y.category?(e.openBlock(),e.createElementBlock("div",du,e.toDisplayString(y.category),1)):e.createCommentVNode("",!0)],42,ru))),128))])):t.showNoResults?(e.openBlock(),e.createElementBlock("div",uu,e.toDisplayString(t.noResultsText),1)):e.createCommentVNode("",!0),S.$slots.footer?(e.openBlock(),e.createElementBlock("div",mu,[e.renderSlot(S.$slots,"footer")])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0)]),_:3})],512))}},fu={class:"w-full"},pu=["min","max","step","value"],gu={class:"flex justify-between text-xs text-slate-500 mt-1"},Bt={__name:"Slider",props:{modelValue:{type:[Number,String],default:0},min:{type:Number,default:0},max:{type:Number,default:100},step:{type:Number,default:1}},emits:["update:modelValue"],setup(t,{emit:n}){const a=n,o=l=>{a("update:modelValue",Number(l.target.value))};return(l,r)=>(e.openBlock(),e.createElementBlock("div",fu,[e.createElementVNode("input",{type:"range",min:t.min,max:t.max,step:t.step,value:t.modelValue,class:"w-full accent-blue-500 cursor-pointer",onInput:o},null,40,pu),e.createElementVNode("div",gu,[e.createElementVNode("span",null,e.toDisplayString(t.min),1),e.createElementVNode("span",null,e.toDisplayString(t.modelValue),1),e.createElementVNode("span",null,e.toDisplayString(t.max),1)])]))}},vu={class:"flex items-center space-x-4"},Mo={__name:"Stepper",setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",vu,[e.renderSlot(n.$slots,"default")]))}},hu={class:"flex items-center"},yu={class:"ml-2"},bu={class:"font-medium"},xu={key:0,class:"text-sm text-slate-400"},Lo={__name:"StepperItem",props:{step:{type:Number,required:!0},title:{type:String,required:!0},description:{type:String,default:""},active:{type:Boolean,default:!1},completed:{type:Boolean,default:!1}},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",hu,[e.createElementVNode("div",{class:e.normalizeClass(["flex items-center justify-center w-8 h-8 rounded-full border-2",t.active?"bg-blue-500 border-blue-500 text-white":t.completed?"bg-green-500 border-green-500 text-white":"border-slate-300 text-slate-500"])},[e.createElementVNode("span",null,e.toDisplayString(t.step),1)],2),e.createElementVNode("div",yu,[e.createElementVNode("div",bu,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("div",xu,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)])]))}},ku={class:"w-full"},wu={class:"flex space-x-1 border-b border-slate-200",role:"tablist"},Cu=["id","disabled","aria-selected","aria-controls","onClick"],Bu={class:"mt-4"},Po={__name:"Tab",props:{defaultIndex:{type:Number,default:0},size:{type:String,default:"md"},variant:{type:String,default:"default"},loading:{type:Boolean,default:!1}},emits:["tab-change"],setup(t,{emit:n}){const a=t,o=P.cva("font-medium transition-colors border-b-2 -mb-px",{variants:{size:{sm:"px-3 py-1.5 text-xs",md:"px-4 py-2 text-sm",lg:"px-5 py-2.5 text-base"},variant:{default:""}},defaultVariants:{size:"md",variant:"default"}}),l=e.ref(a.defaultIndex),r=e.ref([]),s=c=>{l.value=c,i("tab-change",c)},i=n;return e.provide("tabsContext",{activeIndex:l,tabs:r,registerTab:c=>(r.value.push({label:c}),r.value.length-1),unregisterTab:c=>{r.value.splice(c,1)}}),(c,f)=>(e.openBlock(),e.createElementBlock("div",ku,[e.createElementVNode("div",wu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,(x,C)=>(e.openBlock(),e.createElementBlock("button",{id:`tab-${C}`,key:C,disabled:a.loading,class:e.normalizeClass(e.unref(N)(e.unref(o)({size:a.size,variant:a.variant}),l.value===C?"border-blue-500 text-blue-600 bg-blue-50":"border-transparent text-slate-500 hover:text-slate-700 hover:border-slate-300",a.loading&&"cursor-not-allowed opacity-50")),"aria-selected":l.value===C,"aria-controls":`panel-${C}`,role:"tab",onClick:$=>!a.loading&&s(C)},e.toDisplayString(x.label),11,Cu))),128))]),e.createElementVNode("div",Bu,[e.renderSlot(c.$slots,"default")])]))}},Vu=["id","aria-labelledby"],Eu={key:0,class:"flex items-center justify-center p-8"},jo={__name:"TabPanel",props:{label:{type:String,required:!0},loading:{type:Boolean,default:!1}},setup(t){const n=t,a=e.inject("tabsContext");if(!a)throw new Error("TabPanel must be used within a Tab component");const o=e.ref(null),l=e.ref(!1);return e.onMounted(()=>{o.value=a.registerTab(n.label),l.value=a.activeIndex.value===o.value,e.watch(a.activeIndex,r=>{l.value=r===o.value})}),e.onUnmounted(()=>{o.value!==null&&a.unregisterTab(o.value)}),(r,s)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{id:`panel-${o.value}`,role:"tabpanel","aria-labelledby":`tab-${o.value}`},[t.loading?(e.openBlock(),e.createElementBlock("div",Eu,[e.createVNode(xt,{size:"lg",label:`Loading ${n.label}`},null,8,["label"])])):e.renderSlot(r.$slots,"default",{key:1})],8,Vu)),[[e.vShow,l.value]])}},Su=["id","aria-expanded","aria-controls","onClick"],Nu={class:"flex items-center flex-1 min-w-0"},$u={key:0},zu=["id","aria-labelledby"],Du={key:0},Oo={__name:"Accordion",props:{items:{type:Array,required:!0},modelValue:{type:[Number,Array],default:null},multiple:Boolean,variant:{type:String,default:"default",validator:t=>["default","bordered","filled","flush"].includes(t)},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)},disabled:Boolean},emits:["update:modelValue","change"],setup(t,{emit:n}){const a={render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"})])}},o=t,l=n,r=e.ref(o.multiple?Array.isArray(o.modelValue)?[...o.modelValue]:[]:typeof o.modelValue=="number"?[o.modelValue]:[]),s=h=>{if(!(o.disabled||o.items[h]?.disabled)){if(o.multiple){const k=r.value.indexOf(h);k>-1?r.value.splice(k,1):r.value.push(h),l("update:modelValue",[...r.value])}else{const k=r.value.includes(h)?null:h;r.value=k!==null?[k]:[],l("update:modelValue",k)}l("change",{index:h,expanded:r.value.includes(h)})}},i=h=>r.value.includes(h),c=P.cva("w-full",{variants:{variant:{default:"space-y-1",bordered:"space-y-3",filled:"space-y-3",flush:"divide-y divide-slate-200"}}}),f=P.cva("transition-all duration-200",{variants:{variant:{default:"bg-white border border-slate-200 rounded-lg overflow-hidden shadow-sm hover:shadow-md",bordered:"border-2 border-slate-200 rounded-xl overflow-hidden hover:border-blue-300",filled:"bg-gradient-to-br from-slate-50 to-white border border-slate-200 rounded-xl overflow-hidden shadow-sm",flush:""}}}),x=P.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 disabled:cursor-not-allowed disabled:opacity-50",{variants:{variant:{default:"hover:bg-slate-50",bordered:"hover:bg-blue-50/50",filled:"hover:bg-white/70",flush:"hover:bg-slate-50"},size:{sm:"px-4 py-3",md:"px-5 py-4",lg:"px-6 py-5"}}}),C=P.cva("ml-4 flex-shrink-0 text-slate-400 transition-all duration-200",{variants:{expanded:{true:"rotate-180 text-blue-500",false:""}}}),$=P.cva("overflow-hidden text-slate-600 bg-white",{variants:{size:{sm:"px-4 py-3 text-sm",md:"px-5 py-4 text-sm",lg:"px-6 py-5 text-base"}}}),E=e.computed(()=>N(c({variant:o.variant}))),B=e.computed(()=>N(f({variant:o.variant}))),w=h=>N(x({variant:o.variant,size:o.size}),i(h)&&o.variant==="bordered"&&"bg-blue-50/30 border-blue-300",i(h)&&o.variant==="filled"&&"bg-white",i(h)&&o.variant==="default"&&"bg-slate-50",(o.disabled||o.items[h]?.disabled)&&"cursor-not-allowed opacity-50"),b=h=>N(C({expanded:i(h)})),v=e.computed(()=>N($({size:o.size})));return e.watch(()=>o.modelValue,h=>{o.multiple?r.value=Array.isArray(h)?[...h]:[]:r.value=typeof h=="number"?[h]:[]}),(h,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(E.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(z,V)=>(e.openBlock(),e.createElementBlock("div",{key:z.id||V,class:e.normalizeClass(B.value)},[e.createElementVNode("button",{id:`header-${z.id||V}`,class:e.normalizeClass(w(V)),"aria-expanded":i(V),"aria-controls":`panel-${z.id||V}`,onClick:D=>s(V)},[e.createElementVNode("div",Nu,[e.renderSlot(h.$slots,`header-${V}`,{item:z,index:V,isExpanded:i(V)},()=>[z.title?(e.openBlock(),e.createElementBlock("div",$u,e.toDisplayString(z.title),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",{class:e.normalizeClass(b(V))},[e.createVNode(a,{class:"w-5 h-5 transition-transform duration-200"})],2)],10,Su),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-[600px]","leave-active-class":"transition-all duration-200 ease-in","leave-from-class":"opacity-100 max-h-[600px]","leave-to-class":"opacity-0 max-h-0"},{default:e.withCtx(()=>[i(V)?(e.openBlock(),e.createElementBlock("div",{key:0,id:`panel-${z.id||V}`,class:e.normalizeClass(v.value),"aria-labelledby":`header-${z.id||V}`,role:"region"},[e.renderSlot(h.$slots,`content-${V}`,{item:z,index:V},()=>[e.renderSlot(h.$slots,"content",{item:z,index:V},()=>[z.content?(e.openBlock(),e.createElementBlock("div",Du,e.toDisplayString(z.content),1)):e.createCommentVNode("",!0)])])],10,zu)):e.createCommentVNode("",!0)]),_:2},1024)],2))),128))],2))}},Io={__name:"AccordionItem",props:{variant:{type:String,default:"default",validator:t=>["default","bordered","filled","flush"].includes(t)},size:{type:String,default:"md",validator:t=>["sm","md","lg"].includes(t)}},setup(t){const n={render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.h("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"})])}},a=t,o=e.ref(!1),l=()=>o.value=!o.value,r=P.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:""}}}),s=P.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"}}}),i=P.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"}}}),c=e.computed(()=>N(r({variant:a.variant}))),f=e.computed(()=>N(s({size:a.size}))),x=e.computed(()=>N(i({size:a.size})));return(C,$)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(c.value)},[e.createVNode(oe,{class:e.normalizeClass(f.value),"aria-expanded":o.value,onClick:l},{default:e.withCtx(()=>[e.renderSlot(C.$slots,"header",{isOpen:o.value}),e.createVNode(n,{class:e.normalizeClass(e.unref(N)("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(x.value)},[e.renderSlot(C.$slots,"content",{isOpen:o.value})],2)):e.createCommentVNode("",!0)]),_:3})],2))}},Tu={class:"relative w-full"},Fu={class:"relative"},Au=["id","value","disabled","placeholder","required","aria-describedby"],Mu={class:"flex items-center justify-between mb-3"},Lu={class:"text-sm font-medium"},Pu={class:"grid grid-cols-7 gap-1 mb-2"},ju={class:"grid grid-cols-7 gap-1"},Ou=["disabled","onClick"],Iu={key:0,class:"mt-4 pt-3 border-t border-slate-200"},_o={__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,l=e.ref(!1),r=new Date,s=e.ref(r.getMonth()),i=e.ref(r.getFullYear()),c=e.ref(null),f=["Su","Mo","Tu","We","Th","Fr","Sa"],x=e.computed(()=>new Date(i.value,s.value).toLocaleString("default",{month:"long"})),C=e.computed(()=>new Date(i.value,s.value+1,0).getDate()),$=e.computed(()=>new Date(i.value,s.value,1).getDay()),E=e.computed(()=>{const y=new Date(i.value,s.value,0).getDate(),u=$.value;return Array.from({length:u},(F,M)=>y-u+M+1)}),B=e.computed(()=>{const y=E.value.length+C.value,u=y%7===0?0:7-y%7;return Array.from({length:u},(F,M)=>M+1)}),w=e.computed(()=>c.value?b(c.value):"");function b(y){if(!y)return"";const u=new Date(y),F=String(u.getMonth()+1).padStart(2,"0"),M=String(u.getDate()).padStart(2,"0"),p=u.getFullYear();return a.format.replace("MM",F).replace("DD",M).replace("YYYY",p)}function v(y){if(!y)return null;if(y instanceof Date)return y;const u=new Date(y);return isNaN(u.getTime())?null:u}function h(y){if(!c.value)return!1;const u=new Date(c.value);return u.getDate()===y&&u.getMonth()===s.value&&u.getFullYear()===i.value}function k(y){const u=new Date(i.value,s.value,y);if(a.min){const F=v(a.min);if(F&&u<F)return!0}if(a.max){const F=v(a.max);if(F&&u>F)return!0}return!1}function z(){a.disabled||(l.value=!l.value)}function V(){l.value=!1}function D(){s.value===0?(s.value=11,i.value--):s.value--}function j(){s.value===11?(s.value=0,i.value++):s.value++}function K(y){if(k(y))return;const u=new Date(i.value,s.value,y);c.value=u,o("update:modelValue",u.toISOString().split("T")[0]),l.value=!1}function _(){s.value=r.getMonth(),i.value=r.getFullYear(),K(r.getDate())}function S(){c.value=null,o("update:modelValue","")}e.watch(()=>a.modelValue,y=>{if(y){const u=v(y);u&&(c.value=u,s.value=u.getMonth(),i.value=u.getFullYear())}else c.value=null},{immediate:!0});function d(y){y.key==="Escape"&&l.value&&V()}return e.onMounted(()=>{document.addEventListener("keydown",d)}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",d)}),(y,u)=>(e.openBlock(),e.createElementBlock("div",Tu,[e.createElementVNode("div",Fu,[e.createElementVNode("input",{id:t.id,type:"text",value:w.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:z},null,8,Au),u[2]||(u[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&&w.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"])},[...u[1]||(u[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(()=>[l.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:u[0]||(u[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Mu,[e.createElementVNode("button",{type:"button",class:"p-1 hover:bg-gray-100 rounded","aria-label":"Previous Month",onClick:D},[...u[3]||(u[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",Lu,e.toDisplayString(x.value)+" "+e.toDisplayString(i.value),1),e.createElementVNode("button",{type:"button",class:"p-1 hover:bg-gray-100 rounded","aria-label":"Next Month",onClick:j},[...u[4]||(u[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",Pu,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(f,F=>e.createElementVNode("div",{key:F,class:"text-center text-xs font-medium text-slate-600 py-1"},e.toDisplayString(F),1)),64))]),e.createElementVNode("div",ju,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(E.value,(F,M)=>(e.openBlock(),e.createElementBlock("div",{key:"prev-"+M,class:"text-center text-sm text-slate-300 py-2"},e.toDisplayString(F),1))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,F=>(e.openBlock(),e.createElementBlock("button",{key:F,type:"button",disabled:k(F),class:e.normalizeClass(["w-8 h-8 text-sm rounded flex items-center justify-center",h(F)?"bg-blue-500 text-white":"hover:bg-gray-100",k(F)?"text-gray-300 cursor-not-allowed":""]),onClick:M=>K(F)},e.toDisplayString(F),11,Ou))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value,(F,M)=>(e.openBlock(),e.createElementBlock("div",{key:"next-"+M,class:"text-center text-sm text-slate-300 py-2"},e.toDisplayString(F),1))),128))]),t.showToday?(e.openBlock(),e.createElementBlock("div",Iu,[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}),l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-[99998]",onClick:V})):e.createCommentVNode("",!0)]))}},_u={class:"flex items-start justify-between"},Ru={class:"flex-1 min-w-0"},Uu={key:0,class:"flex-shrink-0 ml-4"},qu="text-lg font-semibold text-slate-900 truncate",Hu="text-sm text-slate-600 mt-1",Ro={__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=P.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=P.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=P.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"}}}),l=P.cva("",{variants:{padding:{none:"p-4",sm:"p-3",md:"p-4",lg:"p-6",xl:"p-8"}}}),r=P.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"}}}),s=P.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(i,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(N)(e.unref(n)({variant:t.variant,padding:t.padding})))},[i.$slots.header||t.title||t.description?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(N)(e.unref(a)({padding:t.padding})))},[e.renderSlot(i.$slots,"header",{},()=>[e.createElementVNode("div",_u,[e.createElementVNode("div",Ru,[t.title?(e.openBlock(),e.createElementBlock("h3",{key:0,class:e.normalizeClass(qu)},e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:e.normalizeClass(Hu)},e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)]),i.$slots.actions?(e.openBlock(),e.createElementBlock("div",Uu,[e.renderSlot(i.$slots,"actions")])):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0),i.$slots.filters?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(N)(e.unref(o)({padding:t.padding})))},[e.renderSlot(i.$slots,"filters")],2)):e.createCommentVNode("",!0),i.$slots.default?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(e.unref(N)(e.unref(l)({padding:t.padding})))},[e.renderSlot(i.$slots,"default")],2)):e.createCommentVNode("",!0),i.$slots.legend?(e.openBlock(),e.createElementBlock("div",{key:3,class:e.normalizeClass(e.unref(N)(e.unref(r)({padding:t.padding})))},[e.renderSlot(i.$slots,"legend")],2)):e.createCommentVNode("",!0),i.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:4,class:e.normalizeClass(e.unref(N)(e.unref(s)({padding:t.padding})))},[e.renderSlot(i.$slots,"footer")],2)):e.createCommentVNode("",!0)],2))}},Wu={class:"w-full h-full relative"},Yu=["width","height","viewBox"],Gu={key:0},Ku=["x1","y1","x2","y2","stroke"],Xu=["id"],Qu=["stop-color"],Ju=["stop-color"],Zu=["x","y","width","height","fill","onMouseenter"],em=["to"],tm=["from","to"],am={key:1},nm=["x","y"],om={key:2},lm=["x","y"],rm=["x1","y1","x2","y2"],sm=["x1","y1","x2","y2"],im={class:"bg-slate-900 text-white px-4 py-3 rounded-lg shadow-2xl border border-slate-700 min-w-[160px]"},cm={class:"flex items-center gap-2 mb-1"},dm={class:"font-semibold text-sm"},um={class:"ml-5"},mm={class:"text-2xl font-bold"},va={__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-90 cursor-pointer"},axisLabelClasses:{type:String,default:"fill-slate-600 text-xs font-medium"},maxValue:{type:Number,default:null}},emits:["bar-click","bar-hover"],setup(t,{emit:n}){const a=t,o=n,l=e.ref({visible:!1,x:0,y:0,label:"",value:0,color:""}),r=e.computed(()=>a.maxValue||Math.max(...a.data)),s=e.computed(()=>(a.width-a.padding.left-a.padding.right)/a.data.length*.7),i=e.computed(()=>(a.width-a.padding.left-a.padding.right)/a.data.length*.3),c=e.computed(()=>{const b=[],v=a.height-a.padding.top-a.padding.bottom,h=5;for(let k=0;k<=h;k++){const z=a.padding.top+v/h*k;b.push(z)}return b}),f=b=>a.padding.left+b*(s.value+i.value)+i.value/2,x=b=>{const v=a.height-a.padding.top-a.padding.bottom,h=v/r.value;return a.padding.top+v-b*h},C=b=>{const h=(a.height-a.padding.top-a.padding.bottom)/r.value;return b*h},$=b=>a.colors[b%a.colors.length],E=b=>{const v=a.height-a.padding.top-a.padding.bottom,h=(a.height-a.padding.bottom-b)/v*r.value;return Math.round(h)},B=(b,v,h)=>{const k=a.labels[h]||`Item ${h+1}`;l.value={visible:!0,x:b.clientX,y:b.clientY,label:k,value:v,color:$(h)},o("bar-hover",{value:v,index:h,label:k})},w=()=>{l.value.visible=!1};return(b,v)=>(e.openBlock(),e.createElementBlock("div",Wu,[(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(c.value,h=>(e.openBlock(),e.createElementBlock("line",{key:`grid-${h}`,x1:t.padding.left,y1:h,x2:t.width-t.padding.right,y2:h,stroke:t.gridColor,"stroke-width":"1","stroke-dasharray":"4,4",opacity:"0.3"},null,8,Ku))),128))])):e.createCommentVNode("",!0),e.createElementVNode("defs",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.data,(h,k)=>(e.openBlock(),e.createElementBlock("linearGradient",{id:`barGradient-${k}`,key:`gradient-${k}`,x1:"0%",y1:"0%",x2:"0%",y2:"100%"},[e.createElementVNode("stop",{offset:"0%","stop-color":$(k),"stop-opacity":"1"},null,8,Qu),e.createElementVNode("stop",{offset:"100%","stop-color":$(k),"stop-opacity":"0.7"},null,8,Ju)],8,Xu))),128))]),e.createElementVNode("g",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.data,(h,k)=>(e.openBlock(),e.createElementBlock("rect",{key:`bar-${k}`,x:f(k),y:x(h),width:s.value,height:C(h),fill:`url(#barGradient-${k})`,class:e.normalizeClass(t.barClasses),rx:"4",onMouseenter:z=>B(z,h,k),onMouseleave:w},[e.createElementVNode("animate",{attributeName:"height",from:0,to:C(h),dur:"0.8s",fill:"freeze"},null,8,em),e.createElementVNode("animate",{attributeName:"y",from:t.padding.top+(t.height-t.padding.top-t.padding.bottom),to:x(h),dur:"0.8s",fill:"freeze"},null,8,tm)],42,Zu))),128))]),t.showXAxis?(e.openBlock(),e.createElementBlock("g",am,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.labels,(h,k)=>(e.openBlock(),e.createElementBlock("text",{key:`xlabel-${k}`,x:f(k)+s.value/2,y:t.height-t.padding.bottom+20,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"middle"},e.toDisplayString(h),11,nm))),128))])):e.createCommentVNode("",!0),t.showYAxis?(e.openBlock(),e.createElementBlock("g",om,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,h=>(e.openBlock(),e.createElementBlock("text",{key:`ylabel-${h}`,x:t.padding.left-10,y:h+4,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"end"},e.toDisplayString(E(h)),11,lm))),128))])):e.createCommentVNode("",!0),e.createElementVNode("line",{x1:t.padding.left,y1:t.padding.top,x2:t.padding.left,y2:t.height-t.padding.bottom,stroke:"#cbd5e1","stroke-width":"2"},null,8,rm),e.createElementVNode("line",{x1:t.padding.left,y1:t.height-t.padding.bottom,x2:t.width-t.padding.right,y2:t.height-t.padding.bottom,stroke:"#cbd5e1","stroke-width":"2"},null,8,sm)],8,Yu)),l.value.visible?(e.openBlock(),e.createElementBlock("div",{key:0,style:e.normalizeStyle({position:"fixed",left:`${l.value.x}px`,top:`${l.value.y}px`,transform:"translate(-50%, -120%)",pointerEvents:"none",zIndex:9999}),class:"animate-in fade-in duration-200"},[e.createElementVNode("div",im,[e.createElementVNode("div",cm,[e.createElementVNode("div",{style:e.normalizeStyle({backgroundColor:l.value.color}),class:"w-3 h-3 rounded shadow-sm"},null,4),e.createElementVNode("p",dm,e.toDisplayString(l.value.label),1)]),e.createElementVNode("div",um,[e.createElementVNode("span",mm,e.toDisplayString(l.value.value),1)]),v[0]||(v[0]=e.createElementVNode("div",{class:"absolute bottom-0 left-1/2 transform -translate-x-1/2 translate-y-1/2 rotate-45 w-2 h-2 bg-slate-900 border-r border-b border-slate-700"},null,-1))])],4)):e.createCommentVNode("",!0)]))}},fm={class:"w-full h-full"},pm=["width","height","viewBox"],gm={key:0},vm=["x1","y1","x2","y2","stroke"],hm=["d","stroke","stroke-width"],ym={key:1},bm=["cx","cy","r","fill","stroke","onMouseenter"],xm=["d","fill","fill-opacity"],km={key:3},wm=["x","y"],Cm={key:4},Bm=["x","y"],Vm={key:5},Em=["x","y","width","height","fill","stroke"],Sm=["x","y"],ha={__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,l=e.ref({visible:!1,x:0,y:0,width:0,height:0,content:""}),r=e.computed(()=>a.maxValue||Math.max(...a.data)),s=e.computed(()=>a.data.map((w,b)=>({x:x(b),y:C(w),value:w}))),i=e.computed(()=>s.value.length===0?"":s.value.map((b,v)=>`${v===0?"M":"L"} ${b.x} ${b.y}`).join(" ")),c=e.computed(()=>{if(s.value.length===0)return"";const w=s.value.map((h,k)=>`${k===0?"M":"L"} ${h.x} ${h.y}`).join(" "),b=a.height-a.padding.bottom,v=`L ${s.value[s.value.length-1].x} ${b} L ${s.value[0].x} ${b} Z`;return w+" "+v}),f=e.computed(()=>{const w=[],b=a.height-a.padding.top-a.padding.bottom,v=5;for(let h=0;h<=v;h++){const k=a.padding.top+b/v*h;w.push(k)}return w}),x=w=>{const v=(a.width-a.padding.left-a.padding.right)/(a.data.length-1||1);return a.padding.left+w*v},C=w=>{const b=a.height-a.padding.top-a.padding.bottom,v=b/r.value;return a.padding.top+b-w*v},$=w=>{const b=a.height-a.padding.top-a.padding.bottom,v=(a.height-a.padding.bottom-w)/b*r.value;return Math.round(v)},E=(w,b,v)=>{const h=w.target.getBoundingClientRect(),k=a.labels[v]||`Point ${v+1}`;l.value={visible:!0,x:h.left+h.width/2,y:h.top,width:80,height:24,content:`${k}: ${b}`},o("point-hover",{value:b,index:v,label:k})},B=()=>{l.value.visible=!1};return(w,b)=>(e.openBlock(),e.createElementBlock("div",fm,[(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",gm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,v=>(e.openBlock(),e.createElementBlock("line",{key:`grid-${v}`,x1:t.padding.left,y1:v,x2:t.width-t.padding.right,y2:v,stroke:t.gridColor,"stroke-width":"1","stroke-dasharray":"2,2"},null,8,vm))),128))])):e.createCommentVNode("",!0),e.createElementVNode("path",{d:i.value,stroke:t.lineColor,"stroke-width":t.strokeWidth,fill:"none",class:e.normalizeClass(t.lineClasses)},null,10,hm),t.showPoints?(e.openBlock(),e.createElementBlock("g",ym,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(v,h)=>(e.openBlock(),e.createElementBlock("circle",{key:`point-${h}`,cx:v.x,cy:v.y,r:t.pointRadius,fill:t.pointColor,stroke:t.lineColor,"stroke-width":2,class:e.normalizeClass(t.pointClasses),onMouseenter:k=>E(k,v.value,h),onMouseleave:B},null,42,bm))),128))])):e.createCommentVNode("",!0),t.fillArea?(e.openBlock(),e.createElementBlock("path",{key:2,d:c.value,fill:t.fillColor,"fill-opacity":t.fillOpacity},null,8,xm)):e.createCommentVNode("",!0),t.showXAxis?(e.openBlock(),e.createElementBlock("g",km,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.labels,(v,h)=>(e.openBlock(),e.createElementBlock("text",{key:`xlabel-${h}`,x:x(h),y:t.height-t.padding.bottom+20,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"middle"},e.toDisplayString(v),11,wm))),128))])):e.createCommentVNode("",!0),t.showYAxis?(e.openBlock(),e.createElementBlock("g",Cm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,v=>(e.openBlock(),e.createElementBlock("text",{key:`ylabel-${v}`,x:t.padding.left-10,y:v+4,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"end"},e.toDisplayString($(v)),11,Bm))),128))])):e.createCommentVNode("",!0),l.value.visible?(e.openBlock(),e.createElementBlock("g",Vm,[e.createElementVNode("rect",{x:l.value.x-l.value.width/2,y:l.value.y-l.value.height-10,width:l.value.width,height:l.value.height,fill:t.tooltipBackground,stroke:t.tooltipBorder,"stroke-width":"1",rx:"4"},null,8,Em),e.createElementVNode("text",{x:l.value.x,y:l.value.y-l.value.height/2-2,class:e.normalizeClass(t.tooltipTextClasses),"text-anchor":"middle"},e.toDisplayString(l.value.content),11,Sm)])):e.createCommentVNode("",!0)],8,pm))]))}},Nm={class:"bg-white border-b border-gray-200"},$m={key:0,class:"flex items-center gap-3 min-w-64"},zm={class:"relative flex-1"},Dm={class:"relative flex-1"},Tm={key:1,class:"min-w-40"},Fm={class:"relative"},Am={key:2,class:"min-w-40"},Mm={class:"relative"},Lm=["value"],Pm={key:3,class:"flex items-center gap-2"},jm={class:"flex items-center gap-3 ml-auto"},Om={class:"flex items-center gap-3 flex-wrap"},Im=["onClick"],Uo={__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,l=e.ref(""),r=e.ref(""),s=e.ref("bar"),i=e.ref(""),c=P.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(()=>l.value||r.value||i.value),x=e.computed(()=>{const _=[];if(l.value||r.value){let S="";l.value&&r.value?S=`${l.value} to ${r.value}`:l.value?S=`From ${l.value}`:r.value&&(S=`Until ${r.value}`),S&&_.push({key:"date",label:"Date Range",value:S,icon:"calendar"})}if(i.value){const S=a.dataSources.find(d=>d.value===i.value);_.push({key:"dataSource",label:"Data Source",value:S?.label||i.value,icon:"database"})}return _}),C=e.computed(()=>N(c({variant:a.variant,padding:a.padding}))),$=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"),E=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"),B=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"),w=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"),b=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"),v=e.computed(()=>"px-6 py-3 bg-blue-50 border-t border-blue-100"),h=e.computed(()=>"text-sm font-semibold text-blue-800"),k=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"),z=e.computed(()=>"text-blue-600 hover:text-blue-800 ml-1 hover:bg-blue-100 rounded-full p-0.5 transition-all"),V=_=>{s.value=_.target.value,o("update:chartType",_.target.value)},D=_=>{i.value=_.target.value,o("update:dataSource",_.target.value)},j=()=>{l.value="",r.value="",i.value="",o("clear-filters")},K=_=>{switch(_){case"date":l.value="",r.value="";break;case"dataSource":i.value="";break}};return e.watch(()=>l.value,_=>{o("update:dateFrom",_)}),e.watch(()=>r.value,_=>{o("update:dateTo",_)}),(_,S)=>(e.openBlock(),e.createElementBlock("div",Nm,[e.createElementVNode("div",{class:e.normalizeClass(C.value)},[t.showDateFilter?(e.openBlock(),e.createElementBlock("div",$m,[e.createElementVNode("div",zm,[e.createVNode(H,{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]=d=>l.value=d),type:"date",class:e.normalizeClass($.value),placeholder:"From date"},null,2),[[e.vModelText,l.value]])]),S[6]||(S[6]=e.createElementVNode("span",{class:"text-gray-500 text-sm"},"to",-1)),e.createElementVNode("div",Dm,[e.createVNode(H,{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]=d=>r.value=d),type:"date",class:e.normalizeClass($.value),placeholder:"To date"},null,2),[[e.vModelText,r.value]])])])):e.createCommentVNode("",!0),t.showChartTypeFilter?(e.openBlock(),e.createElementBlock("div",Tm,[e.createElementVNode("div",Fm,[e.createVNode(he,{modelValue:s.value,"onUpdate:modelValue":S[2]||(S[2]=d=>s.value=d),class:e.normalizeClass(E.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(H,{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",Am,[e.createElementVNode("div",Mm,[e.createVNode(he,{modelValue:i.value,"onUpdate:modelValue":S[3]||(S[3]=d=>i.value=d),class:e.normalizeClass(E.value),onChange:D},{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,d=>(e.openBlock(),e.createElementBlock("option",{key:d.value,value:d.value},e.toDisplayString(d.label),9,Lm))),128))]),_:1},8,["modelValue","class"]),e.createVNode(H,{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",Pm,[e.renderSlot(_.$slots,"filters")])):e.createCommentVNode("",!0),e.createElementVNode("div",jm,[f.value?(e.openBlock(),e.createBlock(oe,{key:0,class:e.normalizeClass(B.value),onClick:j},{default:e.withCtx(()=>[e.createVNode(H,{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(oe,{key:1,class:e.normalizeClass(w.value),onClick:S[4]||(S[4]=d=>_.$emit("export"))},{default:e.withCtx(()=>[e.createVNode(H,{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(oe,{key:2,class:e.normalizeClass(b.value),onClick:S[5]||(S[5]=d=>_.$emit("refresh"))},{default:e.withCtx(()=>[e.createVNode(H,{icon:"sync",class:"w-4 h-4 mr-2"}),S[11]||(S[11]=e.createTextVNode(" Refresh ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0)])],2),x.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(v.value)},[e.createElementVNode("div",Om,[e.createElementVNode("span",{class:e.normalizeClass(h.value)},"Active filters:",2),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.value,d=>(e.openBlock(),e.createElementBlock("div",{key:d.key,class:e.normalizeClass(k.value)},[e.createVNode(H,{icon:d.icon,class:"w-3 h-3"},null,8,["icon"]),e.createElementVNode("span",null,e.toDisplayString(d.label)+": "+e.toDisplayString(d.value),1),e.createElementVNode("button",{class:e.normalizeClass(z.value),onClick:y=>K(d.key)},[e.createVNode(H,{icon:"xmark",class:"w-3 h-3"})],10,Im)],2))),128))])],2)):e.createCommentVNode("",!0)]))}},_m={class:"flex items-start justify-between"},Rm={key:0,class:"flex items-center gap-2"},ya={__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=P.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=P.cva("font-semibold text-slate-900",{variants:{size:{sm:"text-base",md:"text-lg",lg:"text-xl"}},defaultVariants:{size:"md"}}),l=P.cva("text-slate-600 mt-1",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-base"}},defaultVariants:{size:"md"}}),r=e.computed(()=>N(a({variant:n.variant,padding:n.padding}))),s=e.computed(()=>N(o({size:"md"}))),i=e.computed(()=>N(l({size:"md"})));return(c,f)=>t.title||t.description||c.$slots.header?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(r.value)},[e.renderSlot(c.$slots,"header",{},()=>[e.createElementVNode("div",_m,[e.createElementVNode("div",null,[t.title?(e.openBlock(),e.createBlock(pt,{key:0,class:e.normalizeClass(s.value)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.title),1)]),_:1},8,["class"])):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createBlock(pt,{key:1,class:e.normalizeClass(i.value)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.description),1)]),_:1},8,["class"])):e.createCommentVNode("",!0)]),c.$slots.filters?(e.openBlock(),e.createElementBlock("div",Rm,[e.renderSlot(c.$slots,"filters")])):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0)}},Um={class:"flex items-center justify-between"},qm={key:0,class:"text-sm text-slate-600"},Hm={key:1,class:"text-sm text-slate-600"},Wm={key:2,class:"flex items-center gap-4"},Ym={key:3,class:"flex items-center gap-4"},Gm={class:"flex items-center gap-2"},Km={class:"flex items-center gap-1"},Xm=["disabled"],Qm=["disabled"],Jm={class:"flex items-center gap-1"},Zm=["onClick"],ef=["disabled"],tf=["disabled"],af={class:"text-sm text-slate-600 ml-4"},ba={__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=P.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=P.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"}}),l=P.cva("text-slate-700",{variants:{size:{sm:"text-sm",md:"text-base",lg:"text-lg"}},defaultVariants:{size:"md"}}),r=P.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"}}),s=e.computed(()=>(n.currentPage-1)*n.pageSize+1),i=e.computed(()=>Math.min(n.currentPage*n.pageSize,n.total)),c=e.computed(()=>{const E=[],B=n.totalPages,w=n.currentPage,b=n.maxVisiblePages;if(B<=b)for(let v=1;v<=B;v++)E.push(v);else{const v=Math.floor(b/2);let h=Math.max(1,w-v),k=Math.min(B,h+b-1);k-h+1<b&&(h=Math.max(1,k-b+1));for(let z=h;z<=k;z++)E.push(z)}return E}),f=e.computed(()=>N(a({variant:n.variant,padding:n.padding}))),x=e.computed(()=>N(l({size:"md"}))),C=e.computed(()=>N(r({size:"sm"}))),$=(E,B)=>{let w="inactive";return B?w="disabled":E&&(w="active"),N(o({state:w,size:"md"}))};return(E,B)=>t.showPagination||E.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(f.value)},[e.createElementVNode("div",Um,[t.selectable&&t.selectedCount>0?(e.openBlock(),e.createElementBlock("div",qm,e.toDisplayString(t.selectedCount)+" of "+e.toDisplayString(t.total)+" selected ",1)):(e.openBlock(),e.createElementBlock("div",Hm," Showing "+e.toDisplayString(s.value)+" to "+e.toDisplayString(i.value)+" of "+e.toDisplayString(t.total)+" entries ",1)),E.$slots.footer?(e.openBlock(),e.createElementBlock("div",Wm,[e.renderSlot(E.$slots,"footer")])):e.createCommentVNode("",!0),t.showPagination?(e.openBlock(),e.createElementBlock("div",Ym,[e.createElementVNode("div",Gm,[e.createVNode(Be,{for:"pageSize",class:e.normalizeClass(x.value),inline:!0},{default:e.withCtx(()=>[...B[5]||(B[5]=[e.createTextVNode("Show:",-1)])]),_:1},8,["class"]),e.createVNode(he,{id:"pageSize","model-value":t.pageSize.toString(),class:e.normalizeClass(C.value),"onUpdate:modelValue":B[0]||(B[0]=w=>E.$emit("update:pageSize",parseInt(w)))},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.pageSizeOptions,w=>(e.openBlock(),e.createBlock(fa,{key:w,value:w.toString(),label:w.toString()},null,8,["value","label"]))),128))]),_:1},8,["model-value","class"])]),e.createElementVNode("div",Km,[e.createElementVNode("button",{disabled:t.currentPage===1,class:e.normalizeClass($(!1,t.currentPage===1)),title:"First page",onClick:B[1]||(B[1]=w=>E.$emit("update:currentPage",1))},[...B[6]||(B[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,Xm),e.createElementVNode("button",{disabled:t.currentPage===1,class:e.normalizeClass($(!1,t.currentPage===1)),title:"Previous page",onClick:B[2]||(B[2]=w=>E.$emit("update:currentPage",t.currentPage-1))},[...B[7]||(B[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,Qm),e.createElementVNode("div",Jm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,w=>(e.openBlock(),e.createElementBlock("button",{key:w,class:e.normalizeClass($(w===t.currentPage,!1)),onClick:b=>E.$emit("update:currentPage",w)},e.toDisplayString(w),11,Zm))),128))]),e.createElementVNode("button",{disabled:t.currentPage===t.totalPages,class:e.normalizeClass($(!1,t.currentPage===t.totalPages)),title:"Next page",onClick:B[3]||(B[3]=w=>E.$emit("update:currentPage",t.currentPage+1))},[...B[8]||(B[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,ef),e.createElementVNode("button",{disabled:t.currentPage===t.totalPages,class:e.normalizeClass($(!1,t.currentPage===t.totalPages)),title:"Last page",onClick:B[4]||(B[4]=w=>E.$emit("update:currentPage",t.totalPages))},[...B[9]||(B[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,tf)]),e.createElementVNode("div",af," Page "+e.toDisplayString(t.currentPage)+" of "+e.toDisplayString(t.totalPages),1)])):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0)}},Vt=(t,n)=>{const a=t.__vccOpts||t;for(const[o,l]of n)a[o]=l;return a},nf={key:0,class:"loader__backdrop"},of={class:"loader__container"},lf={key:0,class:"loader__text loader__text--top"},rf={key:1,class:"loader__spin"},sf={key:2,class:"loader__pulse"},cf={key:3,class:"loader__bounce"},df={key:4,class:"loader__ripple"},uf={key:5,class:"loader__bars"},mf={key:6,class:"loader__dots"},ff={key:7,class:"loader__ring"},pf={key:8,class:"loader__spinner-text"},gf={key:9,class:"loader__text loader__text--bottom"},vf={__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",nf)):e.createCommentVNode("",!0),e.createElementVNode("div",of,[t.text&&t.textPosition==="top"?(e.openBlock(),e.createElementBlock("div",lf,e.toDisplayString(t.text),1)):e.createCommentVNode("",!0),t.type==="spin"?(e.openBlock(),e.createElementBlock("div",rf)):t.type==="pulse"?(e.openBlock(),e.createElementBlock("div",sf)):t.type==="bounce"?(e.openBlock(),e.createElementBlock("div",cf,[(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",df,[(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",uf,[(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",mf,[(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",ff,[...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",pf,[...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",gf,e.toDisplayString(t.text),1)):e.createCommentVNode("",!0)])],6)):e.createCommentVNode("",!0)}},Oe=Vt(vf,[["__scopeId","data-v-68532350"]]),hf={class:"relative"},yf={class:"flex items-center justify-center"},bf=["onClick"],xf={class:"flex items-center gap-2"},kf={key:1,class:"flex flex-col"},wf=["onClick"],Cf=["onClick"],Bf={key:1},Vf={key:1,class:"flex items-center gap-1 justify-center"},Ef={key:1,class:"text-xs"},Sf={key:2},Nf=["colspan"],$f={class:"flex flex-col items-center justify-center py-12"},zf={class:"text-slate-400 mb-4 flex justify-center"},Df={class:"text-slate-600 text-lg font-medium mb-2"},Tf={class:"text-slate-500 text-sm"},Ff={class:"p-6"},Af={class:"text-xl font-bold text-gray-700 whitespace-pre-wrap break-words"},Mf={__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,l=a,r=e.ref(1),s=e.ref(o.pageSize),i=e.ref(o.sortBy),c=e.ref(o.sortOrder),f=e.ref(!1),x=e.ref(""),C=P.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.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"}}),E=P.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=P.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"}}),w=e.computed(()=>{let L=[...o.data];if(i.value){const q=o.columns.find(G=>G.key===i.value);q&&L.sort((G,de)=>{const Z=d(G,q),Me=d(de,q);return Z<Me?c.value==="asc"?-1:1:Z>Me?c.value==="asc"?1:-1:0})}return L}),b=e.computed(()=>Math.ceil(w.value.length/s.value)),v=e.computed(()=>{if(!o.showPagination)return w.value;const L=(r.value-1)*s.value,q=L+s.value;return w.value.slice(L,q)}),h=e.computed(()=>o.showActionsColumn?o.$slots?.actions?!0:!o.actions||o.actions.length===0?!1:o.actions.some(q=>q.permission===void 0?!0:typeof q.permission=="boolean"?q.permission===!0:typeof q.permission=="function"):!1),k=e.computed(()=>{let L=o.columns.length;return o.selectable&&L++,h.value&&L++,L}),z=L=>o.actions.filter(q=>{if(q.permission!==void 0){if(typeof q.permission=="function"){if(!q.permission(L))return!1}else if(!q.permission)return!1}return q.visible&&typeof q.visible=="function"?q.visible(L):!0}),V=(L,q)=>L.permission&&typeof L.permission=="function"?L.permission(q):!0,D=(L,q)=>L.disabled&&typeof L.disabled=="function"?L.disabled(q):!1,j=(L,q)=>{D(L,q)||!V(L,q)||(l("action",{action:L.key,item:q,actionConfig:L}),L.onClick&&typeof L.onClick=="function"&&L.onClick(q))},K=L=>({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"})[L]||"ghost",_=e.computed(()=>w.value.length>0&&w.value.every(L=>u(L))),S=e.computed(()=>{const L=w.value.filter(q=>u(q)).length;return L>0&&L<w.value.length}),d=(L,q)=>q.accessor?q.accessor(L):q.key.split(".").reduce((G,de)=>G?.[de],L),y=(L,q)=>L[o.rowKey]||q,u=L=>o.selectedItems.some(q=>y(q)===y(L)),F=L=>{const q=[...o.selectedItems],G=q.findIndex(de=>y(de)===y(L));G>-1?q.splice(G,1):q.push(L),l("selection-change",q)},M=()=>{if(o.loading||o.dataLoading)return;const L=_.value?[]:[...w.value];l("selection-change",L)},p=async L=>{!L.sortable||o.loading||o.sortLoading||(i.value===L.key?c.value=c.value==="asc"?"desc":"asc":(i.value=L.key,c.value="asc"),l("sort-change",{column:L.key,direction:c.value}))},g=L=>{o.loading||l("row-click",L)},m=async L=>{o.paginationLoading||o.loading||(r.value=L,l("page-change",L))},O=async L=>{o.paginationLoading||o.loading||(s.value=L,r.value=1,l("page-size-change",L))},W=e.computed(()=>N(C({variant:o.variant}))),X=e.computed(()=>N($({variant:o.variant}))),R=e.computed(()=>N(E({variant:o.variant}))),ae=e.computed(()=>N(B({variant:o.variant}))),ne=L=>N({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":L.sortable&&!o.loading&&!o.sortLoading,"cursor-not-allowed opacity-50":o.loading||o.sortLoading&&i.value===L.key}),re=()=>N({compact:"px-4 py-2",normal:"px-6 py-4",comfortable:"px-8 py-6"}[o.density],"whitespace-nowrap text-sm text-slate-900"),fe=(L,q)=>{const G=[];return o.striped&&q%2===1&&G.push("bg-slate-50/50"),o.hoverable&&!o.clickableRows&&G.push("hover:bg-slate-50"),o.clickableRows&&G.push("cursor-pointer hover:bg-slate-100"),o.selectable&&u(L)&&G.push("bg-blue-50 border-blue-200"),o.variant==="bordered"?G.push("border-b border-slate-200"):o.variant==="minimal"&&G.push("border-b border-slate-100"),N("transition-colors",...G)},me=(L,q)=>{const G=d(L,q);return typeof q=="object"&&q.formatter?q.formatter(G,L):G==null?"":G instanceof Date?G.toLocaleDateString():Array.isArray(G)?G.join(", "):G},Re=(L,q=10)=>{if(!L)return L;const G=L.toString().split(" ");return G.length<=q?L:G.slice(0,q).join(" ")+"..."},ce=L=>{x.value||(x.value=L,f.value=!0)},De=()=>{f.value=!1,x.value=""},we=e.computed(()=>N({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")),be=e.computed(()=>N({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")),Et=e.computed(()=>N({compact:"px-4 py-4",normal:"px-6 py-6",comfortable:"px-8 py-8"}[o.density],"text-center")),nt=(L,q)=>N({"text-blue-600":i.value===L.key&&c.value===q,"text-slate-300":i.value!==L.key||c.value!==q});return e.watch(()=>o.selectedItems,()=>{},{deep:!0}),e.watch(()=>o.pageSize,L=>{s.value=L}),n({refresh:()=>{l("refresh")},goToPage:L=>{m(L)},selectAll:()=>{M()},clearSelection:()=>{l("selection-change",[])},getCurrentPage:()=>r.value,getTotalPages:()=>b.value,getSelectedItems:()=>o.selectedItems}),(L,q)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(W.value)},[t.title||t.description||L.$slots.header?(e.openBlock(),e.createBlock(ya,{key:0,title:t.title,description:t.description,variant:t.headerVariant,padding:t.headerPadding},{header:e.withCtx(()=>[e.renderSlot(L.$slots,"header",{},void 0,!0)]),filters:e.withCtx(()=>[e.renderSlot(L.$slots,"filters",{},void 0,!0)]),_:3},8,["title","description","variant","padding"])):e.createCommentVNode("",!0),e.createElementVNode("div",hf,[t.loading?(e.openBlock(),e.createBlock(Oe,{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(X.value)},[e.createElementVNode("thead",{class:e.normalizeClass(R.value)},[e.createElementVNode("tr",null,[t.selectable?(e.openBlock(),e.createElementBlock("th",{key:0,class:e.normalizeClass(we.value)},[e.createElementVNode("div",yf,[t.bulkLoading?(e.openBlock(),e.createBlock(Oe,{key:0,loading:!0,type:"spin",size:"small",color:t.loadingColor},null,8,["color"])):(e.openBlock(),e.createBlock(Xe,{key:1,"model-value":_.value,indeterminate:S.value,disabled:t.loading||t.dataLoading,"onUpdate:modelValue":M},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(ne(G)),onClick:de=>p(G)},[e.createElementVNode("div",xf,[e.createElementVNode("span",null,e.toDisplayString(G.label),1),t.sortLoading&&i.value===G.key?(e.openBlock(),e.createBlock(Oe,{key:0,loading:!0,type:"spin",size:"small",color:t.loadingColor},null,8,["color"])):G.sortable?(e.openBlock(),e.createElementBlock("div",kf,[(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass([nt(G,"asc"),"w-3 h-3 transition-colors"]),fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...q[1]||(q[1]=[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([nt(G,"desc"),"w-3 h-3 transition-colors"]),fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...q[2]||(q[2]=[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,bf))),128)),h.value?(e.openBlock(),e.createElementBlock("th",{key:1,class:e.normalizeClass(be.value)}," Actions ",2)):e.createCommentVNode("",!0)])],2),e.createElementVNode("tbody",{class:e.normalizeClass(ae.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(we.value)},[...q[3]||(q[3]=[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,de=>(e.openBlock(),e.createElementBlock("td",{key:de.key,class:e.normalizeClass(re())},[...q[4]||(q[4]=[e.createElementVNode("div",{class:"h-4 bg-slate-200 rounded w-3/4"},null,-1)])],2))),128)),h.value?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass(be.value)},[...q[5]||(q[5]=[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)):v.value.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(v.value,(G,de)=>(e.openBlock(),e.createElementBlock("tr",{key:y(G,de),class:e.normalizeClass(fe(G,de)),onClick:Z=>g({item:G,index:de})},[t.selectable?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(we.value)},[e.createVNode(Xe,{"model-value":u(G),"onUpdate:modelValue":Z=>F(G)},null,8,["model-value","onUpdate:modelValue"])],2)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,Z=>(e.openBlock(),e.createElementBlock("td",{key:Z.key,class:e.normalizeClass(re())},[e.renderSlot(L.$slots,`cell-${Z.key}`,{item:G,value:d(G,Z),column:Z,index:de},()=>[me(G,Z).toString().split(" ").length>10?(e.openBlock(),e.createElementBlock("span",{key:0,class:"cursor-pointer text-blue-600 hover:text-blue-800",onClick:e.withModifiers(Me=>ce(me(G,Z)),["stop"])},e.toDisplayString(Re(me(G,Z))),9,Cf)):(e.openBlock(),e.createElementBlock("span",Bf,e.toDisplayString(me(G,Z)),1))],!0)],2))),128)),h.value?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass(be.value)},[L.$slots.actions?e.renderSlot(L.$slots,"actions",{key:0,item:G,index:de},void 0,!0):t.actions.length>0?(e.openBlock(),e.createElementBlock("div",Vf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z(G),Z=>(e.openBlock(),e.createBlock(ga,{key:Z.key,content:typeof Z.tooltip=="function"?Z.tooltip(G):Z.tooltip||Z.label||Z.key,placement:"top"},{default:e.withCtx(()=>[e.createVNode(oe,{variant:K(Z.variant),size:"xs",disabled:D(Z,G)||!V(Z,G),class:e.normalizeClass(["h-8 w-8",typeof Z.class=="function"?Z.class(G):Z.class]),onClick:e.withModifiers(Me=>j(Z,G),["stop"])},{default:e.withCtx(()=>[Z.icon?(e.openBlock(),e.createBlock(H,{key:0,icon:Z.icon,class:"w-4 h-4"},null,8,["icon"])):Z.label?(e.openBlock(),e.createElementBlock("span",Ef,e.toDisplayString(Z.label),1)):e.createCommentVNode("",!0)]),_:2},1032,["variant","disabled","class","onClick"])]),_:2},1032,["content"]))),128))])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0)],10,wf))),128)):(e.openBlock(),e.createElementBlock("tr",Sf,[e.createElementVNode("td",{colspan:k.value,class:e.normalizeClass(Et.value)},[e.renderSlot(L.$slots,"empty",{},()=>[e.createElementVNode("div",$f,[e.createElementVNode("div",zf,[e.createVNode(H,{icon:"search",class:"w-16 h-16"})]),e.createElementVNode("p",Df,e.toDisplayString(t.emptyText),1),e.createElementVNode("p",Tf,e.toDisplayString(t.emptySubtitle),1)])],!0)],10,Nf)]))],2)],2)],2)]),t.showPagination||L.$slots.footer?(e.openBlock(),e.createBlock(ba,{key:1,"current-page":r.value,"total-pages":b.value,total:w.value.length,"page-size":s.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":m,"onUpdate:pageSize":O},{footer:e.withCtx(()=>[e.renderSlot(L.$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),e.createVNode(Ct,{modelValue:f.value,"onUpdate:modelValue":q[0]||(q[0]=G=>f.value=G),size:"lg",onClose:De},{default:e.withCtx(()=>[e.createElementVNode("div",Ff,[q[6]||(q[6]=e.createElementVNode("h3",{class:"text-md font-semibold mb-4"}," Full Text ",-1)),e.createElementVNode("div",Af,e.toDisplayString(x.value),1)])]),_:1},8,["modelValue"])],2))}},qo=Vt(Mf,[["__scopeId","data-v-c2fc0c79"]]),Ho={__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,l=P.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"}}),r=P.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"}}),s=w=>typeof w=="string"?w:w?.key||w?.field||"unknown",i=(w,b)=>{const v=s(b);return typeof b=="object"&&b.accessor?b.accessor(w):v&&v.includes(".")?v.split(".").reduce((h,k)=>h?.[k],w):w?.[v]},c=(w,b)=>{const v=i(w,b);return typeof b=="object"&&b.formatter?b.formatter(v,w):v==null?"":v instanceof Date?v.toLocaleDateString():Array.isArray(v)?v.join(", "):v},f=()=>{a.clickableRows&&o("row-click",{item:a.item,index:a.index})},x=w=>typeof w=="object"&&w.align?w.align:"left",C=e.computed(()=>N(l({striped:a.striped,hoverable:a.hoverable&&!a.clickableRows,clickable:a.clickableRows,selected:a.isSelected,variant:a.variant}))),$=w=>{const b=x(w);return N(r({density:a.density,align:b}),w.cellClasses)},E=e.computed(()=>N(r({density:a.density}),"w-12")),B=e.computed(()=>N(r({density:a.density,align:"right"}),"font-medium"));return(w,b)=>(e.openBlock(),e.createElementBlock("tr",{class:e.normalizeClass(C.value),onClick:f},[t.selectable?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(E.value)},[e.createVNode(Xe,{"model-value":t.isSelected,"onUpdate:modelValue":b[0]||(b[0]=v=>w.$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,v=>(e.openBlock(),e.createElementBlock("td",{key:s(v),class:e.normalizeClass($(v))},[e.renderSlot(w.$slots,`cell-${s(v)}`,{item:t.item,value:i(t.item,v),column:v,index:t.index},()=>[e.createTextVNode(e.toDisplayString(c(t.item,v)),1)])],2))),128)),w.$slots.actions?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass(B.value)},[e.renderSlot(w.$slots,"actions",{item:t.item,index:t.index})],2)):e.createCommentVNode("",!0)],2))}},Wo={__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 s=n.value??o();return n.column.formatter?n.column.formatter(s,n.item):s}),o=()=>n.column.accessor?n.column.accessor(n.item):n.column.key.split(".").reduce((s,i)=>s?.[i],n.item),l=P.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"}}),r=e.computed(()=>{const s=n.align||n.column.align||"left",i=`text-${n.textColor}`,c=n.width?`w-${n.width}`:"";return N(l({align:s,padding:n.padding,textSize:n.textSize}),i,c,n.column.cellClasses)});return(s,i)=>(e.openBlock(),e.createElementBlock("td",{class:e.normalizeClass(r.value)},[e.renderSlot(s.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(a.value),1)])],2))}},Lf={class:"bg-white border-b border-gray-200"},Pf={key:0,class:"flex-1 min-w-80 max-w-md"},jf={class:"relative group"},Of=["model-value","placeholder"],If={class:"relative"},_f={value:""},Rf=["value"],Uf={key:1,class:"min-w-36"},qf={class:"relative"},Hf=["value"],Wf={key:3,class:"flex items-center gap-2"},Yf={class:"flex items-center gap-3 ml-auto"},Gf={key:0},Kf={key:3},Xf={class:"grid grid-cols-1 lg:grid-cols-3 gap-6"},Qf={class:"flex items-center justify-between"},Jf={class:"flex items-center gap-3"},Zf={class:"relative flex-1"},ep=["model-value","placeholder","onInput"],tp={class:"relative flex-1"},ap=["model-value","placeholder","onInput"],np=["onClick"],op={class:"flex items-center justify-between"},lp={class:"flex items-center gap-3"},rp={class:"relative flex-1"},sp=["model-value","placeholder","step","onInput"],ip={class:"relative flex-1"},cp=["model-value","placeholder","step","onInput"],dp=["onClick"],up={class:"flex items-center justify-between"},mp={class:"relative"},fp={value:""},pp=["value"],gp={key:0,class:"flex flex-wrap gap-2 mt-2"},vp=["onClick"],hp={class:"flex items-center gap-3 flex-wrap"},yp=["onClick"],bp={key:2,class:"px-6 py-3 bg-gray-50 border-t border-gray-200"},xp={class:"flex items-center justify-between"},kp={class:"flex items-center gap-4"},wp={class:"text-sm text-gray-600"},Cp={class:"font-medium"},Bp={class:"bg-white rounded-xl shadow-2xl max-w-2xl w-full p-6"},Vp={class:"flex items-center justify-between mb-4"},Ep={class:"flex justify-end gap-3 mt-6"},Yo={__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},showFileUpload:{type:Boolean,default:!1},fileUploadMultiple:{type:Boolean,default:!1},fileUploadAccept:{type:String,default:""},fileUploadMaxSize:{type:Number,default:null},fileUploadVariant:{type:String,default:"default",validator:t=>["default","dashed"].includes(t)},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","files-selected","file-removed"],setup(t,{emit:n}){const a=t,o=n,l=e.ref(!1),r=e.ref(!1),s=e.computed(()=>Object.keys(a.addButton).length>0),i=e.computed(()=>{if(!s.value)return a.showAdd;if(a.addButton.permission!==void 0){if(typeof a.addButton.permission=="function"){if(!a.addButton.permission())return!1}else if(!a.addButton.permission)return!1}return a.addButton.visible&&typeof a.addButton.visible=="function"?a.addButton.visible():!0}),c=e.computed(()=>s.value&&a.addButton.permission!==void 0?typeof a.addButton.permission=="function"?a.addButton.permission():a.addButton.permission:!0),f=e.computed(()=>s.value&&a.addButton.disabled&&typeof a.addButton.disabled=="function"?a.addButton.disabled():!1),x=()=>{r.value=!0},C=()=>{r.value=!1},$=U=>{o("files-selected",U)},E=U=>{o("file-removed",U)},B=()=>{f.value||!c.value||(o("add"),o("add-button-click",a.addButton),a.addButton.onClick&&typeof a.addButton.onClick=="function"&&a.addButton.onClick())},w=P.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"}}),b=P.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"}}),v=P.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=(U,T)=>{const A=a.selectFilters.map(Y=>Y.key===U?{...Y,value:T}:Y);o("update:selectFilters",A)},k=U=>!!(U.from||U.to),z=U=>{const T=a.dateFilters.map(A=>A.key===U?{...A,from:"",to:""}:A);o("update:dateFilters",T)},V=U=>`text-xs px-2 py-1 rounded ${k(U)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,D=(U,T,A)=>{const Y=a.dateFilters.map(ee=>ee.key===U?{...ee,[T]:A}:ee);o("update:dateFilters",Y)},j=U=>!!(U.min||U.max),K=U=>{const T=a.numberFilters.map(A=>A.key===U?{...A,min:"",max:""}:A);o("update:numberFilters",T)},_=U=>`text-xs px-2 py-1 rounded ${j(U)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,S=(U,T,A)=>{const Y=a.numberFilters.map(ee=>ee.key===U?{...ee,[T]:A}:ee);o("update:numberFilters",Y)},d=U=>U.selected&&U.selected.length>0,y=U=>`text-xs px-2 py-1 rounded ${d(U)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,u=(U,T)=>{if(!T)return;const A=a.multiSelectFilters.map(Y=>{if(Y.key===U){const ee=Y.selected||[],Ue=ee.includes(T);return{...Y,selected:Ue?ee.filter(St=>St!==T):[...ee,T]}}return Y});o("update:multiSelectFilters",A)},F=(U,T)=>{const A=a.multiSelectFilters.map(Y=>Y.key===U?{...Y,selected:Y.selected.filter(ee=>ee!==T)}:Y);o("update:multiSelectFilters",A)},M=(U,T)=>{const A=U.options.find(Y=>Y.value===T);return A?A.label:T},p=()=>{l.value=!l.value},g=e.computed(()=>a.numberFilters.length>0||a.multiSelectFilters.length>0),m=e.computed(()=>{const U=a.searchQuery,T=a.selectedStatus,A=a.dateFrom||a.dateTo,Y=a.selectFilters.some(xe=>xe.value),ee=a.dateFilters.some(xe=>xe.from||xe.to),Ue=a.numberFilters.some(xe=>xe.min||xe.max),St=a.multiSelectFilters.some(xe=>xe.selected&&xe.selected.length>0);return U||T||A||Y||ee||Ue||St}),O=e.computed(()=>{let U=0;return a.searchQuery&&U++,a.selectedStatus&&U++,(a.dateFrom||a.dateTo)&&U++,U+=a.selectFilters.filter(T=>T.value).length,U+=a.dateFilters.filter(T=>T.from||T.to).length,U+=a.numberFilters.filter(T=>T.min||T.max).length,U+=a.multiSelectFilters.filter(T=>T.selected&&T.selected.length>0).length,U}),W=e.computed(()=>{const U=[];if(a.searchQuery&&a.searchQuery.trim()&&U.push({key:"search",label:"Search",value:`"${a.searchQuery}"`,icon:"magnifying-glass"}),a.selectedStatus){const T=a.statusOptions.find(A=>A.value===a.selectedStatus);U.push({key:"status",label:"Status",value:T?.label||a.selectedStatus,icon:"filter"})}if(a.selectFilters.forEach(T=>{if(T.value){const A=T.options.find(Y=>Y.value===T.value);U.push({key:`select-${T.key}`,label:T.label,value:A?.label||T.value,icon:"filter"})}}),a.dateFrom||a.dateTo){let T="";a.dateFrom&&a.dateTo?T=`${a.dateFrom} to ${a.dateTo}`:a.dateFrom?T=`From ${a.dateFrom}`:a.dateTo&&(T=`Until ${a.dateTo}`),T&&U.push({key:"date",label:"Date Range",value:T,icon:"calendar"})}return a.dateFilters.forEach(T=>{if(T.from||T.to){let A="";T.from&&T.to?A=`${T.from} to ${T.to}`:T.from?A=`From ${T.from}`:T.to&&(A=`Until ${T.to}`),A&&U.push({key:`date-${T.key}`,label:T.label,value:A,icon:"calendar"})}}),a.numberFilters.forEach(T=>{if(T.min||T.max){let A="";T.min&&T.max?A=`${T.min} to ${T.max}`:T.min?A=`Min ${T.min}`:T.max&&(A=`Max ${T.max}`),A&&U.push({key:`number-${T.key}`,label:T.label,value:A,icon:"hashtag"})}}),a.multiSelectFilters.forEach(T=>{if(T.selected&&T.selected.length>0){const A=T.selected.map(Y=>{const ee=T.options.find(Ue=>Ue.value===Y);return ee?ee.label:Y});U.push({key:`multi-${T.key}`,label:T.label,value:A.join(", "),icon:"list"})}}),U}),X=e.computed(()=>N(w({variant:a.variant,padding:a.padding}))),R=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"),ae=e.computed(()=>N(b({size:"md"}),"w-full pl-10 pr-10 hover:border-gray-300")),ne=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"),re=e.computed(()=>N(b({size:"md"}),"w-full pr-8 appearance-none hover:border-gray-300")),fe=e.computed(()=>{const U=l.value||m.value;return N(v({variant:U?"primary":"default",size:"lg"}),"gap-2")}),me=e.computed(()=>"bg-white text-blue-600 text-xs px-1.5 py-0.5 rounded-full min-w-[20px] text-center font-semibold"),Re=e.computed(()=>"px-6 py-4 border-t border-gray-100 bg-gray-50"),ce=e.computed(()=>N(b({size:"md"}),"pl-10 pr-3")),De=e.computed(()=>"text-sm font-semibold text-gray-700"),we=e.computed(()=>"text-gray-500 text-sm font-medium"),be=e.computed(()=>"text-gray-400 hover:text-gray-600 p-1.5 hover:bg-gray-200 rounded-full transition-all"),Et=e.computed(()=>N(v({variant:"ghost",size:"md"}))),nt=e.computed(()=>N(v({variant:"default",size:"lg"}))),L=e.computed(()=>"px-6 py-3 bg-blue-50 border-t border-blue-100"),q=e.computed(()=>"text-sm font-semibold text-blue-800"),G=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"),de=e.computed(()=>"text-blue-600 hover:text-blue-800 ml-1 hover:bg-blue-100 rounded-full p-0.5 transition-all"),Z=()=>{o("update:searchQuery",""),o("update:selectedStatus",""),o("update:dateFrom",""),o("update:dateTo","");const U=a.selectFilters.map(ee=>({...ee,value:""}));o("update:selectFilters",U);const T=a.dateFilters.map(ee=>({...ee,from:"",to:""}));o("update:dateFilters",T);const A=a.numberFilters.map(ee=>({...ee,min:"",max:""}));o("update:numberFilters",A);const Y=a.multiSelectFilters.map(ee=>({...ee,selected:[]}));o("update:multiSelectFilters",Y),o("clear-filters")},Me=U=>{switch(U){case"search":o("update:searchQuery","");break;case"status":o("update:selectedStatus","");break;case"date":o("update:dateFrom",""),o("update:dateTo","");break;default:if(U.startsWith("select-")){const T=U.replace("select-",""),A=a.selectFilters.map(Y=>Y.key===T?{...Y,value:""}:Y);o("update:selectFilters",A)}else if(U.startsWith("date-")){const T=U.replace("date-",""),A=a.dateFilters.map(Y=>Y.key===T?{...Y,from:"",to:""}:Y);o("update:dateFilters",A)}else if(U.startsWith("number-")){const T=U.replace("number-",""),A=a.numberFilters.map(Y=>Y.key===T?{...Y,min:"",max:""}:Y);o("update:numberFilters",A)}else if(U.startsWith("multi-")){const T=U.replace("multi-",""),A=a.multiSelectFilters.map(Y=>Y.key===T?{...Y,selected:[]}:Y);o("update:multiSelectFilters",A)}break}};return(U,T)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Lf,[e.createElementVNode("div",{class:e.normalizeClass(X.value)},[t.showSearch?(e.openBlock(),e.createElementBlock("div",Pf,[e.createElementVNode("div",jf,[e.createVNode(H,{icon:"magnifying-glass",class:e.normalizeClass(R.value)},null,8,["class"]),e.createElementVNode("input",{"model-value":t.searchQuery,placeholder:t.searchPlaceholder,class:e.normalizeClass(ae.value),onInput:T[0]||(T[0]=A=>U.$emit("update:searchQuery",A.target.value))},null,42,Of),t.searchQuery?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(ne.value),onClick:T[1]||(T[1]=A=>U.$emit("update:searchQuery",""))},[e.createVNode(H,{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,A=>(e.openBlock(),e.createElementBlock("div",{key:A.key,class:"min-w-36"},[e.createElementVNode("div",If,[e.createVNode(he,{"model-value":A.value,class:e.normalizeClass(re.value),onChange:Y=>h(A.key,Y.target.value)},{default:e.withCtx(()=>[e.createElementVNode("option",_f,e.toDisplayString(A.placeholder||`All ${A.label}`),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.options,Y=>(e.openBlock(),e.createElementBlock("option",{key:Y.value,value:Y.value},e.toDisplayString(Y.label),9,Rf))),128))]),_:2},1032,["model-value","class","onChange"]),e.createVNode(H,{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",Uf,[e.createElementVNode("div",qf,[e.createVNode(he,{"model-value":t.selectedStatus,class:e.normalizeClass(re.value),onChange:T[2]||(T[2]=A=>U.$emit("update:selectedStatus",A.target.value))},{default:e.withCtx(()=>[T[5]||(T[5]=e.createElementVNode("option",{value:""}," All Status ",-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.statusOptions,A=>(e.openBlock(),e.createElementBlock("option",{key:A.value,value:A.value},e.toDisplayString(A.label),9,Hf))),128))]),_:1},8,["model-value","class"]),e.createVNode(H,{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||g.value)?(e.openBlock(),e.createElementBlock("button",{key:2,class:e.normalizeClass(fe.value),onClick:p},[e.createVNode(H,{icon:"filter",class:"w-4 h-4"}),T[6]||(T[6]=e.createTextVNode(" Filters ",-1)),O.value>0?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(me.value)},e.toDisplayString(O.value),3)):e.createCommentVNode("",!0),e.createVNode(H,{icon:l.value?"chevron-up":"chevron-down",class:"w-4 h-4 ml-1"},null,8,["icon"])],2)):e.createCommentVNode("",!0),U.$slots.filters?(e.openBlock(),e.createElementBlock("div",Wf,[e.renderSlot(U.$slots,"filters")])):e.createCommentVNode("",!0),e.createElementVNode("div",Yf,[t.showFileUpload?(e.openBlock(),e.createElementBlock("div",Gf,[e.createVNode(oe,{variant:"default",size:"lg",onClick:x},{default:e.withCtx(()=>[e.createVNode(H,{icon:"upload",class:"w-4 h-4 mr-2"}),T[7]||(T[7]=e.createTextVNode(" Upload Files ",-1))]),_:1})])):e.createCommentVNode("",!0),m.value?(e.openBlock(),e.createBlock(oe,{key:1,class:e.normalizeClass(Et.value),onClick:Z},{default:e.withCtx(()=>[e.createVNode(H,{icon:"rotate-left",class:"w-4 h-4 mr-2"}),T[8]||(T[8]=e.createTextVNode(" Clear All ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showExport?(e.openBlock(),e.createBlock(oe,{key:2,class:e.normalizeClass(nt.value),onClick:T[3]||(T[3]=A=>U.$emit("export"))},{default:e.withCtx(()=>[e.createVNode(H,{icon:"download",class:"w-4 h-4 mr-2"}),T[9]||(T[9]=e.createTextVNode(" Export ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showAdd&&i.value?(e.openBlock(),e.createElementBlock("div",Kf,[s.value?(e.openBlock(),e.createBlock(oe,{key:0,variant:t.addButton.variant||"success",size:t.addButton.size||"lg",disabled:f.value||!c.value,title:t.addButton.tooltip,onClick:B},{default:e.withCtx(()=>[t.addButton.icon?(e.openBlock(),e.createBlock(H,{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(U.$slots,"add",{key:1},()=>[e.createVNode(oe,{variant:"success",size:"lg",onClick:T[4]||(T[4]=A=>U.$emit("add"))},{default:e.withCtx(()=>[e.createVNode(H,{icon:"plus",class:"w-4 h-4 mr-2"}),T[10]||(T[10]=e.createTextVNode(" Add ",-1))]),_:1})])])):e.createCommentVNode("",!0)])],2),t.showFilters&&l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(Re.value)},[e.createElementVNode("div",Xf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.dateFilters,A=>(e.openBlock(),e.createElementBlock("div",{key:A.key,class:"space-y-3"},[e.createElementVNode("div",Qf,[e.createElementVNode("label",{class:e.normalizeClass(De.value)},e.toDisplayString(A.label),3),e.createElementVNode("span",{class:e.normalizeClass(V(A))},e.toDisplayString(k(A)?"Active":"Inactive"),3)]),e.createElementVNode("div",Jf,[e.createElementVNode("div",Zf,[e.createVNode(H,{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":A.from,class:e.normalizeClass(ce.value),placeholder:`From ${A.label}`,onInput:Y=>D(A.key,"from",Y.target.value)},null,42,ep)]),e.createElementVNode("span",{class:e.normalizeClass(we.value)},"to",2),e.createElementVNode("div",tp,[e.createVNode(H,{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":A.to,class:e.normalizeClass(ce.value),placeholder:`To ${A.label}`,onInput:Y=>D(A.key,"to",Y.target.value)},null,42,ap)]),k(A)?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(be.value),title:"Clear this filter",onClick:Y=>z(A.key)},[e.createVNode(H,{icon:"xmark",class:"w-4 h-4"})],10,np)):e.createCommentVNode("",!0)])]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.numberFilters,A=>(e.openBlock(),e.createElementBlock("div",{key:A.key,class:"space-y-3"},[e.createElementVNode("div",op,[e.createElementVNode("label",{class:e.normalizeClass(De.value)},e.toDisplayString(A.label),3),e.createElementVNode("span",{class:e.normalizeClass(_(A))},e.toDisplayString(j(A)?"Active":"Inactive"),3)]),e.createElementVNode("div",lp,[e.createElementVNode("div",rp,[e.createElementVNode("input",{type:"number","model-value":A.min,class:e.normalizeClass(ce.value),placeholder:`Min ${A.label}`,step:A.step||1,onInput:Y=>S(A.key,"min",Y.target.value)},null,42,sp)]),e.createElementVNode("span",{class:e.normalizeClass(we.value)},"to",2),e.createElementVNode("div",ip,[e.createElementVNode("input",{type:"number","model-value":A.max,class:e.normalizeClass(ce.value),placeholder:`Max ${A.label}`,step:A.step||1,onInput:Y=>S(A.key,"max",Y.target.value)},null,42,cp)]),j(A)?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(be.value),title:"Clear this filter",onClick:Y=>K(A.key)},[e.createVNode(H,{icon:"xmark",class:"w-4 h-4"})],10,dp)):e.createCommentVNode("",!0)])]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.multiSelectFilters,A=>(e.openBlock(),e.createElementBlock("div",{key:A.key,class:"space-y-3"},[e.createElementVNode("div",up,[e.createElementVNode("label",{class:e.normalizeClass(De.value)},e.toDisplayString(A.label),3),e.createElementVNode("span",{class:e.normalizeClass(y(A))},e.toDisplayString(d(A)?`${A.selected.length} selected`:"None"),3)]),e.createElementVNode("div",mp,[e.createVNode(he,{"model-value":"",class:e.normalizeClass(re.value),onChange:Y=>u(A.key,Y.target.value)},{default:e.withCtx(()=>[e.createElementVNode("option",fp," Select "+e.toDisplayString(A.label),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.options,Y=>(e.openBlock(),e.createElementBlock("option",{key:Y.value,value:Y.value},e.toDisplayString(Y.label),9,pp))),128))]),_:2},1032,["class","onChange"]),e.createVNode(H,{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"})]),A.selected.length>0?(e.openBlock(),e.createElementBlock("div",gp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.selected,Y=>(e.openBlock(),e.createElementBlock("span",{key:Y,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(M(A,Y))+" ",1),e.createElementVNode("button",{class:"hover:bg-blue-200 rounded-full p-0.5",onClick:ee=>F(A.key,Y)},[e.createVNode(H,{icon:"xmark",class:"w-3 h-3"})],8,vp)]))),128))])):e.createCommentVNode("",!0)]))),128))])],2)):e.createCommentVNode("",!0),t.showFilters&&W.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(L.value)},[e.createElementVNode("div",hp,[e.createElementVNode("span",{class:e.normalizeClass(q.value)},"Active filters:",2),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(W.value,A=>(e.openBlock(),e.createElementBlock("div",{key:A.key,class:e.normalizeClass(G.value)},[e.createVNode(H,{icon:A.icon,class:"w-3 h-3"},null,8,["icon"]),e.createElementVNode("span",null,e.toDisplayString(A.label)+": "+e.toDisplayString(A.value),1),e.createElementVNode("button",{class:e.normalizeClass(de.value),onClick:Y=>Me(A.key)},[e.createVNode(H,{icon:"xmark",class:"w-3 h-3"})],10,yp)],2))),128))])],2)):e.createCommentVNode("",!0),t.showTableInfo?(e.openBlock(),e.createElementBlock("div",bp,[e.createElementVNode("div",xp,[e.createElementVNode("div",kp,[e.createElementVNode("span",wp,[e.createElementVNode("span",Cp,e.toDisplayString(t.totalItems||0),1),e.createTextVNode(" "+e.toDisplayString(t.itemLabel||"items")+" found ",1)])])])])):e.createCommentVNode("",!0)]),t.showFileUpload&&r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 bg-black bg-opacity-50 z-50 flex items-center justify-center p-4",onClick:e.withModifiers(C,["self"])},[e.createElementVNode("div",Bp,[e.createElementVNode("div",Vp,[T[11]||(T[11]=e.createElementVNode("h3",{class:"text-lg font-semibold text-gray-900"}," Upload Files ",-1)),e.createElementVNode("button",{class:"text-gray-400 hover:text-gray-600 p-2 hover:bg-gray-100 rounded-full transition-all",onClick:C},[e.createVNode(H,{icon:"xmark",class:"w-5 h-5"})])]),e.createVNode(Qe,{multiple:t.fileUploadMultiple,accept:t.fileUploadAccept,"max-size":t.fileUploadMaxSize,variant:t.fileUploadVariant,onFilesSelected:$,onFileRemoved:E},null,8,["multiple","accept","max-size","variant"]),e.createElementVNode("div",Ep,[e.createVNode(oe,{variant:"default",onClick:C},{default:e.withCtx(()=>[...T[12]||(T[12]=[e.createTextVNode(" Close ",-1)])]),_:1})])])])):e.createCommentVNode("",!0)],64))}},Sp={class:"flex items-center gap-3"},Np={key:0,class:"flex items-center gap-3"},$p={class:"text-sm text-slate-600"},zp={class:"flex items-center gap-2"},Dp={class:"flex items-center gap-3"},Tp=["title","onClick"],Fp={key:1,class:"relative"},Ap={class:"p-3"},Mp={class:"space-y-1"},Lp={class:"flex items-center gap-2 cursor-pointer w-full"},Pp=["checked","onChange"],jp=["disabled"],Op={key:3,class:"flex items-center gap-2"},Ip=[{key:"delete",label:"Delete",icon:{render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.h("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"})])}},variant:"danger"},{key:"edit",label:"Edit",icon:{render(){return e.h("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.h("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"})])}},variant:"primary"}],_p={name:"DataTableToolBar"},Go=Object.assign(_p,{props:{selectedItems:{type:Array,default:()=>[]},totalItems:{type:Number,default:0},bulkActions:{type:Array,default:()=>Ip},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,l=e.ref(!1),r=e.ref(null),s=e.ref(null),i=e.computed(()=>a.selectedItems.length),c=[{value:"compact",label:"Compact",icon:["fas","minus"]},{value:"normal",label:"Normal",icon:["fas","bars"]},{value:"comfortable",label:"Comfortable",icon:["fas","bars-staggered"]}],f=P.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"}}),x=P.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"}}),C=P.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"}}),$=P.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"}}),E=e.computed(()=>N(f({variant:a.variant,padding:a.padding}))),B=e.computed(()=>"text-sm text-slate-600"),w=e.computed(()=>"flex items-center"),b=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"),v=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"),h=e.computed(()=>"text-xs font-medium text-slate-500 uppercase tracking-wider mb-2 border-b border-slate-100 pb-2"),k=e.computed(()=>"py-1 hover:bg-slate-50 rounded transition-colors"),z=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"),D=F=>{r.value&&s.value&&!r.value.contains(F.target)&&!s.value.contains(F.target)&&(l.value=!1)},j=()=>{l.value=!l.value},K=F=>N(x({variant:F.variant||"secondary"})),_=F=>{let M="middle";return F==="compact"?M="first":F==="comfortable"&&(M="last"),N(C({active:a.density===F,position:M}))},S=()=>N($({state:a.isRefreshing?"refreshing":"normal"})),d=()=>N("w-4 h-4",{"animate-spin":a.isRefreshing}),y=F=>a.visibleColumns.includes(F),u=(F,M)=>{o("toggle-column",{column:F,visible:M})};return e.onMounted(()=>{document.addEventListener("click",D)}),e.onUnmounted(()=>{document.removeEventListener("click",D)}),(F,M)=>{const p=e.resolveComponent("font-awesome-icon");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(E.value)},[e.createElementVNode("div",Sp,[i.value>0?(e.openBlock(),e.createElementBlock("div",Np,[e.createElementVNode("span",$p,e.toDisplayString(i.value)+" selected ",1),e.createElementVNode("div",zp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.bulkActions,g=>(e.openBlock(),e.createBlock(oe,{key:g.key,class:e.normalizeClass(K(g)),onClick:m=>F.$emit("bulk-action",{action:g.key,items:t.selectedItems})},{default:e.withCtx(()=>[g.icon?(e.openBlock(),e.createBlock(p,{key:0,icon:g.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(g.label),1)]),_:2},1032,["class","onClick"]))),128))])])):t.totalItems>0?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(B.value)},e.toDisplayString(t.totalItems)+" "+e.toDisplayString(t.totalItems===1?"item":"items"),3)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Dp,[t.showDensityToggle?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(w.value)},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(c,g=>e.createElementVNode("button",{key:g.value,class:e.normalizeClass(_(g.value)),title:g.label,type:"button",onClick:m=>F.$emit("update:density",g.value)},[e.createVNode(p,{icon:g.icon,class:"w-4 h-4"},null,8,["icon"])],10,Tp)),64))],2)):e.createCommentVNode("",!0),t.showColumnToggle?(e.openBlock(),e.createElementBlock("div",Fp,[e.createElementVNode("button",{ref_key:"columnToggleButton",ref:r,class:e.normalizeClass(b.value),type:"button",onClick:e.withModifiers(j,["stop"])},[e.createVNode(p,{icon:"columns",class:"w-4 h-4"}),M[2]||(M[2]=e.createElementVNode("span",null,"Columns",-1))],2),e.withDirectives(e.createElementVNode("div",{ref_key:"columnMenu",ref:s,class:e.normalizeClass(v.value),onClick:M[0]||(M[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Ap,[e.createElementVNode("div",{class:e.normalizeClass(h.value)}," Show Columns ",2),e.createElementVNode("div",Mp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.toggleableColumns,g=>(e.openBlock(),e.createElementBlock("div",{key:g.key,class:e.normalizeClass(k.value)},[e.createElementVNode("label",Lp,[e.createElementVNode("input",{type:"checkbox",checked:y(g.key),class:e.normalizeClass(z.value),onChange:m=>u(g.key,m.target.checked)},null,42,Pp),e.createElementVNode("span",{class:e.normalizeClass(V.value)},e.toDisplayString(g.label),3)])],2))),128))])])],2),[[e.vShow,l.value]])])):e.createCommentVNode("",!0),t.showRefresh?(e.openBlock(),e.createElementBlock("button",{key:2,disabled:t.isRefreshing,class:e.normalizeClass(S()),type:"button",onClick:M[1]||(M[1]=g=>F.$emit("refresh"))},[e.createVNode(p,{icon:"sync",class:e.normalizeClass(d())},null,8,["class"]),M[3]||(M[3]=e.createElementVNode("span",null,"Refresh",-1))],10,jp)):e.createCommentVNode("",!0),F.$slots.actions?(e.openBlock(),e.createElementBlock("div",Op,[e.renderSlot(F.$slots,"actions")])):e.createCommentVNode("",!0)])],2)}}}),Rp={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-12"},Up={class:"grid grid-cols-1 md:grid-cols-4 gap-8"},qp={class:"col-span-1 md:col-span-2"},Hp={class:"space-y-2"},Wp={class:"flex space-x-4"},Yp={class:"flex flex-col md:flex-row justify-between items-center"},Gp={class:"flex space-x-6 mt-4 md:mt-0"},Ko={__name:"Footer",props:{className:{type:String,default:""}},setup(t){return(n,a)=>{const o=e.resolveComponent("Logo"),l=e.resolveComponent("Text"),r=e.resolveComponent("Typography"),s=e.resolveComponent("Link"),i=e.resolveComponent("Icon"),c=e.resolveComponent("Divider");return e.openBlock(),e.createElementBlock("footer",{class:e.normalizeClass(e.unref(N)("bg-gray-50 border-t border-gray-200",t.className))},[e.createElementVNode("div",Rp,[e.createElementVNode("div",Up,[e.createElementVNode("div",qp,[e.renderSlot(n.$slots,"brand",{},()=>[e.createVNode(o,{class:"mb-4"}),e.createVNode(l,{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(r,{variant:"h6",class:"mb-4"},{default:e.withCtx(()=>[...a[1]||(a[1]=[e.createTextVNode(" Quick Links ",-1)])]),_:1}),e.createElementVNode("div",Hp,[e.createVNode(s,{href:"#",class:"block text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[2]||(a[2]=[e.createTextVNode(" About ",-1)])]),_:1}),e.createVNode(s,{href:"#",class:"block text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[3]||(a[3]=[e.createTextVNode(" Services ",-1)])]),_:1}),e.createVNode(s,{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(r,{variant:"h6",class:"mb-4"},{default:e.withCtx(()=>[...a[5]||(a[5]=[e.createTextVNode(" Follow Us ",-1)])]),_:1}),e.createElementVNode("div",Wp,[e.createVNode(s,{href:"#",class:"text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[e.createVNode(i,{name:"twitter",class:"h-5 w-5"})]),_:1}),e.createVNode(s,{href:"#",class:"text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[e.createVNode(i,{name:"github",class:"h-5 w-5"})]),_:1})])])])]),e.createVNode(c,{class:"my-8"}),e.createElementVNode("div",Yp,[e.renderSlot(n.$slots,"copyright",{},()=>[e.createVNode(l,{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",Gp,[e.createVNode(s,{href:"#",class:"text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[6]||(a[6]=[e.createTextVNode(" Privacy ",-1)])]),_:1}),e.createVNode(s,{href:"#",class:"text-gray-600 hover:text-gray-900"},{default:e.withCtx(()=>[...a[7]||(a[7]=[e.createTextVNode(" Terms ",-1)])]),_:1})])])])])],2)}}},Kp={class:"flex items-center justify-between h-16 px-4 md:px-6"},Xp={class:"flex items-center"},Qp={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 flex items-center gap-3 relative"},Jp={key:0,class:"flex-shrink-0"},Zp=["src"],eg={key:1,class:"flex-shrink-0"},tg=["src","alt"],ag={class:"min-w-0"},ng={class:"text-lg font-bold text-blue-900 truncate max-w-[200px]"},og={key:0,class:"text-xs text-blue-600 truncate font-medium"},lg={class:"w-4 h-4 text-blue-600 flex-shrink-0",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},rg=["d"],sg={key:3,class:"min-w-0"},ig={class:"text-lg font-bold text-blue-900 truncate max-w-[200px]"},cg={key:0,class:"text-xs text-blue-600 truncate font-medium"},dg={key:0,class:"absolute top-full left-0 mt-2 w-80 bg-white rounded-lg shadow-lg border border-gray-200 z-50 max-h-96 overflow-y-auto"},ug={class:"p-3 border-b border-gray-200"},mg={class:"text-sm font-semibold text-gray-900"},fg={class:"text-xs text-gray-500 mt-1"},pg={class:"py-2"},gg=["onClick"],vg={key:0,class:"flex-shrink-0 mr-3"},hg=["src","alt"],yg={class:"flex-1 text-left min-w-0"},bg={class:"font-medium truncate"},xg={key:1,class:"w-4 h-4 text-blue-500 flex-shrink-0 ml-2",fill:"currentColor",viewBox:"0 0 20 20"},kg={key:1,class:"mr-4 flex-shrink-0"},wg=["src"],Cg={key:2,class:"hidden md:flex items-center space-x-2 text-sm truncate"},Bg={class:"text-gray-500 truncate"},Vg={class:"text-gray-900 font-medium truncate"},Eg={class:"flex items-center space-x-3 md:space-x-4"},Sg={key:1,class:"relative"},Ng=["placeholder"],$g={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"},zg={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"},Dg={class:"p-4 border-b border-gray-200"},Tg={class:"text-lg font-semibold text-gray-900"},Fg={class:"max-h-96 overflow-y-auto"},Ag={key:0,class:"p-8 text-center"},Mg=["onClick"],Lg={class:"flex items-start space-x-3"},Pg={class:"flex-1"},jg={class:"text-sm text-gray-900"},Og={class:"text-xs text-gray-500 mt-1"},Ig={key:0,class:"p-4 text-center"},_g={class:"relative"},Rg={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"},Ug={class:"text-blue-700 text-sm font-medium"},qg={key:0,class:"hidden md:block text-left max-w-[160px] truncate"},Hg={class:"text-sm font-medium text-gray-900 truncate"},Wg={class:"text-xs text-gray-500 truncate leading-tight"},Yg={key:0,class:"absolute right-0 mt-2 w-58 bg-white rounded-lg shadow-lg border border-gray-200 z-50"},Gg={class:"p-4 border-b border-gray-200"},Kg={class:"text-sm font-medium text-gray-900"},Xg={class:"text-xs text-gray-500"},Qg={class:"py-2"},Jg={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"},Zg=["onClick"],e0={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"},t0={class:"flex-1 truncate font-semibold text-gray-700"},Xo={__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:""},organisationLogo:{type:String,default:""},organisations:{type:Array,default:()=>[]},activeRoles:{type:Array,default:()=>[]},showSearch:{type:Boolean,default:!0},showNotifications:{type:Boolean,default:!0},showBreadcrumb:{type:Boolean,default:!0},showOrganisationInfo:{type:Boolean,default:!0},showUserDetails:{type:Boolean,default:!0},showHeaderLogo:{type:Boolean,default:!0},headerLogo:{type:String,default:"dist/logo.png"},searchPlaceholder:{type:String,default:"Search..."},notificationsTitle:{type:String,default:"Notifications"},organisationSwitcherTitle:{type:String,default:"Switch Organisation"},organisationSwitcherDescription:{type:String,default:"Select an organisation to view its data"},userInitialsOverride:{type:String,default:""},userRoleDisplayOverride:{type:String,default:""}},emits:["search","profile-action","logout","navigate","toggle-mobile-sidebar","organisation-change","notification-click","view-all-notifications"],setup(t,{emit:n}){const a=t,o=n,l=e.ref(""),r=e.ref(!1),s=e.ref(!1),i=e.ref(a.notifications.length),c=e.ref(!1),f=e.ref(!1),x=e.ref(!1),C=e.computed(()=>a.userInitialsOverride?a.userInitialsOverride:(a.user?.name||"Guest").split(" ").map(d=>d[0]||"").join("").toUpperCase()),$=e.computed(()=>{if(a.userRoleDisplayOverride)return a.userRoleDisplayOverride;const S=[];return a.activeRoles?.length>0&&S.push(...a.activeRoles.map(d=>typeof d=="string"?d:d.name)),S.length===0&&a.user?.roles?.length>0&&S.push(...a.user.roles.map(d=>typeof d=="string"?d:d.name)),S.length===0&&a.currentOrganisation?.role&&S.push(a.currentOrganisation.role),S.length===0?"Member":S.map(d=>d.charAt(0).toUpperCase()+d.slice(1).replace(/-/g," ")).join(", ")}),E=e.computed(()=>!a.activeRoles||a.activeRoles.length===0?"":a.activeRoles.map(S=>typeof S=="string"?S:S.name).map(S=>S.charAt(0).toUpperCase()+S.slice(1).replace(/-/g," ")).join(", ")),B=()=>{r.value=!r.value,s.value=!1},w=()=>{s.value=!s.value,r.value=!1,x.value=!1},b=()=>{x.value=!x.value,s.value=!1,r.value=!1},v=S=>{o("navigate",S),s.value=!1},h=S=>S.route?!!(a.currentRoute===S.route||a.currentRoute.startsWith(S.route+"/")):!1,k=S=>{o("profile-action",S),s.value=!1},z=()=>{o("logout"),s.value=!1},V=S=>{o("organisation-change",S),x.value=!1},D=S=>{o("notification-click",S)},j=()=>{o("view-all-notifications"),r.value=!1},K=S=>{!S.target.closest(".absolute")&&!S.target.closest("button")&&(r.value=!1,s.value=!1,x.value=!1)},_=()=>{f.value=window.innerWidth<768};return e.onMounted(()=>{document.addEventListener("click",K),_(),window.addEventListener("resize",_)}),e.onUnmounted(()=>{document.removeEventListener("click",K),window.removeEventListener("resize",_)}),e.watch(l,S=>o("search",S)),e.watch(()=>a.notifications.length,S=>{i.value=S}),(S,d)=>{const y=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("header",{class:e.normalizeClass(e.unref(N)("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",Kp,[e.createElementVNode("div",Xp,[t.showOrganisationInfo&&t.currentOrganisation?(e.openBlock(),e.createElementBlock("div",Qp,[t.companyLogo?(e.openBlock(),e.createElementBlock("div",Jp,[e.createElementVNode("img",{src:t.companyLogo,alt:"Company logo",class:"w-12 h-12 object-contain rounded"},null,8,Zp)])):e.createCommentVNode("",!0),t.organisationLogo?(e.openBlock(),e.createElementBlock("div",eg,[e.createElementVNode("img",{src:t.organisationLogo,alt:`${t.currentOrganisation.organisation_name} logo`,class:"w-12 h-12 object-contain rounded border border-blue-200"},null,8,tg)])):e.createCommentVNode("",!0),t.organisations.length>1?(e.openBlock(),e.createElementBlock("button",{key:2,class:"flex items-center gap-2 min-w-0 cursor-pointer hover:bg-blue-100/50 rounded-md px-2 py-1 transition-colors",onClick:b},[e.createElementVNode("div",ag,[e.createElementVNode("p",ng,e.toDisplayString(t.currentOrganisation.organisation_name),1),E.value?(e.openBlock(),e.createElementBlock("p",og,e.toDisplayString(E.value),1)):e.createCommentVNode("",!0)]),(e.openBlock(),e.createElementBlock("svg",lg,[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:x.value?"m5 15 7-7 7 7":"m19 9-7 7-7-7"},null,8,rg)]))])):(e.openBlock(),e.createElementBlock("div",sg,[e.createElementVNode("p",ig,e.toDisplayString(t.currentOrganisation.organisation_name),1),E.value?(e.openBlock(),e.createElementBlock("p",cg,e.toDisplayString(E.value),1)):e.createCommentVNode("",!0)])),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(()=>[x.value?(e.openBlock(),e.createElementBlock("div",dg,[e.createElementVNode("div",ug,[e.createElementVNode("h3",mg,e.toDisplayString(t.organisationSwitcherTitle),1),e.createElementVNode("p",fg,e.toDisplayString(t.organisationSwitcherDescription),1)]),e.createElementVNode("div",pg,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.organisations,u=>(e.openBlock(),e.createElementBlock("button",{key:u.org_id||u.organisation_name,class:e.normalizeClass(e.unref(N)("flex items-center w-full px-3 py-2.5 text-sm transition-colors",u.org_id===t.currentOrganisation?.org_id?"bg-blue-50 text-blue-700 border-l-4 border-blue-500":"text-gray-700 hover:bg-gray-50")),onClick:F=>V(u)},[u.logo?(e.openBlock(),e.createElementBlock("div",vg,[e.createElementVNode("img",{src:u.logo,alt:`${u.organisation_name} logo`,class:"w-6 h-6 object-contain rounded"},null,8,hg)])):e.createCommentVNode("",!0),e.createElementVNode("div",yg,[e.createElementVNode("p",bg,e.toDisplayString(u.organisation_name),1)]),u.org_id===t.currentOrganisation?.org_id?(e.openBlock(),e.createElementBlock("svg",xg,[...d[4]||(d[4]=[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 01 1.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z","clip-rule":"evenodd"},null,-1)])])):e.createCommentVNode("",!0)],10,gg))),128))])])):e.createCommentVNode("",!0)]),_:1})])):e.createCommentVNode("",!0),t.showHeaderLogo?(e.openBlock(),e.createElementBlock("div",kg,[e.createElementVNode("img",{src:t.headerLogo,alt:"Company Logo",class:"w-8 h-8 object-contain"},null,8,wg)])):e.createCommentVNode("",!0),t.showBreadcrumb?(e.openBlock(),e.createElementBlock("nav",Cg,[e.createElementVNode("span",Bg,e.toDisplayString(t.currentSection),1),d[5]||(d[5]=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",Vg,e.toDisplayString(t.currentPage),1)])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Eg,[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:d[0]||(d[0]=u=>o("toggle-mobile-sidebar"))},[...d[6]||(d[6]=[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),t.showSearch&&(!f.value||c.value)?(e.openBlock(),e.createElementBlock("div",Sg,[d[7]||(d[7]=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":d[1]||(d[1]=u=>l.value=u),type:"text",placeholder:t.searchPlaceholder,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,8,Ng),[[e.vModelText,l.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:d[2]||(d[2]=u=>c.value=!1)}," ✕ ")):e.createCommentVNode("",!0)])):t.showSearch&&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:d[3]||(d[3]=u=>c.value=!0)},[...d[8]||(d[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:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"})],-1)])])):e.createCommentVNode("",!0),t.showNotifications?(e.openBlock(),e.createElementBlock("button",{key:3,class:"relative p-2 text-gray-400 hover:text-gray-600 rounded-lg hover:bg-gray-50 transition-colors",onClick:B},[d[9]||(d[9]=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-1.405-1.405A2.032 2.032 0 0118 14.158V11a6.002 6.002 0 00-4-5.659V5a2 2 0 10-4 0v.341C7.67 6.165 6 8.388 6 11v3.159c0 .538-.214 1.055-.595 1.436L4 17h5m6 0v1a3 3 0 11-6 0v-1m6 0H9"})],-1)),i.value>0?(e.openBlock(),e.createElementBlock("span",$g,e.toDisplayString(i.value>9?"9+":i.value),1)):e.createCommentVNode("",!0)])):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(()=>[r.value?(e.openBlock(),e.createElementBlock("div",zg,[e.createElementVNode("div",Dg,[e.createElementVNode("h3",Tg,e.toDisplayString(t.notificationsTitle),1)]),e.createElementVNode("div",Fg,[t.notifications.length===0?(e.openBlock(),e.createElementBlock("div",Ag,[...d[10]||(d[10]=[e.createElementVNode("svg",{class:"w-12 h-12 mx-auto text-gray-300 mb-2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 17h5l-1.405-1.405A2.032 2.032 0 0118 14.158V11a6.002 6.002 0 00-4-5.659V5a2 2 0 10-4 0v.341C7.67 6.165 6 8.388 6 11v3.159c0 .538-.214 1.055-.595 1.436L4 17h5m6 0v1a3 3 0 11-6 0v-1m6 0H9"})],-1),e.createElementVNode("p",{class:"text-sm text-gray-500"}," No notifications ",-1)])])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(t.notifications,u=>(e.openBlock(),e.createElementBlock("div",{key:u.id,class:"p-4 border-b border-gray-100 hover:bg-gray-50 cursor-pointer",onClick:F=>D(u)},[e.createElementVNode("div",Lg,[d[11]||(d[11]=e.createElementVNode("div",{class:"flex-shrink-0 w-2 h-2 mt-2 bg-blue-500 rounded-full"},null,-1)),e.createElementVNode("div",Pg,[e.createElementVNode("p",jg,e.toDisplayString(u.title),1),e.createElementVNode("p",Og,e.toDisplayString(u.time),1)])])],8,Mg))),128))]),t.notifications.length>0?(e.openBlock(),e.createElementBlock("div",Ig,[e.createElementVNode("button",{class:"text-sm text-blue-600 hover:text-blue-800",onClick:j}," View all notifications ")])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),_:1}),e.createElementVNode("div",_g,[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:w},[e.createElementVNode("div",Rg,[e.createElementVNode("span",Ug,e.toDisplayString(C.value),1)]),t.showUserDetails?(e.openBlock(),e.createElementBlock("div",qg,[e.createElementVNode("p",Hg,e.toDisplayString(t.user.name),1),e.createElementVNode("p",Wg,e.toDisplayString($.value),1)])):e.createCommentVNode("",!0),d[12]||(d[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(()=>[s.value?(e.openBlock(),e.createElementBlock("div",Yg,[e.createElementVNode("div",Gg,[e.createElementVNode("p",Kg,e.toDisplayString(t.user.name),1),e.createElementVNode("p",Xg,e.toDisplayString(t.user.email),1)]),e.createElementVNode("div",Qg,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.profileMenuItems,u=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:u.name},[u.route?(e.openBlock(),e.createBlock(y,{key:0,to:u.route,class:e.normalizeClass(e.unref(N)("flex items-center px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",h(u)?"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:F=>v(u)},{default:e.withCtx(()=>[h(u)?(e.openBlock(),e.createElementBlock("div",Jg)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)("flex items-center justify-center w-8 h-8 rounded-lg mr-3 flex-shrink-0 transition-colors ml-2",h(u)?"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"))},[u.icon?(e.openBlock(),e.createBlock(H,{key:0,icon:u.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(N)("flex-1 truncate font-semibold",h(u)?"text-blue-700":"text-gray-700"))},e.toDisplayString(u.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:F=>k(u)},[e.createElementVNode("div",e0,[u.icon?(e.openBlock(),e.createBlock(H,{key:0,icon:u.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0)]),e.createElementVNode("span",t0,e.toDisplayString(u.label),1)],8,Zg))],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:z},[...d[13]||(d[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 3 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)}}},a0={class:"relative"},n0=["id","disabled"],o0={key:0,class:"text-gray-500"},l0={key:1,class:"flex flex-wrap gap-1.5"},r0={class:"px-3 py-2.5 border-b border-gray-200 bg-gray-50"},s0={key:0,class:"max-h-52 overflow-y-auto py-1"},i0=["onClick"],c0={class:"flex items-center gap-3"},d0=["checked"],u0={key:1,class:"px-4 py-6 text-sm text-gray-500 text-center"},Qo={__name:"MultiSelect",props:{modelValue:{type:Array,default:()=>[]},options:{type:Array,required:!0,validator:t=>t.every(n=>n.value!==void 0&&n.label)},id:{type:String,default:null},disabled:{type:Boolean,default:!1},placeholder:{type:String,default:"Select options"},hasError:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:n}){const a=t,o=n,l=e.ref(!1),r=e.ref(""),s=e.ref(null),i=e.ref([...a.options]),c=e.ref(null),f=e.ref({}),x=e.computed(()=>a.options.filter(v=>a.modelValue.includes(v.value)).map(v=>v.label)),C=()=>{if(!c.value)return;const v=c.value.getBoundingClientRect(),h=window.innerHeight,k=h-v.bottom,z=320;k<z&&v.top>z?f.value={position:"fixed",bottom:`${h-v.top+4}px`,left:`${v.left}px`,width:`${v.width}px`,zIndex:9999}:f.value={position:"fixed",top:`${v.bottom+4}px`,left:`${v.left}px`,width:`${v.width}px`,zIndex:9999}},$=()=>{a.disabled||(l.value=!l.value,l.value?(C(),e.nextTick(()=>{s.value?.focus()})):(r.value="",i.value=[...a.options]))},E=v=>{let h;a.modelValue.includes(v)?h=a.modelValue.filter(k=>k!==v):h=[...a.modelValue,v],o("update:modelValue",h)},B=()=>{if(!r.value.trim())i.value=[...a.options];else{const v=r.value.toLowerCase();i.value=a.options.filter(h=>h.label.toLowerCase().includes(v))}},w=v=>{v.key==="Escape"&&(l.value=!1,r.value="",i.value=[...a.options])},b=v=>{if(!c.value)return;const h=v.target;h&&!c.value.contains(h)&&!h.closest("[data-multiselect-dropdown]")&&(l.value=!1,r.value="",i.value=[...a.options])};return e.onMounted(()=>{document.addEventListener("click",b),window.addEventListener("scroll",C,!0),window.addEventListener("resize",C)}),e.onUnmounted(()=>{document.removeEventListener("click",b),window.removeEventListener("scroll",C,!0),window.removeEventListener("resize",C)}),e.watch(()=>a.options,v=>{i.value=[...v]},{immediate:!0}),e.watch(l,v=>{v&&C()}),(v,h)=>(e.openBlock(),e.createElementBlock("div",a0,[e.createElementVNode("button",{id:t.id,ref_key:"buttonRef",ref:c,type:"button",disabled:t.disabled,class:e.normalizeClass(["w-full px-3 py-2.5 text-left border rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 bg-white min-h-[42px]",t.hasError?"border-red-500":"border-slate-300",t.disabled?"bg-gray-100 cursor-not-allowed opacity-50":"hover:border-slate-400"]),onClick:$,onKeydown:w},[x.value.length===0?(e.openBlock(),e.createElementBlock("div",o0,e.toDisplayString(t.placeholder||"Select options"),1)):(e.openBlock(),e.createElementBlock("div",l0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.value,k=>(e.openBlock(),e.createBlock(ma,{key:k,variant:"primary",size:"sm"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(k),1)]),_:2},1024))),128))])),(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass(["absolute right-3 top-1/2 -translate-y-1/2 h-5 w-5 text-gray-400 pointer-events-none transition-transform duration-200",{"rotate-180":l.value}]),fill:"currentColor",viewBox:"0 0 20 20"},[...h[2]||(h[2]=[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z","clip-rule":"evenodd"},null,-1)])],2))],42,n0),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[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(()=>[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,style:e.normalizeStyle(f.value),"data-multiselect-dropdown":"",class:"bg-white shadow-lg max-h-72 rounded-md text-base ring-1 ring-black ring-opacity-5 overflow-hidden focus:outline-none"},[e.createElementVNode("div",r0,[e.withDirectives(e.createElementVNode("input",{ref_key:"searchInput",ref:s,"onUpdate:modelValue":h[0]||(h[0]=k=>r.value=k),type:"text",placeholder:"Search options...",class:"w-full px-3 py-2 text-sm border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent bg-white",onInput:B,onKeydown:h[1]||(h[1]=e.withModifiers(()=>{},["stop"]))},null,544),[[e.vModelText,r.value]])]),i.value.length>0?(e.openBlock(),e.createElementBlock("div",s0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,k=>(e.openBlock(),e.createElementBlock("button",{key:k.value,type:"button",class:e.normalizeClass(["cursor-pointer select-none relative py-2.5 pl-3 pr-9 w-full text-left hover:bg-blue-50 focus:bg-blue-50 focus:outline-none transition-colors duration-150",{"bg-blue-50":t.modelValue.includes(k.value)}]),onClick:z=>E(k.value)},[e.createElementVNode("div",c0,[e.createElementVNode("input",{type:"checkbox",checked:t.modelValue.includes(k.value),class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300 rounded cursor-pointer pointer-events-none",readonly:"",tabindex:"-1"},null,8,d0),e.createElementVNode("span",{class:e.normalizeClass(["block font-normal truncate",{"text-blue-900 font-medium":t.modelValue.includes(k.value)}])},e.toDisplayString(k.label),3)])],10,i0))),128))])):(e.openBlock(),e.createElementBlock("div",u0," No options found "))],4)):e.createCommentVNode("",!0)]),_:1})]))]))}},m0={class:"mb-6"},f0={class:"text-xl font-semibold text-gray-900"},p0={class:"text-sm text-gray-600 mt-1"},g0=["value"],v0={key:5,class:"flex items-center"},h0={key:6,class:"flex items-center"},y0=["id","aria-checked","disabled","onClick"],b0={key:7,class:"space-y-2"},x0={key:8,class:"w-full"},k0={key:0,class:"mt-2 text-xs text-gray-500"},w0={key:9,class:"w-full"},C0={key:0,class:"mt-2 text-xs text-gray-500"},B0={key:11,class:"space-y-2"},V0={class:"flex items-center gap-4"},E0={class:"text-sm font-medium text-gray-700 min-w-[3rem] text-right"},S0={class:"flex justify-end gap-3 pt-6"},Jo={__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","multifile","radio","switch","range","search","hidden","multiselect","combobox"].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","8xl","full"].includes(t)},modalHeight:{type:String,default:"auto"},modalResizable:{type:Boolean,default:!1}},emits:["update:modelValue","submit","close"],setup(t,{emit:n}){const a=t,o=n,l=e.computed({get:()=>a.modelValue,set:d=>o("update:modelValue",d)}),r=e.computed(()=>a.loading),s=e.ref({}),i=e.ref({}),c=e.ref(!1),f=e.ref({}),x=e.ref({}),C=(d,y)=>{if(!(!d||!y))return y.split(".").reduce((u,F)=>u?.[F],d)},$=(d,y,u)=>{const F=y.split("."),M=F.pop(),p=F.reduce((g,m)=>(g[m]||(g[m]={}),g[m]),d);p[M]=u},E=()=>{const d={};return a.fields.forEach(y=>{if(y.name.includes(".")){const[u]=y.name.split(".");d[u]||(d[u]={}),$(d,y.name,B(y))}else y.type==="checkbox"||y.type==="switch"?d[y.name]=!1:y.type==="number"||y.type==="slider"||y.type==="range"?d[y.name]=y.min!==void 0?y.min:0:y.type==="file"?d[y.name]=null:y.type==="multifile"?d[y.name]=[]:y.type==="radio"?d[y.name]=y.options?.[0]?.value||"":y.type==="multiselect"?d[y.name]=[]:(y.type,d[y.name]="")}),d},B=d=>d.type==="checkbox"||d.type==="switch"?!1:d.type==="number"||d.type==="slider"||d.type==="range"?d.min!==void 0?d.min:0:d.type==="file"?null:d.type==="multifile"?[]:d.type==="radio"?d.options?.[0]?.value||"":d.type==="multiselect"?[]:(d.type==="combobox",""),w=d=>{const y={};return a.fields.forEach(u=>{if(u.name.includes(".")){const F=C(d,u.name);y[u.name.split(".")[0]]||(y[u.name.split(".")[0]]={}),$(y,u.name,F!==void 0?F:B(u))}else{const F=d?.[u.name];u.type==="checkbox"||u.type==="switch"?y[u.name]=F??!1:u.type==="number"||u.type==="slider"||u.type==="range"?y[u.name]=F??(u.min!==void 0?u.min:0):u.type==="file"?y[u.name]=null:u.type==="multifile"?y[u.name]=Array.isArray(F)?F:[]:u.type==="multiselect"?y[u.name]=Array.isArray(F)?F:[]:y[u.name]=F??B(u)}}),y};e.watch(()=>a.initialData,d=>{a.modalType==="edit"&&d||a.modalType==="create"&&d&&!c.value?(s.value=w(d),c.value=!0):a.modalType==="create"&&!d&&(s.value=E(),c.value=!1)},{immediate:!0,deep:!0}),e.watch(()=>a.modelValue,d=>{d&&(i.value={},a.modalType==="create"&&(c.value=!1,a.initialData?s.value=w(a.initialData):s.value=E(),c.value=!0))}),e.watch(()=>a.initialData,d=>{c.value&&d&&(s.value=w(d))},{deep:!0});const b=()=>{if(i.value={},a.fields.forEach(d=>{if(d.required&&!d.disabled&&d.type!=="hidden"){const y=d.name.includes(".")?C(s.value,d.name):s.value[d.name];d.type==="checkbox"||d.type==="switch"?d.required&&!y&&(i.value[d.name]=d.errorMessage||`${d.label} is required`):d.type==="number"||d.type==="slider"||d.type==="range"?y===""||y===null||y===void 0?i.value[d.name]=d.errorMessage||`${d.label} is required`:d.min!==void 0&&Number(y)<d.min?i.value[d.name]=`${d.label} must be at least ${d.min}`:d.max!==void 0&&Number(y)>d.max&&(i.value[d.name]=`${d.label} must be at most ${d.max}`):d.type==="email"?!y||!y.trim()?i.value[d.name]=d.errorMessage||`${d.label} is required`:/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(y)||(i.value[d.name]="Please enter a valid email address"):d.type==="url"?!y||!y.trim()?i.value[d.name]=d.errorMessage||`${d.label} is required`:/^https?:\/\/.+/.test(y)||(i.value[d.name]="Please enter a valid URL"):d.type==="tel"?(!y||!y.trim())&&(i.value[d.name]=d.errorMessage||`${d.label} is required`):d.type==="file"?y||(i.value[d.name]=d.errorMessage||`${d.label} is required`):d.type==="multifile"?!Array.isArray(y)||y.length===0?i.value[d.name]=d.errorMessage||`${d.label} is required`:d.minFiles&&y.length<d.minFiles?i.value[d.name]=`Please upload at least ${d.minFiles} file(s)`:d.maxFiles&&y.length>d.maxFiles&&(i.value[d.name]=`Maximum ${d.maxFiles} file(s) allowed`):d.type==="radio"?y||(i.value[d.name]=d.errorMessage||`${d.label} is required`):d.type==="multiselect"?(!Array.isArray(y)||y.length===0)&&(i.value[d.name]=d.errorMessage||`${d.label} is required`):d.type==="combobox"?(!y||typeof y=="string"&&!y.trim())&&(i.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"?(!y||typeof y=="string"&&!y.trim())&&(i.value[d.name]=d.errorMessage||`${d.label} is required`):d.type==="password"?(!y||typeof y=="string"&&!y.trim())&&(i.value[d.name]=d.errorMessage||`${d.label} is required`):(!y||typeof y=="string"&&!y.trim())&&(i.value[d.name]=d.errorMessage||`${d.label} is required`)}if(d.validate&&typeof d.validate=="function"){const y=d.name.includes(".")?C(s.value,d.name):s.value[d.name],u=d.validate(y,s.value);u&&(i.value[d.name]=u)}}),a.customValidation){const d=a.customValidation(s.value);d&&Object.keys(d).length>0&&(i.value={...i.value,...d})}return Object.keys(i.value).length===0},v=async(d,y)=>{if(d.name.includes(".")?$(s.value,d.name,y):s.value[d.name]=y,d.onChange&&typeof d.onChange=="function")try{await d.onChange(y,s.value)}catch(u){console.error("Error in onChange handler:",u),se.error("An error occurred while processing the change")}},h=(d,y)=>{if(d.name.includes(".")?$(s.value,d.name,y):s.value[d.name]=y,d.onChange&&typeof d.onChange=="function")try{d.onChange(y,s.value)}catch(u){console.error("Error in onChange handler:",u),se.error("An error occurred while processing the change")}},k=async()=>{try{if(a.fields.some(u=>u.type!=="multifile"&&f.value[u.name]?.length>0)){se.error("Please wait for all files to finish uploading");return}if(!b()){se.error("Please fix the validation errors before submitting");return}const y={};a.fields.forEach(u=>{const F=u.name.includes(".")?C(s.value,u.name):s.value[u.name];if(u.type==="number"||u.type==="slider"||u.type==="range")u.name.includes(".")?$(y,u.name,Number(F)):y[u.name]=Number(F);else if(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"){const M=typeof F=="string"?F.trim():F;u.name.includes(".")?$(y,u.name,M):y[u.name]=M}else u.type==="password"||u.type==="file"||u.type,u.name.includes(".")?$(y,u.name,F):y[u.name]=F}),o("submit",{formData:y,modalType:a.modalType,originalData:a.initialData})}catch(d){console.error("Error during form submission:",d),se.error("An error occurred during submission")}},z=()=>{s.value=E(),i.value={},c.value=!1,f.value={},x.value={},o("close")},V=d=>d.includes(".")?C(s.value,d):s.value[d],D=(d,y)=>{d.includes(".")?$(s.value,d,y):s.value[d]=y},j=(d,y)=>{if(D(d.name,y),d.onChange&&typeof d.onChange=="function")try{d.onChange(y,s.value)}catch(u){console.error("Error in onChange handler:",u)}},K=(d,y)=>{if(D(d.name,y),d.onChange&&typeof d.onChange=="function")try{d.onChange(y,s.value)}catch(u){console.error("Error in onChange handler:",u)}},_=(d,y)=>{if(D(d.name,y),d.onChange&&typeof d.onChange=="function")try{d.onChange(y,s.value)}catch(u){console.error("Error in onChange handler:",u)}},S=(d,y)=>{if(D(d.name,y),d.onChange&&typeof d.onChange=="function")try{d.onChange(y,s.value)}catch(u){console.error("Error in onChange handler:",u)}};return(d,y)=>(e.openBlock(),e.createBlock(Ct,{modelValue:l.value,"onUpdate:modelValue":y[0]||(y[0]=u=>l.value=u),"show-close":!0,"close-on-backdrop":!0,size:t.modalSize,class:e.normalizeClass(t.modalHeight==="auto"?"":t.modalHeight),resizable:t.modalResizable,onClose:z},{default:e.withCtx(()=>[e.createElementVNode("div",m0,[e.createElementVNode("h2",f0,e.toDisplayString(t.modalType==="create"?`Add New ${t.entityName}`:`Edit ${t.entityName}`),1),e.createElementVNode("p",p0,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-6 overflow-y-auto",onSubmit:e.withModifiers(k,["prevent"])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.fields,u=>(e.openBlock(),e.createElementBlock("div",{key:u.name},[u.type==="hidden"?(e.openBlock(),e.createElementBlock("input",{key:0,value:V(u.name),type:"hidden"},null,8,g0)):(e.openBlock(),e.createBlock(wt,{key:1,id:`form-${t.entityName}-${u.name}-${Math.random().toString(36).slice(2,5)}`,label:u.label,required:u.required&&!u.disabled,error:i.value[u.name],"error-message":i.value[u.name]},{default:e.withCtx(({fieldId:F,hasError:M,ariaDescribedBy:p})=>[["text","number","password","color","email","tel","url","search"].includes(u.type)?(e.openBlock(),e.createBlock(le,{key:0,id:F,"model-value":V(u.name),type:u.type,placeholder:u.placeholder,disabled:r.value||u.disabled,readonly:u.disabled,class:e.normalizeClass(M?"border-red-500":"border-slate-300"),"aria-describedby":p,"onUpdate:modelValue":g=>D(u.name,g)},null,8,["id","model-value","type","placeholder","disabled","readonly","class","aria-describedby","onUpdate:modelValue"])):u.type==="textarea"?(e.openBlock(),e.createBlock(kt,{key:1,id:F,"model-value":V(u.name),placeholder:u.placeholder,disabled:r.value||u.disabled,rows:u.rows||3,class:e.normalizeClass(["w-full px-3 py-2 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",M?"border-red-500":"border-slate-300"]),"aria-describedby":p,"onUpdate:modelValue":g=>D(u.name,g)},null,8,["id","model-value","placeholder","disabled","rows","class","aria-describedby","onUpdate:modelValue"])):u.type==="select"?(e.openBlock(),e.createBlock(he,{key:2,id:F,"model-value":V(u.name),options:u.options,placeholder:u.placeholder||"Select an option",disabled:r.value||u.disabled,"has-error":M,"aria-describedby":p,"onUpdate:modelValue":g=>v(u,g)},null,8,["id","model-value","options","placeholder","disabled","has-error","aria-describedby","onUpdate:modelValue"])):u.type==="multiselect"?(e.openBlock(),e.createBlock(Qo,{key:3,id:F,"model-value":V(u.name),options:u.options,disabled:r.value||u.disabled,placeholder:u.placeholder||"Select options","has-error":M,"aria-describedby":p,"onUpdate:modelValue":g=>D(u.name,g)},null,8,["id","model-value","options","disabled","placeholder","has-error","aria-describedby","onUpdate:modelValue"])):u.type==="combobox"?(e.openBlock(),e.createBlock(he,{key:4,id:F,"model-value":V(u.name),options:u.options,placeholder:u.placeholder||"Select or type to add new",disabled:r.value||u.disabled,"has-error":M,"aria-describedby":p,"allow-create":u.allowCreate,"onUpdate:modelValue":g=>v(u,g)},null,8,["id","model-value","options","placeholder","disabled","has-error","aria-describedby","allow-create","onUpdate:modelValue"])):u.type==="checkbox"?(e.openBlock(),e.createElementBlock("div",v0,[e.createVNode(le,{id:F,"model-value":V(u.name),type:"checkbox",disabled:r.value||u.disabled,class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300 rounded","aria-describedby":p,"onUpdate:modelValue":g=>D(u.name,g)},null,8,["id","model-value","disabled","aria-describedby","onUpdate:modelValue"]),e.createVNode(Be,{for:F,class:"ml-2 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(u.checkboxLabel||u.label),1)]),_:2},1032,["for"])])):u.type==="switch"?(e.openBlock(),e.createElementBlock("div",h0,[e.createElementVNode("button",{id:F,type:"button",role:"switch","aria-checked":V(u.name),disabled:r.value||u.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",V(u.name)?"bg-blue-600":"bg-gray-200",r.value||u.disabled?"opacity-50 cursor-not-allowed":"cursor-pointer"]),onClick:g=>D(u.name,!V(u.name))},[e.createElementVNode("span",{class:e.normalizeClass(["inline-block h-4 w-4 transform rounded-full bg-white transition-transform",V(u.name)?"translate-x-6":"translate-x-1"])},null,2)],10,y0),e.createVNode(Be,{for:F,class:"ml-3 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(u.checkboxLabel||u.label),1)]),_:2},1032,["for"])])):u.type==="radio"?(e.openBlock(),e.createElementBlock("div",b0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.options,g=>(e.openBlock(),e.createElementBlock("div",{key:g.value,class:"flex items-center"},[e.createVNode(le,{id:`${F}-${g.value}`,"model-value":V(u.name),type:"radio",value:g.value,disabled:r.value||u.disabled,class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300","aria-describedby":p,"onUpdate:modelValue":m=>D(u.name,m)},null,8,["id","model-value","value","disabled","aria-describedby","onUpdate:modelValue"]),e.createVNode(Be,{for:`${F}-${g.value}`,class:"ml-2 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(g.label),1)]),_:2},1032,["for"])]))),128))])):u.type==="file"?(e.openBlock(),e.createElementBlock("div",x0,[e.createVNode(Qe,{multiple:!1,accept:u.accept,"max-size":u.maxSize,variant:u.variant||"default",onFilesSelected:g=>j(u,g),onFileRemoved:g=>K(u,g)},null,8,["accept","max-size","variant","onFilesSelected","onFileRemoved"]),u.helpText?(e.openBlock(),e.createElementBlock("p",k0,e.toDisplayString(u.helpText),1)):e.createCommentVNode("",!0)])):u.type==="multifile"?(e.openBlock(),e.createElementBlock("div",w0,[e.createVNode(Qe,{multiple:u.multiple!==!1,accept:u.accept,"max-size":u.maxSize,"max-files":u.maxFiles,variant:u.variant||"default",onFilesSelected:g=>_(u,g),onFileRemoved:g=>S(u,g)},null,8,["multiple","accept","max-size","max-files","variant","onFilesSelected","onFileRemoved"]),u.helpText?(e.openBlock(),e.createElementBlock("p",C0,e.toDisplayString(u.helpText),1)):e.createCommentVNode("",!0)])):u.type==="slider"?(e.openBlock(),e.createBlock(Bt,{key:10,"model-value":V(u.name),min:u.min,max:u.max,step:u.step,disabled:r.value||u.disabled,"onUpdate:modelValue":g=>h(u,g)},null,8,["model-value","min","max","step","disabled","onUpdate:modelValue"])):u.type==="range"?(e.openBlock(),e.createElementBlock("div",B0,[e.createElementVNode("div",V0,[e.createVNode(le,{id:F,"model-value":V(u.name),type:"range",min:u.min,max:u.max,step:u.step||1,disabled:r.value||u.disabled,class:"flex-1","aria-describedby":p,"onUpdate:modelValue":g=>D(u.name,g)},null,8,["id","model-value","min","max","step","disabled","aria-describedby","onUpdate:modelValue"]),e.createElementVNode("span",E0,e.toDisplayString(V(u.name)),1)])])):u.type==="date"?(e.openBlock(),e.createBlock(at,{key:12,id:F,"model-value":V(u.name),disabled:r.value||u.disabled,required:u.required,min:u.min,max:u.max,placeholder:u.placeholder||"Select date",format:u.format||"MM/DD/YYYY",clearable:u.clearable!==!1,"show-today":u.showToday!==!1,"calendar-position":u.calendarPosition||"left-0 bottom-full","aria-describedby":p,"onUpdate:modelValue":g=>D(u.name,g)},null,8,["id","model-value","disabled","required","min","max","placeholder","format","clearable","show-today","calendar-position","aria-describedby","onUpdate:modelValue"])):u.type==="time"?(e.openBlock(),e.createBlock(le,{key:13,id:F,"model-value":V(u.name),type:"time",disabled:r.value||u.disabled,class:e.normalizeClass(M?"border-red-500":"border-slate-300"),"aria-describedby":p,"onUpdate:modelValue":g=>D(u.name,g)},null,8,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):u.type==="datetime-local"?(e.openBlock(),e.createBlock(le,{key:14,id:F,"model-value":V(u.name),type:"datetime-local",disabled:r.value||u.disabled,class:e.normalizeClass(M?"border-red-500":"border-slate-300"),"aria-describedby":p,"onUpdate:modelValue":g=>D(u.name,g)},null,8,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):u.type==="month"?(e.openBlock(),e.createBlock(le,{key:15,id:F,"model-value":V(u.name),type:"month",disabled:r.value||u.disabled,class:e.normalizeClass(M?"border-red-500":"border-slate-300"),"aria-describedby":p,"onUpdate:modelValue":g=>D(u.name,g)},null,8,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):u.type==="week"?(e.openBlock(),e.createBlock(le,{key:16,id:F,"model-value":V(u.name),type:"week",disabled:r.value||u.disabled,class:e.normalizeClass(M?"border-red-500":"border-slate-300"),"aria-describedby":p,"onUpdate:modelValue":g=>D(u.name,g)},null,8,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):e.createCommentVNode("",!0)]),_:2},1032,["id","label","required","error","error-message"]))]))),128)),e.createElementVNode("div",S0,[e.createVNode(oe,{type:"button",variant:"outline",disabled:r.value,onClick:z},{default:e.withCtx(()=>[...y[1]||(y[1]=[e.createTextVNode(" Cancel ",-1)])]),_:1},8,["disabled"]),e.createVNode(oe,{type:"submit",disabled:r.value,loading:r.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","class","resizable"]))}},N0={class:"w-full p-2"},$0={key:0,class:"mb-6"},z0={class:"text-xl font-semibold text-gray-900"},D0={key:0,class:"text-sm text-gray-600 mt-1"},T0=["onUpdate:modelValue"],F0={key:4,class:"flex items-center"},A0={key:5,class:"flex items-center"},M0=["id","aria-checked","disabled","onClick"],L0={key:6,class:"space-y-2"},P0={key:7,class:"space-y-2"},j0={key:0,class:"text-xs text-gray-500"},O0={key:8,class:"space-y-3"},I0=["onDrop","onDragenter","onDragleave","onClick"],_0=["multiple","accept","disabled","onChange"],R0={class:"flex items-center justify-center px-4 py-4"},U0={class:"flex flex-col"},q0={class:"text-xs text-gray-500"},H0={key:0,class:"ml-1"},W0={key:1,class:"ml-1"},Y0={key:0,class:"text-xs text-gray-500"},G0={key:1,class:"space-y-2"},K0={class:"flex items-center space-x-3 flex-1 min-w-0"},X0={class:"relative h-10 w-10 flex-shrink-0"},Q0={class:"h-10 w-10 text-gray-300",viewBox:"0 0 36 36"},J0=["stroke-dasharray"],Z0={class:"absolute inset-0 flex items-center justify-center text-xs font-medium text-gray-700"},ev={class:"flex flex-col min-w-0"},tv={class:"text-sm font-medium text-gray-900 truncate"},av=["onClick"],nv={key:2,class:"space-y-2"},ov={class:"flex items-center space-x-3 flex-1 min-w-0"},lv={class:"h-5 w-5",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},rv={key:0,"stroke-linecap":"round","stroke-linejoin":"round",d:"M2.25 15.75l5.159-5.159a2.25 2.25 0 013.182 0l5.159 5.159m-1.5-1.5l1.409-1.409a2.25 2.25 0 013.182 0l2.909 2.909m-18 3.75h16.5a1.5 1.5 0 001.5-1.5V6a1.5 1.5 0 00-1.5-1.5H3.75A1.5 1.5 0 002.25 6v12a1.5 1.5 0 001.5 1.5zm10.5-11.25h.008v.008h-.008V8.25zm.375 0a.375.375 0 11-.75 0 .375.375 0 01.75 0z"},sv={key:1,"stroke-linecap":"round","stroke-linejoin":"round",d:"M19.5 14.25v-2.625a3.375 3.375 0 00-3.375-3.375h-1.5A1.125 1.125 0 0113.5 7.125v-1.5a3.375 3.375 0 00-3.375-3.375H8.25m2.25 0H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 00-9-9z"},iv={class:"flex flex-col min-w-0"},cv={class:"text-sm font-medium text-gray-900 truncate"},dv={class:"text-xs text-gray-500"},uv=["disabled","onClick"],mv={key:3,class:"text-xs text-blue-600 font-medium"},fv={key:0},pv={key:10,class:"space-y-2"},gv={class:"flex items-center gap-4"},vv={class:"text-sm font-medium text-gray-700 min-w-[3rem] text-right"},hv={class:"flex justify-end gap-3 pt-6"},Zo={__name:"ReusableForm",props:{title:{type:String,default:"Form"},description:{type:String,default:""},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","multifile","radio","switch","range","search","hidden","multiselect"].includes(n.type))},initialData:{type:Object,default:null},loading:{type:Boolean,default:!1},customValidation:{type:Function,default:null},submitLabel:{type:String,default:"Submit"},showReset:{type:Boolean,default:!0},showCancel:{type:Boolean,default:!0}},emits:["submit","reset","cancel"],setup(t,{emit:n}){const a=t,o=n,l=e.computed(()=>a.loading),r=e.ref({}),s=e.ref({}),i=e.ref(!1),c=e.ref({}),f=e.ref({}),x=e.ref({}),C=p=>{const g=x.value[p];g&&g.click()},$=(p,g)=>{g&&(x.value[p]=g)},E=()=>{const p={};return a.fields.forEach(g=>{g.type==="checkbox"||g.type==="switch"?p[g.name]=!1:g.type==="number"||g.type==="slider"||g.type==="range"?p[g.name]=g.min!==void 0?g.min:0:g.type==="file"?p[g.name]=null:g.type==="multifile"?p[g.name]=[]:g.type==="radio"?p[g.name]=g.options?.[0]?.value||"":g.type==="multiselect"?p[g.name]=[]:p[g.name]=""}),p};e.watch(()=>a.initialData,p=>{if(p){const g={};a.fields.forEach(m=>{m.type==="checkbox"||m.type==="switch"?g[m.name]=p[m.name]??!1:m.type==="number"||m.type==="slider"||m.type==="range"?g[m.name]=p[m.name]??(m.min!==void 0?m.min:0):m.type==="file"?g[m.name]=null:m.type==="multifile"?g[m.name]=Array.isArray(p[m.name])?p[m.name]:[]:m.type==="multiselect"?g[m.name]=Array.isArray(p[m.name])?p[m.name]:[]:g[m.name]=p[m.name]??""}),r.value=g,i.value=!0}else r.value=E(),i.value=!1},{immediate:!0,deep:!0}),e.watch(()=>a.initialData,p=>{i.value&&p&&Object.keys(p).forEach(g=>{Object.prototype.hasOwnProperty.call(r.value,g)&&p[g]!==void 0&&p[g]!==null&&(r.value[g]=p[g])})},{deep:!0});const B=()=>{if(s.value={},a.fields.forEach(p=>{if(p.required&&!p.disabled&&p.type!=="hidden"){const g=r.value[p.name];p.type==="checkbox"||p.type==="switch"?p.required&&!g&&(s.value[p.name]=p.errorMessage||`${p.label} is required`):p.type==="number"||p.type==="slider"||p.type==="range"?g===""||g===null||g===void 0?s.value[p.name]=p.errorMessage||`${p.label} is required`:p.min!==void 0&&Number(g)<p.min?s.value[p.name]=`${p.label} must be at least ${p.min}`:p.max!==void 0&&Number(g)>p.max&&(s.value[p.name]=`${p.label} must be at most ${p.max}`):p.type==="email"?!g||!g.trim()?s.value[p.name]=p.errorMessage||`${p.label} is required`:/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(g)||(s.value[p.name]="Please enter a valid email address"):p.type==="url"?!g||!g.trim()?s.value[p.name]=p.errorMessage||`${p.label} is required`:/^https?:\/\/.+/.test(g)||(s.value[p.name]="Please enter a valid URL"):p.type==="tel"?(!g||!g.trim())&&(s.value[p.name]=p.errorMessage||`${p.label} is required`):p.type==="file"?g||(s.value[p.name]=p.errorMessage||`${p.label} is required`):p.type==="multifile"?!Array.isArray(g)||g.length===0?s.value[p.name]=p.errorMessage||`${p.label} is required`:p.minFiles&&g.length<p.minFiles?s.value[p.name]=`Please upload at least ${p.minFiles} file(s)`:p.maxFiles&&g.length>p.maxFiles&&(s.value[p.name]=`Maximum ${p.maxFiles} file(s) allowed`):p.type==="radio"?g||(s.value[p.name]=p.errorMessage||`${p.label} is required`):p.type==="multiselect"?(!Array.isArray(g)||g.length===0)&&(s.value[p.name]=p.errorMessage||`${p.label} is required`):p.type==="date"||p.type==="time"||p.type==="datetime-local"||p.type==="month"||p.type==="week"?(!g||typeof g=="string"&&!g.trim())&&(s.value[p.name]=p.errorMessage||`${p.label} is required`):p.type==="password"?(!g||typeof g=="string"&&!g.trim())&&(s.value[p.name]=p.errorMessage||`${p.label} is required`):(!g||typeof g=="string"&&!g.trim())&&(s.value[p.name]=p.errorMessage||`${p.label} is required`)}if(p.validate&&typeof p.validate=="function"){const g=p.validate(r.value[p.name],r.value);g&&(s.value[p.name]=g)}}),a.customValidation){const p=a.customValidation(r.value);p&&Object.keys(p).length>0&&(s.value={...s.value,...p})}return Object.keys(s.value).length===0},w=async(p,g)=>{if(r.value[p.name]=g,p.onChange&&typeof p.onChange=="function")try{await p.onChange(g,r.value)}catch(m){console.error("Error in onChange handler:",m),se.error("An error occurred while processing the change")}},b=(p,g)=>{if(r.value[p.name]=g,p.onChange&&typeof p.onChange=="function")try{p.onChange(g,r.value)}catch(m){console.error("Error in onChange handler:",m),se.error("An error occurred while processing the change")}},v=(p,g)=>{const m=g.target.files?.[0]||null;if(r.value[p.name]=m,p.onChange&&typeof p.onChange=="function")try{p.onChange(m,r.value)}catch(O){console.error("Error in onChange handler:",O),se.error("An error occurred while processing the file")}},h=(p,g)=>{g.preventDefault(),f.value[p.name]=!1;const m=Array.from(g.dataTransfer?.files||[]);j(p,m)},k=p=>{p.preventDefault()},z=(p,g)=>{g.preventDefault(),f.value[p.name]=!0},V=(p,g)=>{g.preventDefault(),f.value[p.name]=!1},D=(p,g)=>{const m=Array.from(g.target?.files||[]);j(p,m),g.target.value=""},j=(p,g)=>{const m=r.value[p.name]||[],O=p.maxFiles||1/0,W=p.maxSize||1/0,X=g.filter(ne=>{if(ne.size>W)return se.error(`${ne.name} exceeds maximum size of ${S(W)}`),!1;if(p.accept){const re=p.accept.split(",").map(ce=>ce.trim().toLowerCase()),fe="."+ne.name.split(".").pop()?.toLowerCase(),me=ne.type.toLowerCase();if(!re.some(ce=>ce.startsWith(".")?fe===ce:ce.endsWith("/*")?me.startsWith(ce.replace("/*","/")):me===ce))return se.error(`${ne.name} is not an accepted file type`),!1}return!0}),R=O-m.length;if(R<=0){se.error(`Maximum ${O} file(s) allowed`);return}const ae=X.slice(0,R);ae.length<X.length&&se.warning(`Only ${ae.length} file(s) added. Maximum ${O} file(s) allowed`),c.value[p.name]||(c.value[p.name]=[]),ae.forEach(ne=>{const re=e.reactive({file:ne,progress:0,id:`${Date.now()}-${Math.random().toString(36).slice(2,9)}`});c.value[p.name].push(re);const fe=1500+Math.random()*1500,me=50,ce=100/(fe/me),De=setInterval(()=>{if(re.progress+=ce,re.progress>=100){re.progress=100,clearInterval(De),r.value[p.name]=[...r.value[p.name]||[],ne];const we=c.value[p.name]?.findIndex(be=>be.id===re.id);if(we>-1&&c.value[p.name].splice(we,1),p.onChange&&typeof p.onChange=="function")try{p.onChange(r.value[p.name],r.value)}catch(be){console.error("Error in onChange handler:",be)}}},me)})},K=(p,g)=>{const m=[...r.value[p.name]||[]];if(m.splice(g,1),r.value[p.name]=m,p.onFileRemoved&&typeof p.onFileRemoved=="function")try{p.onFileRemoved(m,r.value)}catch(O){console.error("Error in onFileRemoved handler:",O)}},_=(p,g)=>{const m=c.value[p.name]?.findIndex(O=>O.id===g);m>-1&&c.value[p.name].splice(m,1)},S=p=>{if(p===0)return"0 Bytes";const g=1024,m=["Bytes","KB","MB","GB"],O=Math.floor(Math.log(p)/Math.log(g));return parseFloat((p/Math.pow(g,O)).toFixed(2))+" "+m[O]},d=p=>{const g=p.name.split(".").pop()?.toLowerCase();return["jpg","jpeg","png","gif","webp","svg","bmp"].includes(g)?"image":["pdf"].includes(g)||["doc","docx"].includes(g)?"file-text":["xls","xlsx","csv"].includes(g)?"table":["zip","rar","7z","tar","gz"].includes(g)?"archive":["mp4","mov","avi","mkv","webm"].includes(g)?"video":["mp3","wav","ogg","flac"].includes(g)?"music":"file"},y=p=>{const g=p.name.split(".").pop()?.toLowerCase();return["jpg","jpeg","png","gif","webp","svg","bmp"].includes(g)?"text-purple-600 bg-purple-100":["pdf"].includes(g)?"text-red-600 bg-red-100":["doc","docx"].includes(g)?"text-blue-600 bg-blue-100":["xls","xlsx","csv"].includes(g)?"text-green-600 bg-green-100":["zip","rar","7z","tar","gz"].includes(g)?"text-yellow-600 bg-yellow-100":["mp4","mov","avi","mkv","webm"].includes(g)?"text-pink-600 bg-pink-100":["mp3","wav","ogg","flac"].includes(g)?"text-orange-600 bg-orange-100":"text-gray-600 bg-gray-100"},u=async()=>{try{if(Object.values(c.value).some(m=>m.length>0)){se.error("Please wait for all files to finish uploading");return}if(!B()){se.error("Please fix the validation errors before submitting");return}const g={};a.fields.forEach(m=>{const O=r.value[m.name];m.type==="number"||m.type==="slider"||m.type==="range"?g[m.name]=Number(O):m.type==="text"||m.type==="textarea"||m.type==="date"||m.type==="email"||m.type==="url"||m.type==="tel"||m.type==="search"||m.type==="time"||m.type==="datetime-local"||m.type==="month"||m.type==="week"?g[m.name]=typeof O=="string"?O.trim():O:(m.type==="password"||m.type==="file"||m.type,g[m.name]=O)}),o("submit",{formData:g,originalData:a.initialData})}catch(p){console.error("Error during form submission:",p),se.error("An error occurred during submission")}},F=()=>{r.value=E(),s.value={},c.value={},i.value=!1,o("reset")},M=()=>{o("cancel")};return(p,g)=>(e.openBlock(),e.createElementBlock("div",N0,[t.title?(e.openBlock(),e.createElementBlock("div",$0,[e.createElementVNode("h2",z0,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("p",D0,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("form",{class:"space-y-6",onSubmit:e.withModifiers(u,["prevent"])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.fields,m=>(e.openBlock(),e.createElementBlock("div",{key:m.name},[m.type==="hidden"?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,"onUpdate:modelValue":O=>r.value[m.name]=O,type:"hidden"},null,8,T0)),[[e.vModelText,r.value[m.name]]]):(e.openBlock(),e.createBlock(wt,{key:1,id:`form-${t.entityName}-${m.name}-${Math.random().toString(36).slice(2,5)}`,label:m.label,required:m.required&&!m.disabled,error:s.value[m.name],"error-message":s.value[m.name]},{default:e.withCtx(({fieldId:O,hasError:W,ariaDescribedBy:X})=>[["text","number","password","color","email","tel","url","search"].includes(m.type)?(e.openBlock(),e.createBlock(le,{key:0,id:O,modelValue:r.value[m.name],"onUpdate:modelValue":R=>r.value[m.name]=R,type:m.type,placeholder:m.placeholder,disabled:l.value||m.disabled,readonly:m.disabled,class:e.normalizeClass(W?"border-red-500":"border-slate-300"),"aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","type","placeholder","disabled","readonly","class","aria-describedby"])):m.type==="textarea"?(e.openBlock(),e.createBlock(kt,{key:1,id:O,modelValue:r.value[m.name],"onUpdate:modelValue":R=>r.value[m.name]=R,placeholder:m.placeholder,disabled:l.value||m.disabled,rows:m.rows||3,class:e.normalizeClass(["w-full px-3 py-2 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500",W?"border-red-500":"border-slate-300"]),"aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","placeholder","disabled","rows","class","aria-describedby"])):m.type==="select"?(e.openBlock(),e.createBlock(he,{key:2,id:O,"model-value":r.value[m.name],options:m.options,placeholder:m.placeholder||"Select an option",disabled:l.value||m.disabled,"has-error":W,"aria-describedby":X,"onUpdate:modelValue":R=>w(m,R)},null,8,["id","model-value","options","placeholder","disabled","has-error","aria-describedby","onUpdate:modelValue"])):m.type==="multiselect"?(e.openBlock(),e.createBlock(Qo,{key:3,id:O,"model-value":r.value[m.name],options:m.options,disabled:l.value||m.disabled,placeholder:m.placeholder||"Select options","has-error":W,"aria-describedby":X,"onUpdate:modelValue":R=>r.value[m.name]=R},null,8,["id","model-value","options","disabled","placeholder","has-error","aria-describedby","onUpdate:modelValue"])):m.type==="checkbox"?(e.openBlock(),e.createElementBlock("div",F0,[e.createVNode(le,{id:O,modelValue:r.value[m.name],"onUpdate:modelValue":R=>r.value[m.name]=R,type:"checkbox",disabled:l.value||m.disabled,class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300 rounded","aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","disabled","aria-describedby"]),e.createVNode(Be,{for:O,class:"ml-2 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(m.checkboxLabel||m.label),1)]),_:2},1032,["for"])])):m.type==="switch"?(e.openBlock(),e.createElementBlock("div",A0,[e.createElementVNode("button",{id:O,type:"button",role:"switch","aria-checked":r.value[m.name],disabled:l.value||m.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",r.value[m.name]?"bg-blue-600":"bg-gray-200",l.value||m.disabled?"opacity-50 cursor-not-allowed":"cursor-pointer"]),onClick:R=>r.value[m.name]=!r.value[m.name]},[e.createElementVNode("span",{class:e.normalizeClass(["inline-block h-4 w-4 transform rounded-full bg-white transition-transform",r.value[m.name]?"translate-x-6":"translate-x-1"])},null,2)],10,M0),e.createVNode(Be,{for:O,class:"ml-3 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(m.checkboxLabel||m.label),1)]),_:2},1032,["for"])])):m.type==="radio"?(e.openBlock(),e.createElementBlock("div",L0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.options,R=>(e.openBlock(),e.createElementBlock("div",{key:R.value,class:"flex items-center"},[e.createVNode(le,{id:`${O}-${R.value}`,modelValue:r.value[m.name],"onUpdate:modelValue":ae=>r.value[m.name]=ae,type:"radio",value:R.value,disabled:l.value||m.disabled,class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300","aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","value","disabled","aria-describedby"]),e.createVNode(Be,{for:`${O}-${R.value}`,class:"ml-2 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(R.label),1)]),_:2},1032,["for"])]))),128))])):m.type==="file"?(e.openBlock(),e.createElementBlock("div",P0,[e.createVNode(le,{id:O,type:"file",accept:m.accept,disabled:l.value||m.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",W?"border-red-500":"border-slate-300"]),"aria-describedby":X,onChange:R=>v(m,R)},null,8,["id","accept","disabled","class","aria-describedby","onChange"]),m.helpText?(e.openBlock(),e.createElementBlock("p",j0,e.toDisplayString(m.helpText),1)):e.createCommentVNode("",!0)])):m.type==="multifile"?(e.openBlock(),e.createElementBlock("div",O0,[e.createElementVNode("div",{class:e.normalizeClass(["border-2 border-dashed rounded-xl cursor-pointer transition-all duration-200",f.value[m.name]?"border-blue-500 bg-blue-50 ring-2 ring-blue-200":W?"border-red-300 hover:border-red-400 bg-red-50/50":"border-gray-300 hover:border-gray-400 hover:bg-gray-50",l.value||m.disabled?"opacity-50 cursor-not-allowed":""]),onDrop:R=>h(m,R),onDragover:k,onDragenter:R=>z(m,R),onDragleave:R=>V(m,R),onClick:R=>C(m.name)},[e.createElementVNode("input",{ref_for:!0,ref:R=>$(m.name,R),type:"file",multiple:m.multiple!==!1,accept:m.accept,class:"hidden",disabled:l.value||m.disabled,onChange:R=>D(m,R)},null,40,_0),e.createElementVNode("div",R0,[g[1]||(g[1]=e.createElementVNode("div",{class:"bg-gray-100 rounded-full p-2.5 mr-3"},[e.createElementVNode("svg",{class:"h-6 w-6 text-gray-600",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M3 16.5v2.25A2.25 2.25 0 005.25 21h13.5A2.25 2.25 0 0021 18.75V16.5m-13.5-9L12 3m0 0l4.5 4.5M12 3v13.5"})])],-1)),e.createElementVNode("div",U0,[g[0]||(g[0]=e.createElementVNode("p",{class:"text-sm font-medium text-gray-700"},[e.createElementVNode("span",{class:"text-blue-600 font-semibold"},"Click to upload"),e.createTextVNode(" or drag and drop ")],-1)),e.createElementVNode("p",q0,[e.createTextVNode(e.toDisplayString(m.maxSize?`Up to ${S(m.maxSize)}`:"No size limit")+" ",1),m.accept?(e.openBlock(),e.createElementBlock("span",H0,"• "+e.toDisplayString(m.accept),1)):e.createCommentVNode("",!0),m.maxFiles?(e.openBlock(),e.createElementBlock("span",W0,"• Max "+e.toDisplayString(m.maxFiles)+" files",1)):e.createCommentVNode("",!0)])])])],42,I0),m.helpText?(e.openBlock(),e.createElementBlock("p",Y0,e.toDisplayString(m.helpText),1)):e.createCommentVNode("",!0),c.value[m.name]?.length>0?(e.openBlock(),e.createElementBlock("div",G0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value[m.name],R=>(e.openBlock(),e.createElementBlock("div",{key:R.id,class:"flex items-center justify-between p-3 bg-white border border-gray-200 rounded-lg"},[e.createElementVNode("div",K0,[e.createElementVNode("div",X0,[(e.openBlock(),e.createElementBlock("svg",Q0,[g[2]||(g[2]=e.createElementVNode("circle",{cx:"18",cy:"18",r:"16",fill:"none",stroke:"currentColor","stroke-width":"3"},null,-1)),e.createElementVNode("circle",{cx:"18",cy:"18",r:"16",fill:"none",stroke:"#3B82F6","stroke-width":"3","stroke-linecap":"round","stroke-dasharray":`${R.progress} 100`,transform:"rotate(-90 18 18)"},null,8,J0)])),e.createElementVNode("span",Z0,e.toDisplayString(Math.round(R.progress))+"% ",1)]),e.createElementVNode("div",ev,[e.createElementVNode("span",tv,e.toDisplayString(R.file.name),1),g[3]||(g[3]=e.createElementVNode("span",{class:"text-xs text-gray-500"},"Uploading...",-1))])]),e.createElementVNode("button",{type:"button",class:"text-gray-400 hover:text-red-500 hover:bg-red-50 rounded-full p-1 transition-colors ml-2",onClick:e.withModifiers(ae=>_(m,R.id),["stop"])},[...g[4]||(g[4]=[e.createElementVNode("svg",{class:"h-4 w-4",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})],-1)])],8,av)]))),128))])):e.createCommentVNode("",!0),r.value[m.name]?.length>0?(e.openBlock(),e.createElementBlock("div",nv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value[m.name],(R,ae)=>(e.openBlock(),e.createElementBlock("div",{key:`uploaded-${ae}`,class:"flex items-center justify-between p-3 bg-white border border-gray-200 rounded-lg hover:shadow-sm transition-shadow"},[e.createElementVNode("div",ov,[e.createElementVNode("div",{class:e.normalizeClass(["rounded-lg p-2 flex-shrink-0",y(R)])},[(e.openBlock(),e.createElementBlock("svg",lv,[d(R)==="image"?(e.openBlock(),e.createElementBlock("path",rv)):(e.openBlock(),e.createElementBlock("path",sv))]))],2),e.createElementVNode("div",iv,[e.createElementVNode("span",cv,e.toDisplayString(R.name),1),e.createElementVNode("span",dv,e.toDisplayString(S(R.size)),1)])]),e.createElementVNode("button",{type:"button",class:"text-gray-400 hover:text-red-500 hover:bg-red-50 rounded-full p-1.5 transition-colors ml-2",disabled:l.value||m.disabled,onClick:e.withModifiers(ne=>K(m,ae),["stop"])},[...g[5]||(g[5]=[e.createElementVNode("svg",{class:"h-4 w-4",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M14.74 9l-.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 01-2.244 2.077H8.084a2.25 2.25 0 01-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 00-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 013.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 00-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 00-7.5 0"})],-1)])],8,uv)]))),128))])):e.createCommentVNode("",!0),r.value[m.name]?.length>0?(e.openBlock(),e.createElementBlock("p",mv,[e.createTextVNode(e.toDisplayString(r.value[m.name].length)+" file(s) uploaded ",1),m.maxFiles?(e.openBlock(),e.createElementBlock("span",fv," of "+e.toDisplayString(m.maxFiles)+" max",1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])):m.type==="slider"?(e.openBlock(),e.createBlock(Bt,{key:9,"model-value":r.value[m.name],min:m.min,max:m.max,step:m.step,disabled:l.value||m.disabled,"onUpdate:modelValue":R=>b(m,R)},null,8,["model-value","min","max","step","disabled","onUpdate:modelValue"])):m.type==="range"?(e.openBlock(),e.createElementBlock("div",pv,[e.createElementVNode("div",gv,[e.createVNode(le,{id:O,modelValue:r.value[m.name],"onUpdate:modelValue":R=>r.value[m.name]=R,type:"range",min:m.min,max:m.max,step:m.step||1,disabled:l.value||m.disabled,class:"flex-1","aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","min","max","step","disabled","aria-describedby"]),e.createElementVNode("span",vv,e.toDisplayString(r.value[m.name]),1)])])):m.type==="date"?(e.openBlock(),e.createBlock(at,{key:11,id:O,modelValue:r.value[m.name],"onUpdate:modelValue":R=>r.value[m.name]=R,disabled:l.value||m.disabled,required:m.required,min:m.min,max:m.max,placeholder:m.placeholder||"Select date",format:m.format||"MM/DD/YYYY",clearable:m.clearable!==!1,"show-today":m.showToday!==!1,"calendar-position":m.calendarPosition||"left-0 bottom-full","aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","disabled","required","min","max","placeholder","format","clearable","show-today","calendar-position","aria-describedby"])):m.type==="time"?(e.openBlock(),e.createBlock(le,{key:12,id:O,modelValue:r.value[m.name],"onUpdate:modelValue":R=>r.value[m.name]=R,type:"time",disabled:l.value||m.disabled,class:e.normalizeClass(W?"border-red-500":"border-slate-300"),"aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):m.type==="datetime-local"?(e.openBlock(),e.createBlock(le,{key:13,id:O,modelValue:r.value[m.name],"onUpdate:modelValue":R=>r.value[m.name]=R,type:"datetime-local",disabled:l.value||m.disabled,class:e.normalizeClass(W?"border-red-500":"border-slate-300"),"aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):m.type==="month"?(e.openBlock(),e.createBlock(le,{key:14,id:O,modelValue:r.value[m.name],"onUpdate:modelValue":R=>r.value[m.name]=R,type:"month",disabled:l.value||m.disabled,class:e.normalizeClass(W?"border-red-500":"border-slate-300"),"aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):m.type==="week"?(e.openBlock(),e.createBlock(le,{key:15,id:O,modelValue:r.value[m.name],"onUpdate:modelValue":R=>r.value[m.name]=R,type:"week",disabled:l.value||m.disabled,class:e.normalizeClass(W?"border-red-500":"border-slate-300"),"aria-describedby":X},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",hv,[t.showReset?(e.openBlock(),e.createBlock(oe,{key:0,type:"button",variant:"outline",disabled:l.value,onClick:F},{default:e.withCtx(()=>[...g[6]||(g[6]=[e.createTextVNode(" Reset ",-1)])]),_:1},8,["disabled"])):e.createCommentVNode("",!0),t.showCancel?(e.openBlock(),e.createBlock(oe,{key:1,type:"button",variant:"outline",disabled:l.value,onClick:M},{default:e.withCtx(()=>[...g[7]||(g[7]=[e.createTextVNode(" Cancel ",-1)])]),_:1},8,["disabled"])):e.createCommentVNode("",!0),e.createVNode(oe,{type:"submit",disabled:l.value,loading:l.value,variant:"default"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.submitLabel),1)]),_:1},8,["disabled","loading"])])],32)]))}},yv={key:0,class:"flex items-center justify-between p-4 border-b border-gray-200 flex-shrink-0 lg:hidden"},bv={class:"text-lg font-bold text-gray-900"},xv={class:"flex-1 overflow-y-auto overflow-x-hidden p-4"},kv={class:"space-y-2"},wv={key:0},Cv={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"},Bv=["onClick"],Vv={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"},Ev={key:1,class:"absolute top-1.5 right-1.5 w-2 h-2 bg-blue-500 rounded-full"},Sv={key:1,class:"border-t border-gray-200 p-4 flex-shrink-0"},Nv={key:0,class:"absolute top-1.5 right-1.5 w-2 h-2 bg-blue-500 rounded-full"},$v={class:"sticky top-0 bg-white border-b border-gray-200 z-10"},zv={class:"flex items-center justify-between p-4"},Dv={class:"flex-1 text-sm font-bold text-gray-900 ml-2"},Tv={key:0,class:"px-4 pb-3"},Fv={class:"relative"},Av=["placeholder"],Mv={class:"absolute left-3 top-1/2 transform -translate-y-1/2 text-gray-400"},Lv={key:0,class:"mt-2 text-xs text-gray-500 px-1"},Pv={class:"p-3"},jv={key:0,class:"px-3 py-8 text-center"},Ov={key:1,class:"space-y-1"},Iv={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"},_v={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"},Rv={class:"p-3"},Uv={class:"space-y-1"},qv={key:0,class:"px-3 py-2 text-xs font-semibold text-gray-500 uppercase tracking-wider"},Hv={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"},el={__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:""},showSearch:{type:Boolean,default:!1},searchPlaceholder:{type:String,default:"Search..."},searchableMenus:{type:Array,default:()=>[]}},emits:["navigate","update:mobileOpen","search"],setup(t,{expose:n,emit:a}){const o=t,l=a,r=e.ref(!1),s=e.ref(!1),i=e.ref(null),c=e.ref(!1),f=e.ref(""),x=e.computed(()=>o.mobileOpen),C=e.computed(()=>r.value?{}:{left:`${o.sidebarWidth}px`}),$=e.computed(()=>r.value?{}:{left:`${o.sidebarWidth}px`}),E=e.computed(()=>{if(!o.showSearch||!i.value)return!1;const M=i.value.name?.toLowerCase()||"";return o.searchableMenus.some(p=>M.includes(p.toLowerCase()))}),B=e.computed(()=>{if(!i.value?.subItems)return[];if(!f.value.trim())return i.value.subItems;const M=f.value.toLowerCase().trim();return i.value.subItems.filter(p=>{const g=p.label?.toLowerCase()||"",m=p.name?.toLowerCase()||"";return g.includes(M)||m.includes(M)})}),w=e.computed(()=>{if(r.value)return 0;let M=o.sidebarWidth;return s.value&&(M+=220),c.value&&(M+=220),M}),b=M=>{l("navigate",M),r.value&&v();const p=s.value&&i.value&&i.value.subItems.some(m=>m.route===M.route),g=c.value&&o.managementSettings.some(m=>m.route===M.route);(r.value||!(p||g))&&j()},v=()=>{l("update:mobileOpen",!1)},h=M=>M.subItems&&M.subItems.length>0,k=M=>{c.value&&D(),s.value&&i.value!==M?(V(),setTimeout(()=>{i.value=M,s.value=!0,f.value=""},300)):s.value?i.value===M&&V():(i.value=M,s.value=!0,f.value=""),r.value&&v()},z=()=>{s.value&&V(),c.value?D():c.value=!0,r.value&&v()},V=()=>{s.value=!1,f.value="",setTimeout(()=>{i.value=null},300)},D=()=>{c.value=!1},j=()=>{V(),D()},K=M=>{b(M)},_=M=>{b(M)},S=M=>{f.value=M,l("search",{query:M,menu:i.value?.name})},d=()=>{f.value=""},y=M=>{const p=o.currentPath;return M.route?!!(p===M.route||p.startsWith(M.route+"/")):M.subItems&&M.subItems.length>0?M.subItems.some(g=>g.route?p===g.route||p.startsWith(g.route+"/"):!1):!1},u=()=>{const M=r.value;r.value=window.innerWidth<1024,M&&!r.value&&x.value&&v()},F=M=>{M.key==="Escape"&&(s.value||c.value?j():r.value&&x.value&&v())};return e.onMounted(()=>{u(),window.addEventListener("resize",u),document.addEventListener("keydown",F)}),e.onUnmounted(()=>{window.removeEventListener("resize",u),document.removeEventListener("keydown",F)}),n({isMobile:r,isMobileOpen:x,submenuOpen:s,managementSettingsOpen:c,contentMarginLeft:w,closeAllMenus:j}),(M,p)=>{const g=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(()=>[x.value&&r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-30 lg:hidden",onClick:v})):e.createCommentVNode("",!0)]),_:1}),e.createElementVNode("aside",{class:e.normalizeClass(e.unref(N)("fixed left-0 z-40 border-r overflow-hidden flex flex-col","transition-all duration-300 ease-in-out","bg-white border-gray-200",r.value?e.unref(N)("transform h-screen",x.value?"translate-x-0":"-translate-x-full"):"translate-x-0 h-[calc(100vh-4rem)]")),style:e.normalizeStyle({width:t.sidebarWidth+"px",top:r.value?"0px":"4rem"})},[r.value?(e.openBlock(),e.createElementBlock("div",yv,[e.createElementVNode("h2",bv,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:v},[...p[2]||(p[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:"M6 18L18 6M6 6l12 12"})],-1)])])])):e.createCommentVNode("",!0),e.createElementVNode("nav",xv,[e.createElementVNode("div",kv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.navigationItems,m=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:m.name||m.label},[m.type==="link"?(e.openBlock(),e.createElementBlock("div",wv,[h(m)?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(N)("flex flex-col items-center justify-center rounded-xl transition-all duration-200 cursor-pointer group relative py-4 px-3",y(m)?"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:O=>k(m)},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)("flex items-center justify-center rounded-lg transition-colors mb-2","w-12 h-12",y(m)?"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(H,{icon:m.icon,class:"w-6 h-6"},null,8,["icon"])],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(N)("text-xs font-medium text-center",y(m)?"text-blue-700 font-semibold":"text-gray-500 group-hover:text-gray-900"))},e.toDisplayString(m.label),3),m.badge?(e.openBlock(),e.createElementBlock("span",Vv,e.toDisplayString(m.badge),1)):e.createCommentVNode("",!0),y(m)&&h(m)?(e.openBlock(),e.createElementBlock("div",Ev)):e.createCommentVNode("",!0)],10,Bv)):(e.openBlock(),e.createBlock(g,{key:0,to:m.route,class:e.normalizeClass(e.unref(N)("flex flex-col items-center justify-center rounded-xl transition-all duration-200 group relative py-4 px-3",y(m)?"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:O=>b(m)},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)("flex items-center justify-center rounded-lg transition-colors mb-2","w-12 h-12",y(m)?"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(H,{icon:m.icon,class:"w-6 h-6"},null,8,["icon"])],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(N)("text-xs font-medium text-center",y(m)?"text-blue-700 font-semibold":"text-gray-500 group-hover:text-gray-900"))},e.toDisplayString(m.label),3),m.badge?(e.openBlock(),e.createElementBlock("span",Cv,e.toDisplayString(m.badge),1)):e.createCommentVNode("",!0)]),_:2},1032,["to","class","onClick"]))])):e.createCommentVNode("",!0)],64))),128))])]),t.showManagementSettings?(e.openBlock(),e.createElementBlock("div",Sv,[e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)("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:z},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)("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(H,{icon:"cog",class:"w-6 h-6"})],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(N)("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",Nv)):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(()=>[s.value?(e.openBlock(),e.createElementBlock("aside",{key:0,class:e.normalizeClass(e.unref(N)("fixed z-40 bg-white border-r border-gray-200 overflow-y-auto shadow-lg",r.value?"left-0 w-52 top-20 h-screen":"w-56 top-16 h-[calc(100vh-4rem)]")),style:e.normalizeStyle(C.value)},[e.createElementVNode("div",$v,[e.createElementVNode("div",zv,[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:V},[...p[3]||(p[3]=[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",Dv,e.toDisplayString(i.value?.label),1)]),E.value?(e.openBlock(),e.createElementBlock("div",Tv,[e.createElementVNode("div",Fv,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":p[0]||(p[0]=m=>f.value=m),type:"text",placeholder:t.searchPlaceholder,class:"w-full px-3 py-2 pl-9 pr-9 text-sm border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent transition-all",onInput:p[1]||(p[1]=m=>S(f.value))},null,40,Av),[[e.vModelText,f.value]]),e.createElementVNode("div",Mv,[e.createVNode(H,{icon:"search",class:"w-4 h-4"})]),f.value?(e.openBlock(),e.createElementBlock("button",{key:0,class:"absolute right-2 top-1/2 transform -translate-y-1/2 text-gray-400 hover:text-gray-600 transition-colors p-1",onClick:d},[e.createVNode(H,{icon:"times",class:"w-4 h-4"})])):e.createCommentVNode("",!0)]),f.value?(e.openBlock(),e.createElementBlock("div",Lv,e.toDisplayString(B.value.length)+" result"+e.toDisplayString(B.value.length!==1?"s":"")+" found ",1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),e.createElementVNode("nav",Pv,[E.value&&f.value&&B.value.length===0?(e.openBlock(),e.createElementBlock("div",jv,[e.createVNode(H,{icon:"search",class:"w-12 h-12 mx-auto text-gray-300 mb-3"}),p[4]||(p[4]=e.createElementVNode("p",{class:"text-sm text-gray-500 mb-1"}," No results found ",-1)),p[5]||(p[5]=e.createElementVNode("p",{class:"text-xs text-gray-400"}," Try a different search term ",-1))])):(e.openBlock(),e.createElementBlock("div",Ov,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value,m=>(e.openBlock(),e.createBlock(g,{key:m.name,to:m.route,class:e.normalizeClass(e.unref(N)("flex items-center px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",y(m)?"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:O=>K(m)},{default:e.withCtx(()=>[y(m)?(e.openBlock(),e.createElementBlock("div",Iv)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)("flex items-center justify-center w-8 h-8 rounded-lg mr-3 flex-shrink-0 transition-colors ml-2",y(m)?"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"))},[m.icon?(e.openBlock(),e.createBlock(H,{key:0,icon:m.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(N)("flex-1 truncate font-semibold",y(m)?"text-blue-700":"text-gray-700"))},e.toDisplayString(m.label),3),m.badge?(e.openBlock(),e.createElementBlock("span",_v,e.toDisplayString(m.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(()=>[c.value?(e.openBlock(),e.createElementBlock("aside",{key:0,class:e.normalizeClass(e.unref(N)("fixed z-40 bg-white border-r border-gray-200 overflow-y-auto shadow-lg",r.value?"left-0 w-52 top-20 h-full":"w-58 h-[calc(100vh-4rem)]")),style:e.normalizeStyle({...$.value,top:r.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:D},[...p[6]||(p[6]=[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)])]),p[7]||(p[7]=e.createElementVNode("h3",{class:"flex-1 text-sm font-bold text-gray-900 ml-2"}," Management Settings ",-1))])]),e.createElementVNode("nav",Rv,[e.createElementVNode("div",Uv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.managementSettings,m=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:m.name},[m.type==="section"?(e.openBlock(),e.createElementBlock("div",qv,e.toDisplayString(m.label),1)):m.route?(e.openBlock(),e.createBlock(g,{key:1,to:m.route,class:e.normalizeClass(e.unref(N)("flex items-center px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",y(m)?"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:O=>_(m)},{default:e.withCtx(()=>[y(m)?(e.openBlock(),e.createElementBlock("div",Hv)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(N)("flex items-center justify-center w-8 h-8 rounded-lg mr-3 flex-shrink-0 transition-colors",y(m)?"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"))},[m.icon?(e.openBlock(),e.createBlock(H,{key:0,icon:m.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(N)("flex-1 truncate font-semibold",y(m)?"text-blue-700":"text-gray-700"))},e.toDisplayString(m.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(()=>[(s.value||c.value)&&r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed inset-0 z-30 bg-transparent",onClick:j})):e.createCommentVNode("",!0)]),_:1})])}}},tl={__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))}},Wv={key:0,class:"absolute left-3 top-0 w-0.5 h-full bg-slate-200"},Yv={class:"z-10 flex items-center justify-center w-6 h-6 rounded-full border-2 border-blue-500 bg-white text-blue-500"},Gv={class:"text-slate-900 font-medium"},Kv={key:0,class:"text-slate-500 text-sm"},Xv={class:"mt-2 text-slate-600 text-sm"},al={__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",Wv)):e.createCommentVNode("",!0),e.createElementVNode("div",Yv,[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",Gv,[e.renderSlot(n.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])]),t.subtitle?(e.openBlock(),e.createElementBlock("p",Kv,[e.renderSlot(n.$slots,"subtitle",{},()=>[e.createTextVNode(e.toDisplayString(t.subtitle),1)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Xv,[e.renderSlot(n.$slots,"default")])],2)],2))}},Qv={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())}}},Jv={class:"container mx-auto px-4 relative z-10"},Zv={class:"grid lg:grid-cols-10 gap-8 items-center min-h-screen"},eh={class:"lg:col-span-6 text-white text-center lg:text-left space-y-6"},th={class:"mb-6"},ah={class:"text-4xl lg:text-6xl font-bold mb-2"},nh={class:"text-white"},oh={class:"flex items-center justify-center lg:justify-start mb-6"},lh={class:"text-3xl lg:text-4xl font-bold text-white"},rh={class:"lg:col-span-4"},sh={class:"bg-white rounded-lg shadow-xl p-6 lg:p-8 max-w-md mx-auto"},ih={key:0,class:"mb-6"},ch={class:"text-center"},dh={class:"text-2xl font-bold text-gray-900"},uh={key:0,class:"text-gray-600 mt-2"},mh={class:"space-y-6"},fh={key:1,class:"mt-6"},ph={key:0,class:"mt-6 text-center"},gh={class:"absolute bottom-4 right-4 text-right"},vh={class:"flex items-end justify-end mb-2"},hh={class:"text-right mr-3"},yh={class:"text-red-500 font-bold text-xs"},bh={class:"text-white text-xs"},xh={class:"text-white/70 text-xs"},kh={class:"w-8 h-8 bg-red-500 rounded flex items-center justify-center text-white font-bold text-xs"},wh={class:"text-white/70 text-xs"},Ch={class:"absolute bottom-4 left-4 flex gap-2"},Bh=["href"];function Vh(t,n,a,o,l,r){const s=e.resolveComponent("router-view"),i=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",Jv,[e.createElementVNode("div",Zv,[e.createElementVNode("div",eh,[e.createElementVNode("div",th,[e.createElementVNode("div",ah,[e.createElementVNode("span",{style:e.normalizeStyle({color:a.primaryColor})},e.toDisplayString(a.primaryLogoPrefix),5),e.createElementVNode("span",nh,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",oh,[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",lh,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",rh,[e.createElementVNode("div",sh,[t.$slots["card-header"]||a.title?(e.openBlock(),e.createElementBlock("div",ih,[e.renderSlot(t.$slots,"card-header",{},()=>[e.createElementVNode("div",ch,[e.createElementVNode("h1",dh,e.toDisplayString(a.title),1),a.subtitle?(e.openBlock(),e.createElementBlock("p",uh,e.toDisplayString(a.subtitle),1)):e.createCommentVNode("",!0)])])])):e.createCommentVNode("",!0),e.createElementVNode("div",mh,[e.createVNode(s)]),t.$slots["card-footer"]?(e.openBlock(),e.createElementBlock("div",fh,[e.renderSlot(t.$slots,"card-footer")])):e.createCommentVNode("",!0)]),t.$slots.links?(e.openBlock(),e.createElementBlock("div",ph,[e.renderSlot(t.$slots,"links")])):e.createCommentVNode("",!0)])])]),e.createElementVNode("div",gh,[e.createElementVNode("div",vh,[e.createElementVNode("div",hh,[e.createElementVNode("div",yh,e.toDisplayString(a.companyName),1),e.createElementVNode("div",bh,e.toDisplayString(a.companyType),1),e.createElementVNode("div",xh,e.toDisplayString(a.companyTagline),1)]),e.createElementVNode("div",kh,e.toDisplayString(a.companyInitials),1)]),e.createElementVNode("div",wh,[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",Ch,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.socialLinks,c=>(e.openBlock(),e.createElementBlock("a",{key:c.name,href:c.url,class:e.normalizeClass(["w-8 h-7 flex items-center justify-center rounded text-xs transition-colors",c.variant==="primary"?"bg-blue-600 hover:bg-blue-700 text-white":c.variant==="info"?"bg-cyan-500 hover:bg-cyan-600 text-white":"bg-gray-600 hover:bg-gray-700 text-white"])},[e.createVNode(i,{icon:["fab",c.icon]},null,8,["icon"])],10,Bh))),128))])],4)}const nl=Vt(Qv,[["render",Vh]]),Eh={class:"min-h-screen bg-gray-50"},Sh={class:"flex-1"},Nh={key:0,class:"bg-white border-b border-gray-200"},$h={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-4"},zh={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8"},ol={__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"),l=e.resolveComponent("MainNavigation"),r=e.resolveComponent("Button"),s=e.resolveComponent("Header"),i=e.resolveComponent("Breadcrumb"),c=e.resolveComponent("Text"),f=e.resolveComponent("Footer");return e.openBlock(),e.createElementBlock("div",Eh,[e.createVNode(s,null,{logo:e.withCtx(()=>[e.renderSlot(n.$slots,"logo",{},()=>[e.createVNode(o)])]),navigation:e.withCtx(()=>[e.renderSlot(n.$slots,"navigation",{},()=>[e.createVNode(l,{items:t.navigationItems},null,8,["items"])])]),actions:e.withCtx(()=>[e.renderSlot(n.$slots,"header-actions",{},()=>[e.createVNode(r,{variant:"ghost",size:"sm"},{default:e.withCtx(()=>[...a[0]||(a[0]=[e.createTextVNode(" Sign In ",-1)])]),_:1}),e.createVNode(r,{size:"sm"},{default:e.withCtx(()=>[...a[1]||(a[1]=[e.createTextVNode(" Get Started ",-1)])]),_:1})])]),_:3}),e.createElementVNode("main",Sh,[t.showBreadcrumb?(e.openBlock(),e.createElementBlock("div",Nh,[e.createElementVNode("div",$h,[e.renderSlot(n.$slots,"breadcrumb",{},()=>[e.createVNode(i,{items:t.breadcrumbItems},null,8,["items"])])])])):e.createCommentVNode("",!0),e.createElementVNode("div",zh,[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(c,{class:"text-gray-600 max-w-md"},{default:e.withCtx(()=>[...a[2]||(a[2]=[e.createTextVNode(" Your application description goes here. ",-1)])]),_:1})])]),_:3})])}}},Dh={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,l=e.ref(!1),r=e.ref(!1),s=e.ref(navigator.onLine),i=e.ref(`err_${Date.now()}_${Math.random().toString(36).substr(2,9)}`),c=e.ref(!1),f=()=>{s.value=navigator.onLine};e.onMounted(()=>{window.addEventListener("online",f),window.addEventListener("offline",f)}),e.onUnmounted(()=>{window.removeEventListener("online",f),window.removeEventListener("offline",f)});const x=e.computed(()=>{const g={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 g[t.errorType]||g[404]}),C=e.computed(()=>x.value),$=e.computed(()=>t.errorTitle||C.value.title),E=e.computed(()=>t.errorMessage||C.value.message),B=e.computed(()=>C.value.homeButtonIcon||"🏠"),w=e.computed(()=>t.showAdditionalInfo?C.value.additionalInfo:null),b=()=>{o?o.push(t.homeUrl):window.location.href=t.homeUrl},v=()=>{o&&window.history.length>1?o.back():window.history.length>1?window.history.back():b(),n("back")},h=async()=>{l.value=!0;try{await new Promise(g=>setTimeout(g,1e3)),window.location.reload()}catch(g){console.error("Retry failed:",g)}finally{l.value=!1}n("retry")},k=e.computed(()=>["min-h-screen relative flex items-center justify-center","px-4 sm:px-6 lg:px-8"]),z=e.computed(()=>["absolute inset-0 -z-10"]),V=e.computed(()=>["w-full max-w-2xl mx-auto text-center"]),D=e.computed(()=>["mb-8"]),j=e.computed(()=>["space-y-8"]),K=e.computed(()=>["flex justify-center mb-6"]),_=e.computed(()=>["w-32 h-32 flex items-center justify-center"]),S=e.computed(()=>["space-y-4"]),d=e.computed(()=>["text-6xl font-bold text-slate-300 mb-4"]),y=e.computed(()=>["text-3xl font-bold text-slate-900"]),u=e.computed(()=>["text-lg text-slate-600 max-w-lg mx-auto"]),F=e.computed(()=>["mt-8"]),M=e.computed(()=>["mt-8"]),p=e.computed(()=>["mt-6"]);return{isRetrying:l,reportSent:r,isOnline:s,errorId:i,isDev:c,errorConfig:C,title:$,message:E,homeButtonIcon:B,additionalInfoConfig:w,goHome:b,goBack:v,retry:h,layoutClasses:k,backgroundClasses:z,contentClasses:V,headerClasses:D,errorContentClasses:j,illustrationClasses:K,iconContainerClasses:_,detailsClasses:S,codeClasses:d,titleClasses:y,messageClasses:u,actionsClasses:F,additionalInfoClasses:M,helpClasses:p}}},Th={class:"flex justify-center"},Fh={class:"flex items-center gap-3"},Ah={class:"text-2xl font-bold text-slate-900"},Mh={key:1,class:"bg-red-100 border border-red-200 rounded-lg p-4 mx-auto max-w-md mb-6"},Lh={class:"flex flex-col sm:flex-row gap-4 justify-center"},Ph=["disabled"],jh={key:0,class:"animate-spin"},Oh={key:1},Ih=["disabled"],_h={key:0},Rh={key:1},Uh={key:0,class:"mt-8 max-w-md mx-auto"},qh={class:"bg-white rounded-lg border border-slate-200 shadow-sm p-6"},Hh={class:"text-lg font-semibold text-slate-900 mb-4"},Wh={class:"space-y-3"},Yh={class:"text-sm text-slate-600"},Gh=["href"],Kh={key:5,class:"text-xs text-slate-400 font-mono mt-4"};function Xh(t,n,a,o,l,r){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",Th,[e.renderSlot(t.$slots,"logo",{},()=>[e.createElementVNode("div",Fh,[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",Ah,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",Mh,[...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",Lh,[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]=(...s)=>o.goHome&&o.goHome(...s))},[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]=(...s)=>o.goBack&&o.goBack(...s))},[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]=(...s)=>o.retry&&o.retry(...s))},[o.isRetrying?(e.openBlock(),e.createElementBlock("span",jh,"↻")):(e.openBlock(),e.createElementBlock("span",Oh,"🔄")),e.createTextVNode(" "+e.toDisplayString(o.isRetrying?"Retrying...":a.retryButtonText),1)],8,Ph)):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]=s=>t.$emit("contact-support"))},[o.reportSent?(e.openBlock(),e.createElementBlock("span",_h,"✓")):(e.openBlock(),e.createElementBlock("span",Rh,"📝")),e.createTextVNode(" "+e.toDisplayString(o.reportSent?"Report Sent":"Contact Support"),1)],8,Ih)):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",Uh,[e.createElementVNode("div",qh,[e.createElementVNode("h3",Hh,e.toDisplayString(o.additionalInfoConfig.title),1),e.createElementVNode("ul",Wh,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.additionalInfoConfig.items,(s,i)=>(e.openBlock(),e.createElementBlock("li",{key:i,class:"flex items-start gap-3 text-sm text-slate-600"},[e.createElementVNode("span",{class:e.normalizeClass(`w-4 h-4 text-${s.iconColor||"slate-400"} flex-shrink-0 mt-0.5`)},e.toDisplayString(s.icon),3),e.createElementVNode("span",null,e.toDisplayString(s.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",Yh,[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,Gh)):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0),o.isDev?(e.openBlock(),e.createElementBlock("div",Kh," Error ID: "+e.toDisplayString(o.errorId),1)):e.createCommentVNode("",!0)],2)],2)],2)}const ll=Vt(Dh,[["render",Xh]]),Qh={class:"w-full h-full relative"},Jh={key:0,class:"w-full h-full flex items-center justify-center"},Zh=["width","height","viewBox"],ey=["d","fill","stroke","stroke-width","onMouseenter","onClick"],ty=["cx","cy","r","fill"],ay={key:1},ny=["x","y"],oy=["x","y"],ly={key:2},ry=["x","y"],sy={key:3},iy=["transform"],cy=["fill"],dy={class:"bg-slate-900 text-white px-4 py-3 rounded-lg shadow-2xl border border-slate-700 min-w-[180px]"},uy={class:"flex items-center gap-2 mb-1.5"},my={class:"font-semibold text-sm"},fy={class:"flex items-baseline gap-2 ml-5"},py={class:"text-2xl font-bold"},gy={class:"mt-1 ml-5"},vy={class:"text-xs text-slate-300"},Ja={__name:"PieChart",props:{data:{type:Array,required:!0},labels:{type:Array,default:()=>[]},colors:{type:Array,default:()=>["#3b82f6","#ef4444","#10b981","#f59e0b","#8b5cf6","#ec4899","#14b8a6","#f97316"]},width:{type:Number,default:400},height:{type:Number,default:300},doughnut:{type:Boolean,default:!1},innerRadiusRatio:{type:Number,default:.6},showValues:{type:Boolean,default:!0},showPercentages:{type:Boolean,default:!0},showLegend:{type:Boolean,default:!0},showCenterText:{type:Boolean,default:!0},legendPosition:{type:String,default:"bottom",validator:t=>["bottom","right"].includes(t)},strokeColor:{type:String,default:"#ffffff"},strokeWidth:{type:Number,default:2},centerFill:{type:String,default:"#ffffff"},sliceClasses:{type:String,default:"transition-all duration-200 hover:opacity-80 cursor-pointer"},valueLabelClasses:{type:String,default:"fill-white text-sm font-bold drop-shadow-md"},centerTextClasses:{type:String,default:"fill-slate-900 text-2xl font-bold"},centerLabelClasses:{type:String,default:"fill-slate-600 text-sm"},legendTextClasses:{type:String,default:"fill-slate-700 text-xs font-medium"}},emits:["slice-click","slice-hover"],setup(t,{emit:n}){const a=t,o=n,l=e.ref({visible:!1,x:0,y:0,label:"",value:0,percentage:"0",color:""}),r=e.computed(()=>a.data.reduce((z,V)=>z+(V||0),0)||0),s=e.computed(()=>a.data.length>0&&r.value>0),i=e.computed(()=>a.showLegend&&a.legendPosition==="right"?a.width/3:a.width/2),c=e.computed(()=>{const k=a.showLegend&&a.legendPosition==="bottom"?Math.ceil(a.data.length/2)*25:0;return(a.height-k)/2}),f=e.computed(()=>{const k=a.showLegend&&a.legendPosition==="bottom"?Math.ceil(a.data.length/2)*25:0,z=a.height-k,V=a.showLegend&&a.legendPosition==="right"?a.width*.6:a.width;return Math.min(V,z)/2-40}),x=e.computed(()=>a.doughnut?f.value*a.innerRadiusRatio:0),C=e.computed(()=>{if(!s.value)return[];const k=r.value;let z=-Math.PI/2;return a.data.map((V,D)=>{const j=V||0,K=(j/k*100).toFixed(1),_=j/k*2*Math.PI,S=z+_,d=$(i.value,c.value,f.value,x.value,z,S),y=a.doughnut?(f.value+x.value)/2:f.value*.7,u=z+_/2,F=i.value+Math.cos(u)*y,M=c.value+Math.sin(u)*y,p={value:j,percentage:K,path:d,labelX:F,labelY:M,label:a.labels[D]||`Item ${D+1}`,startAngle:z,endAngle:S};return z=S,p}).filter(V=>V.value>0)}),$=(k,z,V,D,j,K)=>{const _=k+V*Math.cos(j),S=z+V*Math.sin(j),d=k+V*Math.cos(K),y=z+V*Math.sin(K),u=K-j>Math.PI?1:0;if(D===0)return`M ${k} ${z} L ${_} ${S} A ${V} ${V} 0 ${u} 1 ${d} ${y} Z`;{const F=k+D*Math.cos(K),M=z+D*Math.sin(K),p=k+D*Math.cos(j),g=z+D*Math.sin(j);return`M ${_} ${S} A ${V} ${V} 0 ${u} 1 ${d} ${y} L ${F} ${M} A ${D} ${D} 0 ${u} 0 ${p} ${g} Z`}},E=k=>a.colors[k%a.colors.length],B=k=>{if(a.legendPosition==="right")return a.width*.65;const V=k%2;return a.width/4+V*(a.width/2)},w=k=>{if(a.legendPosition==="right")return 40+k*25;const V=Math.floor(k/2),D=Math.ceil(a.data.length/2)*25;return a.height-D+20+V*25},b=(k,z,V)=>{l.value={visible:!0,x:k.clientX,y:k.clientY,label:z.label,value:z.value,percentage:z.percentage,color:E(V)},o("slice-hover",{value:z.value,index:V,label:z.label,percentage:z.percentage})},v=()=>{l.value.visible=!1},h=(k,z)=>{o("slice-click",{value:k.value,index:z,label:k.label,percentage:k.percentage})};return(k,z)=>(e.openBlock(),e.createElementBlock("div",Qh,[s.value?(e.openBlock(),e.createElementBlock("svg",{key:1,width:t.width,height:t.height,viewBox:`0 0 ${t.width} ${t.height}`,class:"overflow-visible"},[e.createElementVNode("g",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(V,D)=>(e.openBlock(),e.createElementBlock("path",{key:`slice-${D}`,d:V.path,fill:E(D),stroke:t.strokeColor,"stroke-width":t.strokeWidth,class:e.normalizeClass(t.sliceClasses),onMouseenter:j=>b(j,V,D),onMouseleave:v,onClick:j=>h(V,D)},null,42,ey))),128))]),t.doughnut?(e.openBlock(),e.createElementBlock("circle",{key:0,cx:i.value,cy:c.value,r:x.value,fill:t.centerFill},null,8,ty)):e.createCommentVNode("",!0),t.doughnut&&t.showCenterText?(e.openBlock(),e.createElementBlock("g",ay,[e.createElementVNode("text",{x:i.value,y:c.value-5,class:e.normalizeClass(t.centerTextClasses),"text-anchor":"middle","dominant-baseline":"middle"},e.toDisplayString(r.value),11,ny),e.createElementVNode("text",{x:i.value,y:c.value+15,class:e.normalizeClass(t.centerLabelClasses),"text-anchor":"middle","dominant-baseline":"middle"}," Total ",10,oy)])):e.createCommentVNode("",!0),t.showValues?(e.openBlock(),e.createElementBlock("g",ly,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(V,D)=>(e.openBlock(),e.createElementBlock("text",{key:`value-${D}`,x:V.labelX,y:V.labelY,class:e.normalizeClass(t.valueLabelClasses),"text-anchor":"middle","dominant-baseline":"middle"},e.toDisplayString(t.showPercentages?`${V.percentage}%`:V.value),11,ry))),128))])):e.createCommentVNode("",!0),t.showLegend?(e.openBlock(),e.createElementBlock("g",sy,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(V,D)=>(e.openBlock(),e.createElementBlock("g",{key:`legend-${D}`,transform:`translate(${B(D)}, ${w(D)})`},[e.createElementVNode("rect",{width:12,height:12,fill:E(D),rx:"2"},null,8,cy),e.createElementVNode("text",{x:18,y:10,class:e.normalizeClass(t.legendTextClasses)},e.toDisplayString(V.label),3)],8,iy))),128))])):e.createCommentVNode("",!0)],8,Zh)):(e.openBlock(),e.createElementBlock("div",Jh,[...z[0]||(z[0]=[e.createStaticVNode('<div class="text-center"><div class="text-slate-300 mb-2"><svg class="w-16 h-16 mx-auto" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11 3.055A9.001 9.001 0 1020.945 13H11V3.055z"></path><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M20.488 9H15V3.512A9.025 9.025 0 0120.488 9z"></path></svg></div><p class="text-sm text-slate-500"> No data available </p></div>',1)])])),l.value.visible?(e.openBlock(),e.createElementBlock("div",{key:2,style:e.normalizeStyle({position:"fixed",left:`${l.value.x}px`,top:`${l.value.y}px`,transform:"translate(-50%, -120%)",pointerEvents:"none",zIndex:9999}),class:"animate-in fade-in duration-200"},[e.createElementVNode("div",dy,[e.createElementVNode("div",uy,[e.createElementVNode("div",{style:e.normalizeStyle({backgroundColor:l.value.color}),class:"w-3 h-3 rounded-full shadow-sm"},null,4),e.createElementVNode("p",my,e.toDisplayString(l.value.label),1)]),e.createElementVNode("div",fy,[e.createElementVNode("span",py,e.toDisplayString(l.value.value),1),z[1]||(z[1]=e.createElementVNode("span",{class:"text-xs text-slate-400"},"tasks",-1))]),e.createElementVNode("div",gy,[e.createElementVNode("span",vy,e.toDisplayString(l.value.percentage)+"% of total",1)]),z[2]||(z[2]=e.createElementVNode("div",{class:"absolute bottom-0 left-1/2 transform -translate-x-1/2 translate-y-1/2 rotate-45 w-2 h-2 bg-slate-900 border-r border-b border-slate-700"},null,-1))])],4)):e.createCommentVNode("",!0)]))}},hy={key:0,class:"flex items-center justify-between px-6 py-4 border-b border-slate-200 bg-gradient-to-r from-slate-50 to-slate-100 flex-shrink-0"},yy={class:"flex items-center gap-3"},by={class:"font-semibold text-lg text-slate-900"},xy={class:"flex items-center gap-2"},ky=["disabled"],wy={key:1,class:"absolute top-16 right-4 z-20 bg-white rounded-lg shadow-xl border border-slate-200 p-4 min-w-[250px]"},Cy={class:"flex items-center justify-between mb-3"},By={class:"space-y-3"},Vy=["for"],Ey=["id","onClick"],Sy={key:2,class:"absolute top-16 right-4 z-20 bg-white rounded-lg shadow-xl border border-slate-200 p-4 min-w-[280px]"},Ny={class:"flex items-center justify-between mb-3"},$y={class:"space-y-2"},zy={class:"text-slate-700"},Dy={class:"px-2 py-1 bg-slate-100 border border-slate-300 rounded text-xs font-mono"},Ty={class:"relative flex-1 overflow-hidden"},Fy={key:0,class:"absolute inset-0 bg-white/90 backdrop-blur-sm z-10 flex items-center justify-center"},Ay={class:"w-full h-full flex items-center justify-center"},My={key:3,class:"border-t border-slate-200 px-6 py-3 bg-slate-50 flex-shrink-0"},rl={__name:"DashboardWidget",props:{id:{type:String,required:!0},title:{type:String,required:!0},icon:{type:String,default:null},requiredRoles:{type:Function,default:null},loading:{type:Boolean,default:!1},height:{type:String,default:"auto"},maxHeight:{type:String,default:"none"},minHeight:{type:String,default:"200px"},width:{type:String,default:"100%"},showRefresh:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},padding:{type:String,default:"normal"},hasRole:{type:Function,default:()=>()=>!1},chartType:{type:String,default:null},chartData:{type:Object,default:null},chartOptions:{type:Object,default:()=>({})},customizationOptions:{type:Array,default:()=>[]}},emits:["refresh","dragstart","dragend","customize","keypress"],setup(t,{emit:n}){const a=t,o=n,l=e.computed(()=>a.requiredRoles?a.requiredRoles(a.hasRole):!0),r=e.computed(()=>({width:a.width,height:a.height!=="auto"?a.height:void 0,maxHeight:a.maxHeight!=="none"?a.maxHeight:void 0,minHeight:a.minHeight})),s={none:"",small:"p-3",normal:"p-4",large:"p-6"},i=e.ref(!1),c=e.ref({});e.onMounted(()=>{a.customizationOptions.forEach(S=>{c.value[S.id]=S.default??!0})});const f=()=>{i.value=!i.value},x=(S,d)=>{c.value[S]=d,o("customize",{...c.value})},C=e.ref(null),$=e.ref(!1),E=S=>{if(!$.value)return;const d={r:()=>o("refresh"),R:()=>o("refresh"),c:()=>f(),C:()=>f(),Escape:()=>i.value=!1,h:()=>b.value=!b.value,H:()=>b.value=!b.value,"?":()=>b.value=!b.value};d[S.key]&&(S.preventDefault(),d[S.key](),o("keypress",S.key))},B=()=>{$.value=!0},w=()=>{$.value=!1},b=e.ref(!1),v=[{key:"R",description:"Refresh widget"},{key:"C",description:"Open customization"},{key:"Esc",description:"Close panels"},{key:"?",description:"Toggle help"}],h=e.ref(!1);let k=null;const z=S=>{if(!S.dataTransfer)return;h.value=!0,o("dragstart",a.id);const d=S.target.getBoundingClientRect();k=S.target.cloneNode(!0),Object.assign(k.style,{position:"fixed",width:`${d.width}px`,height:`${d.height}px`,pointerEvents:"none",opacity:"0.8",zIndex:"1000",left:`${S.clientX-d.width/2}px`,top:`${S.clientY-d.height/2}px`}),document.body.appendChild(k),S.dataTransfer.setDragImage(k,d.width/2,d.height/2),S.dataTransfer.effectAllowed="move",S.dataTransfer.setData("text/plain",a.id)},V=S=>{k&&S.clientX&&S.clientY&&(k.style.left=`${S.clientX-k.offsetWidth/2}px`,k.style.top=`${S.clientY-k.offsetHeight/2}px`)},D=()=>{h.value=!1,o("dragend",a.id),k&&(document.body.removeChild(k),k=null)},j=e.computed(()=>{if(!a.chartType||!a.chartData)return null;const S=a.chartData.datasets?.[0]?.data||a.chartData.data||[],d=a.chartData.labels||[],y=S.filter(g=>g!=null&&!isNaN(g));if(y.length===0)return null;const u=a.chartType==="pie"||a.chartType==="doughnut",F=u?450:400,M=u?450:400,p={data:y,labels:d.slice(0,y.length),width:F,height:M,...a.chartOptions};if(c.value.legend!==void 0&&(p.showLegend=c.value.legend),c.value.grid!==void 0&&(p.showGrid=c.value.grid),c.value.values!==void 0&&(p.showValues=c.value.values),c.value.percentages!==void 0&&(p.showPercentages=c.value.percentages),c.value.points!==void 0&&(p.showPoints=c.value.points),c.value.fillArea!==void 0&&(p.fillArea=c.value.fillArea),a.chartData.datasets?.[0]?.backgroundColor){const g=a.chartData.datasets[0].backgroundColor;p.colors=Array.isArray(g)?g:[g]}return a.chartData.datasets?.[0]?.borderColor&&(p.lineColor=a.chartData.datasets[0].borderColor),p}),K=e.computed(()=>{switch(a.chartType){case"bar":return va;case"line":return ha;case"pie":return Ja;case"doughnut":return Ja;default:return null}}),_=e.computed(()=>a.chartType==="doughnut");return e.onMounted(()=>{window.addEventListener("dragover",V),window.addEventListener("keydown",E)}),e.onUnmounted(()=>{window.removeEventListener("dragover",V),window.removeEventListener("keydown",E),k&&document.body.removeChild(k)}),(S,d)=>l.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"widgetRef",ref:C,draggable:"true",tabindex:"0",style:e.normalizeStyle(r.value),class:e.normalizeClass(e.unref(N)("bg-white rounded-xl shadow-sm border border-slate-200 overflow-hidden transition-all select-none flex flex-col relative",h.value?"opacity-50 scale-95":"hover:shadow-lg cursor-move",$.value?"ring-2 ring-blue-400 ring-offset-2":"")),onDragstart:z,onDragend:D,onFocus:B,onBlur:w},[t.showHeader?(e.openBlock(),e.createElementBlock("div",hy,[e.createElementVNode("div",yy,[t.icon?(e.openBlock(),e.createBlock(H,{key:0,icon:t.icon,class:"w-5 h-5 text-slate-700"},null,8,["icon"])):e.createCommentVNode("",!0),e.createElementVNode("h3",by,e.toDisplayString(t.title),1)]),e.createElementVNode("div",xy,[e.renderSlot(S.$slots,"header-actions"),e.createElementVNode("button",{class:"p-2 rounded-lg hover:bg-white/80 transition-all duration-200 hover:scale-105 active:scale-95",title:"Keyboard shortcuts (?)",onClick:d[0]||(d[0]=y=>b.value=!b.value)},[e.createVNode(H,{icon:"circle-info",class:"w-4 h-4 text-slate-600"})]),t.customizationOptions.length>0?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(["p-2 rounded-lg hover:bg-white/80 transition-all duration-200 hover:scale-105 active:scale-95",{"bg-blue-100":i.value}]),title:"Customize (C)",onClick:f},[e.createVNode(H,{icon:"gear",class:"w-4 h-4 text-slate-600"})],2)):e.createCommentVNode("",!0),t.showRefresh?(e.openBlock(),e.createElementBlock("button",{key:1,class:"p-2 rounded-lg hover:bg-white/80 transition-all duration-200 hover:scale-105 active:scale-95",disabled:t.loading,title:"Refresh (R)",onClick:d[1]||(d[1]=y=>S.$emit("refresh"))},[e.createVNode(H,{icon:"refresh",class:e.normalizeClass(["w-4 h-4 text-slate-600 transition-transform duration-500",{"animate-spin":t.loading}])},null,8,["class"])],8,ky)):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),i.value?(e.openBlock(),e.createElementBlock("div",wy,[e.createElementVNode("div",Cy,[d[4]||(d[4]=e.createElementVNode("h4",{class:"font-semibold text-sm text-slate-900"}," Customize Widget ",-1)),e.createElementVNode("button",{class:"p-1 rounded hover:bg-slate-100",onClick:d[2]||(d[2]=y=>i.value=!1)},[e.createVNode(H,{icon:"x",class:"w-4 h-4 text-slate-600"})])]),e.createElementVNode("div",By,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.customizationOptions,y=>(e.openBlock(),e.createElementBlock("div",{key:y.id,class:"flex items-center justify-between"},[e.createElementVNode("label",{for:`setting-${y.id}`,class:"text-sm text-slate-700 cursor-pointer"},e.toDisplayString(y.label),9,Vy),e.createElementVNode("button",{id:`setting-${y.id}`,class:e.normalizeClass(["relative inline-flex h-6 w-11 items-center rounded-full transition-colors",c.value[y.id]?"bg-blue-600":"bg-slate-300"]),onClick:u=>x(y.id,!c.value[y.id])},[e.createElementVNode("span",{class:e.normalizeClass(["inline-block h-4 w-4 transform rounded-full bg-white transition-transform",c.value[y.id]?"translate-x-6":"translate-x-1"])},null,2)],10,Ey)]))),128))])])):e.createCommentVNode("",!0),b.value?(e.openBlock(),e.createElementBlock("div",Sy,[e.createElementVNode("div",Ny,[d[5]||(d[5]=e.createElementVNode("h4",{class:"font-semibold text-sm text-slate-900"}," Keyboard Shortcuts ",-1)),e.createElementVNode("button",{class:"p-1 rounded hover:bg-slate-100",onClick:d[3]||(d[3]=y=>b.value=!1)},[e.createVNode(H,{icon:"x",class:"w-4 h-4 text-slate-600"})])]),e.createElementVNode("div",$y,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(v,y=>e.createElementVNode("div",{key:y.key,class:"flex items-center justify-between text-sm"},[e.createElementVNode("span",zy,e.toDisplayString(y.description),1),e.createElementVNode("kbd",Dy,e.toDisplayString(y.key),1)])),64))])])):e.createCommentVNode("",!0),e.createElementVNode("div",Ty,[t.loading?(e.openBlock(),e.createElementBlock("div",Fy,[e.createVNode(Oe,{type:"spin",size:"medium",color:"#3b82f6"})])):e.createCommentVNode("",!0),t.chartType&&t.chartData&&K.value&&j.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["w-full h-full flex items-center justify-center p-4",s[t.padding]])},[e.createElementVNode("div",Ay,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(K.value),e.mergeProps(j.value,{doughnut:_.value}),null,16,["doughnut"]))])],2)):(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(["overflow-auto h-full",s[t.padding]])},[e.renderSlot(S.$slots,"default")],2))]),S.$slots.footer?(e.openBlock(),e.createElementBlock("div",My,[e.renderSlot(S.$slots,"footer")])):e.createCommentVNode("",!0)],38)):e.createCommentVNode("",!0)}},Jt={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=`
560
560
  position: fixed;
561
561
  z-index: 9999;
562
562
  background-color: rgba(0, 0, 0, 0.9);
@@ -573,33 +573,33 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
573
573
  width: 0;
574
574
  height: 0;
575
575
  border-style: solid;
576
- `,o.appendChild(l),t._tooltipEl=o,t._tooltipArrow=l,t._tooltipPosition=a;const r=()=>{if(!o.parentNode)return;const u=t.getBoundingClientRect(),b=o.getBoundingClientRect();if(u.width===0||u.height===0){o.style.opacity="0";return}let C,z;switch(a){case"bottom":z=u.left+u.width/2-b.width/2,C=u.bottom+8;break;case"left":z=u.left-b.width-8,C=u.top+u.height/2-b.height/2;break;case"right":z=u.right+8,C=u.top+u.height/2-b.height/2;break;default:z=u.left+u.width/2-b.width/2,C=u.top-b.height-8}const B=8;z=Math.max(B,Math.min(z,window.innerWidth-b.width-B)),C=Math.max(B,Math.min(C,window.innerHeight-b.height-B)),o.style.left=`${z}px`,o.style.top=`${C}px`},s=()=>{const u=`
576
+ `,o.appendChild(l),t._tooltipEl=o,t._tooltipArrow=l,t._tooltipPosition=a;const r=()=>{if(!o.parentNode)return;const f=t.getBoundingClientRect(),x=o.getBoundingClientRect();if(f.width===0||f.height===0){o.style.opacity="0";return}let C,$;switch(a){case"bottom":$=f.left+f.width/2-x.width/2,C=f.bottom+8;break;case"left":$=f.left-x.width-8,C=f.top+f.height/2-x.height/2;break;case"right":$=f.right+8,C=f.top+f.height/2-x.height/2;break;default:$=f.left+f.width/2-x.width/2,C=f.top-x.height-8}const E=8;$=Math.max(E,Math.min($,window.innerWidth-x.width-E)),C=Math.max(E,Math.min(C,window.innerHeight-x.height-E)),o.style.left=`${$}px`,o.style.top=`${C}px`},s=()=>{const f=`
577
577
  position: absolute;
578
578
  width: 0;
579
579
  height: 0;
580
580
  border-style: solid;
581
- `;switch(a){case"bottom":l.style.cssText=u+`
581
+ `;switch(a){case"bottom":l.style.cssText=f+`
582
582
  border-width: 0 5px 5px 5px;
583
583
  border-color: transparent transparent rgba(0, 0, 0, 0.9) transparent;
584
584
  top: -5px;
585
585
  left: 50%;
586
586
  transform: translateX(-50%);
587
- `;break;case"left":l.style.cssText=u+`
587
+ `;break;case"left":l.style.cssText=f+`
588
588
  border-width: 5px 0 5px 5px;
589
589
  border-color: transparent transparent transparent rgba(0, 0, 0, 0.9);
590
590
  right: -5px;
591
591
  top: 50%;
592
592
  transform: translateY(-50%);
593
- `;break;case"right":l.style.cssText=u+`
593
+ `;break;case"right":l.style.cssText=f+`
594
594
  border-width: 5px 5px 5px 0;
595
595
  border-color: transparent rgba(0, 0, 0, 0.9) transparent transparent;
596
596
  left: -5px;
597
597
  top: 50%;
598
598
  transform: translateY(-50%);
599
- `;break;default:l.style.cssText=u+`
599
+ `;break;default:l.style.cssText=f+`
600
600
  border-width: 5px 5px 0 5px;
601
601
  border-color: rgba(0, 0, 0, 0.9) transparent transparent transparent;
602
602
  bottom: -5px;
603
603
  left: 50%;
604
604
  transform: translateX(-50%);
605
- `}},i=()=>{document.body.appendChild(o),s(),r(),setTimeout(()=>{o.style.opacity="1"},10),window.addEventListener("scroll",r,!0),window.addEventListener("resize",r)},c=()=>{o.style.opacity="0",window.removeEventListener("scroll",r,!0),window.removeEventListener("resize",r),setTimeout(()=>{o.parentNode&&document.body.removeChild(o)},200)};t.addEventListener("mouseenter",i),t.addEventListener("mouseleave",c),t.addEventListener("click",c),t._tooltipShowFn=i,t._tooltipHideFn=c,t._tooltipRepositionFn=r},updated(t,n){if(t._tooltipEl){const a=t._tooltipEl.firstChild;a&&a.nodeType===Node.TEXT_NODE&&(a.textContent=n.value||"")}},unmounted(t){t._tooltipEl&&t._tooltipEl.parentNode&&document.body.removeChild(t._tooltipEl),t._tooltipShowFn&&t.removeEventListener("mouseenter",t._tooltipShowFn),t._tooltipHideFn&&(t.removeEventListener("mouseleave",t._tooltipHideFn),t.removeEventListener("click",t._tooltipHideFn)),t._tooltipRepositionFn&&(window.removeEventListener("scroll",t._tooltipRepositionFn,!0),window.removeEventListener("resize",t._tooltipRepositionFn))}},tb={class:"flex items-center justify-between mb-4"},ab={class:"text-lg font-semibold text-gray-900"},nb={class:"grid grid-cols-7 mb-2"},ob={class:"grid grid-cols-7 gap-1"},lb=["onClick"],rb={key:0,class:"flex gap-0.5 mt-1 justify-center flex-wrap max-w-full px-1"},sb=["title"],ib=["title"],cb={key:0,class:"mt-4 border-t pt-4"},db={class:"text-sm font-semibold text-gray-700 mb-2"},ub={class:"space-y-2"},mb=["onClick"],fb={class:"flex items-center gap-2"},pb={class:"font-medium"},gb={key:0,class:"text-xs text-gray-500 mt-1 ml-5"},vb={key:1,class:"mt-4 pt-4 border-t flex items-center justify-center gap-6"},sl={__name:"EventsCalendar",props:{events:{type:Array,default:()=>[{id:1,title:"Team Meeting",date:"2025-06-05",time:"10:00 AM",color:"blue"},{id:2,title:"Project Deadline",date:"2025-06-12",time:"5:00 PM",color:"red"},{id:3,title:"Lunch with Client",date:"2025-06-12",time:"12:30 PM",color:"green"},{id:4,title:"Code Review",date:"2025-06-18",time:"2:00 PM",color:"purple"},{id:5,title:"Sprint Planning",date:"2025-06-20",time:"9:00 AM",color:"orange"},{id:6,title:"Workshop",date:"2025-06-20",time:"3:00 PM",color:"blue"}]},size:{type:String,default:"default"}},emits:["select-date","select-event"],setup(t,{emit:n}){const a=t,o=n,l=O.cva("bg-white rounded-xl shadow-lg border border-gray-100",{variants:{size:{sm:"p-3 max-w-xs",default:"p-5 max-w-md",lg:"p-6 max-w-2xl",xl:"p-8 max-w-4xl",full:"p-8 w-full max-w-full"}},defaultVariants:{size:"default"}}),r=O.cva("inline-flex items-center justify-center rounded-lg transition-colors focus:outline-none focus:ring-2 focus:ring-offset-2",{variants:{variant:{default:"bg-blue-600 text-white hover:bg-blue-700 focus:ring-blue-500",ghost:"text-gray-600 hover:bg-gray-100 hover:text-gray-900 focus:ring-gray-300",outline:"border border-gray-300 text-gray-700 hover:bg-gray-50 focus:ring-gray-300"},size:{sm:"h-8 w-8",default:"h-10 w-10",lg:"h-12 w-12"}},defaultVariants:{variant:"default",size:"default"}}),s=O.cva("relative flex flex-col items-center justify-start p-2 rounded-lg cursor-pointer transition-all duration-200",{variants:{isCurrentMonth:{true:"text-gray-900",false:"text-gray-300"},isToday:{true:"bg-blue-50 ring-2 ring-blue-500 ring-inset font-bold",false:""},isSelected:{true:"bg-blue-600 text-white hover:bg-blue-700",false:"hover:bg-gray-100"},hasEvents:{true:"",false:""},size:{sm:"min-h-[52px]",default:"min-h-[60px]",lg:"min-h-[70px]",xl:"min-h-[80px]",full:"min-h-[90px]"}},compoundVariants:[{isSelected:!0,isToday:!0,class:"ring-white"}],defaultVariants:{isCurrentMonth:!0,isToday:!1,isSelected:!1,hasEvents:!1,size:"default"}}),i=O.cva("rounded-full",{variants:{color:{blue:"bg-blue-500",red:"bg-red-500",green:"bg-green-500",purple:"bg-purple-500",orange:"bg-orange-500",pink:"bg-pink-500",yellow:"bg-yellow-500",gray:"bg-gray-500"},size:{sm:"w-1.5 h-1.5",default:"w-2 h-2",lg:"w-2.5 h-2.5"}},defaultVariants:{color:"blue",size:"default"}}),c=O.cva("p-3 rounded-lg border transition-colors cursor-pointer",{variants:{color:{blue:"bg-blue-50 border-blue-200 hover:bg-blue-100",red:"bg-red-50 border-red-200 hover:bg-red-100",green:"bg-green-50 border-green-200 hover:bg-green-100",purple:"bg-purple-50 border-purple-200 hover:bg-purple-100",orange:"bg-orange-50 border-orange-200 hover:bg-orange-100",pink:"bg-pink-50 border-pink-200 hover:bg-pink-100",yellow:"bg-yellow-50 border-yellow-200 hover:bg-yellow-100",gray:"bg-gray-50 border-gray-200 hover:bg-gray-100"}},defaultVariants:{color:"blue"}}),u=e.ref(new Date),b=e.ref(null),C=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],z=e.computed(()=>u.value.toLocaleDateString("en-US",{month:"long",year:"numeric"})),B=e.computed(()=>{const _=u.value.getFullYear(),te=u.value.getMonth(),U=new Date(_,te,1),E=new Date(_,te+1,0),$=U.getDay(),L=E.getDate(),T=[],J=new Date;J.setHours(0,0,0,0);const q=new Date(_,te,0).getDate();for(let y=$-1;y>=0;y--){const d=q-y,I=g(new Date(_,te-1,d));T.push({dayNumber:d,date:I,isCurrentMonth:!1,isToday:!1,events:v(I)})}for(let y=1;y<=L;y++){const d=new Date(_,te,y),I=g(d);d.setHours(0,0,0,0),T.push({dayNumber:y,date:I,isCurrentMonth:!0,isToday:d.getTime()===J.getTime(),events:v(I)})}const p=42-T.length;for(let y=1;y<=p;y++){const d=g(new Date(_,te+1,y));T.push({dayNumber:y,date:d,isCurrentMonth:!1,isToday:!1,events:v(d)})}return T}),V=e.computed(()=>b.value?a.events.filter(_=>_.date===b.value):[]),k=e.computed(()=>b.value?new Date(b.value+"T00:00:00").toLocaleDateString("en-US",{weekday:"long",month:"long",day:"numeric"}):""),h=e.computed(()=>({sm:"sm",default:"default",lg:"default",xl:"lg",full:"lg"})[a.size]||"default");function g(_){return _.toISOString().split("T")[0]}function v(_){return a.events.filter(te=>te.date===_)}function x(){u.value=new Date(u.value.getFullYear(),u.value.getMonth()-1,1)}function D(){u.value=new Date(u.value.getFullYear(),u.value.getMonth()+1,1)}function S(_){b.value=_.date,o("select-date",{date:_.date,events:_.events})}function M(_){o("select-event",_)}return(_,te)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(l)({size:t.size}))},[e.createElementVNode("div",tb,[e.createElementVNode("button",{class:e.normalizeClass(e.unref(r)({variant:"ghost"})),onClick:x},[e.createVNode(K,{icon:"chevron-left",class:"w-5 h-5"})],2),e.createElementVNode("h2",ab,e.toDisplayString(z.value),1),e.createElementVNode("button",{class:e.normalizeClass(e.unref(r)({variant:"ghost"})),onClick:D},[e.createVNode(K,{icon:"chevron-right",class:"w-5 h-5"})],2)]),e.createElementVNode("div",nb,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(C,U=>e.createElementVNode("div",{key:U,class:"text-center text-sm font-medium text-gray-500 py-2"},e.toDisplayString(U),1)),64))]),e.createElementVNode("div",ob,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value,(U,E)=>(e.openBlock(),e.createElementBlock("div",{key:E,class:e.normalizeClass(e.unref(s)({isCurrentMonth:U.isCurrentMonth,isToday:U.isToday,isSelected:U.date===b.value,hasEvents:U.events.length>0,size:t.size})),onClick:$=>S(U)},[e.createElementVNode("span",{class:e.normalizeClass(["text-sm font-medium mb-1",t.size==="full"||t.size==="xl"?"text-base":""])},e.toDisplayString(U.dayNumber),3),U.events.length>0?(e.openBlock(),e.createElementBlock("div",rb,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(U.events.slice(0,3),($,L)=>(e.openBlock(),e.createElementBlock("span",{key:L,class:e.normalizeClass(e.unref(i)({color:$.color,size:h.value})),title:$.title},null,10,sb))),128)),U.events.length>3?(e.openBlock(),e.createElementBlock("span",{key:0,class:"text-xs text-gray-400 font-medium",title:`${U.events.length} total events`}," +"+e.toDisplayString(U.events.length-3),9,ib)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),U.events.length>0&&(t.size==="full"||t.size==="xl")?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["mt-1 text-xs px-1.5 py-0.5 rounded-full",[U.events[0].color==="green"?"bg-green-100 text-green-700":U.events[0].color==="orange"?"bg-orange-100 text-orange-700":"bg-gray-100 text-gray-700"]])},e.toDisplayString(U.events.length)+" "+e.toDisplayString(U.events.length===1?"event":"events"),3)):e.createCommentVNode("",!0)],10,lb))),128))]),V.value.length>0?(e.openBlock(),e.createElementBlock("div",cb,[e.createElementVNode("h3",db," Events for "+e.toDisplayString(k.value),1),e.createElementVNode("div",ub,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,U=>(e.openBlock(),e.createElementBlock("div",{key:U.id,class:e.normalizeClass(e.unref(c)({color:U.color})),onClick:E=>M(U)},[e.createElementVNode("div",fb,[e.createElementVNode("span",{class:e.normalizeClass(e.unref(i)({color:U.color,size:"lg"}))},null,2),e.createElementVNode("span",pb,e.toDisplayString(U.title),1)]),U.time?(e.openBlock(),e.createElementBlock("p",gb,e.toDisplayString(U.time),1)):e.createCommentVNode("",!0)],10,mb))),128))])])):e.createCommentVNode("",!0),t.size==="full"||t.size==="xl"?(e.openBlock(),e.createElementBlock("div",vb,[...te[0]||(te[0]=[e.createStaticVNode('<div class="flex items-center gap-2"><span class="w-3 h-3 rounded-full bg-green-500"></span><span class="text-xs text-gray-600 font-medium">Complied</span></div><div class="flex items-center gap-2"><span class="w-3 h-3 rounded-full bg-orange-500"></span><span class="text-xs text-gray-600 font-medium">Pending</span></div>',2)])])):e.createCommentVNode("",!0)],2))}},Za={Avatar:ao,Badge:ma,Button:me,Checkbox:Je,Divider:no,Icon:K,Image:oo,Input:ue,Label:Ne,Link:lo,Logo:ro,Option:fa,CircularProgress:kt,Progress:so,ProgressBar:io,Radio:co,Select:we,Spinner:xt,Switch:uo,Text:mo,Textarea:wt,Tooltip:pa,Typography:pt,Loader:Re,Alert:fo,Breadcrumb:po,ButtonGroup:go,Card:vo,CardHeader:ho,CardBody:yo,CardFooter:bo,CardContent:xo,CardTitle:ko,DatePicker:nt,Dropdown:wo,DropdownItem:Co,FileUpload:ga,FormField:Ct,InputGroup:Bo,ListItem:Vo,MenuItem:Eo,Modal:Bt,ModalHeader:No,ModalBody:So,ModalFooter:$o,Notification:zo,Toast:To,Search:Ao,Slider:Vt,Stepper:Mo,StepperItem:Lo,Tab:Po,TabPanel:jo,BarChart:va,LineChart:ha,GraphFilters:Uo,Accordion:Oo,AccordionItem:Io,Graph:Ro,Calendar:_o,EventsCalendar:sl,DataTable:qo,DataTableHeader:ya,DataTableRow:Ho,DataTableCell:Wo,DataTablePagination:ba,DataTableFilters:Yo,DataTableToolBar:Go,Footer:Ko,Header:Xo,ReusableFormModal:Jo,ReusableForm:Zo,Sidebar:el,Timeline:tl,TimelineItem:al,AuthLayout:nl,DefaultLayout:ol,ErrorLayout:ll,DashboardWidget:rl},hb={install(t,n={}){const{prefix:a=""}=n;Object.keys(Za).forEach(o=>{const l=a?`${a}${o}`:o;t.component(l,Za[o])}),t.config.globalProperties.$toast=de,t.provide("toast",de),t.config.globalProperties.$tooltip=Jt,t.provide("tooltip",Jt)}};exports.Accordion=Oo;exports.AccordionItem=Io;exports.Alert=fo;exports.AuthLayout=nl;exports.Avatar=ao;exports.Badge=ma;exports.BarChart=va;exports.Breadcrumb=po;exports.Button=me;exports.ButtonGroup=go;exports.Calendar=_o;exports.Card=vo;exports.CardBody=yo;exports.CardContent=xo;exports.CardFooter=bo;exports.CardHeader=ho;exports.CardTitle=ko;exports.Checkbox=Je;exports.CircularProgress=kt;exports.DashboardWidget=rl;exports.DataTable=qo;exports.DataTableCell=Wo;exports.DataTableFilters=Yo;exports.DataTableHeader=ya;exports.DataTablePagination=ba;exports.DataTableRow=Ho;exports.DataTableToolBar=Go;exports.DatePicker=nt;exports.DefaultLayout=ol;exports.Divider=no;exports.Dropdown=wo;exports.DropdownItem=Co;exports.ErrorLayout=ll;exports.EventsCalendar=sl;exports.FileUpload=ga;exports.Footer=Ko;exports.FormField=Ct;exports.Graph=Ro;exports.GraphFilters=Uo;exports.Header=Xo;exports.Icon=K;exports.Image=oo;exports.Input=ue;exports.InputGroup=Bo;exports.Label=Ne;exports.LineChart=ha;exports.Link=lo;exports.ListItem=Vo;exports.Loader=Re;exports.Logo=ro;exports.MenuItem=Eo;exports.Modal=Bt;exports.ModalBody=So;exports.ModalFooter=$o;exports.ModalHeader=No;exports.Notification=zo;exports.Option=fa;exports.Progress=so;exports.ProgressBar=io;exports.Radio=co;exports.ReusableForm=Zo;exports.ReusableFormModal=Jo;exports.Search=Ao;exports.Select=we;exports.Sidebar=el;exports.Slider=Vt;exports.Spinner=xt;exports.Stepper=Mo;exports.StepperItem=Lo;exports.Switch=uo;exports.Tab=Po;exports.TabPanel=jo;exports.Text=mo;exports.Textarea=wt;exports.Timeline=tl;exports.TimelineItem=al;exports.Toast=To;exports.Tooltip=pa;exports.Typography=pt;exports.cn=N;exports.default=hb;exports.toast=de;exports.tooltip=Jt;exports.useToaster=Fo;
605
+ `}},i=()=>{document.body.appendChild(o),s(),r(),setTimeout(()=>{o.style.opacity="1"},10),window.addEventListener("scroll",r,!0),window.addEventListener("resize",r)},c=()=>{o.style.opacity="0",window.removeEventListener("scroll",r,!0),window.removeEventListener("resize",r),setTimeout(()=>{o.parentNode&&document.body.removeChild(o)},200)};t.addEventListener("mouseenter",i),t.addEventListener("mouseleave",c),t.addEventListener("click",c),t._tooltipShowFn=i,t._tooltipHideFn=c,t._tooltipRepositionFn=r},updated(t,n){if(t._tooltipEl){const a=t._tooltipEl.firstChild;a&&a.nodeType===Node.TEXT_NODE&&(a.textContent=n.value||"")}},unmounted(t){t._tooltipEl&&t._tooltipEl.parentNode&&document.body.removeChild(t._tooltipEl),t._tooltipShowFn&&t.removeEventListener("mouseenter",t._tooltipShowFn),t._tooltipHideFn&&(t.removeEventListener("mouseleave",t._tooltipHideFn),t.removeEventListener("click",t._tooltipHideFn)),t._tooltipRepositionFn&&(window.removeEventListener("scroll",t._tooltipRepositionFn,!0),window.removeEventListener("resize",t._tooltipRepositionFn))}},Ly={class:"flex items-center justify-between mb-4"},Py={class:"text-lg font-semibold text-gray-900"},jy={class:"grid grid-cols-7 mb-2"},Oy={class:"grid grid-cols-7 gap-1"},Iy=["onClick"],_y={key:0,class:"flex gap-0.5 mt-1 justify-center flex-wrap max-w-full px-1"},Ry=["title"],Uy=["title"],qy={key:0,class:"mt-4 border-t pt-4"},Hy={class:"text-sm font-semibold text-gray-700 mb-2"},Wy={class:"space-y-2"},Yy=["onClick"],Gy={class:"flex items-center gap-2"},Ky={class:"font-medium"},Xy={key:0,class:"text-xs text-gray-500 mt-1 ml-5"},Qy={key:1,class:"mt-4 pt-4 border-t flex items-center justify-center gap-6"},sl={__name:"EventsCalendar",props:{events:{type:Array,default:()=>[{id:1,title:"Team Meeting",date:"2025-06-05",time:"10:00 AM",color:"blue"},{id:2,title:"Project Deadline",date:"2025-06-12",time:"5:00 PM",color:"red"},{id:3,title:"Lunch with Client",date:"2025-06-12",time:"12:30 PM",color:"green"},{id:4,title:"Code Review",date:"2025-06-18",time:"2:00 PM",color:"purple"},{id:5,title:"Sprint Planning",date:"2025-06-20",time:"9:00 AM",color:"orange"},{id:6,title:"Workshop",date:"2025-06-20",time:"3:00 PM",color:"blue"}]},size:{type:String,default:"default"}},emits:["select-date","select-event"],setup(t,{emit:n}){const a=t,o=n,l=P.cva("bg-white rounded-xl shadow-lg border border-gray-100",{variants:{size:{sm:"p-3 max-w-xs",default:"p-5 max-w-md",lg:"p-6 max-w-2xl",xl:"p-8 max-w-4xl",full:"p-8 w-full max-w-full"}},defaultVariants:{size:"default"}}),r=P.cva("inline-flex items-center justify-center rounded-lg transition-colors focus:outline-none focus:ring-2 focus:ring-offset-2",{variants:{variant:{default:"bg-blue-600 text-white hover:bg-blue-700 focus:ring-blue-500",ghost:"text-gray-600 hover:bg-gray-100 hover:text-gray-900 focus:ring-gray-300",outline:"border border-gray-300 text-gray-700 hover:bg-gray-50 focus:ring-gray-300"},size:{sm:"h-8 w-8",default:"h-10 w-10",lg:"h-12 w-12"}},defaultVariants:{variant:"default",size:"default"}}),s=P.cva("relative flex flex-col items-center justify-start p-2 rounded-lg cursor-pointer transition-all duration-200",{variants:{isCurrentMonth:{true:"text-gray-900",false:"text-gray-300"},isToday:{true:"bg-blue-50 ring-2 ring-blue-500 ring-inset font-bold",false:""},isSelected:{true:"bg-blue-600 text-white hover:bg-blue-700",false:"hover:bg-gray-100"},hasEvents:{true:"",false:""},size:{sm:"min-h-[52px]",default:"min-h-[60px]",lg:"min-h-[70px]",xl:"min-h-[80px]",full:"min-h-[90px]"}},compoundVariants:[{isSelected:!0,isToday:!0,class:"ring-white"}],defaultVariants:{isCurrentMonth:!0,isToday:!1,isSelected:!1,hasEvents:!1,size:"default"}}),i=P.cva("rounded-full",{variants:{color:{blue:"bg-blue-500",red:"bg-red-500",green:"bg-green-500",purple:"bg-purple-500",orange:"bg-orange-500",pink:"bg-pink-500",yellow:"bg-yellow-500",gray:"bg-gray-500"},size:{sm:"w-1.5 h-1.5",default:"w-2 h-2",lg:"w-2.5 h-2.5"}},defaultVariants:{color:"blue",size:"default"}}),c=P.cva("p-3 rounded-lg border transition-colors cursor-pointer",{variants:{color:{blue:"bg-blue-50 border-blue-200 hover:bg-blue-100",red:"bg-red-50 border-red-200 hover:bg-red-100",green:"bg-green-50 border-green-200 hover:bg-green-100",purple:"bg-purple-50 border-purple-200 hover:bg-purple-100",orange:"bg-orange-50 border-orange-200 hover:bg-orange-100",pink:"bg-pink-50 border-pink-200 hover:bg-pink-100",yellow:"bg-yellow-50 border-yellow-200 hover:bg-yellow-100",gray:"bg-gray-50 border-gray-200 hover:bg-gray-100"}},defaultVariants:{color:"blue"}}),f=e.ref(new Date),x=e.ref(null),C=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],$=e.computed(()=>f.value.toLocaleDateString("en-US",{month:"long",year:"numeric"})),E=e.computed(()=>{const j=f.value.getFullYear(),K=f.value.getMonth(),_=new Date(j,K,1),S=new Date(j,K+1,0),d=_.getDay(),y=S.getDate(),u=[],F=new Date;F.setHours(0,0,0,0);const M=new Date(j,K,0).getDate();for(let g=d-1;g>=0;g--){const m=M-g,O=v(new Date(j,K-1,m));u.push({dayNumber:m,date:O,isCurrentMonth:!1,isToday:!1,events:h(O)})}for(let g=1;g<=y;g++){const m=new Date(j,K,g),O=v(m);m.setHours(0,0,0,0),u.push({dayNumber:g,date:O,isCurrentMonth:!0,isToday:m.getTime()===F.getTime(),events:h(O)})}const p=42-u.length;for(let g=1;g<=p;g++){const m=v(new Date(j,K+1,g));u.push({dayNumber:g,date:m,isCurrentMonth:!1,isToday:!1,events:h(m)})}return u}),B=e.computed(()=>x.value?a.events.filter(j=>j.date===x.value):[]),w=e.computed(()=>x.value?new Date(x.value+"T00:00:00").toLocaleDateString("en-US",{weekday:"long",month:"long",day:"numeric"}):""),b=e.computed(()=>({sm:"sm",default:"default",lg:"default",xl:"lg",full:"lg"})[a.size]||"default");function v(j){return j.toISOString().split("T")[0]}function h(j){return a.events.filter(K=>K.date===j)}function k(){f.value=new Date(f.value.getFullYear(),f.value.getMonth()-1,1)}function z(){f.value=new Date(f.value.getFullYear(),f.value.getMonth()+1,1)}function V(j){x.value=j.date,o("select-date",{date:j.date,events:j.events})}function D(j){o("select-event",j)}return(j,K)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(l)({size:t.size}))},[e.createElementVNode("div",Ly,[e.createElementVNode("button",{class:e.normalizeClass(e.unref(r)({variant:"ghost"})),onClick:k},[e.createVNode(H,{icon:"chevron-left",class:"w-5 h-5"})],2),e.createElementVNode("h2",Py,e.toDisplayString($.value),1),e.createElementVNode("button",{class:e.normalizeClass(e.unref(r)({variant:"ghost"})),onClick:z},[e.createVNode(H,{icon:"chevron-right",class:"w-5 h-5"})],2)]),e.createElementVNode("div",jy,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(C,_=>e.createElementVNode("div",{key:_,class:"text-center text-sm font-medium text-gray-500 py-2"},e.toDisplayString(_),1)),64))]),e.createElementVNode("div",Oy,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(E.value,(_,S)=>(e.openBlock(),e.createElementBlock("div",{key:S,class:e.normalizeClass(e.unref(s)({isCurrentMonth:_.isCurrentMonth,isToday:_.isToday,isSelected:_.date===x.value,hasEvents:_.events.length>0,size:t.size})),onClick:d=>V(_)},[e.createElementVNode("span",{class:e.normalizeClass(["text-sm font-medium mb-1",t.size==="full"||t.size==="xl"?"text-base":""])},e.toDisplayString(_.dayNumber),3),_.events.length>0?(e.openBlock(),e.createElementBlock("div",_y,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_.events.slice(0,3),(d,y)=>(e.openBlock(),e.createElementBlock("span",{key:y,class:e.normalizeClass(e.unref(i)({color:d.color,size:b.value})),title:d.title},null,10,Ry))),128)),_.events.length>3?(e.openBlock(),e.createElementBlock("span",{key:0,class:"text-xs text-gray-400 font-medium",title:`${_.events.length} total events`}," +"+e.toDisplayString(_.events.length-3),9,Uy)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),_.events.length>0&&(t.size==="full"||t.size==="xl")?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["mt-1 text-xs px-1.5 py-0.5 rounded-full",[_.events[0].color==="green"?"bg-green-100 text-green-700":_.events[0].color==="orange"?"bg-orange-100 text-orange-700":"bg-gray-100 text-gray-700"]])},e.toDisplayString(_.events.length)+" "+e.toDisplayString(_.events.length===1?"event":"events"),3)):e.createCommentVNode("",!0)],10,Iy))),128))]),B.value.length>0?(e.openBlock(),e.createElementBlock("div",qy,[e.createElementVNode("h3",Hy," Events for "+e.toDisplayString(w.value),1),e.createElementVNode("div",Wy,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value,_=>(e.openBlock(),e.createElementBlock("div",{key:_.id,class:e.normalizeClass(e.unref(c)({color:_.color})),onClick:S=>D(_)},[e.createElementVNode("div",Gy,[e.createElementVNode("span",{class:e.normalizeClass(e.unref(i)({color:_.color,size:"lg"}))},null,2),e.createElementVNode("span",Ky,e.toDisplayString(_.title),1)]),_.time?(e.openBlock(),e.createElementBlock("p",Xy,e.toDisplayString(_.time),1)):e.createCommentVNode("",!0)],10,Yy))),128))])])):e.createCommentVNode("",!0),t.size==="full"||t.size==="xl"?(e.openBlock(),e.createElementBlock("div",Qy,[...K[0]||(K[0]=[e.createStaticVNode('<div class="flex items-center gap-2"><span class="w-3 h-3 rounded-full bg-green-500"></span><span class="text-xs text-gray-600 font-medium">Complied</span></div><div class="flex items-center gap-2"><span class="w-3 h-3 rounded-full bg-orange-500"></span><span class="text-xs text-gray-600 font-medium">Pending</span></div>',2)])])):e.createCommentVNode("",!0)],2))}},Za={Avatar:ao,Badge:ma,Button:oe,Checkbox:Xe,Divider:no,Icon:H,Image:oo,Input:le,Label:Be,Link:lo,Logo:ro,Option:fa,CircularProgress:pa,Progress:so,ProgressBar:io,Radio:co,Select:he,Spinner:xt,Switch:uo,Text:mo,Textarea:kt,Tooltip:ga,Typography:pt,Loader:Oe,Alert:fo,Breadcrumb:po,ButtonGroup:go,Card:vo,CardHeader:ho,CardBody:yo,CardFooter:bo,CardContent:xo,CardTitle:ko,DatePicker:at,Dropdown:wo,DropdownItem:Co,FileUpload:Qe,FormField:wt,InputGroup:Bo,ListItem:Vo,MenuItem:Eo,Modal:Ct,ModalHeader:So,ModalBody:No,ModalFooter:$o,Notification:zo,Toast:Fo,Search:Ao,Slider:Bt,Stepper:Mo,StepperItem:Lo,Tab:Po,TabPanel:jo,BarChart:va,LineChart:ha,GraphFilters:Uo,Accordion:Oo,AccordionItem:Io,Graph:Ro,Calendar:_o,EventsCalendar:sl,DataTable:qo,DataTableHeader:ya,DataTableRow:Ho,DataTableCell:Wo,DataTablePagination:ba,DataTableFilters:Yo,DataTableToolBar:Go,Footer:Ko,Header:Xo,ReusableFormModal:Jo,ReusableForm:Zo,Sidebar:el,Timeline:tl,TimelineItem:al,AuthLayout:nl,DefaultLayout:ol,ErrorLayout:ll,DashboardWidget:rl},Jy={install(t,n={}){const{prefix:a=""}=n;Object.keys(Za).forEach(o=>{const l=a?`${a}${o}`:o;t.component(l,Za[o])}),t.config.globalProperties.$toast=se,t.provide("toast",se),t.config.globalProperties.$tooltip=Jt,t.provide("tooltip",Jt)}};exports.Accordion=Oo;exports.AccordionItem=Io;exports.Alert=fo;exports.AuthLayout=nl;exports.Avatar=ao;exports.Badge=ma;exports.BarChart=va;exports.Breadcrumb=po;exports.Button=oe;exports.ButtonGroup=go;exports.Calendar=_o;exports.Card=vo;exports.CardBody=yo;exports.CardContent=xo;exports.CardFooter=bo;exports.CardHeader=ho;exports.CardTitle=ko;exports.Checkbox=Xe;exports.CircularProgress=pa;exports.DashboardWidget=rl;exports.DataTable=qo;exports.DataTableCell=Wo;exports.DataTableFilters=Yo;exports.DataTableHeader=ya;exports.DataTablePagination=ba;exports.DataTableRow=Ho;exports.DataTableToolBar=Go;exports.DatePicker=at;exports.DefaultLayout=ol;exports.Divider=no;exports.Dropdown=wo;exports.DropdownItem=Co;exports.ErrorLayout=ll;exports.EventsCalendar=sl;exports.FileUpload=Qe;exports.Footer=Ko;exports.FormField=wt;exports.Graph=Ro;exports.GraphFilters=Uo;exports.Header=Xo;exports.Icon=H;exports.Image=oo;exports.Input=le;exports.InputGroup=Bo;exports.Label=Be;exports.LineChart=ha;exports.Link=lo;exports.ListItem=Vo;exports.Loader=Oe;exports.Logo=ro;exports.MenuItem=Eo;exports.Modal=Ct;exports.ModalBody=No;exports.ModalFooter=$o;exports.ModalHeader=So;exports.Notification=zo;exports.Option=fa;exports.Progress=so;exports.ProgressBar=io;exports.Radio=co;exports.ReusableForm=Zo;exports.ReusableFormModal=Jo;exports.Search=Ao;exports.Select=he;exports.Sidebar=el;exports.Slider=Bt;exports.Spinner=xt;exports.Stepper=Mo;exports.StepperItem=Lo;exports.Switch=uo;exports.Tab=Po;exports.TabPanel=jo;exports.Text=mo;exports.Textarea=kt;exports.Timeline=tl;exports.TimelineItem=al;exports.Toast=Fo;exports.Tooltip=ga;exports.Typography=pt;exports.cn=N;exports.default=Jy;exports.toast=se;exports.tooltip=Jt;exports.useToaster=To;