@stlhorizon/vue-ui 3.26.1 → 3.26.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.esm.js +2922 -2844
- package/dist/index.js +11 -11
- package/dist/src/components/AddReminderModal.vue.d.ts +17 -0
- package/dist/src/components/AddReminderModal.vue.d.ts.map +1 -0
- package/dist/src/components/Header.vue.d.ts.map +1 -1
- package/dist/src/components/ReminderConfig.vue.d.ts +2 -2
- package/dist/src/components/ReminderConfig.vue.d.ts.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/vue-ui.css +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -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"),yl=require("clsx");function
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),O=require("class-variance-authority"),yl=require("clsx");function D(...t){return yl.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
|
-
*/function Pt(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 bl(t){if(Array.isArray(t))return t}function xl(t){if(Array.isArray(t))return Pt(t)}function kl(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}function wl(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,sn(o.key),o)}}function Cl(t,n,a){return n&&wl(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),t}function
|
|
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 Q(t,n,a){return(n=sn(n))in t?Object.defineProperty(t,n,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[n]=a,t}function Bl(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function Vl(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,g=!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(
|
|
5
|
+
*/function Pt(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 bl(t){if(Array.isArray(t))return t}function xl(t){if(Array.isArray(t))return Pt(t)}function kl(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}function wl(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,sn(o.key),o)}}function Cl(t,n,a){return n&&wl(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),t}function ct(t,n){var a=typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(!a){if(Array.isArray(t)||(a=na(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 Q(t,n,a){return(n=sn(n))in t?Object.defineProperty(t,n,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[n]=a,t}function Bl(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function Vl(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,g=!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){g=!0,l=b}finally{try{if(!c&&a.return!=null&&(s=a.return(),Object(s)!==s))return}finally{if(g)throw l}}return i}}function El(){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 Nl(){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 Ba(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?Ba(Object(a),!0).forEach(function(o){Q(t,o,a[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):Ba(Object(a)).forEach(function(o){Object.defineProperty(t,o,Object.getOwnPropertyDescriptor(a,o))})}return t}function yt(t,n){return bl(t)||Vl(t,n)||na(t,n)||El()}function ye(t){return xl(t)||Bl(t)||na(t)||Nl()}function Sl(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 sn(t){var n=Sl(t,"string");return typeof n=="symbol"?n:n+""}function mt(t){"@babel/helpers - typeof";return mt=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},mt(t)}function na(t,n){if(t){if(typeof t=="string")return Pt(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)?Pt(t,n):void 0}}var Va=function(){},oa={},cn={},dn=null,un={mark:Va,measure:Va};try{typeof window<"u"&&(oa=window),typeof document<"u"&&(cn=document),typeof MutationObserver<"u"&&(dn=MutationObserver),typeof performance<"u"&&(un=performance)}catch{}var $l=oa.navigator||{},Ea=$l.userAgent,Na=Ea===void 0?"":Ea,$e=oa,te=cn,Sa=dn,rt=un;$e.document;var Ne=!!te.documentElement&&!!te.head&&typeof te.addEventListener=="function"&&typeof te.createElement=="function",mn=~Na.indexOf("MSIE")||~Na.indexOf("Trident/"),zt,zl=/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)?[\-\ ]/,Dl=/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,fn={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"}},Tl={GROUP:"duotone-group",PRIMARY:"primary",SECONDARY:"secondary"},pn=["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",tt="duotone",gn="sharp",vn="sharp-duotone",hn="chisel",yn="etch",bn="jelly",xn="jelly-duo",kn="jelly-fill",wn="notdog",Cn="notdog-duo",Bn="slab",Vn="slab-press",En="thumbprint",Nn="whiteboard",Fl="Classic",Al="Duotone",Ml="Sharp",Ll="Sharp Duotone",_l="Chisel",jl="Etch",Pl="Jelly",Ol="Jelly Duo",Il="Jelly Fill",Rl="Notdog",Ul="Notdog Duo",ql="Slab",Yl="Slab Press",Hl="Thumbprint",Wl="Whiteboard",Sn=[ie,tt,gn,vn,hn,yn,bn,xn,kn,wn,Cn,Bn,Vn,En,Nn];zt={},Q(Q(Q(Q(Q(Q(Q(Q(Q(Q(zt,ie,Fl),tt,Al),gn,Ml),vn,Ll),hn,_l),yn,jl),bn,Pl),xn,Ol),kn,Il),wn,Rl),Q(Q(Q(Q(Q(zt,Cn,Ul),Bn,ql),Vn,Yl),En,Hl),Nn,Wl);var Gl={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"}},Kl={"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"}},Xl=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}]]),Jl={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"}},$n=["fak","fa-kit","fakd","fa-kit-duotone"],$a={kit:{fak:"kit","fa-kit":"kit"},"kit-duotone":{fakd:"kit-duotone","fa-kit-duotone":"kit-duotone"}},Ql=["kit"],Zl="kit",er="kit-duotone",tr="Kit",ar="Kit Duotone";Q(Q({},Zl,tr),er,ar);var nr={kit:{"fa-kit":"fak"}},or={"Font Awesome Kit":{400:"fak",normal:"fak"},"Font Awesome Kit Duotone":{400:"fakd",normal:"fakd"}},lr={kit:{fak:"fa-kit"}},za={kit:{kit:"fak"},"kit-duotone":{"kit-duotone":"fakd"}},Dt,st={GROUP:"duotone-group",SWAP_OPACITY:"swap-opacity",PRIMARY:"primary",SECONDARY:"secondary"},rr=["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"],sr="classic",ir="duotone",cr="sharp",dr="sharp-duotone",ur="chisel",mr="etch",fr="jelly",pr="jelly-duo",gr="jelly-fill",vr="notdog",hr="notdog-duo",yr="slab",br="slab-press",xr="thumbprint",kr="whiteboard",wr="Classic",Cr="Duotone",Br="Sharp",Vr="Sharp Duotone",Er="Chisel",Nr="Etch",Sr="Jelly",$r="Jelly Duo",zr="Jelly Fill",Dr="Notdog",Tr="Notdog Duo",Fr="Slab",Ar="Slab Press",Mr="Thumbprint",Lr="Whiteboard";Dt={},Q(Q(Q(Q(Q(Q(Q(Q(Q(Q(Dt,sr,wr),ir,Cr),cr,Br),dr,Vr),ur,Er),mr,Nr),fr,Sr),pr,$r),gr,zr),vr,Dr),Q(Q(Q(Q(Q(Dt,hr,Tr),yr,Fr),br,Ar),xr,Mr),kr,Lr);var _r="kit",jr="kit-duotone",Pr="Kit",Or="Kit Duotone";Q(Q({},_r,Pr),jr,Or);var Ir={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"}},Rr={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"]},Ot={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"}},Ur=["fa-solid","fa-regular","fa-light","fa-thin","fa-duotone","fa-brands","fa-semibold"],zn=["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(rr,Ur),qr=["solid","regular","light","thin","duotone","brands","semibold"],Dn=[1,2,3,4,5,6,7,8,9,10],Yr=Dn.concat([11,12,13,14,15,16,17,18,19,20]),Hr=["aw","fw","pull-left","pull-right"],Wr=[].concat(ye(Object.keys(Rr)),qr,Hr,["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",st.GROUP,st.SWAP_OPACITY,st.PRIMARY,st.SECONDARY]).concat(Dn.map(function(t){return"".concat(t,"x")})).concat(Yr.map(function(t){return"w-".concat(t)})),Gr={"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___",It=16,Tn="fa",Fn="svg-inline--fa",Ae="data-fa-i2svg",Rt="data-fa-pseudo-element",Kr="data-fa-pseudo-element-pending",la="data-prefix",ra="data-icon",Da="fontawesome-i2svg",Xr="async",Jr=["HTML","HEAD","STYLE","SCRIPT"],An=["::before","::after",":before",":after"],Mn=(function(){try{return process.env.NODE_ENV==="production"}catch{return!1}})();function at(t){return new Proxy(t,{get:function(a,o){return o in a?a[o]:a[ie]}})}var Ln=I({},fn);Ln[ie]=I(I(I(I({},{"fa-duotone":"duotone"}),fn[ie]),$a.kit),$a["kit-duotone"]);var Qr=at(Ln),Ut=I({},Jl);Ut[ie]=I(I(I(I({},{duotone:"fad"}),Ut[ie]),za.kit),za["kit-duotone"]);var Ta=at(Ut),qt=I({},Ot);qt[ie]=I(I({},qt[ie]),lr.kit);var sa=at(qt),Yt=I({},Ir);Yt[ie]=I(I({},Yt[ie]),nr.kit);at(Yt);var Zr=zl,_n="fa-layers-text",es=Dl,ts=I({},Gl);at(ts);var as=["class","data-prefix","data-icon","data-fa-transform","data-fa-mask"],Tt=Tl,ns=[].concat(ye(Ql),ye(Wr)),We=$e.FontAwesomeConfig||{};function os(t){var n=te.querySelector("script["+t+"]");if(n)return n.getAttribute(t)}function ls(t){return t===""?!0:t==="false"?!1:t==="true"?!0:t}if(te&&typeof te.querySelector=="function"){var rs=[["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"]];rs.forEach(function(t){var n=yt(t,2),a=n[0],o=n[1],l=ls(os(a));l!=null&&(We[o]=l)})}var jn={styleDefault:"solid",familyDefault:ie,cssPrefix:Tn,replacementClass:Fn,autoReplaceSvg:!0,autoAddCss:!0,searchPseudoElements:!1,searchPseudoElementsWarnings:!0,searchPseudoElementsFullScan:!1,observeMutations:!0,mutateApproach:"async",keepOriginalSource:!0,measurePerformance:!1,showMissingIcons:!0};We.familyPrefix&&(We.cssPrefix=We.familyPrefix);var Ie=I(I({},jn),We);Ie.autoReplaceSvg||(Ie.observeMutations=!1);var J={};Object.keys(jn).forEach(function(t){Object.defineProperty(J,t,{enumerable:!0,set:function(a){Ie[t]=a,Ge.forEach(function(o){return o(J)})},get:function(){return Ie[t]}})});Object.defineProperty(J,"familyPrefix",{enumerable:!0,set:function(n){Ie.cssPrefix=n,Ge.forEach(function(a){return a(J)})},get:function(){return Ie.cssPrefix}});$e.FontAwesomeConfig=J;var Ge=[];function ss(t){return Ge.push(t),function(){Ge.splice(Ge.indexOf(t),1)}}var _e=It,ke={size:16,x:0,y:0,rotate:0,flipX:!1,flipY:!1};function is(t){if(!(!t||!Ne)){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 cs="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";function Fa(){for(var t=12,n="";t-- >0;)n+=cs[Math.random()*62|0];return n}function Re(t){for(var n=[],a=(t||[]).length>>>0;a--;)n[a]=t[a];return n}function ia(t){return t.classList?Re(t.classList):(t.getAttribute("class")||"").split(" ").filter(function(n){return n})}function Pn(t){return"".concat(t).replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}function ds(t){return Object.keys(t||{}).reduce(function(n,a){return n+"".concat(a,'="').concat(Pn(t[a]),'" ')},"").trim()}function bt(t){return Object.keys(t||{}).reduce(function(n,a){return n+"".concat(a,": ").concat(t[a].trim(),";")},"")}function ca(t){return t.size!==ke.size||t.x!==ke.x||t.y!==ke.y||t.rotate!==ke.rotate||t.flipX||t.flipY}function us(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)},g={transform:"translate(".concat(o/2*-1," -256)")};return{outer:l,inner:c,path:g}}function ms(t){var n=t.transform,a=t.width,o=a===void 0?It:a,l=t.height,r=l===void 0?It:l,s="";return mn?s+="translate(".concat(n.x/_e-o/2,"em, ").concat(n.y/_e-r/2,"em) "):s+="translate(calc(-50% + ".concat(n.x/_e,"em), calc(-50% + ").concat(n.y/_e,"em)) "),s+="scale(".concat(n.size/_e*(n.flipX?-1:1),", ").concat(n.size/_e*(n.flipY?-1:1),") "),s+="rotate(".concat(n.rotate,"deg) "),s}var fs=`:root, :host {
|
|
8
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Ba(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?Ba(Object(a),!0).forEach(function(o){Q(t,o,a[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):Ba(Object(a)).forEach(function(o){Object.defineProperty(t,o,Object.getOwnPropertyDescriptor(a,o))})}return t}function bt(t,n){return bl(t)||Vl(t,n)||na(t,n)||El()}function ye(t){return xl(t)||Bl(t)||na(t)||Nl()}function Sl(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 sn(t){var n=Sl(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 na(t,n){if(t){if(typeof t=="string")return Pt(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)?Pt(t,n):void 0}}var Va=function(){},oa={},cn={},dn=null,un={mark:Va,measure:Va};try{typeof window<"u"&&(oa=window),typeof document<"u"&&(cn=document),typeof MutationObserver<"u"&&(dn=MutationObserver),typeof performance<"u"&&(un=performance)}catch{}var $l=oa.navigator||{},Ea=$l.userAgent,Na=Ea===void 0?"":Ea,$e=oa,te=cn,Sa=dn,st=un;$e.document;var Ne=!!te.documentElement&&!!te.head&&typeof te.addEventListener=="function"&&typeof te.createElement=="function",mn=~Na.indexOf("MSIE")||~Na.indexOf("Trident/"),zt,zl=/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)?[\-\ ]/,Dl=/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,fn={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"}},Tl={GROUP:"duotone-group",PRIMARY:"primary",SECONDARY:"secondary"},pn=["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",at="duotone",gn="sharp",vn="sharp-duotone",hn="chisel",yn="etch",bn="jelly",xn="jelly-duo",kn="jelly-fill",wn="notdog",Cn="notdog-duo",Bn="slab",Vn="slab-press",En="thumbprint",Nn="whiteboard",Fl="Classic",Al="Duotone",Ml="Sharp",Ll="Sharp Duotone",_l="Chisel",jl="Etch",Pl="Jelly",Ol="Jelly Duo",Il="Jelly Fill",Rl="Notdog",Ul="Notdog Duo",ql="Slab",Yl="Slab Press",Hl="Thumbprint",Wl="Whiteboard",Sn=[ie,at,gn,vn,hn,yn,bn,xn,kn,wn,Cn,Bn,Vn,En,Nn];zt={},Q(Q(Q(Q(Q(Q(Q(Q(Q(Q(zt,ie,Fl),at,Al),gn,Ml),vn,Ll),hn,_l),yn,jl),bn,Pl),xn,Ol),kn,Il),wn,Rl),Q(Q(Q(Q(Q(zt,Cn,Ul),Bn,ql),Vn,Yl),En,Hl),Nn,Wl);var Gl={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"}},Kl={"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"}},Xl=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}]]),Jl={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"}},$n=["fak","fa-kit","fakd","fa-kit-duotone"],$a={kit:{fak:"kit","fa-kit":"kit"},"kit-duotone":{fakd:"kit-duotone","fa-kit-duotone":"kit-duotone"}},Ql=["kit"],Zl="kit",er="kit-duotone",tr="Kit",ar="Kit Duotone";Q(Q({},Zl,tr),er,ar);var nr={kit:{"fa-kit":"fak"}},or={"Font Awesome Kit":{400:"fak",normal:"fak"},"Font Awesome Kit Duotone":{400:"fakd",normal:"fakd"}},lr={kit:{fak:"fa-kit"}},za={kit:{kit:"fak"},"kit-duotone":{"kit-duotone":"fakd"}},Dt,it={GROUP:"duotone-group",SWAP_OPACITY:"swap-opacity",PRIMARY:"primary",SECONDARY:"secondary"},rr=["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"],sr="classic",ir="duotone",cr="sharp",dr="sharp-duotone",ur="chisel",mr="etch",fr="jelly",pr="jelly-duo",gr="jelly-fill",vr="notdog",hr="notdog-duo",yr="slab",br="slab-press",xr="thumbprint",kr="whiteboard",wr="Classic",Cr="Duotone",Br="Sharp",Vr="Sharp Duotone",Er="Chisel",Nr="Etch",Sr="Jelly",$r="Jelly Duo",zr="Jelly Fill",Dr="Notdog",Tr="Notdog Duo",Fr="Slab",Ar="Slab Press",Mr="Thumbprint",Lr="Whiteboard";Dt={},Q(Q(Q(Q(Q(Q(Q(Q(Q(Q(Dt,sr,wr),ir,Cr),cr,Br),dr,Vr),ur,Er),mr,Nr),fr,Sr),pr,$r),gr,zr),vr,Dr),Q(Q(Q(Q(Q(Dt,hr,Tr),yr,Fr),br,Ar),xr,Mr),kr,Lr);var _r="kit",jr="kit-duotone",Pr="Kit",Or="Kit Duotone";Q(Q({},_r,Pr),jr,Or);var Ir={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"}},Rr={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"]},Ot={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"}},Ur=["fa-solid","fa-regular","fa-light","fa-thin","fa-duotone","fa-brands","fa-semibold"],zn=["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(rr,Ur),qr=["solid","regular","light","thin","duotone","brands","semibold"],Dn=[1,2,3,4,5,6,7,8,9,10],Yr=Dn.concat([11,12,13,14,15,16,17,18,19,20]),Hr=["aw","fw","pull-left","pull-right"],Wr=[].concat(ye(Object.keys(Rr)),qr,Hr,["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",it.GROUP,it.SWAP_OPACITY,it.PRIMARY,it.SECONDARY]).concat(Dn.map(function(t){return"".concat(t,"x")})).concat(Yr.map(function(t){return"w-".concat(t)})),Gr={"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___",It=16,Tn="fa",Fn="svg-inline--fa",Ae="data-fa-i2svg",Rt="data-fa-pseudo-element",Kr="data-fa-pseudo-element-pending",la="data-prefix",ra="data-icon",Da="fontawesome-i2svg",Xr="async",Jr=["HTML","HEAD","STYLE","SCRIPT"],An=["::before","::after",":before",":after"],Mn=(function(){try{return process.env.NODE_ENV==="production"}catch{return!1}})();function nt(t){return new Proxy(t,{get:function(a,o){return o in a?a[o]:a[ie]}})}var Ln=I({},fn);Ln[ie]=I(I(I(I({},{"fa-duotone":"duotone"}),fn[ie]),$a.kit),$a["kit-duotone"]);var Qr=nt(Ln),Ut=I({},Jl);Ut[ie]=I(I(I(I({},{duotone:"fad"}),Ut[ie]),za.kit),za["kit-duotone"]);var Ta=nt(Ut),qt=I({},Ot);qt[ie]=I(I({},qt[ie]),lr.kit);var sa=nt(qt),Yt=I({},Ir);Yt[ie]=I(I({},Yt[ie]),nr.kit);nt(Yt);var Zr=zl,_n="fa-layers-text",es=Dl,ts=I({},Gl);nt(ts);var as=["class","data-prefix","data-icon","data-fa-transform","data-fa-mask"],Tt=Tl,ns=[].concat(ye(Ql),ye(Wr)),Ge=$e.FontAwesomeConfig||{};function os(t){var n=te.querySelector("script["+t+"]");if(n)return n.getAttribute(t)}function ls(t){return t===""?!0:t==="false"?!1:t==="true"?!0:t}if(te&&typeof te.querySelector=="function"){var rs=[["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"]];rs.forEach(function(t){var n=bt(t,2),a=n[0],o=n[1],l=ls(os(a));l!=null&&(Ge[o]=l)})}var jn={styleDefault:"solid",familyDefault:ie,cssPrefix:Tn,replacementClass:Fn,autoReplaceSvg:!0,autoAddCss:!0,searchPseudoElements:!1,searchPseudoElementsWarnings:!0,searchPseudoElementsFullScan:!1,observeMutations:!0,mutateApproach:"async",keepOriginalSource:!0,measurePerformance:!1,showMissingIcons:!0};Ge.familyPrefix&&(Ge.cssPrefix=Ge.familyPrefix);var Ie=I(I({},jn),Ge);Ie.autoReplaceSvg||(Ie.observeMutations=!1);var J={};Object.keys(jn).forEach(function(t){Object.defineProperty(J,t,{enumerable:!0,set:function(a){Ie[t]=a,Ke.forEach(function(o){return o(J)})},get:function(){return Ie[t]}})});Object.defineProperty(J,"familyPrefix",{enumerable:!0,set:function(n){Ie.cssPrefix=n,Ke.forEach(function(a){return a(J)})},get:function(){return Ie.cssPrefix}});$e.FontAwesomeConfig=J;var Ke=[];function ss(t){return Ke.push(t),function(){Ke.splice(Ke.indexOf(t),1)}}var _e=It,ke={size:16,x:0,y:0,rotate:0,flipX:!1,flipY:!1};function is(t){if(!(!t||!Ne)){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 cs="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";function Fa(){for(var t=12,n="";t-- >0;)n+=cs[Math.random()*62|0];return n}function Re(t){for(var n=[],a=(t||[]).length>>>0;a--;)n[a]=t[a];return n}function ia(t){return t.classList?Re(t.classList):(t.getAttribute("class")||"").split(" ").filter(function(n){return n})}function Pn(t){return"".concat(t).replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}function ds(t){return Object.keys(t||{}).reduce(function(n,a){return n+"".concat(a,'="').concat(Pn(t[a]),'" ')},"").trim()}function xt(t){return Object.keys(t||{}).reduce(function(n,a){return n+"".concat(a,": ").concat(t[a].trim(),";")},"")}function ca(t){return t.size!==ke.size||t.x!==ke.x||t.y!==ke.y||t.rotate!==ke.rotate||t.flipX||t.flipY}function us(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)},g={transform:"translate(".concat(o/2*-1," -256)")};return{outer:l,inner:c,path:g}}function ms(t){var n=t.transform,a=t.width,o=a===void 0?It:a,l=t.height,r=l===void 0?It:l,s="";return mn?s+="translate(".concat(n.x/_e-o/2,"em, ").concat(n.y/_e-r/2,"em) "):s+="translate(calc(-50% + ".concat(n.x/_e,"em), calc(-50% + ").concat(n.y/_e,"em)) "),s+="scale(".concat(n.size/_e*(n.flipX?-1:1),", ").concat(n.size/_e*(n.flipY?-1:1),") "),s+="rotate(".concat(n.rotate,"deg) "),s}var fs=`: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 On(){var t=Tn,n=Fn,a=J.cssPrefix,o=J.replacementClass,l=fs;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 Aa=!1;function Ft(){J.autoAddCss&&!Aa&&(is(On()),Aa=!0)}var ps={mixout:function(){return{dom:{css:On,insertCss:Ft}}},hooks:function(){return{beforeDOMElementCreation:function(){Ft()},beforeI2svg:function(){Ft()}}}},Ee=$e||{};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],In=[],Rn=function(){te.removeEventListener("DOMContentLoaded",Rn),ft=1,In.map(function(n){return n()})},ft=!1;Ne&&(ft=(te.documentElement.doScroll?/^loaded|^c/:/^loaded|^i|^c/).test(te.readyState),ft||te.addEventListener("DOMContentLoaded",Rn));function gs(t){Ne&&(ft?setTimeout(t,0):In.push(t))}function nt(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"?Pn(t):"<".concat(n," ").concat(ds(o),">").concat(r.map(nt).join(""),"</").concat(n,">")}function Ma(t,n,a){if(t&&t[n]&&t[n][a])return{prefix:n,iconName:a,icon:t[n][a]}}var At=function(n,a,o,l){var r=Object.keys(n),s=r.length,i=a,c,g,k;for(o===void 0?(c=1,k=n[r[0]]):(c=0,k=o);c<s;c++)g=r[c],k=i(k,n[g],g,n);return k};function Un(t){return ye(t).length!==1?null:t.codePointAt(0).toString(16)}function La(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 Ht(t,n){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=a.skipHooks,l=o===void 0?!1:o,r=La(n);typeof ve.hooks.addPack=="function"&&!l?ve.hooks.addPack(t,La(n)):ve.styles[t]=I(I({},ve.styles[t]||{}),r),t==="fas"&&Ht("fa",n)}var Je=ve.styles,vs=ve.shims,qn=Object.keys(sa),hs=qn.reduce(function(t,n){return t[n]=Object.keys(sa[n]),t},{}),da=null,Yn={},Hn={},Wn={},Gn={},Kn={};function ys(t){return~ns.indexOf(t)}function bs(t,n){var a=n.split("-"),o=a[0],l=a.slice(1).join("-");return o===t&&l!==""&&!ys(l)?l:null}var Xn=function(){var n=function(r){return At(Je,function(s,i,c){return s[c]=At(i,r,{}),s},{})};Yn=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}),Hn=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}),Kn=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 Je||J.autoFetchSvg,o=At(vs,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:{}});Wn=o.names,Gn=o.unicodes,da=xt(J.styleDefault,{family:J.familyDefault})};ss(function(t){da=xt(t.styleDefault,{family:J.familyDefault})});Xn();function ua(t,n){return(Yn[t]||{})[n]}function xs(t,n){return(Hn[t]||{})[n]}function Fe(t,n){return(Kn[t]||{})[n]}function Jn(t){return Wn[t]||{prefix:null,iconName:null}}function ks(t){var n=Gn[t],a=ua("fas",t);return n||(a?{prefix:"fas",iconName:a}:null)||{prefix:null,iconName:null}}function ze(){return da}var Qn=function(){return{prefix:null,iconName:null,rest:[]}};function ws(t){var n=ie,a=qn.reduce(function(o,l){return o[l]="".concat(J.cssPrefix,"-").concat(l),o},{});return Sn.forEach(function(o){(t.includes(a[o])||t.some(function(l){return hs[o].includes(l)}))&&(n=o)}),n}function xt(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=n.family,o=a===void 0?ie:a,l=Qr[o][t];if(o===tt&&!t)return"fad";var r=Ta[o][t]||Ta[o][l],s=t in ve.styles?t:null,i=r||s||null;return i}function Cs(t){var n=[],a=null;return t.forEach(function(o){var l=bs(J.cssPrefix,o);l?a=l:o&&n.push(o)}),{iconName:a,rest:n}}function _a(t){return t.sort().filter(function(n,a,o){return o.indexOf(n)===a})}var ja=zn.concat($n);function kt(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=n.skipLookups,o=a===void 0?!1:a,l=null,r=_a(t.filter(function(B){return ja.includes(B)})),s=_a(t.filter(function(B){return!ja.includes(B)})),i=r.filter(function(B){return l=B,!pn.includes(B)}),c=yt(i,1),g=c[0],k=g===void 0?null:g,C=ws(r),D=I(I({},Cs(s)),{},{prefix:xt(k,{family:C})});return I(I(I({},D),Ns({values:t,family:C,styles:Je,config:J,canonical:D,givenPrefix:l})),Bs(o,l,D))}function Bs(t,n,a){var o=a.prefix,l=a.iconName;if(t||!o||!l)return{prefix:o,iconName:l};var r=n==="fa"?Jn(l):{},s=Fe(o,l);return l=r.iconName||s||l,o=r.prefix||o,o==="far"&&!Je.far&&Je.fas&&!J.autoFetchSvg&&(o="fas"),{prefix:o,iconName:l}}var Vs=Sn.filter(function(t){return t!==ie||t!==tt}),Es=Object.keys(Ot).filter(function(t){return t!==ie}).map(function(t){return Object.keys(Ot[t])}).flat();function Ns(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,g=c===void 0?{}:c,k=a===tt,C=n.includes("fa-duotone")||n.includes("fad"),D=g.familyDefault==="duotone",B=o.prefix==="fad"||o.prefix==="fa-duotone";if(!k&&(C||D||B)&&(o.prefix="fad"),(n.includes("fa-brands")||n.includes("fab"))&&(o.prefix="fab"),!o.prefix&&Vs.includes(a)){var N=Object.keys(i).find(function(h){return Es.includes(h)});if(N||g.autoFetchSvg){var x=Xl.get(a).defaultShortPrefixId;o.prefix=x,o.iconName=Fe(o.prefix,o.iconName)||o.iconName}}return(o.prefix==="fa"||r==="fa")&&(o.prefix=ze()||"fas"),o}var Ss=(function(){function t(){kl(this,t),this.definitions={}}return Cl(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]),Ht(i,s[i]);var c=sa[ie][i];c&&Ht(c,s[i]),Xn()})}},{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,g=s.icon,k=g[2];a[i]||(a[i]={}),k.length>0&&k.forEach(function(C){typeof C=="string"&&(a[i][C]=g)}),a[i][c]=g}),a}}])})(),Pa=[],je={},Pe={},$s=Object.keys(Pe);function zs(t,n){var a=n.mixoutsTo;return Pa=t,je={},Object.keys(Pe).forEach(function(o){$s.indexOf(o)===-1&&delete Pe[o]}),Pa.forEach(function(o){var l=o.mixout?o.mixout():{};if(Object.keys(l).forEach(function(s){typeof l[s]=="function"&&(a[s]=l[s]),mt(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){je[s]||(je[s]=[]),je[s].push(r[s])})}o.provides&&o.provides(Pe)}),a}function Wt(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=je[t]||[];return r.forEach(function(s){n=s.apply(null,[n].concat(o))}),n}function Me(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=je[t]||[];l.forEach(function(r){r.apply(null,a)})}function De(){var t=arguments[0],n=Array.prototype.slice.call(arguments,1);return Pe[t]?Pe[t].apply(null,n):void 0}function Gt(t){t.prefix==="fa"&&(t.prefix="fas");var n=t.iconName,a=t.prefix||ze();if(n)return n=Fe(a,n)||n,Ma(Zn.definitions,a,n)||Ma(ve.styles,a,n)}var Zn=new Ss,Ds=function(){J.autoReplaceSvg=!1,J.observeMutations=!1,Me("noAuto")},Ts={i2svg:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Ne?(Me("beforeI2svg",n),De("pseudoElements2svg",n),De("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;J.autoReplaceSvg===!1&&(J.autoReplaceSvg=!0),J.observeMutations=!0,gs(function(){As({autoReplaceSvgRoot:a}),Me("watch",n)})}},Fs={icon:function(n){if(n===null)return null;if(mt(n)==="object"&&n.prefix&&n.iconName)return{prefix:n.prefix,iconName:Fe(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=xt(n[0]);return{prefix:o,iconName:Fe(o,a)||a}}if(typeof n=="string"&&(n.indexOf("".concat(J.cssPrefix,"-"))>-1||n.match(Zr))){var l=kt(n.split(" "),{skipLookups:!0});return{prefix:l.prefix||ze(),iconName:Fe(l.prefix,l.iconName)||l.iconName}}if(typeof n=="string"){var r=ze();return{prefix:r,iconName:Fe(r,n)||n}}}},pe={noAuto:Ds,config:J,dom:Ts,parse:Fs,library:Zn,findIconDefinition:Gt,toHtml:nt},As=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||J.autoFetchSvg)&&Ne&&J.autoReplaceSvg&&pe.dom.i2svg({node:o})};function wt(t,n){return Object.defineProperty(t,"abstract",{get:n}),Object.defineProperty(t,"html",{get:function(){return t.abstract.map(function(o){return nt(o)})}}),Object.defineProperty(t,"node",{get:function(){if(Ne){var o=te.createElement("div");return o.innerHTML=t.html,o.children}}}),t}function Ms(t){var n=t.children,a=t.main,o=t.mask,l=t.attributes,r=t.styles,s=t.transform;if(ca(s)&&a.found&&!o.found){var i=a.width,c=a.height,g={x:i/c/2,y:.5};l.style=bt(I(I({},r),{},{"transform-origin":"".concat(g.x+s.x/16,"em ").concat(g.y+s.y/16,"em")}))}return[{tag:"svg",attributes:l,children:n}]}function Ls(t){var n=t.prefix,a=t.iconName,o=t.children,l=t.attributes,r=t.symbol,s=r===!0?"".concat(n,"-").concat(J.cssPrefix,"-").concat(a):r;return[{tag:"svg",attributes:{style:"display: none;"},children:[{tag:"symbol",attributes:I(I({},l),{},{id:s}),children:o}]}]}function _s(t){var n=["aria-label","aria-labelledby","title","role"];return n.some(function(a){return a in t})}function ma(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,g=t.extra,k=t.watchable,C=k===void 0?!1:k,D=o.found?o:a,B=D.width,N=D.height,x=[J.replacementClass,r?"".concat(J.cssPrefix,"-").concat(r):""].filter(function(V){return g.classes.indexOf(V)===-1}).filter(function(V){return V!==""||!!V}).concat(g.classes).join(" "),h={children:[],attributes:I(I({},g.attributes),{},{"data-prefix":l,"data-icon":r,class:x,role:g.attributes.role||"img",viewBox:"0 0 ".concat(B," ").concat(N)})};!_s(g.attributes)&&!g.attributes["aria-hidden"]&&(h.attributes["aria-hidden"]="true"),C&&(h.attributes[Ae]="");var v=I(I({},h),{},{prefix:l,iconName:r,main:a,mask:o,maskId:c,transform:s,symbol:i,styles:I({},g.styles)}),y=o.found&&a.found?De("generateAbstractMask",v)||{children:[],attributes:{}}:De("generateAbstractIcon",v)||{children:[],attributes:{}},b=y.children,z=y.attributes;return v.children=b,v.attributes=z,i?Ls(v):Ms(v)}function Oa(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[Ae]="");var g=I({},r.styles);ca(l)&&(g.transform=ms({transform:l,width:a,height:o}),g["-webkit-transform"]=g.transform);var k=bt(g);k.length>0&&(c.style=k);var C=[];return C.push({tag:"span",attributes:c,children:[n]}),C}function js(t){var n=t.content,a=t.extra,o=I(I({},a.attributes),{},{class:a.classes.join(" ")}),l=bt(a.styles);l.length>0&&(o.style=l);var r=[];return r.push({tag:"span",attributes:o,children:[n]}),r}var Mt=ve.styles;function Kt(t){var n=t[0],a=t[1],o=t.slice(4),l=yt(o,1),r=l[0],s=null;return Array.isArray(r)?s={tag:"g",attributes:{class:"".concat(J.cssPrefix,"-").concat(Tt.GROUP)},children:[{tag:"path",attributes:{class:"".concat(J.cssPrefix,"-").concat(Tt.SECONDARY),fill:"currentColor",d:r[0]}},{tag:"path",attributes:{class:"".concat(J.cssPrefix,"-").concat(Tt.PRIMARY),fill:"currentColor",d:r[1]}}]}:s={tag:"path",attributes:{fill:"currentColor",d:r}},{found:!0,width:n,height:a,icon:s}}var Ps={found:!1,width:512,height:512};function Os(t,n){!Mn&&!J.showMissingIcons&&t&&console.error('Icon with name "'.concat(t,'" and prefix "').concat(n,'" is missing.'))}function Xt(t,n){var a=n;return n==="fa"&&J.styleDefault!==null&&(n=ze()),new Promise(function(o,l){if(a==="fa"){var r=Jn(t)||{};t=r.iconName||t,n=r.prefix||n}if(t&&n&&Mt[n]&&Mt[n][t]){var s=Mt[n][t];return o(Kt(s))}Os(t,n),o(I(I({},Ps),{},{icon:J.showMissingIcons&&t?De("missingIconAbstract")||{}:{}}))})}var Ia=function(){},Jt=J.measurePerformance&&rt&&rt.mark&&rt.measure?rt:{mark:Ia,measure:Ia},He='FA "7.0.1"',Is=function(n){return Jt.mark("".concat(He," ").concat(n," begins")),function(){return eo(n)}},eo=function(n){Jt.mark("".concat(He," ").concat(n," ends")),Jt.measure("".concat(He," ").concat(n),"".concat(He," ").concat(n," begins"),"".concat(He," ").concat(n," ends"))},fa={begin:Is,end:eo},ct=function(){};function Ra(t){var n=t.getAttribute?t.getAttribute(Ae):null;return typeof n=="string"}function Rs(t){var n=t.getAttribute?t.getAttribute(la):null,a=t.getAttribute?t.getAttribute(ra):null;return n&&a}function Us(t){return t&&t.classList&&t.classList.contains&&t.classList.contains(J.replacementClass)}function qs(){if(J.autoReplaceSvg===!0)return dt.replace;var t=dt[J.autoReplaceSvg];return t||dt.replace}function Ys(t){return te.createElementNS("http://www.w3.org/2000/svg",t)}function Hs(t){return te.createElement(t)}function to(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=n.ceFn,o=a===void 0?t.tag==="svg"?Ys:Hs: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(to(s,{ceFn:o}))}),l}function Ws(t){var n=" ".concat(t.outerHTML," ");return n="".concat(n,"Font Awesome fontawesome.com "),n}var dt={replace:function(n){var a=n[0];if(a.parentNode)if(n[1].forEach(function(l){a.parentNode.insertBefore(to(l),a)}),a.getAttribute(Ae)===null&&J.keepOriginalSource){var o=te.createComment(Ws(a));a.parentNode.replaceChild(o,a)}else a.remove()},nest:function(n){var a=n[0],o=n[1];if(~ia(a).indexOf(J.replacementClass))return dt.replace(n);var l=new RegExp("".concat(J.cssPrefix,"-.*"));if(delete o[0].attributes.id,o[0].attributes.class){var r=o[0].attributes.class.split(" ").reduce(function(i,c){return c===J.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 nt(i)}).join(`
|
|
556
|
-
`);a.setAttribute(Ae,""),a.innerHTML=s}};function Ua(t){t()}function ao(t,n){var a=typeof n=="function"?n:
|
|
557
|
-
`),t.removeAttribute(a),o()}).catch(l)}else o()}else o()})}function mi(t){return Promise.all([Ka(t,"::before"),Ka(t,"::after")])}function fi(t){return t.parentNode!==document.head&&!~Jr.indexOf(t.tagName.toUpperCase())&&!t.getAttribute(Rt)&&(!t.parentNode||t.parentNode.tagName!=="svg")}var pi=function(n){return!!n&&An.some(function(a){return n.includes(a)})},gi=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(g){return g.trim()})});var l=
|
|
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(
|
|
559
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function en(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?en(Object(a),!0).forEach(function(o){ue(t,o,a[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):en(Object(a)).forEach(function(o){Object.defineProperty(t,o,Object.getOwnPropertyDescriptor(a,o))})}return t}function $i(t,n){if(t==null)return{};var a,o,l=zi(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 zi(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 ta(t){return Ei(t)||Ni(t)||Fi(t)||Si()}function Di(t,n){if(typeof t!="object"||!t)return t;var a=t[Symbol.toPrimitive];if(a!==void 0){var o=a.call(t,n);if(typeof o!="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return(n==="string"?String:Number)(t)}function Ti(t){var n=Di(t,"string");return typeof n=="symbol"?n:n+""}function vt(t){"@babel/helpers - typeof";return vt=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},vt(t)}function Fi(t,n){if(t){if(typeof t=="string")return ea(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)?ea(t,n):void 0}}function Ke(t,n){return Array.isArray(n)&&n.length>0||!Array.isArray(n)&&n?ue({},t,n):{}}function Ai(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 Mi=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},so={exports:{}};(function(t){(function(n){var a=function(v,y,b){if(!g(y)||C(y)||D(y)||B(y)||c(y))return y;var z,V=0,E=0;if(k(y))for(z=[],E=y.length;V<E;V++)z.push(a(v,y[V],b));else{z={};for(var M in y)Object.prototype.hasOwnProperty.call(y,M)&&(z[v(M,b)]=a(v,y[M],b))}return z},o=function(v,y){y=y||{};var b=y.separator||"_",z=y.split||/(?=[A-Z])/;return v.split(z).join(b)},l=function(v){return N(v)?v:(v=v.replace(/[\-_\s]+(.)?/g,function(y,b){return b?b.toUpperCase():""}),v.substr(0,1).toLowerCase()+v.substr(1))},r=function(v){var y=l(v);return y.substr(0,1).toUpperCase()+y.substr(1)},s=function(v,y){return o(v,y).toLowerCase()},i=Object.prototype.toString,c=function(v){return typeof v=="function"},g=function(v){return v===Object(v)},k=function(v){return i.call(v)=="[object Array]"},C=function(v){return i.call(v)=="[object Date]"},D=function(v){return i.call(v)=="[object RegExp]"},B=function(v){return i.call(v)=="[object Boolean]"},N=function(v){return v=v-0,v===v},x=function(v,y){var b=y&&"process"in y?y.process:y;return typeof b!="function"?v:function(z,V){return b(z,v,V)}},h={camelize:l,decamelize:s,pascalize:r,depascalize:s,camelizeKeys:function(v,y){return a(x(l,y),v)},decamelizeKeys:function(v,y){return a(x(s,y),v,y)},pascalizeKeys:function(v,y){return a(x(r,y),v)},depascalizeKeys:function(){return this.decamelizeKeys.apply(this,arguments)}};t.exports?t.exports=h:n.humps=h})(Mi)})(so);var Li=so.exports,_i=["class","style"];function ji(t){return t.split(";").map(function(n){return n.trim()}).filter(function(n){return n}).reduce(function(n,a){var o=a.indexOf(":"),l=Li.camelize(a.slice(0,o)),r=a.slice(o+1).trim();return n[l]=r,n},{})}function Pi(t){return t.split(/\s+/).reduce(function(n,a){return n[a]=!0,n},{})}function ga(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 ga(c)}),l=Object.keys(t.attributes||{}).reduce(function(c,g){var k=t.attributes[g];switch(g){case"class":c.class=Pi(k);break;case"style":c.style=ji(k);break;default:c.attrs[g]=k}return c},{attrs:{},class:{},style:{}});a.class;var r=a.style,s=r===void 0?{}:r,i=$i(a,_i);return e.h(t.tag,ge(ge(ge({},n),{},{class:l.class,style:ge(ge({},l.style),s)},l.attrs),i),o)}var io=!1;try{io=process.env.NODE_ENV==="production"}catch{}function Oi(){if(!io&&console&&typeof console.error=="function"){var t;(t=console).error.apply(t,arguments)}}function tn(t){if(t&&vt(t)==="object"&&t.prefix&&t.iconName&&t.icon)return t;if(gt.icon)return gt.icon(t);if(t===null)return null;if(vt(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 Ii=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 tn(n.icon)}),r=e.computed(function(){return Ke("classes",Ai(n))}),s=e.computed(function(){return Ke("transform",typeof n.transform=="string"?gt.transform(n.transform):n.transform)}),i=e.computed(function(){return Ke("mask",tn(n.mask))}),c=e.computed(function(){var k=ge(ge(ge(ge({},r.value),s.value),i.value),{},{symbol:n.symbol,maskId:n.maskId});return k.title=n.title,k.titleId=n.titleId,Bi(l.value,k)});e.watch(c,function(k){if(!k)return Oi("Could not find one or more icon(s)",l.value,i.value)},{immediate:!0});var g=e.computed(function(){return c.value?ga(c.value.abstract[0],{},o):null});return function(){return g.value}}});e.defineComponent({name:"FontAwesomeLayers",props:{fixedWidth:{type:Boolean,default:!1}},setup:function(n,a){var o=a.slots,l=ro.familyPrefix,r=e.computed(function(){return["".concat(l,"-layers")].concat(ta(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=ro.familyPrefix,r=e.computed(function(){return Ke("classes",[].concat(ta(n.counter?["".concat(l,"-layers-counter")]:[]),ta(n.position?["".concat(l,"-layers-").concat(n.position)]:[])))}),s=e.computed(function(){return Ke("transform",typeof n.transform=="string"?gt.transform(n.transform):n.transform)}),i=e.computed(function(){var g=Vi(n.value.toString(),ge(ge({},s.value),r.value)),k=g.abstract;return n.counter&&(k[0].attributes.class=k[0].attributes.class.replace("fa-layers-text","")),k[0]}),c=e.computed(function(){return ga(i.value,{},o)});return function(){return c.value}}});const L={__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(Ii),{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"]))}},Ri=["src","alt"],co={__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(()=>$(o({size:n.size,variant:n.variant}),n.class)),r=e.computed(()=>"aspect-square h-full w-full object-cover"),s=e.computed(()=>$("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(()=>$("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(g,k)=>(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,Ri)):t.initials?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(s.value)},e.toDisplayString(t.initials),3)):(e.openBlock(),e.createBlock(L,{key:2,name:"User",class:e.normalizeClass(i.value)},null,8,["class"]))],2))}},Ui=["aria-label"],va=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-linear-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($)(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(L,{icon:"xmark",class:"w-3 h-3"})],8,Ui)):e.createCommentVNode("",!0)],2))}}),qi=["disabled","aria-disabled","aria-busy"],Yi={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=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-linear-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($)(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(L,{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",Yi,e.toDisplayString(t.loadingText),1)):e.renderSlot(r.$slots,"default",{key:3})],16,qi))}}),Hi={class:"flex items-center gap-3"},Wi={class:"relative"},Gi=["id","checked","indeterminate","disabled","required","aria-describedby"],Ki={class:"flex-1"},Xi=["for"],Qe={__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),g=v=>{const y=v.target.checked;if(Array.isArray(l.modelValue)){const b=[...l.modelValue];if(y)b.push(l.value);else{const z=b.indexOf(l.value);z>-1&&b.splice(z,1)}r("update:modelValue",b)}else r("update:modelValue",y);r("change",y)},k=()=>{!l.disabled&&s.value&&s.value.click()},C=e.computed(()=>{if(l.error)return`${i.value}-error`}),D=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}]),N=e.computed(()=>["flex items-center justify-center rounded border-2 transition-all duration-200","cursor-pointer select-none",D.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"}]),x=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,v=>{s.value&&(s.value.indeterminate=v)},{immediate:!0}),(v,y)=>(e.openBlock(),e.createElementBlock("div",Hi,[e.createElementVNode("div",Wi,[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:g},null,42,Gi),e.createElementVNode("div",{class:e.normalizeClass(N.value),onClick:k},[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",Ki,[e.createElementVNode("label",{for:i.value,class:e.normalizeClass(x.value)},[e.renderSlot(v.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])],10,Xi),t.description?(e.openBlock(),e.createElementBlock("p",{key:0,class:e.normalizeClass(h.value)},e.toDisplayString(t.description),3)):e.createCommentVNode("",!0)])]))}},Ji={key:0,class:"px-3 text-sm text-gray-500 bg-white dark:bg-gray-900 dark:text-gray-400 relative z-10"},uo={__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($)(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",Ji,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)],2))}},Qi=["aria-label"],Zi={key:0,class:"sr-only"},Ct={__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(()=>$(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",Zi,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)],10,Qi))}},ec=["src","alt","loading"],mo={__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(()=>$(s({aspectRatio:a.aspectRatio}),a.class)),c=e.computed(()=>$("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")),g=e.computed(()=>"absolute inset-0 flex items-center justify-center bg-muted"),k=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)},D=B=>{l.value=!1,r.value=!0,o("error",B)};return(B,N)=>(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:D},null,42,ec),l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(g.value)},[t.showSpinner?(e.openBlock(),e.createBlock(Ct,{key:0,size:"sm"})):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),r.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(k.value)},[e.createVNode(L,{name:"ImageOff",class:"h-8 w-8 text-muted-foreground"}),N[0]||(N[0]=e.createElementVNode("span",{class:"text-sm text-muted-foreground"},"Failed to load image",-1))],2)):e.createCommentVNode("",!0)],2))}},tc={class:"relative"},ac={key:0,class:"absolute left-3 top-1/2 transform -translate-y-1/2 pointer-events-none"},nc=["id","type","value","placeholder","disabled","readonly","required","autocomplete","aria-describedby","aria-invalid"],oc={key:1,class:"absolute right-3 top-1/2 transform -translate-y-1/2"},lc=["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=y=>{l("update:modelValue",y.target.value)},c=y=>{l("blur",y)},g=y=>{l("focus",y)},k=y=>{l("keydown",y)},C=()=>{l("update:modelValue",""),l("clear"),r.value?.focus()},D=e.computed(()=>!!o.error||o.variant==="error"),B=e.computed(()=>{if(o.error)return`${s.value}-error`}),N=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]),x=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]]),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",N.value,x.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()}),(y,b)=>(e.openBlock(),e.createElementBlock("div",tc,[t.iconLeft?(e.openBlock(),e.createElementBlock("div",ac,[(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(v.value),"aria-describedby":B.value,"aria-invalid":D.value,onInput:i,onBlur:c,onFocus:g,onKeydown:k},null,42,nc),t.iconRight||t.clearable?(e.openBlock(),e.createElementBlock("div",oc,[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(L,{name:"x-mark",class:"w-5 h-5"})],8,lc)):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)]))}},rc=["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=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(()=>$(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,rc))}},fo={__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,g)=>(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($)(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(L,{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(L,{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(L,{key:2,name:"external-link",class:"w-3 h-3 ml-1 inline-block"})):e.createCommentVNode("",!0)]),_:3},8,["href","to","target","rel","class"]))}},sc=["src","alt"],po={__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(()=>$(a({size:n.size}),n.class)),l=e.computed(()=>$("h-full w-auto object-contain")),r=e.computed(()=>$("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,sc)):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(r.value)},e.toDisplayString(t.text||"Logo"),3))],2))}},ic=["value","disabled","selected"],ha={__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,ic))}},cc=["aria-valuenow"],go={__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($)(e.unref(o)({size:t.size}),r.$attrs.class))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref($)(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,cc)],2))}},dc=["aria-valuenow"],vo={__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(()=>$(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,g)=>(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,dc),t.showLabel?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(i.value)},e.toDisplayString(a.value)+"% ",3)):e.createCommentVNode("",!0)],2))}},uc=["width","height","viewBox"],mc=["cx","cy","r","stroke","stroke-width"],fc=["cx","cy","r","stroke","stroke-width","stroke-dasharray","stroke-dashoffset","stroke-linecap"],pc={key:0,class:"absolute inset-0 flex items-center justify-center"},ya={__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 N=a.value/o.value*100;return Math.min(Math.max(N,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),g=e.computed(()=>2*Math.PI*c.value),k=e.computed(()=>g.value-l.value/100*g.value),C=e.computed(()=>{if(n.dynamicColor){const x=l.value;return x>=80?"#ef4444":x>=60?"#f59e0b":x>=40?"#eab308":x>=20?"#22c55e":"#6b7280"}const N={default:"#3b82f6",success:"#10b981",warning:"#f59e0b",danger:"#ef4444"};return N[n.variant]||N.default}),D=e.computed(()=>"#e5e7eb"),B=e.computed(()=>{if(n.dynamicColor){const x=l.value;return x>=80?"text-red-600":x>=60?"text-orange-600":x>=40?"text-yellow-600":x>=20?"text-green-600":"text-gray-600"}const N={default:"text-blue-600",success:"text-green-600",warning:"text-yellow-600",danger:"text-red-600"};return N[n.variant]||N.default});return(N,x)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref($)("relative inline-flex items-center justify-center",N.$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:D.value,"stroke-width":s.value,fill:"none"},null,8,mc),e.createElementVNode("circle",{cx:i.value,cy:i.value,r:c.value,stroke:C.value,"stroke-width":s.value,fill:"none","stroke-dasharray":g.value,"stroke-dashoffset":k.value,"stroke-linecap":t.strokeLinecap,class:"transition-all duration-300 ease-in-out"},null,8,fc)],8,uc)),t.showValue?(e.openBlock(),e.createElementBlock("div",pc,[e.createElementVNode("span",{class:e.normalizeClass(e.unref($)("text-xs font-medium",B.value))},e.toDisplayString(t.showRawValue?a.value.toFixed(2):Math.round(l.value)+"%"),3)])):e.createCommentVNode("",!0)],2))}},gc={class:"flex items-center space-x-2"},vc=["aria-checked","disabled"],ho={__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(()=>$(r({size:a.size}),a.disabled&&"cursor-not-allowed opacity-50",a.class)),i=e.computed(()=>$("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(()=>$("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",!a.disabled&&"cursor-pointer")),g=()=>{a.disabled||o("update:modelValue",a.value)};return(k,C)=>(e.openBlock(),e.createElementBlock("div",gc,[e.createElementVNode("button",{type:"button",role:"radio","aria-checked":l.value,disabled:t.disabled,class:e.normalizeClass(s.value),onClick:g},[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(i.value)},null,2)):e.createCommentVNode("",!0)],10,vc),t.label?(e.openBlock(),e.createElementBlock("label",{key:0,class:e.normalizeClass(c.value),onClick:g},e.toDisplayString(t.label),3)):e.createCommentVNode("",!0)]))}},hc=["id","name","value","disabled","required"],yc={key:1,class:"relative"},bc=["id","disabled"],xc={key:0,class:"text-gray-500"},kc={key:1,class:"text-gray-900"},wc={class:"px-3 py-2 border-b border-gray-200"},Cc=["onKeydown"],Bc={key:0,class:"max-h-48 overflow-y-auto"},Vc=["onClick"],Ec={class:"block font-normal truncate"},Nc={key:0,class:"absolute inset-y-0 right-0 flex items-center pr-4 text-blue-600"},Sc={key:1,class:"px-4 py-3 text-sm text-gray-500 text-center"},$c={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),g=e.ref([...a.options]),k=e.ref({}),C=e.computed(()=>a.options.find(V=>V.value===a.modelValue)),D=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(()=>$(D({disabled:a.disabled}),"px-3 py-2",a.class)),N=()=>{if(!i.value)return;const V=i.value.getBoundingClientRect();k.value={position:"fixed",top:`${V.bottom+4}px`,left:`${V.left}px`,width:`${V.width}px`,zIndex:9999}},x=()=>{a.disabled||(l.value=!l.value,l.value&&(N(),e.nextTick(()=>{s.value?.focus()})))},h=V=>{o("update:modelValue",V),l.value=!1,r.value="",g.value=[...a.options]},v=V=>{if(V&&(V.stopPropagation(),V.preventDefault()),a.allowCreate&&r.value.trim()){const E=r.value.trim();o("update:modelValue",E),l.value=!1,r.value="",g.value=[...a.options]}},y=()=>{if(!r.value.trim())g.value=[...a.options];else{const V=r.value.toLowerCase();g.value=a.options.filter(E=>E.label.toLowerCase().includes(V))}},b=V=>{V.key==="Escape"?(l.value=!1,r.value="",g.value=[...a.options]):V.key==="Enter"&&a.allowCreate&&r.value.trim()&&g.value.length===0&&(V.preventDefault(),v(V))},z=V=>{if(!i.value)return;const E=V.target,M=c.value&&c.value.contains(E),Y=i.value.contains(E);!M&&!Y&&(l.value=!1,r.value="",g.value=[...a.options])};return e.onMounted(()=>{document.addEventListener("click",z),window.addEventListener("scroll",N,!0),window.addEventListener("resize",N)}),e.onUnmounted(()=>{document.removeEventListener("click",z),window.removeEventListener("scroll",N,!0),window.removeEventListener("resize",N)}),e.watch(()=>a.options,V=>{g.value=[...V]},{immediate:!0}),e.watch(l,V=>{V&&N()}),(V,E)=>!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},V.$attrs,{onChange:E[0]||(E[0]=M=>V.$emit("update:modelValue",M.target.value))}),[e.renderSlot(V.$slots,"default")],16,hc)):(e.openBlock(),e.createElementBlock("div",yc,[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:x,onKeydown:b},[C.value?(e.openBlock(),e.createElementBlock("div",kc,e.toDisplayString(C.value.label),1)):(e.openBlock(),e.createElementBlock("div",xc,e.toDisplayString(t.placeholder||"Select an option"),1)),E[3]||(E[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,bc),(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(k.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",wc,[e.withDirectives(e.createElementVNode("input",{ref_key:"searchInput",ref:s,"onUpdate:modelValue":E[1]||(E[1]=M=>r.value=M),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:y,onKeydown:[b,e.withKeys(e.withModifiers(b,["prevent"]),["enter"])]},null,40,Cc),[[e.vModelText,r.value]])]),g.value.length>0?(e.openBlock(),e.createElementBlock("div",Bc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.value,M=>(e.openBlock(),e.createElementBlock("button",{key:M.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===M.value}]),onClick:e.withModifiers(Y=>h(M.value),["stop"])},[e.createElementVNode("span",Ec,e.toDisplayString(M.label),1),t.modelValue===M.value?(e.openBlock(),e.createElementBlock("span",Nc,[...E[4]||(E[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,Vc))),128))])):a.allowCreate?(e.openBlock(),e.createElementBlock("div",$c,[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:E[2]||(E[2]=e.withModifiers(()=>{},["prevent"]))},' Create "'+e.toDisplayString(r.value)+'" ',33)])):(e.openBlock(),e.createElementBlock("div",Sc," No options found "))],4)):e.createCommentVNode("",!0)]))]))}},zc=["aria-checked","disabled"],yo={__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(()=>$(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(g,k)=>(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,zc))}},bo={__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(()=>$(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"]))}},Dc=["id","value","placeholder","disabled","readonly","required","rows","maxlength","aria-describedby","aria-invalid"],Bt={__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(()=>x())},c=h=>l("blur",h),g=h=>l("focus",h),k=h=>l("keydown",h),C=e.computed(()=>!!o.error||o.variant==="error"),D=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"}}),N=e.computed(()=>$(B({size:o.size,variant:o.variant,resize:o.resize}))),x=()=>{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(()=>x())},{immediate:!0}),n({focus:()=>r.value?.focus(),blur:()=>r.value?.blur(),select:()=>r.value?.select()}),(h,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(N.value),"aria-describedby":D.value,"aria-invalid":C.value,onInput:i,onBlur:c,onFocus:g,onKeydown:k},null,42,Dc))}},ba={__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"}}}),g=e.computed(()=>$(i({placement:n.placement}),n.class)),k=e.computed(()=>c({placement:n.placement})),C=()=>{if(!o.value||!l.value)return;const N=o.value.getBoundingClientRect(),x=l.value.getBoundingClientRect();let h=0,v=0;const y=8;switch(n.placement){case"top":h=N.top-x.height-y,v=N.left+N.width/2-x.width/2;break;case"bottom":h=N.bottom+y,v=N.left+N.width/2-x.width/2;break;case"left":h=N.top+N.height/2-x.height/2,v=N.left-x.width-y;break;case"right":h=N.top+N.height/2-x.height/2,v=N.right+y;break}const b=8;v<b&&(v=b),v+x.width>window.innerWidth-b&&(v=window.innerWidth-x.width-b),h<b&&(h=b),h+x.height>window.innerHeight-b&&(h=window.innerHeight-x.height-b),r.value={top:`${h}px`,left:`${v}px`}},D=()=>{s&&clearTimeout(s),s=setTimeout(async()=>{a.value=!0,await e.nextTick(),C()},n.delay)},B=()=>{s&&clearTimeout(s),a.value=!1};return(N,x)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"triggerRef",ref:o,class:"relative inline-block",onMouseenter:D,onMouseleave:B},[e.renderSlot(N.$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(g.value),style:e.normalizeStyle(r.value),role:"tooltip"},[e.createTextVNode(e.toDisplayString(t.content)+" ",1),e.createElementVNode("div",{class:e.normalizeClass(k.value)},null,2)],6)):e.createCommentVNode("",!0)]),_:1})]))],544))}},Tc={key:0,class:"text-red-600 ml-1","aria-hidden":"true"},ht={__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-linear-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]:""),g=e.computed(()=>n.tracking?{tighter:"tracking-tighter",tight:"tracking-tight",normal:"tracking-normal",wide:"tracking-wide",wider:"tracking-wider",widest:"tracking-widest"}[n.tracking]:""),k=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]:""),D=e.computed(()=>n.responsive?"text-sm sm:text-base md:text-lg lg:text-xl":""),B=e.computed(()=>n.maxLines?`line-clamp-${n.maxLines}`:""),N=e.computed(()=>{const h={};return n.opacity!==null&&(h.opacity=n.opacity/100),h}),x=e.computed(()=>[o.value,l.value,r.value,s.value,i.value,c.value,g.value,k.value,C.value,D.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,v)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.value),e.mergeProps({class:x.value,style:N.value},h.$attrs),{default:e.withCtx(()=>[e.renderSlot(h.$slots,"default"),t.required?(e.openBlock(),e.createElementBlock("span",Tc,"*")):e.createCommentVNode("",!0)]),_:3},16,["class","style"]))}},Fc={class:"flex items-start gap-3"},Ac={key:0,class:"shrink-0 mt-0.5"},Mc={class:"flex-1 min-w-0"},Lc={key:0,class:"font-medium text-sm mb-1"},_c={key:1,class:"mt-3 flex gap-2"},jc=["aria-label"],xo=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"})])}},g={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"})])}},k={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"})])}},D=e.computed(()=>({info:i,success:c,warning:g,error:k,default:i,danger:k})[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"}}),N=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]]),x=e.computed(()=>["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,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($)(e.unref(B)({variant:t.variant}),h.$attrs.class)),role:"alert"},[e.createElementVNode("div",Fc,[t.showIcon?(e.openBlock(),e.createElementBlock("div",Ac,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(D.value),{class:e.normalizeClass(N.value)},null,8,["class"]))])):e.createCommentVNode("",!0),e.createElementVNode("div",Mc,[t.title?(e.openBlock(),e.createElementBlock("h4",Lc,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",_c,[e.renderSlot(h.$slots,"actions",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.actions,y=>(e.openBlock(),e.createBlock(oe,{key:y.label,variant:y.variant||"outline",size:y.size||"sm",onClick:b=>s(y)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(y.label),1)]),_:2},1032,["variant","size","onClick"]))),128))])])):e.createCommentVNode("",!0)]),t.dismissible?(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass(x.value),"aria-label":t.dismissLabel,onClick:r},[e.createVNode(C,{class:"w-4 h-4"})],10,jc)):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0)]),_:3}))}}),Pc=["aria-label"],Oc={class:"flex items-center space-x-1"},ko={__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(()=>$(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",Oc,[(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(L,{key:0,name:t.separator,class:"mx-2 h-4 w-4 text-muted-foreground"},null,8,["name"])):e.createCommentVNode("",!0)]))),128))])],10,Pc))}},Ic=["aria-label"],wo={__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(()=>$(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,Ic))}},Rc={key:0,class:"absolute inset-0 bg-white/60 backdrop-blur-sm flex items-center justify-center z-10","aria-hidden":"true"},Uc={class:"flex items-start justify-between gap-4"},qc={class:"flex-1 min-w-0"},Yc={key:0,class:"shrink-0"},Hc=["src","alt","loading"],Wc={key:5,class:"absolute top-3 right-3"},Gc={class:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-slate-900 text-white"},Kc="w-full h-full object-cover",Xc="font-semibold text-slate-900 line-clamp-2",Jc="text-sm text-slate-600 mt-1 line-clamp-2",Co={__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}}),g=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:""}}}),k=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"}}}),D=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,N)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.as),{class:e.normalizeClass(e.unref($)(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",Rc,[...N[0]||(N[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($)(e.unref(g)({padding:t.padding,hasBorder:!!(B.$slots.default||B.$slots.footer)})))},[e.renderSlot(B.$slots,"header",{},()=>[e.createElementVNode("div",Uc,[e.createElementVNode("div",qc,[t.title?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.titleTag),{key:0,class:e.normalizeClass(e.unref($)(Xc,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(Jc)},e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)]),B.$slots.actions?(e.openBlock(),e.createElementBlock("div",Yc,[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($)(e.unref(D)({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($)(Kc,i.value)),loading:t.imageLazy?"lazy":"eager"},null,10,Hc)):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0),B.$slots.default?(e.openBlock(),e.createElementBlock("div",{key:3,class:e.normalizeClass(e.unref($)(e.unref(k)({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($)(e.unref(C)({padding:t.padding})))},[e.renderSlot(B.$slots,"footer")],2)):e.createCommentVNode("",!0),t.badge?(e.openBlock(),e.createElementBlock("div",Wc,[e.createElementVNode("span",Gc,e.toDisplayString(t.badge),1)])):e.createCommentVNode("",!0)]),_:3},40,["class","disabled","aria-busy","aria-disabled","role","tabindex","onKeydown"]))}},Qc={key:0},Zc={key:1},ed={key:0},Bo=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($)(e.unref(n)({size:t.size}),o.$attrs.class))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref($)(e.unref(a)({alignment:t.alignment}),"flex flex-col"))},[t.title||o.$slots.title?(e.openBlock(),e.createElementBlock("h2",Qc,[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",Zc,[e.renderSlot(o.$slots,"description",{},()=>[e.createTextVNode(e.toDisplayString(t.subtitle),1)])])):e.createCommentVNode("",!0)],2),o.$slots.actions?(e.openBlock(),e.createElementBlock("div",ed,[e.renderSlot(o.$slots,"actions")])):e.createCommentVNode("",!0)],2))}}),Vo={__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(()=>$(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}},Eo={__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(()=>$(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}},No=Object.assign({inheritAttrs:!1},{__name:"CardContent",setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref($)("p-6 pt-0",n.$attrs.class))},[e.renderSlot(n.$slots,"default")],2))}}),So=Object.assign({inheritAttrs:!1},{__name:"CardTitle",setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("h3",{class:e.normalizeClass(e.unref($)("text-2xl font-semibold leading-none tracking-tight",n.$attrs.class))},[e.renderSlot(n.$slots,"default")],2))}}),td={class:"relative w-full"},ad={class:"relative"},nd=["id","value","disabled","placeholder","required","aria-describedby"],od={class:"flex items-center justify-between mb-3"},ld={class:"text-sm font-semibold text-slate-900"},rd={class:"grid grid-cols-7 gap-1 mb-1"},sd={class:"grid grid-cols-7 gap-1"},id=["disabled","onClick"],cd={key:0,class:"mt-3 pt-2 border-t border-slate-200"},ot={__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()),g=e.ref(i.getFullYear()),k=e.ref(null),C=e.ref(!1),D=["Su","Mo","Tu","We","Th","Fr","Sa"],B=e.computed(()=>new Date(g.value,c.value).toLocaleString("default",{month:"long"})),N=e.computed(()=>new Date(g.value,c.value+1,0).getDate()),x=e.computed(()=>new Date(g.value,c.value,1).getDay()),h=e.computed(()=>{const P=new Date(g.value,c.value,0).getDate(),W=x.value;return Array.from({length:W},(X,R)=>P-W+R+1)}),v=e.computed(()=>{const P=h.value.length+N.value,W=P%7===0?0:7-P%7;return Array.from({length:W},(X,R)=>R+1)}),y=e.computed(()=>k.value?b(k.value):"");function b(P){if(!P)return"";const W=new Date(P),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(P){if(!P)return null;if(P instanceof Date)return P;if(typeof P=="string"){const X=P.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(P);return isNaN(W.getTime())?null:W}function V(P){return i.getDate()===P&&i.getMonth()===c.value&&i.getFullYear()===g.value}function E(P){if(!k.value)return!1;const W=new Date(k.value);return W.getDate()===P&&W.getMonth()===c.value&&W.getFullYear()===g.value}function M(P){const W=new Date(g.value,c.value,P);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 Y(P){if(!P)return C.value=!1,o("validation-error",null),!0;if(a.customValidation){const W=a.customValidation(P);if(W)return C.value=!0,o("validation-error",W),!1}return C.value=!1,o("validation-error",null),!0}async function U(){await e.nextTick();const P=document.getElementById(a.id);if(!P||!r.value)return;const W=P.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 T(){a.disabled||(l.value=!l.value,l.value&&await U())}function _(){l.value=!1}function f(){c.value===0?(c.value=11,g.value--):c.value--}function w(){c.value===11?(c.value=0,g.value++):c.value++}function m(P){if(M(P))return;const W=new Date(g.value,c.value,P);if(!Y(W))return;k.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 S(){c.value=i.getMonth(),g.value=i.getFullYear(),m(i.getDate())}function u(){k.value=null,C.value=!1,o("update:modelValue",""),o("validation-error",null)}e.watch(()=>a.modelValue,P=>{if(P){const W=z(P);W&&(k.value=W,c.value=W.getMonth(),g.value=W.getFullYear(),Y(W))}else k.value=null,C.value=!1},{immediate:!0});function p(){l.value&&U()}function d(P){P.key==="Escape"&&l.value&&_()}return e.onMounted(()=>{document.addEventListener("keydown",d),window.addEventListener("resize",p)}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",d),window.removeEventListener("resize",p)}),(P,W)=>(e.openBlock(),e.createElementBlock("div",td,[e.createElementVNode("div",ad,[e.createElementVNode("input",{id:t.id,type:"text",value:y.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:T},null,10,nd),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&&y.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(u,["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",od,[e.createElementVNode("button",{type:"button",class:"p-1.5 rounded hover:bg-slate-100 transition-colors","aria-label":"Previous Month",onClick:f},[...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",ld,e.toDisplayString(B.value)+" "+e.toDisplayString(g.value),1),e.createElementVNode("button",{type:"button",class:"p-1.5 rounded hover:bg-slate-100 transition-colors","aria-label":"Next Month",onClick:w},[...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",rd,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(D,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",sd,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.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(N.value,X=>(e.openBlock(),e.createElementBlock("button",{key:X,type:"button",disabled:M(X),class:e.normalizeClass(["w-8 h-8 rounded text-xs font-medium transition-colors",V(X)&&!E(X)?"bg-blue-50 text-blue-600 ring-1 ring-blue-200":"",E(X)?"bg-blue-500 text-white hover:bg-blue-600":"text-slate-700 hover:bg-slate-100",M(X)?"text-slate-300 cursor-not-allowed hover:bg-transparent line-through":"cursor-pointer"]),onClick:R=>m(X)},e.toDisplayString(X),11,id))),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",cd,[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:S}," 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)]))]))}},dd=["aria-expanded"],$o={__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(()=>$(l({variant:n.variant}),"h-10 px-4 py-2")),i=e.computed(()=>$(r({placement:n.placement}))),c=()=>{a.value=!a.value},g=k=>{o.value&&!o.value.contains(k.target)&&(a.value=!1)};return e.onMounted(()=>{document.addEventListener("click",g)}),e.onUnmounted(()=>{document.removeEventListener("click",g)}),(k,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(k.$slots,"trigger",{},()=>[e.createElementVNode("span",null,e.toDisplayString(t.triggerText),1),e.createVNode(L,{name:"chevron-down",class:"ml-2 h-4 w-4"})])],10,dd),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(k.$slots,"default")],2)):e.createCommentVNode("",!0)]),_:3})],512))}},ud={key:1,class:"ml-auto text-xs tracking-widest opacity-60"},zo={__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(()=>$(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(L,{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",ud,e.toDisplayString(t.shortcut),1)):e.createCommentVNode("",!0)]),_:3},8,["href","class","disabled"]))}},md={class:"w-full"},fd=["multiple","accept"],pd={class:"flex items-center justify-center px-4 py-3"},gd={class:"bg-gray-100 rounded-full p-2 mr-3"},vd={class:"flex flex-col"},hd={class:"text-xs text-gray-500"},yd={key:0,class:"ml-2"},bd={key:1,class:"mt-4 space-y-2"},xd={class:"flex items-center space-x-3"},kd={class:"flex flex-col"},wd={class:"text-sm font-medium text-gray-900"},Cd={class:"text-xs text-gray-500"},Bd={class:"flex items-center space-x-3"},Vd={class:"bg-green-100 rounded-md p-2"},Ed={class:"flex flex-col"},Nd={class:"text-sm font-medium text-gray-900"},Sd={class:"text-xs text-gray-500"},$d=["onClick"],Ze={__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=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"}}}),g=e.computed(()=>$(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})),k=b=>{b.preventDefault(),r.value=!1;const z=Array.from(b.dataTransfer.files);h(z)},C=b=>{b.preventDefault()},D=b=>{b.preventDefault(),r.value=!0},B=b=>{b.preventDefault(),r.value=!1},N=()=>{s.value?.click()},x=b=>{const z=Array.from(b.target.files);h(z)},h=b=>{const z=b.filter(E=>!(a.maxSize&&E.size>a.maxSize));if(z.length===0)return;if(a.maxFiles){const E=l.value.length+i.value.length;if(E>=a.maxFiles)return;const M=a.maxFiles-E;z.splice(M)}const V=z.map(E=>e.reactive({file:E,progress:0,uploading:!0}));i.value.push(...V),V.forEach(E=>{const M=2e3+Math.random()*2e3,Y=50,T=100/(M/Y),_=setInterval(()=>{E.progress+=T,E.progress>=100&&(E.progress=100,E.uploading=!1,clearInterval(_),a.multiple?(l.value.push(E.file),o("files-selected",l.value)):(l.value=[E.file],o("files-selected",E.file)),i.value.splice(i.value.indexOf(E),1))},Y)})},v=b=>{l.value.splice(b,1),a.multiple?o("file-removed",l.value):o("file-removed",l.value.length>0?l.value[0]:null)},y=b=>{if(b===0)return"0 Bytes";const z=1024,V=["Bytes","KB","MB","GB"],E=Math.floor(Math.log(b)/Math.log(z));return parseFloat((b/Math.pow(z,E)).toFixed(2))+" "+V[E]};return(b,z)=>(e.openBlock(),e.createElementBlock("div",md,[!l.value.length||t.multiple?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(g.value),onDrop:k,onDragover:C,onDragenter:D,onDragleave:B,onClick:N},[e.createElementVNode("input",{ref_key:"fileInput",ref:s,type:"file",multiple:t.multiple,accept:t.accept,class:"hidden",onChange:x},null,40,fd),e.createElementVNode("div",pd,[e.createElementVNode("div",gd,[e.createVNode(L,{icon:"upload",class:"h-6 w-6 text-gray-600"})]),e.createElementVNode("div",vd,[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",hd,[e.createTextVNode(e.toDisplayString(t.maxSize?`Up to ${y(t.maxSize)}`:"No size limit")+" ",1),t.accept?(e.openBlock(),e.createElementBlock("span",yd,"• "+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",bd,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,(V,E)=>(e.openBlock(),e.createElementBlock("div",{key:`uploading-${E}`,class:"flex items-center justify-between p-3 bg-white border border-gray-200 rounded-lg shadow-sm"},[e.createElementVNode("div",xd,[e.createVNode(ya,{value:V.progress,max:100,size:"sm",variant:"default","dynamic-color":!0,class:"shrink-0"},null,8,["value"]),e.createElementVNode("div",kd,[e.createElementVNode("span",wd,e.toDisplayString(V.file.name),1),e.createElementVNode("span",Cd,"Uploading... "+e.toDisplayString(Math.round(V.progress))+"%",1)])])]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,(V,E)=>(e.openBlock(),e.createElementBlock("div",{key:`uploaded-${E}`,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",Bd,[e.createElementVNode("div",Vd,[e.createVNode(L,{icon:"file",class:"h-5 w-5 text-green-600"})]),e.createElementVNode("div",Ed,[e.createElementVNode("span",Nd,e.toDisplayString(V.name),1),e.createElementVNode("span",Sd,e.toDisplayString(y(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:M=>v(E)},[e.createVNode(L,{icon:"x",class:"h-4 w-4"})],8,$d)]))),128))])):e.createCommentVNode("",!0)]))}},zd=["for"],Dd={key:0,class:"text-red-500 ml-1","aria-label":"required"},Td={class:"relative"},Fd=["aria-label"],Ad=["id"],Md=["id"],Vt={__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},g=e.computed(()=>{const x=[];return a.error?x.push(`${r.value}-error`):a.helpText&&x.push(`${r.value}-help`),x.length>0?x.join(" "):void 0}),k=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"}}),D=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"}}),N=O.cva("text-slate-500",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-sm"}},defaultVariants:{size:"md"}});return(x,h)=>{const v=e.resolveComponent("font-awesome-icon");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref($)(e.unref(k)({size:t.size}),x.$attrs.class))},[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:r.value,class:e.normalizeClass(e.unref($)(e.unref(C)({size:t.size})))},[e.createTextVNode(e.toDisplayString(t.label)+" ",1),t.required?(e.openBlock(),e.createElementBlock("span",Dd,"*")):e.createCommentVNode("",!0)],10,zd)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:e.normalizeClass(e.unref($)(e.unref(D)({size:t.size})))},e.toDisplayString(t.description),3)):e.createCommentVNode("",!0),e.createElementVNode("div",Td,[t.type==="date"?(e.openBlock(),e.createBlock(ot,{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]=y=>o("update:modelValue",y))},null,8,["id","model-value","required","class"])):e.renderSlot(x.$slots,"default",{key:1,fieldId:r.value,hasError:s.value,ariaDescribedBy:g.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,Fd)):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($)(e.unref(B)({size:t.size,intent:"error"}))),role:"alert","aria-live":"polite"},[e.createVNode(v,{icon:"exclamation-triangle",class:"w-4 h-4 shrink-0 mt-0.5"}),e.createElementVNode("span",null,e.toDisplayString(t.error),1)],10,Ad)):e.createCommentVNode("",!0)]),_:1}),t.helpText&&!s.value?(e.openBlock(),e.createElementBlock("p",{key:2,id:`${r.value}-help`,class:e.normalizeClass(e.unref($)(e.unref(N)({size:t.size})))},e.toDisplayString(t.helpText),11,Md)):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($)(e.unref(B)({size:t.size,intent:"success"})))},[e.createVNode(v,{icon:"check",class:"w-4 h-4 shrink-0 mt-0.5"}),e.createElementVNode("span",null,e.toDisplayString(t.success),1)],2)):e.createCommentVNode("",!0)]),_:1})],2)}}},Ld={key:0,class:"flex items-center px-3 bg-muted border border-r-0 rounded-l-md"},_d={key:1,class:"flex items-center px-3 bg-muted border border-l-0 rounded-r-md"},Do={__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(()=>$(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",Ld,[e.renderSlot(l.$slots,"prefix")])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default"),l.$slots.suffix?(e.openBlock(),e.createElementBlock("div",_d,[e.renderSlot(l.$slots,"suffix")])):e.createCommentVNode("",!0)],2))}},jd=["role"],Pd={key:0,class:"shrink-0"},Od={class:"flex-1 min-w-0"},Id={key:0,class:"text-sm font-medium text-foreground"},Rd={key:1,class:"text-sm text-muted-foreground"},Ud={key:1,class:"shrink-0"},To={__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(()=>$(l({variant:a.variant}))),i=e.computed(()=>$(r({variant:a.variant}))),c=g=>{o("click",g)};return(g,k)=>(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(()=>[g.$slots.icon||t.icon?(e.openBlock(),e.createElementBlock("div",Pd,[e.renderSlot(g.$slots,"icon",{},()=>[t.icon?(e.openBlock(),e.createBlock(L,{key:0,name:t.icon,class:"h-5 w-5"},null,8,["name"])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Od,[t.title?(e.openBlock(),e.createElementBlock("div",Id,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("div",Rd,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0),e.renderSlot(g.$slots,"default")]),g.$slots.action?(e.openBlock(),e.createElementBlock("div",Ud,[e.renderSlot(g.$slots,"action")])):e.createCommentVNode("",!0)]),_:3},8,["href","class"]))],10,jd))}},qd={key:1,class:"ml-auto text-xs tracking-widest opacity-60"},Fo={__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(()=>$(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(L,{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",qd,e.toDisplayString(t.shortcut),1)):e.createCommentVNode("",!0),t.hasSubmenu?(e.openBlock(),e.createBlock(L,{key:2,name:"chevron-right",class:"ml-auto h-4 w-4"})):e.createCommentVNode("",!0)]),_:3},8,["href","class","disabled"]))}},Et={__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=g=>{g.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,g)=>(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($)(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(L,{icon:"x",class:"h-4 w-4"}),g[0]||(g[0]=e.createElementVNode("span",{class:"sr-only"},"Close",-1))])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default")],6)],2)):e.createCommentVNode("",!0)]),_:3})]))}},Yd={class:"flex flex-col space-y-1.5 text-center sm:text-left"},Hd={key:0,class:"text-lg font-semibold leading-none tracking-tight"},Wd={key:1,class:"text-sm text-muted-foreground"},Ao={__name:"ModalHeader",props:{title:String,description:String},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",Yd,[t.title?(e.openBlock(),e.createElementBlock("h2",Hd,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",Wd,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"default")]))}},Mo={__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(()=>$(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}},Lo={__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(()=>$(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}},Gd=["aria-live"],Kd={class:"flex items-start space-x-3"},Xd={key:0,class:"shrink-0"},Jd={class:"flex-1 min-w-0"},Qd={key:0,class:"text-sm font-medium"},_o={__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(()=>$(r({variant:a.variant}),"p-4")),g=e.computed(()=>s[a.variant]),k=e.computed(()=>i({variant:a.variant})),C=()=>{l.value=!1,o("dismiss")};return e.onMounted(()=>{a.autoClose>0&&setTimeout(()=>{C()},a.autoClose)}),(D,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",Kd,[t.showIcon?(e.openBlock(),e.createElementBlock("div",Xd,[e.createVNode(L,{name:g.value,class:e.normalizeClass(k.value)},null,8,["name","class"])])):e.createCommentVNode("",!0),e.createElementVNode("div",Jd,[t.title?(e.openBlock(),e.createElementBlock("div",Qd,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(D.$slots,"default")]),t.dismissible?(e.openBlock(),e.createElementBlock("button",{key:1,class:"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(L,{name:"x",class:"h-4 w-4"})])):e.createCommentVNode("",!0)])],10,Gd)):e.createCommentVNode("",!0)]),_:3}))}},et=e.ref([]);let Zd=0;const eu={duration:3e3,position:"top-center",dismissible:!0,closeButton:!1},tu=()=>`toast-${++Zd}-${Date.now()}`,Ce=(t,n={})=>{const a=tu(),o={id:a,message:t,...eu,...n,createdAt:Date.now()};return et.value.push(e.markRaw(o)),o.duration&&o.duration>0&&setTimeout(()=>{Xe(a)},o.duration),a},Xe=t=>{const n=et.value.findIndex(a=>a.id===t);n>-1&&et.value.splice(n,1)},jo=()=>{et.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=>{Xe(s);const c=typeof o=="function"?o(i):o;return Ce(c,{...r,variant:"success"}),i}).catch(i=>{Xe(s);const c=typeof l=="function"?l(i):l;throw Ce(c,{...r,variant:"error"}),i})},dismiss:Xe,dismissAll:jo,custom:(t,n={})=>Ce("",{...n,component:e.markRaw(t)})}),Po=()=>({toasts:et,dismiss:Xe,dismissAll:jo}),au=["aria-live"],nu={class:"flex-1 grid gap-1"},ou={key:0,class:"text-lg font-extrabold"},lu={key:1,class:"text-md opacity-90"},ru={key:2,class:"text-md opacity-90"},su=["onClick"],iu=["onClick"],Oo={__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}=Po(),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(()=>$(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=N=>$(s({variant:N.variant})),c={default:"bell",info:"info",success:"check-circle",warning:"triangle-exclamation",error:"circle-exclamation",loading:"loader"},g={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"},k=N=>N.icon||c[N.variant]||c.default,C=N=>{const x=g[N.variant]||g.default;return N.variant==="loading"?`${x} animate-spin`:x},D=N=>N.icon!==!1,B=N=>N.dismissible!==!1&&(N.closeButton||n.closeButton||N.dismissible);return(N,x)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createElementVNode("div",{class:e.normalizeClass(e.unref($)(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"},[D(h)?(e.openBlock(),e.createBlock(L,{key:0,icon:k(h),class:e.normalizeClass([C(h),"h-4 w-4 shrink-0"])},null,8,["icon","class"])):e.createCommentVNode("",!0),e.createElementVNode("div",nu,[h.title?(e.openBlock(),e.createElementBlock("div",ou,e.toDisplayString(h.title),1)):e.createCommentVNode("",!0),h.message?(e.openBlock(),e.createElementBlock("div",lu,e.toDisplayString(h.message),1)):e.createCommentVNode("",!0),h.description?(e.openBlock(),e.createElementBlock("div",ru,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,su)):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:v=>e.unref(o)(h.id)},[e.createVNode(L,{icon:"x",class:"h-4 w-4"})],8,iu)):e.createCommentVNode("",!0)],10,au))),128))]),_:1})],2)]))}},cu={class:"relative"},du={class:"absolute left-3 top-1/2 transform -translate-y-1/2 pointer-events-none"},uu=["value","placeholder","disabled"],mu={key:0,class:"absolute right-3 top-1/2 transform -translate-y-1/2"},fu=["aria-label"],pu={key:1,class:"animate-spin"},gu={key:0,class:"max-h-64 overflow-y-auto"},vu=["onClick","onMouseenter"],hu={class:"flex-1 text-left"},yu={class:"font-medium text-slate-900"},bu={key:0,class:"text-sm text-slate-500 truncate"},xu={key:1,class:"text-xs text-slate-400 ml-3"},ku={key:1,class:"px-4 py-3 text-sm text-slate-500 text-center"},wu={key:2,class:"border-t border-slate-200 p-2"},Io={__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),g=e.ref(!1),k=e.ref(-1),C=e.ref(null),D=T=>{const _=T.target.value;s("update:modelValue",_),C.value&&clearTimeout(C.value),C.value=setTimeout(()=>{_.length>=r.minLength?(s("search",_),g.value=!0):g.value=!1},r.debounce)},B=T=>{s("focus",T),r.modelValue.length>=r.minLength&&(g.value=!0)},N=T=>{s("blur",T),setTimeout(()=>{g.value=!1,k.value=-1},150)},x=()=>{s("update:modelValue",""),s("clear"),g.value=!1,c.value?.focus()},h=T=>{s("select",T),g.value=!1,k.value=-1},v=T=>{if(!(!g.value||r.results.length===0))switch(T.key){case"ArrowDown":T.preventDefault(),k.value=Math.min(k.value+1,r.results.length-1);break;case"ArrowUp":T.preventDefault(),k.value=Math.max(k.value-1,-1);break;case"Enter":T.preventDefault(),k.value>=0&&h(r.results[k.value]);break;case"Escape":T.preventDefault(),g.value=!1,k.value=-1;break}},y=T=>{if(!r.highlightMatches||!r.modelValue||!T)return T;const _=new RegExp(`(${r.modelValue})`,"gi");return T.replace(_,"$1")},b=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"}}),z=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"}}),V=e.computed(()=>$(b({size:r.size}))),E=e.computed(()=>$(z({size:r.size}))),M=e.computed(()=>$("absolute z-50 w-full mt-1 bg-white rounded-lg shadow-lg border border-slate-200 max-h-96 overflow-hidden")),Y=T=>$("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":k.value===T}),U=T=>{i.value&&!i.value.contains(T.target)&&(g.value=!1,k.value=-1)};return e.onMounted(()=>document.addEventListener("click",U)),e.onUnmounted(()=>{document.removeEventListener("click",U),C.value&&clearTimeout(C.value)}),e.watch(()=>r.results,()=>k.value=-1),(T,_)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"searchRef",ref:i,class:"relative"},[e.createElementVNode("div",cu,[e.createElementVNode("div",du,[e.createVNode(a,{class:e.normalizeClass(E.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:D,onFocus:B,onBlur:N,onKeydown:v},null,42,uu),t.modelValue||t.loading?(e.openBlock(),e.createElementBlock("div",mu,[!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:x},[e.createVNode(o,{class:"w-4 h-4"})],8,fu)):t.loading?(e.openBlock(),e.createElementBlock("div",pu,[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(()=>[g.value&&(t.results.length>0||t.showNoResults)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(M.value)},[t.results.length>0?(e.openBlock(),e.createElementBlock("div",gu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.results,(f,w)=>(e.openBlock(),e.createElementBlock("button",{key:f.id||w,class:e.normalizeClass(Y(w)),onClick:m=>h(f),onMouseenter:m=>k.value=w},[f.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(f.icon),{key:0,class:"w-4 h-4 mr-3 shrink-0"})):e.createCommentVNode("",!0),e.createElementVNode("div",hu,[e.createElementVNode("div",yu,e.toDisplayString(y(f.title)),1),f.description?(e.openBlock(),e.createElementBlock("div",bu,e.toDisplayString(y(f.description)),1)):e.createCommentVNode("",!0)]),f.category?(e.openBlock(),e.createElementBlock("div",xu,e.toDisplayString(f.category),1)):e.createCommentVNode("",!0)],42,vu))),128))])):t.showNoResults?(e.openBlock(),e.createElementBlock("div",ku,e.toDisplayString(t.noResultsText),1)):e.createCommentVNode("",!0),T.$slots.footer?(e.openBlock(),e.createElementBlock("div",wu,[e.renderSlot(T.$slots,"footer")])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0)]),_:3})],512))}},Cu={class:"w-full"},Bu=["min","max","step","value"],Vu={class:"flex justify-between text-xs text-slate-500 mt-1"},Nt={__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",Cu,[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,Bu),e.createElementVNode("div",Vu,[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)])]))}},Eu={class:"flex items-center space-x-4"},Ro={__name:"Stepper",setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",Eu,[e.renderSlot(n.$slots,"default")]))}},Nu={class:"flex items-center"},Su={class:"ml-2"},$u={class:"font-medium"},zu={key:0,class:"text-sm text-slate-400"},Uo={__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",Nu,[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",Su,[e.createElementVNode("div",$u,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("div",zu,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)])]))}},Du={class:"w-full"},Tu={class:"flex space-x-1 border-b border-slate-200",role:"tablist"},Fu=["id","disabled","aria-selected","aria-controls","onClick"],Au={class:"mt-4"},qo={__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,g)=>(e.openBlock(),e.createElementBlock("div",Du,[e.createElementVNode("div",Tu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,(k,C)=>(e.openBlock(),e.createElementBlock("button",{id:`tab-${C}`,key:C,disabled:a.loading,class:e.normalizeClass(e.unref($)(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:D=>!a.loading&&s(C)},e.toDisplayString(k.label),11,Fu))),128))]),e.createElementVNode("div",Au,[e.renderSlot(c.$slots,"default")])]))}},Mu=["id","aria-labelledby"],Lu={key:0,class:"flex items-center justify-center p-8"},Yo={__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",Lu,[e.createVNode(Ct,{size:"lg",label:`Loading ${n.label}`},null,8,["label"])])):e.renderSlot(r.$slots,"default",{key:1})],8,Mu)),[[e.vShow,l.value]])}},_u=["id","aria-expanded","aria-controls","onClick"],ju={class:"flex items-center flex-1 min-w-0"},Pu={key:0},Ou=["id","aria-labelledby"],Iu={key:0},Ho={__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=y=>{if(!(o.disabled||o.items[y]?.disabled)){if(o.multiple){const b=r.value.indexOf(y);b>-1?r.value.splice(b,1):r.value.push(y),l("update:modelValue",[...r.value])}else{const b=r.value.includes(y)?null:y;r.value=b!==null?[b]:[],l("update:modelValue",b)}l("change",{index:y,expanded:r.value.includes(y)})}},i=y=>r.value.includes(y),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"}}}),g=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-linear-to-br from-slate-50 to-white border border-slate-200 rounded-xl overflow-hidden shadow-sm",flush:""}}}),k=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 shrink-0 text-slate-400 transition-all duration-200",{variants:{expanded:{true:"rotate-180 text-blue-500",false:""}}}),D=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(()=>$(c({variant:o.variant}))),N=e.computed(()=>$(g({variant:o.variant}))),x=y=>$(k({variant:o.variant,size:o.size}),i(y)&&o.variant==="bordered"&&"bg-blue-50/30 border-blue-300",i(y)&&o.variant==="filled"&&"bg-white",i(y)&&o.variant==="default"&&"bg-slate-50",(o.disabled||o.items[y]?.disabled)&&"cursor-not-allowed opacity-50"),h=y=>$(C({expanded:i(y)})),v=e.computed(()=>$(D({size:o.size})));return e.watch(()=>o.modelValue,y=>{o.multiple?r.value=Array.isArray(y)?[...y]:[]:r.value=typeof y=="number"?[y]:[]}),(y,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(B.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(N.value)},[e.createElementVNode("button",{id:`header-${z.id||V}`,class:e.normalizeClass(x(V)),"aria-expanded":i(V),"aria-controls":`panel-${z.id||V}`,onClick:E=>s(V)},[e.createElementVNode("div",ju,[e.renderSlot(y.$slots,`header-${V}`,{item:z,index:V,isExpanded:i(V)},()=>[z.title?(e.openBlock(),e.createElementBlock("div",Pu,e.toDisplayString(z.title),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",{class:e.normalizeClass(h(V))},[e.createVNode(a,{class:"w-5 h-5 transition-transform duration-200"})],2)],10,_u),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(y.$slots,`content-${V}`,{item:z,index:V},()=>[e.renderSlot(y.$slots,"content",{item:z,index:V},()=>[z.content?(e.openBlock(),e.createElementBlock("div",Iu,e.toDisplayString(z.content),1)):e.createCommentVNode("",!0)])])],10,Ou)):e.createCommentVNode("",!0)]),_:2},1024)],2))),128))],2))}},Wo={__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(()=>$(r({variant:a.variant}))),g=e.computed(()=>$(s({size:a.size}))),k=e.computed(()=>$(i({size:a.size})));return(C,D)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(c.value)},[e.createVNode(oe,{class:e.normalizeClass(g.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($)("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(k.value)},[e.renderSlot(C.$slots,"content",{isOpen:o.value})],2)):e.createCommentVNode("",!0)]),_:3})],2))}},Ru={class:"relative w-full"},Uu={class:"relative"},qu=["id","value","disabled","placeholder","required","aria-describedby"],Yu={class:"flex items-center justify-between mb-3"},Hu={class:"text-sm font-medium"},Wu={class:"grid grid-cols-7 gap-1 mb-2"},Gu={class:"grid grid-cols-7 gap-1"},Ku=["disabled","onClick"],Xu={key:0,class:"mt-4 pt-3 border-t border-slate-200"},Go={__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),g=["Su","Mo","Tu","We","Th","Fr","Sa"],k=e.computed(()=>new Date(i.value,s.value).toLocaleString("default",{month:"long"})),C=e.computed(()=>new Date(i.value,s.value+1,0).getDate()),D=e.computed(()=>new Date(i.value,s.value,1).getDay()),B=e.computed(()=>{const f=new Date(i.value,s.value,0).getDate(),w=D.value;return Array.from({length:w},(m,S)=>f-w+S+1)}),N=e.computed(()=>{const f=B.value.length+C.value,w=f%7===0?0:7-f%7;return Array.from({length:w},(m,S)=>S+1)}),x=e.computed(()=>c.value?h(c.value):"");function h(f){if(!f)return"";const w=new Date(f),m=String(w.getMonth()+1).padStart(2,"0"),S=String(w.getDate()).padStart(2,"0"),u=w.getFullYear();return a.format.replace("MM",m).replace("DD",S).replace("YYYY",u)}function v(f){if(!f)return null;if(f instanceof Date)return f;const w=new Date(f);return isNaN(w.getTime())?null:w}function y(f){if(!c.value)return!1;const w=new Date(c.value);return w.getDate()===f&&w.getMonth()===s.value&&w.getFullYear()===i.value}function b(f){const w=new Date(i.value,s.value,f);if(a.min){const m=v(a.min);if(m&&w<m)return!0}if(a.max){const m=v(a.max);if(m&&w>m)return!0}return!1}function z(){a.disabled||(l.value=!l.value)}function V(){l.value=!1}function E(){s.value===0?(s.value=11,i.value--):s.value--}function M(){s.value===11?(s.value=0,i.value++):s.value++}function Y(f){if(b(f))return;const w=new Date(i.value,s.value,f);c.value=w,o("update:modelValue",w.toISOString().split("T")[0]),l.value=!1}function U(){s.value=r.getMonth(),i.value=r.getFullYear(),Y(r.getDate())}function T(){c.value=null,o("update:modelValue","")}e.watch(()=>a.modelValue,f=>{if(f){const w=v(f);w&&(c.value=w,s.value=w.getMonth(),i.value=w.getFullYear())}else c.value=null},{immediate:!0});function _(f){f.key==="Escape"&&l.value&&V()}return e.onMounted(()=>{document.addEventListener("keydown",_)}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",_)}),(f,w)=>(e.openBlock(),e.createElementBlock("div",Ru,[e.createElementVNode("div",Uu,[e.createElementVNode("input",{id:t.id,type:"text",value:x.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,qu),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-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&&x.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(T,["stop"])},[...w[1]||(w[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:w[0]||(w[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Yu,[e.createElementVNode("button",{type:"button",class:"p-1 hover:bg-gray-100 rounded","aria-label":"Previous Month",onClick:E},[...w[3]||(w[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",Hu,e.toDisplayString(k.value)+" "+e.toDisplayString(i.value),1),e.createElementVNode("button",{type:"button",class:"p-1 hover:bg-gray-100 rounded","aria-label":"Next Month",onClick:M},[...w[4]||(w[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",Wu,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(g,m=>e.createElementVNode("div",{key:m,class:"text-center text-xs font-medium text-slate-600 py-1"},e.toDisplayString(m),1)),64))]),e.createElementVNode("div",Gu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value,(m,S)=>(e.openBlock(),e.createElementBlock("div",{key:"prev-"+S,class:"text-center text-sm text-slate-300 py-2"},e.toDisplayString(m),1))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,m=>(e.openBlock(),e.createElementBlock("button",{key:m,type:"button",disabled:b(m),class:e.normalizeClass(["w-8 h-8 text-sm rounded flex items-center justify-center",y(m)?"bg-blue-500 text-white":"hover:bg-gray-100",b(m)?"text-gray-300 cursor-not-allowed":""]),onClick:S=>Y(m)},e.toDisplayString(m),11,Ku))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.value,(m,S)=>(e.openBlock(),e.createElementBlock("div",{key:"next-"+S,class:"text-center text-sm text-slate-300 py-2"},e.toDisplayString(m),1))),128))]),t.showToday?(e.openBlock(),e.createElementBlock("div",Xu,[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:V})):e.createCommentVNode("",!0)]))}},Ju={class:"flex items-start justify-between"},Qu={class:"flex-1 min-w-0"},Zu={key:0,class:"shrink-0 ml-4"},em="text-lg font-semibold text-slate-900 truncate",tm="text-sm text-slate-600 mt-1",Ko={__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($)(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($)(e.unref(a)({padding:t.padding})))},[e.renderSlot(i.$slots,"header",{},()=>[e.createElementVNode("div",Ju,[e.createElementVNode("div",Qu,[t.title?(e.openBlock(),e.createElementBlock("h3",{key:0,class:e.normalizeClass(em)},e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:e.normalizeClass(tm)},e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)]),i.$slots.actions?(e.openBlock(),e.createElementBlock("div",Zu,[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($)(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($)(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($)(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($)(e.unref(s)({padding:t.padding})))},[e.renderSlot(i.$slots,"footer")],2)):e.createCommentVNode("",!0)],2))}},am={class:"w-full h-full relative"},nm=["width","height","viewBox"],om={key:0},lm=["x1","y1","x2","y2","stroke"],rm=["id"],sm=["stop-color"],im=["stop-color"],cm=["x","y","width","height","fill","onMouseenter","onClick"],dm=["to"],um=["from","to"],mm={key:1},fm=["x","y"],pm={key:2},gm=["x","y"],vm={key:3},hm=["x","y"],ym={key:4},bm=["x"],xm=["x1","y1","x2","y2"],km=["x1","y1","x2","y2"],wm={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"},Bm={class:"font-semibold text-sm"},Vm={class:"ml-5"},Em={class:"text-2xl font-bold"},xa={__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},xAxisLabel:{type:String,default:""},yAxisLabel:{type:String,default:""}},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.height-a.padding.top-a.padding.bottom),i=e.computed(()=>a.width-a.padding.left-a.padding.right),c=e.computed(()=>i.value/a.data.length*.7),g=e.computed(()=>i.value/a.data.length*.3),k=e.computed(()=>{const b=[];for(let V=0;V<=5;V++){const E=a.padding.top+s.value/5*V;b.push(E)}return b}),C=b=>a.padding.left+b*(c.value+g.value)+g.value/2,D=b=>{const z=s.value/r.value;return a.padding.top+s.value-b*z},B=b=>{const z=s.value/r.value;return b*z},N=b=>a.colors[b%a.colors.length],x=b=>{const z=(a.height-a.padding.bottom-b)/s.value*r.value;return Math.round(z)},h=(b,z,V)=>{const E=a.labels[V]||`Item ${V+1}`;l.value={visible:!0,x:b.clientX,y:b.clientY,label:E,value:z,color:N(V)},o("bar-hover",{value:z,index:V,label:E})},v=()=>{l.value.visible=!1},y=(b,z)=>{const V=a.labels[z]||`Item ${z+1}`;o("bar-click",{value:b,index:z,label:V})};return(b,z)=>(e.openBlock(),e.createElementBlock("div",am,[(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",om,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.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,lm))),128))])):e.createCommentVNode("",!0),e.createElementVNode("defs",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.data,(V,E)=>(e.openBlock(),e.createElementBlock("linearGradient",{id:`barGradient-${E}`,key:`gradient-${E}`,x1:"0%",y1:"0%",x2:"0%",y2:"100%"},[e.createElementVNode("stop",{offset:"0%","stop-color":N(E),"stop-opacity":"1"},null,8,sm),e.createElementVNode("stop",{offset:"100%","stop-color":N(E),"stop-opacity":"0.7"},null,8,im)],8,rm))),128))]),e.createElementVNode("g",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.data,(V,E)=>(e.openBlock(),e.createElementBlock("rect",{key:`bar-${E}`,x:C(E),y:D(V),width:c.value,height:B(V),fill:`url(#barGradient-${E})`,class:e.normalizeClass(t.barClasses),rx:"4",onMouseenter:M=>h(M,V,E),onMouseleave:v,onClick:M=>y(V,E)},[e.createElementVNode("animate",{attributeName:"height",from:0,to:B(V),dur:"0.8s",fill:"freeze"},null,8,dm),e.createElementVNode("animate",{attributeName:"y",from:t.padding.top+s.value,to:D(V),dur:"0.8s",fill:"freeze"},null,8,um)],42,cm))),128))]),t.showXAxis?(e.openBlock(),e.createElementBlock("g",mm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.labels,(V,E)=>(e.openBlock(),e.createElementBlock("text",{key:`xlabel-${E}`,x:C(E)+c.value/2,y:t.height-t.padding.bottom+20,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"middle"},e.toDisplayString(V),11,fm))),128))])):e.createCommentVNode("",!0),t.xAxisLabel?(e.openBlock(),e.createElementBlock("g",pm,[e.createElementVNode("text",{x:t.padding.left+i.value/2,y:t.height-10,class:"fill-slate-700 text-sm font-semibold","text-anchor":"middle"},e.toDisplayString(t.xAxisLabel),9,gm)])):e.createCommentVNode("",!0),t.showYAxis?(e.openBlock(),e.createElementBlock("g",vm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.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(x(V)),11,hm))),128))])):e.createCommentVNode("",!0),t.yAxisLabel?(e.openBlock(),e.createElementBlock("g",ym,[e.createElementVNode("text",{x:-(t.padding.top+s.value/2),y:15,class:"fill-slate-700 text-sm font-semibold","text-anchor":"middle",transform:"rotate(-90)"},e.toDisplayString(t.yAxisLabel),9,bm)])):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,xm),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,km)],8,nm)),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",wm,[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",Bm,e.toDisplayString(l.value.label),1)]),e.createElementVNode("div",Vm,[e.createElementVNode("span",Em,e.toDisplayString(l.value.value)+"%",1)]),z[0]||(z[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)]))}},Nm={class:"w-full h-full"},Sm=["width","height","viewBox"],$m={key:0},zm=["x1","y1","x2","y2","stroke"],Dm=["d","stroke","stroke-width"],Tm={key:1},Fm=["cx","cy","r","fill","stroke","onMouseenter"],Am=["d","fill","fill-opacity"],Mm={key:3},Lm=["x","y"],_m={key:4},jm=["x","y"],Pm={key:5},Om=["x","y","width","height","fill","stroke"],Im=["x","y"],ka={__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((x,h)=>({x:k(h),y:C(x),value:x}))),i=e.computed(()=>s.value.length===0?"":s.value.map((h,v)=>`${v===0?"M":"L"} ${h.x} ${h.y}`).join(" ")),c=e.computed(()=>{if(s.value.length===0)return"";const x=s.value.map((y,b)=>`${b===0?"M":"L"} ${y.x} ${y.y}`).join(" "),h=a.height-a.padding.bottom,v=`L ${s.value[s.value.length-1].x} ${h} L ${s.value[0].x} ${h} Z`;return x+" "+v}),g=e.computed(()=>{const x=[],h=a.height-a.padding.top-a.padding.bottom,v=5;for(let y=0;y<=v;y++){const b=a.padding.top+h/v*y;x.push(b)}return x}),k=x=>{const v=(a.width-a.padding.left-a.padding.right)/(a.data.length-1||1);return a.padding.left+x*v},C=x=>{const h=a.height-a.padding.top-a.padding.bottom,v=h/r.value;return a.padding.top+h-x*v},D=x=>{const h=a.height-a.padding.top-a.padding.bottom,v=(a.height-a.padding.bottom-x)/h*r.value;return Math.round(v)},B=(x,h,v)=>{const y=x.target.getBoundingClientRect(),b=a.labels[v]||`Point ${v+1}`;l.value={visible:!0,x:y.left+y.width/2,y:y.top,width:80,height:24,content:`${b}: ${h}`},o("point-hover",{value:h,index:v,label:b})},N=()=>{l.value.visible=!1};return(x,h)=>(e.openBlock(),e.createElementBlock("div",Nm,[(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",$m,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.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,zm))),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,Dm),t.showPoints?(e.openBlock(),e.createElementBlock("g",Tm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(v,y)=>(e.openBlock(),e.createElementBlock("circle",{key:`point-${y}`,cx:v.x,cy:v.y,r:t.pointRadius,fill:t.pointColor,stroke:t.lineColor,"stroke-width":2,class:e.normalizeClass(t.pointClasses),onMouseenter:b=>B(b,v.value,y),onMouseleave:N},null,42,Fm))),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,Am)):e.createCommentVNode("",!0),t.showXAxis?(e.openBlock(),e.createElementBlock("g",Mm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.labels,(v,y)=>(e.openBlock(),e.createElementBlock("text",{key:`xlabel-${y}`,x:k(y),y:t.height-t.padding.bottom+20,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"middle"},e.toDisplayString(v),11,Lm))),128))])):e.createCommentVNode("",!0),t.showYAxis?(e.openBlock(),e.createElementBlock("g",_m,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.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(D(v)),11,jm))),128))])):e.createCommentVNode("",!0),l.value.visible?(e.openBlock(),e.createElementBlock("g",Pm,[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,Om),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,Im)])):e.createCommentVNode("",!0)],8,Sm))]))}},Rm={class:"bg-white border-b border-gray-200"},Um={key:0,class:"flex items-center gap-3 min-w-64"},qm={class:"relative flex-1"},Ym={class:"relative flex-1"},Hm={key:1,class:"min-w-40"},Wm={class:"relative"},Gm={key:2,class:"min-w-40"},Km={class:"relative"},Xm=["value"],Jm={key:3,class:"flex items-center gap-2"},Qm={class:"flex items-center gap-3 ml-auto"},Zm={class:"flex items-center gap-3 flex-wrap"},ef=["onClick"],Xo={__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"}}),g=e.computed(()=>l.value||r.value||i.value),k=e.computed(()=>{const U=[];if(l.value||r.value){let T="";l.value&&r.value?T=`${l.value} to ${r.value}`:l.value?T=`From ${l.value}`:r.value&&(T=`Until ${r.value}`),T&&U.push({key:"date",label:"Date Range",value:T,icon:"calendar"})}if(i.value){const T=a.dataSources.find(_=>_.value===i.value);U.push({key:"dataSource",label:"Data Source",value:T?.label||i.value,icon:"database"})}return U}),C=e.computed(()=>$(c({variant:a.variant,padding:a.padding}))),D=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"),N=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"),x=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"),v=e.computed(()=>"px-6 py-3 bg-blue-50 border-t border-blue-100"),y=e.computed(()=>"text-sm font-semibold text-blue-800"),b=e.computed(()=>"flex items-center gap-1.5 bg-white border border-blue-200 text-blue-800 px-3 py-1.5 rounded-full text-sm font-medium"),z=e.computed(()=>"text-blue-600 hover:text-blue-800 ml-1 hover:bg-blue-100 rounded-full p-0.5 transition-all"),V=U=>{s.value=U.target.value,o("update:chartType",U.target.value)},E=U=>{i.value=U.target.value,o("update:dataSource",U.target.value)},M=()=>{l.value="",r.value="",i.value="",o("clear-filters")},Y=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,T)=>(e.openBlock(),e.createElementBlock("div",Rm,[e.createElementVNode("div",{class:e.normalizeClass(C.value)},[t.showDateFilter?(e.openBlock(),e.createElementBlock("div",Um,[e.createElementVNode("div",qm,[e.createVNode(L,{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":T[0]||(T[0]=_=>l.value=_),type:"date",class:e.normalizeClass(D.value),placeholder:"From date"},null,2),[[e.vModelText,l.value]])]),T[6]||(T[6]=e.createElementVNode("span",{class:"text-gray-500 text-sm"},"to",-1)),e.createElementVNode("div",Ym,[e.createVNode(L,{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":T[1]||(T[1]=_=>r.value=_),type:"date",class:e.normalizeClass(D.value),placeholder:"To date"},null,2),[[e.vModelText,r.value]])])])):e.createCommentVNode("",!0),t.showChartTypeFilter?(e.openBlock(),e.createElementBlock("div",Hm,[e.createElementVNode("div",Wm,[e.createVNode(he,{modelValue:s.value,"onUpdate:modelValue":T[2]||(T[2]=_=>s.value=_),class:e.normalizeClass(B.value),onChange:V},{default:e.withCtx(()=>[...T[7]||(T[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(L,{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",Gm,[e.createElementVNode("div",Km,[e.createVNode(he,{modelValue:i.value,"onUpdate:modelValue":T[3]||(T[3]=_=>i.value=_),class:e.normalizeClass(B.value),onChange:E},{default:e.withCtx(()=>[T[8]||(T[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,Xm))),128))]),_:1},8,["modelValue","class"]),e.createVNode(L,{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",Jm,[e.renderSlot(U.$slots,"filters")])):e.createCommentVNode("",!0),e.createElementVNode("div",Qm,[g.value?(e.openBlock(),e.createBlock(oe,{key:0,class:e.normalizeClass(N.value),onClick:M},{default:e.withCtx(()=>[e.createVNode(L,{icon:"rotate-left",class:"w-4 h-4 mr-2"}),T[9]||(T[9]=e.createTextVNode(" Clear Filters ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showExport?(e.openBlock(),e.createBlock(oe,{key:1,class:e.normalizeClass(x.value),onClick:T[4]||(T[4]=_=>U.$emit("export"))},{default:e.withCtx(()=>[e.createVNode(L,{icon:"download",class:"w-4 h-4 mr-2"}),T[10]||(T[10]=e.createTextVNode(" Export ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showRefresh?(e.openBlock(),e.createBlock(oe,{key:2,class:e.normalizeClass(h.value),onClick:T[5]||(T[5]=_=>U.$emit("refresh"))},{default:e.withCtx(()=>[e.createVNode(L,{icon:"sync",class:"w-4 h-4 mr-2"}),T[11]||(T[11]=e.createTextVNode(" Refresh ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0)])],2),k.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(v.value)},[e.createElementVNode("div",Zm,[e.createElementVNode("span",{class:e.normalizeClass(y.value)},"Active filters:",2),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,_=>(e.openBlock(),e.createElementBlock("div",{key:_.key,class:e.normalizeClass(b.value)},[e.createVNode(L,{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(z.value),onClick:f=>Y(_.key)},[e.createVNode(L,{icon:"xmark",class:"w-3 h-3"})],10,ef)],2))),128))])],2)):e.createCommentVNode("",!0)]))}},tf={class:"flex items-start justify-between"},af={key:0,class:"flex items-center gap-2"},wa={__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(()=>$(a({variant:n.variant,padding:n.padding}))),s=e.computed(()=>$(o({size:"md"}))),i=e.computed(()=>$(l({size:"md"})));return(c,g)=>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",tf,[e.createElementVNode("div",null,[t.title?(e.openBlock(),e.createBlock(ht,{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(ht,{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",af,[e.renderSlot(c.$slots,"filters")])):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0)}},nf={class:"flex items-center justify-between"},of={key:0,class:"text-sm text-slate-600"},lf={key:1,class:"text-sm text-slate-600"},rf={key:2,class:"flex items-center gap-4"},sf={key:3,class:"flex items-center gap-4"},cf={class:"flex items-center gap-2"},df={class:"flex items-center gap-1"},uf=["disabled"],mf=["disabled"],ff={class:"flex items-center gap-1"},pf=["onClick"],gf=["disabled"],vf=["disabled"],hf={class:"text-sm text-slate-600 ml-4"},Ca={__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=[],N=n.totalPages,x=n.currentPage,h=n.maxVisiblePages;if(N<=h)for(let v=1;v<=N;v++)B.push(v);else{const v=Math.floor(h/2);let y=Math.max(1,x-v),b=Math.min(N,y+h-1);b-y+1<h&&(y=Math.max(1,b-h+1));for(let z=y;z<=b;z++)B.push(z)}return B}),g=e.computed(()=>$(a({variant:n.variant,padding:n.padding}))),k=e.computed(()=>$(l({size:"md"}))),C=e.computed(()=>$(r({size:"sm"}))),D=(B,N)=>{let x="inactive";return N?x="disabled":B&&(x="active"),$(o({state:x,size:"md"}))};return(B,N)=>t.showPagination||B.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(g.value)},[e.createElementVNode("div",nf,[t.selectable&&t.selectedCount>0?(e.openBlock(),e.createElementBlock("div",of,e.toDisplayString(t.selectedCount)+" of "+e.toDisplayString(t.total)+" selected ",1)):(e.openBlock(),e.createElementBlock("div",lf," 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",rf,[e.renderSlot(B.$slots,"footer")])):e.createCommentVNode("",!0),t.showPagination?(e.openBlock(),e.createElementBlock("div",sf,[e.createElementVNode("div",cf,[e.createVNode(Be,{for:"pageSize",class:e.normalizeClass(k.value),inline:!0},{default:e.withCtx(()=>[...N[5]||(N[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":N[0]||(N[0]=x=>B.$emit("update:pageSize",parseInt(x)))},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.pageSizeOptions,x=>(e.openBlock(),e.createBlock(ha,{key:x,value:x.toString(),label:x.toString()},null,8,["value","label"]))),128))]),_:1},8,["model-value","class"])]),e.createElementVNode("div",df,[e.createElementVNode("button",{disabled:t.currentPage===1,class:e.normalizeClass(D(!1,t.currentPage===1)),title:"First page",onClick:N[1]||(N[1]=x=>B.$emit("update:currentPage",1))},[...N[6]||(N[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,uf),e.createElementVNode("button",{disabled:t.currentPage===1,class:e.normalizeClass(D(!1,t.currentPage===1)),title:"Previous page",onClick:N[2]||(N[2]=x=>B.$emit("update:currentPage",t.currentPage-1))},[...N[7]||(N[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,mf),e.createElementVNode("div",ff,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,x=>(e.openBlock(),e.createElementBlock("button",{key:x,class:e.normalizeClass(D(x===t.currentPage,!1)),onClick:h=>B.$emit("update:currentPage",x)},e.toDisplayString(x),11,pf))),128))]),e.createElementVNode("button",{disabled:t.currentPage===t.totalPages,class:e.normalizeClass(D(!1,t.currentPage===t.totalPages)),title:"Next page",onClick:N[3]||(N[3]=x=>B.$emit("update:currentPage",t.currentPage+1))},[...N[8]||(N[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,gf),e.createElementVNode("button",{disabled:t.currentPage===t.totalPages,class:e.normalizeClass(D(!1,t.currentPage===t.totalPages)),title:"Last page",onClick:N[4]||(N[4]=x=>B.$emit("update:currentPage",t.totalPages))},[...N[9]||(N[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,vf)]),e.createElementVNode("div",hf," Page "+e.toDisplayString(t.currentPage)+" of "+e.toDisplayString(t.totalPages),1)])):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0)}},Ue=(t,n)=>{const a=t.__vccOpts||t;for(const[o,l]of n)a[o]=l;return a},yf={key:0,class:"loader__backdrop"},bf={class:"loader__container"},xf={key:0,class:"loader__text loader__text--top"},kf={key:1,class:"loader__spin"},wf={key:2,class:"loader__pulse"},Cf={key:3,class:"loader__bounce"},Bf={key:4,class:"loader__ripple"},Vf={key:5,class:"loader__bars"},Ef={key:6,class:"loader__dots"},Nf={key:7,class:"loader__ring"},Sf={key:8,class:"loader__spinner-text"},$f={key:9,class:"loader__text loader__text--bottom"},zf={__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",yf)):e.createCommentVNode("",!0),e.createElementVNode("div",bf,[t.text&&t.textPosition==="top"?(e.openBlock(),e.createElementBlock("div",xf,e.toDisplayString(t.text),1)):e.createCommentVNode("",!0),t.type==="spin"?(e.openBlock(),e.createElementBlock("div",kf)):t.type==="pulse"?(e.openBlock(),e.createElementBlock("div",wf)):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",Bf,[(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",Vf,[(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",Ef,[(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",Nf,[...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",Sf,[...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",$f,e.toDisplayString(t.text),1)):e.createCommentVNode("",!0)])],6)):e.createCommentVNode("",!0)}},Oe=Ue(zf,[["__scopeId","data-v-68532350"]]),Df={class:"relative"},Tf={class:"flex items-center justify-center"},Ff=["onClick"],Af={class:"flex items-center gap-2"},Mf={key:1,class:"flex flex-col"},Lf=["onClick"],_f=["onClick"],jf={key:1},Pf={key:1,class:"flex items-center gap-1 justify-center"},Of={key:1,class:"text-xs"},If={key:2},Rf=["colspan"],Uf={class:"flex flex-col items-center justify-center py-12"},qf={class:"text-slate-400 mb-4 flex justify-center"},Yf={class:"text-slate-600 text-lg font-medium mb-2"},Hf={class:"text-slate-500 text-sm"},Wf={class:"p-6"},Gf={class:"text-xl font-bold text-gray-700 whitespace-pre-wrap break-words"},Kf={__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),g=e.ref(!1),k=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"}}),D=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"}}),N=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"}}),x=e.computed(()=>{let j=[...o.data];if(i.value){const H=o.columns.find(K=>K.key===i.value);H&&j.sort((K,de)=>{const Z=_(K,H),Le=_(de,H);return Z<Le?c.value==="asc"?-1:1:Z>Le?c.value==="asc"?1:-1:0})}return j}),h=e.computed(()=>Math.ceil(x.value.length/s.value)),v=e.computed(()=>{if(!o.showPagination)return x.value;const j=(r.value-1)*s.value,H=j+s.value;return x.value.slice(j,H)}),y=e.computed(()=>o.showActionsColumn?o.$slots?.actions?!0:!o.actions||o.actions.length===0?!1:o.actions.some(H=>H.permission===void 0?!0:typeof H.permission=="boolean"?H.permission===!0:typeof H.permission=="function"):!1),b=e.computed(()=>{let j=o.columns.length;return o.selectable&&j++,y.value&&j++,j}),z=j=>o.actions.filter(H=>{if(H.permission!==void 0){if(typeof H.permission=="function"){if(!H.permission(j))return!1}else if(!H.permission)return!1}return H.visible&&typeof H.visible=="function"?H.visible(j):!0}),V=(j,H)=>j.permission&&typeof j.permission=="function"?j.permission(H):!0,E=(j,H)=>j.disabled&&typeof j.disabled=="function"?j.disabled(H):!1,M=(j,H)=>{E(j,H)||!V(j,H)||(l("action",{action:j.key,item:H,actionConfig:j}),j.onClick&&typeof j.onClick=="function"&&j.onClick(H))},Y=j=>({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"})[j]||"ghost",U=e.computed(()=>x.value.length>0&&x.value.every(j=>w(j))),T=e.computed(()=>{const j=x.value.filter(H=>w(H)).length;return j>0&&j<x.value.length}),_=(j,H)=>H.accessor?H.accessor(j):H.key.split(".").reduce((K,de)=>K?.[de],j),f=(j,H)=>j[o.rowKey]||H,w=j=>o.selectedItems.some(H=>f(H)===f(j)),m=j=>{const H=[...o.selectedItems],K=H.findIndex(de=>f(de)===f(j));K>-1?H.splice(K,1):H.push(j),l("selection-change",H)},S=()=>{if(o.loading||o.dataLoading)return;const j=U.value?[]:[...x.value];l("selection-change",j)},u=async j=>{!j.sortable||o.loading||o.sortLoading||(i.value===j.key?c.value=c.value==="asc"?"desc":"asc":(i.value=j.key,c.value="asc"),l("sort-change",{column:j.key,direction:c.value}))},p=j=>{o.loading||l("row-click",j)},d=async j=>{o.paginationLoading||o.loading||(r.value=j,l("page-change",j))},P=async j=>{o.paginationLoading||o.loading||(s.value=j,r.value=1,l("page-size-change",j))},W=e.computed(()=>$(C({variant:o.variant}))),X=e.computed(()=>$(D({variant:o.variant}))),R=e.computed(()=>$(B({variant:o.variant}))),ae=e.computed(()=>$(N({variant:o.variant}))),ne=j=>$({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":j.sortable&&!o.loading&&!o.sortLoading,"cursor-not-allowed opacity-50":o.loading||o.sortLoading&&i.value===j.key}),re=()=>$({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=(j,H)=>{const K=[];return o.striped&&H%2===1&&K.push("bg-slate-50/50"),o.hoverable&&!o.clickableRows&&K.push("hover:bg-slate-50"),o.clickableRows&&K.push("cursor-pointer hover:bg-slate-100"),o.selectable&&w(j)&&K.push("bg-blue-50 border-blue-200"),o.variant==="bordered"?K.push("border-b border-slate-200"):o.variant==="minimal"&&K.push("border-b border-slate-100"),$("transition-colors",...K)},me=(j,H)=>{const K=_(j,H);return typeof H=="object"&&H.formatter?H.formatter(K,j):K==null?"":K instanceof Date?K.toLocaleDateString():Array.isArray(K)?K.join(", "):K},qe=(j,H=10)=>{if(!j)return j;const K=j.toString().split(" ");return K.length<=H?j:K.slice(0,H).join(" ")+"..."},ce=j=>{k.value||(k.value=j,g.value=!0)},Te=()=>{g.value=!1,k.value=""},we=e.computed(()=>$({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(()=>$({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")),St=e.computed(()=>$({compact:"px-4 py-4",normal:"px-6 py-6",comfortable:"px-8 py-8"}[o.density],"text-center")),lt=(j,H)=>$({"text-blue-600":i.value===j.key&&c.value===H,"text-slate-300":i.value!==j.key||c.value!==H});return e.watch(()=>o.selectedItems,()=>{},{deep:!0}),e.watch(()=>o.pageSize,j=>{s.value=j}),n({refresh:()=>{l("refresh")},goToPage:j=>{d(j)},selectAll:()=>{S()},clearSelection:()=>{l("selection-change",[])},getCurrentPage:()=>r.value,getTotalPages:()=>h.value,getSelectedItems:()=>o.selectedItems}),(j,H)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(W.value)},[t.title||t.description||j.$slots.header?(e.openBlock(),e.createBlock(wa,{key:0,title:t.title,description:t.description,variant:t.headerVariant,padding:t.headerPadding},{header:e.withCtx(()=>[e.renderSlot(j.$slots,"header",{},void 0,!0)]),filters:e.withCtx(()=>[e.renderSlot(j.$slots,"filters",{},void 0,!0)]),_:3},8,["title","description","variant","padding"])):e.createCommentVNode("",!0),e.createElementVNode("div",Df,[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",Tf,[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(Qe,{key:1,"model-value":U.value,indeterminate:T.value,disabled:t.loading||t.dataLoading,"onUpdate:modelValue":S},null,8,["model-value","indeterminate","disabled"]))])],2)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,K=>(e.openBlock(),e.createElementBlock("th",{key:K.key,class:e.normalizeClass(ne(K)),onClick:de=>u(K)},[e.createElementVNode("div",Af,[e.createElementVNode("span",null,e.toDisplayString(K.label),1),t.sortLoading&&i.value===K.key?(e.openBlock(),e.createBlock(Oe,{key:0,loading:!0,type:"spin",size:"small",color:t.loadingColor},null,8,["color"])):K.sortable?(e.openBlock(),e.createElementBlock("div",Mf,[(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass([lt(K,"asc"),"w-3 h-3 transition-colors"]),fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...H[1]||(H[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([lt(K,"desc"),"w-3 h-3 transition-colors"]),fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...H[2]||(H[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,Ff))),128)),y.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,K=>(e.openBlock(),e.createElementBlock("tr",{key:`skeleton-${K}`,class:"animate-pulse"},[t.selectable?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(we.value)},[...H[3]||(H[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())},[...H[4]||(H[4]=[e.createElementVNode("div",{class:"h-4 bg-slate-200 rounded w-3/4"},null,-1)])],2))),128)),y.value?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass(be.value)},[...H[5]||(H[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,(K,de)=>(e.openBlock(),e.createElementBlock("tr",{key:f(K,de),class:e.normalizeClass(fe(K,de)),onClick:Z=>p({item:K,index:de})},[t.selectable?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(we.value)},[e.createVNode(Qe,{"model-value":w(K),"onUpdate:modelValue":Z=>m(K)},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(j.$slots,`cell-${Z.key}`,{item:K,value:_(K,Z),column:Z,index:de},()=>[me(K,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(Le=>ce(me(K,Z)),["stop"])},e.toDisplayString(qe(me(K,Z))),9,_f)):(e.openBlock(),e.createElementBlock("span",jf,e.toDisplayString(me(K,Z)),1))],!0)],2))),128)),y.value?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass(be.value)},[j.$slots.actions?e.renderSlot(j.$slots,"actions",{key:0,item:K,index:de},void 0,!0):t.actions.length>0?(e.openBlock(),e.createElementBlock("div",Pf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z(K),Z=>(e.openBlock(),e.createBlock(ba,{key:Z.key,content:typeof Z.tooltip=="function"?Z.tooltip(K):Z.tooltip||Z.label||Z.key,placement:"top"},{default:e.withCtx(()=>[e.createVNode(oe,{variant:Y(Z.variant),size:"xs",disabled:E(Z,K)||!V(Z,K),class:e.normalizeClass(["h-8 w-8",typeof Z.class=="function"?Z.class(K):Z.class]),onClick:e.withModifiers(Le=>M(Z,K),["stop"])},{default:e.withCtx(()=>[Z.icon?(e.openBlock(),e.createBlock(L,{key:0,icon:Z.icon,class:"w-4 h-4"},null,8,["icon"])):Z.label?(e.openBlock(),e.createElementBlock("span",Of,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,Lf))),128)):(e.openBlock(),e.createElementBlock("tr",If,[e.createElementVNode("td",{colspan:b.value,class:e.normalizeClass(St.value)},[e.renderSlot(j.$slots,"empty",{},()=>[e.createElementVNode("div",Uf,[e.createElementVNode("div",qf,[e.createVNode(L,{icon:"search",class:"w-16 h-16"})]),e.createElementVNode("p",Yf,e.toDisplayString(t.emptyText),1),e.createElementVNode("p",Hf,e.toDisplayString(t.emptySubtitle),1)])],!0)],10,Rf)]))],2)],2)],2)]),t.showPagination||j.$slots.footer?(e.openBlock(),e.createBlock(Ca,{key:1,"current-page":r.value,"total-pages":h.value,total:x.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":P},{footer:e.withCtx(()=>[e.renderSlot(j.$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(Et,{modelValue:g.value,"onUpdate:modelValue":H[0]||(H[0]=K=>g.value=K),size:"lg",onClose:Te},{default:e.withCtx(()=>[e.createElementVNode("div",Wf,[H[6]||(H[6]=e.createElementVNode("h3",{class:"text-md font-semibold mb-4"}," Full Text ",-1)),e.createElementVNode("div",Gf,e.toDisplayString(k.value),1)])]),_:1},8,["modelValue"])],2))}},Jo=Ue(Kf,[["__scopeId","data-v-c2fc0c79"]]),Qo={__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=x=>typeof x=="string"?x:x?.key||x?.field||"unknown",i=(x,h)=>{const v=s(h);return typeof h=="object"&&h.accessor?h.accessor(x):v&&v.includes(".")?v.split(".").reduce((y,b)=>y?.[b],x):x?.[v]},c=(x,h)=>{const v=i(x,h);return typeof h=="object"&&h.formatter?h.formatter(v,x):v==null?"":v instanceof Date?v.toLocaleDateString():Array.isArray(v)?v.join(", "):v},g=()=>{a.clickableRows&&o("row-click",{item:a.item,index:a.index})},k=x=>typeof x=="object"&&x.align?x.align:"left",C=e.computed(()=>$(l({striped:a.striped,hoverable:a.hoverable&&!a.clickableRows,clickable:a.clickableRows,selected:a.isSelected,variant:a.variant}))),D=x=>{const h=k(x);return $(r({density:a.density,align:h}),x.cellClasses)},B=e.computed(()=>$(r({density:a.density}),"w-12")),N=e.computed(()=>$(r({density:a.density,align:"right"}),"font-medium"));return(x,h)=>(e.openBlock(),e.createElementBlock("tr",{class:e.normalizeClass(C.value),onClick:g},[t.selectable?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(B.value)},[e.createVNode(Qe,{"model-value":t.isSelected,"onUpdate:modelValue":h[0]||(h[0]=v=>x.$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(D(v))},[e.renderSlot(x.$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)),x.$slots.actions?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass(N.value)},[e.renderSlot(x.$slots,"actions",{item:t.item,index:t.index})],2)):e.createCommentVNode("",!0)],2))}},Zo={__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 $(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))}},Xf={class:"bg-white border-b border-gray-200"},Jf={key:0,class:"flex-1 min-w-80 max-w-md"},Qf={class:"relative group"},Zf=["model-value","placeholder"],ep={class:"relative"},tp={value:""},ap=["value"],np={key:1,class:"min-w-36"},op={class:"relative"},lp=["value"],rp={key:3,class:"flex items-center gap-2"},sp={class:"flex items-center gap-3 ml-auto"},ip={key:0},cp={key:3},dp={class:"grid grid-cols-1 lg:grid-cols-3 gap-6"},up={class:"flex items-center justify-between"},mp={class:"flex items-center gap-3"},fp={class:"relative flex-1"},pp=["model-value","placeholder","onInput"],gp={class:"relative flex-1"},vp=["model-value","placeholder","onInput"],hp=["onClick"],yp={class:"flex items-center justify-between"},bp={class:"flex items-center gap-3"},xp={class:"relative flex-1"},kp=["model-value","placeholder","step","onInput"],wp={class:"relative flex-1"},Cp=["model-value","placeholder","step","onInput"],Bp=["onClick"],Vp={class:"flex items-center justify-between"},Ep={class:"relative"},Np={value:""},Sp=["value"],$p={key:0,class:"flex flex-wrap gap-2 mt-2"},zp=["onClick"],Dp={class:"flex items-center gap-3 flex-wrap"},Tp=["onClick"],Fp={key:2,class:"px-6 py-3 bg-gray-50 border-t border-gray-200"},Ap={class:"flex items-center justify-between"},Mp={class:"flex items-center gap-4"},Lp={class:"text-sm text-gray-600"},_p={class:"font-medium"},jp={class:"bg-white rounded-xl shadow-2xl max-w-2xl w-full p-6"},Pp={class:"flex items-center justify-between mb-4"},Op={class:"flex justify-end gap-3 mt-6"},el={__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),g=e.computed(()=>s.value&&a.addButton.disabled&&typeof a.addButton.disabled=="function"?a.addButton.disabled():!1),k=()=>{r.value=!0},C=()=>{r.value=!1},D=q=>{o("files-selected",q)},B=q=>{o("file-removed",q)},N=()=>{g.value||!c.value||(o("add"),o("add-button-click",a.addButton),a.addButton.onClick&&typeof a.addButton.onClick=="function"&&a.addButton.onClick())},x=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"}}),v=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"}}),y=(q,F)=>{const A=a.selectFilters.map(G=>G.key===q?{...G,value:F}:G);o("update:selectFilters",A)},b=q=>!!(q.from||q.to),z=q=>{const F=a.dateFilters.map(A=>A.key===q?{...A,from:"",to:""}:A);o("update:dateFilters",F)},V=q=>`text-xs px-2 py-1 rounded ${b(q)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,E=(q,F,A)=>{const G=a.dateFilters.map(ee=>ee.key===q?{...ee,[F]:A}:ee);o("update:dateFilters",G)},M=q=>!!(q.min||q.max),Y=q=>{const F=a.numberFilters.map(A=>A.key===q?{...A,min:"",max:""}:A);o("update:numberFilters",F)},U=q=>`text-xs px-2 py-1 rounded ${M(q)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,T=(q,F,A)=>{const G=a.numberFilters.map(ee=>ee.key===q?{...ee,[F]:A}:ee);o("update:numberFilters",G)},_=q=>q.selected&&q.selected.length>0,f=q=>`text-xs px-2 py-1 rounded ${_(q)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,w=(q,F)=>{if(!F)return;const A=a.multiSelectFilters.map(G=>{if(G.key===q){const ee=G.selected||[],Ye=ee.includes(F);return{...G,selected:Ye?ee.filter($t=>$t!==F):[...ee,F]}}return G});o("update:multiSelectFilters",A)},m=(q,F)=>{const A=a.multiSelectFilters.map(G=>G.key===q?{...G,selected:G.selected.filter(ee=>ee!==F)}:G);o("update:multiSelectFilters",A)},S=(q,F)=>{const A=q.options.find(G=>G.value===F);return A?A.label:F},u=()=>{l.value=!l.value},p=e.computed(()=>a.numberFilters.length>0||a.multiSelectFilters.length>0),d=e.computed(()=>{const q=a.searchQuery,F=a.selectedStatus,A=a.dateFrom||a.dateTo,G=a.selectFilters.some(xe=>xe.value),ee=a.dateFilters.some(xe=>xe.from||xe.to),Ye=a.numberFilters.some(xe=>xe.min||xe.max),$t=a.multiSelectFilters.some(xe=>xe.selected&&xe.selected.length>0);return q||F||A||G||ee||Ye||$t}),P=e.computed(()=>{let q=0;return a.searchQuery&&q++,a.selectedStatus&&q++,(a.dateFrom||a.dateTo)&&q++,q+=a.selectFilters.filter(F=>F.value).length,q+=a.dateFilters.filter(F=>F.from||F.to).length,q+=a.numberFilters.filter(F=>F.min||F.max).length,q+=a.multiSelectFilters.filter(F=>F.selected&&F.selected.length>0).length,q}),W=e.computed(()=>{const q=[];if(a.searchQuery&&a.searchQuery.trim()&&q.push({key:"search",label:"Search",value:`"${a.searchQuery}"`,icon:"magnifying-glass"}),a.selectedStatus){const F=a.statusOptions.find(A=>A.value===a.selectedStatus);q.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(G=>G.value===F.value);q.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&&q.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&&q.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&&q.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(G=>{const ee=F.options.find(Ye=>Ye.value===G);return ee?ee.label:G});q.push({key:`multi-${F.key}`,label:F.label,value:A.join(", "),icon:"list"})}}),q}),X=e.computed(()=>$(x({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(()=>$(h({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(()=>$(h({size:"md"}),"w-full pr-8 appearance-none hover:border-gray-300")),fe=e.computed(()=>{const q=l.value||d.value;return $(v({variant:q?"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"),qe=e.computed(()=>"px-6 py-4 border-t border-gray-100 bg-gray-50"),ce=e.computed(()=>$(h({size:"md"}),"pl-10 pr-3")),Te=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"),St=e.computed(()=>$(v({variant:"ghost",size:"md"}))),lt=e.computed(()=>$(v({variant:"default",size:"lg"}))),j=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"),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 q=a.selectFilters.map(ee=>({...ee,value:""}));o("update:selectFilters",q);const F=a.dateFilters.map(ee=>({...ee,from:"",to:""}));o("update:dateFilters",F);const A=a.numberFilters.map(ee=>({...ee,min:"",max:""}));o("update:numberFilters",A);const G=a.multiSelectFilters.map(ee=>({...ee,selected:[]}));o("update:multiSelectFilters",G),o("clear-filters")},Le=q=>{switch(q){case"search":o("update:searchQuery","");break;case"status":o("update:selectedStatus","");break;case"date":o("update:dateFrom",""),o("update:dateTo","");break;default:if(q.startsWith("select-")){const F=q.replace("select-",""),A=a.selectFilters.map(G=>G.key===F?{...G,value:""}:G);o("update:selectFilters",A)}else if(q.startsWith("date-")){const F=q.replace("date-",""),A=a.dateFilters.map(G=>G.key===F?{...G,from:"",to:""}:G);o("update:dateFilters",A)}else if(q.startsWith("number-")){const F=q.replace("number-",""),A=a.numberFilters.map(G=>G.key===F?{...G,min:"",max:""}:G);o("update:numberFilters",A)}else if(q.startsWith("multi-")){const F=q.replace("multi-",""),A=a.multiSelectFilters.map(G=>G.key===F?{...G,selected:[]}:G);o("update:multiSelectFilters",A)}break}};return(q,F)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Xf,[e.createElementVNode("div",{class:e.normalizeClass(X.value)},[t.showSearch?(e.openBlock(),e.createElementBlock("div",Jf,[e.createElementVNode("div",Qf,[e.createVNode(L,{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:F[0]||(F[0]=A=>q.$emit("update:searchQuery",A.target.value))},null,42,Zf),t.searchQuery?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(ne.value),onClick:F[1]||(F[1]=A=>q.$emit("update:searchQuery",""))},[e.createVNode(L,{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",ep,[e.createVNode(he,{"model-value":A.value,class:e.normalizeClass(re.value),onChange:G=>y(A.key,G.target.value)},{default:e.withCtx(()=>[e.createElementVNode("option",tp,e.toDisplayString(A.placeholder||`All ${A.label}`),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.options,G=>(e.openBlock(),e.createElementBlock("option",{key:G.value,value:G.value},e.toDisplayString(G.label),9,ap))),128))]),_:2},1032,["model-value","class","onChange"]),e.createVNode(L,{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",np,[e.createElementVNode("div",op,[e.createVNode(he,{"model-value":t.selectedStatus,class:e.normalizeClass(re.value),onChange:F[2]||(F[2]=A=>q.$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,lp))),128))]),_:1},8,["model-value","class"]),e.createVNode(L,{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||p.value)?(e.openBlock(),e.createElementBlock("button",{key:2,class:e.normalizeClass(fe.value),onClick:u},[e.createVNode(L,{icon:"filter",class:"w-4 h-4"}),F[6]||(F[6]=e.createTextVNode(" Filters ",-1)),P.value>0?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(me.value)},e.toDisplayString(P.value),3)):e.createCommentVNode("",!0),e.createVNode(L,{icon:l.value?"chevron-up":"chevron-down",class:"w-4 h-4 ml-1"},null,8,["icon"])],2)):e.createCommentVNode("",!0),q.$slots.filters?(e.openBlock(),e.createElementBlock("div",rp,[e.renderSlot(q.$slots,"filters")])):e.createCommentVNode("",!0),e.createElementVNode("div",sp,[t.showFileUpload?(e.openBlock(),e.createElementBlock("div",ip,[e.createVNode(oe,{variant:"default",size:"lg",onClick:k},{default:e.withCtx(()=>[e.createVNode(L,{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(oe,{key:1,class:e.normalizeClass(St.value),onClick:Z},{default:e.withCtx(()=>[e.createVNode(L,{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(oe,{key:2,class:e.normalizeClass(lt.value),onClick:F[3]||(F[3]=A=>q.$emit("export"))},{default:e.withCtx(()=>[e.createVNode(L,{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",cp,[s.value?(e.openBlock(),e.createBlock(oe,{key:0,variant:t.addButton.variant||"success",size:t.addButton.size||"lg",disabled:g.value||!c.value,title:t.addButton.tooltip,onClick:N},{default:e.withCtx(()=>[t.addButton.icon?(e.openBlock(),e.createBlock(L,{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(q.$slots,"add",{key:1},()=>[e.createVNode(oe,{variant:"success",size:"lg",onClick:F[4]||(F[4]=A=>q.$emit("add"))},{default:e.withCtx(()=>[e.createVNode(L,{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(qe.value)},[e.createElementVNode("div",dp,[(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",up,[e.createElementVNode("label",{class:e.normalizeClass(Te.value)},e.toDisplayString(A.label),3),e.createElementVNode("span",{class:e.normalizeClass(V(A))},e.toDisplayString(b(A)?"Active":"Inactive"),3)]),e.createElementVNode("div",mp,[e.createElementVNode("div",fp,[e.createVNode(L,{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:G=>E(A.key,"from",G.target.value)},null,42,pp)]),e.createElementVNode("span",{class:e.normalizeClass(we.value)},"to",2),e.createElementVNode("div",gp,[e.createVNode(L,{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:G=>E(A.key,"to",G.target.value)},null,42,vp)]),b(A)?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(be.value),title:"Clear this filter",onClick:G=>z(A.key)},[e.createVNode(L,{icon:"xmark",class:"w-4 h-4"})],10,hp)):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",yp,[e.createElementVNode("label",{class:e.normalizeClass(Te.value)},e.toDisplayString(A.label),3),e.createElementVNode("span",{class:e.normalizeClass(U(A))},e.toDisplayString(M(A)?"Active":"Inactive"),3)]),e.createElementVNode("div",bp,[e.createElementVNode("div",xp,[e.createElementVNode("input",{type:"number","model-value":A.min,class:e.normalizeClass(ce.value),placeholder:`Min ${A.label}`,step:A.step||1,onInput:G=>T(A.key,"min",G.target.value)},null,42,kp)]),e.createElementVNode("span",{class:e.normalizeClass(we.value)},"to",2),e.createElementVNode("div",wp,[e.createElementVNode("input",{type:"number","model-value":A.max,class:e.normalizeClass(ce.value),placeholder:`Max ${A.label}`,step:A.step||1,onInput:G=>T(A.key,"max",G.target.value)},null,42,Cp)]),M(A)?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(be.value),title:"Clear this filter",onClick:G=>Y(A.key)},[e.createVNode(L,{icon:"xmark",class:"w-4 h-4"})],10,Bp)):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",Vp,[e.createElementVNode("label",{class:e.normalizeClass(Te.value)},e.toDisplayString(A.label),3),e.createElementVNode("span",{class:e.normalizeClass(f(A))},e.toDisplayString(_(A)?`${A.selected.length} selected`:"None"),3)]),e.createElementVNode("div",Ep,[e.createVNode(he,{"model-value":"",class:e.normalizeClass(re.value),onChange:G=>w(A.key,G.target.value)},{default:e.withCtx(()=>[e.createElementVNode("option",Np," Select "+e.toDisplayString(A.label),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.options,G=>(e.openBlock(),e.createElementBlock("option",{key:G.value,value:G.value},e.toDisplayString(G.label),9,Sp))),128))]),_:2},1032,["class","onChange"]),e.createVNode(L,{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",$p,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.selected,G=>(e.openBlock(),e.createElementBlock("span",{key:G,class:"inline-flex items-center gap-1 bg-blue-100 text-blue-800 text-xs px-2 py-1 rounded-full"},[e.createTextVNode(e.toDisplayString(S(A,G))+" ",1),e.createElementVNode("button",{class:"hover:bg-blue-200 rounded-full p-0.5",onClick:ee=>m(A.key,G)},[e.createVNode(L,{icon:"xmark",class:"w-3 h-3"})],8,zp)]))),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(j.value)},[e.createElementVNode("div",Dp,[e.createElementVNode("span",{class:e.normalizeClass(H.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(K.value)},[e.createVNode(L,{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:G=>Le(A.key)},[e.createVNode(L,{icon:"xmark",class:"w-3 h-3"})],10,Tp)],2))),128))])],2)):e.createCommentVNode("",!0),t.showTableInfo?(e.openBlock(),e.createElementBlock("div",Fp,[e.createElementVNode("div",Ap,[e.createElementVNode("div",Mp,[e.createElementVNode("span",Lp,[e.createElementVNode("span",_p,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",jp,[e.createElementVNode("div",Pp,[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(L,{icon:"xmark",class:"w-5 h-5"})])]),e.createVNode(Ze,{multiple:t.fileUploadMultiple,accept:t.fileUploadAccept,"max-size":t.fileUploadMaxSize,variant:t.fileUploadVariant,onFilesSelected:D,onFileRemoved:B},null,8,["multiple","accept","max-size","variant"]),e.createElementVNode("div",Op,[e.createVNode(oe,{variant:"default",onClick:C},{default:e.withCtx(()=>[...F[12]||(F[12]=[e.createTextVNode(" Close ",-1)])]),_:1})])])])):e.createCommentVNode("",!0)],64))}},Ip={class:"flex items-center gap-3"},Rp={key:0,class:"flex items-center gap-3"},Up={class:"text-sm text-slate-600"},qp={class:"flex items-center gap-2"},Yp={class:"flex items-center gap-3"},Hp=["title","onClick"],Wp={key:1,class:"relative"},Gp={class:"p-3"},Kp={class:"space-y-1"},Xp={class:"flex items-center gap-2 cursor-pointer w-full"},Jp=["checked","onChange"],Qp=["disabled"],Zp={key:3,class:"flex items-center gap-2"},eg=[{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"}],tg={name:"DataTableToolBar"},tl=Object.assign(tg,{props:{selectedItems:{type:Array,default:()=>[]},totalItems:{type:Number,default:0},bulkActions:{type:Array,default:()=>eg},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"]}],g=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"}}),k=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"}}),D=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(()=>$(g({variant:a.variant,padding:a.padding}))),N=e.computed(()=>"text-sm text-slate-600"),x=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"),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"),y=e.computed(()=>"text-xs font-medium text-slate-500 uppercase tracking-wider mb-2 border-b border-slate-100 pb-2"),b=e.computed(()=>"py-1 hover:bg-slate-50 rounded transition-colors"),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"),E=m=>{r.value&&s.value&&!r.value.contains(m.target)&&!s.value.contains(m.target)&&(l.value=!1)},M=()=>{l.value=!l.value},Y=m=>$(k({variant:m.variant||"secondary"})),U=m=>{let S="middle";return m==="compact"?S="first":m==="comfortable"&&(S="last"),$(C({active:a.density===m,position:S}))},T=()=>$(D({state:a.isRefreshing?"refreshing":"normal"})),_=()=>$("w-4 h-4",{"animate-spin":a.isRefreshing}),f=m=>a.visibleColumns.includes(m),w=(m,S)=>{o("toggle-column",{column:m,visible:S})};return e.onMounted(()=>{document.addEventListener("click",E)}),e.onUnmounted(()=>{document.removeEventListener("click",E)}),(m,S)=>{const u=e.resolveComponent("font-awesome-icon");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(B.value)},[e.createElementVNode("div",Ip,[i.value>0?(e.openBlock(),e.createElementBlock("div",Rp,[e.createElementVNode("span",Up,e.toDisplayString(i.value)+" selected ",1),e.createElementVNode("div",qp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.bulkActions,p=>(e.openBlock(),e.createBlock(oe,{key:p.key,class:e.normalizeClass(Y(p)),onClick:d=>m.$emit("bulk-action",{action:p.key,items:t.selectedItems})},{default:e.withCtx(()=>[p.icon?(e.openBlock(),e.createBlock(u,{key:0,icon:p.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(p.label),1)]),_:2},1032,["class","onClick"]))),128))])])):t.totalItems>0?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(N.value)},e.toDisplayString(t.totalItems)+" "+e.toDisplayString(t.totalItems===1?"item":"items"),3)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Yp,[t.showDensityToggle?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(x.value)},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(c,p=>e.createElementVNode("button",{key:p.value,class:e.normalizeClass(U(p.value)),title:p.label,type:"button",onClick:d=>m.$emit("update:density",p.value)},[e.createVNode(u,{icon:p.icon,class:"w-4 h-4"},null,8,["icon"])],10,Hp)),64))],2)):e.createCommentVNode("",!0),t.showColumnToggle?(e.openBlock(),e.createElementBlock("div",Wp,[e.createElementVNode("button",{ref_key:"columnToggleButton",ref:r,class:e.normalizeClass(h.value),type:"button",onClick:e.withModifiers(M,["stop"])},[e.createVNode(u,{icon:"columns",class:"w-4 h-4"}),S[2]||(S[2]=e.createElementVNode("span",null,"Columns",-1))],2),e.withDirectives(e.createElementVNode("div",{ref_key:"columnMenu",ref:s,class:e.normalizeClass(v.value),onClick:S[0]||(S[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Gp,[e.createElementVNode("div",{class:e.normalizeClass(y.value)}," Show Columns ",2),e.createElementVNode("div",Kp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.toggleableColumns,p=>(e.openBlock(),e.createElementBlock("div",{key:p.key,class:e.normalizeClass(b.value)},[e.createElementVNode("label",Xp,[e.createElementVNode("input",{type:"checkbox",checked:f(p.key),class:e.normalizeClass(z.value),onChange:d=>w(p.key,d.target.checked)},null,42,Jp),e.createElementVNode("span",{class:e.normalizeClass(V.value)},e.toDisplayString(p.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(T()),type:"button",onClick:S[1]||(S[1]=p=>m.$emit("refresh"))},[e.createVNode(u,{icon:"sync",class:e.normalizeClass(_())},null,8,["class"]),S[3]||(S[3]=e.createElementVNode("span",null,"Refresh",-1))],10,Qp)):e.createCommentVNode("",!0),m.$slots.actions?(e.openBlock(),e.createElementBlock("div",Zp,[e.renderSlot(m.$slots,"actions")])):e.createCommentVNode("",!0)])],2)}}}),ag={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-12"},ng={class:"grid grid-cols-1 md:grid-cols-4 gap-8"},og={class:"col-span-1 md:col-span-2"},lg={class:"space-y-2"},rg={class:"flex space-x-4"},sg={class:"flex flex-col md:flex-row justify-between items-center"},ig={class:"flex space-x-6 mt-4 md:mt-0"},al={__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($)("bg-gray-50 border-t border-gray-200",t.className))},[e.createElementVNode("div",ag,[e.createElementVNode("div",ng,[e.createElementVNode("div",og,[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",lg,[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",rg,[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",sg,[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",ig,[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)}}},cg={class:"flex items-center justify-between h-14 sm:h-16 px-3 sm:px-4 md:px-6"},dg={class:"flex items-center gap-2 sm:gap-4 min-w-0 flex-1"},ug={key:1,class:"shrink-0 hidden sm:block"},mg=["src"],fg={key:2,class:"h-6 sm:h-8 w-px bg-gray-300 shrink-0 hidden sm:block"},pg={key:3,class:"shrink-0 bg-linear-to-r from-blue-50 via-indigo-50 to-purple-50 px-2 sm:px-4 py-1.5 sm:py-2 rounded-lg sm:rounded-xl border border-blue-200 shadow-sm flex items-center gap-2 sm:gap-3 relative hover:shadow-md transition-shadow max-w-[180px] sm:max-w-none"},gg={key:0,class:"shrink-0 hidden sm:block"},vg={class:"relative"},hg=["src","alt"],yg={class:"min-w-0 flex-1"},bg={class:"text-xs sm:text-sm font-bold text-blue-900 truncate max-w-[120px] sm:max-w-[180px] group-hover:text-blue-700"},xg={class:"flex items-center gap-1 sm:gap-1.5 mt-0.5 hidden sm:flex"},kg={key:0,class:"text-xs text-blue-700 truncate font-medium"},wg={key:2,class:"min-w-0 flex-1"},Cg={class:"text-xs sm:text-sm font-bold text-blue-900 truncate max-w-[120px] sm:max-w-[180px]"},Bg={class:"flex items-center gap-1 sm:gap-1.5 mt-0.5 hidden sm:flex"},Vg={key:0,class:"text-xs text-blue-700 truncate font-medium"},Eg={key:0,class:"absolute top-full left-0 right-0 sm:left-0 sm:right-auto mt-2 w-full sm:w-80 bg-white rounded-xl shadow-xl border border-gray-200 z-50 max-h-96 overflow-hidden"},Ng={class:"p-3 sm:p-4 border-b border-gray-200 bg-linear-to-r from-blue-50 to-indigo-50"},Sg={class:"text-sm font-bold text-gray-900 flex items-center gap-2"},$g={class:"text-xs text-gray-600 mt-1"},zg={class:"py-2 max-h-80 overflow-y-auto"},Dg=["onClick"],Tg={key:0,class:"shrink-0 mr-2 sm:mr-3"},Fg=["src","alt"],Ag={key:1,class:"w-7 h-7 sm:w-8 sm:h-8 rounded-lg bg-linear-to-br from-gray-200 to-gray-300 flex items-center justify-center mr-2 sm:mr-3 shrink-0"},Mg={class:"flex-1 text-left min-w-0"},Lg={class:"font-semibold truncate text-sm"},_g={key:0,class:"text-xs text-gray-500 truncate"},jg={key:4,class:"hidden lg:flex items-center space-x-2 text-sm truncate"},Pg={class:"text-gray-500 truncate"},Og={class:"text-gray-900 font-semibold truncate"},Ig={class:"flex items-center space-x-1 sm:space-x-2 md:space-x-3"},Rg={key:0,class:"relative"},Ug={class:"absolute inset-y-0 left-0 pl-2 sm:pl-3 flex items-center pointer-events-none"},qg=["placeholder"],Yg={key:0,class:"absolute -top-0.5 -right-0.5 sm:-top-1 sm:-right-1 min-w-4 h-4 sm:min-w-[18px] sm:h-[18px] bg-red-500 text-white text-[10px] sm:text-xs rounded-full flex items-center justify-center font-semibold px-0.5 sm:px-1"},Hg={key:0,class:"absolute right-2 sm:right-4 md:right-6 top-14 sm:top-16 mt-2 w-[calc(100vw-1rem)] max-w-sm sm:w-80 md:w-96 bg-white rounded-xl shadow-xl border border-gray-200 z-50"},Wg={class:"p-3 sm:p-4 border-b border-gray-200 bg-linear-to-r from-blue-50 to-indigo-50"},Gg={class:"text-sm sm:text-base font-bold text-gray-900"},Kg={key:0,class:"text-xs text-gray-600 mt-1"},Xg={class:"max-h-[60vh] sm:max-h-96 overflow-y-auto"},Jg={key:0,class:"p-6 sm:p-8 text-center"},Qg=["onClick"],Zg={class:"flex items-start space-x-2 sm:space-x-3"},e0={class:"flex-1 min-w-0"},t0={class:"flex items-start justify-between gap-2"},a0={class:"text-xs sm:text-sm font-semibold text-gray-900 flex-1 leading-tight"},n0={key:0,class:"shrink-0 w-2 h-2 mt-1 bg-blue-500 rounded-full"},o0={key:0,class:"flex items-center gap-1 sm:gap-1.5 mt-1.5 flex-wrap"},l0={class:"inline-flex items-center px-1.5 sm:px-2 py-0.5 rounded text-[10px] sm:text-xs font-semibold bg-indigo-100 text-indigo-800 border border-indigo-200"},r0={class:"inline-flex items-center px-1.5 sm:px-2 py-0.5 rounded text-[10px] sm:text-xs font-medium bg-gray-100 text-gray-700 border border-gray-200"},s0={class:"flex items-center gap-1.5 sm:gap-2 mt-1.5 sm:mt-2 flex-wrap"},i0={key:0,class:"inline-flex items-center px-1.5 sm:px-2 py-0.5 rounded text-[10px] sm:text-xs font-medium bg-blue-100 text-blue-800"},c0={class:"truncate max-w-[100px] sm:max-w-none"},d0={class:"text-[10px] sm:text-xs text-gray-500 mt-1.5 sm:mt-2 flex items-center"},u0={key:0,class:"p-2 sm:p-3 text-center border-t border-gray-200 bg-gray-50"},m0={class:"relative"},f0={class:"w-7 h-7 sm:w-8 sm:h-8 bg-linear-to-br from-blue-100 to-indigo-100 rounded-full flex items-center justify-center transition-colors shadow-sm"},p0={class:"text-blue-700 text-xs sm:text-sm font-medium"},g0={key:0,class:"hidden md:block text-left max-w-40 truncate"},v0={class:"text-sm font-medium text-gray-900 truncate"},h0={class:"text-xs text-gray-500 truncate leading-tight"},y0={key:0,class:"absolute right-0 mt-2 w-56 sm:w-58 bg-white rounded-lg shadow-lg border border-gray-200 z-50"},b0={class:"p-3 sm:p-4 border-b border-gray-200"},x0={class:"text-sm font-medium text-gray-900 truncate"},k0={class:"text-xs text-gray-500 truncate"},w0={class:"py-2"},C0={key:0,class:"absolute left-0 top-1/2 transform -translate-y-1/2 w-1 h-6 sm:h-8 bg-linear-to-b from-blue-500 to-blue-600 rounded-r-full"},B0=["onClick"],V0={class:"flex items-center justify-center w-7 h-7 sm:w-8 sm:h-8 rounded-lg mr-2 sm:mr-3 shrink-0 transition-colors ml-1 sm:ml-2 bg-gray-100 text-gray-600 group-hover:bg-gray-200"},E0={class:"flex-1 truncate font-semibold text-gray-700 text-xs sm:text-sm"},N0={class:"border-t border-gray-200 py-2"},S0={class:"flex items-center justify-center w-7 h-7 sm:w-8 sm:h-8 rounded-lg mr-1 sm:mr-1 shrink-0 transition-colors ml-1 sm:ml-2 bg-red-100 text-red-600 group-hover:bg-red-200"},nl={__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:""},organisationLogos:{type:Object,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(!1),c=e.ref(!1),g=e.ref(!1),k=e.computed(()=>a.notifications.filter(m=>!m.read).length),C=e.computed(()=>a.userInitialsOverride?a.userInitialsOverride:(a.user?.name||"Guest").split(" ").map(S=>S[0]||"").join("").toUpperCase()),D=e.computed(()=>{if(a.userRoleDisplayOverride)return a.userRoleDisplayOverride;const m=[];return a.activeRoles?.length>0&&m.push(...a.activeRoles.map(S=>typeof S=="string"?S:S.name)),m.length===0&&a.user?.roles?.length>0&&m.push(...a.user.roles.map(S=>typeof S=="string"?S:S.name)),m.length===0&&a.currentOrganisation?.role&&m.push(a.currentOrganisation.role),m.length===0?"Member":m.map(S=>S.charAt(0).toUpperCase()+S.slice(1).replace(/-/g," ")).join(", ")}),B=e.computed(()=>!a.activeRoles||a.activeRoles.length===0?"":a.activeRoles.map(m=>typeof m=="string"?m:m.name).map(m=>m.charAt(0).toUpperCase()+m.slice(1).replace(/-/g," ")).join(", ")),N=()=>{r.value=!r.value,s.value=!1},x=()=>{s.value=!s.value,r.value=!1,g.value=!1},h=()=>{g.value=!g.value,s.value=!1,r.value=!1},v=m=>{o("navigate",m),s.value=!1},y=m=>m.route?!!(a.currentRoute===m.route||a.currentRoute.startsWith(m.route+"/")):!1,b=m=>{o("profile-action",m),s.value=!1},z=()=>{o("logout"),s.value=!1},V=m=>{o("organisation-change",m),g.value=!1},E=m=>{o("notification-click",m)},M=()=>{o("view-all-notifications"),r.value=!1},Y=m=>{!m.target.closest(".absolute")&&!m.target.closest("button")&&(r.value=!1,s.value=!1,g.value=!1)},U=()=>{c.value=window.innerWidth<768},T=m=>{if(m.title.includes("Overdue"))return"bg-red-100 text-red-600";if(m.title.includes("Due in 0"))return"bg-orange-100 text-orange-600";const S={due_date_reminder:"bg-amber-100 text-amber-600",info:"bg-blue-100 text-blue-600",success:"bg-green-100 text-green-600",warning:"bg-yellow-100 text-yellow-600",error:"bg-red-100 text-red-600"};return S[m.type]||S.info},_=m=>{if(!m)return"";const S=m.split("\\");return S[S.length-1].replace(/([A-Z])/g," $1").trim().split(" ").map(p=>p.charAt(0).toUpperCase()+p.slice(1).toLowerCase()).join(" ")},f=m=>{if(!m)return"";const S=new Date(m),u=new Date;u.setHours(0,0,0,0);const p=new Date(S);p.setHours(0,0,0,0);const d=p-u,P=Math.ceil(d/(1e3*60*60*24));return P===0?"Due Today":P===1?"Due Tomorrow":P<0?`${Math.abs(P)} days overdue`:P<=7?`Due in ${P} days`:S.toLocaleDateString("en-KE",{month:"short",day:"numeric",year:S.getFullYear()!==u.getFullYear()?"numeric":void 0})},w=m=>m?.org_id&&a.organisationLogos[m.org_id]||null;return e.onMounted(()=>{document.addEventListener("click",Y),U(),window.addEventListener("resize",U)}),e.onUnmounted(()=>{document.removeEventListener("click",Y),window.removeEventListener("resize",U)}),e.watch(l,m=>o("search",m)),(m,S)=>{const u=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("header",{class:e.normalizeClass(e.unref($)("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",cg,[e.createElementVNode("div",dg,[c.value?(e.openBlock(),e.createElementBlock("button",{key:0,class:"p-2 text-gray-600 hover:text-gray-900 rounded-lg hover:bg-gray-50 transition-colors shrink-0",onClick:S[0]||(S[0]=p=>o("toggle-mobile-sidebar"))},[e.createVNode(L,{icon:"bars",class:"w-5 h-5"})])):e.createCommentVNode("",!0),t.companyLogo&&t.showHeaderLogo?(e.openBlock(),e.createElementBlock("div",ug,[e.createElementVNode("img",{src:t.companyLogo,alt:"Company logo",class:"w-8 h-8 sm:w-10 sm:h-10 object-contain rounded-lg shadow-sm"},null,8,mg)])):e.createCommentVNode("",!0),t.companyLogo&&t.showOrganisationInfo&&t.currentOrganisation?(e.openBlock(),e.createElementBlock("div",fg)):e.createCommentVNode("",!0),t.showOrganisationInfo&&t.currentOrganisation?(e.openBlock(),e.createElementBlock("div",pg,[t.organisationLogo?(e.openBlock(),e.createElementBlock("div",gg,[e.createElementVNode("div",vg,[e.createElementVNode("img",{src:t.organisationLogo,alt:`${t.currentOrganisation.organisation_name} logo`,class:"w-7 h-7 sm:w-10 sm:h-10 object-contain rounded-lg bg-white p-0.5 sm:p-1 border border-blue-200 shadow-sm"},null,8,hg),S[4]||(S[4]=e.createElementVNode("div",{class:"absolute -bottom-0.5 -right-0.5 w-2 h-2 sm:w-3 sm:h-3 bg-green-500 border-2 border-white rounded-full"},null,-1))])])):e.createCommentVNode("",!0),t.organisations.length>1?(e.openBlock(),e.createElementBlock("button",{key:1,class:"flex items-center gap-1.5 sm:gap-2 min-w-0 cursor-pointer hover:bg-white/50 rounded-lg px-1.5 sm:px-2 py-1 sm:py-1.5 transition-all group",onClick:h},[e.createElementVNode("div",yg,[e.createElementVNode("p",bg,e.toDisplayString(t.currentOrganisation.organisation_name),1),e.createElementVNode("div",xg,[e.createVNode(L,{icon:"user",class:"w-3 h-3 text-blue-600 shrink-0"}),B.value?(e.openBlock(),e.createElementBlock("p",kg,e.toDisplayString(B.value),1)):e.createCommentVNode("",!0)])]),e.createVNode(L,{icon:"chevron-down",class:e.normalizeClass(["w-3.5 h-3.5 sm:w-4 sm:h-4 text-blue-600 shrink-0 group-hover:text-blue-700 transition-transform",{"rotate-180":g.value}])},null,8,["class"])])):(e.openBlock(),e.createElementBlock("div",wg,[e.createElementVNode("p",Cg,e.toDisplayString(t.currentOrganisation.organisation_name),1),e.createElementVNode("div",Bg,[e.createVNode(L,{icon:"user",class:"w-3 h-3 text-blue-600 shrink-0"}),B.value?(e.openBlock(),e.createElementBlock("p",Vg,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(()=>[g.value?(e.openBlock(),e.createElementBlock("div",Eg,[e.createElementVNode("div",Ng,[e.createElementVNode("h3",Sg,[e.createVNode(L,{icon:"list",class:"w-4 h-4 text-blue-600"}),e.createTextVNode(" "+e.toDisplayString(t.organisationSwitcherTitle),1)]),e.createElementVNode("p",$g,e.toDisplayString(t.organisationSwitcherDescription),1)]),e.createElementVNode("div",zg,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.organisations,p=>(e.openBlock(),e.createElementBlock("button",{key:p.org_id||p.organisation_name,class:e.normalizeClass(e.unref($)("flex items-center w-full px-3 sm:px-4 py-2.5 sm:py-3 text-sm transition-all group",p.org_id===t.currentOrganisation?.org_id?"bg-linear-to-r from-blue-50 to-indigo-50 text-blue-700 border-l-4 border-blue-500":"text-gray-700 hover:bg-gray-50 border-l-4 border-transparent")),onClick:d=>V(p)},[w(p)?(e.openBlock(),e.createElementBlock("div",Tg,[e.createElementVNode("img",{src:w(p),alt:`${p.organisation_name} logo`,class:"w-7 h-7 sm:w-8 sm:h-8 object-contain rounded-lg bg-white p-0.5 sm:p-1 border border-gray-200 group-hover:border-blue-200 transition-colors"},null,8,Fg)])):(e.openBlock(),e.createElementBlock("div",Ag,[e.createVNode(L,{icon:"building",class:"w-3.5 h-3.5 sm:w-4 sm:h-4 text-gray-500"})])),e.createElementVNode("div",Mg,[e.createElementVNode("p",Lg,e.toDisplayString(p.organisation_name),1),p.type?(e.openBlock(),e.createElementBlock("p",_g,e.toDisplayString(p.type.name),1)):e.createCommentVNode("",!0)]),p.org_id===t.currentOrganisation?.org_id?(e.openBlock(),e.createBlock(L,{key:2,icon:"check-circle",class:"w-4 h-4 sm:w-5 sm:h-5 text-blue-600 shrink-0 ml-2"})):e.createCommentVNode("",!0)],10,Dg))),128))])])):e.createCommentVNode("",!0)]),_:1})])):e.createCommentVNode("",!0),t.showBreadcrumb?(e.openBlock(),e.createElementBlock("nav",jg,[e.createElementVNode("span",Pg,e.toDisplayString(t.currentSection),1),e.createVNode(L,{icon:"chevron-right",class:"w-4 h-4 text-gray-400 shrink-0"}),e.createElementVNode("span",Og,e.toDisplayString(t.currentPage),1)])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Ig,[t.showSearch&&(!c.value||i.value)?(e.openBlock(),e.createElementBlock("div",Rg,[e.createElementVNode("div",Ug,[e.createVNode(L,{icon:"search",class:"w-4 h-4 text-gray-400"})]),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":S[1]||(S[1]=p=>l.value=p),type:"text",placeholder:t.searchPlaceholder,class:"pl-8 sm:pl-10 pr-8 sm:pr-4 py-1.5 sm:py-2 w-36 sm:w-48 md:w-64 text-xs sm:text-sm border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-blue-500 outline-none transition-all"},null,8,qg),[[e.vModelText,l.value]]),c.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 p-1",onClick:S[2]||(S[2]=p=>i.value=!1)},[e.createVNode(L,{icon:"times",class:"w-4 h-4"})])):e.createCommentVNode("",!0)])):t.showSearch&&c.value?(e.openBlock(),e.createElementBlock("button",{key:1,class:"p-2 text-gray-400 hover:text-gray-600 rounded-lg hover:bg-gray-50 transition-colors",onClick:S[3]||(S[3]=p=>i.value=!0)},[e.createVNode(L,{icon:"search",class:"w-5 h-5"})])):e.createCommentVNode("",!0),t.showNotifications?(e.openBlock(),e.createElementBlock("button",{key:2,class:"relative p-1.5 sm:p-2 text-gray-400 hover:text-gray-600 rounded-lg hover:bg-gray-50 transition-colors",onClick:N},[e.createVNode(L,{icon:"bell",class:"w-5 h-5"}),k.value>0?(e.openBlock(),e.createElementBlock("span",Yg,e.toDisplayString(k.value>9?"9+":k.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",Hg,[e.createElementVNode("div",Wg,[e.createElementVNode("h3",Gg,e.toDisplayString(t.notificationsTitle),1),k.value>0?(e.openBlock(),e.createElementBlock("p",Kg," You have "+e.toDisplayString(k.value)+" unread notification"+e.toDisplayString(k.value>1?"s":""),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Xg,[t.notifications.length===0?(e.openBlock(),e.createElementBlock("div",Jg,[e.createVNode(L,{icon:"bell",class:"w-10 h-10 sm:w-12 sm:h-12 mx-auto text-gray-300 mb-2"}),S[5]||(S[5]=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,p=>(e.openBlock(),e.createElementBlock("div",{key:p.id,class:e.normalizeClass(["p-3 sm:p-4 border-b border-gray-100 hover:bg-gray-50 cursor-pointer transition-colors",p.read?"opacity-60":""]),onClick:d=>E(p)},[e.createElementVNode("div",Zg,[e.createElementVNode("div",{class:e.normalizeClass(["shrink-0 w-8 h-8 sm:w-9 sm:h-9 rounded-lg flex items-center justify-center",T(p)])},[p.title.includes("Overdue")?(e.openBlock(),e.createBlock(L,{key:0,icon:"exclamation-triangle",class:"w-4 h-4 sm:w-5 sm:h-5"})):p.type==="due_date_reminder"?(e.openBlock(),e.createBlock(L,{key:1,icon:"clock",class:"w-4 h-4 sm:w-5 sm:h-5"})):(e.openBlock(),e.createBlock(L,{key:2,icon:"bell",class:"w-4 h-4 sm:w-5 sm:h-5"}))],2),e.createElementVNode("div",e0,[e.createElementVNode("div",t0,[e.createElementVNode("p",a0,e.toDisplayString(p.title),1),p.read?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",n0))]),p.source?(e.openBlock(),e.createElementBlock("div",o0,[e.createElementVNode("span",l0,[e.createVNode(L,{icon:"tag",class:"w-2.5 h-2.5 sm:w-3 sm:h-3 mr-0.5 sm:mr-1"}),e.createTextVNode(" "+e.toDisplayString(p.source.body_code),1)]),e.createVNode(L,{icon:"chevron-right",class:"w-2.5 h-2.5 sm:w-3 sm:h-3 text-gray-400 hidden xs:block"}),e.createElementVNode("span",r0,e.toDisplayString(p.source.code),1)])):e.createCommentVNode("",!0),e.createElementVNode("div",s0,[p.model?(e.openBlock(),e.createElementBlock("span",i0,[e.createVNode(L,{icon:"file",class:"w-2.5 h-2.5 sm:w-3 sm:h-3 mr-0.5 sm:mr-1"}),e.createElementVNode("span",c0,e.toDisplayString(_(p.model)),1)])):e.createCommentVNode("",!0),p.due_date?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(["inline-flex items-center px-1.5 sm:px-2 py-0.5 rounded text-[10px] sm:text-xs font-medium whitespace-nowrap",p.title.includes("Overdue")?"bg-red-100 text-red-800 border border-red-200":p.title.includes("Due in 0")?"bg-orange-100 text-orange-800 border border-orange-200":"bg-amber-100 text-amber-800 border border-amber-200"])},[e.createVNode(L,{icon:"calendar",class:"w-2.5 h-2.5 sm:w-3 sm:h-3 mr-0.5 sm:mr-1 shrink-0"}),e.createTextVNode(" "+e.toDisplayString(f(p.due_date)),1)],2)):e.createCommentVNode("",!0)]),e.createElementVNode("p",d0,[e.createVNode(L,{icon:"clock",class:"w-2.5 h-2.5 sm:w-3 sm:h-3 mr-0.5 sm:mr-1"}),e.createTextVNode(" "+e.toDisplayString(p.time),1)])])])],10,Qg))),128))]),t.notifications.length>0?(e.openBlock(),e.createElementBlock("div",u0,[e.createElementVNode("button",{class:"text-xs sm:text-sm font-semibold text-blue-600 hover:text-blue-700 transition-colors",onClick:M}," View all notifications → ")])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),_:1}),e.createElementVNode("div",m0,[e.createElementVNode("button",{class:"flex items-center space-x-1 sm:space-x-2 md:space-x-3 p-1 sm:p-2 rounded-lg hover:bg-gray-50 transition-colors",onClick:x},[e.createElementVNode("div",f0,[e.createElementVNode("span",p0,e.toDisplayString(C.value),1)]),t.showUserDetails?(e.openBlock(),e.createElementBlock("div",g0,[e.createElementVNode("p",v0,e.toDisplayString(t.user.name),1),e.createElementVNode("p",h0,e.toDisplayString(D.value),1)])):e.createCommentVNode("",!0),e.createVNode(L,{icon:"chevron-down",class:"w-3.5 h-3.5 sm:w-4 sm:h-4 text-gray-400"})]),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",y0,[e.createElementVNode("div",b0,[e.createElementVNode("p",x0,e.toDisplayString(t.user.name),1),e.createElementVNode("p",k0,e.toDisplayString(t.user.email),1)]),e.createElementVNode("div",w0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.profileMenuItems,p=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:p.name},[p.route?(e.openBlock(),e.createBlock(u,{key:0,to:p.route,class:e.normalizeClass(e.unref($)("flex items-center px-2.5 sm:px-3 py-2 sm:py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",y(p)?"bg-linear-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:d=>v(p)},{default:e.withCtx(()=>[y(p)?(e.openBlock(),e.createElementBlock("div",C0)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref($)("flex items-center justify-center w-7 h-7 sm:w-8 sm:h-8 rounded-lg mr-2 sm:mr-3 shrink-0 transition-colors ml-1 sm:ml-2",y(p)?"bg-linear-to-br from-blue-500 to-blue-600 text-white shadow-md":"bg-gray-100 text-gray-600 group-hover:bg-gray-200"))},[p.icon?(e.openBlock(),e.createBlock(L,{key:0,icon:p.icon,class:"w-3.5 h-3.5 sm:w-4 sm:h-4"},null,8,["icon"])):e.createCommentVNode("",!0)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref($)("flex-1 truncate font-semibold text-xs sm:text-sm",y(p)?"text-blue-700":"text-gray-700"))},e.toDisplayString(p.label),3)]),_:2},1032,["to","class","onClick"])):(e.openBlock(),e.createElementBlock("button",{key:1,class:"flex items-center w-full px-2.5 sm:px-3 py-2 sm: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:d=>b(p)},[e.createElementVNode("div",V0,[p.icon?(e.openBlock(),e.createBlock(L,{key:0,icon:p.icon,class:"w-3.5 h-3.5 sm:w-4 sm:h-4"},null,8,["icon"])):e.createCommentVNode("",!0)]),e.createElementVNode("span",E0,e.toDisplayString(p.label),1)],8,B0))],64))),128))]),e.createElementVNode("div",N0,[e.createElementVNode("button",{class:"flex items-center w-full px-2.5 sm:px-3 py-2 sm: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},[e.createElementVNode("div",S0,[e.createVNode(L,{icon:"sign-out-alt",class:"w-3.5 h-3.5 sm:w-4 sm:h-4"})]),S[6]||(S[6]=e.createElementVNode("span",{class:"truncate font-semibold text-red-600 text-xs sm:text-sm"}," Sign out ",-1))])])])):e.createCommentVNode("",!0)]),_:1})])])])],2)}}},$0={class:"relative"},z0=["id","disabled"],D0={key:0,class:"text-gray-500"},T0={key:1,class:"flex flex-wrap gap-1.5"},F0={class:"px-3 py-2.5 border-b border-gray-200 bg-gray-50"},A0={key:0,class:"max-h-52 overflow-y-auto py-1"},M0=["onClick"],L0={class:"flex items-center gap-3"},_0=["checked"],j0={key:1,class:"px-4 py-6 text-sm text-gray-500 text-center"},ol={__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),g=e.ref({}),k=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(),y=window.innerHeight,b=y-v.bottom,z=320;b<z&&v.top>z?g.value={position:"fixed",bottom:`${y-v.top+4}px`,left:`${v.left}px`,width:`${v.width}px`,zIndex:9999}:g.value={position:"fixed",top:`${v.bottom+4}px`,left:`${v.left}px`,width:`${v.width}px`,zIndex:9999}},D=()=>{a.disabled||(l.value=!l.value,l.value?(C(),e.nextTick(()=>{s.value?.focus()})):(r.value="",i.value=[...a.options]))},B=v=>{let y;a.modelValue.includes(v)?y=a.modelValue.filter(b=>b!==v):y=[...a.modelValue,v],o("update:modelValue",y)},N=()=>{if(!r.value.trim())i.value=[...a.options];else{const v=r.value.toLowerCase();i.value=a.options.filter(y=>y.label.toLowerCase().includes(v))}},x=v=>{v.key==="Escape"&&(l.value=!1,r.value="",i.value=[...a.options])},h=v=>{if(!c.value)return;const y=v.target;y&&!c.value.contains(y)&&!y.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,v=>{i.value=[...v]},{immediate:!0}),e.watch(l,v=>{v&&C()}),(v,y)=>(e.openBlock(),e.createElementBlock("div",$0,[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:D,onKeydown:x},[k.value.length===0?(e.openBlock(),e.createElementBlock("div",D0,e.toDisplayString(t.placeholder||"Select options"),1)):(e.openBlock(),e.createElementBlock("div",T0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,b=>(e.openBlock(),e.createBlock(va,{key:b,variant:"primary",size:"sm"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(b),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"},[...y[2]||(y[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,z0),(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(g.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",F0,[e.withDirectives(e.createElementVNode("input",{ref_key:"searchInput",ref:s,"onUpdate:modelValue":y[0]||(y[0]=b=>r.value=b),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:N,onKeydown:y[1]||(y[1]=e.withModifiers(()=>{},["stop"]))},null,544),[[e.vModelText,r.value]])]),i.value.length>0?(e.openBlock(),e.createElementBlock("div",A0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,b=>(e.openBlock(),e.createElementBlock("button",{key:b.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(b.value)}]),onClick:z=>B(b.value)},[e.createElementVNode("div",L0,[e.createElementVNode("input",{type:"checkbox",checked:t.modelValue.includes(b.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,_0),e.createElementVNode("span",{class:e.normalizeClass(["block font-normal truncate",{"text-blue-900 font-medium":t.modelValue.includes(b.value)}])},e.toDisplayString(b.label),3)])],10,M0))),128))])):(e.openBlock(),e.createElementBlock("div",j0," No options found "))],4)):e.createCommentVNode("",!0)]),_:1})]))]))}},P0={class:"mb-6"},O0={class:"text-xl font-semibold text-gray-900"},I0={class:"text-sm text-gray-600 mt-1"},R0={class:"grid grid-cols-12 gap-6"},U0=["value"],q0={key:5,class:"flex items-center"},Y0={key:6,class:"flex items-center"},H0=["id","aria-checked","disabled","onClick"],W0={key:7,class:"space-y-2"},G0={key:8,class:"w-full"},K0={key:0,class:"mt-2 text-xs text-gray-500"},X0={key:9,class:"w-full"},J0={key:0,class:"mt-2 text-xs text-gray-500"},Q0={key:11,class:"space-y-2"},Z0={class:"flex items-center gap-4"},ev={class:"text-sm font-medium text-gray-700 min-w-[3rem] text-right"},tv={class:"flex justify-end gap-3 pt-6"},ll={__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:f=>o("update:modelValue",f)}),r=e.computed(()=>a.loading),s=e.ref({}),i=e.ref({}),c=e.ref(!1),g=e.ref({}),k=e.ref({}),C=(f,w)=>{if(!(!f||!w))return w.split(".").reduce((m,S)=>m?.[S],f)},D=(f,w,m)=>{const S=w.split("."),u=S.pop(),p=S.reduce((d,P)=>(d[P]||(d[P]={}),d[P]),f);p[u]=m},B=()=>{const f={};return a.fields.forEach(w=>{if(w.name.includes(".")){const[m]=w.name.split(".");f[m]||(f[m]={}),D(f,w.name,N(w))}else w.type==="checkbox"||w.type==="switch"?f[w.name]=!1:w.type==="number"||w.type==="slider"||w.type==="range"?f[w.name]=w.min!==void 0?w.min:0:w.type==="file"?f[w.name]=null:w.type==="multifile"?f[w.name]=[]:w.type==="radio"?f[w.name]=w.options?.[0]?.value||"":w.type==="multiselect"?f[w.name]=[]:(w.type,f[w.name]="")}),f},N=f=>f.type==="checkbox"||f.type==="switch"?!1:f.type==="number"||f.type==="slider"||f.type==="range"?f.min!==void 0?f.min:0:f.type==="file"?null:f.type==="multifile"?[]:f.type==="radio"?f.options?.[0]?.value||"":f.type==="multiselect"?[]:(f.type==="combobox",""),x=f=>{const w={};return a.fields.forEach(m=>{if(m.name.includes(".")){const S=C(f,m.name);w[m.name.split(".")[0]]||(w[m.name.split(".")[0]]={}),D(w,m.name,S!==void 0?S:N(m))}else{const S=f?.[m.name];m.type==="checkbox"||m.type==="switch"?w[m.name]=S??!1:m.type==="number"||m.type==="slider"||m.type==="range"?w[m.name]=S??(m.min!==void 0?m.min:0):m.type==="file"?w[m.name]=null:m.type==="multifile"?w[m.name]=Array.isArray(S)?S:[]:m.type==="multiselect"?w[m.name]=Array.isArray(S)?S:[]:w[m.name]=S??N(m)}}),w};e.watch(()=>a.initialData,f=>{a.modalType==="edit"&&f||a.modalType==="create"&&f&&!c.value?(s.value=x(f),c.value=!0):a.modalType==="create"&&!f&&(s.value=B(),c.value=!1)},{immediate:!0,deep:!0}),e.watch(()=>a.modelValue,f=>{f&&(i.value={},a.modalType==="create"&&(c.value=!1,a.initialData?s.value=x(a.initialData):s.value=B(),c.value=!0))}),e.watch(()=>a.initialData,f=>{c.value&&f&&(s.value=x(f))},{deep:!0});const h=()=>{if(i.value={},a.fields.forEach(f=>{if(f.required&&!f.disabled&&f.type!=="hidden"){const w=f.name.includes(".")?C(s.value,f.name):s.value[f.name];f.type==="checkbox"||f.type==="switch"?f.required&&!w&&(i.value[f.name]=f.errorMessage||`${f.label} is required`):f.type==="number"||f.type==="slider"||f.type==="range"?w===""||w===null||w===void 0?i.value[f.name]=f.errorMessage||`${f.label} is required`:f.min!==void 0&&Number(w)<f.min?i.value[f.name]=`${f.label} must be at least ${f.min}`:f.max!==void 0&&Number(w)>f.max&&(i.value[f.name]=`${f.label} must be at most ${f.max}`):f.type==="email"?!w||!w.trim()?i.value[f.name]=f.errorMessage||`${f.label} is required`:/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(w)||(i.value[f.name]="Please enter a valid email address"):f.type==="url"?!w||!w.trim()?i.value[f.name]=f.errorMessage||`${f.label} is required`:/^https?:\/\/.+/.test(w)||(i.value[f.name]="Please enter a valid URL"):f.type==="tel"?(!w||!w.trim())&&(i.value[f.name]=f.errorMessage||`${f.label} is required`):f.type==="file"?w||(i.value[f.name]=f.errorMessage||`${f.label} is required`):f.type==="multifile"?!Array.isArray(w)||w.length===0?i.value[f.name]=f.errorMessage||`${f.label} is required`:f.minFiles&&w.length<f.minFiles?i.value[f.name]=`Please upload at least ${f.minFiles} file(s)`:f.maxFiles&&w.length>f.maxFiles&&(i.value[f.name]=`Maximum ${f.maxFiles} file(s) allowed`):f.type==="radio"?w||(i.value[f.name]=f.errorMessage||`${f.label} is required`):f.type==="multiselect"?(!Array.isArray(w)||w.length===0)&&(i.value[f.name]=f.errorMessage||`${f.label} is required`):f.type==="combobox"?(!w||typeof w=="string"&&!w.trim())&&(i.value[f.name]=f.errorMessage||`${f.label} is required`):f.type==="date"||f.type==="time"||f.type==="datetime-local"||f.type==="month"||f.type==="week"?(!w||typeof w=="string"&&!w.trim())&&(i.value[f.name]=f.errorMessage||`${f.label} is required`):f.type==="password"?(!w||typeof w=="string"&&!w.trim())&&(i.value[f.name]=f.errorMessage||`${f.label} is required`):(!w||typeof w=="string"&&!w.trim())&&(i.value[f.name]=f.errorMessage||`${f.label} is required`)}if(f.validate&&typeof f.validate=="function"){const w=f.name.includes(".")?C(s.value,f.name):s.value[f.name],m=f.validate(w,s.value);m&&(i.value[f.name]=m)}}),a.customValidation){const f=a.customValidation(s.value);f&&Object.keys(f).length>0&&(i.value={...i.value,...f})}return Object.keys(i.value).length===0},v=async(f,w)=>{if(f.name.includes(".")?D(s.value,f.name,w):s.value[f.name]=w,f.onChange&&typeof f.onChange=="function")try{await f.onChange(w,s.value)}catch(m){console.error("Error in onChange handler:",m),se.error("An error occurred while processing the change")}},y=(f,w)=>{if(f.name.includes(".")?D(s.value,f.name,w):s.value[f.name]=w,f.onChange&&typeof f.onChange=="function")try{f.onChange(w,s.value)}catch(m){console.error("Error in onChange handler:",m),se.error("An error occurred while processing the change")}},b=async()=>{try{if(a.fields.some(u=>u.type!=="multifile"&&g.value[u.name]?.length>0)){se.error("Please wait for all files to finish uploading");return}if(!h()){se.error("Please fix the validation errors before submitting");return}const w={};let m=!1;a.fields.forEach(u=>{const p=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(".")?D(w,u.name,Number(p)):w[u.name]=Number(p);else if(u.type==="file")p instanceof File?(m=!0,w[u.name]=p):a.modalType==="edit"&&p&&(w[u.name]=p);else if(u.type==="multifile")Array.isArray(p)&&p.some(d=>d instanceof File)?(m=!0,w[u.name]=p):a.modalType==="edit"&&Array.isArray(p)&&p.length>0&&(w[u.name]=p);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 d=typeof p=="string"?p.trim():p;u.name.includes(".")?D(w,u.name,d):w[u.name]=d}else u.type,u.name.includes(".")?D(w,u.name,p):w[u.name]=p});let S=w;m&&(S=z(w),a.modalType==="edit"&&S.append("_method","PUT")),o("submit",{formData:S,modalType:a.modalType,originalData:a.initialData,hasFiles:m})}catch(f){console.error("Error during form submission:",f),se.error("An error occurred during submission")}},z=f=>{const w=new FormData;return Object.keys(f).forEach(m=>{const S=f[m];S!=null&&(S instanceof File?w.append(m,S):Array.isArray(S)?S.forEach((u,p)=>{u instanceof File?w.append(`${m}[]`,u):w.append(`${m}[${p}]`,u)}):typeof S=="object"&&!(S instanceof Date)?Object.keys(S).forEach(u=>{w.append(`${m}[${u}]`,S[u])}):w.append(m,S))}),w},V=()=>{s.value=B(),i.value={},c.value=!1,g.value={},k.value={},o("close")},E=f=>f.includes(".")?C(s.value,f):s.value[f],M=(f,w)=>{f.includes(".")?D(s.value,f,w):s.value[f]=w},Y=(f,w)=>{if(M(f.name,w),f.onChange&&typeof f.onChange=="function")try{f.onChange(w,s.value)}catch(m){console.error("Error in onChange handler:",m)}},U=(f,w)=>{if(M(f.name,w),f.onChange&&typeof f.onChange=="function")try{f.onChange(w,s.value)}catch(m){console.error("Error in onChange handler:",m)}},T=(f,w)=>{if(M(f.name,w),f.onChange&&typeof f.onChange=="function")try{f.onChange(w,s.value)}catch(m){console.error("Error in onChange handler:",m)}},_=(f,w)=>{if(M(f.name,w),f.onChange&&typeof f.onChange=="function")try{f.onChange(w,s.value)}catch(m){console.error("Error in onChange handler:",m)}};return(f,w)=>(e.openBlock(),e.createBlock(Et,{modelValue:l.value,"onUpdate:modelValue":w[0]||(w[0]=m=>l.value=m),"show-close":!0,"close-on-backdrop":!0,size:t.modalSize,class:e.normalizeClass(t.modalHeight==="auto"?"":t.modalHeight),resizable:t.modalResizable,onClose:V},{default:e.withCtx(()=>[e.createElementVNode("div",P0,[e.createElementVNode("h2",O0,e.toDisplayString(t.modalType==="create"?`Add New ${t.entityName}`:`Edit ${t.entityName}`),1),e.createElementVNode("p",I0,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:"overflow-y-auto",onSubmit:e.withModifiers(b,["prevent"])},[e.createElementVNode("div",R0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.fields,m=>(e.openBlock(),e.createElementBlock("div",{key:m.name,class:e.normalizeClass(m.wrapperClass||"col-span-12")},[m.type==="hidden"?(e.openBlock(),e.createElementBlock("input",{key:0,value:E(m.name),type:"hidden"},null,8,U0)):(e.openBlock(),e.createBlock(Vt,{key:1,id:`form-${t.entityName}-${m.name}-${Math.random().toString(36).slice(2,5)}`,label:m.label,required:m.required&&!m.disabled,error:i.value[m.name],"error-message":i.value[m.name]},{default:e.withCtx(({fieldId:S,hasError:u,ariaDescribedBy:p})=>[["text","number","password","color","email","tel","url","search"].includes(m.type)?(e.openBlock(),e.createBlock(le,{key:0,id:S,"model-value":E(m.name),type:m.type,placeholder:m.placeholder,disabled:r.value||m.disabled,readonly:m.disabled,class:e.normalizeClass(u?"border-red-500":"border-slate-300"),"aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","type","placeholder","disabled","readonly","class","aria-describedby","onUpdate:modelValue"])):m.type==="textarea"?(e.openBlock(),e.createBlock(Bt,{key:1,id:S,"model-value":E(m.name),placeholder:m.placeholder,disabled:r.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",u?"border-red-500":"border-slate-300"]),"aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","placeholder","disabled","rows","class","aria-describedby","onUpdate:modelValue"])):m.type==="select"?(e.openBlock(),e.createBlock(he,{key:2,id:S,"model-value":E(m.name),options:m.options,placeholder:m.placeholder||"Select an option",disabled:r.value||m.disabled,"has-error":u,"aria-describedby":p,"onUpdate:modelValue":d=>v(m,d)},null,8,["id","model-value","options","placeholder","disabled","has-error","aria-describedby","onUpdate:modelValue"])):m.type==="multiselect"?(e.openBlock(),e.createBlock(ol,{key:3,id:S,"model-value":E(m.name),options:m.options,disabled:r.value||m.disabled,placeholder:m.placeholder||"Select options","has-error":u,"aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","options","disabled","placeholder","has-error","aria-describedby","onUpdate:modelValue"])):m.type==="combobox"?(e.openBlock(),e.createBlock(he,{key:4,id:S,"model-value":E(m.name),options:m.options,placeholder:m.placeholder||"Select or type to add new",disabled:r.value||m.disabled,"has-error":u,"aria-describedby":p,"allow-create":m.allowCreate,"onUpdate:modelValue":d=>v(m,d)},null,8,["id","model-value","options","placeholder","disabled","has-error","aria-describedby","allow-create","onUpdate:modelValue"])):m.type==="checkbox"?(e.openBlock(),e.createElementBlock("div",q0,[e.createVNode(le,{id:S,"model-value":E(m.name),type:"checkbox",disabled:r.value||m.disabled,class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300 rounded","aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","disabled","aria-describedby","onUpdate:modelValue"]),e.createVNode(Be,{for:S,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",Y0,[e.createElementVNode("button",{id:S,type:"button",role:"switch","aria-checked":E(m.name),disabled:r.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",E(m.name)?"bg-blue-600":"bg-gray-200",r.value||m.disabled?"opacity-50 cursor-not-allowed":"cursor-pointer"]),onClick:d=>M(m.name,!E(m.name))},[e.createElementVNode("span",{class:e.normalizeClass(["inline-block h-4 w-4 transform rounded-full bg-white transition-transform",E(m.name)?"translate-x-6":"translate-x-1"])},null,2)],10,H0),e.createVNode(Be,{for:S,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",W0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.options,d=>(e.openBlock(),e.createElementBlock("div",{key:d.value,class:"flex items-center"},[e.createVNode(le,{id:`${S}-${d.value}`,"model-value":E(m.name),type:"radio",value:d.value,disabled:r.value||m.disabled,class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300","aria-describedby":p,"onUpdate:modelValue":P=>M(m.name,P)},null,8,["id","model-value","value","disabled","aria-describedby","onUpdate:modelValue"]),e.createVNode(Be,{for:`${S}-${d.value}`,class:"ml-2 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(d.label),1)]),_:2},1032,["for"])]))),128))])):m.type==="file"?(e.openBlock(),e.createElementBlock("div",G0,[e.createVNode(Ze,{multiple:!1,accept:m.accept,"max-size":m.maxSize,variant:m.variant||"default",onFilesSelected:d=>Y(m,d),onFileRemoved:d=>U(m,d)},null,8,["accept","max-size","variant","onFilesSelected","onFileRemoved"]),m.helpText?(e.openBlock(),e.createElementBlock("p",K0,e.toDisplayString(m.helpText),1)):e.createCommentVNode("",!0)])):m.type==="multifile"?(e.openBlock(),e.createElementBlock("div",X0,[e.createVNode(Ze,{multiple:m.multiple!==!1,accept:m.accept,"max-size":m.maxSize,"max-files":m.maxFiles,variant:m.variant||"default",onFilesSelected:d=>T(m,d),onFileRemoved:d=>_(m,d)},null,8,["multiple","accept","max-size","max-files","variant","onFilesSelected","onFileRemoved"]),m.helpText?(e.openBlock(),e.createElementBlock("p",J0,e.toDisplayString(m.helpText),1)):e.createCommentVNode("",!0)])):m.type==="slider"?(e.openBlock(),e.createBlock(Nt,{key:10,"model-value":E(m.name),min:m.min,max:m.max,step:m.step,disabled:r.value||m.disabled,"onUpdate:modelValue":d=>y(m,d)},null,8,["model-value","min","max","step","disabled","onUpdate:modelValue"])):m.type==="range"?(e.openBlock(),e.createElementBlock("div",Q0,[e.createElementVNode("div",Z0,[e.createVNode(le,{id:S,"model-value":E(m.name),type:"range",min:m.min,max:m.max,step:m.step||1,disabled:r.value||m.disabled,class:"flex-1","aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","min","max","step","disabled","aria-describedby","onUpdate:modelValue"]),e.createElementVNode("span",ev,e.toDisplayString(E(m.name)),1)])])):m.type==="date"?(e.openBlock(),e.createBlock(ot,{key:12,id:S,"model-value":E(m.name),disabled:r.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":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","disabled","required","min","max","placeholder","format","clearable","show-today","calendar-position","aria-describedby","onUpdate:modelValue"])):m.type==="time"?(e.openBlock(),e.createBlock(le,{key:13,id:S,"model-value":E(m.name),type:"time",disabled:r.value||m.disabled,class:e.normalizeClass(u?"border-red-500":"border-slate-300"),"aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):m.type==="datetime-local"?(e.openBlock(),e.createBlock(le,{key:14,id:S,"model-value":E(m.name),type:"datetime-local",disabled:r.value||m.disabled,class:e.normalizeClass(u?"border-red-500":"border-slate-300"),"aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):m.type==="month"?(e.openBlock(),e.createBlock(le,{key:15,id:S,"model-value":E(m.name),type:"month",disabled:r.value||m.disabled,class:e.normalizeClass(u?"border-red-500":"border-slate-300"),"aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):m.type==="week"?(e.openBlock(),e.createBlock(le,{key:16,id:S,"model-value":E(m.name),type:"week",disabled:r.value||m.disabled,class:e.normalizeClass(u?"border-red-500":"border-slate-300"),"aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):e.createCommentVNode("",!0)]),_:2},1032,["id","label","required","error","error-message"]))],2))),128))]),e.createElementVNode("div",tv,[e.createVNode(oe,{type:"button",variant:"outline",disabled:r.value,onClick:V},{default:e.withCtx(()=>[...w[1]||(w[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"]))}},av={class:"w-full p-2"},nv={key:0,class:"mb-6"},ov={class:"text-xl font-semibold text-gray-900"},lv={key:0,class:"text-sm text-gray-600 mt-1"},rv=["onUpdate:modelValue"],sv={key:4,class:"flex items-center"},iv={key:5,class:"flex items-center"},cv=["id","aria-checked","disabled","onClick"],dv={key:6,class:"space-y-2"},uv={key:7,class:"space-y-2"},mv={key:0,class:"text-xs text-gray-500"},fv={key:8,class:"space-y-3"},pv=["onDrop","onDragenter","onDragleave","onClick"],gv=["multiple","accept","disabled","onChange"],vv={class:"flex items-center justify-center px-4 py-4"},hv={class:"flex flex-col"},yv={class:"text-xs text-gray-500"},bv={key:0,class:"ml-1"},xv={key:1,class:"ml-1"},kv={key:0,class:"text-xs text-gray-500"},wv={key:1,class:"space-y-2"},Cv={class:"flex items-center space-x-3 flex-1 min-w-0"},Bv={class:"relative h-10 w-10 shrink-0"},Vv={class:"h-10 w-10 text-gray-300",viewBox:"0 0 36 36"},Ev=["stroke-dasharray"],Nv={class:"absolute inset-0 flex items-center justify-center text-xs font-medium text-gray-700"},Sv={class:"flex flex-col min-w-0"},$v={class:"text-sm font-medium text-gray-900 truncate"},zv=["onClick"],Dv={key:2,class:"space-y-2"},Tv={class:"flex items-center space-x-3 flex-1 min-w-0"},Fv={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"},Av={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"},Mv={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"},Lv={class:"flex flex-col min-w-0"},_v={class:"text-sm font-medium text-gray-900 truncate"},jv={class:"text-xs text-gray-500"},Pv=["disabled","onClick"],Ov={key:3,class:"text-xs text-blue-600 font-medium"},Iv={key:0},Rv={key:10,class:"space-y-2"},Uv={class:"flex items-center gap-4"},qv={class:"text-sm font-medium text-gray-700 min-w-[3rem] text-right"},Yv={class:"flex justify-end gap-3 pt-6"},rl={__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({}),g=e.ref({}),k=e.ref({}),C=u=>{const p=k.value[u];p&&p.click()},D=(u,p)=>{p&&(k.value[u]=p)},B=()=>{const u={};return a.fields.forEach(p=>{p.type==="checkbox"||p.type==="switch"?u[p.name]=!1:p.type==="number"||p.type==="slider"||p.type==="range"?u[p.name]=p.min!==void 0?p.min:0:p.type==="file"?u[p.name]=null:p.type==="multifile"?u[p.name]=[]:p.type==="radio"?u[p.name]=p.options?.[0]?.value||"":p.type==="multiselect"?u[p.name]=[]:u[p.name]=""}),u};e.watch(()=>a.initialData,u=>{if(u){const p={};a.fields.forEach(d=>{d.type==="checkbox"||d.type==="switch"?p[d.name]=u[d.name]??!1:d.type==="number"||d.type==="slider"||d.type==="range"?p[d.name]=u[d.name]??(d.min!==void 0?d.min:0):d.type==="file"?p[d.name]=null:d.type==="multifile"?p[d.name]=Array.isArray(u[d.name])?u[d.name]:[]:d.type==="multiselect"?p[d.name]=Array.isArray(u[d.name])?u[d.name]:[]:p[d.name]=u[d.name]??""}),r.value=p,i.value=!0}else r.value=B(),i.value=!1},{immediate:!0,deep:!0}),e.watch(()=>a.initialData,u=>{i.value&&u&&Object.keys(u).forEach(p=>{Object.prototype.hasOwnProperty.call(r.value,p)&&u[p]!==void 0&&u[p]!==null&&(r.value[p]=u[p])})},{deep:!0});const N=()=>{if(s.value={},a.fields.forEach(u=>{if(u.required&&!u.disabled&&u.type!=="hidden"){const p=r.value[u.name];u.type==="checkbox"||u.type==="switch"?u.required&&!p&&(s.value[u.name]=u.errorMessage||`${u.label} is required`):u.type==="number"||u.type==="slider"||u.type==="range"?p===""||p===null||p===void 0?s.value[u.name]=u.errorMessage||`${u.label} is required`:u.min!==void 0&&Number(p)<u.min?s.value[u.name]=`${u.label} must be at least ${u.min}`:u.max!==void 0&&Number(p)>u.max&&(s.value[u.name]=`${u.label} must be at most ${u.max}`):u.type==="email"?!p||!p.trim()?s.value[u.name]=u.errorMessage||`${u.label} is required`:/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(p)||(s.value[u.name]="Please enter a valid email address"):u.type==="url"?!p||!p.trim()?s.value[u.name]=u.errorMessage||`${u.label} is required`:/^https?:\/\/.+/.test(p)||(s.value[u.name]="Please enter a valid URL"):u.type==="tel"?(!p||!p.trim())&&(s.value[u.name]=u.errorMessage||`${u.label} is required`):u.type==="file"?p||(s.value[u.name]=u.errorMessage||`${u.label} is required`):u.type==="multifile"?!Array.isArray(p)||p.length===0?s.value[u.name]=u.errorMessage||`${u.label} is required`:u.minFiles&&p.length<u.minFiles?s.value[u.name]=`Please upload at least ${u.minFiles} file(s)`:u.maxFiles&&p.length>u.maxFiles&&(s.value[u.name]=`Maximum ${u.maxFiles} file(s) allowed`):u.type==="radio"?p||(s.value[u.name]=u.errorMessage||`${u.label} is required`):u.type==="multiselect"?(!Array.isArray(p)||p.length===0)&&(s.value[u.name]=u.errorMessage||`${u.label} is required`):u.type==="date"||u.type==="time"||u.type==="datetime-local"||u.type==="month"||u.type==="week"?(!p||typeof p=="string"&&!p.trim())&&(s.value[u.name]=u.errorMessage||`${u.label} is required`):u.type==="password"?(!p||typeof p=="string"&&!p.trim())&&(s.value[u.name]=u.errorMessage||`${u.label} is required`):(!p||typeof p=="string"&&!p.trim())&&(s.value[u.name]=u.errorMessage||`${u.label} is required`)}if(u.validate&&typeof u.validate=="function"){const p=u.validate(r.value[u.name],r.value);p&&(s.value[u.name]=p)}}),a.customValidation){const u=a.customValidation(r.value);u&&Object.keys(u).length>0&&(s.value={...s.value,...u})}return Object.keys(s.value).length===0},x=async(u,p)=>{if(r.value[u.name]=p,u.onChange&&typeof u.onChange=="function")try{await u.onChange(p,r.value)}catch(d){console.error("Error in onChange handler:",d),se.error("An error occurred while processing the change")}},h=(u,p)=>{if(r.value[u.name]=p,u.onChange&&typeof u.onChange=="function")try{u.onChange(p,r.value)}catch(d){console.error("Error in onChange handler:",d),se.error("An error occurred while processing the change")}},v=(u,p)=>{const d=p.target.files?.[0]||null;if(r.value[u.name]=d,u.onChange&&typeof u.onChange=="function")try{u.onChange(d,r.value)}catch(P){console.error("Error in onChange handler:",P),se.error("An error occurred while processing the file")}},y=(u,p)=>{p.preventDefault(),g.value[u.name]=!1;const d=Array.from(p.dataTransfer?.files||[]);M(u,d)},b=u=>{u.preventDefault()},z=(u,p)=>{p.preventDefault(),g.value[u.name]=!0},V=(u,p)=>{p.preventDefault(),g.value[u.name]=!1},E=(u,p)=>{const d=Array.from(p.target?.files||[]);M(u,d),p.target.value=""},M=(u,p)=>{const d=r.value[u.name]||[],P=u.maxFiles||1/0,W=u.maxSize||1/0,X=p.filter(ne=>{if(ne.size>W)return se.error(`${ne.name} exceeds maximum size of ${T(W)}`),!1;if(u.accept){const re=u.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=P-d.length;if(R<=0){se.error(`Maximum ${P} file(s) allowed`);return}const ae=X.slice(0,R);ae.length<X.length&&se.warning(`Only ${ae.length} file(s) added. Maximum ${P} file(s) allowed`),c.value[u.name]||(c.value[u.name]=[]),ae.forEach(ne=>{const re=e.reactive({file:ne,progress:0,id:`${Date.now()}-${Math.random().toString(36).slice(2,9)}`});c.value[u.name].push(re);const fe=1500+Math.random()*1500,me=50,ce=100/(fe/me),Te=setInterval(()=>{if(re.progress+=ce,re.progress>=100){re.progress=100,clearInterval(Te),r.value[u.name]=[...r.value[u.name]||[],ne];const we=c.value[u.name]?.findIndex(be=>be.id===re.id);if(we>-1&&c.value[u.name].splice(we,1),u.onChange&&typeof u.onChange=="function")try{u.onChange(r.value[u.name],r.value)}catch(be){console.error("Error in onChange handler:",be)}}},me)})},Y=(u,p)=>{const d=[...r.value[u.name]||[]];if(d.splice(p,1),r.value[u.name]=d,u.onFileRemoved&&typeof u.onFileRemoved=="function")try{u.onFileRemoved(d,r.value)}catch(P){console.error("Error in onFileRemoved handler:",P)}},U=(u,p)=>{const d=c.value[u.name]?.findIndex(P=>P.id===p);d>-1&&c.value[u.name].splice(d,1)},T=u=>{if(u===0)return"0 Bytes";const p=1024,d=["Bytes","KB","MB","GB"],P=Math.floor(Math.log(u)/Math.log(p));return parseFloat((u/Math.pow(p,P)).toFixed(2))+" "+d[P]},_=u=>{const p=u.name.split(".").pop()?.toLowerCase();return["jpg","jpeg","png","gif","webp","svg","bmp"].includes(p)?"image":["pdf"].includes(p)||["doc","docx"].includes(p)?"file-text":["xls","xlsx","csv"].includes(p)?"table":["zip","rar","7z","tar","gz"].includes(p)?"archive":["mp4","mov","avi","mkv","webm"].includes(p)?"video":["mp3","wav","ogg","flac"].includes(p)?"music":"file"},f=u=>{const p=u.name.split(".").pop()?.toLowerCase();return["jpg","jpeg","png","gif","webp","svg","bmp"].includes(p)?"text-purple-600 bg-purple-100":["pdf"].includes(p)?"text-red-600 bg-red-100":["doc","docx"].includes(p)?"text-blue-600 bg-blue-100":["xls","xlsx","csv"].includes(p)?"text-green-600 bg-green-100":["zip","rar","7z","tar","gz"].includes(p)?"text-yellow-600 bg-yellow-100":["mp4","mov","avi","mkv","webm"].includes(p)?"text-pink-600 bg-pink-100":["mp3","wav","ogg","flac"].includes(p)?"text-orange-600 bg-orange-100":"text-gray-600 bg-gray-100"},w=async()=>{try{if(Object.values(c.value).some(d=>d.length>0)){se.error("Please wait for all files to finish uploading");return}if(!N()){se.error("Please fix the validation errors before submitting");return}const p={};a.fields.forEach(d=>{const P=r.value[d.name];d.type==="number"||d.type==="slider"||d.type==="range"?p[d.name]=Number(P):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"?p[d.name]=typeof P=="string"?P.trim():P:(d.type==="password"||d.type==="file"||d.type,p[d.name]=P)}),o("submit",{formData:p,originalData:a.initialData})}catch(u){console.error("Error during form submission:",u),se.error("An error occurred during submission")}},m=()=>{r.value=B(),s.value={},c.value={},i.value=!1,o("reset")},S=()=>{o("cancel")};return(u,p)=>(e.openBlock(),e.createElementBlock("div",av,[t.title?(e.openBlock(),e.createElementBlock("div",nv,[e.createElementVNode("h2",ov,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("p",lv,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("form",{class:"space-y-6",onSubmit:e.withModifiers(w,["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":P=>r.value[d.name]=P,type:"hidden"},null,8,rv)),[[e.vModelText,r.value[d.name]]]):(e.openBlock(),e.createBlock(Vt,{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:P,hasError:W,ariaDescribedBy:X})=>[["text","number","password","color","email","tel","url","search"].includes(d.type)?(e.openBlock(),e.createBlock(le,{key:0,id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,type:d.type,placeholder:d.placeholder,disabled:l.value||d.disabled,readonly:d.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"])):d.type==="textarea"?(e.openBlock(),e.createBlock(Bt,{key:1,id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,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",W?"border-red-500":"border-slate-300"]),"aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","placeholder","disabled","rows","class","aria-describedby"])):d.type==="select"?(e.openBlock(),e.createBlock(he,{key:2,id:P,"model-value":r.value[d.name],options:d.options,placeholder:d.placeholder||"Select an option",disabled:l.value||d.disabled,"has-error":W,"aria-describedby":X,"onUpdate:modelValue":R=>x(d,R)},null,8,["id","model-value","options","placeholder","disabled","has-error","aria-describedby","onUpdate:modelValue"])):d.type==="multiselect"?(e.openBlock(),e.createBlock(ol,{key:3,id:P,"model-value":r.value[d.name],options:d.options,disabled:l.value||d.disabled,placeholder:d.placeholder||"Select options","has-error":W,"aria-describedby":X,"onUpdate:modelValue":R=>r.value[d.name]=R},null,8,["id","model-value","options","disabled","placeholder","has-error","aria-describedby","onUpdate:modelValue"])):d.type==="checkbox"?(e.openBlock(),e.createElementBlock("div",sv,[e.createVNode(le,{id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,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":X},null,8,["id","modelValue","onUpdate:modelValue","disabled","aria-describedby"]),e.createVNode(Be,{for:P,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",iv,[e.createElementVNode("button",{id:P,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:R=>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,cv),e.createVNode(Be,{for:P,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",dv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.options,R=>(e.openBlock(),e.createElementBlock("div",{key:R.value,class:"flex items-center"},[e.createVNode(le,{id:`${P}-${R.value}`,modelValue:r.value[d.name],"onUpdate:modelValue":ae=>r.value[d.name]=ae,type:"radio",value:R.value,disabled:l.value||d.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:`${P}-${R.value}`,class:"ml-2 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(R.label),1)]),_:2},1032,["for"])]))),128))])):d.type==="file"?(e.openBlock(),e.createElementBlock("div",uv,[e.createVNode(le,{id:P,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",W?"border-red-500":"border-slate-300"]),"aria-describedby":X,onChange:R=>v(d,R)},null,8,["id","accept","disabled","class","aria-describedby","onChange"]),d.helpText?(e.openBlock(),e.createElementBlock("p",mv,e.toDisplayString(d.helpText),1)):e.createCommentVNode("",!0)])):d.type==="multifile"?(e.openBlock(),e.createElementBlock("div",fv,[e.createElementVNode("div",{class:e.normalizeClass(["border-2 border-dashed rounded-xl cursor-pointer transition-all duration-200",g.value[d.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||d.disabled?"opacity-50 cursor-not-allowed":""]),onDrop:R=>y(d,R),onDragover:b,onDragenter:R=>z(d,R),onDragleave:R=>V(d,R),onClick:R=>C(d.name)},[e.createElementVNode("input",{ref_for:!0,ref:R=>D(d.name,R),type:"file",multiple:d.multiple!==!1,accept:d.accept,class:"hidden",disabled:l.value||d.disabled,onChange:R=>E(d,R)},null,40,gv),e.createElementVNode("div",vv,[p[1]||(p[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",hv,[p[0]||(p[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",yv,[e.createTextVNode(e.toDisplayString(d.maxSize?`Up to ${T(d.maxSize)}`:"No size limit")+" ",1),d.accept?(e.openBlock(),e.createElementBlock("span",bv,"• "+e.toDisplayString(d.accept),1)):e.createCommentVNode("",!0),d.maxFiles?(e.openBlock(),e.createElementBlock("span",xv,"• Max "+e.toDisplayString(d.maxFiles)+" files",1)):e.createCommentVNode("",!0)])])])],42,pv),d.helpText?(e.openBlock(),e.createElementBlock("p",kv,e.toDisplayString(d.helpText),1)):e.createCommentVNode("",!0),c.value[d.name]?.length>0?(e.openBlock(),e.createElementBlock("div",wv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value[d.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",Cv,[e.createElementVNode("div",Bv,[(e.openBlock(),e.createElementBlock("svg",Vv,[p[2]||(p[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,Ev)])),e.createElementVNode("span",Nv,e.toDisplayString(Math.round(R.progress))+"% ",1)]),e.createElementVNode("div",Sv,[e.createElementVNode("span",$v,e.toDisplayString(R.file.name),1),p[3]||(p[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=>U(d,R.id),["stop"])},[...p[4]||(p[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,zv)]))),128))])):e.createCommentVNode("",!0),r.value[d.name]?.length>0?(e.openBlock(),e.createElementBlock("div",Dv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value[d.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",Tv,[e.createElementVNode("div",{class:e.normalizeClass(["rounded-lg p-2 shrink-0",f(R)])},[(e.openBlock(),e.createElementBlock("svg",Fv,[_(R)==="image"?(e.openBlock(),e.createElementBlock("path",Av)):(e.openBlock(),e.createElementBlock("path",Mv))]))],2),e.createElementVNode("div",Lv,[e.createElementVNode("span",_v,e.toDisplayString(R.name),1),e.createElementVNode("span",jv,e.toDisplayString(T(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||d.disabled,onClick:e.withModifiers(ne=>Y(d,ae),["stop"])},[...p[5]||(p[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,Pv)]))),128))])):e.createCommentVNode("",!0),r.value[d.name]?.length>0?(e.openBlock(),e.createElementBlock("p",Ov,[e.createTextVNode(e.toDisplayString(r.value[d.name].length)+" file(s) uploaded ",1),d.maxFiles?(e.openBlock(),e.createElementBlock("span",Iv," of "+e.toDisplayString(d.maxFiles)+" max",1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])):d.type==="slider"?(e.openBlock(),e.createBlock(Nt,{key:9,"model-value":r.value[d.name],min:d.min,max:d.max,step:d.step,disabled:l.value||d.disabled,"onUpdate:modelValue":R=>h(d,R)},null,8,["model-value","min","max","step","disabled","onUpdate:modelValue"])):d.type==="range"?(e.openBlock(),e.createElementBlock("div",Rv,[e.createElementVNode("div",Uv,[e.createVNode(le,{id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,type:"range",min:d.min,max:d.max,step:d.step||1,disabled:l.value||d.disabled,class:"flex-1","aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","min","max","step","disabled","aria-describedby"]),e.createElementVNode("span",qv,e.toDisplayString(r.value[d.name]),1)])])):d.type==="date"?(e.openBlock(),e.createBlock(ot,{key:11,id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,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":X},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(le,{key:12,id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,type:"time",disabled:l.value||d.disabled,class:e.normalizeClass(W?"border-red-500":"border-slate-300"),"aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):d.type==="datetime-local"?(e.openBlock(),e.createBlock(le,{key:13,id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,type:"datetime-local",disabled:l.value||d.disabled,class:e.normalizeClass(W?"border-red-500":"border-slate-300"),"aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):d.type==="month"?(e.openBlock(),e.createBlock(le,{key:14,id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,type:"month",disabled:l.value||d.disabled,class:e.normalizeClass(W?"border-red-500":"border-slate-300"),"aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):d.type==="week"?(e.openBlock(),e.createBlock(le,{key:15,id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,type:"week",disabled:l.value||d.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",Yv,[t.showReset?(e.openBlock(),e.createBlock(oe,{key:0,type:"button",variant:"outline",disabled:l.value,onClick:m},{default:e.withCtx(()=>[...p[6]||(p[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:S},{default:e.withCtx(()=>[...p[7]||(p[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)]))}},Hv={key:0,class:"flex items-center justify-between p-4 border-b border-gray-200 shrink-0 lg:hidden"},Wv={class:"text-lg font-bold text-gray-900"},Gv={class:"flex-1 overflow-y-auto overflow-x-hidden p-4"},Kv={class:"space-y-2"},Xv={key:0},Jv={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"},Qv=["onClick"],Zv={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"},eh={key:1,class:"absolute top-1.5 right-1.5 w-2 h-2 bg-blue-500 rounded-full"},th={key:1,class:"border-t border-gray-200 p-4 shrink-0"},ah={key:0,class:"absolute top-1.5 right-1.5 w-2 h-2 bg-blue-500 rounded-full"},nh={class:"sticky top-0 bg-white border-b border-gray-200 z-10"},oh={class:"flex items-center justify-between p-4"},lh={class:"flex-1 text-sm font-bold text-gray-900 ml-2"},rh={key:0,class:"px-4 pb-3"},sh={class:"relative"},ih=["placeholder"],ch={class:"absolute left-3 top-1/2 transform -translate-y-1/2 text-gray-400"},dh={key:0,class:"mt-2 text-xs text-gray-500 px-1"},uh={class:"p-3"},mh={key:0,class:"px-3 py-8 text-center"},fh={key:1,class:"space-y-1"},ph={key:0,class:"absolute left-0 top-1/2 transform -translate-y-1/2 w-1 h-8 bg-linear-to-b from-blue-500 to-blue-600 rounded-r-full"},gh={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"},vh={class:"p-3"},hh={class:"space-y-1"},yh={key:0,class:"px-3 py-2 text-xs font-semibold text-gray-500 uppercase tracking-wider"},bh={key:0,class:"absolute left-0 top-1/2 transform -translate-y-1/2 w-1 h-8 bg-linear-to-b from-blue-500 to-blue-600 rounded-r-full"},sl={__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),g=e.ref(""),k=e.computed(()=>o.mobileOpen),C=e.computed(()=>r.value?{}:{left:`${o.sidebarWidth}px`}),D=e.computed(()=>r.value?{}:{left:`${o.sidebarWidth}px`}),B=e.computed(()=>{if(!o.showSearch||!i.value)return!1;const S=i.value.name?.toLowerCase()||"";return o.searchableMenus.some(u=>S.includes(u.toLowerCase()))}),N=e.computed(()=>{if(!i.value?.subItems)return[];if(!g.value.trim())return i.value.subItems;const S=g.value.toLowerCase().trim();return i.value.subItems.filter(u=>{const p=u.label?.toLowerCase()||"",d=u.name?.toLowerCase()||"";return p.includes(S)||d.includes(S)})}),x=e.computed(()=>{if(r.value)return 0;let S=o.sidebarWidth;return s.value&&(S+=220),c.value&&(S+=220),S}),h=S=>{l("navigate",S),r.value&&v();const u=s.value&&i.value&&i.value.subItems.some(d=>d.route===S.route),p=c.value&&o.managementSettings.some(d=>d.route===S.route);(r.value||!(u||p))&&M()},v=()=>{l("update:mobileOpen",!1)},y=S=>S.subItems&&S.subItems.length>0,b=S=>{c.value&&E(),s.value&&i.value!==S?(V(),setTimeout(()=>{i.value=S,s.value=!0,g.value=""},300)):s.value?i.value===S&&V():(i.value=S,s.value=!0,g.value=""),r.value&&v()},z=()=>{s.value&&V(),c.value?E():c.value=!0,r.value&&v()},V=()=>{s.value=!1,g.value="",setTimeout(()=>{i.value=null},300)},E=()=>{c.value=!1},M=()=>{V(),E()},Y=S=>{h(S)},U=S=>{h(S)},T=S=>{g.value=S,l("search",{query:S,menu:i.value?.name})},_=()=>{g.value=""},f=S=>{const u=o.currentPath;return S.route?!!(u===S.route||u.startsWith(S.route+"/")):S.subItems&&S.subItems.length>0?S.subItems.some(p=>p.route?u===p.route||u.startsWith(p.route+"/"):!1):!1},w=()=>{const S=r.value;r.value=window.innerWidth<1024,S&&!r.value&&k.value&&v()},m=S=>{S.key==="Escape"&&(s.value||c.value?M():r.value&&k.value&&v())};return e.onMounted(()=>{w(),window.addEventListener("resize",w),document.addEventListener("keydown",m)}),e.onUnmounted(()=>{window.removeEventListener("resize",w),document.removeEventListener("keydown",m)}),n({isMobile:r,isMobileOpen:k,submenuOpen:s,managementSettingsOpen:c,contentMarginLeft:x,closeAllMenus:M}),(S,u)=>{const p=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(()=>[k.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($)("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($)("transform h-screen",k.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",Hv,[e.createElementVNode("h2",Wv,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},[...u[2]||(u[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",Gv,[e.createElementVNode("div",Kv,[(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",Xv,[y(d)?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref($)("flex flex-col items-center justify-center rounded-xl transition-all duration-200 cursor-pointer group relative py-4 px-3",f(d)?"bg-linear-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:P=>b(d)},[e.createElementVNode("div",{class:e.normalizeClass(e.unref($)("flex items-center justify-center rounded-lg transition-colors mb-2","w-12 h-12",f(d)?"bg-linear-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(L,{icon:d.icon,class:"w-6 h-6"},null,8,["icon"])],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref($)("text-xs font-medium text-center",f(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",Zv,e.toDisplayString(d.badge),1)):e.createCommentVNode("",!0),f(d)&&y(d)?(e.openBlock(),e.createElementBlock("div",eh)):e.createCommentVNode("",!0)],10,Qv)):(e.openBlock(),e.createBlock(p,{key:0,to:d.route,class:e.normalizeClass(e.unref($)("flex flex-col items-center justify-center rounded-xl transition-all duration-200 group relative py-4 px-3",f(d)?"bg-linear-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:P=>h(d)},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(e.unref($)("flex items-center justify-center rounded-lg transition-colors mb-2","w-12 h-12",f(d)?"bg-linear-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(L,{icon:d.icon,class:"w-6 h-6"},null,8,["icon"])],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref($)("text-xs font-medium text-center",f(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",Jv,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",th,[e.createElementVNode("div",{class:e.normalizeClass(e.unref($)("flex flex-col items-center justify-center rounded-xl transition-all duration-200 cursor-pointer group relative py-4 px-3",t.isManagementSettingsActive?"bg-linear-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($)("flex items-center justify-center rounded-lg transition-colors mb-2","w-12 h-12",t.isManagementSettingsActive?"bg-linear-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(L,{icon:"cog",class:"w-6 h-6"})],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref($)("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",ah)):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($)("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",nh,[e.createElementVNode("div",oh,[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},[...u[3]||(u[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",lh,e.toDisplayString(i.value?.label),1)]),B.value?(e.openBlock(),e.createElementBlock("div",rh,[e.createElementVNode("div",sh,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":u[0]||(u[0]=d=>g.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:u[1]||(u[1]=d=>T(g.value))},null,40,ih),[[e.vModelText,g.value]]),e.createElementVNode("div",ch,[e.createVNode(L,{icon:"search",class:"w-4 h-4"})]),g.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(L,{icon:"times",class:"w-4 h-4"})])):e.createCommentVNode("",!0)]),g.value?(e.openBlock(),e.createElementBlock("div",dh,e.toDisplayString(N.value.length)+" result"+e.toDisplayString(N.value.length!==1?"s":"")+" found ",1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),e.createElementVNode("nav",uh,[B.value&&g.value&&N.value.length===0?(e.openBlock(),e.createElementBlock("div",mh,[e.createVNode(L,{icon:"search",class:"w-12 h-12 mx-auto text-gray-300 mb-3"}),u[4]||(u[4]=e.createElementVNode("p",{class:"text-sm text-gray-500 mb-1"}," No results found ",-1)),u[5]||(u[5]=e.createElementVNode("p",{class:"text-xs text-gray-400"}," Try a different search term ",-1))])):(e.openBlock(),e.createElementBlock("div",fh,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.value,d=>(e.openBlock(),e.createBlock(p,{key:d.name,to:d.route,class:e.normalizeClass(e.unref($)("flex items-center px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",f(d)?"bg-linear-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:P=>Y(d)},{default:e.withCtx(()=>[f(d)?(e.openBlock(),e.createElementBlock("div",ph)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref($)("flex items-center justify-center w-8 h-8 rounded-lg mr-3 shrink-0 transition-colors ml-2",f(d)?"bg-linear-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(L,{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($)("flex-1 truncate font-semibold",f(d)?"text-blue-700":"text-gray-700"))},e.toDisplayString(d.label),3),d.badge?(e.openBlock(),e.createElementBlock("span",gh,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($)("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({...D.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:E},[...u[6]||(u[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)])]),u[7]||(u[7]=e.createElementVNode("h3",{class:"flex-1 text-sm font-bold text-gray-900 ml-2"}," Management Settings ",-1))])]),e.createElementVNode("nav",vh,[e.createElementVNode("div",hh,[(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",yh,e.toDisplayString(d.label),1)):d.route?(e.openBlock(),e.createBlock(p,{key:1,to:d.route,class:e.normalizeClass(e.unref($)("flex items-center px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",f(d)?"bg-linear-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:P=>U(d)},{default:e.withCtx(()=>[f(d)?(e.openBlock(),e.createElementBlock("div",bh)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref($)("flex items-center justify-center w-8 h-8 rounded-lg mr-3 shrink-0 transition-colors",f(d)?"bg-linear-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(L,{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($)("flex-1 truncate font-semibold",f(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:M})):e.createCommentVNode("",!0)]),_:1})])}}},il={__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))}},xh={key:0,class:"absolute left-3 top-0 w-0.5 h-full bg-slate-200"},kh={class:"z-10 flex items-center justify-center w-6 h-6 rounded-full border-2 border-blue-500 bg-white text-blue-500"},wh={class:"text-slate-900 font-medium"},Ch={key:0,class:"text-slate-500 text-sm"},Bh={class:"mt-2 text-slate-600 text-sm"},cl={__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",xh)):e.createCommentVNode("",!0),e.createElementVNode("div",kh,[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",wh,[e.renderSlot(n.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])]),t.subtitle?(e.openBlock(),e.createElementBlock("p",Ch,[e.renderSlot(n.$slots,"subtitle",{},()=>[e.createTextVNode(e.toDisplayString(t.subtitle),1)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Bh,[e.renderSlot(n.$slots,"default")])],2)],2))}},Vh={name:"AuthLayout",props:{title:{type:String,default:null},subtitle:{type:String,default:null},logoUrl:{type:String,default:"/logo.png"},quote:{type:String,default:""},primaryColor:{type:String,default:"#e74c3c"},backgroundColor:{type:String,default:"#2c2c2c"},backgroundImage:{type:String,default:"https://lh3.googleusercontent.com/gps-cs-s/AG0ilSxeN2zWMjNsmwOrn8a8dDwnu2e5jjzYNembgPZFUXus_sLxUfpCJSKS-8Z7fj3ta1Q_xXDZ-skeFTUoGR75RTIlxQCIYrmjLOqfBNsk8Cjd_qrJaa72l1D2-aEoDwJJKKeTpUmeEg=s1360-w1360-h1020-rw"},backgroundOpacity:{type:Number,default:.4},appName:{type:String,default:"eHorizon eBoard X"},appVersion:{type:String,default:"Version 2.0"},copyright:{type:String,default:"Copyright © 2025 Software Technologies Limited"},showFooter:{type:Boolean,default:!0},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())}}},Eh={class:"container mx-auto px-4 py-10 lg:py-0 relative z-10 w-full"},Nh={class:"grid lg:grid-cols-10 gap-6 lg:gap-8 items-center min-h-screen"},Sh={class:"hidden lg:block lg:col-span-6 text-white text-center lg:text-left space-y-6"},$h={class:"mb-6 flex justify-center lg:justify-start"},zh=["src"],Dh={key:0,class:"max-w-md mx-auto lg:mx-0"},Th={class:"text-sm lg:text-base font-light text-white/70 italic leading-relaxed"},Fh={class:"lg:col-span-4 w-full"},Ah={class:"lg:hidden mb-6 flex justify-center"},Mh=["src"],Lh={class:"bg-white rounded-lg shadow-xl p-4 sm:p-6 lg:p-8 max-w-md mx-auto w-full"},_h={key:0,class:"mb-4 sm:mb-6"},jh={class:"text-center"},Ph={class:"text-xl sm:text-2xl font-bold text-gray-900"},Oh={key:0,class:"text-sm sm:text-base text-gray-600 mt-2"},Ih={class:"space-y-4 sm:space-y-6"},Rh={key:1,class:"mt-4 sm:mt-6"},Uh={key:0,class:"mt-4 sm:mt-6 text-center"},qh={key:0,class:"absolute bottom-2 right-2 sm:bottom-4 sm:right-4 text-right"},Yh=["src"],Hh={class:"text-white/90 text-[10px] sm:text-xs bg-black/30 sm:bg-transparent px-2 py-1 sm:p-0 rounded"},Wh={class:"font-medium"},Gh={class:"hidden sm:block"},Kh={class:"hidden sm:block"},Xh={class:"absolute bottom-2 left-2 sm:bottom-4 sm:left-4 flex gap-1.5 sm:gap-2"},Jh=["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 overflow-x-hidden",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",Eh,[e.createElementVNode("div",Nh,[e.createElementVNode("div",Sh,[e.createElementVNode("div",$h,[e.createElementVNode("img",{src:a.logoUrl,alt:"Company Logo",class:"h-52 lg:h-72 w-auto object-contain"},null,8,zh)]),a.quote?(e.openBlock(),e.createElementBlock("div",Dh,[e.createElementVNode("p",Th,' "'+e.toDisplayString(a.quote)+'" ',1)])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Fh,[e.createElementVNode("div",Ah,[e.createElementVNode("img",{src:a.logoUrl,alt:"Company Logo",class:"h-24 w-auto object-contain"},null,8,Mh)]),e.createElementVNode("div",Lh,[t.$slots["card-header"]||a.title?(e.openBlock(),e.createElementBlock("div",_h,[e.renderSlot(t.$slots,"card-header",{},()=>[e.createElementVNode("div",jh,[e.createElementVNode("h1",Ph,e.toDisplayString(a.title),1),a.subtitle?(e.openBlock(),e.createElementBlock("p",Oh,e.toDisplayString(a.subtitle),1)):e.createCommentVNode("",!0)])])])):e.createCommentVNode("",!0),e.createElementVNode("div",Ih,[e.createVNode(s)]),t.$slots["card-footer"]?(e.openBlock(),e.createElementBlock("div",Rh,[e.renderSlot(t.$slots,"card-footer")])):e.createCommentVNode("",!0)]),t.$slots.links?(e.openBlock(),e.createElementBlock("div",Uh,[e.renderSlot(t.$slots,"links")])):e.createCommentVNode("",!0)])])]),a.showFooter?(e.openBlock(),e.createElementBlock("div",qh,[e.createElementVNode("img",{src:a.logoUrl,alt:"Company Logo",class:"hidden sm:block h-20 sm:h-32 lg:h-40 w-auto object-contain ml-auto mb-2"},null,8,Yh),e.createElementVNode("div",Hh,[e.createElementVNode("div",Wh,e.toDisplayString(a.appName),1),e.createElementVNode("div",Gh," ("+e.toDisplayString(a.appVersion)+") ",1),e.createElementVNode("div",Kh,e.toDisplayString(a.copyright),1)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Xh,[(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-7 h-7 sm:w-8 sm:h-8 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,Jh))),128))])],4)}const dl=Ue(Vh,[["render",Qh]]),Zh={class:"min-h-screen bg-gray-50"},ey={class:"flex-1"},ty={key:0,class:"bg-white border-b border-gray-200"},ay={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-4"},ny={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8"},ul={__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"),g=e.resolveComponent("Footer");return e.openBlock(),e.createElementBlock("div",Zh,[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",ey,[t.showBreadcrumb?(e.openBlock(),e.createElementBlock("div",ty,[e.createElementVNode("div",ay,[e.renderSlot(n.$slots,"breadcrumb",{},()=>[e.createVNode(i,{items:t.breadcrumbItems},null,8,["items"])])])])):e.createCommentVNode("",!0),e.createElementVNode("div",ny,[e.renderSlot(n.$slots,"default")])]),e.createVNode(g,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})])}}},oy={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),g=()=>{s.value=navigator.onLine};e.onMounted(()=>{window.addEventListener("online",g),window.addEventListener("offline",g)}),e.onUnmounted(()=>{window.removeEventListener("online",g),window.removeEventListener("offline",g)});const k=e.computed(()=>{const p={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 p[t.errorType]||p[404]}),C=e.computed(()=>k.value),D=e.computed(()=>t.errorTitle||C.value.title),B=e.computed(()=>t.errorMessage||C.value.message),N=e.computed(()=>C.value.homeButtonIcon||"🏠"),x=e.computed(()=>t.showAdditionalInfo?C.value.additionalInfo:null),h=()=>{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():h(),n("back")},y=async()=>{l.value=!0;try{await new Promise(p=>setTimeout(p,1e3)),window.location.reload()}catch(p){console.error("Retry failed:",p)}finally{l.value=!1}n("retry")},b=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"]),E=e.computed(()=>["mb-8"]),M=e.computed(()=>["space-y-8"]),Y=e.computed(()=>["flex justify-center mb-6"]),U=e.computed(()=>["w-32 h-32 flex items-center justify-center"]),T=e.computed(()=>["space-y-4"]),_=e.computed(()=>["text-6xl font-bold text-slate-300 mb-4"]),f=e.computed(()=>["text-3xl font-bold text-slate-900"]),w=e.computed(()=>["text-lg text-slate-600 max-w-lg mx-auto"]),m=e.computed(()=>["mt-8"]),S=e.computed(()=>["mt-8"]),u=e.computed(()=>["mt-6"]);return{isRetrying:l,reportSent:r,isOnline:s,errorId:i,isDev:c,errorConfig:C,title:D,message:B,homeButtonIcon:N,additionalInfoConfig:x,goHome:h,goBack:v,retry:y,layoutClasses:b,backgroundClasses:z,contentClasses:V,headerClasses:E,errorContentClasses:M,illustrationClasses:Y,iconContainerClasses:U,detailsClasses:T,codeClasses:_,titleClasses:f,messageClasses:w,actionsClasses:m,additionalInfoClasses:S,helpClasses:u}}},ly={class:"flex justify-center"},ry={class:"flex items-center gap-3"},sy={class:"text-2xl font-bold text-slate-900"},iy={key:1,class:"bg-red-100 border border-red-200 rounded-lg p-4 mx-auto max-w-md mb-6"},cy={class:"flex flex-col sm:flex-row gap-4 justify-center"},dy=["disabled"],uy={key:0,class:"animate-spin"},my={key:1},fy=["disabled"],py={key:0},gy={key:1},vy={key:0,class:"mt-8 max-w-md mx-auto"},hy={class:"bg-white rounded-lg border border-slate-200 shadow-sm p-6"},yy={class:"text-lg font-semibold text-slate-900 mb-4"},by={class:"space-y-3"},xy={class:"text-sm text-slate-600"},ky=["href"],wy={key:5,class:"text-xs text-slate-400 font-mono mt-4"};function Cy(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-linear-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",ly,[e.renderSlot(t.$slots,"logo",{},()=>[e.createElementVNode("div",ry,[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",sy,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",iy,[...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",cy,[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",uy,"↻")):(e.openBlock(),e.createElementBlock("span",my,"🔄")),e.createTextVNode(" "+e.toDisplayString(o.isRetrying?"Retrying...":a.retryButtonText),1)],8,dy)):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",py,"✓")):(e.openBlock(),e.createElementBlock("span",gy,"📝")),e.createTextVNode(" "+e.toDisplayString(o.reportSent?"Report Sent":"Contact Support"),1)],8,fy)):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",vy,[e.createElementVNode("div",hy,[e.createElementVNode("h3",yy,e.toDisplayString(o.additionalInfoConfig.title),1),e.createElementVNode("ul",by,[(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"} 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",xy,[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,ky)):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0),o.isDev?(e.openBlock(),e.createElementBlock("div",wy," Error ID: "+e.toDisplayString(o.errorId),1)):e.createCommentVNode("",!0)],2)],2)],2)}const ml=Ue(oy,[["render",Cy]]),By={class:"w-full h-full relative"},Vy={key:0,class:"w-full h-full flex items-center justify-center"},Ey=["width","height","viewBox"],Ny=["d","fill","stroke","stroke-width","onMouseenter","onClick"],Sy=["cx","cy","r","fill"],$y={key:1},zy=["x","y"],Dy=["x","y"],Ty={key:2},Fy=["x","y"],Ay={key:3},My=["transform"],Ly=["fill"],_y={class:"bg-slate-900 text-white px-4 py-3 rounded-lg shadow-2xl border border-slate-700 min-w-[180px]"},jy={class:"flex items-center gap-2 mb-1.5"},Py={class:"font-semibold text-sm"},Oy={class:"flex items-baseline gap-2 ml-5"},Iy={class:"text-2xl font-bold"},Ry={class:"mt-1 ml-5"},Uy={class:"text-xs text-slate-300"},an={__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 b=a.showLegend&&a.legendPosition==="bottom"?Math.ceil(a.data.length/2)*25:0;return(a.height-b)/2}),g=e.computed(()=>{const b=a.showLegend&&a.legendPosition==="bottom"?Math.ceil(a.data.length/2)*25:0,z=a.height-b,V=a.showLegend&&a.legendPosition==="right"?a.width*.6:a.width;return Math.min(V,z)/2-40}),k=e.computed(()=>a.doughnut?g.value*a.innerRadiusRatio:0),C=e.computed(()=>{if(!s.value)return[];const b=r.value;let z=-Math.PI/2;return a.data.map((V,E)=>{const M=V||0,Y=(M/b*100).toFixed(1),U=M/b*2*Math.PI,T=z+U,_=D(i.value,c.value,g.value,k.value,z,T),f=a.doughnut?(g.value+k.value)/2:g.value*.7,w=z+U/2,m=i.value+Math.cos(w)*f,S=c.value+Math.sin(w)*f,u={value:M,percentage:Y,path:_,labelX:m,labelY:S,label:a.labels[E]||`Item ${E+1}`,startAngle:z,endAngle:T};return z=T,u}).filter(V=>V.value>0)}),D=(b,z,V,E,M,Y)=>{const U=b+V*Math.cos(M),T=z+V*Math.sin(M),_=b+V*Math.cos(Y),f=z+V*Math.sin(Y),w=Y-M>Math.PI?1:0;if(E===0)return`M ${b} ${z} L ${U} ${T} A ${V} ${V} 0 ${w} 1 ${_} ${f} Z`;{const m=b+E*Math.cos(Y),S=z+E*Math.sin(Y),u=b+E*Math.cos(M),p=z+E*Math.sin(M);return`M ${U} ${T} A ${V} ${V} 0 ${w} 1 ${_} ${f} L ${m} ${S} A ${E} ${E} 0 ${w} 0 ${u} ${p} Z`}},B=b=>a.colors[b%a.colors.length],N=b=>{if(a.legendPosition==="right")return a.width*.65;const V=b%2;return a.width/4+V*(a.width/2)},x=b=>{if(a.legendPosition==="right")return 40+b*25;const V=Math.floor(b/2),E=Math.ceil(a.data.length/2)*25;return a.height-E+20+V*25},h=(b,z,V)=>{l.value={visible:!0,x:b.clientX,y:b.clientY,label:z.label,value:z.value,percentage:z.percentage,color:B(V)},o("slice-hover",{value:z.value,index:V,label:z.label,percentage:z.percentage})},v=()=>{l.value.visible=!1},y=(b,z)=>{o("slice-click",{value:b.value,index:z,label:b.label,percentage:b.percentage})};return(b,z)=>(e.openBlock(),e.createElementBlock("div",By,[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,E)=>(e.openBlock(),e.createElementBlock("path",{key:`slice-${E}`,d:V.path,fill:B(E),stroke:t.strokeColor,"stroke-width":t.strokeWidth,class:e.normalizeClass(t.sliceClasses),onMouseenter:M=>h(M,V,E),onMouseleave:v,onClick:M=>y(V,E)},null,42,Ny))),128))]),t.doughnut?(e.openBlock(),e.createElementBlock("circle",{key:0,cx:i.value,cy:c.value,r:k.value,fill:t.centerFill},null,8,Sy)):e.createCommentVNode("",!0),t.doughnut&&t.showCenterText?(e.openBlock(),e.createElementBlock("g",$y,[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,zy),e.createElementVNode("text",{x:i.value,y:c.value+15,class:e.normalizeClass(t.centerLabelClasses),"text-anchor":"middle","dominant-baseline":"middle"}," Total ",10,Dy)])):e.createCommentVNode("",!0),t.showValues?(e.openBlock(),e.createElementBlock("g",Ty,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(V,E)=>(e.openBlock(),e.createElementBlock("text",{key:`value-${E}`,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,Fy))),128))])):e.createCommentVNode("",!0),t.showLegend?(e.openBlock(),e.createElementBlock("g",Ay,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(V,E)=>(e.openBlock(),e.createElementBlock("g",{key:`legend-${E}`,transform:`translate(${N(E)}, ${x(E)})`},[e.createElementVNode("rect",{width:12,height:12,fill:B(E),rx:"2"},null,8,Ly),e.createElementVNode("text",{x:18,y:10,class:e.normalizeClass(t.legendTextClasses)},e.toDisplayString(V.label),3)],8,My))),128))])):e.createCommentVNode("",!0)],8,Ey)):(e.openBlock(),e.createElementBlock("div",Vy,[...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",_y,[e.createElementVNode("div",jy,[e.createElementVNode("div",{style:e.normalizeStyle({backgroundColor:l.value.color}),class:"w-3 h-3 rounded-full shadow-sm"},null,4),e.createElementVNode("p",Py,e.toDisplayString(l.value.label),1)]),e.createElementVNode("div",Oy,[e.createElementVNode("span",Iy,e.toDisplayString(l.value.value),1),z[1]||(z[1]=e.createElementVNode("span",{class:"text-xs text-slate-400"},"tasks",-1))]),e.createElementVNode("div",Ry,[e.createElementVNode("span",Uy,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)]))}},qy={key:0,class:"flex items-center justify-between px-6 py-4 border-b border-slate-200 bg-linear-to-r from-slate-50 to-slate-100 shrink-0"},Yy={class:"flex items-center gap-3"},Hy={class:"font-semibold text-lg text-slate-900"},Wy={class:"flex items-center gap-2"},Gy=["disabled"],Ky={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]"},Xy={class:"flex items-center justify-between mb-3"},Jy={class:"space-y-3"},Qy=["for"],Zy=["id","onClick"],eb={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]"},tb={class:"flex items-center justify-between mb-3"},ab={class:"space-y-2"},nb={class:"text-slate-700"},ob={class:"px-2 py-1 bg-slate-100 border border-slate-300 rounded text-xs font-mono"},lb={class:"relative flex-1 overflow-hidden"},rb={key:0,class:"absolute inset-0 bg-white/90 backdrop-blur-sm z-10 flex items-center justify-center"},sb={class:"w-full h-full flex items-center justify-center"},ib={key:3,class:"border-t border-slate-200 px-6 py-3 bg-slate-50 shrink-0"},fl={__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(T=>{c.value[T.id]=T.default??!0})});const g=()=>{i.value=!i.value},k=(T,_)=>{c.value[T]=_,o("customize",{...c.value})},C=e.ref(null),D=e.ref(!1),B=T=>{if(!D.value)return;const _={r:()=>o("refresh"),R:()=>o("refresh"),c:()=>g(),C:()=>g(),Escape:()=>i.value=!1,h:()=>h.value=!h.value,H:()=>h.value=!h.value,"?":()=>h.value=!h.value};_[T.key]&&(T.preventDefault(),_[T.key](),o("keypress",T.key))},N=()=>{D.value=!0},x=()=>{D.value=!1},h=e.ref(!1),v=[{key:"R",description:"Refresh widget"},{key:"C",description:"Open customization"},{key:"Esc",description:"Close panels"},{key:"?",description:"Toggle help"}],y=e.ref(!1);let b=null;const z=T=>{if(!T.dataTransfer)return;y.value=!0,o("dragstart",a.id);const _=T.target.getBoundingClientRect();b=T.target.cloneNode(!0),Object.assign(b.style,{position:"fixed",width:`${_.width}px`,height:`${_.height}px`,pointerEvents:"none",opacity:"0.8",zIndex:"1000",left:`${T.clientX-_.width/2}px`,top:`${T.clientY-_.height/2}px`}),document.body.appendChild(b),T.dataTransfer.setDragImage(b,_.width/2,_.height/2),T.dataTransfer.effectAllowed="move",T.dataTransfer.setData("text/plain",a.id)},V=T=>{b&&T.clientX&&T.clientY&&(b.style.left=`${T.clientX-b.offsetWidth/2}px`,b.style.top=`${T.clientY-b.offsetHeight/2}px`)},E=()=>{y.value=!1,o("dragend",a.id),b&&(document.body.removeChild(b),b=null)},M=e.computed(()=>{if(!a.chartType||!a.chartData)return null;const T=a.chartData.datasets?.[0]?.data||a.chartData.data||[],_=a.chartData.labels||[],f=T.filter(p=>p!=null&&!isNaN(p));if(f.length===0)return null;const w=a.chartType==="pie"||a.chartType==="doughnut",m=w?450:400,S=w?450:400,u={data:f,labels:_.slice(0,f.length),width:m,height:S,...a.chartOptions};if(c.value.legend!==void 0&&(u.showLegend=c.value.legend),c.value.grid!==void 0&&(u.showGrid=c.value.grid),c.value.values!==void 0&&(u.showValues=c.value.values),c.value.percentages!==void 0&&(u.showPercentages=c.value.percentages),c.value.points!==void 0&&(u.showPoints=c.value.points),c.value.fillArea!==void 0&&(u.fillArea=c.value.fillArea),a.chartData.datasets?.[0]?.backgroundColor){const p=a.chartData.datasets[0].backgroundColor;u.colors=Array.isArray(p)?p:[p]}return a.chartData.datasets?.[0]?.borderColor&&(u.lineColor=a.chartData.datasets[0].borderColor),u}),Y=e.computed(()=>{switch(a.chartType){case"bar":return xa;case"line":return ka;case"pie":return an;case"doughnut":return an;default:return null}}),U=e.computed(()=>a.chartType==="doughnut");return e.onMounted(()=>{window.addEventListener("dragover",V),window.addEventListener("keydown",B)}),e.onUnmounted(()=>{window.removeEventListener("dragover",V),window.removeEventListener("keydown",B),b&&document.body.removeChild(b)}),(T,_)=>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($)("bg-white rounded-xl shadow-sm border border-slate-200 overflow-hidden transition-all select-none flex flex-col relative",y.value?"opacity-50 scale-95":"hover:shadow-lg cursor-move",D.value?"ring-2 ring-blue-400 ring-offset-2":"")),onDragstart:z,onDragend:E,onFocus:N,onBlur:x},[t.showHeader?(e.openBlock(),e.createElementBlock("div",qy,[e.createElementVNode("div",Yy,[t.icon?(e.openBlock(),e.createBlock(L,{key:0,icon:t.icon,class:"w-5 h-5 text-slate-700"},null,8,["icon"])):e.createCommentVNode("",!0),e.createElementVNode("h3",Hy,e.toDisplayString(t.title),1)]),e.createElementVNode("div",Wy,[e.renderSlot(T.$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]=f=>h.value=!h.value)},[e.createVNode(L,{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:g},[e.createVNode(L,{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]=f=>T.$emit("refresh"))},[e.createVNode(L,{icon:"refresh",class:e.normalizeClass(["w-4 h-4 text-slate-600 transition-transform duration-500",{"animate-spin":t.loading}])},null,8,["class"])],8,Gy)):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),i.value?(e.openBlock(),e.createElementBlock("div",Ky,[e.createElementVNode("div",Xy,[_[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]=f=>i.value=!1)},[e.createVNode(L,{icon:"x",class:"w-4 h-4 text-slate-600"})])]),e.createElementVNode("div",Jy,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.customizationOptions,f=>(e.openBlock(),e.createElementBlock("div",{key:f.id,class:"flex items-center justify-between"},[e.createElementVNode("label",{for:`setting-${f.id}`,class:"text-sm text-slate-700 cursor-pointer"},e.toDisplayString(f.label),9,Qy),e.createElementVNode("button",{id:`setting-${f.id}`,class:e.normalizeClass(["relative inline-flex h-6 w-11 items-center rounded-full transition-colors",c.value[f.id]?"bg-blue-600":"bg-slate-300"]),onClick:w=>k(f.id,!c.value[f.id])},[e.createElementVNode("span",{class:e.normalizeClass(["inline-block h-4 w-4 transform rounded-full bg-white transition-transform",c.value[f.id]?"translate-x-6":"translate-x-1"])},null,2)],10,Zy)]))),128))])])):e.createCommentVNode("",!0),h.value?(e.openBlock(),e.createElementBlock("div",eb,[e.createElementVNode("div",tb,[_[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]=f=>h.value=!1)},[e.createVNode(L,{icon:"x",class:"w-4 h-4 text-slate-600"})])]),e.createElementVNode("div",ab,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(v,f=>e.createElementVNode("div",{key:f.key,class:"flex items-center justify-between text-sm"},[e.createElementVNode("span",nb,e.toDisplayString(f.description),1),e.createElementVNode("kbd",ob,e.toDisplayString(f.key),1)])),64))])])):e.createCommentVNode("",!0),e.createElementVNode("div",lb,[t.loading?(e.openBlock(),e.createElementBlock("div",rb,[e.createVNode(Oe,{type:"spin",size:"medium",color:"#3b82f6"})])):e.createCommentVNode("",!0),t.chartType&&t.chartData&&Y.value&&M.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",sb,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(Y.value),e.mergeProps(M.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(T.$slots,"default")],2))]),T.$slots.footer?(e.openBlock(),e.createElementBlock("div",ib,[e.renderSlot(T.$slots,"footer")])):e.createCommentVNode("",!0)],38)):e.createCommentVNode("",!0)}},cb={class:"min-h-screen bg-linear-to-br from-slate-50 via-blue-50 to-indigo-50 p-6"},db={class:"mx-auto"},ub={class:"bg-white/70 backdrop-blur-xl rounded-2xl shadow-xl p-8 mb-8"},mb={class:"flex items-center gap-4 mb-3"},fb={class:"w-12 h-12 bg-linear-to-br from-blue-500 to-indigo-600 rounded-xl flex items-center justify-center shadow-lg"},pb={class:"grid grid-cols-1 lg:grid-cols-2 gap-6"},gb=["onClick"],vb={class:"flex items-center justify-between"},hb={class:"flex items-center gap-4"},yb={class:"w-10 h-10 bg-linear-to-br from-blue-500 to-indigo-600 rounded-xl flex items-center justify-center shadow-md"},bb={class:"text-white font-bold text-sm"},xb={class:"text-lg font-bold text-slate-800"},kb={class:"inline-flex items-center gap-1.5 px-3 py-1 bg-linear-to-r from-blue-100 to-indigo-100 text-blue-700 text-xs font-semibold rounded-full mt-1"},wb={class:"flex items-center gap-3"},Cb=["onClick"],Bb={key:0,class:"p-6 bg-linear-to-br from-slate-50/50 to-blue-50/30"},Vb={key:0,class:"text-center py-12"},Eb={class:"w-16 h-16 bg-linear-to-br from-slate-200 to-slate-300 rounded-2xl flex items-center justify-center mx-auto mb-4"},Nb={key:1,class:"space-y-4"},Sb={class:"flex items-start gap-4"},$b={class:"flex-1 space-y-4"},zb={class:"relative"},Db=["value","onInput"],Tb={class:"flex gap-2"},Fb=["onClick"],Ab=["onClick"],Mb={class:"flex items-center gap-2"},Lb={class:"text-sm font-semibold text-slate-700"},_b={key:0,class:"mt-3 flex flex-wrap gap-2"},jb=["onClick"],Pb={key:0,class:"fixed inset-0 bg-black/50 backdrop-blur-sm flex items-center justify-center p-4 z-50"},Ob={key:0,class:"bg-white rounded-2xl shadow-2xl max-w-md w-full overflow-hidden"},Ib={class:"bg-linear-to-r from-blue-500 to-indigo-600 p-6 text-white"},Rb={class:"flex items-center justify-between"},Ub={class:"p-6 max-h-96 overflow-y-auto"},qb={class:"space-y-2"},Yb={class:"relative"},Hb=["checked","onChange"],Wb={class:"p-6 bg-slate-50 border-t border-slate-200 flex gap-3"},Gb={__name:"ReminderConfig",props:{models:{type:Array,default:()=>[]},availableRecipients:{type:Array,default:()=>["User 1","User 2","User 3","HOD","GM","CEO","All Users"]},sendTypeOptions:{type:Array,default:()=>[{value:"Email",label:"Email"},{value:"SMS",label:"SMS"}]}},emits:["update:models"],setup(t,{emit:n}){const a=t,o=n,l=e.ref(null),r=e.ref(!1),s=e.ref(null),i=x=>{const h=a.models.find(v=>v.id===x);h&&(h.expanded=!h.expanded,o("update:models",[...a.models]))},c=x=>{const h=a.models.find(v=>v.id===x);if(h){const v={id:h.reminders.length+1,days:0,recipients:[],sendType:"Email"};h.reminders.push(v),o("update:models",[...a.models])}},g=(x,h)=>{const v=a.models.find(y=>y.id===x);v&&(v.reminders=v.reminders.filter(y=>y.id!==h),o("update:models",[...a.models]))},k=(x,h,v)=>{const y=a.models.find(b=>b.id===x);if(y){const b=y.reminders.find(z=>z.id===h);b&&(b.days=parseInt(v)||0,o("update:models",[...a.models]))}},C=(x,h,v)=>{const y=a.models.find(b=>b.id===x);if(y){const b=y.reminders.find(z=>z.id===h);b&&(b.sendType=v,o("update:models",[...a.models]))}},D=(x,h)=>{const y=a.models.find(b=>b.id===x).reminders.find(b=>b.id===h);l.value=x,s.value={...y,recipients:[...y.recipients]},r.value=!0},B=x=>{const h=s.value.recipients.indexOf(x);h>-1?s.value.recipients.splice(h,1):s.value.recipients.push(x)},N=()=>{const x=a.models.find(h=>h.id===l.value);if(x){const h=x.reminders.find(v=>v.id===s.value.id);h&&(h.recipients=[...s.value.recipients],o("update:models",[...a.models]))}r.value=!1};return(x,h)=>(e.openBlock(),e.createElementBlock("div",cb,[e.createElementVNode("div",db,[e.createElementVNode("div",ub,[e.createElementVNode("div",mb,[e.createElementVNode("div",fb,[e.createVNode(L,{icon:"envelope",class:"w-6 h-6 text-white"})]),h[2]||(h[2]=e.createElementVNode("div",null,[e.createElementVNode("h1",{class:"text-3xl font-bold bg-linear-to-r from-slate-800 to-slate-600 bg-clip-text text-transparent"}," Reminder Configuration "),e.createElementVNode("p",{class:"text-slate-600 mt-1"}," Configure reminder schedules for different models ")],-1))])]),e.createElementVNode("div",pb,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.models,v=>(e.openBlock(),e.createElementBlock("div",{key:v.id,class:"bg-white/70 backdrop-blur-xl rounded-2xl shadow-xl border border-white/20 overflow-hidden hover:shadow-2xl transition-all duration-300"},[e.createElementVNode("div",{class:"p-6 cursor-pointer hover:bg-linear-to-r hover:from-blue-50 hover:to-indigo-50 transition-all duration-300 border-b border-slate-100",onClick:y=>i(v.id)},[e.createElementVNode("div",vb,[e.createElementVNode("div",hb,[e.createElementVNode("div",yb,[e.createElementVNode("span",bb,e.toDisplayString(v.name.split(" ")[1]?.[0]||"M"),1)]),e.createElementVNode("div",null,[e.createElementVNode("h2",xb,e.toDisplayString(v.name),1),e.createElementVNode("span",kb,[h[3]||(h[3]=e.createElementVNode("div",{class:"w-1.5 h-1.5 bg-blue-500 rounded-full animate-pulse"},null,-1)),e.createTextVNode(" "+e.toDisplayString(v.reminders.length)+" reminder"+e.toDisplayString(v.reminders.length!==1?"s":""),1)])])]),e.createElementVNode("div",wb,[e.createElementVNode("button",{class:"px-4 py-2 bg-linear-to-r from-green-500 to-emerald-600 text-white rounded-xl font-semibold text-sm hover:from-green-600 hover:to-emerald-700 transition-all duration-300 shadow-md hover:shadow-lg flex items-center gap-2",onClick:e.withModifiers(y=>c(v.id),["stop"])},[e.createVNode(L,{icon:"plus",class:"w-4 h-4"}),h[4]||(h[4]=e.createTextVNode(" Add ",-1))],8,Cb),e.createVNode(L,{icon:v.expanded?"chevron-up":"chevron-down",class:"w-5 h-5 text-slate-400"},null,8,["icon"])])])],8,gb),v.expanded?(e.openBlock(),e.createElementBlock("div",Bb,[v.reminders.length===0?(e.openBlock(),e.createElementBlock("div",Vb,[e.createElementVNode("div",Eb,[e.createVNode(L,{icon:"envelope",class:"w-8 h-8 text-slate-400"})]),h[5]||(h[5]=e.createElementVNode("p",{class:"text-slate-500 font-medium"}," No reminders configured yet ",-1)),h[6]||(h[6]=e.createElementVNode("p",{class:"text-slate-400 text-sm mt-1"},' Click "Add" to create your first reminder ',-1))])):(e.openBlock(),e.createElementBlock("div",Nb,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(v.reminders,y=>(e.openBlock(),e.createElementBlock("div",{key:y.id,class:"bg-white rounded-xl border border-slate-200 p-5 hover:shadow-lg transition-all duration-300"},[e.createElementVNode("div",Sb,[e.createElementVNode("div",$b,[e.createElementVNode("div",null,[h[8]||(h[8]=e.createElementVNode("label",{class:"block text-xs font-bold text-slate-700 mb-2 uppercase tracking-wide"}," Days Before ",-1)),e.createElementVNode("div",zb,[e.createElementVNode("input",{type:"number",min:"0",value:y.days,class:"w-full px-4 py-3 border-2 border-slate-200 rounded-xl focus:outline-none focus:border-blue-500 focus:ring-4 focus:ring-blue-100 transition-all duration-300 font-semibold text-slate-800",placeholder:"0",onInput:b=>k(v.id,y.id,b.target.value)},null,40,Db),h[7]||(h[7]=e.createElementVNode("div",{class:"absolute right-3 top-1/2 -translate-y-1/2 text-slate-400 text-sm font-medium"}," days ",-1))])]),e.createElementVNode("div",null,[h[9]||(h[9]=e.createElementVNode("label",{class:"block text-xs font-bold text-slate-700 mb-2 uppercase tracking-wide"}," Send Type ",-1)),e.createElementVNode("div",Tb,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.sendTypeOptions,b=>(e.openBlock(),e.createElementBlock("button",{key:b.value,class:e.normalizeClass(["flex-1 px-4 py-3 rounded-xl font-semibold text-sm transition-all duration-300 flex items-center justify-center gap-2",y.sendType===b.value?"bg-linear-to-r from-blue-500 to-indigo-600 text-white shadow-lg":"bg-slate-100 text-slate-600 hover:bg-slate-200"]),onClick:z=>C(v.id,y.id,b.value)},[e.createVNode(L,{icon:b.value==="Email"?"envelope":"message",class:"w-4 h-4"},null,8,["icon"]),e.createTextVNode(" "+e.toDisplayString(b.label),1)],10,Fb))),128))])]),e.createElementVNode("div",null,[h[10]||(h[10]=e.createElementVNode("label",{class:"block text-xs font-bold text-slate-700 mb-2 uppercase tracking-wide"}," Recipients ",-1)),e.createElementVNode("button",{class:"w-full px-4 py-3 bg-linear-to-r from-slate-50 to-blue-50 border-2 border-slate-200 rounded-xl hover:border-blue-400 transition-all duration-300 flex items-center justify-between group",onClick:b=>D(v.id,y.id)},[e.createElementVNode("div",Mb,[e.createVNode(L,{icon:"users",class:"w-4 h-4 text-slate-600 group-hover:text-blue-600 transition-colors"}),e.createElementVNode("span",Lb,e.toDisplayString(y.recipients.length===0?"Select recipients":`${y.recipients.length} selected`),1)]),e.createVNode(L,{icon:"chevron-down",class:"w-4 h-4 text-slate-400 group-hover:text-blue-600 transition-colors"})],8,Ab),y.recipients.length>0?(e.openBlock(),e.createElementBlock("div",_b,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.recipients,b=>(e.openBlock(),e.createElementBlock("span",{key:b,class:"px-3 py-1.5 bg-linear-to-r from-blue-100 to-indigo-100 text-blue-700 text-xs font-semibold rounded-lg"},e.toDisplayString(b),1))),128))])):e.createCommentVNode("",!0)])]),e.createElementVNode("button",{class:"p-3 bg-linear-to-r from-red-500 to-rose-600 text-white rounded-xl hover:from-red-600 hover:to-rose-700 transition-all duration-300 shadow-md hover:shadow-lg",onClick:b=>g(v.id,y.id)},[e.createVNode(L,{icon:"trash",class:"w-4 h-4"})],8,jb)])]))),128))]))])):e.createCommentVNode("",!0)]))),128))]),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-300 ease-out","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"transition-all duration-200 ease-in","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock("div",Pb,[e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-300 ease-out","enter-from-class":"opacity-0 scale-95","enter-to-class":"opacity-100 scale-100","leave-active-class":"transition-all duration-200 ease-in","leave-from-class":"opacity-100 scale-100","leave-to-class":"opacity-0 scale-95"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock("div",Ob,[e.createElementVNode("div",Ib,[e.createElementVNode("div",Rb,[h[11]||(h[11]=e.createElementVNode("div",null,[e.createElementVNode("h3",{class:"text-xl font-bold"}," Select Recipients "),e.createElementVNode("p",{class:"text-blue-100 text-sm mt-1"}," Choose who should receive this reminder ")],-1)),e.createElementVNode("button",{class:"p-2 hover:bg-white/20 rounded-lg transition-colors",onClick:h[0]||(h[0]=v=>r.value=!1)},[e.createVNode(L,{icon:"x",class:"w-5 h-5"})])])]),e.createElementVNode("div",Ub,[e.createElementVNode("div",qb,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.availableRecipients,v=>(e.openBlock(),e.createElementBlock("label",{key:v,class:e.normalizeClass(["flex items-center gap-3 p-4 rounded-xl cursor-pointer transition-all duration-300",s.value?.recipients.includes(v)?"bg-linear-to-r from-blue-50 to-indigo-50 border-2 border-blue-300":"bg-slate-50 border-2 border-transparent hover:border-slate-200"])},[e.createElementVNode("div",Yb,[e.createElementVNode("input",{type:"checkbox",checked:s.value?.recipients.includes(v),class:"w-5 h-5 text-blue-600 rounded-md border-2 border-slate-300 focus:ring-4 focus:ring-blue-100 transition-all",onChange:y=>B(v)},null,40,Hb),s.value?.recipients.includes(v)?(e.openBlock(),e.createBlock(L,{key:0,icon:"check",class:"w-3 h-3 text-white absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 pointer-events-none"})):e.createCommentVNode("",!0)]),e.createElementVNode("span",{class:e.normalizeClass(["text-sm font-semibold",s.value?.recipients.includes(v)?"text-blue-700":"text-slate-700"])},e.toDisplayString(v),3)],2))),128))])]),e.createElementVNode("div",Wb,[e.createElementVNode("button",{class:"flex-1 px-6 py-3 bg-white border-2 border-slate-300 text-slate-700 rounded-xl font-semibold hover:bg-slate-50 transition-all duration-300",onClick:h[1]||(h[1]=v=>r.value=!1)}," Cancel "),e.createElementVNode("button",{class:"flex-1 px-6 py-3 bg-linear-to-r from-green-500 to-emerald-600 text-white rounded-xl font-semibold hover:from-green-600 hover:to-emerald-700 transition-all duration-300 shadow-lg",onClick:N}," Save Recipients ")])])):e.createCommentVNode("",!0)]),_:1})])):e.createCommentVNode("",!0)]),_:1})]))])]))}},pl=Ue(Gb,[["__scopeId","data-v-655acedc"]]),aa={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 On(){var t=Tn,n=Fn,a=J.cssPrefix,o=J.replacementClass,l=fs;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 Aa=!1;function Ft(){J.autoAddCss&&!Aa&&(is(On()),Aa=!0)}var ps={mixout:function(){return{dom:{css:On,insertCss:Ft}}},hooks:function(){return{beforeDOMElementCreation:function(){Ft()},beforeI2svg:function(){Ft()}}}},Ee=$e||{};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],In=[],Rn=function(){te.removeEventListener("DOMContentLoaded",Rn),pt=1,In.map(function(n){return n()})},pt=!1;Ne&&(pt=(te.documentElement.doScroll?/^loaded|^c/:/^loaded|^i|^c/).test(te.readyState),pt||te.addEventListener("DOMContentLoaded",Rn));function gs(t){Ne&&(pt?setTimeout(t,0):In.push(t))}function ot(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"?Pn(t):"<".concat(n," ").concat(ds(o),">").concat(r.map(ot).join(""),"</").concat(n,">")}function Ma(t,n,a){if(t&&t[n]&&t[n][a])return{prefix:n,iconName:a,icon:t[n][a]}}var At=function(n,a,o,l){var r=Object.keys(n),s=r.length,i=a,c,g,b;for(o===void 0?(c=1,b=n[r[0]]):(c=0,b=o);c<s;c++)g=r[c],b=i(b,n[g],g,n);return b};function Un(t){return ye(t).length!==1?null:t.codePointAt(0).toString(16)}function La(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 Ht(t,n){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=a.skipHooks,l=o===void 0?!1:o,r=La(n);typeof ve.hooks.addPack=="function"&&!l?ve.hooks.addPack(t,La(n)):ve.styles[t]=I(I({},ve.styles[t]||{}),r),t==="fas"&&Ht("fa",n)}var Qe=ve.styles,vs=ve.shims,qn=Object.keys(sa),hs=qn.reduce(function(t,n){return t[n]=Object.keys(sa[n]),t},{}),da=null,Yn={},Hn={},Wn={},Gn={},Kn={};function ys(t){return~ns.indexOf(t)}function bs(t,n){var a=n.split("-"),o=a[0],l=a.slice(1).join("-");return o===t&&l!==""&&!ys(l)?l:null}var Xn=function(){var n=function(r){return At(Qe,function(s,i,c){return s[c]=At(i,r,{}),s},{})};Yn=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}),Hn=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}),Kn=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||J.autoFetchSvg,o=At(vs,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:{}});Wn=o.names,Gn=o.unicodes,da=kt(J.styleDefault,{family:J.familyDefault})};ss(function(t){da=kt(t.styleDefault,{family:J.familyDefault})});Xn();function ua(t,n){return(Yn[t]||{})[n]}function xs(t,n){return(Hn[t]||{})[n]}function Fe(t,n){return(Kn[t]||{})[n]}function Jn(t){return Wn[t]||{prefix:null,iconName:null}}function ks(t){var n=Gn[t],a=ua("fas",t);return n||(a?{prefix:"fas",iconName:a}:null)||{prefix:null,iconName:null}}function ze(){return da}var Qn=function(){return{prefix:null,iconName:null,rest:[]}};function ws(t){var n=ie,a=qn.reduce(function(o,l){return o[l]="".concat(J.cssPrefix,"-").concat(l),o},{});return Sn.forEach(function(o){(t.includes(a[o])||t.some(function(l){return hs[o].includes(l)}))&&(n=o)}),n}function kt(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=n.family,o=a===void 0?ie:a,l=Qr[o][t];if(o===at&&!t)return"fad";var r=Ta[o][t]||Ta[o][l],s=t in ve.styles?t:null,i=r||s||null;return i}function Cs(t){var n=[],a=null;return t.forEach(function(o){var l=bs(J.cssPrefix,o);l?a=l:o&&n.push(o)}),{iconName:a,rest:n}}function _a(t){return t.sort().filter(function(n,a,o){return o.indexOf(n)===a})}var ja=zn.concat($n);function wt(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=n.skipLookups,o=a===void 0?!1:a,l=null,r=_a(t.filter(function(N){return ja.includes(N)})),s=_a(t.filter(function(N){return!ja.includes(N)})),i=r.filter(function(N){return l=N,!pn.includes(N)}),c=bt(i,1),g=c[0],b=g===void 0?null:g,w=ws(r),z=I(I({},Cs(s)),{},{prefix:kt(b,{family:w})});return I(I(I({},z),Ns({values:t,family:w,styles:Qe,config:J,canonical:z,givenPrefix:l})),Bs(o,l,z))}function Bs(t,n,a){var o=a.prefix,l=a.iconName;if(t||!o||!l)return{prefix:o,iconName:l};var r=n==="fa"?Jn(l):{},s=Fe(o,l);return l=r.iconName||s||l,o=r.prefix||o,o==="far"&&!Qe.far&&Qe.fas&&!J.autoFetchSvg&&(o="fas"),{prefix:o,iconName:l}}var Vs=Sn.filter(function(t){return t!==ie||t!==at}),Es=Object.keys(Ot).filter(function(t){return t!==ie}).map(function(t){return Object.keys(Ot[t])}).flat();function Ns(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,g=c===void 0?{}:c,b=a===at,w=n.includes("fa-duotone")||n.includes("fad"),z=g.familyDefault==="duotone",N=o.prefix==="fad"||o.prefix==="fa-duotone";if(!b&&(w||z||N)&&(o.prefix="fad"),(n.includes("fa-brands")||n.includes("fab"))&&(o.prefix="fab"),!o.prefix&&Vs.includes(a)){var S=Object.keys(i).find(function(k){return Es.includes(k)});if(S||g.autoFetchSvg){var V=Xl.get(a).defaultShortPrefixId;o.prefix=V,o.iconName=Fe(o.prefix,o.iconName)||o.iconName}}return(o.prefix==="fa"||r==="fa")&&(o.prefix=ze()||"fas"),o}var Ss=(function(){function t(){kl(this,t),this.definitions={}}return Cl(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]),Ht(i,s[i]);var c=sa[ie][i];c&&Ht(c,s[i]),Xn()})}},{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,g=s.icon,b=g[2];a[i]||(a[i]={}),b.length>0&&b.forEach(function(w){typeof w=="string"&&(a[i][w]=g)}),a[i][c]=g}),a}}])})(),Pa=[],je={},Pe={},$s=Object.keys(Pe);function zs(t,n){var a=n.mixoutsTo;return Pa=t,je={},Object.keys(Pe).forEach(function(o){$s.indexOf(o)===-1&&delete Pe[o]}),Pa.forEach(function(o){var l=o.mixout?o.mixout():{};if(Object.keys(l).forEach(function(s){typeof l[s]=="function"&&(a[s]=l[s]),ft(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){je[s]||(je[s]=[]),je[s].push(r[s])})}o.provides&&o.provides(Pe)}),a}function Wt(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=je[t]||[];return r.forEach(function(s){n=s.apply(null,[n].concat(o))}),n}function Me(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=je[t]||[];l.forEach(function(r){r.apply(null,a)})}function De(){var t=arguments[0],n=Array.prototype.slice.call(arguments,1);return Pe[t]?Pe[t].apply(null,n):void 0}function Gt(t){t.prefix==="fa"&&(t.prefix="fas");var n=t.iconName,a=t.prefix||ze();if(n)return n=Fe(a,n)||n,Ma(Zn.definitions,a,n)||Ma(ve.styles,a,n)}var Zn=new Ss,Ds=function(){J.autoReplaceSvg=!1,J.observeMutations=!1,Me("noAuto")},Ts={i2svg:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Ne?(Me("beforeI2svg",n),De("pseudoElements2svg",n),De("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;J.autoReplaceSvg===!1&&(J.autoReplaceSvg=!0),J.observeMutations=!0,gs(function(){As({autoReplaceSvgRoot:a}),Me("watch",n)})}},Fs={icon:function(n){if(n===null)return null;if(ft(n)==="object"&&n.prefix&&n.iconName)return{prefix:n.prefix,iconName:Fe(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=kt(n[0]);return{prefix:o,iconName:Fe(o,a)||a}}if(typeof n=="string"&&(n.indexOf("".concat(J.cssPrefix,"-"))>-1||n.match(Zr))){var l=wt(n.split(" "),{skipLookups:!0});return{prefix:l.prefix||ze(),iconName:Fe(l.prefix,l.iconName)||l.iconName}}if(typeof n=="string"){var r=ze();return{prefix:r,iconName:Fe(r,n)||n}}}},pe={noAuto:Ds,config:J,dom:Ts,parse:Fs,library:Zn,findIconDefinition:Gt,toHtml:ot},As=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||J.autoFetchSvg)&&Ne&&J.autoReplaceSvg&&pe.dom.i2svg({node:o})};function Ct(t,n){return Object.defineProperty(t,"abstract",{get:n}),Object.defineProperty(t,"html",{get:function(){return t.abstract.map(function(o){return ot(o)})}}),Object.defineProperty(t,"node",{get:function(){if(Ne){var o=te.createElement("div");return o.innerHTML=t.html,o.children}}}),t}function Ms(t){var n=t.children,a=t.main,o=t.mask,l=t.attributes,r=t.styles,s=t.transform;if(ca(s)&&a.found&&!o.found){var i=a.width,c=a.height,g={x:i/c/2,y:.5};l.style=xt(I(I({},r),{},{"transform-origin":"".concat(g.x+s.x/16,"em ").concat(g.y+s.y/16,"em")}))}return[{tag:"svg",attributes:l,children:n}]}function Ls(t){var n=t.prefix,a=t.iconName,o=t.children,l=t.attributes,r=t.symbol,s=r===!0?"".concat(n,"-").concat(J.cssPrefix,"-").concat(a):r;return[{tag:"svg",attributes:{style:"display: none;"},children:[{tag:"symbol",attributes:I(I({},l),{},{id:s}),children:o}]}]}function _s(t){var n=["aria-label","aria-labelledby","title","role"];return n.some(function(a){return a in t})}function ma(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,g=t.extra,b=t.watchable,w=b===void 0?!1:b,z=o.found?o:a,N=z.width,S=z.height,V=[J.replacementClass,r?"".concat(J.cssPrefix,"-").concat(r):""].filter(function(C){return g.classes.indexOf(C)===-1}).filter(function(C){return C!==""||!!C}).concat(g.classes).join(" "),k={children:[],attributes:I(I({},g.attributes),{},{"data-prefix":l,"data-icon":r,class:V,role:g.attributes.role||"img",viewBox:"0 0 ".concat(N," ").concat(S)})};!_s(g.attributes)&&!g.attributes["aria-hidden"]&&(k.attributes["aria-hidden"]="true"),w&&(k.attributes[Ae]="");var h=I(I({},k),{},{prefix:l,iconName:r,main:a,mask:o,maskId:c,transform:s,symbol:i,styles:I({},g.styles)}),y=o.found&&a.found?De("generateAbstractMask",h)||{children:[],attributes:{}}:De("generateAbstractIcon",h)||{children:[],attributes:{}},v=y.children,E=y.attributes;return h.children=v,h.attributes=E,i?Ls(h):Ms(h)}function Oa(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[Ae]="");var g=I({},r.styles);ca(l)&&(g.transform=ms({transform:l,width:a,height:o}),g["-webkit-transform"]=g.transform);var b=xt(g);b.length>0&&(c.style=b);var w=[];return w.push({tag:"span",attributes:c,children:[n]}),w}function js(t){var n=t.content,a=t.extra,o=I(I({},a.attributes),{},{class:a.classes.join(" ")}),l=xt(a.styles);l.length>0&&(o.style=l);var r=[];return r.push({tag:"span",attributes:o,children:[n]}),r}var Mt=ve.styles;function Kt(t){var n=t[0],a=t[1],o=t.slice(4),l=bt(o,1),r=l[0],s=null;return Array.isArray(r)?s={tag:"g",attributes:{class:"".concat(J.cssPrefix,"-").concat(Tt.GROUP)},children:[{tag:"path",attributes:{class:"".concat(J.cssPrefix,"-").concat(Tt.SECONDARY),fill:"currentColor",d:r[0]}},{tag:"path",attributes:{class:"".concat(J.cssPrefix,"-").concat(Tt.PRIMARY),fill:"currentColor",d:r[1]}}]}:s={tag:"path",attributes:{fill:"currentColor",d:r}},{found:!0,width:n,height:a,icon:s}}var Ps={found:!1,width:512,height:512};function Os(t,n){!Mn&&!J.showMissingIcons&&t&&console.error('Icon with name "'.concat(t,'" and prefix "').concat(n,'" is missing.'))}function Xt(t,n){var a=n;return n==="fa"&&J.styleDefault!==null&&(n=ze()),new Promise(function(o,l){if(a==="fa"){var r=Jn(t)||{};t=r.iconName||t,n=r.prefix||n}if(t&&n&&Mt[n]&&Mt[n][t]){var s=Mt[n][t];return o(Kt(s))}Os(t,n),o(I(I({},Ps),{},{icon:J.showMissingIcons&&t?De("missingIconAbstract")||{}:{}}))})}var Ia=function(){},Jt=J.measurePerformance&&st&&st.mark&&st.measure?st:{mark:Ia,measure:Ia},We='FA "7.0.1"',Is=function(n){return Jt.mark("".concat(We," ").concat(n," begins")),function(){return eo(n)}},eo=function(n){Jt.mark("".concat(We," ").concat(n," ends")),Jt.measure("".concat(We," ").concat(n),"".concat(We," ").concat(n," begins"),"".concat(We," ").concat(n," ends"))},fa={begin:Is,end:eo},dt=function(){};function Ra(t){var n=t.getAttribute?t.getAttribute(Ae):null;return typeof n=="string"}function Rs(t){var n=t.getAttribute?t.getAttribute(la):null,a=t.getAttribute?t.getAttribute(ra):null;return n&&a}function Us(t){return t&&t.classList&&t.classList.contains&&t.classList.contains(J.replacementClass)}function qs(){if(J.autoReplaceSvg===!0)return ut.replace;var t=ut[J.autoReplaceSvg];return t||ut.replace}function Ys(t){return te.createElementNS("http://www.w3.org/2000/svg",t)}function Hs(t){return te.createElement(t)}function to(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=n.ceFn,o=a===void 0?t.tag==="svg"?Ys:Hs: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(to(s,{ceFn:o}))}),l}function Ws(t){var n=" ".concat(t.outerHTML," ");return n="".concat(n,"Font Awesome fontawesome.com "),n}var ut={replace:function(n){var a=n[0];if(a.parentNode)if(n[1].forEach(function(l){a.parentNode.insertBefore(to(l),a)}),a.getAttribute(Ae)===null&&J.keepOriginalSource){var o=te.createComment(Ws(a));a.parentNode.replaceChild(o,a)}else a.remove()},nest:function(n){var a=n[0],o=n[1];if(~ia(a).indexOf(J.replacementClass))return ut.replace(n);var l=new RegExp("".concat(J.cssPrefix,"-.*"));if(delete o[0].attributes.id,o[0].attributes.class){var r=o[0].attributes.class.split(" ").reduce(function(i,c){return c===J.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 ot(i)}).join(`
|
|
556
|
+
`);a.setAttribute(Ae,""),a.innerHTML=s}};function Ua(t){t()}function ao(t,n){var a=typeof n=="function"?n:dt;if(t.length===0)a();else{var o=Ua;J.mutateApproach===Xr&&(o=$e.requestAnimationFrame||Ua),o(function(){var l=qs(),r=fa.begin("mutate");t.map(l),r(),a()})}}var pa=!1;function no(){pa=!0}function Qt(){pa=!1}var gt=null;function qa(t){if(Sa&&J.observeMutations){var n=t.treeCallback,a=n===void 0?dt:n,o=t.nodeCallback,l=o===void 0?dt:o,r=t.pseudoElementsCallback,s=r===void 0?dt:r,i=t.observeMutationsRoot,c=i===void 0?te:i;gt=new Sa(function(g){if(!pa){var b=ze();Re(g).forEach(function(w){if(w.type==="childList"&&w.addedNodes.length>0&&!Ra(w.addedNodes[0])&&(J.searchPseudoElements&&s(w.target),a(w.target)),w.type==="attributes"&&w.target.parentNode&&J.searchPseudoElements&&s([w.target],!0),w.type==="attributes"&&Ra(w.target)&&~as.indexOf(w.attributeName))if(w.attributeName==="class"&&Rs(w.target)){var z=wt(ia(w.target)),N=z.prefix,S=z.iconName;w.target.setAttribute(la,N||b),S&&w.target.setAttribute(ra,S)}else Us(w.target)&&l(w.target)})}}),Ne&>.observe(c,{childList:!0,attributes:!0,characterData:!0,subtree:!0})}}function Gs(){gt&>.disconnect()}function Ks(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 Xs(t){var n=t.getAttribute("data-prefix"),a=t.getAttribute("data-icon"),o=t.innerText!==void 0?t.innerText.trim():"",l=wt(ia(t));return l.prefix||(l.prefix=ze()),n&&a&&(l.prefix=n,l.iconName=a),l.iconName&&l.prefix||(l.prefix&&o.length>0&&(l.iconName=xs(l.prefix,t.innerText)||ua(l.prefix,Un(t.innerText))),!l.iconName&&J.autoFetchSvg&&t.firstChild&&t.firstChild.nodeType===Node.TEXT_NODE&&(l.iconName=t.firstChild.data)),l}function Js(t){var n=Re(t.attributes).reduce(function(a,o){return a.name!=="class"&&a.name!=="style"&&(a[o.name]=o.value),a},{});return n}function Qs(){return{iconName:null,prefix:null,transform:ke,symbol:!1,mask:{iconName:null,prefix:null,rest:[]},maskId:null,extra:{classes:[],styles:{},attributes:{}}}}function Ya(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{styleParser:!0},a=Xs(t),o=a.iconName,l=a.prefix,r=a.rest,s=Js(t),i=Wt("parseNodeAttributes",{},t),c=n.styleParser?Ks(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 Zs=ve.styles;function oo(t){var n=J.autoReplaceSvg==="nest"?Ya(t,{styleParser:!1}):Ya(t);return~n.extra.classes.indexOf(_n)?De("generateLayersText",t,n):De("generateSvgReplacementMutation",t,n)}function ei(){return[].concat(ye($n),ye(zn))}function Ha(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;if(!Ne)return Promise.resolve();var a=te.documentElement.classList,o=function(w){return a.add("".concat(Da,"-").concat(w))},l=function(w){return a.remove("".concat(Da,"-").concat(w))},r=J.autoFetchSvg?ei():pn.concat(Object.keys(Zs));r.includes("fa")||r.push("fa");var s=[".".concat(_n,":not([").concat(Ae,"])")].concat(r.map(function(b){return".".concat(b,":not([").concat(Ae,"])")})).join(", ");if(s.length===0)return Promise.resolve();var i=[];try{i=Re(t.querySelectorAll(s))}catch{}if(i.length>0)o("pending"),l("complete");else return Promise.resolve();var c=fa.begin("onTree"),g=i.reduce(function(b,w){try{var z=oo(w);z&&b.push(z)}catch(N){Mn||N.name==="MissingIcon"&&console.error(N)}return b},[]);return new Promise(function(b,w){Promise.all(g).then(function(z){ao(z,function(){o("active"),o("complete"),l("pending"),typeof n=="function"&&n(),c(),b()})}).catch(function(z){c(),w(z)})})}function ti(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;oo(t).then(function(a){a&&ao([a],n)})}function ai(t){return function(n){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=(n||{}).icon?n:Gt(n||{}),l=a.mask;return l&&(l=(l||{}).icon?l:Gt(l||{})),t(o,I(I({},a),{},{mask:l}))}}var ni=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,g=a.maskId,b=g===void 0?null:g,w=a.classes,z=w===void 0?[]:w,N=a.attributes,S=N===void 0?{}:N,V=a.styles,k=V===void 0?{}:V;if(n){var h=n.prefix,y=n.iconName,v=n.icon;return Ct(I({type:"icon"},n),function(){return Me("beforeDOMElementCreation",{iconDefinition:n,params:a}),ma({icons:{main:Kt(v),mask:c?Kt(c.icon):{found:!1,width:null,height:null,icon:{}}},prefix:h,iconName:y,transform:I(I({},ke),l),symbol:s,maskId:b,extra:{attributes:S,styles:k,classes:z}})})}},oi={mixout:function(){return{icon:ai(ni)}},hooks:function(){return{mutationObserverCallbacks:function(a){return a.treeCallback=Ha,a.nodeCallback=ti,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 Ha(l,s)},n.generateSvgReplacementMutation=function(a,o){var l=o.iconName,r=o.prefix,s=o.transform,i=o.symbol,c=o.mask,g=o.maskId,b=o.extra;return new Promise(function(w,z){Promise.all([Xt(l,r),c.iconName?Xt(c.iconName,c.prefix):Promise.resolve({found:!1,width:512,height:512,icon:{}})]).then(function(N){var S=bt(N,2),V=S[0],k=S[1];w([a,ma({icons:{main:V,mask:k},prefix:r,iconName:l,transform:s,symbol:i,maskId:g,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=xt(i);c.length>0&&(l.style=c);var g;return ca(s)&&(g=De("generateAbstractTransformGrouping",{main:r,transform:s,containerWidth:r.width,iconWidth:r.width})),o.push(g||r.icon),{children:o,attributes:l}}}},li={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 Ct({type:"layer"},function(){Me("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(J.cssPrefix,"-layers")].concat(ye(r)).join(" ")},children:s}]})}}}},ri={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,g=c===void 0?{}:c;return Ct({type:"counter",content:a},function(){return Me("beforeDOMElementCreation",{content:a,params:o}),js({content:a.toString(),extra:{attributes:i,styles:g,classes:["".concat(J.cssPrefix,"-layers-counter")].concat(ye(r))}})})}}}},si={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,g=c===void 0?{}:c,b=o.styles,w=b===void 0?{}:b;return Ct({type:"text",content:a},function(){return Me("beforeDOMElementCreation",{content:a,params:o}),Oa({content:a,transform:I(I({},ke),r),extra:{attributes:g,styles:w,classes:["".concat(J.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(mn){var c=parseInt(getComputedStyle(a).fontSize,10),g=a.getBoundingClientRect();s=g.width/c,i=g.height/c}return Promise.resolve([a,Oa({content:a.innerHTML,width:s,height:i,transform:l,extra:r,watchable:!0})])}}},lo=new RegExp('"',"ug"),Wa=[1105920,1112319],Ga=I(I(I(I({},{FontAwesome:{normal:"fas",400:"fas"}}),Kl),Gr),or),Zt=Object.keys(Ga).reduce(function(t,n){return t[n.toLowerCase()]=Ga[n],t},{}),ii=Object.keys(Zt).reduce(function(t,n){var a=Zt[n];return t[n]=a[900]||ye(Object.entries(a))[0][1],t},{});function ci(t){var n=t.replace(lo,"");return Un(ye(n)[0]||"")}function di(t){var n=t.getPropertyValue("font-feature-settings").includes("ss01"),a=t.getPropertyValue("content"),o=a.replace(lo,""),l=o.codePointAt(0),r=l>=Wa[0]&&l<=Wa[1],s=o.length===2?o[0]===o[1]:!1;return r||s||n}function ui(t,n){var a=t.replace(/^['"]|['"]$/g,"").toLowerCase(),o=parseInt(n),l=isNaN(o)?"normal":o;return(Zt[a]||{})[l]||ii[a]}function Ka(t,n){var a="".concat(Kr).concat(n.replace(":","-"));return new Promise(function(o,l){if(t.getAttribute(a)!==null)return o();var r=Re(t.children),s=r.filter(function(B){return B.getAttribute(Rt)===n})[0],i=$e.getComputedStyle(t,n),c=i.getPropertyValue("font-family"),g=c.match(es),b=i.getPropertyValue("font-weight"),w=i.getPropertyValue("content");if(s&&!g)return t.removeChild(s),o();if(g&&w!=="none"&&w!==""){var z=i.getPropertyValue("content"),N=ui(c,b),S=ci(z),V=g[0].startsWith("FontAwesome"),k=di(i),h=ua(N,S),y=h;if(V){var v=ks(S);v.iconName&&v.prefix&&(h=v.iconName,N=v.prefix)}if(h&&!k&&(!s||s.getAttribute(la)!==N||s.getAttribute(ra)!==y)){t.setAttribute(a,y),s&&t.removeChild(s);var E=Qs(),C=E.extra;C.attributes[Rt]=n,Xt(h,N).then(function(B){var M=ma(I(I({},E),{},{icons:{main:B,mask:Qn()},prefix:N,iconName:y,extra:C,watchable:!0})),Y=te.createElementNS("http://www.w3.org/2000/svg","svg");n==="::before"?t.insertBefore(Y,t.firstChild):t.appendChild(Y),Y.outerHTML=M.map(function(U){return ot(U)}).join(`
|
|
557
|
+
`),t.removeAttribute(a),o()}).catch(l)}else o()}else o()})}function mi(t){return Promise.all([Ka(t,"::before"),Ka(t,"::after")])}function fi(t){return t.parentNode!==document.head&&!~Jr.indexOf(t.tagName.toUpperCase())&&!t.getAttribute(Rt)&&(!t.parentNode||t.parentNode.tagName!=="svg")}var pi=function(n){return!!n&&An.some(function(a){return n.includes(a)})},gi=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(g){return g.trim()})});var l=ct(o),r;try{for(l.s();!(r=l.n()).done;){var s=r.value;if(pi(s)){var i=An.reduce(function(c,g){return c.replace(g,"")},s);i!==""&&i!=="*"&&a.add(i)}}}catch(c){l.e(c)}finally{l.f()}return a};function Xa(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(Ne){var a;if(n)a=t;else if(J.searchPseudoElementsFullScan)a=t.querySelectorAll("*");else{var o=new Set,l=ct(document.styleSheets),r;try{for(l.s();!(r=l.n()).done;){var s=r.value;try{var i=ct(s.cssRules),c;try{for(i.s();!(c=i.n()).done;){var g=c.value,b=gi(g.selectorText),w=ct(b),z;try{for(w.s();!(z=w.n()).done;){var N=z.value;o.add(N)}}catch(V){w.e(V)}finally{w.f()}}}catch(V){i.e(V)}finally{i.f()}}catch(V){J.searchPseudoElementsWarnings&&console.warn("Font Awesome: cannot parse stylesheet: ".concat(s.href," (").concat(V.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(V){l.e(V)}finally{l.f()}if(!o.size)return;var S=Array.from(o).join(", ");try{a=t.querySelectorAll(S)}catch{}}return new Promise(function(V,k){var h=Re(a).filter(fi).map(mi),y=fa.begin("searchPseudoElements");no(),Promise.all(h).then(function(){y(),Qt(),V()}).catch(function(){y(),Qt(),k()})})}}var vi={hooks:function(){return{mutationObserverCallbacks:function(a){return a.pseudoElementsCallback=Xa,a}}},provides:function(n){n.pseudoElements2svg=function(a){var o=a.node,l=o===void 0?te:o;J.searchPseudoElements&&Xa(l)}}},Ja=!1,hi={mixout:function(){return{dom:{unwatch:function(){no(),Ja=!0}}}},hooks:function(){return{bootstrap:function(){qa(Wt("mutationObserverCallbacks",{}))},noAuto:function(){Gs()},watch:function(a){var o=a.observeMutationsRoot;Ja?Qt():qa(Wt("mutationObserverCallbacks",{observeMutationsRoot:o}))}}}},Qa=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)},yi={mixout:function(){return{parse:{transform:function(a){return Qa(a)}}}},hooks:function(){return{parseNodeAttributes:function(a,o){var l=o.getAttribute("data-fa-transform");return l&&(a.transform=Qa(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,") "),g="scale(".concat(l.size/16*(l.flipX?-1:1),", ").concat(l.size/16*(l.flipY?-1:1),") "),b="rotate(".concat(l.rotate," 0 0)"),w={transform:"".concat(c," ").concat(g," ").concat(b)},z={transform:"translate(".concat(s/2*-1," -256)")},N={outer:i,inner:w,path:z};return{tag:"g",attributes:I({},N.outer),children:[{tag:"g",attributes:I({},N.inner),children:[{tag:o.icon.tag,children:o.icon.children,attributes:I(I({},o.icon.attributes),N.path)}]}]}}}},Lt={x:0,y:0,width:"100%",height:"100%"};function Za(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 bi(t){return t.tag==="g"?t.children:[t]}var xi={hooks:function(){return{parseNodeAttributes:function(a,o){var l=o.getAttribute("data-fa-mask"),r=l?wt(l.split(" ").map(function(s){return s.trim()})):Qn();return r.prefix||(r.prefix=ze()),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,g=r.width,b=r.icon,w=s.width,z=s.icon,N=us({transform:c,containerWidth:w,iconWidth:g}),S={tag:"rect",attributes:I(I({},Lt),{},{fill:"white"})},V=b.children?{children:b.children.map(Za)}:{},k={tag:"g",attributes:I({},N.inner),children:[Za(I({tag:b.tag,attributes:I(I({},b.attributes),N.path)},V))]},h={tag:"g",attributes:I({},N.outer),children:[k]},y="mask-".concat(i||Fa()),v="clip-".concat(i||Fa()),E={tag:"mask",attributes:I(I({},Lt),{},{id:y,maskUnits:"userSpaceOnUse",maskContentUnits:"userSpaceOnUse"}),children:[S,h]},C={tag:"defs",children:[{tag:"clipPath",attributes:{id:v},children:bi(z)},E]};return o.push(C,{tag:"rect",attributes:I({fill:"currentColor","clip-path":"url(#".concat(v,")"),mask:"url(#".concat(y,")")},Lt)}),{children:o,attributes:l}}}},ki={provides:function(n){var a=!1;$e.matchMedia&&(a=$e.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}}}},wi={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}}}},Ci=[ps,oi,li,ri,si,vi,hi,yi,xi,ki,wi];zs(Ci,{mixoutsTo:pe});pe.noAuto;var ro=pe.config;pe.library;pe.dom;var vt=pe.parse;pe.findIconDefinition;pe.toHtml;var Bi=pe.icon;pe.layer;var Vi=pe.text;pe.counter;function ea(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 Ei(t){if(Array.isArray(t))return ea(t)}function ue(t,n,a){return(n=Ti(n))in t?Object.defineProperty(t,n,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[n]=a,t}function Ni(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function Si(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
559
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function en(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?en(Object(a),!0).forEach(function(o){ue(t,o,a[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):en(Object(a)).forEach(function(o){Object.defineProperty(t,o,Object.getOwnPropertyDescriptor(a,o))})}return t}function $i(t,n){if(t==null)return{};var a,o,l=zi(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 zi(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 ta(t){return Ei(t)||Ni(t)||Fi(t)||Si()}function Di(t,n){if(typeof t!="object"||!t)return t;var a=t[Symbol.toPrimitive];if(a!==void 0){var o=a.call(t,n);if(typeof o!="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return(n==="string"?String:Number)(t)}function Ti(t){var n=Di(t,"string");return typeof n=="symbol"?n:n+""}function ht(t){"@babel/helpers - typeof";return ht=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},ht(t)}function Fi(t,n){if(t){if(typeof t=="string")return ea(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)?ea(t,n):void 0}}function Xe(t,n){return Array.isArray(n)&&n.length>0||!Array.isArray(n)&&n?ue({},t,n):{}}function Ai(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 Mi=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},so={exports:{}};(function(t){(function(n){var a=function(h,y,v){if(!g(y)||w(y)||z(y)||N(y)||c(y))return y;var E,C=0,B=0;if(b(y))for(E=[],B=y.length;C<B;C++)E.push(a(h,y[C],v));else{E={};for(var M in y)Object.prototype.hasOwnProperty.call(y,M)&&(E[h(M,v)]=a(h,y[M],v))}return E},o=function(h,y){y=y||{};var v=y.separator||"_",E=y.split||/(?=[A-Z])/;return h.split(E).join(v)},l=function(h){return S(h)?h:(h=h.replace(/[\-_\s]+(.)?/g,function(y,v){return v?v.toUpperCase():""}),h.substr(0,1).toLowerCase()+h.substr(1))},r=function(h){var y=l(h);return y.substr(0,1).toUpperCase()+y.substr(1)},s=function(h,y){return o(h,y).toLowerCase()},i=Object.prototype.toString,c=function(h){return typeof h=="function"},g=function(h){return h===Object(h)},b=function(h){return i.call(h)=="[object Array]"},w=function(h){return i.call(h)=="[object Date]"},z=function(h){return i.call(h)=="[object RegExp]"},N=function(h){return i.call(h)=="[object Boolean]"},S=function(h){return h=h-0,h===h},V=function(h,y){var v=y&&"process"in y?y.process:y;return typeof v!="function"?h:function(E,C){return v(E,h,C)}},k={camelize:l,decamelize:s,pascalize:r,depascalize:s,camelizeKeys:function(h,y){return a(V(l,y),h)},decamelizeKeys:function(h,y){return a(V(s,y),h,y)},pascalizeKeys:function(h,y){return a(V(r,y),h)},depascalizeKeys:function(){return this.decamelizeKeys.apply(this,arguments)}};t.exports?t.exports=k:n.humps=k})(Mi)})(so);var Li=so.exports,_i=["class","style"];function ji(t){return t.split(";").map(function(n){return n.trim()}).filter(function(n){return n}).reduce(function(n,a){var o=a.indexOf(":"),l=Li.camelize(a.slice(0,o)),r=a.slice(o+1).trim();return n[l]=r,n},{})}function Pi(t){return t.split(/\s+/).reduce(function(n,a){return n[a]=!0,n},{})}function ga(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 ga(c)}),l=Object.keys(t.attributes||{}).reduce(function(c,g){var b=t.attributes[g];switch(g){case"class":c.class=Pi(b);break;case"style":c.style=ji(b);break;default:c.attrs[g]=b}return c},{attrs:{},class:{},style:{}});a.class;var r=a.style,s=r===void 0?{}:r,i=$i(a,_i);return e.h(t.tag,ge(ge(ge({},n),{},{class:l.class,style:ge(ge({},l.style),s)},l.attrs),i),o)}var io=!1;try{io=process.env.NODE_ENV==="production"}catch{}function Oi(){if(!io&&console&&typeof console.error=="function"){var t;(t=console).error.apply(t,arguments)}}function tn(t){if(t&&ht(t)==="object"&&t.prefix&&t.iconName&&t.icon)return t;if(vt.icon)return vt.icon(t);if(t===null)return null;if(ht(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 Ii=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 tn(n.icon)}),r=e.computed(function(){return Xe("classes",Ai(n))}),s=e.computed(function(){return Xe("transform",typeof n.transform=="string"?vt.transform(n.transform):n.transform)}),i=e.computed(function(){return Xe("mask",tn(n.mask))}),c=e.computed(function(){var b=ge(ge(ge(ge({},r.value),s.value),i.value),{},{symbol:n.symbol,maskId:n.maskId});return b.title=n.title,b.titleId=n.titleId,Bi(l.value,b)});e.watch(c,function(b){if(!b)return Oi("Could not find one or more icon(s)",l.value,i.value)},{immediate:!0});var g=e.computed(function(){return c.value?ga(c.value.abstract[0],{},o):null});return function(){return g.value}}});e.defineComponent({name:"FontAwesomeLayers",props:{fixedWidth:{type:Boolean,default:!1}},setup:function(n,a){var o=a.slots,l=ro.familyPrefix,r=e.computed(function(){return["".concat(l,"-layers")].concat(ta(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=ro.familyPrefix,r=e.computed(function(){return Xe("classes",[].concat(ta(n.counter?["".concat(l,"-layers-counter")]:[]),ta(n.position?["".concat(l,"-layers-").concat(n.position)]:[])))}),s=e.computed(function(){return Xe("transform",typeof n.transform=="string"?vt.transform(n.transform):n.transform)}),i=e.computed(function(){var g=Vi(n.value.toString(),ge(ge({},s.value),r.value)),b=g.abstract;return n.counter&&(b[0].attributes.class=b[0].attributes.class.replace("fa-layers-text","")),b[0]}),c=e.computed(function(){return ga(i.value,{},o)});return function(){return c.value}}});const L={__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(Ii),{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"]))}},Ri=["src","alt"],co={__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(()=>D(o({size:n.size,variant:n.variant}),n.class)),r=e.computed(()=>"aspect-square h-full w-full object-cover"),s=e.computed(()=>D("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(()=>D("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(g,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,Ri)):t.initials?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(s.value)},e.toDisplayString(t.initials),3)):(e.openBlock(),e.createBlock(L,{key:2,name:"User",class:e.normalizeClass(i.value)},null,8,["class"]))],2))}},Ui=["aria-label"],va=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-linear-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(D)(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(L,{icon:"xmark",class:"w-3 h-3"})],8,Ui)):e.createCommentVNode("",!0)],2))}}),qi=["disabled","aria-disabled","aria-busy"],Yi={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=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-linear-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(D)(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(L,{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",Yi,e.toDisplayString(t.loadingText),1)):e.renderSlot(r.$slots,"default",{key:3})],16,qi))}}),Hi={class:"flex items-center gap-3"},Wi={class:"relative"},Gi=["id","checked","indeterminate","disabled","required","aria-describedby"],Ki={class:"flex-1"},Xi=["for"],Ze={__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),g=h=>{const y=h.target.checked;if(Array.isArray(l.modelValue)){const v=[...l.modelValue];if(y)v.push(l.value);else{const E=v.indexOf(l.value);E>-1&&v.splice(E,1)}r("update:modelValue",v)}else r("update:modelValue",y);r("change",y)},b=()=>{!l.disabled&&s.value&&s.value.click()},w=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]),N=e.computed(()=>["absolute inset-0 w-full h-full opacity-0 cursor-pointer",{"cursor-not-allowed":l.disabled}]),S=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"}]),V=e.computed(()=>["text-sm font-medium cursor-pointer select-none",{"text-slate-900":!l.disabled,"text-slate-500":l.disabled}]),k=e.computed(()=>["text-xs text-slate-500 mt-1"]);return e.watch(()=>l.indeterminate,h=>{s.value&&(s.value.indeterminate=h)},{immediate:!0}),(h,y)=>(e.openBlock(),e.createElementBlock("div",Hi,[e.createElementVNode("div",Wi,[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(N.value),"aria-describedby":w.value,onChange:g},null,42,Gi),e.createElementVNode("div",{class:e.normalizeClass(S.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",Ki,[e.createElementVNode("label",{for:i.value,class:e.normalizeClass(V.value)},[e.renderSlot(h.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])],10,Xi),t.description?(e.openBlock(),e.createElementBlock("p",{key:0,class:e.normalizeClass(k.value)},e.toDisplayString(t.description),3)):e.createCommentVNode("",!0)])]))}},Ji={key:0,class:"px-3 text-sm text-gray-500 bg-white dark:bg-gray-900 dark:text-gray-400 relative z-10"},uo={__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(D)(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",Ji,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)],2))}},Qi=["aria-label"],Zi={key:0,class:"sr-only"},Bt={__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(()=>D(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",Zi,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)],10,Qi))}},ec=["src","alt","loading"],mo={__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(()=>D(s({aspectRatio:a.aspectRatio}),a.class)),c=e.computed(()=>D("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")),g=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"),w=N=>{l.value=!1,r.value=!1,o("load",N)},z=N=>{l.value=!1,r.value=!0,o("error",N)};return(N,S)=>(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:w,onError:z},null,42,ec),l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(g.value)},[t.showSpinner?(e.openBlock(),e.createBlock(Bt,{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(L,{name:"ImageOff",class:"h-8 w-8 text-muted-foreground"}),S[0]||(S[0]=e.createElementVNode("span",{class:"text-sm text-muted-foreground"},"Failed to load image",-1))],2)):e.createCommentVNode("",!0)],2))}},tc={class:"relative"},ac={key:0,class:"absolute left-3 top-1/2 transform -translate-y-1/2 pointer-events-none"},nc=["id","type","value","placeholder","disabled","readonly","required","autocomplete","aria-describedby","aria-invalid"],oc={key:1,class:"absolute right-3 top-1/2 transform -translate-y-1/2"},lc=["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=y=>{l("update:modelValue",y.target.value)},c=y=>{l("blur",y)},g=y=>{l("focus",y)},b=y=>{l("keydown",y)},w=()=>{l("update:modelValue",""),l("clear"),r.value?.focus()},z=e.computed(()=>!!o.error||o.variant==="error"),N=e.computed(()=>{if(o.error)return`${s.value}-error`}),S=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]),V=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]),k=e.computed(()=>["text-slate-400",{sm:"w-4 h-4",md:"w-4 h-4",lg:"w-5 h-5"}[o.size]]),h=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",S.value,V.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()}),(y,v)=>(e.openBlock(),e.createElementBlock("div",tc,[t.iconLeft?(e.openBlock(),e.createElementBlock("div",ac,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.iconLeft),{class:e.normalizeClass(k.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(h.value),"aria-describedby":N.value,"aria-invalid":z.value,onInput:i,onBlur:c,onFocus:g,onKeydown:b},null,42,nc),t.iconRight||t.clearable?(e.openBlock(),e.createElementBlock("div",oc,[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:w},[e.createVNode(L,{name:"x-mark",class:"w-5 h-5"})],8,lc)):t.iconRight?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.iconRight),{key:1,class:e.normalizeClass(k.value)},null,8,["class"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]))}},rc=["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=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(()=>D(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,rc))}},fo={__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,g)=>(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(D)(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(L,{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(L,{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(L,{key:2,name:"external-link",class:"w-3 h-3 ml-1 inline-block"})):e.createCommentVNode("",!0)]),_:3},8,["href","to","target","rel","class"]))}},sc=["src","alt"],po={__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(()=>D(a({size:n.size}),n.class)),l=e.computed(()=>D("h-full w-auto object-contain")),r=e.computed(()=>D("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,sc)):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(r.value)},e.toDisplayString(t.text||"Logo"),3))],2))}},ic=["value","disabled","selected"],ha={__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,ic))}},cc=["aria-valuenow"],go={__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(D)(e.unref(o)({size:t.size}),r.$attrs.class))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(D)(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,cc)],2))}},dc=["aria-valuenow"],vo={__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(()=>D(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,g)=>(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,dc),t.showLabel?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(i.value)},e.toDisplayString(a.value)+"% ",3)):e.createCommentVNode("",!0)],2))}},uc=["width","height","viewBox"],mc=["cx","cy","r","stroke","stroke-width"],fc=["cx","cy","r","stroke","stroke-width","stroke-dasharray","stroke-dashoffset","stroke-linecap"],pc={key:0,class:"absolute inset-0 flex items-center justify-center"},ya={__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 S=a.value/o.value*100;return Math.min(Math.max(S,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),g=e.computed(()=>2*Math.PI*c.value),b=e.computed(()=>g.value-l.value/100*g.value),w=e.computed(()=>{if(n.dynamicColor){const V=l.value;return V>=80?"#ef4444":V>=60?"#f59e0b":V>=40?"#eab308":V>=20?"#22c55e":"#6b7280"}const S={default:"#3b82f6",success:"#10b981",warning:"#f59e0b",danger:"#ef4444"};return S[n.variant]||S.default}),z=e.computed(()=>"#e5e7eb"),N=e.computed(()=>{if(n.dynamicColor){const V=l.value;return V>=80?"text-red-600":V>=60?"text-orange-600":V>=40?"text-yellow-600":V>=20?"text-green-600":"text-gray-600"}const S={default:"text-blue-600",success:"text-green-600",warning:"text-yellow-600",danger:"text-red-600"};return S[n.variant]||S.default});return(S,V)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(D)("relative inline-flex items-center justify-center",S.$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,mc),e.createElementVNode("circle",{cx:i.value,cy:i.value,r:c.value,stroke:w.value,"stroke-width":s.value,fill:"none","stroke-dasharray":g.value,"stroke-dashoffset":b.value,"stroke-linecap":t.strokeLinecap,class:"transition-all duration-300 ease-in-out"},null,8,fc)],8,uc)),t.showValue?(e.openBlock(),e.createElementBlock("div",pc,[e.createElementVNode("span",{class:e.normalizeClass(e.unref(D)("text-xs font-medium",N.value))},e.toDisplayString(t.showRawValue?a.value.toFixed(2):Math.round(l.value)+"%"),3)])):e.createCommentVNode("",!0)],2))}},gc={class:"flex items-center space-x-2"},vc=["aria-checked","disabled"],ho={__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(()=>D(r({size:a.size}),a.disabled&&"cursor-not-allowed opacity-50",a.class)),i=e.computed(()=>D("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(()=>D("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",!a.disabled&&"cursor-pointer")),g=()=>{a.disabled||o("update:modelValue",a.value)};return(b,w)=>(e.openBlock(),e.createElementBlock("div",gc,[e.createElementVNode("button",{type:"button",role:"radio","aria-checked":l.value,disabled:t.disabled,class:e.normalizeClass(s.value),onClick:g},[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(i.value)},null,2)):e.createCommentVNode("",!0)],10,vc),t.label?(e.openBlock(),e.createElementBlock("label",{key:0,class:e.normalizeClass(c.value),onClick:g},e.toDisplayString(t.label),3)):e.createCommentVNode("",!0)]))}},hc=["id","name","value","disabled","required"],yc={key:1,class:"relative"},bc=["id","disabled"],xc={key:0,class:"text-gray-500"},kc={key:1,class:"text-gray-900"},wc={class:"px-3 py-2 border-b border-gray-200"},Cc=["onKeydown"],Bc={key:0,class:"max-h-48 overflow-y-auto"},Vc=["onClick"],Ec={class:"block font-normal truncate"},Nc={key:0,class:"absolute inset-y-0 right-0 flex items-center pr-4 text-blue-600"},Sc={key:1,class:"px-4 py-3 text-sm text-gray-500 text-center"},$c={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),g=e.ref([...a.options]),b=e.ref({}),w=e.computed(()=>a.options.find(C=>C.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"}}}),N=e.computed(()=>D(z({disabled:a.disabled}),"px-3 py-2",a.class)),S=()=>{if(!i.value)return;const C=i.value.getBoundingClientRect();b.value={position:"fixed",top:`${C.bottom+4}px`,left:`${C.left}px`,width:`${C.width}px`,zIndex:9999}},V=()=>{a.disabled||(l.value=!l.value,l.value&&(S(),e.nextTick(()=>{s.value?.focus()})))},k=C=>{o("update:modelValue",C),l.value=!1,r.value="",g.value=[...a.options]},h=C=>{if(C&&(C.stopPropagation(),C.preventDefault()),a.allowCreate&&r.value.trim()){const B=r.value.trim();o("update:modelValue",B),l.value=!1,r.value="",g.value=[...a.options]}},y=()=>{if(!r.value.trim())g.value=[...a.options];else{const C=r.value.toLowerCase();g.value=a.options.filter(B=>B.label.toLowerCase().includes(C))}},v=C=>{C.key==="Escape"?(l.value=!1,r.value="",g.value=[...a.options]):C.key==="Enter"&&a.allowCreate&&r.value.trim()&&g.value.length===0&&(C.preventDefault(),h(C))},E=C=>{if(!i.value)return;const B=C.target,M=c.value&&c.value.contains(B),Y=i.value.contains(B);!M&&!Y&&(l.value=!1,r.value="",g.value=[...a.options])};return e.onMounted(()=>{document.addEventListener("click",E),window.addEventListener("scroll",S,!0),window.addEventListener("resize",S)}),e.onUnmounted(()=>{document.removeEventListener("click",E),window.removeEventListener("scroll",S,!0),window.removeEventListener("resize",S)}),e.watch(()=>a.options,C=>{g.value=[...C]},{immediate:!0}),e.watch(l,C=>{C&&S()}),(C,B)=>!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:N.value},C.$attrs,{onChange:B[0]||(B[0]=M=>C.$emit("update:modelValue",M.target.value))}),[e.renderSlot(C.$slots,"default")],16,hc)):(e.openBlock(),e.createElementBlock("div",yc,[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:V,onKeydown:v},[w.value?(e.openBlock(),e.createElementBlock("div",kc,e.toDisplayString(w.value.label),1)):(e.openBlock(),e.createElementBlock("div",xc,e.toDisplayString(t.placeholder||"Select an option"),1)),B[3]||(B[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,bc),(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",wc,[e.withDirectives(e.createElementVNode("input",{ref_key:"searchInput",ref:s,"onUpdate:modelValue":B[1]||(B[1]=M=>r.value=M),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:y,onKeydown:[v,e.withKeys(e.withModifiers(v,["prevent"]),["enter"])]},null,40,Cc),[[e.vModelText,r.value]])]),g.value.length>0?(e.openBlock(),e.createElementBlock("div",Bc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.value,M=>(e.openBlock(),e.createElementBlock("button",{key:M.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===M.value}]),onClick:e.withModifiers(Y=>k(M.value),["stop"])},[e.createElementVNode("span",Ec,e.toDisplayString(M.label),1),t.modelValue===M.value?(e.openBlock(),e.createElementBlock("span",Nc,[...B[4]||(B[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,Vc))),128))])):a.allowCreate?(e.openBlock(),e.createElementBlock("div",$c,[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(h,["stop"]),onMousedown:B[2]||(B[2]=e.withModifiers(()=>{},["prevent"]))},' Create "'+e.toDisplayString(r.value)+'" ',33)])):(e.openBlock(),e.createElementBlock("div",Sc," No options found "))],4)):e.createCommentVNode("",!0)]))]))}},zc=["aria-checked","disabled"],yo={__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(()=>D(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(g,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,zc))}},bo={__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(()=>D(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"]))}},Dc=["id","value","placeholder","disabled","readonly","required","rows","maxlength","aria-describedby","aria-invalid"],Vt={__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=k=>{l("update:modelValue",k.target.value),o.autoResize&&e.nextTick(()=>V())},c=k=>l("blur",k),g=k=>l("focus",k),b=k=>l("keydown",k),w=e.computed(()=>!!o.error||o.variant==="error"),z=e.computed(()=>o.error?`${s.value}-error`:void 0),N=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"}}),S=e.computed(()=>D(N({size:o.size,variant:o.variant,resize:o.resize}))),V=()=>{if(!r.value||!o.autoResize)return;const k=r.value;k.style.height="auto",k.style.height=`${k.scrollHeight}px`};return e.watch(()=>o.modelValue,()=>{o.autoResize&&e.nextTick(()=>V())},{immediate:!0}),n({focus:()=>r.value?.focus(),blur:()=>r.value?.blur(),select:()=>r.value?.select()}),(k,h)=>(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(S.value),"aria-describedby":z.value,"aria-invalid":w.value,onInput:i,onBlur:c,onFocus:g,onKeydown:b},null,42,Dc))}},ba={__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"}}}),g=e.computed(()=>D(i({placement:n.placement}),n.class)),b=e.computed(()=>c({placement:n.placement})),w=()=>{if(!o.value||!l.value)return;const S=o.value.getBoundingClientRect(),V=l.value.getBoundingClientRect();let k=0,h=0;const y=8;switch(n.placement){case"top":k=S.top-V.height-y,h=S.left+S.width/2-V.width/2;break;case"bottom":k=S.bottom+y,h=S.left+S.width/2-V.width/2;break;case"left":k=S.top+S.height/2-V.height/2,h=S.left-V.width-y;break;case"right":k=S.top+S.height/2-V.height/2,h=S.right+y;break}const v=8;h<v&&(h=v),h+V.width>window.innerWidth-v&&(h=window.innerWidth-V.width-v),k<v&&(k=v),k+V.height>window.innerHeight-v&&(k=window.innerHeight-V.height-v),r.value={top:`${k}px`,left:`${h}px`}},z=()=>{s&&clearTimeout(s),s=setTimeout(async()=>{a.value=!0,await e.nextTick(),w()},n.delay)},N=()=>{s&&clearTimeout(s),a.value=!1};return(S,V)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"triggerRef",ref:o,class:"relative inline-block",onMouseenter:z,onMouseleave:N},[e.renderSlot(S.$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(g.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))}},Tc={key:0,class:"text-red-600 ml-1","aria-hidden":"true"},yt={__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-linear-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]:""),g=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]:""),w=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":""),N=e.computed(()=>n.maxLines?`line-clamp-${n.maxLines}`:""),S=e.computed(()=>{const k={};return n.opacity!==null&&(k.opacity=n.opacity/100),k}),V=e.computed(()=>[o.value,l.value,r.value,s.value,i.value,c.value,g.value,b.value,w.value,z.value,N.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(k,h)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.value),e.mergeProps({class:V.value,style:S.value},k.$attrs),{default:e.withCtx(()=>[e.renderSlot(k.$slots,"default"),t.required?(e.openBlock(),e.createElementBlock("span",Tc,"*")):e.createCommentVNode("",!0)]),_:3},16,["class","style"]))}},Fc={class:"flex items-start gap-3"},Ac={key:0,class:"shrink-0 mt-0.5"},Mc={class:"flex-1 min-w-0"},Lc={key:0,class:"font-medium text-sm mb-1"},_c={key:1,class:"mt-3 flex gap-2"},jc=["aria-label"],xo=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=k=>{o("action",k),k.onClick&&k.onClick()};if(a.autoClose){const k=typeof a.autoClose=="number"?a.autoClose:5e3;setTimeout(r,k)}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"})])}},g={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"})])}},w={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:g,error:b,default:i,danger:b})[a.variant]),N=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"}}),S=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]]),V=e.computed(()=>["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(k,h)=>(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(D)(e.unref(N)({variant:t.variant}),k.$attrs.class)),role:"alert"},[e.createElementVNode("div",Fc,[t.showIcon?(e.openBlock(),e.createElementBlock("div",Ac,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(z.value),{class:e.normalizeClass(S.value)},null,8,["class"]))])):e.createCommentVNode("",!0),e.createElementVNode("div",Mc,[t.title?(e.openBlock(),e.createElementBlock("h4",Lc,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(k.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.message),1)])],2),k.$slots.actions||t.actions.length>0?(e.openBlock(),e.createElementBlock("div",_c,[e.renderSlot(k.$slots,"actions",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.actions,y=>(e.openBlock(),e.createBlock(oe,{key:y.label,variant:y.variant||"outline",size:y.size||"sm",onClick:v=>s(y)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(y.label),1)]),_:2},1032,["variant","size","onClick"]))),128))])])):e.createCommentVNode("",!0)]),t.dismissible?(e.openBlock(),e.createElementBlock("button",{key:1,class:e.normalizeClass(V.value),"aria-label":t.dismissLabel,onClick:r},[e.createVNode(w,{class:"w-4 h-4"})],10,jc)):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0)]),_:3}))}}),Pc=["aria-label"],Oc={class:"flex items-center space-x-1"},ko={__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(()=>D(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",Oc,[(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(L,{key:0,name:t.separator,class:"mx-2 h-4 w-4 text-muted-foreground"},null,8,["name"])):e.createCommentVNode("",!0)]))),128))])],10,Pc))}},Ic=["aria-label"],wo={__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(()=>D(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,Ic))}},Rc={key:0,class:"absolute inset-0 bg-white/60 backdrop-blur-sm flex items-center justify-center z-10","aria-hidden":"true"},Uc={class:"flex items-start justify-between gap-4"},qc={class:"flex-1 min-w-0"},Yc={key:0,class:"shrink-0"},Hc=["src","alt","loading"],Wc={key:5,class:"absolute top-3 right-3"},Gc={class:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-slate-900 text-white"},Kc="w-full h-full object-cover",Xc="font-semibold text-slate-900 line-clamp-2",Jc="text-sm text-slate-600 mt-1 line-clamp-2",Co={__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=N=>{a.clickable&&!a.disabled&&!a.loading&&o("click",N)},r=N=>{a.clickable&&!a.disabled&&!a.loading&&o("click",N)},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}}),g=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"}}}),w=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(N,S)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.as),{class:e.normalizeClass(e.unref(D)(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",Rc,[...S[0]||(S[0]=[e.createElementVNode("div",{class:"animate-spin rounded-full h-8 w-8 border-b-2 border-slate-900"},null,-1)])])):e.createCommentVNode("",!0),N.$slots.header||t.title||t.subtitle||N.$slots.actions?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(D)(e.unref(g)({padding:t.padding,hasBorder:!!(N.$slots.default||N.$slots.footer)})))},[e.renderSlot(N.$slots,"header",{},()=>[e.createElementVNode("div",Uc,[e.createElementVNode("div",qc,[t.title?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.titleTag),{key:0,class:e.normalizeClass(e.unref(D)(Xc,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(Jc)},e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)]),N.$slots.actions?(e.openBlock(),e.createElementBlock("div",Yc,[e.renderSlot(N.$slots,"actions")])):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0),N.$slots.image||t.image?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(e.unref(D)(e.unref(z)({padding:t.padding,hasHeader:!!(N.$slots.header||t.title)})))},[e.renderSlot(N.$slots,"image",{},()=>[t.image?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.image,alt:t.imageAlt,class:e.normalizeClass(e.unref(D)(Kc,i.value)),loading:t.imageLazy?"lazy":"eager"},null,10,Hc)):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0),N.$slots.default?(e.openBlock(),e.createElementBlock("div",{key:3,class:e.normalizeClass(e.unref(D)(e.unref(b)({padding:t.padding})))},[e.renderSlot(N.$slots,"default")],2)):e.createCommentVNode("",!0),N.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:4,class:e.normalizeClass(e.unref(D)(e.unref(w)({padding:t.padding})))},[e.renderSlot(N.$slots,"footer")],2)):e.createCommentVNode("",!0),t.badge?(e.openBlock(),e.createElementBlock("div",Wc,[e.createElementVNode("span",Gc,e.toDisplayString(t.badge),1)])):e.createCommentVNode("",!0)]),_:3},40,["class","disabled","aria-busy","aria-disabled","role","tabindex","onKeydown"]))}},Qc={key:0},Zc={key:1},ed={key:0},Bo=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(D)(e.unref(n)({size:t.size}),o.$attrs.class))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(D)(e.unref(a)({alignment:t.alignment}),"flex flex-col"))},[t.title||o.$slots.title?(e.openBlock(),e.createElementBlock("h2",Qc,[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",Zc,[e.renderSlot(o.$slots,"description",{},()=>[e.createTextVNode(e.toDisplayString(t.subtitle),1)])])):e.createCommentVNode("",!0)],2),o.$slots.actions?(e.openBlock(),e.createElementBlock("div",ed,[e.renderSlot(o.$slots,"actions")])):e.createCommentVNode("",!0)],2))}}),Vo={__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(()=>D(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}},Eo={__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(()=>D(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}},No=Object.assign({inheritAttrs:!1},{__name:"CardContent",setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(D)("p-6 pt-0",n.$attrs.class))},[e.renderSlot(n.$slots,"default")],2))}}),So=Object.assign({inheritAttrs:!1},{__name:"CardTitle",setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("h3",{class:e.normalizeClass(e.unref(D)("text-2xl font-semibold leading-none tracking-tight",n.$attrs.class))},[e.renderSlot(n.$slots,"default")],2))}}),td={class:"relative w-full"},ad={class:"relative"},nd=["id","value","disabled","placeholder","required","aria-describedby"],od={class:"flex items-center justify-between mb-3"},ld={class:"text-sm font-semibold text-slate-900"},rd={class:"grid grid-cols-7 gap-1 mb-1"},sd={class:"grid grid-cols-7 gap-1"},id=["disabled","onClick"],cd={key:0,class:"mt-3 pt-2 border-t border-slate-200"},lt={__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()),g=e.ref(i.getFullYear()),b=e.ref(null),w=e.ref(!1),z=["Su","Mo","Tu","We","Th","Fr","Sa"],N=e.computed(()=>new Date(g.value,c.value).toLocaleString("default",{month:"long"})),S=e.computed(()=>new Date(g.value,c.value+1,0).getDate()),V=e.computed(()=>new Date(g.value,c.value,1).getDay()),k=e.computed(()=>{const P=new Date(g.value,c.value,0).getDate(),W=V.value;return Array.from({length:W},(X,R)=>P-W+R+1)}),h=e.computed(()=>{const P=k.value.length+S.value,W=P%7===0?0:7-P%7;return Array.from({length:W},(X,R)=>R+1)}),y=e.computed(()=>b.value?v(b.value):"");function v(P){if(!P)return"";const W=new Date(P),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 E(P){if(!P)return null;if(P instanceof Date)return P;if(typeof P=="string"){const X=P.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(P);return isNaN(W.getTime())?null:W}function C(P){return i.getDate()===P&&i.getMonth()===c.value&&i.getFullYear()===g.value}function B(P){if(!b.value)return!1;const W=new Date(b.value);return W.getDate()===P&&W.getMonth()===c.value&&W.getFullYear()===g.value}function M(P){const W=new Date(g.value,c.value,P);if(a.min){const X=E(a.min);if(X&&W<X)return!0}if(a.max){const X=E(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=E(X);return R&&R.getTime()===W.getTime()})}return!!(a.customValidation&&a.customValidation(W))}function Y(P){if(!P)return w.value=!1,o("validation-error",null),!0;if(a.customValidation){const W=a.customValidation(P);if(W)return w.value=!0,o("validation-error",W),!1}return w.value=!1,o("validation-error",null),!0}async function U(){await e.nextTick();const P=document.getElementById(a.id);if(!P||!r.value)return;const W=P.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 T(){a.disabled||(l.value=!l.value,l.value&&await U())}function _(){l.value=!1}function f(){c.value===0?(c.value=11,g.value--):c.value--}function x(){c.value===11?(c.value=0,g.value++):c.value++}function m(P){if(M(P))return;const W=new Date(g.value,c.value,P);if(!Y(W))return;b.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 $(){c.value=i.getMonth(),g.value=i.getFullYear(),m(i.getDate())}function u(){b.value=null,w.value=!1,o("update:modelValue",""),o("validation-error",null)}e.watch(()=>a.modelValue,P=>{if(P){const W=E(P);W&&(b.value=W,c.value=W.getMonth(),g.value=W.getFullYear(),Y(W))}else b.value=null,w.value=!1},{immediate:!0});function p(){l.value&&U()}function d(P){P.key==="Escape"&&l.value&&_()}return e.onMounted(()=>{document.addEventListener("keydown",d),window.addEventListener("resize",p)}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",d),window.removeEventListener("resize",p)}),(P,W)=>(e.openBlock(),e.createElementBlock("div",td,[e.createElementVNode("div",ad,[e.createElementVNode("input",{id:t.id,type:"text",value:y.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",w.value?"border-red-500 focus:ring-red-500 focus:border-red-500":"border-slate-300"]),onClick:T},null,10,nd),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&&y.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(u,["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",od,[e.createElementVNode("button",{type:"button",class:"p-1.5 rounded hover:bg-slate-100 transition-colors","aria-label":"Previous Month",onClick:f},[...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",ld,e.toDisplayString(N.value)+" "+e.toDisplayString(g.value),1),e.createElementVNode("button",{type:"button",class:"p-1.5 rounded hover:bg-slate-100 transition-colors","aria-label":"Next Month",onClick:x},[...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",rd,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(z,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",sd,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.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(S.value,X=>(e.openBlock(),e.createElementBlock("button",{key:X,type:"button",disabled:M(X),class:e.normalizeClass(["w-8 h-8 rounded text-xs font-medium transition-colors",C(X)&&!B(X)?"bg-blue-50 text-blue-600 ring-1 ring-blue-200":"",B(X)?"bg-blue-500 text-white hover:bg-blue-600":"text-slate-700 hover:bg-slate-100",M(X)?"text-slate-300 cursor-not-allowed hover:bg-transparent line-through":"cursor-pointer"]),onClick:R=>m(X)},e.toDisplayString(X),11,id))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.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",cd,[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:$}," 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)]))]))}},dd=["aria-expanded"],$o={__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(()=>D(l({variant:n.variant}),"h-10 px-4 py-2")),i=e.computed(()=>D(r({placement:n.placement}))),c=()=>{a.value=!a.value},g=b=>{o.value&&!o.value.contains(b.target)&&(a.value=!1)};return e.onMounted(()=>{document.addEventListener("click",g)}),e.onUnmounted(()=>{document.removeEventListener("click",g)}),(b,w)=>(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(L,{name:"chevron-down",class:"ml-2 h-4 w-4"})])],10,dd),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))}},ud={key:1,class:"ml-auto text-xs tracking-widest opacity-60"},zo={__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(()=>D(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(L,{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",ud,e.toDisplayString(t.shortcut),1)):e.createCommentVNode("",!0)]),_:3},8,["href","class","disabled"]))}},md={class:"w-full"},fd=["multiple","accept"],pd={class:"flex items-center justify-center px-4 py-3"},gd={class:"bg-gray-100 rounded-full p-2 mr-3"},vd={class:"flex flex-col"},hd={class:"text-xs text-gray-500"},yd={key:0,class:"ml-2"},bd={key:1,class:"mt-4 space-y-2"},xd={class:"flex items-center space-x-3"},kd={class:"flex flex-col"},wd={class:"text-sm font-medium text-gray-900"},Cd={class:"text-xs text-gray-500"},Bd={class:"flex items-center space-x-3"},Vd={class:"bg-green-100 rounded-md p-2"},Ed={class:"flex flex-col"},Nd={class:"text-sm font-medium text-gray-900"},Sd={class:"text-xs text-gray-500"},$d=["onClick"],et={__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=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"}}}),g=e.computed(()=>D(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=v=>{v.preventDefault(),r.value=!1;const E=Array.from(v.dataTransfer.files);k(E)},w=v=>{v.preventDefault()},z=v=>{v.preventDefault(),r.value=!0},N=v=>{v.preventDefault(),r.value=!1},S=()=>{s.value?.click()},V=v=>{const E=Array.from(v.target.files);k(E)},k=v=>{const E=v.filter(B=>!(a.maxSize&&B.size>a.maxSize));if(E.length===0)return;if(a.maxFiles){const B=l.value.length+i.value.length;if(B>=a.maxFiles)return;const M=a.maxFiles-B;E.splice(M)}const C=E.map(B=>e.reactive({file:B,progress:0,uploading:!0}));i.value.push(...C),C.forEach(B=>{const M=2e3+Math.random()*2e3,Y=50,T=100/(M/Y),_=setInterval(()=>{B.progress+=T,B.progress>=100&&(B.progress=100,B.uploading=!1,clearInterval(_),a.multiple?(l.value.push(B.file),o("files-selected",l.value)):(l.value=[B.file],o("files-selected",B.file)),i.value.splice(i.value.indexOf(B),1))},Y)})},h=v=>{l.value.splice(v,1),a.multiple?o("file-removed",l.value):o("file-removed",l.value.length>0?l.value[0]:null)},y=v=>{if(v===0)return"0 Bytes";const E=1024,C=["Bytes","KB","MB","GB"],B=Math.floor(Math.log(v)/Math.log(E));return parseFloat((v/Math.pow(E,B)).toFixed(2))+" "+C[B]};return(v,E)=>(e.openBlock(),e.createElementBlock("div",md,[!l.value.length||t.multiple?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(g.value),onDrop:b,onDragover:w,onDragenter:z,onDragleave:N,onClick:S},[e.createElementVNode("input",{ref_key:"fileInput",ref:s,type:"file",multiple:t.multiple,accept:t.accept,class:"hidden",onChange:V},null,40,fd),e.createElementVNode("div",pd,[e.createElementVNode("div",gd,[e.createVNode(L,{icon:"upload",class:"h-6 w-6 text-gray-600"})]),e.createElementVNode("div",vd,[E[0]||(E[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",hd,[e.createTextVNode(e.toDisplayString(t.maxSize?`Up to ${y(t.maxSize)}`:"No size limit")+" ",1),t.accept?(e.openBlock(),e.createElementBlock("span",yd,"• "+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",bd,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,(C,B)=>(e.openBlock(),e.createElementBlock("div",{key:`uploading-${B}`,class:"flex items-center justify-between p-3 bg-white border border-gray-200 rounded-lg shadow-sm"},[e.createElementVNode("div",xd,[e.createVNode(ya,{value:C.progress,max:100,size:"sm",variant:"default","dynamic-color":!0,class:"shrink-0"},null,8,["value"]),e.createElementVNode("div",kd,[e.createElementVNode("span",wd,e.toDisplayString(C.file.name),1),e.createElementVNode("span",Cd,"Uploading... "+e.toDisplayString(Math.round(C.progress))+"%",1)])])]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,(C,B)=>(e.openBlock(),e.createElementBlock("div",{key:`uploaded-${B}`,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",Bd,[e.createElementVNode("div",Vd,[e.createVNode(L,{icon:"file",class:"h-5 w-5 text-green-600"})]),e.createElementVNode("div",Ed,[e.createElementVNode("span",Nd,e.toDisplayString(C.name),1),e.createElementVNode("span",Sd,e.toDisplayString(y(C.size)),1)])]),e.createElementVNode("button",{class:"text-gray-400 hover:text-red-500 hover:bg-red-50 rounded-full p-1 transition-colors",onClick:M=>h(B)},[e.createVNode(L,{icon:"x",class:"h-4 w-4"})],8,$d)]))),128))])):e.createCommentVNode("",!0)]))}},zd=["for"],Dd={key:0,class:"text-red-500 ml-1","aria-label":"required"},Td={class:"relative"},Fd=["aria-label"],Ad=["id"],Md=["id"],Et={__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},g=e.computed(()=>{const V=[];return a.error?V.push(`${r.value}-error`):a.helpText&&V.push(`${r.value}-help`),V.length>0?V.join(" "):void 0}),b=O.cva("",{variants:{size:{sm:"space-y-1",md:"space-y-2",lg:"space-y-3"}},defaultVariants:{size:"md"}}),w=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"}}),N=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"}}),S=O.cva("text-slate-500",{variants:{size:{sm:"text-xs",md:"text-sm",lg:"text-sm"}},defaultVariants:{size:"md"}});return(V,k)=>{const h=e.resolveComponent("font-awesome-icon");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(D)(e.unref(b)({size:t.size}),V.$attrs.class))},[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:r.value,class:e.normalizeClass(e.unref(D)(e.unref(w)({size:t.size})))},[e.createTextVNode(e.toDisplayString(t.label)+" ",1),t.required?(e.openBlock(),e.createElementBlock("span",Dd,"*")):e.createCommentVNode("",!0)],10,zd)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:e.normalizeClass(e.unref(D)(e.unref(z)({size:t.size})))},e.toDisplayString(t.description),3)):e.createCommentVNode("",!0),e.createElementVNode("div",Td,[t.type==="date"?(e.openBlock(),e.createBlock(lt,{key:0,id:r.value,"model-value":t.modelValue,disabled:!1,required:t.required,class:e.normalizeClass(s.value?"border-red-500":""),"onUpdate:modelValue":k[0]||(k[0]=y=>o("update:modelValue",y))},null,8,["id","model-value","required","class"])):e.renderSlot(V.$slots,"default",{key:1,fieldId:r.value,hasError:s.value,ariaDescribedBy:g.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(h,{icon:i.value?"eye-slash":"eye",class:"w-4 h-4"},null,8,["icon"])],8,Fd)):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(D)(e.unref(N)({size:t.size,intent:"error"}))),role:"alert","aria-live":"polite"},[e.createVNode(h,{icon:"exclamation-triangle",class:"w-4 h-4 shrink-0 mt-0.5"}),e.createElementVNode("span",null,e.toDisplayString(t.error),1)],10,Ad)):e.createCommentVNode("",!0)]),_:1}),t.helpText&&!s.value?(e.openBlock(),e.createElementBlock("p",{key:2,id:`${r.value}-help`,class:e.normalizeClass(e.unref(D)(e.unref(S)({size:t.size})))},e.toDisplayString(t.helpText),11,Md)):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(D)(e.unref(N)({size:t.size,intent:"success"})))},[e.createVNode(h,{icon:"check",class:"w-4 h-4 shrink-0 mt-0.5"}),e.createElementVNode("span",null,e.toDisplayString(t.success),1)],2)):e.createCommentVNode("",!0)]),_:1})],2)}}},Ld={key:0,class:"flex items-center px-3 bg-muted border border-r-0 rounded-l-md"},_d={key:1,class:"flex items-center px-3 bg-muted border border-l-0 rounded-r-md"},Do={__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(()=>D(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",Ld,[e.renderSlot(l.$slots,"prefix")])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default"),l.$slots.suffix?(e.openBlock(),e.createElementBlock("div",_d,[e.renderSlot(l.$slots,"suffix")])):e.createCommentVNode("",!0)],2))}},jd=["role"],Pd={key:0,class:"shrink-0"},Od={class:"flex-1 min-w-0"},Id={key:0,class:"text-sm font-medium text-foreground"},Rd={key:1,class:"text-sm text-muted-foreground"},Ud={key:1,class:"shrink-0"},To={__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(()=>D(l({variant:a.variant}))),i=e.computed(()=>D(r({variant:a.variant}))),c=g=>{o("click",g)};return(g,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(()=>[g.$slots.icon||t.icon?(e.openBlock(),e.createElementBlock("div",Pd,[e.renderSlot(g.$slots,"icon",{},()=>[t.icon?(e.openBlock(),e.createBlock(L,{key:0,name:t.icon,class:"h-5 w-5"},null,8,["name"])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Od,[t.title?(e.openBlock(),e.createElementBlock("div",Id,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("div",Rd,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0),e.renderSlot(g.$slots,"default")]),g.$slots.action?(e.openBlock(),e.createElementBlock("div",Ud,[e.renderSlot(g.$slots,"action")])):e.createCommentVNode("",!0)]),_:3},8,["href","class"]))],10,jd))}},qd={key:1,class:"ml-auto text-xs tracking-widest opacity-60"},Fo={__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(()=>D(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(L,{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",qd,e.toDisplayString(t.shortcut),1)):e.createCommentVNode("",!0),t.hasSubmenu?(e.openBlock(),e.createBlock(L,{key:2,name:"chevron-right",class:"ml-auto h-4 w-4"})):e.createCommentVNode("",!0)]),_:3},8,["href","class","disabled"]))}},Ue={__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=g=>{g.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,g)=>(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(D)(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(L,{icon:"x",class:"h-4 w-4"}),g[0]||(g[0]=e.createElementVNode("span",{class:"sr-only"},"Close",-1))])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default")],6)],2)):e.createCommentVNode("",!0)]),_:3})]))}},Yd={class:"flex flex-col space-y-1.5 text-center sm:text-left"},Hd={key:0,class:"text-lg font-semibold leading-none tracking-tight"},Wd={key:1,class:"text-sm text-muted-foreground"},Ao={__name:"ModalHeader",props:{title:String,description:String},setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",Yd,[t.title?(e.openBlock(),e.createElementBlock("h2",Hd,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",Wd,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"default")]))}},Mo={__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(()=>D(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}},Lo={__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(()=>D(a({variant:n.variant})));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}},Gd=["aria-live"],Kd={class:"flex items-start space-x-3"},Xd={key:0,class:"shrink-0"},Jd={class:"flex-1 min-w-0"},Qd={key:0,class:"text-sm font-medium"},_o={__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(()=>D(r({variant:a.variant}),"p-4")),g=e.computed(()=>s[a.variant]),b=e.computed(()=>i({variant:a.variant})),w=()=>{l.value=!1,o("dismiss")};return e.onMounted(()=>{a.autoClose>0&&setTimeout(()=>{w()},a.autoClose)}),(z,N)=>(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",Kd,[t.showIcon?(e.openBlock(),e.createElementBlock("div",Xd,[e.createVNode(L,{name:g.value,class:e.normalizeClass(b.value)},null,8,["name","class"])])):e.createCommentVNode("",!0),e.createElementVNode("div",Jd,[t.title?(e.openBlock(),e.createElementBlock("div",Qd,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:"shrink-0 rounded-md p-1.5 hover:bg-black/5 focus:outline-none focus:ring-2 focus:ring-offset-2",onClick:w},[e.createVNode(L,{name:"x",class:"h-4 w-4"})])):e.createCommentVNode("",!0)])],10,Gd)):e.createCommentVNode("",!0)]),_:3}))}},tt=e.ref([]);let Zd=0;const eu={duration:3e3,position:"top-center",dismissible:!0,closeButton:!1},tu=()=>`toast-${++Zd}-${Date.now()}`,Ce=(t,n={})=>{const a=tu(),o={id:a,message:t,...eu,...n,createdAt:Date.now()};return tt.value.push(e.markRaw(o)),o.duration&&o.duration>0&&setTimeout(()=>{Je(a)},o.duration),a},Je=t=>{const n=tt.value.findIndex(a=>a.id===t);n>-1&&tt.value.splice(n,1)},jo=()=>{tt.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=>{Je(s);const c=typeof o=="function"?o(i):o;return Ce(c,{...r,variant:"success"}),i}).catch(i=>{Je(s);const c=typeof l=="function"?l(i):l;throw Ce(c,{...r,variant:"error"}),i})},dismiss:Je,dismissAll:jo,custom:(t,n={})=>Ce("",{...n,component:e.markRaw(t)})}),Po=()=>({toasts:tt,dismiss:Je,dismissAll:jo}),au=["aria-live"],nu={class:"flex-1 grid gap-1"},ou={key:0,class:"text-lg font-extrabold"},lu={key:1,class:"text-md opacity-90"},ru={key:2,class:"text-md opacity-90"},su=["onClick"],iu=["onClick"],Oo={__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}=Po(),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(()=>D(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=S=>D(s({variant:S.variant})),c={default:"bell",info:"info",success:"check-circle",warning:"triangle-exclamation",error:"circle-exclamation",loading:"loader"},g={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=S=>S.icon||c[S.variant]||c.default,w=S=>{const V=g[S.variant]||g.default;return S.variant==="loading"?`${V} animate-spin`:V},z=S=>S.icon!==!1,N=S=>S.dismissible!==!1&&(S.closeButton||n.closeButton||S.dismissible);return(S,V)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(D)(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),k=>(e.openBlock(),e.createElementBlock("div",{key:k.id,class:e.normalizeClass([i(k),"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":k.variant==="error"?"assertive":"polite"},[z(k)?(e.openBlock(),e.createBlock(L,{key:0,icon:b(k),class:e.normalizeClass([w(k),"h-4 w-4 shrink-0"])},null,8,["icon","class"])):e.createCommentVNode("",!0),e.createElementVNode("div",nu,[k.title?(e.openBlock(),e.createElementBlock("div",ou,e.toDisplayString(k.title),1)):e.createCommentVNode("",!0),k.message?(e.openBlock(),e.createElementBlock("div",lu,e.toDisplayString(k.message),1)):e.createCommentVNode("",!0),k.description?(e.openBlock(),e.createElementBlock("div",ru,e.toDisplayString(k.description),1)):e.createCommentVNode("",!0),k.component?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(k.component),e.mergeProps({key:3,ref_for:!0},k.componentProps),null,16)):e.createCommentVNode("",!0)]),k.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:k.action.onClick},e.toDisplayString(k.action.label),9,su)):e.createCommentVNode("",!0),N(k)?(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:h=>e.unref(o)(k.id)},[e.createVNode(L,{icon:"x",class:"h-4 w-4"})],8,iu)):e.createCommentVNode("",!0)],10,au))),128))]),_:1})],2)]))}},cu={class:"relative"},du={class:"absolute left-3 top-1/2 transform -translate-y-1/2 pointer-events-none"},uu=["value","placeholder","disabled"],mu={key:0,class:"absolute right-3 top-1/2 transform -translate-y-1/2"},fu=["aria-label"],pu={key:1,class:"animate-spin"},gu={key:0,class:"max-h-64 overflow-y-auto"},vu=["onClick","onMouseenter"],hu={class:"flex-1 text-left"},yu={class:"font-medium text-slate-900"},bu={key:0,class:"text-sm text-slate-500 truncate"},xu={key:1,class:"text-xs text-slate-400 ml-3"},ku={key:1,class:"px-4 py-3 text-sm text-slate-500 text-center"},wu={key:2,class:"border-t border-slate-200 p-2"},Io={__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),g=e.ref(!1),b=e.ref(-1),w=e.ref(null),z=T=>{const _=T.target.value;s("update:modelValue",_),w.value&&clearTimeout(w.value),w.value=setTimeout(()=>{_.length>=r.minLength?(s("search",_),g.value=!0):g.value=!1},r.debounce)},N=T=>{s("focus",T),r.modelValue.length>=r.minLength&&(g.value=!0)},S=T=>{s("blur",T),setTimeout(()=>{g.value=!1,b.value=-1},150)},V=()=>{s("update:modelValue",""),s("clear"),g.value=!1,c.value?.focus()},k=T=>{s("select",T),g.value=!1,b.value=-1},h=T=>{if(!(!g.value||r.results.length===0))switch(T.key){case"ArrowDown":T.preventDefault(),b.value=Math.min(b.value+1,r.results.length-1);break;case"ArrowUp":T.preventDefault(),b.value=Math.max(b.value-1,-1);break;case"Enter":T.preventDefault(),b.value>=0&&k(r.results[b.value]);break;case"Escape":T.preventDefault(),g.value=!1,b.value=-1;break}},y=T=>{if(!r.highlightMatches||!r.modelValue||!T)return T;const _=new RegExp(`(${r.modelValue})`,"gi");return T.replace(_,"$1")},v=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"}}),E=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"}}),C=e.computed(()=>D(v({size:r.size}))),B=e.computed(()=>D(E({size:r.size}))),M=e.computed(()=>D("absolute z-50 w-full mt-1 bg-white rounded-lg shadow-lg border border-slate-200 max-h-96 overflow-hidden")),Y=T=>D("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===T}),U=T=>{i.value&&!i.value.contains(T.target)&&(g.value=!1,b.value=-1)};return e.onMounted(()=>document.addEventListener("click",U)),e.onUnmounted(()=>{document.removeEventListener("click",U),w.value&&clearTimeout(w.value)}),e.watch(()=>r.results,()=>b.value=-1),(T,_)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"searchRef",ref:i,class:"relative"},[e.createElementVNode("div",cu,[e.createElementVNode("div",du,[e.createVNode(a,{class:e.normalizeClass(B.value)},null,8,["class"])]),e.createElementVNode("input",{ref_key:"inputRef",ref:c,value:t.modelValue,placeholder:t.placeholder,disabled:t.disabled,class:e.normalizeClass(C.value),onInput:z,onFocus:N,onBlur:S,onKeydown:h},null,42,uu),t.modelValue||t.loading?(e.openBlock(),e.createElementBlock("div",mu,[!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:V},[e.createVNode(o,{class:"w-4 h-4"})],8,fu)):t.loading?(e.openBlock(),e.createElementBlock("div",pu,[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(()=>[g.value&&(t.results.length>0||t.showNoResults)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(M.value)},[t.results.length>0?(e.openBlock(),e.createElementBlock("div",gu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.results,(f,x)=>(e.openBlock(),e.createElementBlock("button",{key:f.id||x,class:e.normalizeClass(Y(x)),onClick:m=>k(f),onMouseenter:m=>b.value=x},[f.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(f.icon),{key:0,class:"w-4 h-4 mr-3 shrink-0"})):e.createCommentVNode("",!0),e.createElementVNode("div",hu,[e.createElementVNode("div",yu,e.toDisplayString(y(f.title)),1),f.description?(e.openBlock(),e.createElementBlock("div",bu,e.toDisplayString(y(f.description)),1)):e.createCommentVNode("",!0)]),f.category?(e.openBlock(),e.createElementBlock("div",xu,e.toDisplayString(f.category),1)):e.createCommentVNode("",!0)],42,vu))),128))])):t.showNoResults?(e.openBlock(),e.createElementBlock("div",ku,e.toDisplayString(t.noResultsText),1)):e.createCommentVNode("",!0),T.$slots.footer?(e.openBlock(),e.createElementBlock("div",wu,[e.renderSlot(T.$slots,"footer")])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0)]),_:3})],512))}},Cu={class:"w-full"},Bu=["min","max","step","value"],Vu={class:"flex justify-between text-xs text-slate-500 mt-1"},Nt={__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",Cu,[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,Bu),e.createElementVNode("div",Vu,[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)])]))}},Eu={class:"flex items-center space-x-4"},Ro={__name:"Stepper",setup(t){return(n,a)=>(e.openBlock(),e.createElementBlock("div",Eu,[e.renderSlot(n.$slots,"default")]))}},Nu={class:"flex items-center"},Su={class:"ml-2"},$u={class:"font-medium"},zu={key:0,class:"text-sm text-slate-400"},Uo={__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",Nu,[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",Su,[e.createElementVNode("div",$u,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("div",zu,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)])]))}},Du={class:"w-full"},Tu={class:"flex space-x-1 border-b border-slate-200",role:"tablist"},Fu=["id","disabled","aria-selected","aria-controls","onClick"],Au={class:"mt-4"},qo={__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,g)=>(e.openBlock(),e.createElementBlock("div",Du,[e.createElementVNode("div",Tu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,(b,w)=>(e.openBlock(),e.createElementBlock("button",{id:`tab-${w}`,key:w,disabled:a.loading,class:e.normalizeClass(e.unref(D)(e.unref(o)({size:a.size,variant:a.variant}),l.value===w?"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===w,"aria-controls":`panel-${w}`,role:"tab",onClick:z=>!a.loading&&s(w)},e.toDisplayString(b.label),11,Fu))),128))]),e.createElementVNode("div",Au,[e.renderSlot(c.$slots,"default")])]))}},Mu=["id","aria-labelledby"],Lu={key:0,class:"flex items-center justify-center p-8"},Yo={__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",Lu,[e.createVNode(Bt,{size:"lg",label:`Loading ${n.label}`},null,8,["label"])])):e.renderSlot(r.$slots,"default",{key:1})],8,Mu)),[[e.vShow,l.value]])}},_u=["id","aria-expanded","aria-controls","onClick"],ju={class:"flex items-center flex-1 min-w-0"},Pu={key:0},Ou=["id","aria-labelledby"],Iu={key:0},Ho={__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=y=>{if(!(o.disabled||o.items[y]?.disabled)){if(o.multiple){const v=r.value.indexOf(y);v>-1?r.value.splice(v,1):r.value.push(y),l("update:modelValue",[...r.value])}else{const v=r.value.includes(y)?null:y;r.value=v!==null?[v]:[],l("update:modelValue",v)}l("change",{index:y,expanded:r.value.includes(y)})}},i=y=>r.value.includes(y),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"}}}),g=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-linear-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"}}}),w=O.cva("ml-4 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"}}}),N=e.computed(()=>D(c({variant:o.variant}))),S=e.computed(()=>D(g({variant:o.variant}))),V=y=>D(b({variant:o.variant,size:o.size}),i(y)&&o.variant==="bordered"&&"bg-blue-50/30 border-blue-300",i(y)&&o.variant==="filled"&&"bg-white",i(y)&&o.variant==="default"&&"bg-slate-50",(o.disabled||o.items[y]?.disabled)&&"cursor-not-allowed opacity-50"),k=y=>D(w({expanded:i(y)})),h=e.computed(()=>D(z({size:o.size})));return e.watch(()=>o.modelValue,y=>{o.multiple?r.value=Array.isArray(y)?[...y]:[]:r.value=typeof y=="number"?[y]:[]}),(y,v)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(N.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(E,C)=>(e.openBlock(),e.createElementBlock("div",{key:E.id||C,class:e.normalizeClass(S.value)},[e.createElementVNode("button",{id:`header-${E.id||C}`,class:e.normalizeClass(V(C)),"aria-expanded":i(C),"aria-controls":`panel-${E.id||C}`,onClick:B=>s(C)},[e.createElementVNode("div",ju,[e.renderSlot(y.$slots,`header-${C}`,{item:E,index:C,isExpanded:i(C)},()=>[E.title?(e.openBlock(),e.createElementBlock("div",Pu,e.toDisplayString(E.title),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",{class:e.normalizeClass(k(C))},[e.createVNode(a,{class:"w-5 h-5 transition-transform duration-200"})],2)],10,_u),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(C)?(e.openBlock(),e.createElementBlock("div",{key:0,id:`panel-${E.id||C}`,class:e.normalizeClass(h.value),"aria-labelledby":`header-${E.id||C}`,role:"region"},[e.renderSlot(y.$slots,`content-${C}`,{item:E,index:C},()=>[e.renderSlot(y.$slots,"content",{item:E,index:C},()=>[E.content?(e.openBlock(),e.createElementBlock("div",Iu,e.toDisplayString(E.content),1)):e.createCommentVNode("",!0)])])],10,Ou)):e.createCommentVNode("",!0)]),_:2},1024)],2))),128))],2))}},Wo={__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(()=>D(r({variant:a.variant}))),g=e.computed(()=>D(s({size:a.size}))),b=e.computed(()=>D(i({size:a.size})));return(w,z)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(c.value)},[e.createVNode(oe,{class:e.normalizeClass(g.value),"aria-expanded":o.value,onClick:l},{default:e.withCtx(()=>[e.renderSlot(w.$slots,"header",{isOpen:o.value}),e.createVNode(n,{class:e.normalizeClass(e.unref(D)("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(w.$slots,"content",{isOpen:o.value})],2)):e.createCommentVNode("",!0)]),_:3})],2))}},Ru={class:"relative w-full"},Uu={class:"relative"},qu=["id","value","disabled","placeholder","required","aria-describedby"],Yu={class:"flex items-center justify-between mb-3"},Hu={class:"text-sm font-medium"},Wu={class:"grid grid-cols-7 gap-1 mb-2"},Gu={class:"grid grid-cols-7 gap-1"},Ku=["disabled","onClick"],Xu={key:0,class:"mt-4 pt-3 border-t border-slate-200"},Go={__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),g=["Su","Mo","Tu","We","Th","Fr","Sa"],b=e.computed(()=>new Date(i.value,s.value).toLocaleString("default",{month:"long"})),w=e.computed(()=>new Date(i.value,s.value+1,0).getDate()),z=e.computed(()=>new Date(i.value,s.value,1).getDay()),N=e.computed(()=>{const f=new Date(i.value,s.value,0).getDate(),x=z.value;return Array.from({length:x},(m,$)=>f-x+$+1)}),S=e.computed(()=>{const f=N.value.length+w.value,x=f%7===0?0:7-f%7;return Array.from({length:x},(m,$)=>$+1)}),V=e.computed(()=>c.value?k(c.value):"");function k(f){if(!f)return"";const x=new Date(f),m=String(x.getMonth()+1).padStart(2,"0"),$=String(x.getDate()).padStart(2,"0"),u=x.getFullYear();return a.format.replace("MM",m).replace("DD",$).replace("YYYY",u)}function h(f){if(!f)return null;if(f instanceof Date)return f;const x=new Date(f);return isNaN(x.getTime())?null:x}function y(f){if(!c.value)return!1;const x=new Date(c.value);return x.getDate()===f&&x.getMonth()===s.value&&x.getFullYear()===i.value}function v(f){const x=new Date(i.value,s.value,f);if(a.min){const m=h(a.min);if(m&&x<m)return!0}if(a.max){const m=h(a.max);if(m&&x>m)return!0}return!1}function E(){a.disabled||(l.value=!l.value)}function C(){l.value=!1}function B(){s.value===0?(s.value=11,i.value--):s.value--}function M(){s.value===11?(s.value=0,i.value++):s.value++}function Y(f){if(v(f))return;const x=new Date(i.value,s.value,f);c.value=x,o("update:modelValue",x.toISOString().split("T")[0]),l.value=!1}function U(){s.value=r.getMonth(),i.value=r.getFullYear(),Y(r.getDate())}function T(){c.value=null,o("update:modelValue","")}e.watch(()=>a.modelValue,f=>{if(f){const x=h(f);x&&(c.value=x,s.value=x.getMonth(),i.value=x.getFullYear())}else c.value=null},{immediate:!0});function _(f){f.key==="Escape"&&l.value&&C()}return e.onMounted(()=>{document.addEventListener("keydown",_)}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",_)}),(f,x)=>(e.openBlock(),e.createElementBlock("div",Ru,[e.createElementVNode("div",Uu,[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:"w-full px-3 py-2 pr-10 border border-slate-300 rounded-md bg-white text-slate-900 placeholder-slate-400 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500 cursor-pointer disabled:bg-slate-50 disabled:text-slate-500 disabled:cursor-not-allowed",onClick:E},null,8,qu),x[2]||(x[2]=e.createElementVNode("div",{class:"absolute right-3 top-1/2 -translate-y-1/2 pointer-events-none"},[e.createElementVNode("svg",{class:"w-5 h-5 text-slate-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"})])],-1)),t.clearable&&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","aria-label":"Clear date",onClick:e.withModifiers(T,["stop"])},[...x[1]||(x[1]=[e.createElementVNode("svg",{class:"w-4 h-4 text-slate-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"})],-1)])])):e.createCommentVNode("",!0)]),e.createVNode(e.Transition,{"enter-active-class":"transition ease-out duration-100","enter-from-class":"transform opacity-0 scale-95","enter-to-class":"transform opacity-100 scale-100","leave-active-class":"transition ease-in duration-75","leave-from-class":"transform opacity-100 scale-100","leave-to-class":"transform opacity-0 scale-95"},{default:e.withCtx(()=>[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:x[0]||(x[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Yu,[e.createElementVNode("button",{type:"button",class:"p-1 hover:bg-gray-100 rounded","aria-label":"Previous Month",onClick:B},[...x[3]||(x[3]=[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 18l-6-6 6-6"})],-1)])]),e.createElementVNode("div",Hu,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:M},[...x[4]||(x[4]=[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 18l6-6-6-6"})],-1)])])]),e.createElementVNode("div",Wu,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(g,m=>e.createElementVNode("div",{key:m,class:"text-center text-xs font-medium text-slate-600 py-1"},e.toDisplayString(m),1)),64))]),e.createElementVNode("div",Gu,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.value,(m,$)=>(e.openBlock(),e.createElementBlock("div",{key:"prev-"+$,class:"text-center text-sm text-slate-300 py-2"},e.toDisplayString(m),1))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value,m=>(e.openBlock(),e.createElementBlock("button",{key:m,type:"button",disabled:v(m),class:e.normalizeClass(["w-8 h-8 text-sm rounded flex items-center justify-center",y(m)?"bg-blue-500 text-white":"hover:bg-gray-100",v(m)?"text-gray-300 cursor-not-allowed":""]),onClick:$=>Y(m)},e.toDisplayString(m),11,Ku))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(S.value,(m,$)=>(e.openBlock(),e.createElementBlock("div",{key:"next-"+$,class:"text-center text-sm text-slate-300 py-2"},e.toDisplayString(m),1))),128))]),t.showToday?(e.openBlock(),e.createElementBlock("div",Xu,[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:C})):e.createCommentVNode("",!0)]))}},Ju={class:"flex items-start justify-between"},Qu={class:"flex-1 min-w-0"},Zu={key:0,class:"shrink-0 ml-4"},em="text-lg font-semibold text-slate-900 truncate",tm="text-sm text-slate-600 mt-1",Ko={__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(D)(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(D)(e.unref(a)({padding:t.padding})))},[e.renderSlot(i.$slots,"header",{},()=>[e.createElementVNode("div",Ju,[e.createElementVNode("div",Qu,[t.title?(e.openBlock(),e.createElementBlock("h3",{key:0,class:e.normalizeClass(em)},e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:e.normalizeClass(tm)},e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)]),i.$slots.actions?(e.openBlock(),e.createElementBlock("div",Zu,[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(D)(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(D)(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(D)(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(D)(e.unref(s)({padding:t.padding})))},[e.renderSlot(i.$slots,"footer")],2)):e.createCommentVNode("",!0)],2))}},am={class:"w-full h-full relative"},nm=["width","height","viewBox"],om={key:0},lm=["x1","y1","x2","y2","stroke"],rm=["id"],sm=["stop-color"],im=["stop-color"],cm=["x","y","width","height","fill","onMouseenter","onClick"],dm=["to"],um=["from","to"],mm={key:1},fm=["x","y"],pm={key:2},gm=["x","y"],vm={key:3},hm=["x","y"],ym={key:4},bm=["x"],xm=["x1","y1","x2","y2"],km=["x1","y1","x2","y2"],wm={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"},Bm={class:"font-semibold text-sm"},Vm={class:"ml-5"},Em={class:"text-2xl font-bold"},xa={__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},xAxisLabel:{type:String,default:""},yAxisLabel:{type:String,default:""}},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.height-a.padding.top-a.padding.bottom),i=e.computed(()=>a.width-a.padding.left-a.padding.right),c=e.computed(()=>i.value/a.data.length*.7),g=e.computed(()=>i.value/a.data.length*.3),b=e.computed(()=>{const v=[];for(let C=0;C<=5;C++){const B=a.padding.top+s.value/5*C;v.push(B)}return v}),w=v=>a.padding.left+v*(c.value+g.value)+g.value/2,z=v=>{const E=s.value/r.value;return a.padding.top+s.value-v*E},N=v=>{const E=s.value/r.value;return v*E},S=v=>a.colors[v%a.colors.length],V=v=>{const E=(a.height-a.padding.bottom-v)/s.value*r.value;return Math.round(E)},k=(v,E,C)=>{const B=a.labels[C]||`Item ${C+1}`;l.value={visible:!0,x:v.clientX,y:v.clientY,label:B,value:E,color:S(C)},o("bar-hover",{value:E,index:C,label:B})},h=()=>{l.value.visible=!1},y=(v,E)=>{const C=a.labels[E]||`Item ${E+1}`;o("bar-click",{value:v,index:E,label:C})};return(v,E)=>(e.openBlock(),e.createElementBlock("div",am,[(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",om,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value,C=>(e.openBlock(),e.createElementBlock("line",{key:`grid-${C}`,x1:t.padding.left,y1:C,x2:t.width-t.padding.right,y2:C,stroke:t.gridColor,"stroke-width":"1","stroke-dasharray":"4,4",opacity:"0.3"},null,8,lm))),128))])):e.createCommentVNode("",!0),e.createElementVNode("defs",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.data,(C,B)=>(e.openBlock(),e.createElementBlock("linearGradient",{id:`barGradient-${B}`,key:`gradient-${B}`,x1:"0%",y1:"0%",x2:"0%",y2:"100%"},[e.createElementVNode("stop",{offset:"0%","stop-color":S(B),"stop-opacity":"1"},null,8,sm),e.createElementVNode("stop",{offset:"100%","stop-color":S(B),"stop-opacity":"0.7"},null,8,im)],8,rm))),128))]),e.createElementVNode("g",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.data,(C,B)=>(e.openBlock(),e.createElementBlock("rect",{key:`bar-${B}`,x:w(B),y:z(C),width:c.value,height:N(C),fill:`url(#barGradient-${B})`,class:e.normalizeClass(t.barClasses),rx:"4",onMouseenter:M=>k(M,C,B),onMouseleave:h,onClick:M=>y(C,B)},[e.createElementVNode("animate",{attributeName:"height",from:0,to:N(C),dur:"0.8s",fill:"freeze"},null,8,dm),e.createElementVNode("animate",{attributeName:"y",from:t.padding.top+s.value,to:z(C),dur:"0.8s",fill:"freeze"},null,8,um)],42,cm))),128))]),t.showXAxis?(e.openBlock(),e.createElementBlock("g",mm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.labels,(C,B)=>(e.openBlock(),e.createElementBlock("text",{key:`xlabel-${B}`,x:w(B)+c.value/2,y:t.height-t.padding.bottom+20,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"middle"},e.toDisplayString(C),11,fm))),128))])):e.createCommentVNode("",!0),t.xAxisLabel?(e.openBlock(),e.createElementBlock("g",pm,[e.createElementVNode("text",{x:t.padding.left+i.value/2,y:t.height-10,class:"fill-slate-700 text-sm font-semibold","text-anchor":"middle"},e.toDisplayString(t.xAxisLabel),9,gm)])):e.createCommentVNode("",!0),t.showYAxis?(e.openBlock(),e.createElementBlock("g",vm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value,C=>(e.openBlock(),e.createElementBlock("text",{key:`ylabel-${C}`,x:t.padding.left-10,y:C+4,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"end"},e.toDisplayString(V(C)),11,hm))),128))])):e.createCommentVNode("",!0),t.yAxisLabel?(e.openBlock(),e.createElementBlock("g",ym,[e.createElementVNode("text",{x:-(t.padding.top+s.value/2),y:15,class:"fill-slate-700 text-sm font-semibold","text-anchor":"middle",transform:"rotate(-90)"},e.toDisplayString(t.yAxisLabel),9,bm)])):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,xm),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,km)],8,nm)),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",wm,[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",Bm,e.toDisplayString(l.value.label),1)]),e.createElementVNode("div",Vm,[e.createElementVNode("span",Em,e.toDisplayString(l.value.value)+"%",1)]),E[0]||(E[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)]))}},Nm={class:"w-full h-full"},Sm=["width","height","viewBox"],$m={key:0},zm=["x1","y1","x2","y2","stroke"],Dm=["d","stroke","stroke-width"],Tm={key:1},Fm=["cx","cy","r","fill","stroke","onMouseenter"],Am=["d","fill","fill-opacity"],Mm={key:3},Lm=["x","y"],_m={key:4},jm=["x","y"],Pm={key:5},Om=["x","y","width","height","fill","stroke"],Im=["x","y"],ka={__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((V,k)=>({x:b(k),y:w(V),value:V}))),i=e.computed(()=>s.value.length===0?"":s.value.map((k,h)=>`${h===0?"M":"L"} ${k.x} ${k.y}`).join(" ")),c=e.computed(()=>{if(s.value.length===0)return"";const V=s.value.map((y,v)=>`${v===0?"M":"L"} ${y.x} ${y.y}`).join(" "),k=a.height-a.padding.bottom,h=`L ${s.value[s.value.length-1].x} ${k} L ${s.value[0].x} ${k} Z`;return V+" "+h}),g=e.computed(()=>{const V=[],k=a.height-a.padding.top-a.padding.bottom,h=5;for(let y=0;y<=h;y++){const v=a.padding.top+k/h*y;V.push(v)}return V}),b=V=>{const h=(a.width-a.padding.left-a.padding.right)/(a.data.length-1||1);return a.padding.left+V*h},w=V=>{const k=a.height-a.padding.top-a.padding.bottom,h=k/r.value;return a.padding.top+k-V*h},z=V=>{const k=a.height-a.padding.top-a.padding.bottom,h=(a.height-a.padding.bottom-V)/k*r.value;return Math.round(h)},N=(V,k,h)=>{const y=V.target.getBoundingClientRect(),v=a.labels[h]||`Point ${h+1}`;l.value={visible:!0,x:y.left+y.width/2,y:y.top,width:80,height:24,content:`${v}: ${k}`},o("point-hover",{value:k,index:h,label:v})},S=()=>{l.value.visible=!1};return(V,k)=>(e.openBlock(),e.createElementBlock("div",Nm,[(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",$m,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.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":"2,2"},null,8,zm))),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,Dm),t.showPoints?(e.openBlock(),e.createElementBlock("g",Tm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(h,y)=>(e.openBlock(),e.createElementBlock("circle",{key:`point-${y}`,cx:h.x,cy:h.y,r:t.pointRadius,fill:t.pointColor,stroke:t.lineColor,"stroke-width":2,class:e.normalizeClass(t.pointClasses),onMouseenter:v=>N(v,h.value,y),onMouseleave:S},null,42,Fm))),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,Am)):e.createCommentVNode("",!0),t.showXAxis?(e.openBlock(),e.createElementBlock("g",Mm,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.labels,(h,y)=>(e.openBlock(),e.createElementBlock("text",{key:`xlabel-${y}`,x:b(y),y:t.height-t.padding.bottom+20,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"middle"},e.toDisplayString(h),11,Lm))),128))])):e.createCommentVNode("",!0),t.showYAxis?(e.openBlock(),e.createElementBlock("g",_m,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.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(z(h)),11,jm))),128))])):e.createCommentVNode("",!0),l.value.visible?(e.openBlock(),e.createElementBlock("g",Pm,[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,Om),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,Im)])):e.createCommentVNode("",!0)],8,Sm))]))}},Rm={class:"bg-white border-b border-gray-200"},Um={key:0,class:"flex items-center gap-3 min-w-64"},qm={class:"relative flex-1"},Ym={class:"relative flex-1"},Hm={key:1,class:"min-w-40"},Wm={class:"relative"},Gm={key:2,class:"min-w-40"},Km={class:"relative"},Xm=["value"],Jm={key:3,class:"flex items-center gap-2"},Qm={class:"flex items-center gap-3 ml-auto"},Zm={class:"flex items-center gap-3 flex-wrap"},ef=["onClick"],Xo={__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"}}),g=e.computed(()=>l.value||r.value||i.value),b=e.computed(()=>{const U=[];if(l.value||r.value){let T="";l.value&&r.value?T=`${l.value} to ${r.value}`:l.value?T=`From ${l.value}`:r.value&&(T=`Until ${r.value}`),T&&U.push({key:"date",label:"Date Range",value:T,icon:"calendar"})}if(i.value){const T=a.dataSources.find(_=>_.value===i.value);U.push({key:"dataSource",label:"Data Source",value:T?.label||i.value,icon:"database"})}return U}),w=e.computed(()=>D(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"),N=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"),S=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(()=>"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"),k=e.computed(()=>"text-gray-700 hover:text-gray-900 border border-gray-200 hover:bg-gray-50 bg-white px-3 py-2 rounded-lg text-sm font-medium transition-all"),h=e.computed(()=>"px-6 py-3 bg-blue-50 border-t border-blue-100"),y=e.computed(()=>"text-sm font-semibold text-blue-800"),v=e.computed(()=>"flex items-center gap-1.5 bg-white border border-blue-200 text-blue-800 px-3 py-1.5 rounded-full text-sm font-medium"),E=e.computed(()=>"text-blue-600 hover:text-blue-800 ml-1 hover:bg-blue-100 rounded-full p-0.5 transition-all"),C=U=>{s.value=U.target.value,o("update:chartType",U.target.value)},B=U=>{i.value=U.target.value,o("update:dataSource",U.target.value)},M=()=>{l.value="",r.value="",i.value="",o("clear-filters")},Y=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,T)=>(e.openBlock(),e.createElementBlock("div",Rm,[e.createElementVNode("div",{class:e.normalizeClass(w.value)},[t.showDateFilter?(e.openBlock(),e.createElementBlock("div",Um,[e.createElementVNode("div",qm,[e.createVNode(L,{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":T[0]||(T[0]=_=>l.value=_),type:"date",class:e.normalizeClass(z.value),placeholder:"From date"},null,2),[[e.vModelText,l.value]])]),T[6]||(T[6]=e.createElementVNode("span",{class:"text-gray-500 text-sm"},"to",-1)),e.createElementVNode("div",Ym,[e.createVNode(L,{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":T[1]||(T[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",Hm,[e.createElementVNode("div",Wm,[e.createVNode(he,{modelValue:s.value,"onUpdate:modelValue":T[2]||(T[2]=_=>s.value=_),class:e.normalizeClass(N.value),onChange:C},{default:e.withCtx(()=>[...T[7]||(T[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(L,{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",Gm,[e.createElementVNode("div",Km,[e.createVNode(he,{modelValue:i.value,"onUpdate:modelValue":T[3]||(T[3]=_=>i.value=_),class:e.normalizeClass(N.value),onChange:B},{default:e.withCtx(()=>[T[8]||(T[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,Xm))),128))]),_:1},8,["modelValue","class"]),e.createVNode(L,{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",Jm,[e.renderSlot(U.$slots,"filters")])):e.createCommentVNode("",!0),e.createElementVNode("div",Qm,[g.value?(e.openBlock(),e.createBlock(oe,{key:0,class:e.normalizeClass(S.value),onClick:M},{default:e.withCtx(()=>[e.createVNode(L,{icon:"rotate-left",class:"w-4 h-4 mr-2"}),T[9]||(T[9]=e.createTextVNode(" Clear Filters ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showExport?(e.openBlock(),e.createBlock(oe,{key:1,class:e.normalizeClass(V.value),onClick:T[4]||(T[4]=_=>U.$emit("export"))},{default:e.withCtx(()=>[e.createVNode(L,{icon:"download",class:"w-4 h-4 mr-2"}),T[10]||(T[10]=e.createTextVNode(" Export ",-1))]),_:1},8,["class"])):e.createCommentVNode("",!0),t.showRefresh?(e.openBlock(),e.createBlock(oe,{key:2,class:e.normalizeClass(k.value),onClick:T[5]||(T[5]=_=>U.$emit("refresh"))},{default:e.withCtx(()=>[e.createVNode(L,{icon:"sync",class:"w-4 h-4 mr-2"}),T[11]||(T[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(h.value)},[e.createElementVNode("div",Zm,[e.createElementVNode("span",{class:e.normalizeClass(y.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(v.value)},[e.createVNode(L,{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(E.value),onClick:f=>Y(_.key)},[e.createVNode(L,{icon:"xmark",class:"w-3 h-3"})],10,ef)],2))),128))])],2)):e.createCommentVNode("",!0)]))}},tf={class:"flex items-start justify-between"},af={key:0,class:"flex items-center gap-2"},wa={__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(()=>D(a({variant:n.variant,padding:n.padding}))),s=e.computed(()=>D(o({size:"md"}))),i=e.computed(()=>D(l({size:"md"})));return(c,g)=>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",tf,[e.createElementVNode("div",null,[t.title?(e.openBlock(),e.createBlock(yt,{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(yt,{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",af,[e.renderSlot(c.$slots,"filters")])):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0)}},nf={class:"flex items-center justify-between"},of={key:0,class:"text-sm text-slate-600"},lf={key:1,class:"text-sm text-slate-600"},rf={key:2,class:"flex items-center gap-4"},sf={key:3,class:"flex items-center gap-4"},cf={class:"flex items-center gap-2"},df={class:"flex items-center gap-1"},uf=["disabled"],mf=["disabled"],ff={class:"flex items-center gap-1"},pf=["onClick"],gf=["disabled"],vf=["disabled"],hf={class:"text-sm text-slate-600 ml-4"},Ca={__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 N=[],S=n.totalPages,V=n.currentPage,k=n.maxVisiblePages;if(S<=k)for(let h=1;h<=S;h++)N.push(h);else{const h=Math.floor(k/2);let y=Math.max(1,V-h),v=Math.min(S,y+k-1);v-y+1<k&&(y=Math.max(1,v-k+1));for(let E=y;E<=v;E++)N.push(E)}return N}),g=e.computed(()=>D(a({variant:n.variant,padding:n.padding}))),b=e.computed(()=>D(l({size:"md"}))),w=e.computed(()=>D(r({size:"sm"}))),z=(N,S)=>{let V="inactive";return S?V="disabled":N&&(V="active"),D(o({state:V,size:"md"}))};return(N,S)=>t.showPagination||N.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(g.value)},[e.createElementVNode("div",nf,[t.selectable&&t.selectedCount>0?(e.openBlock(),e.createElementBlock("div",of,e.toDisplayString(t.selectedCount)+" of "+e.toDisplayString(t.total)+" selected ",1)):(e.openBlock(),e.createElementBlock("div",lf," Showing "+e.toDisplayString(s.value)+" to "+e.toDisplayString(i.value)+" of "+e.toDisplayString(t.total)+" entries ",1)),N.$slots.footer?(e.openBlock(),e.createElementBlock("div",rf,[e.renderSlot(N.$slots,"footer")])):e.createCommentVNode("",!0),t.showPagination?(e.openBlock(),e.createElementBlock("div",sf,[e.createElementVNode("div",cf,[e.createVNode(Be,{for:"pageSize",class:e.normalizeClass(b.value),inline:!0},{default:e.withCtx(()=>[...S[5]||(S[5]=[e.createTextVNode("Show:",-1)])]),_:1},8,["class"]),e.createVNode(he,{id:"pageSize","model-value":t.pageSize.toString(),class:e.normalizeClass(w.value),"onUpdate:modelValue":S[0]||(S[0]=V=>N.$emit("update:pageSize",parseInt(V)))},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.pageSizeOptions,V=>(e.openBlock(),e.createBlock(ha,{key:V,value:V.toString(),label:V.toString()},null,8,["value","label"]))),128))]),_:1},8,["model-value","class"])]),e.createElementVNode("div",df,[e.createElementVNode("button",{disabled:t.currentPage===1,class:e.normalizeClass(z(!1,t.currentPage===1)),title:"First page",onClick:S[1]||(S[1]=V=>N.$emit("update:currentPage",1))},[...S[6]||(S[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,uf),e.createElementVNode("button",{disabled:t.currentPage===1,class:e.normalizeClass(z(!1,t.currentPage===1)),title:"Previous page",onClick:S[2]||(S[2]=V=>N.$emit("update:currentPage",t.currentPage-1))},[...S[7]||(S[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,mf),e.createElementVNode("div",ff,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,V=>(e.openBlock(),e.createElementBlock("button",{key:V,class:e.normalizeClass(z(V===t.currentPage,!1)),onClick:k=>N.$emit("update:currentPage",V)},e.toDisplayString(V),11,pf))),128))]),e.createElementVNode("button",{disabled:t.currentPage===t.totalPages,class:e.normalizeClass(z(!1,t.currentPage===t.totalPages)),title:"Next page",onClick:S[3]||(S[3]=V=>N.$emit("update:currentPage",t.currentPage+1))},[...S[8]||(S[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,gf),e.createElementVNode("button",{disabled:t.currentPage===t.totalPages,class:e.normalizeClass(z(!1,t.currentPage===t.totalPages)),title:"Last page",onClick:S[4]||(S[4]=V=>N.$emit("update:currentPage",t.totalPages))},[...S[9]||(S[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,vf)]),e.createElementVNode("div",hf," Page "+e.toDisplayString(t.currentPage)+" of "+e.toDisplayString(t.totalPages),1)])):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0)}},qe=(t,n)=>{const a=t.__vccOpts||t;for(const[o,l]of n)a[o]=l;return a},yf={key:0,class:"loader__backdrop"},bf={class:"loader__container"},xf={key:0,class:"loader__text loader__text--top"},kf={key:1,class:"loader__spin"},wf={key:2,class:"loader__pulse"},Cf={key:3,class:"loader__bounce"},Bf={key:4,class:"loader__ripple"},Vf={key:5,class:"loader__bars"},Ef={key:6,class:"loader__dots"},Nf={key:7,class:"loader__ring"},Sf={key:8,class:"loader__spinner-text"},$f={key:9,class:"loader__text loader__text--bottom"},zf={__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",yf)):e.createCommentVNode("",!0),e.createElementVNode("div",bf,[t.text&&t.textPosition==="top"?(e.openBlock(),e.createElementBlock("div",xf,e.toDisplayString(t.text),1)):e.createCommentVNode("",!0),t.type==="spin"?(e.openBlock(),e.createElementBlock("div",kf)):t.type==="pulse"?(e.openBlock(),e.createElementBlock("div",wf)):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",Bf,[(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",Vf,[(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",Ef,[(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",Nf,[...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",Sf,[...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",$f,e.toDisplayString(t.text),1)):e.createCommentVNode("",!0)])],6)):e.createCommentVNode("",!0)}},Oe=qe(zf,[["__scopeId","data-v-68532350"]]),Df={class:"relative"},Tf={class:"flex items-center justify-center"},Ff=["onClick"],Af={class:"flex items-center gap-2"},Mf={key:1,class:"flex flex-col"},Lf=["onClick"],_f=["onClick"],jf={key:1},Pf={key:1,class:"flex items-center gap-1 justify-center"},Of={key:1,class:"text-xs"},If={key:2},Rf=["colspan"],Uf={class:"flex flex-col items-center justify-center py-12"},qf={class:"text-slate-400 mb-4 flex justify-center"},Yf={class:"text-slate-600 text-lg font-medium mb-2"},Hf={class:"text-slate-500 text-sm"},Wf={class:"p-6"},Gf={class:"text-xl font-bold text-gray-700 whitespace-pre-wrap break-words"},Kf={__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),g=e.ref(!1),b=e.ref(""),w=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"}}),N=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"}}),S=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"}}),V=e.computed(()=>{let j=[...o.data];if(i.value){const H=o.columns.find(K=>K.key===i.value);H&&j.sort((K,de)=>{const Z=_(K,H),Le=_(de,H);return Z<Le?c.value==="asc"?-1:1:Z>Le?c.value==="asc"?1:-1:0})}return j}),k=e.computed(()=>Math.ceil(V.value.length/s.value)),h=e.computed(()=>{if(!o.showPagination)return V.value;const j=(r.value-1)*s.value,H=j+s.value;return V.value.slice(j,H)}),y=e.computed(()=>o.showActionsColumn?o.$slots?.actions?!0:!o.actions||o.actions.length===0?!1:o.actions.some(H=>H.permission===void 0?!0:typeof H.permission=="boolean"?H.permission===!0:typeof H.permission=="function"):!1),v=e.computed(()=>{let j=o.columns.length;return o.selectable&&j++,y.value&&j++,j}),E=j=>o.actions.filter(H=>{if(H.permission!==void 0){if(typeof H.permission=="function"){if(!H.permission(j))return!1}else if(!H.permission)return!1}return H.visible&&typeof H.visible=="function"?H.visible(j):!0}),C=(j,H)=>j.permission&&typeof j.permission=="function"?j.permission(H):!0,B=(j,H)=>j.disabled&&typeof j.disabled=="function"?j.disabled(H):!1,M=(j,H)=>{B(j,H)||!C(j,H)||(l("action",{action:j.key,item:H,actionConfig:j}),j.onClick&&typeof j.onClick=="function"&&j.onClick(H))},Y=j=>({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"})[j]||"ghost",U=e.computed(()=>V.value.length>0&&V.value.every(j=>x(j))),T=e.computed(()=>{const j=V.value.filter(H=>x(H)).length;return j>0&&j<V.value.length}),_=(j,H)=>H.accessor?H.accessor(j):H.key.split(".").reduce((K,de)=>K?.[de],j),f=(j,H)=>j[o.rowKey]||H,x=j=>o.selectedItems.some(H=>f(H)===f(j)),m=j=>{const H=[...o.selectedItems],K=H.findIndex(de=>f(de)===f(j));K>-1?H.splice(K,1):H.push(j),l("selection-change",H)},$=()=>{if(o.loading||o.dataLoading)return;const j=U.value?[]:[...V.value];l("selection-change",j)},u=async j=>{!j.sortable||o.loading||o.sortLoading||(i.value===j.key?c.value=c.value==="asc"?"desc":"asc":(i.value=j.key,c.value="asc"),l("sort-change",{column:j.key,direction:c.value}))},p=j=>{o.loading||l("row-click",j)},d=async j=>{o.paginationLoading||o.loading||(r.value=j,l("page-change",j))},P=async j=>{o.paginationLoading||o.loading||(s.value=j,r.value=1,l("page-size-change",j))},W=e.computed(()=>D(w({variant:o.variant}))),X=e.computed(()=>D(z({variant:o.variant}))),R=e.computed(()=>D(N({variant:o.variant}))),ae=e.computed(()=>D(S({variant:o.variant}))),ne=j=>D({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":j.sortable&&!o.loading&&!o.sortLoading,"cursor-not-allowed opacity-50":o.loading||o.sortLoading&&i.value===j.key}),re=()=>D({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=(j,H)=>{const K=[];return o.striped&&H%2===1&&K.push("bg-slate-50/50"),o.hoverable&&!o.clickableRows&&K.push("hover:bg-slate-50"),o.clickableRows&&K.push("cursor-pointer hover:bg-slate-100"),o.selectable&&x(j)&&K.push("bg-blue-50 border-blue-200"),o.variant==="bordered"?K.push("border-b border-slate-200"):o.variant==="minimal"&&K.push("border-b border-slate-100"),D("transition-colors",...K)},me=(j,H)=>{const K=_(j,H);return typeof H=="object"&&H.formatter?H.formatter(K,j):K==null?"":K instanceof Date?K.toLocaleDateString():Array.isArray(K)?K.join(", "):K},Ye=(j,H=10)=>{if(!j)return j;const K=j.toString().split(" ");return K.length<=H?j:K.slice(0,H).join(" ")+"..."},ce=j=>{b.value||(b.value=j,g.value=!0)},Te=()=>{g.value=!1,b.value=""},we=e.computed(()=>D({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(()=>D({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")),St=e.computed(()=>D({compact:"px-4 py-4",normal:"px-6 py-6",comfortable:"px-8 py-8"}[o.density],"text-center")),rt=(j,H)=>D({"text-blue-600":i.value===j.key&&c.value===H,"text-slate-300":i.value!==j.key||c.value!==H});return e.watch(()=>o.selectedItems,()=>{},{deep:!0}),e.watch(()=>o.pageSize,j=>{s.value=j}),n({refresh:()=>{l("refresh")},goToPage:j=>{d(j)},selectAll:()=>{$()},clearSelection:()=>{l("selection-change",[])},getCurrentPage:()=>r.value,getTotalPages:()=>k.value,getSelectedItems:()=>o.selectedItems}),(j,H)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(W.value)},[t.title||t.description||j.$slots.header?(e.openBlock(),e.createBlock(wa,{key:0,title:t.title,description:t.description,variant:t.headerVariant,padding:t.headerPadding},{header:e.withCtx(()=>[e.renderSlot(j.$slots,"header",{},void 0,!0)]),filters:e.withCtx(()=>[e.renderSlot(j.$slots,"filters",{},void 0,!0)]),_:3},8,["title","description","variant","padding"])):e.createCommentVNode("",!0),e.createElementVNode("div",Df,[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",Tf,[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(Ze,{key:1,"model-value":U.value,indeterminate:T.value,disabled:t.loading||t.dataLoading,"onUpdate:modelValue":$},null,8,["model-value","indeterminate","disabled"]))])],2)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,K=>(e.openBlock(),e.createElementBlock("th",{key:K.key,class:e.normalizeClass(ne(K)),onClick:de=>u(K)},[e.createElementVNode("div",Af,[e.createElementVNode("span",null,e.toDisplayString(K.label),1),t.sortLoading&&i.value===K.key?(e.openBlock(),e.createBlock(Oe,{key:0,loading:!0,type:"spin",size:"small",color:t.loadingColor},null,8,["color"])):K.sortable?(e.openBlock(),e.createElementBlock("div",Mf,[(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass([rt(K,"asc"),"w-3 h-3 transition-colors"]),fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...H[1]||(H[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([rt(K,"desc"),"w-3 h-3 transition-colors"]),fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...H[2]||(H[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,Ff))),128)),y.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,K=>(e.openBlock(),e.createElementBlock("tr",{key:`skeleton-${K}`,class:"animate-pulse"},[t.selectable?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(we.value)},[...H[3]||(H[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())},[...H[4]||(H[4]=[e.createElementVNode("div",{class:"h-4 bg-slate-200 rounded w-3/4"},null,-1)])],2))),128)),y.value?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass(be.value)},[...H[5]||(H[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)):h.value.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(h.value,(K,de)=>(e.openBlock(),e.createElementBlock("tr",{key:f(K,de),class:e.normalizeClass(fe(K,de)),onClick:Z=>p({item:K,index:de})},[t.selectable?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(we.value)},[e.createVNode(Ze,{"model-value":x(K),"onUpdate:modelValue":Z=>m(K)},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(j.$slots,`cell-${Z.key}`,{item:K,value:_(K,Z),column:Z,index:de},()=>[me(K,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(Le=>ce(me(K,Z)),["stop"])},e.toDisplayString(Ye(me(K,Z))),9,_f)):(e.openBlock(),e.createElementBlock("span",jf,e.toDisplayString(me(K,Z)),1))],!0)],2))),128)),y.value?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass(be.value)},[j.$slots.actions?e.renderSlot(j.$slots,"actions",{key:0,item:K,index:de},void 0,!0):t.actions.length>0?(e.openBlock(),e.createElementBlock("div",Pf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(E(K),Z=>(e.openBlock(),e.createBlock(ba,{key:Z.key,content:typeof Z.tooltip=="function"?Z.tooltip(K):Z.tooltip||Z.label||Z.key,placement:"top"},{default:e.withCtx(()=>[e.createVNode(oe,{variant:Y(Z.variant),size:"xs",disabled:B(Z,K)||!C(Z,K),class:e.normalizeClass(["h-8 w-8",typeof Z.class=="function"?Z.class(K):Z.class]),onClick:e.withModifiers(Le=>M(Z,K),["stop"])},{default:e.withCtx(()=>[Z.icon?(e.openBlock(),e.createBlock(L,{key:0,icon:Z.icon,class:"w-4 h-4"},null,8,["icon"])):Z.label?(e.openBlock(),e.createElementBlock("span",Of,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,Lf))),128)):(e.openBlock(),e.createElementBlock("tr",If,[e.createElementVNode("td",{colspan:v.value,class:e.normalizeClass(St.value)},[e.renderSlot(j.$slots,"empty",{},()=>[e.createElementVNode("div",Uf,[e.createElementVNode("div",qf,[e.createVNode(L,{icon:"search",class:"w-16 h-16"})]),e.createElementVNode("p",Yf,e.toDisplayString(t.emptyText),1),e.createElementVNode("p",Hf,e.toDisplayString(t.emptySubtitle),1)])],!0)],10,Rf)]))],2)],2)],2)]),t.showPagination||j.$slots.footer?(e.openBlock(),e.createBlock(Ca,{key:1,"current-page":r.value,"total-pages":k.value,total:V.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":P},{footer:e.withCtx(()=>[e.renderSlot(j.$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(Ue,{modelValue:g.value,"onUpdate:modelValue":H[0]||(H[0]=K=>g.value=K),size:"lg",onClose:Te},{default:e.withCtx(()=>[e.createElementVNode("div",Wf,[H[6]||(H[6]=e.createElementVNode("h3",{class:"text-md font-semibold mb-4"}," Full Text ",-1)),e.createElementVNode("div",Gf,e.toDisplayString(b.value),1)])]),_:1},8,["modelValue"])],2))}},Jo=qe(Kf,[["__scopeId","data-v-c2fc0c79"]]),Qo={__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=V=>typeof V=="string"?V:V?.key||V?.field||"unknown",i=(V,k)=>{const h=s(k);return typeof k=="object"&&k.accessor?k.accessor(V):h&&h.includes(".")?h.split(".").reduce((y,v)=>y?.[v],V):V?.[h]},c=(V,k)=>{const h=i(V,k);return typeof k=="object"&&k.formatter?k.formatter(h,V):h==null?"":h instanceof Date?h.toLocaleDateString():Array.isArray(h)?h.join(", "):h},g=()=>{a.clickableRows&&o("row-click",{item:a.item,index:a.index})},b=V=>typeof V=="object"&&V.align?V.align:"left",w=e.computed(()=>D(l({striped:a.striped,hoverable:a.hoverable&&!a.clickableRows,clickable:a.clickableRows,selected:a.isSelected,variant:a.variant}))),z=V=>{const k=b(V);return D(r({density:a.density,align:k}),V.cellClasses)},N=e.computed(()=>D(r({density:a.density}),"w-12")),S=e.computed(()=>D(r({density:a.density,align:"right"}),"font-medium"));return(V,k)=>(e.openBlock(),e.createElementBlock("tr",{class:e.normalizeClass(w.value),onClick:g},[t.selectable?(e.openBlock(),e.createElementBlock("td",{key:0,class:e.normalizeClass(N.value)},[e.createVNode(Ze,{"model-value":t.isSelected,"onUpdate:modelValue":k[0]||(k[0]=h=>V.$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,h=>(e.openBlock(),e.createElementBlock("td",{key:s(h),class:e.normalizeClass(z(h))},[e.renderSlot(V.$slots,`cell-${s(h)}`,{item:t.item,value:i(t.item,h),column:h,index:t.index},()=>[e.createTextVNode(e.toDisplayString(c(t.item,h)),1)])],2))),128)),V.$slots.actions?(e.openBlock(),e.createElementBlock("td",{key:1,class:e.normalizeClass(S.value)},[e.renderSlot(V.$slots,"actions",{item:t.item,index:t.index})],2)):e.createCommentVNode("",!0)],2))}},Zo={__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 D(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))}},Xf={class:"bg-white border-b border-gray-200"},Jf={key:0,class:"flex-1 min-w-80 max-w-md"},Qf={class:"relative group"},Zf=["model-value","placeholder"],ep={class:"relative"},tp={value:""},ap=["value"],np={key:1,class:"min-w-36"},op={class:"relative"},lp=["value"],rp={key:3,class:"flex items-center gap-2"},sp={class:"flex items-center gap-3 ml-auto"},ip={key:0},cp={key:3},dp={class:"grid grid-cols-1 lg:grid-cols-3 gap-6"},up={class:"flex items-center justify-between"},mp={class:"flex items-center gap-3"},fp={class:"relative flex-1"},pp=["model-value","placeholder","onInput"],gp={class:"relative flex-1"},vp=["model-value","placeholder","onInput"],hp=["onClick"],yp={class:"flex items-center justify-between"},bp={class:"flex items-center gap-3"},xp={class:"relative flex-1"},kp=["model-value","placeholder","step","onInput"],wp={class:"relative flex-1"},Cp=["model-value","placeholder","step","onInput"],Bp=["onClick"],Vp={class:"flex items-center justify-between"},Ep={class:"relative"},Np={value:""},Sp=["value"],$p={key:0,class:"flex flex-wrap gap-2 mt-2"},zp=["onClick"],Dp={class:"flex items-center gap-3 flex-wrap"},Tp=["onClick"],Fp={key:2,class:"px-6 py-3 bg-gray-50 border-t border-gray-200"},Ap={class:"flex items-center justify-between"},Mp={class:"flex items-center gap-4"},Lp={class:"text-sm text-gray-600"},_p={class:"font-medium"},jp={class:"bg-white rounded-xl shadow-2xl max-w-2xl w-full p-6"},Pp={class:"flex items-center justify-between mb-4"},Op={class:"flex justify-end gap-3 mt-6"},el={__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),g=e.computed(()=>s.value&&a.addButton.disabled&&typeof a.addButton.disabled=="function"?a.addButton.disabled():!1),b=()=>{r.value=!0},w=()=>{r.value=!1},z=q=>{o("files-selected",q)},N=q=>{o("file-removed",q)},S=()=>{g.value||!c.value||(o("add"),o("add-button-click",a.addButton),a.addButton.onClick&&typeof a.addButton.onClick=="function"&&a.addButton.onClick())},V=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"}}),k=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"}}),h=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"}}),y=(q,F)=>{const A=a.selectFilters.map(G=>G.key===q?{...G,value:F}:G);o("update:selectFilters",A)},v=q=>!!(q.from||q.to),E=q=>{const F=a.dateFilters.map(A=>A.key===q?{...A,from:"",to:""}:A);o("update:dateFilters",F)},C=q=>`text-xs px-2 py-1 rounded ${v(q)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,B=(q,F,A)=>{const G=a.dateFilters.map(ee=>ee.key===q?{...ee,[F]:A}:ee);o("update:dateFilters",G)},M=q=>!!(q.min||q.max),Y=q=>{const F=a.numberFilters.map(A=>A.key===q?{...A,min:"",max:""}:A);o("update:numberFilters",F)},U=q=>`text-xs px-2 py-1 rounded ${M(q)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,T=(q,F,A)=>{const G=a.numberFilters.map(ee=>ee.key===q?{...ee,[F]:A}:ee);o("update:numberFilters",G)},_=q=>q.selected&&q.selected.length>0,f=q=>`text-xs px-2 py-1 rounded ${_(q)?"bg-blue-100 text-blue-700":"bg-gray-100 text-gray-600"}`,x=(q,F)=>{if(!F)return;const A=a.multiSelectFilters.map(G=>{if(G.key===q){const ee=G.selected||[],He=ee.includes(F);return{...G,selected:He?ee.filter($t=>$t!==F):[...ee,F]}}return G});o("update:multiSelectFilters",A)},m=(q,F)=>{const A=a.multiSelectFilters.map(G=>G.key===q?{...G,selected:G.selected.filter(ee=>ee!==F)}:G);o("update:multiSelectFilters",A)},$=(q,F)=>{const A=q.options.find(G=>G.value===F);return A?A.label:F},u=()=>{l.value=!l.value},p=e.computed(()=>a.numberFilters.length>0||a.multiSelectFilters.length>0),d=e.computed(()=>{const q=a.searchQuery,F=a.selectedStatus,A=a.dateFrom||a.dateTo,G=a.selectFilters.some(xe=>xe.value),ee=a.dateFilters.some(xe=>xe.from||xe.to),He=a.numberFilters.some(xe=>xe.min||xe.max),$t=a.multiSelectFilters.some(xe=>xe.selected&&xe.selected.length>0);return q||F||A||G||ee||He||$t}),P=e.computed(()=>{let q=0;return a.searchQuery&&q++,a.selectedStatus&&q++,(a.dateFrom||a.dateTo)&&q++,q+=a.selectFilters.filter(F=>F.value).length,q+=a.dateFilters.filter(F=>F.from||F.to).length,q+=a.numberFilters.filter(F=>F.min||F.max).length,q+=a.multiSelectFilters.filter(F=>F.selected&&F.selected.length>0).length,q}),W=e.computed(()=>{const q=[];if(a.searchQuery&&a.searchQuery.trim()&&q.push({key:"search",label:"Search",value:`"${a.searchQuery}"`,icon:"magnifying-glass"}),a.selectedStatus){const F=a.statusOptions.find(A=>A.value===a.selectedStatus);q.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(G=>G.value===F.value);q.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&&q.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&&q.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&&q.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(G=>{const ee=F.options.find(He=>He.value===G);return ee?ee.label:G});q.push({key:`multi-${F.key}`,label:F.label,value:A.join(", "),icon:"list"})}}),q}),X=e.computed(()=>D(V({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(()=>D(k({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(()=>D(k({size:"md"}),"w-full pr-8 appearance-none hover:border-gray-300")),fe=e.computed(()=>{const q=l.value||d.value;return D(h({variant:q?"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"),Ye=e.computed(()=>"px-6 py-4 border-t border-gray-100 bg-gray-50"),ce=e.computed(()=>D(k({size:"md"}),"pl-10 pr-3")),Te=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"),St=e.computed(()=>D(h({variant:"ghost",size:"md"}))),rt=e.computed(()=>D(h({variant:"default",size:"lg"}))),j=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"),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 q=a.selectFilters.map(ee=>({...ee,value:""}));o("update:selectFilters",q);const F=a.dateFilters.map(ee=>({...ee,from:"",to:""}));o("update:dateFilters",F);const A=a.numberFilters.map(ee=>({...ee,min:"",max:""}));o("update:numberFilters",A);const G=a.multiSelectFilters.map(ee=>({...ee,selected:[]}));o("update:multiSelectFilters",G),o("clear-filters")},Le=q=>{switch(q){case"search":o("update:searchQuery","");break;case"status":o("update:selectedStatus","");break;case"date":o("update:dateFrom",""),o("update:dateTo","");break;default:if(q.startsWith("select-")){const F=q.replace("select-",""),A=a.selectFilters.map(G=>G.key===F?{...G,value:""}:G);o("update:selectFilters",A)}else if(q.startsWith("date-")){const F=q.replace("date-",""),A=a.dateFilters.map(G=>G.key===F?{...G,from:"",to:""}:G);o("update:dateFilters",A)}else if(q.startsWith("number-")){const F=q.replace("number-",""),A=a.numberFilters.map(G=>G.key===F?{...G,min:"",max:""}:G);o("update:numberFilters",A)}else if(q.startsWith("multi-")){const F=q.replace("multi-",""),A=a.multiSelectFilters.map(G=>G.key===F?{...G,selected:[]}:G);o("update:multiSelectFilters",A)}break}};return(q,F)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Xf,[e.createElementVNode("div",{class:e.normalizeClass(X.value)},[t.showSearch?(e.openBlock(),e.createElementBlock("div",Jf,[e.createElementVNode("div",Qf,[e.createVNode(L,{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:F[0]||(F[0]=A=>q.$emit("update:searchQuery",A.target.value))},null,42,Zf),t.searchQuery?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(ne.value),onClick:F[1]||(F[1]=A=>q.$emit("update:searchQuery",""))},[e.createVNode(L,{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",ep,[e.createVNode(he,{"model-value":A.value,class:e.normalizeClass(re.value),onChange:G=>y(A.key,G.target.value)},{default:e.withCtx(()=>[e.createElementVNode("option",tp,e.toDisplayString(A.placeholder||`All ${A.label}`),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.options,G=>(e.openBlock(),e.createElementBlock("option",{key:G.value,value:G.value},e.toDisplayString(G.label),9,ap))),128))]),_:2},1032,["model-value","class","onChange"]),e.createVNode(L,{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",np,[e.createElementVNode("div",op,[e.createVNode(he,{"model-value":t.selectedStatus,class:e.normalizeClass(re.value),onChange:F[2]||(F[2]=A=>q.$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,lp))),128))]),_:1},8,["model-value","class"]),e.createVNode(L,{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||p.value)?(e.openBlock(),e.createElementBlock("button",{key:2,class:e.normalizeClass(fe.value),onClick:u},[e.createVNode(L,{icon:"filter",class:"w-4 h-4"}),F[6]||(F[6]=e.createTextVNode(" Filters ",-1)),P.value>0?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(me.value)},e.toDisplayString(P.value),3)):e.createCommentVNode("",!0),e.createVNode(L,{icon:l.value?"chevron-up":"chevron-down",class:"w-4 h-4 ml-1"},null,8,["icon"])],2)):e.createCommentVNode("",!0),q.$slots.filters?(e.openBlock(),e.createElementBlock("div",rp,[e.renderSlot(q.$slots,"filters")])):e.createCommentVNode("",!0),e.createElementVNode("div",sp,[t.showFileUpload?(e.openBlock(),e.createElementBlock("div",ip,[e.createVNode(oe,{variant:"default",size:"lg",onClick:b},{default:e.withCtx(()=>[e.createVNode(L,{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(oe,{key:1,class:e.normalizeClass(St.value),onClick:Z},{default:e.withCtx(()=>[e.createVNode(L,{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(oe,{key:2,class:e.normalizeClass(rt.value),onClick:F[3]||(F[3]=A=>q.$emit("export"))},{default:e.withCtx(()=>[e.createVNode(L,{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",cp,[s.value?(e.openBlock(),e.createBlock(oe,{key:0,variant:t.addButton.variant||"success",size:t.addButton.size||"lg",disabled:g.value||!c.value,title:t.addButton.tooltip,onClick:S},{default:e.withCtx(()=>[t.addButton.icon?(e.openBlock(),e.createBlock(L,{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(q.$slots,"add",{key:1},()=>[e.createVNode(oe,{variant:"success",size:"lg",onClick:F[4]||(F[4]=A=>q.$emit("add"))},{default:e.withCtx(()=>[e.createVNode(L,{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(Ye.value)},[e.createElementVNode("div",dp,[(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",up,[e.createElementVNode("label",{class:e.normalizeClass(Te.value)},e.toDisplayString(A.label),3),e.createElementVNode("span",{class:e.normalizeClass(C(A))},e.toDisplayString(v(A)?"Active":"Inactive"),3)]),e.createElementVNode("div",mp,[e.createElementVNode("div",fp,[e.createVNode(L,{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:G=>B(A.key,"from",G.target.value)},null,42,pp)]),e.createElementVNode("span",{class:e.normalizeClass(we.value)},"to",2),e.createElementVNode("div",gp,[e.createVNode(L,{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:G=>B(A.key,"to",G.target.value)},null,42,vp)]),v(A)?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(be.value),title:"Clear this filter",onClick:G=>E(A.key)},[e.createVNode(L,{icon:"xmark",class:"w-4 h-4"})],10,hp)):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",yp,[e.createElementVNode("label",{class:e.normalizeClass(Te.value)},e.toDisplayString(A.label),3),e.createElementVNode("span",{class:e.normalizeClass(U(A))},e.toDisplayString(M(A)?"Active":"Inactive"),3)]),e.createElementVNode("div",bp,[e.createElementVNode("div",xp,[e.createElementVNode("input",{type:"number","model-value":A.min,class:e.normalizeClass(ce.value),placeholder:`Min ${A.label}`,step:A.step||1,onInput:G=>T(A.key,"min",G.target.value)},null,42,kp)]),e.createElementVNode("span",{class:e.normalizeClass(we.value)},"to",2),e.createElementVNode("div",wp,[e.createElementVNode("input",{type:"number","model-value":A.max,class:e.normalizeClass(ce.value),placeholder:`Max ${A.label}`,step:A.step||1,onInput:G=>T(A.key,"max",G.target.value)},null,42,Cp)]),M(A)?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(be.value),title:"Clear this filter",onClick:G=>Y(A.key)},[e.createVNode(L,{icon:"xmark",class:"w-4 h-4"})],10,Bp)):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",Vp,[e.createElementVNode("label",{class:e.normalizeClass(Te.value)},e.toDisplayString(A.label),3),e.createElementVNode("span",{class:e.normalizeClass(f(A))},e.toDisplayString(_(A)?`${A.selected.length} selected`:"None"),3)]),e.createElementVNode("div",Ep,[e.createVNode(he,{"model-value":"",class:e.normalizeClass(re.value),onChange:G=>x(A.key,G.target.value)},{default:e.withCtx(()=>[e.createElementVNode("option",Np," Select "+e.toDisplayString(A.label),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.options,G=>(e.openBlock(),e.createElementBlock("option",{key:G.value,value:G.value},e.toDisplayString(G.label),9,Sp))),128))]),_:2},1032,["class","onChange"]),e.createVNode(L,{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",$p,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.selected,G=>(e.openBlock(),e.createElementBlock("span",{key:G,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($(A,G))+" ",1),e.createElementVNode("button",{class:"hover:bg-blue-200 rounded-full p-0.5",onClick:ee=>m(A.key,G)},[e.createVNode(L,{icon:"xmark",class:"w-3 h-3"})],8,zp)]))),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(j.value)},[e.createElementVNode("div",Dp,[e.createElementVNode("span",{class:e.normalizeClass(H.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(K.value)},[e.createVNode(L,{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:G=>Le(A.key)},[e.createVNode(L,{icon:"xmark",class:"w-3 h-3"})],10,Tp)],2))),128))])],2)):e.createCommentVNode("",!0),t.showTableInfo?(e.openBlock(),e.createElementBlock("div",Fp,[e.createElementVNode("div",Ap,[e.createElementVNode("div",Mp,[e.createElementVNode("span",Lp,[e.createElementVNode("span",_p,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(w,["self"])},[e.createElementVNode("div",jp,[e.createElementVNode("div",Pp,[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:w},[e.createVNode(L,{icon:"xmark",class:"w-5 h-5"})])]),e.createVNode(et,{multiple:t.fileUploadMultiple,accept:t.fileUploadAccept,"max-size":t.fileUploadMaxSize,variant:t.fileUploadVariant,onFilesSelected:z,onFileRemoved:N},null,8,["multiple","accept","max-size","variant"]),e.createElementVNode("div",Op,[e.createVNode(oe,{variant:"default",onClick:w},{default:e.withCtx(()=>[...F[12]||(F[12]=[e.createTextVNode(" Close ",-1)])]),_:1})])])])):e.createCommentVNode("",!0)],64))}},Ip={class:"flex items-center gap-3"},Rp={key:0,class:"flex items-center gap-3"},Up={class:"text-sm text-slate-600"},qp={class:"flex items-center gap-2"},Yp={class:"flex items-center gap-3"},Hp=["title","onClick"],Wp={key:1,class:"relative"},Gp={class:"p-3"},Kp={class:"space-y-1"},Xp={class:"flex items-center gap-2 cursor-pointer w-full"},Jp=["checked","onChange"],Qp=["disabled"],Zp={key:3,class:"flex items-center gap-2"},eg=[{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"}],tg={name:"DataTableToolBar"},tl=Object.assign(tg,{props:{selectedItems:{type:Array,default:()=>[]},totalItems:{type:Number,default:0},bulkActions:{type:Array,default:()=>eg},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"]}],g=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"}}),w=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"}}),N=e.computed(()=>D(g({variant:a.variant,padding:a.padding}))),S=e.computed(()=>"text-sm text-slate-600"),V=e.computed(()=>"flex items-center"),k=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"),h=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"),y=e.computed(()=>"text-xs font-medium text-slate-500 uppercase tracking-wider mb-2 border-b border-slate-100 pb-2"),v=e.computed(()=>"py-1 hover:bg-slate-50 rounded transition-colors"),E=e.computed(()=>"w-4 h-4 rounded border-slate-300 text-blue-600 focus:ring-blue-500 focus:ring-2 focus:ring-offset-1"),C=e.computed(()=>"text-sm text-slate-700 flex-1 select-none"),B=m=>{r.value&&s.value&&!r.value.contains(m.target)&&!s.value.contains(m.target)&&(l.value=!1)},M=()=>{l.value=!l.value},Y=m=>D(b({variant:m.variant||"secondary"})),U=m=>{let $="middle";return m==="compact"?$="first":m==="comfortable"&&($="last"),D(w({active:a.density===m,position:$}))},T=()=>D(z({state:a.isRefreshing?"refreshing":"normal"})),_=()=>D("w-4 h-4",{"animate-spin":a.isRefreshing}),f=m=>a.visibleColumns.includes(m),x=(m,$)=>{o("toggle-column",{column:m,visible:$})};return e.onMounted(()=>{document.addEventListener("click",B)}),e.onUnmounted(()=>{document.removeEventListener("click",B)}),(m,$)=>{const u=e.resolveComponent("font-awesome-icon");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(N.value)},[e.createElementVNode("div",Ip,[i.value>0?(e.openBlock(),e.createElementBlock("div",Rp,[e.createElementVNode("span",Up,e.toDisplayString(i.value)+" selected ",1),e.createElementVNode("div",qp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.bulkActions,p=>(e.openBlock(),e.createBlock(oe,{key:p.key,class:e.normalizeClass(Y(p)),onClick:d=>m.$emit("bulk-action",{action:p.key,items:t.selectedItems})},{default:e.withCtx(()=>[p.icon?(e.openBlock(),e.createBlock(u,{key:0,icon:p.icon,class:"w-4 h-4"},null,8,["icon"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(p.label),1)]),_:2},1032,["class","onClick"]))),128))])])):t.totalItems>0?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(S.value)},e.toDisplayString(t.totalItems)+" "+e.toDisplayString(t.totalItems===1?"item":"items"),3)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Yp,[t.showDensityToggle?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(V.value)},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(c,p=>e.createElementVNode("button",{key:p.value,class:e.normalizeClass(U(p.value)),title:p.label,type:"button",onClick:d=>m.$emit("update:density",p.value)},[e.createVNode(u,{icon:p.icon,class:"w-4 h-4"},null,8,["icon"])],10,Hp)),64))],2)):e.createCommentVNode("",!0),t.showColumnToggle?(e.openBlock(),e.createElementBlock("div",Wp,[e.createElementVNode("button",{ref_key:"columnToggleButton",ref:r,class:e.normalizeClass(k.value),type:"button",onClick:e.withModifiers(M,["stop"])},[e.createVNode(u,{icon:"columns",class:"w-4 h-4"}),$[2]||($[2]=e.createElementVNode("span",null,"Columns",-1))],2),e.withDirectives(e.createElementVNode("div",{ref_key:"columnMenu",ref:s,class:e.normalizeClass(h.value),onClick:$[0]||($[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Gp,[e.createElementVNode("div",{class:e.normalizeClass(y.value)}," Show Columns ",2),e.createElementVNode("div",Kp,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.toggleableColumns,p=>(e.openBlock(),e.createElementBlock("div",{key:p.key,class:e.normalizeClass(v.value)},[e.createElementVNode("label",Xp,[e.createElementVNode("input",{type:"checkbox",checked:f(p.key),class:e.normalizeClass(E.value),onChange:d=>x(p.key,d.target.checked)},null,42,Jp),e.createElementVNode("span",{class:e.normalizeClass(C.value)},e.toDisplayString(p.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(T()),type:"button",onClick:$[1]||($[1]=p=>m.$emit("refresh"))},[e.createVNode(u,{icon:"sync",class:e.normalizeClass(_())},null,8,["class"]),$[3]||($[3]=e.createElementVNode("span",null,"Refresh",-1))],10,Qp)):e.createCommentVNode("",!0),m.$slots.actions?(e.openBlock(),e.createElementBlock("div",Zp,[e.renderSlot(m.$slots,"actions")])):e.createCommentVNode("",!0)])],2)}}}),ag={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-12"},ng={class:"grid grid-cols-1 md:grid-cols-4 gap-8"},og={class:"col-span-1 md:col-span-2"},lg={class:"space-y-2"},rg={class:"flex space-x-4"},sg={class:"flex flex-col md:flex-row justify-between items-center"},ig={class:"flex space-x-6 mt-4 md:mt-0"},al={__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(D)("bg-gray-50 border-t border-gray-200",t.className))},[e.createElementVNode("div",ag,[e.createElementVNode("div",ng,[e.createElementVNode("div",og,[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",lg,[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",rg,[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",sg,[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",ig,[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)}}},cg={class:"flex items-center justify-between h-14 sm:h-16 px-3 sm:px-4 md:px-6"},dg={class:"flex items-center gap-2 sm:gap-4 min-w-0 flex-1"},ug={key:1,class:"shrink-0 hidden sm:block"},mg=["src"],fg={key:2,class:"h-6 sm:h-8 w-px bg-gray-300 shrink-0 hidden sm:block"},pg={key:3,class:"shrink-0 bg-linear-to-r from-blue-50 via-indigo-50 to-purple-50 px-2 py-1.5 rounded-lg border border-blue-200 shadow-sm flex items-center gap-2 relative hover:shadow-md transition-shadow max-w-[160px] sm:max-w-xs"},gg={key:0,class:"shrink-0"},vg={class:"relative"},hg=["src","alt"],yg={class:"min-w-0 flex-1"},bg={class:"text-xs font-bold text-blue-900 truncate max-w-[100px] sm:max-w-40 group-hover:text-blue-700 leading-tight"},xg={class:"flex items-center gap-1 mt-0.5"},kg={key:0,class:"text-[10px] sm:text-xs text-blue-700 truncate font-medium leading-tight"},wg={key:2,class:"min-w-0 flex-1"},Cg={class:"text-xs font-bold text-blue-900 truncate max-w-[100px] sm:max-w-40 leading-tight"},Bg={class:"flex items-center gap-1 mt-0.5"},Vg={key:0,class:"text-[10px] sm:text-xs text-blue-700 truncate font-medium leading-tight"},Eg={key:0,class:"absolute top-full left-0 right-0 sm:left-0 sm:right-auto mt-2 w-full sm:w-80 bg-white rounded-xl shadow-xl border border-gray-200 z-50 max-h-96 overflow-hidden"},Ng={class:"p-3 sm:p-4 border-b border-gray-200 bg-linear-to-r from-blue-50 to-indigo-50"},Sg={class:"text-sm font-bold text-gray-900 flex items-center gap-2"},$g={class:"text-xs text-gray-600 mt-1"},zg={class:"py-2 max-h-80 overflow-y-auto"},Dg=["onClick"],Tg={key:0,class:"shrink-0 mr-2 sm:mr-3"},Fg=["src","alt"],Ag={key:1,class:"w-7 h-7 sm:w-8 sm:h-8 rounded-lg bg-linear-to-br from-gray-200 to-gray-300 flex items-center justify-center mr-2 sm:mr-3 shrink-0"},Mg={class:"flex-1 text-left min-w-0"},Lg={class:"font-semibold truncate text-sm"},_g={key:0,class:"text-xs text-gray-500 truncate"},jg={key:4,class:"hidden lg:flex items-center space-x-2 text-sm truncate"},Pg={class:"text-gray-500 truncate"},Og={class:"text-gray-900 font-semibold truncate"},Ig={class:"flex items-center space-x-1 sm:space-x-2 md:space-x-3"},Rg={key:0,class:"relative"},Ug={class:"absolute inset-y-0 left-0 pl-2 sm:pl-3 flex items-center pointer-events-none"},qg=["placeholder"],Yg={key:0,class:"absolute -top-0.5 -right-0.5 sm:-top-1 sm:-right-1 min-w-4 h-4 sm:min-w-[18px] sm:h-[18px] bg-red-500 text-white text-[10px] sm:text-xs rounded-full flex items-center justify-center font-semibold px-0.5 sm:px-1"},Hg={key:0,class:"absolute right-2 sm:right-4 md:right-6 top-14 sm:top-16 mt-2 w-[calc(100vw-1rem)] max-w-sm sm:w-80 md:w-96 bg-white rounded-xl shadow-xl border border-gray-200 z-50"},Wg={class:"p-3 sm:p-4 border-b border-gray-200 bg-linear-to-r from-blue-50 to-indigo-50"},Gg={class:"text-sm sm:text-base font-bold text-gray-900"},Kg={key:0,class:"text-xs text-gray-600 mt-1"},Xg={class:"max-h-[60vh] sm:max-h-96 overflow-y-auto"},Jg={key:0,class:"p-6 sm:p-8 text-center"},Qg=["onClick"],Zg={class:"flex items-start space-x-2 sm:space-x-3"},e0={class:"flex-1 min-w-0"},t0={class:"flex items-start justify-between gap-2"},a0={class:"text-xs sm:text-sm font-semibold text-gray-900 flex-1 leading-tight"},n0={key:0,class:"shrink-0 w-2 h-2 mt-1 bg-blue-500 rounded-full"},o0={key:0,class:"flex items-center gap-1 sm:gap-1.5 mt-1.5 flex-wrap"},l0={class:"inline-flex items-center px-1.5 sm:px-2 py-0.5 rounded text-[10px] sm:text-xs font-semibold bg-indigo-100 text-indigo-800 border border-indigo-200"},r0={class:"inline-flex items-center px-1.5 sm:px-2 py-0.5 rounded text-[10px] sm:text-xs font-medium bg-gray-100 text-gray-700 border border-gray-200"},s0={class:"flex items-center gap-1.5 sm:gap-2 mt-1.5 sm:mt-2 flex-wrap"},i0={key:0,class:"inline-flex items-center px-1.5 sm:px-2 py-0.5 rounded text-[10px] sm:text-xs font-medium bg-blue-100 text-blue-800"},c0={class:"truncate max-w-[100px] sm:max-w-none"},d0={class:"text-[10px] sm:text-xs text-gray-500 mt-1.5 sm:mt-2 flex items-center"},u0={key:0,class:"p-2 sm:p-3 text-center border-t border-gray-200 bg-gray-50"},m0={class:"relative"},f0={class:"w-7 h-7 sm:w-8 sm:h-8 bg-linear-to-br from-blue-100 to-indigo-100 rounded-full flex items-center justify-center transition-colors shadow-sm"},p0={class:"text-blue-700 text-xs sm:text-sm font-medium"},g0={key:0,class:"hidden md:block text-left max-w-40 truncate"},v0={class:"text-sm font-medium text-gray-900 truncate"},h0={class:"text-xs text-gray-500 truncate leading-tight"},y0={key:0,class:"absolute right-0 mt-2 w-56 sm:w-58 bg-white rounded-lg shadow-lg border border-gray-200 z-50"},b0={class:"p-3 sm:p-4 border-b border-gray-200"},x0={class:"text-sm font-medium text-gray-900 truncate"},k0={class:"text-xs text-gray-500 truncate"},w0={class:"py-2"},C0={key:0,class:"absolute left-0 top-1/2 transform -translate-y-1/2 w-1 h-6 sm:h-8 bg-linear-to-b from-blue-500 to-blue-600 rounded-r-full"},B0=["onClick"],V0={class:"flex items-center justify-center w-7 h-7 sm:w-8 sm:h-8 rounded-lg mr-2 sm:mr-3 shrink-0 transition-colors ml-1 sm:ml-2 bg-gray-100 text-gray-600 group-hover:bg-gray-200"},E0={class:"flex-1 truncate font-semibold text-gray-700 text-xs sm:text-sm"},N0={class:"border-t border-gray-200 py-2"},S0={class:"flex items-center justify-center w-7 h-7 sm:w-8 sm:h-8 rounded-lg mr-1 sm:mr-1 shrink-0 transition-colors ml-1 sm:ml-2 bg-red-100 text-red-600 group-hover:bg-red-200"},nl={__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:""},organisationLogos:{type:Object,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(!1),c=e.ref(!1),g=e.ref(!1),b=e.computed(()=>a.notifications.filter(m=>!m.read).length),w=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 m=[];return a.activeRoles?.length>0&&m.push(...a.activeRoles.map($=>typeof $=="string"?$:$.name)),m.length===0&&a.user?.roles?.length>0&&m.push(...a.user.roles.map($=>typeof $=="string"?$:$.name)),m.length===0&&a.currentOrganisation?.role&&m.push(a.currentOrganisation.role),m.length===0?"Member":m.map($=>$.charAt(0).toUpperCase()+$.slice(1).replace(/-/g," ")).join(", ")}),N=e.computed(()=>!a.activeRoles||a.activeRoles.length===0?"":a.activeRoles.map(m=>typeof m=="string"?m:m.name).map(m=>m.charAt(0).toUpperCase()+m.slice(1).replace(/-/g," ")).join(", ")),S=()=>{r.value=!r.value,s.value=!1},V=()=>{s.value=!s.value,r.value=!1,g.value=!1},k=()=>{g.value=!g.value,s.value=!1,r.value=!1},h=m=>{o("navigate",m),s.value=!1},y=m=>m.route?!!(a.currentRoute===m.route||a.currentRoute.startsWith(m.route+"/")):!1,v=m=>{o("profile-action",m),s.value=!1},E=()=>{o("logout"),s.value=!1},C=m=>{o("organisation-change",m),g.value=!1},B=m=>{o("notification-click",m)},M=()=>{o("view-all-notifications"),r.value=!1},Y=m=>{!m.target.closest(".absolute")&&!m.target.closest("button")&&(r.value=!1,s.value=!1,g.value=!1)},U=()=>{c.value=window.innerWidth<768},T=m=>{if(m.title.includes("Overdue"))return"bg-red-100 text-red-600";if(m.title.includes("Due in 0"))return"bg-orange-100 text-orange-600";const $={due_date_reminder:"bg-amber-100 text-amber-600",info:"bg-blue-100 text-blue-600",success:"bg-green-100 text-green-600",warning:"bg-yellow-100 text-yellow-600",error:"bg-red-100 text-red-600"};return $[m.type]||$.info},_=m=>{if(!m)return"";const $=m.split("\\");return $[$.length-1].replace(/([A-Z])/g," $1").trim().split(" ").map(p=>p.charAt(0).toUpperCase()+p.slice(1).toLowerCase()).join(" ")},f=m=>{if(!m)return"";const $=new Date(m),u=new Date;u.setHours(0,0,0,0);const p=new Date($);p.setHours(0,0,0,0);const d=p-u,P=Math.ceil(d/(1e3*60*60*24));return P===0?"Due Today":P===1?"Due Tomorrow":P<0?`${Math.abs(P)} days overdue`:P<=7?`Due in ${P} days`:$.toLocaleDateString("en-KE",{month:"short",day:"numeric",year:$.getFullYear()!==u.getFullYear()?"numeric":void 0})},x=m=>m?.org_id&&a.organisationLogos[m.org_id]||null;return e.onMounted(()=>{document.addEventListener("click",Y),U(),window.addEventListener("resize",U)}),e.onUnmounted(()=>{document.removeEventListener("click",Y),window.removeEventListener("resize",U)}),e.watch(l,m=>o("search",m)),(m,$)=>{const u=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("header",{class:e.normalizeClass(e.unref(D)("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",cg,[e.createElementVNode("div",dg,[c.value?(e.openBlock(),e.createElementBlock("button",{key:0,class:"p-2 text-gray-600 hover:text-gray-900 rounded-lg hover:bg-gray-50 transition-colors shrink-0",onClick:$[0]||($[0]=p=>o("toggle-mobile-sidebar"))},[e.createVNode(L,{icon:"bars",class:"w-5 h-5"})])):e.createCommentVNode("",!0),t.companyLogo&&t.showHeaderLogo?(e.openBlock(),e.createElementBlock("div",ug,[e.createElementVNode("img",{src:t.companyLogo,alt:"Company logo",class:"w-8 h-8 sm:w-10 sm:h-10 object-contain rounded-lg shadow-sm"},null,8,mg)])):e.createCommentVNode("",!0),t.companyLogo&&t.showOrganisationInfo&&t.currentOrganisation?(e.openBlock(),e.createElementBlock("div",fg)):e.createCommentVNode("",!0),t.showOrganisationInfo&&t.currentOrganisation?(e.openBlock(),e.createElementBlock("div",pg,[t.organisationLogo?(e.openBlock(),e.createElementBlock("div",gg,[e.createElementVNode("div",vg,[e.createElementVNode("img",{src:t.organisationLogo,alt:`${t.currentOrganisation.organisation_name} logo`,class:"w-6 h-6 sm:w-8 sm:h-8 object-contain rounded-md bg-white p-0.5 border border-blue-200 shadow-sm"},null,8,hg),$[4]||($[4]=e.createElementVNode("div",{class:"absolute -bottom-0.5 -right-0.5 w-2 h-2 bg-green-500 border border-white rounded-full"},null,-1))])])):e.createCommentVNode("",!0),t.organisations.length>1?(e.openBlock(),e.createElementBlock("button",{key:1,class:"flex items-center gap-1.5 min-w-0 cursor-pointer hover:bg-white/50 rounded-md px-1.5 py-0.5 transition-all group flex-1",onClick:k},[e.createElementVNode("div",yg,[e.createElementVNode("p",bg,e.toDisplayString(t.currentOrganisation.organisation_name),1),e.createElementVNode("div",xg,[e.createVNode(L,{icon:"user",class:"w-2.5 h-2.5 text-blue-600 shrink-0"}),N.value?(e.openBlock(),e.createElementBlock("p",kg,e.toDisplayString(N.value),1)):e.createCommentVNode("",!0)])]),e.createVNode(L,{icon:"chevron-down",class:e.normalizeClass(["w-3 h-3 text-blue-600 shrink-0 group-hover:text-blue-700 transition-transform",{"rotate-180":g.value}])},null,8,["class"])])):(e.openBlock(),e.createElementBlock("div",wg,[e.createElementVNode("p",Cg,e.toDisplayString(t.currentOrganisation.organisation_name),1),e.createElementVNode("div",Bg,[e.createVNode(L,{icon:"user",class:"w-2.5 h-2.5 text-blue-600 shrink-0"}),N.value?(e.openBlock(),e.createElementBlock("p",Vg,e.toDisplayString(N.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(()=>[g.value?(e.openBlock(),e.createElementBlock("div",Eg,[e.createElementVNode("div",Ng,[e.createElementVNode("h3",Sg,[e.createVNode(L,{icon:"list",class:"w-4 h-4 text-blue-600"}),e.createTextVNode(" "+e.toDisplayString(t.organisationSwitcherTitle),1)]),e.createElementVNode("p",$g,e.toDisplayString(t.organisationSwitcherDescription),1)]),e.createElementVNode("div",zg,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.organisations,p=>(e.openBlock(),e.createElementBlock("button",{key:p.org_id||p.organisation_name,class:e.normalizeClass(e.unref(D)("flex items-center w-full px-3 sm:px-4 py-2.5 sm:py-3 text-sm transition-all group",p.org_id===t.currentOrganisation?.org_id?"bg-linear-to-r from-blue-50 to-indigo-50 text-blue-700 border-l-4 border-blue-500":"text-gray-700 hover:bg-gray-50 border-l-4 border-transparent")),onClick:d=>C(p)},[x(p)?(e.openBlock(),e.createElementBlock("div",Tg,[e.createElementVNode("img",{src:x(p),alt:`${p.organisation_name} logo`,class:"w-7 h-7 sm:w-8 sm:h-8 object-contain rounded-lg bg-white p-0.5 sm:p-1 border border-gray-200 group-hover:border-blue-200 transition-colors"},null,8,Fg)])):(e.openBlock(),e.createElementBlock("div",Ag,[e.createVNode(L,{icon:"building",class:"w-3.5 h-3.5 sm:w-4 sm:h-4 text-gray-500"})])),e.createElementVNode("div",Mg,[e.createElementVNode("p",Lg,e.toDisplayString(p.organisation_name),1),p.type?(e.openBlock(),e.createElementBlock("p",_g,e.toDisplayString(p.type.name),1)):e.createCommentVNode("",!0)]),p.org_id===t.currentOrganisation?.org_id?(e.openBlock(),e.createBlock(L,{key:2,icon:"check-circle",class:"w-4 h-4 sm:w-5 sm:h-5 text-blue-600 shrink-0 ml-2"})):e.createCommentVNode("",!0)],10,Dg))),128))])])):e.createCommentVNode("",!0)]),_:1})])):e.createCommentVNode("",!0),t.showBreadcrumb?(e.openBlock(),e.createElementBlock("nav",jg,[e.createElementVNode("span",Pg,e.toDisplayString(t.currentSection),1),e.createVNode(L,{icon:"chevron-right",class:"w-4 h-4 text-gray-400 shrink-0"}),e.createElementVNode("span",Og,e.toDisplayString(t.currentPage),1)])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Ig,[t.showSearch&&(!c.value||i.value)?(e.openBlock(),e.createElementBlock("div",Rg,[e.createElementVNode("div",Ug,[e.createVNode(L,{icon:"search",class:"w-4 h-4 text-gray-400"})]),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":$[1]||($[1]=p=>l.value=p),type:"text",placeholder:t.searchPlaceholder,class:"pl-8 sm:pl-10 pr-8 sm:pr-4 py-1.5 sm:py-2 w-36 sm:w-48 md:w-64 text-xs sm:text-sm border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-blue-500 outline-none transition-all"},null,8,qg),[[e.vModelText,l.value]]),c.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 p-1",onClick:$[2]||($[2]=p=>i.value=!1)},[e.createVNode(L,{icon:"times",class:"w-4 h-4"})])):e.createCommentVNode("",!0)])):t.showSearch&&c.value?(e.openBlock(),e.createElementBlock("button",{key:1,class:"p-2 text-gray-400 hover:text-gray-600 rounded-lg hover:bg-gray-50 transition-colors",onClick:$[3]||($[3]=p=>i.value=!0)},[e.createVNode(L,{icon:"search",class:"w-5 h-5"})])):e.createCommentVNode("",!0),t.showNotifications?(e.openBlock(),e.createElementBlock("button",{key:2,class:"relative p-1.5 sm:p-2 text-gray-400 hover:text-gray-600 rounded-lg hover:bg-gray-50 transition-colors",onClick:S},[e.createVNode(L,{icon:"bell",class:"w-5 h-5"}),b.value>0?(e.openBlock(),e.createElementBlock("span",Yg,e.toDisplayString(b.value>9?"9+":b.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",Hg,[e.createElementVNode("div",Wg,[e.createElementVNode("h3",Gg,e.toDisplayString(t.notificationsTitle),1),b.value>0?(e.openBlock(),e.createElementBlock("p",Kg," You have "+e.toDisplayString(b.value)+" unread notification"+e.toDisplayString(b.value>1?"s":""),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Xg,[t.notifications.length===0?(e.openBlock(),e.createElementBlock("div",Jg,[e.createVNode(L,{icon:"bell",class:"w-10 h-10 sm:w-12 sm:h-12 mx-auto text-gray-300 mb-2"}),$[5]||($[5]=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,p=>(e.openBlock(),e.createElementBlock("div",{key:p.id,class:e.normalizeClass(["p-3 sm:p-4 border-b border-gray-100 hover:bg-gray-50 cursor-pointer transition-colors",p.read?"opacity-60":""]),onClick:d=>B(p)},[e.createElementVNode("div",Zg,[e.createElementVNode("div",{class:e.normalizeClass(["shrink-0 w-8 h-8 sm:w-9 sm:h-9 rounded-lg flex items-center justify-center",T(p)])},[p.title.includes("Overdue")?(e.openBlock(),e.createBlock(L,{key:0,icon:"exclamation-triangle",class:"w-4 h-4 sm:w-5 sm:h-5"})):p.type==="due_date_reminder"?(e.openBlock(),e.createBlock(L,{key:1,icon:"clock",class:"w-4 h-4 sm:w-5 sm:h-5"})):(e.openBlock(),e.createBlock(L,{key:2,icon:"bell",class:"w-4 h-4 sm:w-5 sm:h-5"}))],2),e.createElementVNode("div",e0,[e.createElementVNode("div",t0,[e.createElementVNode("p",a0,e.toDisplayString(p.title),1),p.read?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",n0))]),p.source?(e.openBlock(),e.createElementBlock("div",o0,[e.createElementVNode("span",l0,[e.createVNode(L,{icon:"tag",class:"w-2.5 h-2.5 sm:w-3 sm:h-3 mr-0.5 sm:mr-1"}),e.createTextVNode(" "+e.toDisplayString(p.source.body_code),1)]),e.createVNode(L,{icon:"chevron-right",class:"w-2.5 h-2.5 sm:w-3 sm:h-3 text-gray-400 hidden xs:block"}),e.createElementVNode("span",r0,e.toDisplayString(p.source.code),1)])):e.createCommentVNode("",!0),e.createElementVNode("div",s0,[p.model?(e.openBlock(),e.createElementBlock("span",i0,[e.createVNode(L,{icon:"file",class:"w-2.5 h-2.5 sm:w-3 sm:h-3 mr-0.5 sm:mr-1"}),e.createElementVNode("span",c0,e.toDisplayString(_(p.model)),1)])):e.createCommentVNode("",!0),p.due_date?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(["inline-flex items-center px-1.5 sm:px-2 py-0.5 rounded text-[10px] sm:text-xs font-medium whitespace-nowrap",p.title.includes("Overdue")?"bg-red-100 text-red-800 border border-red-200":p.title.includes("Due in 0")?"bg-orange-100 text-orange-800 border border-orange-200":"bg-amber-100 text-amber-800 border border-amber-200"])},[e.createVNode(L,{icon:"calendar",class:"w-2.5 h-2.5 sm:w-3 sm:h-3 mr-0.5 sm:mr-1 shrink-0"}),e.createTextVNode(" "+e.toDisplayString(f(p.due_date)),1)],2)):e.createCommentVNode("",!0)]),e.createElementVNode("p",d0,[e.createVNode(L,{icon:"clock",class:"w-2.5 h-2.5 sm:w-3 sm:h-3 mr-0.5 sm:mr-1"}),e.createTextVNode(" "+e.toDisplayString(p.time),1)])])])],10,Qg))),128))]),t.notifications.length>0?(e.openBlock(),e.createElementBlock("div",u0,[e.createElementVNode("button",{class:"text-xs sm:text-sm font-semibold text-blue-600 hover:text-blue-700 transition-colors",onClick:M}," View all notifications → ")])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),_:1}),e.createElementVNode("div",m0,[e.createElementVNode("button",{class:"flex items-center space-x-1 sm:space-x-2 md:space-x-3 p-1 sm:p-2 rounded-lg hover:bg-gray-50 transition-colors",onClick:V},[e.createElementVNode("div",f0,[e.createElementVNode("span",p0,e.toDisplayString(w.value),1)]),t.showUserDetails?(e.openBlock(),e.createElementBlock("div",g0,[e.createElementVNode("p",v0,e.toDisplayString(t.user.name),1),e.createElementVNode("p",h0,e.toDisplayString(z.value),1)])):e.createCommentVNode("",!0),e.createVNode(L,{icon:"chevron-down",class:"w-3.5 h-3.5 sm:w-4 sm:h-4 text-gray-400"})]),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",y0,[e.createElementVNode("div",b0,[e.createElementVNode("p",x0,e.toDisplayString(t.user.name),1),e.createElementVNode("p",k0,e.toDisplayString(t.user.email),1)]),e.createElementVNode("div",w0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.profileMenuItems,p=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:p.name},[p.route?(e.openBlock(),e.createBlock(u,{key:0,to:p.route,class:e.normalizeClass(e.unref(D)("flex items-center px-2.5 sm:px-3 py-2 sm:py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",y(p)?"bg-linear-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:d=>h(p)},{default:e.withCtx(()=>[y(p)?(e.openBlock(),e.createElementBlock("div",C0)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(D)("flex items-center justify-center w-7 h-7 sm:w-8 sm:h-8 rounded-lg mr-2 sm:mr-3 shrink-0 transition-colors ml-1 sm:ml-2",y(p)?"bg-linear-to-br from-blue-500 to-blue-600 text-white shadow-md":"bg-gray-100 text-gray-600 group-hover:bg-gray-200"))},[p.icon?(e.openBlock(),e.createBlock(L,{key:0,icon:p.icon,class:"w-3.5 h-3.5 sm:w-4 sm:h-4"},null,8,["icon"])):e.createCommentVNode("",!0)],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(D)("flex-1 truncate font-semibold text-xs sm:text-sm",y(p)?"text-blue-700":"text-gray-700"))},e.toDisplayString(p.label),3)]),_:2},1032,["to","class","onClick"])):(e.openBlock(),e.createElementBlock("button",{key:1,class:"flex items-center w-full px-2.5 sm:px-3 py-2 sm: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:d=>v(p)},[e.createElementVNode("div",V0,[p.icon?(e.openBlock(),e.createBlock(L,{key:0,icon:p.icon,class:"w-3.5 h-3.5 sm:w-4 sm:h-4"},null,8,["icon"])):e.createCommentVNode("",!0)]),e.createElementVNode("span",E0,e.toDisplayString(p.label),1)],8,B0))],64))),128))]),e.createElementVNode("div",N0,[e.createElementVNode("button",{class:"flex items-center w-full px-2.5 sm:px-3 py-2 sm: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:E},[e.createElementVNode("div",S0,[e.createVNode(L,{icon:"sign-out-alt",class:"w-3.5 h-3.5 sm:w-4 sm:h-4"})]),$[6]||($[6]=e.createElementVNode("span",{class:"truncate font-semibold text-red-600 text-xs sm:text-sm"}," Sign out ",-1))])])])):e.createCommentVNode("",!0)]),_:1})])])])],2)}}},$0={class:"relative"},z0=["id","disabled"],D0={key:0,class:"text-gray-500"},T0={key:1,class:"flex flex-wrap gap-1.5"},F0={class:"px-3 py-2.5 border-b border-gray-200 bg-gray-50"},A0={key:0,class:"max-h-52 overflow-y-auto py-1"},M0=["onClick"],L0={class:"flex items-center gap-3"},_0=["checked"],j0={key:1,class:"px-4 py-6 text-sm text-gray-500 text-center"},ol={__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),g=e.ref({}),b=e.computed(()=>a.options.filter(h=>a.modelValue.includes(h.value)).map(h=>h.label)),w=()=>{if(!c.value)return;const h=c.value.getBoundingClientRect(),y=window.innerHeight,v=y-h.bottom,E=320;v<E&&h.top>E?g.value={position:"fixed",bottom:`${y-h.top+4}px`,left:`${h.left}px`,width:`${h.width}px`,zIndex:9999}:g.value={position:"fixed",top:`${h.bottom+4}px`,left:`${h.left}px`,width:`${h.width}px`,zIndex:9999}},z=()=>{a.disabled||(l.value=!l.value,l.value?(w(),e.nextTick(()=>{s.value?.focus()})):(r.value="",i.value=[...a.options]))},N=h=>{let y;a.modelValue.includes(h)?y=a.modelValue.filter(v=>v!==h):y=[...a.modelValue,h],o("update:modelValue",y)},S=()=>{if(!r.value.trim())i.value=[...a.options];else{const h=r.value.toLowerCase();i.value=a.options.filter(y=>y.label.toLowerCase().includes(h))}},V=h=>{h.key==="Escape"&&(l.value=!1,r.value="",i.value=[...a.options])},k=h=>{if(!c.value)return;const y=h.target;y&&!c.value.contains(y)&&!y.closest("[data-multiselect-dropdown]")&&(l.value=!1,r.value="",i.value=[...a.options])};return e.onMounted(()=>{document.addEventListener("click",k),window.addEventListener("scroll",w,!0),window.addEventListener("resize",w)}),e.onUnmounted(()=>{document.removeEventListener("click",k),window.removeEventListener("scroll",w,!0),window.removeEventListener("resize",w)}),e.watch(()=>a.options,h=>{i.value=[...h]},{immediate:!0}),e.watch(l,h=>{h&&w()}),(h,y)=>(e.openBlock(),e.createElementBlock("div",$0,[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:V},[b.value.length===0?(e.openBlock(),e.createElementBlock("div",D0,e.toDisplayString(t.placeholder||"Select options"),1)):(e.openBlock(),e.createElementBlock("div",T0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value,v=>(e.openBlock(),e.createBlock(va,{key:v,variant:"primary",size:"sm"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(v),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"},[...y[2]||(y[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,z0),(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(g.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",F0,[e.withDirectives(e.createElementVNode("input",{ref_key:"searchInput",ref:s,"onUpdate:modelValue":y[0]||(y[0]=v=>r.value=v),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:S,onKeydown:y[1]||(y[1]=e.withModifiers(()=>{},["stop"]))},null,544),[[e.vModelText,r.value]])]),i.value.length>0?(e.openBlock(),e.createElementBlock("div",A0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,v=>(e.openBlock(),e.createElementBlock("button",{key:v.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(v.value)}]),onClick:E=>N(v.value)},[e.createElementVNode("div",L0,[e.createElementVNode("input",{type:"checkbox",checked:t.modelValue.includes(v.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,_0),e.createElementVNode("span",{class:e.normalizeClass(["block font-normal truncate",{"text-blue-900 font-medium":t.modelValue.includes(v.value)}])},e.toDisplayString(v.label),3)])],10,M0))),128))])):(e.openBlock(),e.createElementBlock("div",j0," No options found "))],4)):e.createCommentVNode("",!0)]),_:1})]))]))}},P0={class:"mb-6"},O0={class:"text-xl font-semibold text-gray-900"},I0={class:"text-sm text-gray-600 mt-1"},R0={class:"grid grid-cols-12 gap-6"},U0=["value"],q0={key:5,class:"flex items-center"},Y0={key:6,class:"flex items-center"},H0=["id","aria-checked","disabled","onClick"],W0={key:7,class:"space-y-2"},G0={key:8,class:"w-full"},K0={key:0,class:"mt-2 text-xs text-gray-500"},X0={key:9,class:"w-full"},J0={key:0,class:"mt-2 text-xs text-gray-500"},Q0={key:11,class:"space-y-2"},Z0={class:"flex items-center gap-4"},ev={class:"text-sm font-medium text-gray-700 min-w-[3rem] text-right"},tv={class:"flex justify-end gap-3 pt-6"},ll={__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:f=>o("update:modelValue",f)}),r=e.computed(()=>a.loading),s=e.ref({}),i=e.ref({}),c=e.ref(!1),g=e.ref({}),b=e.ref({}),w=(f,x)=>{if(!(!f||!x))return x.split(".").reduce((m,$)=>m?.[$],f)},z=(f,x,m)=>{const $=x.split("."),u=$.pop(),p=$.reduce((d,P)=>(d[P]||(d[P]={}),d[P]),f);p[u]=m},N=()=>{const f={};return a.fields.forEach(x=>{if(x.name.includes(".")){const[m]=x.name.split(".");f[m]||(f[m]={}),z(f,x.name,S(x))}else x.type==="checkbox"||x.type==="switch"?f[x.name]=!1:x.type==="number"||x.type==="slider"||x.type==="range"?f[x.name]=x.min!==void 0?x.min:0:x.type==="file"?f[x.name]=null:x.type==="multifile"?f[x.name]=[]:x.type==="radio"?f[x.name]=x.options?.[0]?.value||"":x.type==="multiselect"?f[x.name]=[]:(x.type,f[x.name]="")}),f},S=f=>f.type==="checkbox"||f.type==="switch"?!1:f.type==="number"||f.type==="slider"||f.type==="range"?f.min!==void 0?f.min:0:f.type==="file"?null:f.type==="multifile"?[]:f.type==="radio"?f.options?.[0]?.value||"":f.type==="multiselect"?[]:(f.type==="combobox",""),V=f=>{const x={};return a.fields.forEach(m=>{if(m.name.includes(".")){const $=w(f,m.name);x[m.name.split(".")[0]]||(x[m.name.split(".")[0]]={}),z(x,m.name,$!==void 0?$:S(m))}else{const $=f?.[m.name];m.type==="checkbox"||m.type==="switch"?x[m.name]=$??!1:m.type==="number"||m.type==="slider"||m.type==="range"?x[m.name]=$??(m.min!==void 0?m.min:0):m.type==="file"?x[m.name]=null:m.type==="multifile"?x[m.name]=Array.isArray($)?$:[]:m.type==="multiselect"?x[m.name]=Array.isArray($)?$:[]:x[m.name]=$??S(m)}}),x};e.watch(()=>a.initialData,f=>{a.modalType==="edit"&&f||a.modalType==="create"&&f&&!c.value?(s.value=V(f),c.value=!0):a.modalType==="create"&&!f&&(s.value=N(),c.value=!1)},{immediate:!0,deep:!0}),e.watch(()=>a.modelValue,f=>{f&&(i.value={},a.modalType==="create"&&(c.value=!1,a.initialData?s.value=V(a.initialData):s.value=N(),c.value=!0))}),e.watch(()=>a.initialData,f=>{c.value&&f&&(s.value=V(f))},{deep:!0});const k=()=>{if(i.value={},a.fields.forEach(f=>{if(f.required&&!f.disabled&&f.type!=="hidden"){const x=f.name.includes(".")?w(s.value,f.name):s.value[f.name];f.type==="checkbox"||f.type==="switch"?f.required&&!x&&(i.value[f.name]=f.errorMessage||`${f.label} is required`):f.type==="number"||f.type==="slider"||f.type==="range"?x===""||x===null||x===void 0?i.value[f.name]=f.errorMessage||`${f.label} is required`:f.min!==void 0&&Number(x)<f.min?i.value[f.name]=`${f.label} must be at least ${f.min}`:f.max!==void 0&&Number(x)>f.max&&(i.value[f.name]=`${f.label} must be at most ${f.max}`):f.type==="email"?!x||!x.trim()?i.value[f.name]=f.errorMessage||`${f.label} is required`:/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(x)||(i.value[f.name]="Please enter a valid email address"):f.type==="url"?!x||!x.trim()?i.value[f.name]=f.errorMessage||`${f.label} is required`:/^https?:\/\/.+/.test(x)||(i.value[f.name]="Please enter a valid URL"):f.type==="tel"?(!x||!x.trim())&&(i.value[f.name]=f.errorMessage||`${f.label} is required`):f.type==="file"?x||(i.value[f.name]=f.errorMessage||`${f.label} is required`):f.type==="multifile"?!Array.isArray(x)||x.length===0?i.value[f.name]=f.errorMessage||`${f.label} is required`:f.minFiles&&x.length<f.minFiles?i.value[f.name]=`Please upload at least ${f.minFiles} file(s)`:f.maxFiles&&x.length>f.maxFiles&&(i.value[f.name]=`Maximum ${f.maxFiles} file(s) allowed`):f.type==="radio"?x||(i.value[f.name]=f.errorMessage||`${f.label} is required`):f.type==="multiselect"?(!Array.isArray(x)||x.length===0)&&(i.value[f.name]=f.errorMessage||`${f.label} is required`):f.type==="combobox"?(!x||typeof x=="string"&&!x.trim())&&(i.value[f.name]=f.errorMessage||`${f.label} is required`):f.type==="date"||f.type==="time"||f.type==="datetime-local"||f.type==="month"||f.type==="week"?(!x||typeof x=="string"&&!x.trim())&&(i.value[f.name]=f.errorMessage||`${f.label} is required`):f.type==="password"?(!x||typeof x=="string"&&!x.trim())&&(i.value[f.name]=f.errorMessage||`${f.label} is required`):(!x||typeof x=="string"&&!x.trim())&&(i.value[f.name]=f.errorMessage||`${f.label} is required`)}if(f.validate&&typeof f.validate=="function"){const x=f.name.includes(".")?w(s.value,f.name):s.value[f.name],m=f.validate(x,s.value);m&&(i.value[f.name]=m)}}),a.customValidation){const f=a.customValidation(s.value);f&&Object.keys(f).length>0&&(i.value={...i.value,...f})}return Object.keys(i.value).length===0},h=async(f,x)=>{if(f.name.includes(".")?z(s.value,f.name,x):s.value[f.name]=x,f.onChange&&typeof f.onChange=="function")try{await f.onChange(x,s.value)}catch(m){console.error("Error in onChange handler:",m),se.error("An error occurred while processing the change")}},y=(f,x)=>{if(f.name.includes(".")?z(s.value,f.name,x):s.value[f.name]=x,f.onChange&&typeof f.onChange=="function")try{f.onChange(x,s.value)}catch(m){console.error("Error in onChange handler:",m),se.error("An error occurred while processing the change")}},v=async()=>{try{if(a.fields.some(u=>u.type!=="multifile"&&g.value[u.name]?.length>0)){se.error("Please wait for all files to finish uploading");return}if(!k()){se.error("Please fix the validation errors before submitting");return}const x={};let m=!1;a.fields.forEach(u=>{const p=u.name.includes(".")?w(s.value,u.name):s.value[u.name];if(u.type==="number"||u.type==="slider"||u.type==="range")u.name.includes(".")?z(x,u.name,Number(p)):x[u.name]=Number(p);else if(u.type==="file")p instanceof File?(m=!0,x[u.name]=p):a.modalType==="edit"&&p&&(x[u.name]=p);else if(u.type==="multifile")Array.isArray(p)&&p.some(d=>d instanceof File)?(m=!0,x[u.name]=p):a.modalType==="edit"&&Array.isArray(p)&&p.length>0&&(x[u.name]=p);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 d=typeof p=="string"?p.trim():p;u.name.includes(".")?z(x,u.name,d):x[u.name]=d}else u.type,u.name.includes(".")?z(x,u.name,p):x[u.name]=p});let $=x;m&&($=E(x),a.modalType==="edit"&&$.append("_method","PUT")),o("submit",{formData:$,modalType:a.modalType,originalData:a.initialData,hasFiles:m})}catch(f){console.error("Error during form submission:",f),se.error("An error occurred during submission")}},E=f=>{const x=new FormData;return Object.keys(f).forEach(m=>{const $=f[m];$!=null&&($ instanceof File?x.append(m,$):Array.isArray($)?$.forEach((u,p)=>{u instanceof File?x.append(`${m}[]`,u):x.append(`${m}[${p}]`,u)}):typeof $=="object"&&!($ instanceof Date)?Object.keys($).forEach(u=>{x.append(`${m}[${u}]`,$[u])}):x.append(m,$))}),x},C=()=>{s.value=N(),i.value={},c.value=!1,g.value={},b.value={},o("close")},B=f=>f.includes(".")?w(s.value,f):s.value[f],M=(f,x)=>{f.includes(".")?z(s.value,f,x):s.value[f]=x},Y=(f,x)=>{if(M(f.name,x),f.onChange&&typeof f.onChange=="function")try{f.onChange(x,s.value)}catch(m){console.error("Error in onChange handler:",m)}},U=(f,x)=>{if(M(f.name,x),f.onChange&&typeof f.onChange=="function")try{f.onChange(x,s.value)}catch(m){console.error("Error in onChange handler:",m)}},T=(f,x)=>{if(M(f.name,x),f.onChange&&typeof f.onChange=="function")try{f.onChange(x,s.value)}catch(m){console.error("Error in onChange handler:",m)}},_=(f,x)=>{if(M(f.name,x),f.onChange&&typeof f.onChange=="function")try{f.onChange(x,s.value)}catch(m){console.error("Error in onChange handler:",m)}};return(f,x)=>(e.openBlock(),e.createBlock(Ue,{modelValue:l.value,"onUpdate:modelValue":x[0]||(x[0]=m=>l.value=m),"show-close":!0,"close-on-backdrop":!0,size:t.modalSize,class:e.normalizeClass(t.modalHeight==="auto"?"":t.modalHeight),resizable:t.modalResizable,onClose:C},{default:e.withCtx(()=>[e.createElementVNode("div",P0,[e.createElementVNode("h2",O0,e.toDisplayString(t.modalType==="create"?`Add New ${t.entityName}`:`Edit ${t.entityName}`),1),e.createElementVNode("p",I0,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:"overflow-y-auto",onSubmit:e.withModifiers(v,["prevent"])},[e.createElementVNode("div",R0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.fields,m=>(e.openBlock(),e.createElementBlock("div",{key:m.name,class:e.normalizeClass(m.wrapperClass||"col-span-12")},[m.type==="hidden"?(e.openBlock(),e.createElementBlock("input",{key:0,value:B(m.name),type:"hidden"},null,8,U0)):(e.openBlock(),e.createBlock(Et,{key:1,id:`form-${t.entityName}-${m.name}-${Math.random().toString(36).slice(2,5)}`,label:m.label,required:m.required&&!m.disabled,error:i.value[m.name],"error-message":i.value[m.name]},{default:e.withCtx(({fieldId:$,hasError:u,ariaDescribedBy:p})=>[["text","number","password","color","email","tel","url","search"].includes(m.type)?(e.openBlock(),e.createBlock(le,{key:0,id:$,"model-value":B(m.name),type:m.type,placeholder:m.placeholder,disabled:r.value||m.disabled,readonly:m.disabled,class:e.normalizeClass(u?"border-red-500":"border-slate-300"),"aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","type","placeholder","disabled","readonly","class","aria-describedby","onUpdate:modelValue"])):m.type==="textarea"?(e.openBlock(),e.createBlock(Vt,{key:1,id:$,"model-value":B(m.name),placeholder:m.placeholder,disabled:r.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",u?"border-red-500":"border-slate-300"]),"aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","placeholder","disabled","rows","class","aria-describedby","onUpdate:modelValue"])):m.type==="select"?(e.openBlock(),e.createBlock(he,{key:2,id:$,"model-value":B(m.name),options:m.options,placeholder:m.placeholder||"Select an option",disabled:r.value||m.disabled,"has-error":u,"aria-describedby":p,"onUpdate:modelValue":d=>h(m,d)},null,8,["id","model-value","options","placeholder","disabled","has-error","aria-describedby","onUpdate:modelValue"])):m.type==="multiselect"?(e.openBlock(),e.createBlock(ol,{key:3,id:$,"model-value":B(m.name),options:m.options,disabled:r.value||m.disabled,placeholder:m.placeholder||"Select options","has-error":u,"aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","options","disabled","placeholder","has-error","aria-describedby","onUpdate:modelValue"])):m.type==="combobox"?(e.openBlock(),e.createBlock(he,{key:4,id:$,"model-value":B(m.name),options:m.options,placeholder:m.placeholder||"Select or type to add new",disabled:r.value||m.disabled,"has-error":u,"aria-describedby":p,"allow-create":m.allowCreate,"onUpdate:modelValue":d=>h(m,d)},null,8,["id","model-value","options","placeholder","disabled","has-error","aria-describedby","allow-create","onUpdate:modelValue"])):m.type==="checkbox"?(e.openBlock(),e.createElementBlock("div",q0,[e.createVNode(le,{id:$,"model-value":B(m.name),type:"checkbox",disabled:r.value||m.disabled,class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300 rounded","aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","disabled","aria-describedby","onUpdate:modelValue"]),e.createVNode(Be,{for:$,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",Y0,[e.createElementVNode("button",{id:$,type:"button",role:"switch","aria-checked":B(m.name),disabled:r.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",B(m.name)?"bg-blue-600":"bg-gray-200",r.value||m.disabled?"opacity-50 cursor-not-allowed":"cursor-pointer"]),onClick:d=>M(m.name,!B(m.name))},[e.createElementVNode("span",{class:e.normalizeClass(["inline-block h-4 w-4 transform rounded-full bg-white transition-transform",B(m.name)?"translate-x-6":"translate-x-1"])},null,2)],10,H0),e.createVNode(Be,{for:$,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",W0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.options,d=>(e.openBlock(),e.createElementBlock("div",{key:d.value,class:"flex items-center"},[e.createVNode(le,{id:`${$}-${d.value}`,"model-value":B(m.name),type:"radio",value:d.value,disabled:r.value||m.disabled,class:"h-4 w-4 text-blue-600 focus:ring-blue-500 border-gray-300","aria-describedby":p,"onUpdate:modelValue":P=>M(m.name,P)},null,8,["id","model-value","value","disabled","aria-describedby","onUpdate:modelValue"]),e.createVNode(Be,{for:`${$}-${d.value}`,class:"ml-2 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(d.label),1)]),_:2},1032,["for"])]))),128))])):m.type==="file"?(e.openBlock(),e.createElementBlock("div",G0,[e.createVNode(et,{multiple:!1,accept:m.accept,"max-size":m.maxSize,variant:m.variant||"default",onFilesSelected:d=>Y(m,d),onFileRemoved:d=>U(m,d)},null,8,["accept","max-size","variant","onFilesSelected","onFileRemoved"]),m.helpText?(e.openBlock(),e.createElementBlock("p",K0,e.toDisplayString(m.helpText),1)):e.createCommentVNode("",!0)])):m.type==="multifile"?(e.openBlock(),e.createElementBlock("div",X0,[e.createVNode(et,{multiple:m.multiple!==!1,accept:m.accept,"max-size":m.maxSize,"max-files":m.maxFiles,variant:m.variant||"default",onFilesSelected:d=>T(m,d),onFileRemoved:d=>_(m,d)},null,8,["multiple","accept","max-size","max-files","variant","onFilesSelected","onFileRemoved"]),m.helpText?(e.openBlock(),e.createElementBlock("p",J0,e.toDisplayString(m.helpText),1)):e.createCommentVNode("",!0)])):m.type==="slider"?(e.openBlock(),e.createBlock(Nt,{key:10,"model-value":B(m.name),min:m.min,max:m.max,step:m.step,disabled:r.value||m.disabled,"onUpdate:modelValue":d=>y(m,d)},null,8,["model-value","min","max","step","disabled","onUpdate:modelValue"])):m.type==="range"?(e.openBlock(),e.createElementBlock("div",Q0,[e.createElementVNode("div",Z0,[e.createVNode(le,{id:$,"model-value":B(m.name),type:"range",min:m.min,max:m.max,step:m.step||1,disabled:r.value||m.disabled,class:"flex-1","aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","min","max","step","disabled","aria-describedby","onUpdate:modelValue"]),e.createElementVNode("span",ev,e.toDisplayString(B(m.name)),1)])])):m.type==="date"?(e.openBlock(),e.createBlock(lt,{key:12,id:$,"model-value":B(m.name),disabled:r.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":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","disabled","required","min","max","placeholder","format","clearable","show-today","calendar-position","aria-describedby","onUpdate:modelValue"])):m.type==="time"?(e.openBlock(),e.createBlock(le,{key:13,id:$,"model-value":B(m.name),type:"time",disabled:r.value||m.disabled,class:e.normalizeClass(u?"border-red-500":"border-slate-300"),"aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):m.type==="datetime-local"?(e.openBlock(),e.createBlock(le,{key:14,id:$,"model-value":B(m.name),type:"datetime-local",disabled:r.value||m.disabled,class:e.normalizeClass(u?"border-red-500":"border-slate-300"),"aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):m.type==="month"?(e.openBlock(),e.createBlock(le,{key:15,id:$,"model-value":B(m.name),type:"month",disabled:r.value||m.disabled,class:e.normalizeClass(u?"border-red-500":"border-slate-300"),"aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):m.type==="week"?(e.openBlock(),e.createBlock(le,{key:16,id:$,"model-value":B(m.name),type:"week",disabled:r.value||m.disabled,class:e.normalizeClass(u?"border-red-500":"border-slate-300"),"aria-describedby":p,"onUpdate:modelValue":d=>M(m.name,d)},null,8,["id","model-value","disabled","class","aria-describedby","onUpdate:modelValue"])):e.createCommentVNode("",!0)]),_:2},1032,["id","label","required","error","error-message"]))],2))),128))]),e.createElementVNode("div",tv,[e.createVNode(oe,{type:"button",variant:"outline",disabled:r.value,onClick:C},{default:e.withCtx(()=>[...x[1]||(x[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"]))}},av={class:"w-full p-2"},nv={key:0,class:"mb-6"},ov={class:"text-xl font-semibold text-gray-900"},lv={key:0,class:"text-sm text-gray-600 mt-1"},rv=["onUpdate:modelValue"],sv={key:4,class:"flex items-center"},iv={key:5,class:"flex items-center"},cv=["id","aria-checked","disabled","onClick"],dv={key:6,class:"space-y-2"},uv={key:7,class:"space-y-2"},mv={key:0,class:"text-xs text-gray-500"},fv={key:8,class:"space-y-3"},pv=["onDrop","onDragenter","onDragleave","onClick"],gv=["multiple","accept","disabled","onChange"],vv={class:"flex items-center justify-center px-4 py-4"},hv={class:"flex flex-col"},yv={class:"text-xs text-gray-500"},bv={key:0,class:"ml-1"},xv={key:1,class:"ml-1"},kv={key:0,class:"text-xs text-gray-500"},wv={key:1,class:"space-y-2"},Cv={class:"flex items-center space-x-3 flex-1 min-w-0"},Bv={class:"relative h-10 w-10 shrink-0"},Vv={class:"h-10 w-10 text-gray-300",viewBox:"0 0 36 36"},Ev=["stroke-dasharray"],Nv={class:"absolute inset-0 flex items-center justify-center text-xs font-medium text-gray-700"},Sv={class:"flex flex-col min-w-0"},$v={class:"text-sm font-medium text-gray-900 truncate"},zv=["onClick"],Dv={key:2,class:"space-y-2"},Tv={class:"flex items-center space-x-3 flex-1 min-w-0"},Fv={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"},Av={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"},Mv={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"},Lv={class:"flex flex-col min-w-0"},_v={class:"text-sm font-medium text-gray-900 truncate"},jv={class:"text-xs text-gray-500"},Pv=["disabled","onClick"],Ov={key:3,class:"text-xs text-blue-600 font-medium"},Iv={key:0},Rv={key:10,class:"space-y-2"},Uv={class:"flex items-center gap-4"},qv={class:"text-sm font-medium text-gray-700 min-w-[3rem] text-right"},Yv={class:"flex justify-end gap-3 pt-6"},rl={__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({}),g=e.ref({}),b=e.ref({}),w=u=>{const p=b.value[u];p&&p.click()},z=(u,p)=>{p&&(b.value[u]=p)},N=()=>{const u={};return a.fields.forEach(p=>{p.type==="checkbox"||p.type==="switch"?u[p.name]=!1:p.type==="number"||p.type==="slider"||p.type==="range"?u[p.name]=p.min!==void 0?p.min:0:p.type==="file"?u[p.name]=null:p.type==="multifile"?u[p.name]=[]:p.type==="radio"?u[p.name]=p.options?.[0]?.value||"":p.type==="multiselect"?u[p.name]=[]:u[p.name]=""}),u};e.watch(()=>a.initialData,u=>{if(u){const p={};a.fields.forEach(d=>{d.type==="checkbox"||d.type==="switch"?p[d.name]=u[d.name]??!1:d.type==="number"||d.type==="slider"||d.type==="range"?p[d.name]=u[d.name]??(d.min!==void 0?d.min:0):d.type==="file"?p[d.name]=null:d.type==="multifile"?p[d.name]=Array.isArray(u[d.name])?u[d.name]:[]:d.type==="multiselect"?p[d.name]=Array.isArray(u[d.name])?u[d.name]:[]:p[d.name]=u[d.name]??""}),r.value=p,i.value=!0}else r.value=N(),i.value=!1},{immediate:!0,deep:!0}),e.watch(()=>a.initialData,u=>{i.value&&u&&Object.keys(u).forEach(p=>{Object.prototype.hasOwnProperty.call(r.value,p)&&u[p]!==void 0&&u[p]!==null&&(r.value[p]=u[p])})},{deep:!0});const S=()=>{if(s.value={},a.fields.forEach(u=>{if(u.required&&!u.disabled&&u.type!=="hidden"){const p=r.value[u.name];u.type==="checkbox"||u.type==="switch"?u.required&&!p&&(s.value[u.name]=u.errorMessage||`${u.label} is required`):u.type==="number"||u.type==="slider"||u.type==="range"?p===""||p===null||p===void 0?s.value[u.name]=u.errorMessage||`${u.label} is required`:u.min!==void 0&&Number(p)<u.min?s.value[u.name]=`${u.label} must be at least ${u.min}`:u.max!==void 0&&Number(p)>u.max&&(s.value[u.name]=`${u.label} must be at most ${u.max}`):u.type==="email"?!p||!p.trim()?s.value[u.name]=u.errorMessage||`${u.label} is required`:/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(p)||(s.value[u.name]="Please enter a valid email address"):u.type==="url"?!p||!p.trim()?s.value[u.name]=u.errorMessage||`${u.label} is required`:/^https?:\/\/.+/.test(p)||(s.value[u.name]="Please enter a valid URL"):u.type==="tel"?(!p||!p.trim())&&(s.value[u.name]=u.errorMessage||`${u.label} is required`):u.type==="file"?p||(s.value[u.name]=u.errorMessage||`${u.label} is required`):u.type==="multifile"?!Array.isArray(p)||p.length===0?s.value[u.name]=u.errorMessage||`${u.label} is required`:u.minFiles&&p.length<u.minFiles?s.value[u.name]=`Please upload at least ${u.minFiles} file(s)`:u.maxFiles&&p.length>u.maxFiles&&(s.value[u.name]=`Maximum ${u.maxFiles} file(s) allowed`):u.type==="radio"?p||(s.value[u.name]=u.errorMessage||`${u.label} is required`):u.type==="multiselect"?(!Array.isArray(p)||p.length===0)&&(s.value[u.name]=u.errorMessage||`${u.label} is required`):u.type==="date"||u.type==="time"||u.type==="datetime-local"||u.type==="month"||u.type==="week"?(!p||typeof p=="string"&&!p.trim())&&(s.value[u.name]=u.errorMessage||`${u.label} is required`):u.type==="password"?(!p||typeof p=="string"&&!p.trim())&&(s.value[u.name]=u.errorMessage||`${u.label} is required`):(!p||typeof p=="string"&&!p.trim())&&(s.value[u.name]=u.errorMessage||`${u.label} is required`)}if(u.validate&&typeof u.validate=="function"){const p=u.validate(r.value[u.name],r.value);p&&(s.value[u.name]=p)}}),a.customValidation){const u=a.customValidation(r.value);u&&Object.keys(u).length>0&&(s.value={...s.value,...u})}return Object.keys(s.value).length===0},V=async(u,p)=>{if(r.value[u.name]=p,u.onChange&&typeof u.onChange=="function")try{await u.onChange(p,r.value)}catch(d){console.error("Error in onChange handler:",d),se.error("An error occurred while processing the change")}},k=(u,p)=>{if(r.value[u.name]=p,u.onChange&&typeof u.onChange=="function")try{u.onChange(p,r.value)}catch(d){console.error("Error in onChange handler:",d),se.error("An error occurred while processing the change")}},h=(u,p)=>{const d=p.target.files?.[0]||null;if(r.value[u.name]=d,u.onChange&&typeof u.onChange=="function")try{u.onChange(d,r.value)}catch(P){console.error("Error in onChange handler:",P),se.error("An error occurred while processing the file")}},y=(u,p)=>{p.preventDefault(),g.value[u.name]=!1;const d=Array.from(p.dataTransfer?.files||[]);M(u,d)},v=u=>{u.preventDefault()},E=(u,p)=>{p.preventDefault(),g.value[u.name]=!0},C=(u,p)=>{p.preventDefault(),g.value[u.name]=!1},B=(u,p)=>{const d=Array.from(p.target?.files||[]);M(u,d),p.target.value=""},M=(u,p)=>{const d=r.value[u.name]||[],P=u.maxFiles||1/0,W=u.maxSize||1/0,X=p.filter(ne=>{if(ne.size>W)return se.error(`${ne.name} exceeds maximum size of ${T(W)}`),!1;if(u.accept){const re=u.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=P-d.length;if(R<=0){se.error(`Maximum ${P} file(s) allowed`);return}const ae=X.slice(0,R);ae.length<X.length&&se.warning(`Only ${ae.length} file(s) added. Maximum ${P} file(s) allowed`),c.value[u.name]||(c.value[u.name]=[]),ae.forEach(ne=>{const re=e.reactive({file:ne,progress:0,id:`${Date.now()}-${Math.random().toString(36).slice(2,9)}`});c.value[u.name].push(re);const fe=1500+Math.random()*1500,me=50,ce=100/(fe/me),Te=setInterval(()=>{if(re.progress+=ce,re.progress>=100){re.progress=100,clearInterval(Te),r.value[u.name]=[...r.value[u.name]||[],ne];const we=c.value[u.name]?.findIndex(be=>be.id===re.id);if(we>-1&&c.value[u.name].splice(we,1),u.onChange&&typeof u.onChange=="function")try{u.onChange(r.value[u.name],r.value)}catch(be){console.error("Error in onChange handler:",be)}}},me)})},Y=(u,p)=>{const d=[...r.value[u.name]||[]];if(d.splice(p,1),r.value[u.name]=d,u.onFileRemoved&&typeof u.onFileRemoved=="function")try{u.onFileRemoved(d,r.value)}catch(P){console.error("Error in onFileRemoved handler:",P)}},U=(u,p)=>{const d=c.value[u.name]?.findIndex(P=>P.id===p);d>-1&&c.value[u.name].splice(d,1)},T=u=>{if(u===0)return"0 Bytes";const p=1024,d=["Bytes","KB","MB","GB"],P=Math.floor(Math.log(u)/Math.log(p));return parseFloat((u/Math.pow(p,P)).toFixed(2))+" "+d[P]},_=u=>{const p=u.name.split(".").pop()?.toLowerCase();return["jpg","jpeg","png","gif","webp","svg","bmp"].includes(p)?"image":["pdf"].includes(p)||["doc","docx"].includes(p)?"file-text":["xls","xlsx","csv"].includes(p)?"table":["zip","rar","7z","tar","gz"].includes(p)?"archive":["mp4","mov","avi","mkv","webm"].includes(p)?"video":["mp3","wav","ogg","flac"].includes(p)?"music":"file"},f=u=>{const p=u.name.split(".").pop()?.toLowerCase();return["jpg","jpeg","png","gif","webp","svg","bmp"].includes(p)?"text-purple-600 bg-purple-100":["pdf"].includes(p)?"text-red-600 bg-red-100":["doc","docx"].includes(p)?"text-blue-600 bg-blue-100":["xls","xlsx","csv"].includes(p)?"text-green-600 bg-green-100":["zip","rar","7z","tar","gz"].includes(p)?"text-yellow-600 bg-yellow-100":["mp4","mov","avi","mkv","webm"].includes(p)?"text-pink-600 bg-pink-100":["mp3","wav","ogg","flac"].includes(p)?"text-orange-600 bg-orange-100":"text-gray-600 bg-gray-100"},x=async()=>{try{if(Object.values(c.value).some(d=>d.length>0)){se.error("Please wait for all files to finish uploading");return}if(!S()){se.error("Please fix the validation errors before submitting");return}const p={};a.fields.forEach(d=>{const P=r.value[d.name];d.type==="number"||d.type==="slider"||d.type==="range"?p[d.name]=Number(P):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"?p[d.name]=typeof P=="string"?P.trim():P:(d.type==="password"||d.type==="file"||d.type,p[d.name]=P)}),o("submit",{formData:p,originalData:a.initialData})}catch(u){console.error("Error during form submission:",u),se.error("An error occurred during submission")}},m=()=>{r.value=N(),s.value={},c.value={},i.value=!1,o("reset")},$=()=>{o("cancel")};return(u,p)=>(e.openBlock(),e.createElementBlock("div",av,[t.title?(e.openBlock(),e.createElementBlock("div",nv,[e.createElementVNode("h2",ov,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("p",lv,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("form",{class:"space-y-6",onSubmit:e.withModifiers(x,["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":P=>r.value[d.name]=P,type:"hidden"},null,8,rv)),[[e.vModelText,r.value[d.name]]]):(e.openBlock(),e.createBlock(Et,{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:P,hasError:W,ariaDescribedBy:X})=>[["text","number","password","color","email","tel","url","search"].includes(d.type)?(e.openBlock(),e.createBlock(le,{key:0,id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,type:d.type,placeholder:d.placeholder,disabled:l.value||d.disabled,readonly:d.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"])):d.type==="textarea"?(e.openBlock(),e.createBlock(Vt,{key:1,id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,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",W?"border-red-500":"border-slate-300"]),"aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","placeholder","disabled","rows","class","aria-describedby"])):d.type==="select"?(e.openBlock(),e.createBlock(he,{key:2,id:P,"model-value":r.value[d.name],options:d.options,placeholder:d.placeholder||"Select an option",disabled:l.value||d.disabled,"has-error":W,"aria-describedby":X,"onUpdate:modelValue":R=>V(d,R)},null,8,["id","model-value","options","placeholder","disabled","has-error","aria-describedby","onUpdate:modelValue"])):d.type==="multiselect"?(e.openBlock(),e.createBlock(ol,{key:3,id:P,"model-value":r.value[d.name],options:d.options,disabled:l.value||d.disabled,placeholder:d.placeholder||"Select options","has-error":W,"aria-describedby":X,"onUpdate:modelValue":R=>r.value[d.name]=R},null,8,["id","model-value","options","disabled","placeholder","has-error","aria-describedby","onUpdate:modelValue"])):d.type==="checkbox"?(e.openBlock(),e.createElementBlock("div",sv,[e.createVNode(le,{id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,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":X},null,8,["id","modelValue","onUpdate:modelValue","disabled","aria-describedby"]),e.createVNode(Be,{for:P,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",iv,[e.createElementVNode("button",{id:P,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:R=>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,cv),e.createVNode(Be,{for:P,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",dv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.options,R=>(e.openBlock(),e.createElementBlock("div",{key:R.value,class:"flex items-center"},[e.createVNode(le,{id:`${P}-${R.value}`,modelValue:r.value[d.name],"onUpdate:modelValue":ae=>r.value[d.name]=ae,type:"radio",value:R.value,disabled:l.value||d.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:`${P}-${R.value}`,class:"ml-2 text-sm text-gray-700"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(R.label),1)]),_:2},1032,["for"])]))),128))])):d.type==="file"?(e.openBlock(),e.createElementBlock("div",uv,[e.createVNode(le,{id:P,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",W?"border-red-500":"border-slate-300"]),"aria-describedby":X,onChange:R=>h(d,R)},null,8,["id","accept","disabled","class","aria-describedby","onChange"]),d.helpText?(e.openBlock(),e.createElementBlock("p",mv,e.toDisplayString(d.helpText),1)):e.createCommentVNode("",!0)])):d.type==="multifile"?(e.openBlock(),e.createElementBlock("div",fv,[e.createElementVNode("div",{class:e.normalizeClass(["border-2 border-dashed rounded-xl cursor-pointer transition-all duration-200",g.value[d.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||d.disabled?"opacity-50 cursor-not-allowed":""]),onDrop:R=>y(d,R),onDragover:v,onDragenter:R=>E(d,R),onDragleave:R=>C(d,R),onClick:R=>w(d.name)},[e.createElementVNode("input",{ref_for:!0,ref:R=>z(d.name,R),type:"file",multiple:d.multiple!==!1,accept:d.accept,class:"hidden",disabled:l.value||d.disabled,onChange:R=>B(d,R)},null,40,gv),e.createElementVNode("div",vv,[p[1]||(p[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",hv,[p[0]||(p[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",yv,[e.createTextVNode(e.toDisplayString(d.maxSize?`Up to ${T(d.maxSize)}`:"No size limit")+" ",1),d.accept?(e.openBlock(),e.createElementBlock("span",bv,"• "+e.toDisplayString(d.accept),1)):e.createCommentVNode("",!0),d.maxFiles?(e.openBlock(),e.createElementBlock("span",xv,"• Max "+e.toDisplayString(d.maxFiles)+" files",1)):e.createCommentVNode("",!0)])])])],42,pv),d.helpText?(e.openBlock(),e.createElementBlock("p",kv,e.toDisplayString(d.helpText),1)):e.createCommentVNode("",!0),c.value[d.name]?.length>0?(e.openBlock(),e.createElementBlock("div",wv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value[d.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",Cv,[e.createElementVNode("div",Bv,[(e.openBlock(),e.createElementBlock("svg",Vv,[p[2]||(p[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,Ev)])),e.createElementVNode("span",Nv,e.toDisplayString(Math.round(R.progress))+"% ",1)]),e.createElementVNode("div",Sv,[e.createElementVNode("span",$v,e.toDisplayString(R.file.name),1),p[3]||(p[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=>U(d,R.id),["stop"])},[...p[4]||(p[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,zv)]))),128))])):e.createCommentVNode("",!0),r.value[d.name]?.length>0?(e.openBlock(),e.createElementBlock("div",Dv,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value[d.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",Tv,[e.createElementVNode("div",{class:e.normalizeClass(["rounded-lg p-2 shrink-0",f(R)])},[(e.openBlock(),e.createElementBlock("svg",Fv,[_(R)==="image"?(e.openBlock(),e.createElementBlock("path",Av)):(e.openBlock(),e.createElementBlock("path",Mv))]))],2),e.createElementVNode("div",Lv,[e.createElementVNode("span",_v,e.toDisplayString(R.name),1),e.createElementVNode("span",jv,e.toDisplayString(T(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||d.disabled,onClick:e.withModifiers(ne=>Y(d,ae),["stop"])},[...p[5]||(p[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,Pv)]))),128))])):e.createCommentVNode("",!0),r.value[d.name]?.length>0?(e.openBlock(),e.createElementBlock("p",Ov,[e.createTextVNode(e.toDisplayString(r.value[d.name].length)+" file(s) uploaded ",1),d.maxFiles?(e.openBlock(),e.createElementBlock("span",Iv," of "+e.toDisplayString(d.maxFiles)+" max",1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])):d.type==="slider"?(e.openBlock(),e.createBlock(Nt,{key:9,"model-value":r.value[d.name],min:d.min,max:d.max,step:d.step,disabled:l.value||d.disabled,"onUpdate:modelValue":R=>k(d,R)},null,8,["model-value","min","max","step","disabled","onUpdate:modelValue"])):d.type==="range"?(e.openBlock(),e.createElementBlock("div",Rv,[e.createElementVNode("div",Uv,[e.createVNode(le,{id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,type:"range",min:d.min,max:d.max,step:d.step||1,disabled:l.value||d.disabled,class:"flex-1","aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","min","max","step","disabled","aria-describedby"]),e.createElementVNode("span",qv,e.toDisplayString(r.value[d.name]),1)])])):d.type==="date"?(e.openBlock(),e.createBlock(lt,{key:11,id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,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":X},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(le,{key:12,id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,type:"time",disabled:l.value||d.disabled,class:e.normalizeClass(W?"border-red-500":"border-slate-300"),"aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):d.type==="datetime-local"?(e.openBlock(),e.createBlock(le,{key:13,id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,type:"datetime-local",disabled:l.value||d.disabled,class:e.normalizeClass(W?"border-red-500":"border-slate-300"),"aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):d.type==="month"?(e.openBlock(),e.createBlock(le,{key:14,id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,type:"month",disabled:l.value||d.disabled,class:e.normalizeClass(W?"border-red-500":"border-slate-300"),"aria-describedby":X},null,8,["id","modelValue","onUpdate:modelValue","disabled","class","aria-describedby"])):d.type==="week"?(e.openBlock(),e.createBlock(le,{key:15,id:P,modelValue:r.value[d.name],"onUpdate:modelValue":R=>r.value[d.name]=R,type:"week",disabled:l.value||d.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",Yv,[t.showReset?(e.openBlock(),e.createBlock(oe,{key:0,type:"button",variant:"outline",disabled:l.value,onClick:m},{default:e.withCtx(()=>[...p[6]||(p[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:$},{default:e.withCtx(()=>[...p[7]||(p[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)]))}},Hv={key:0,class:"flex items-center justify-between p-4 border-b border-gray-200 shrink-0 lg:hidden"},Wv={class:"text-lg font-bold text-gray-900"},Gv={class:"flex-1 overflow-y-auto overflow-x-hidden p-4"},Kv={class:"space-y-2"},Xv={key:0},Jv={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"},Qv=["onClick"],Zv={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"},eh={key:1,class:"absolute top-1.5 right-1.5 w-2 h-2 bg-blue-500 rounded-full"},th={key:1,class:"border-t border-gray-200 p-4 shrink-0"},ah={key:0,class:"absolute top-1.5 right-1.5 w-2 h-2 bg-blue-500 rounded-full"},nh={class:"sticky top-0 bg-white border-b border-gray-200 z-10"},oh={class:"flex items-center justify-between p-4"},lh={class:"flex-1 text-sm font-bold text-gray-900 ml-2"},rh={key:0,class:"px-4 pb-3"},sh={class:"relative"},ih=["placeholder"],ch={class:"absolute left-3 top-1/2 transform -translate-y-1/2 text-gray-400"},dh={key:0,class:"mt-2 text-xs text-gray-500 px-1"},uh={class:"p-3"},mh={key:0,class:"px-3 py-8 text-center"},fh={key:1,class:"space-y-1"},ph={key:0,class:"absolute left-0 top-1/2 transform -translate-y-1/2 w-1 h-8 bg-linear-to-b from-blue-500 to-blue-600 rounded-r-full"},gh={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"},vh={class:"p-3"},hh={class:"space-y-1"},yh={key:0,class:"px-3 py-2 text-xs font-semibold text-gray-500 uppercase tracking-wider"},bh={key:0,class:"absolute left-0 top-1/2 transform -translate-y-1/2 w-1 h-8 bg-linear-to-b from-blue-500 to-blue-600 rounded-r-full"},sl={__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),g=e.ref(""),b=e.computed(()=>o.mobileOpen),w=e.computed(()=>r.value?{}:{left:`${o.sidebarWidth}px`}),z=e.computed(()=>r.value?{}:{left:`${o.sidebarWidth}px`}),N=e.computed(()=>{if(!o.showSearch||!i.value)return!1;const $=i.value.name?.toLowerCase()||"";return o.searchableMenus.some(u=>$.includes(u.toLowerCase()))}),S=e.computed(()=>{if(!i.value?.subItems)return[];if(!g.value.trim())return i.value.subItems;const $=g.value.toLowerCase().trim();return i.value.subItems.filter(u=>{const p=u.label?.toLowerCase()||"",d=u.name?.toLowerCase()||"";return p.includes($)||d.includes($)})}),V=e.computed(()=>{if(r.value)return 0;let $=o.sidebarWidth;return s.value&&($+=220),c.value&&($+=220),$}),k=$=>{l("navigate",$),r.value&&h();const u=s.value&&i.value&&i.value.subItems.some(d=>d.route===$.route),p=c.value&&o.managementSettings.some(d=>d.route===$.route);(r.value||!(u||p))&&M()},h=()=>{l("update:mobileOpen",!1)},y=$=>$.subItems&&$.subItems.length>0,v=$=>{c.value&&B(),s.value&&i.value!==$?(C(),setTimeout(()=>{i.value=$,s.value=!0,g.value=""},300)):s.value?i.value===$&&C():(i.value=$,s.value=!0,g.value=""),r.value&&h()},E=()=>{s.value&&C(),c.value?B():c.value=!0,r.value&&h()},C=()=>{s.value=!1,g.value="",setTimeout(()=>{i.value=null},300)},B=()=>{c.value=!1},M=()=>{C(),B()},Y=$=>{k($)},U=$=>{k($)},T=$=>{g.value=$,l("search",{query:$,menu:i.value?.name})},_=()=>{g.value=""},f=$=>{const u=o.currentPath;return $.route?!!(u===$.route||u.startsWith($.route+"/")):$.subItems&&$.subItems.length>0?$.subItems.some(p=>p.route?u===p.route||u.startsWith(p.route+"/"):!1):!1},x=()=>{const $=r.value;r.value=window.innerWidth<1024,$&&!r.value&&b.value&&h()},m=$=>{$.key==="Escape"&&(s.value||c.value?M():r.value&&b.value&&h())};return e.onMounted(()=>{x(),window.addEventListener("resize",x),document.addEventListener("keydown",m)}),e.onUnmounted(()=>{window.removeEventListener("resize",x),document.removeEventListener("keydown",m)}),n({isMobile:r,isMobileOpen:b,submenuOpen:s,managementSettingsOpen:c,contentMarginLeft:V,closeAllMenus:M}),($,u)=>{const p=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:h})):e.createCommentVNode("",!0)]),_:1}),e.createElementVNode("aside",{class:e.normalizeClass(e.unref(D)("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(D)("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",Hv,[e.createElementVNode("h2",Wv,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:h},[...u[2]||(u[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",Gv,[e.createElementVNode("div",Kv,[(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",Xv,[y(d)?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(D)("flex flex-col items-center justify-center rounded-xl transition-all duration-200 cursor-pointer group relative py-4 px-3",f(d)?"bg-linear-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:P=>v(d)},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(D)("flex items-center justify-center rounded-lg transition-colors mb-2","w-12 h-12",f(d)?"bg-linear-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(L,{icon:d.icon,class:"w-6 h-6"},null,8,["icon"])],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(D)("text-xs font-medium text-center",f(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",Zv,e.toDisplayString(d.badge),1)):e.createCommentVNode("",!0),f(d)&&y(d)?(e.openBlock(),e.createElementBlock("div",eh)):e.createCommentVNode("",!0)],10,Qv)):(e.openBlock(),e.createBlock(p,{key:0,to:d.route,class:e.normalizeClass(e.unref(D)("flex flex-col items-center justify-center rounded-xl transition-all duration-200 group relative py-4 px-3",f(d)?"bg-linear-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:P=>k(d)},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(e.unref(D)("flex items-center justify-center rounded-lg transition-colors mb-2","w-12 h-12",f(d)?"bg-linear-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(L,{icon:d.icon,class:"w-6 h-6"},null,8,["icon"])],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(D)("text-xs font-medium text-center",f(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",Jv,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",th,[e.createElementVNode("div",{class:e.normalizeClass(e.unref(D)("flex flex-col items-center justify-center rounded-xl transition-all duration-200 cursor-pointer group relative py-4 px-3",t.isManagementSettingsActive?"bg-linear-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:E},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(D)("flex items-center justify-center rounded-lg transition-colors mb-2","w-12 h-12",t.isManagementSettingsActive?"bg-linear-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(L,{icon:"cog",class:"w-6 h-6"})],2),e.createElementVNode("span",{class:e.normalizeClass(e.unref(D)("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",ah)):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(D)("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(w.value)},[e.createElementVNode("div",nh,[e.createElementVNode("div",oh,[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:C},[...u[3]||(u[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",lh,e.toDisplayString(i.value?.label),1)]),N.value?(e.openBlock(),e.createElementBlock("div",rh,[e.createElementVNode("div",sh,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":u[0]||(u[0]=d=>g.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:u[1]||(u[1]=d=>T(g.value))},null,40,ih),[[e.vModelText,g.value]]),e.createElementVNode("div",ch,[e.createVNode(L,{icon:"search",class:"w-4 h-4"})]),g.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(L,{icon:"times",class:"w-4 h-4"})])):e.createCommentVNode("",!0)]),g.value?(e.openBlock(),e.createElementBlock("div",dh,e.toDisplayString(S.value.length)+" result"+e.toDisplayString(S.value.length!==1?"s":"")+" found ",1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),e.createElementVNode("nav",uh,[N.value&&g.value&&S.value.length===0?(e.openBlock(),e.createElementBlock("div",mh,[e.createVNode(L,{icon:"search",class:"w-12 h-12 mx-auto text-gray-300 mb-3"}),u[4]||(u[4]=e.createElementVNode("p",{class:"text-sm text-gray-500 mb-1"}," No results found ",-1)),u[5]||(u[5]=e.createElementVNode("p",{class:"text-xs text-gray-400"}," Try a different search term ",-1))])):(e.openBlock(),e.createElementBlock("div",fh,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(S.value,d=>(e.openBlock(),e.createBlock(p,{key:d.name,to:d.route,class:e.normalizeClass(e.unref(D)("flex items-center px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",f(d)?"bg-linear-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:P=>Y(d)},{default:e.withCtx(()=>[f(d)?(e.openBlock(),e.createElementBlock("div",ph)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(D)("flex items-center justify-center w-8 h-8 rounded-lg mr-3 shrink-0 transition-colors ml-2",f(d)?"bg-linear-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(L,{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(D)("flex-1 truncate font-semibold",f(d)?"text-blue-700":"text-gray-700"))},e.toDisplayString(d.label),3),d.badge?(e.openBlock(),e.createElementBlock("span",gh,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(D)("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:B},[...u[6]||(u[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)])]),u[7]||(u[7]=e.createElementVNode("h3",{class:"flex-1 text-sm font-bold text-gray-900 ml-2"}," Management Settings ",-1))])]),e.createElementVNode("nav",vh,[e.createElementVNode("div",hh,[(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",yh,e.toDisplayString(d.label),1)):d.route?(e.openBlock(),e.createBlock(p,{key:1,to:d.route,class:e.normalizeClass(e.unref(D)("flex items-center px-3 py-2.5 rounded-lg text-sm font-medium transition-all duration-200 group relative",f(d)?"bg-linear-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:P=>U(d)},{default:e.withCtx(()=>[f(d)?(e.openBlock(),e.createElementBlock("div",bh)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(e.unref(D)("flex items-center justify-center w-8 h-8 rounded-lg mr-3 shrink-0 transition-colors",f(d)?"bg-linear-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(L,{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(D)("flex-1 truncate font-semibold",f(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:M})):e.createCommentVNode("",!0)]),_:1})])}}},il={__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))}},xh={key:0,class:"absolute left-3 top-0 w-0.5 h-full bg-slate-200"},kh={class:"z-10 flex items-center justify-center w-6 h-6 rounded-full border-2 border-blue-500 bg-white text-blue-500"},wh={class:"text-slate-900 font-medium"},Ch={key:0,class:"text-slate-500 text-sm"},Bh={class:"mt-2 text-slate-600 text-sm"},cl={__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",xh)):e.createCommentVNode("",!0),e.createElementVNode("div",kh,[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",wh,[e.renderSlot(n.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])]),t.subtitle?(e.openBlock(),e.createElementBlock("p",Ch,[e.renderSlot(n.$slots,"subtitle",{},()=>[e.createTextVNode(e.toDisplayString(t.subtitle),1)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Bh,[e.renderSlot(n.$slots,"default")])],2)],2))}},Vh={name:"AuthLayout",props:{title:{type:String,default:null},subtitle:{type:String,default:null},logoUrl:{type:String,default:"/logo.png"},quote:{type:String,default:""},primaryColor:{type:String,default:"#e74c3c"},backgroundColor:{type:String,default:"#2c2c2c"},backgroundImage:{type:String,default:"https://lh3.googleusercontent.com/gps-cs-s/AG0ilSxeN2zWMjNsmwOrn8a8dDwnu2e5jjzYNembgPZFUXus_sLxUfpCJSKS-8Z7fj3ta1Q_xXDZ-skeFTUoGR75RTIlxQCIYrmjLOqfBNsk8Cjd_qrJaa72l1D2-aEoDwJJKKeTpUmeEg=s1360-w1360-h1020-rw"},backgroundOpacity:{type:Number,default:.4},appName:{type:String,default:"eHorizon eBoard X"},appVersion:{type:String,default:"Version 2.0"},copyright:{type:String,default:"Copyright © 2025 Software Technologies Limited"},showFooter:{type:Boolean,default:!0},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())}}},Eh={class:"container mx-auto px-4 py-10 lg:py-0 relative z-10 w-full"},Nh={class:"grid lg:grid-cols-10 gap-6 lg:gap-8 items-center min-h-screen"},Sh={class:"hidden lg:block lg:col-span-6 text-white text-center lg:text-left space-y-6"},$h={class:"mb-6 flex justify-center lg:justify-start"},zh=["src"],Dh={key:0,class:"max-w-md mx-auto lg:mx-0"},Th={class:"text-sm lg:text-base font-light text-white/70 italic leading-relaxed"},Fh={class:"lg:col-span-4 w-full"},Ah={class:"lg:hidden mb-6 flex justify-center"},Mh=["src"],Lh={class:"bg-white rounded-lg shadow-xl p-4 sm:p-6 lg:p-8 max-w-md mx-auto w-full"},_h={key:0,class:"mb-4 sm:mb-6"},jh={class:"text-center"},Ph={class:"text-xl sm:text-2xl font-bold text-gray-900"},Oh={key:0,class:"text-sm sm:text-base text-gray-600 mt-2"},Ih={class:"space-y-4 sm:space-y-6"},Rh={key:1,class:"mt-4 sm:mt-6"},Uh={key:0,class:"mt-4 sm:mt-6 text-center"},qh={key:0,class:"absolute bottom-2 right-2 sm:bottom-4 sm:right-4 text-right"},Yh=["src"],Hh={class:"text-white/90 text-[10px] sm:text-xs bg-black/30 sm:bg-transparent px-2 py-1 sm:p-0 rounded"},Wh={class:"font-medium"},Gh={class:"hidden sm:block"},Kh={class:"hidden sm:block"},Xh={class:"absolute bottom-2 left-2 sm:bottom-4 sm:left-4 flex gap-1.5 sm:gap-2"},Jh=["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 overflow-x-hidden",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",Eh,[e.createElementVNode("div",Nh,[e.createElementVNode("div",Sh,[e.createElementVNode("div",$h,[e.createElementVNode("img",{src:a.logoUrl,alt:"Company Logo",class:"h-52 lg:h-72 w-auto object-contain"},null,8,zh)]),a.quote?(e.openBlock(),e.createElementBlock("div",Dh,[e.createElementVNode("p",Th,' "'+e.toDisplayString(a.quote)+'" ',1)])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Fh,[e.createElementVNode("div",Ah,[e.createElementVNode("img",{src:a.logoUrl,alt:"Company Logo",class:"h-24 w-auto object-contain"},null,8,Mh)]),e.createElementVNode("div",Lh,[t.$slots["card-header"]||a.title?(e.openBlock(),e.createElementBlock("div",_h,[e.renderSlot(t.$slots,"card-header",{},()=>[e.createElementVNode("div",jh,[e.createElementVNode("h1",Ph,e.toDisplayString(a.title),1),a.subtitle?(e.openBlock(),e.createElementBlock("p",Oh,e.toDisplayString(a.subtitle),1)):e.createCommentVNode("",!0)])])])):e.createCommentVNode("",!0),e.createElementVNode("div",Ih,[e.createVNode(s)]),t.$slots["card-footer"]?(e.openBlock(),e.createElementBlock("div",Rh,[e.renderSlot(t.$slots,"card-footer")])):e.createCommentVNode("",!0)]),t.$slots.links?(e.openBlock(),e.createElementBlock("div",Uh,[e.renderSlot(t.$slots,"links")])):e.createCommentVNode("",!0)])])]),a.showFooter?(e.openBlock(),e.createElementBlock("div",qh,[e.createElementVNode("img",{src:a.logoUrl,alt:"Company Logo",class:"hidden sm:block h-20 sm:h-32 lg:h-40 w-auto object-contain ml-auto mb-2"},null,8,Yh),e.createElementVNode("div",Hh,[e.createElementVNode("div",Wh,e.toDisplayString(a.appName),1),e.createElementVNode("div",Gh," ("+e.toDisplayString(a.appVersion)+") ",1),e.createElementVNode("div",Kh,e.toDisplayString(a.copyright),1)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Xh,[(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-7 h-7 sm:w-8 sm:h-8 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,Jh))),128))])],4)}const dl=qe(Vh,[["render",Qh]]),Zh={class:"min-h-screen bg-gray-50"},ey={class:"flex-1"},ty={key:0,class:"bg-white border-b border-gray-200"},ay={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-4"},ny={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8"},ul={__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"),g=e.resolveComponent("Footer");return e.openBlock(),e.createElementBlock("div",Zh,[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",ey,[t.showBreadcrumb?(e.openBlock(),e.createElementBlock("div",ty,[e.createElementVNode("div",ay,[e.renderSlot(n.$slots,"breadcrumb",{},()=>[e.createVNode(i,{items:t.breadcrumbItems},null,8,["items"])])])])):e.createCommentVNode("",!0),e.createElementVNode("div",ny,[e.renderSlot(n.$slots,"default")])]),e.createVNode(g,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})])}}},oy={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),g=()=>{s.value=navigator.onLine};e.onMounted(()=>{window.addEventListener("online",g),window.addEventListener("offline",g)}),e.onUnmounted(()=>{window.removeEventListener("online",g),window.removeEventListener("offline",g)});const b=e.computed(()=>{const p={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 p[t.errorType]||p[404]}),w=e.computed(()=>b.value),z=e.computed(()=>t.errorTitle||w.value.title),N=e.computed(()=>t.errorMessage||w.value.message),S=e.computed(()=>w.value.homeButtonIcon||"🏠"),V=e.computed(()=>t.showAdditionalInfo?w.value.additionalInfo:null),k=()=>{o?o.push(t.homeUrl):window.location.href=t.homeUrl},h=()=>{o&&window.history.length>1?o.back():window.history.length>1?window.history.back():k(),n("back")},y=async()=>{l.value=!0;try{await new Promise(p=>setTimeout(p,1e3)),window.location.reload()}catch(p){console.error("Retry failed:",p)}finally{l.value=!1}n("retry")},v=e.computed(()=>["min-h-screen relative flex items-center justify-center","px-4 sm:px-6 lg:px-8"]),E=e.computed(()=>["absolute inset-0 -z-10"]),C=e.computed(()=>["w-full max-w-2xl mx-auto text-center"]),B=e.computed(()=>["mb-8"]),M=e.computed(()=>["space-y-8"]),Y=e.computed(()=>["flex justify-center mb-6"]),U=e.computed(()=>["w-32 h-32 flex items-center justify-center"]),T=e.computed(()=>["space-y-4"]),_=e.computed(()=>["text-6xl font-bold text-slate-300 mb-4"]),f=e.computed(()=>["text-3xl font-bold text-slate-900"]),x=e.computed(()=>["text-lg text-slate-600 max-w-lg mx-auto"]),m=e.computed(()=>["mt-8"]),$=e.computed(()=>["mt-8"]),u=e.computed(()=>["mt-6"]);return{isRetrying:l,reportSent:r,isOnline:s,errorId:i,isDev:c,errorConfig:w,title:z,message:N,homeButtonIcon:S,additionalInfoConfig:V,goHome:k,goBack:h,retry:y,layoutClasses:v,backgroundClasses:E,contentClasses:C,headerClasses:B,errorContentClasses:M,illustrationClasses:Y,iconContainerClasses:U,detailsClasses:T,codeClasses:_,titleClasses:f,messageClasses:x,actionsClasses:m,additionalInfoClasses:$,helpClasses:u}}},ly={class:"flex justify-center"},ry={class:"flex items-center gap-3"},sy={class:"text-2xl font-bold text-slate-900"},iy={key:1,class:"bg-red-100 border border-red-200 rounded-lg p-4 mx-auto max-w-md mb-6"},cy={class:"flex flex-col sm:flex-row gap-4 justify-center"},dy=["disabled"],uy={key:0,class:"animate-spin"},my={key:1},fy=["disabled"],py={key:0},gy={key:1},vy={key:0,class:"mt-8 max-w-md mx-auto"},hy={class:"bg-white rounded-lg border border-slate-200 shadow-sm p-6"},yy={class:"text-lg font-semibold text-slate-900 mb-4"},by={class:"space-y-3"},xy={class:"text-sm text-slate-600"},ky=["href"],wy={key:5,class:"text-xs text-slate-400 font-mono mt-4"};function Cy(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-linear-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",ly,[e.renderSlot(t.$slots,"logo",{},()=>[e.createElementVNode("div",ry,[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",sy,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",iy,[...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",cy,[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",uy,"↻")):(e.openBlock(),e.createElementBlock("span",my,"🔄")),e.createTextVNode(" "+e.toDisplayString(o.isRetrying?"Retrying...":a.retryButtonText),1)],8,dy)):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",py,"✓")):(e.openBlock(),e.createElementBlock("span",gy,"📝")),e.createTextVNode(" "+e.toDisplayString(o.reportSent?"Report Sent":"Contact Support"),1)],8,fy)):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",vy,[e.createElementVNode("div",hy,[e.createElementVNode("h3",yy,e.toDisplayString(o.additionalInfoConfig.title),1),e.createElementVNode("ul",by,[(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"} 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",xy,[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,ky)):e.createCommentVNode("",!0)])])],2)):e.createCommentVNode("",!0),o.isDev?(e.openBlock(),e.createElementBlock("div",wy," Error ID: "+e.toDisplayString(o.errorId),1)):e.createCommentVNode("",!0)],2)],2)],2)}const ml=qe(oy,[["render",Cy]]),By={class:"w-full h-full relative"},Vy={key:0,class:"w-full h-full flex items-center justify-center"},Ey=["width","height","viewBox"],Ny=["d","fill","stroke","stroke-width","onMouseenter","onClick"],Sy=["cx","cy","r","fill"],$y={key:1},zy=["x","y"],Dy=["x","y"],Ty={key:2},Fy=["x","y"],Ay={key:3},My=["transform"],Ly=["fill"],_y={class:"bg-slate-900 text-white px-4 py-3 rounded-lg shadow-2xl border border-slate-700 min-w-[180px]"},jy={class:"flex items-center gap-2 mb-1.5"},Py={class:"font-semibold text-sm"},Oy={class:"flex items-baseline gap-2 ml-5"},Iy={class:"text-2xl font-bold"},Ry={class:"mt-1 ml-5"},Uy={class:"text-xs text-slate-300"},an={__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((E,C)=>E+(C||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 v=a.showLegend&&a.legendPosition==="bottom"?Math.ceil(a.data.length/2)*25:0;return(a.height-v)/2}),g=e.computed(()=>{const v=a.showLegend&&a.legendPosition==="bottom"?Math.ceil(a.data.length/2)*25:0,E=a.height-v,C=a.showLegend&&a.legendPosition==="right"?a.width*.6:a.width;return Math.min(C,E)/2-40}),b=e.computed(()=>a.doughnut?g.value*a.innerRadiusRatio:0),w=e.computed(()=>{if(!s.value)return[];const v=r.value;let E=-Math.PI/2;return a.data.map((C,B)=>{const M=C||0,Y=(M/v*100).toFixed(1),U=M/v*2*Math.PI,T=E+U,_=z(i.value,c.value,g.value,b.value,E,T),f=a.doughnut?(g.value+b.value)/2:g.value*.7,x=E+U/2,m=i.value+Math.cos(x)*f,$=c.value+Math.sin(x)*f,u={value:M,percentage:Y,path:_,labelX:m,labelY:$,label:a.labels[B]||`Item ${B+1}`,startAngle:E,endAngle:T};return E=T,u}).filter(C=>C.value>0)}),z=(v,E,C,B,M,Y)=>{const U=v+C*Math.cos(M),T=E+C*Math.sin(M),_=v+C*Math.cos(Y),f=E+C*Math.sin(Y),x=Y-M>Math.PI?1:0;if(B===0)return`M ${v} ${E} L ${U} ${T} A ${C} ${C} 0 ${x} 1 ${_} ${f} Z`;{const m=v+B*Math.cos(Y),$=E+B*Math.sin(Y),u=v+B*Math.cos(M),p=E+B*Math.sin(M);return`M ${U} ${T} A ${C} ${C} 0 ${x} 1 ${_} ${f} L ${m} ${$} A ${B} ${B} 0 ${x} 0 ${u} ${p} Z`}},N=v=>a.colors[v%a.colors.length],S=v=>{if(a.legendPosition==="right")return a.width*.65;const C=v%2;return a.width/4+C*(a.width/2)},V=v=>{if(a.legendPosition==="right")return 40+v*25;const C=Math.floor(v/2),B=Math.ceil(a.data.length/2)*25;return a.height-B+20+C*25},k=(v,E,C)=>{l.value={visible:!0,x:v.clientX,y:v.clientY,label:E.label,value:E.value,percentage:E.percentage,color:N(C)},o("slice-hover",{value:E.value,index:C,label:E.label,percentage:E.percentage})},h=()=>{l.value.visible=!1},y=(v,E)=>{o("slice-click",{value:v.value,index:E,label:v.label,percentage:v.percentage})};return(v,E)=>(e.openBlock(),e.createElementBlock("div",By,[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(w.value,(C,B)=>(e.openBlock(),e.createElementBlock("path",{key:`slice-${B}`,d:C.path,fill:N(B),stroke:t.strokeColor,"stroke-width":t.strokeWidth,class:e.normalizeClass(t.sliceClasses),onMouseenter:M=>k(M,C,B),onMouseleave:h,onClick:M=>y(C,B)},null,42,Ny))),128))]),t.doughnut?(e.openBlock(),e.createElementBlock("circle",{key:0,cx:i.value,cy:c.value,r:b.value,fill:t.centerFill},null,8,Sy)):e.createCommentVNode("",!0),t.doughnut&&t.showCenterText?(e.openBlock(),e.createElementBlock("g",$y,[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,zy),e.createElementVNode("text",{x:i.value,y:c.value+15,class:e.normalizeClass(t.centerLabelClasses),"text-anchor":"middle","dominant-baseline":"middle"}," Total ",10,Dy)])):e.createCommentVNode("",!0),t.showValues?(e.openBlock(),e.createElementBlock("g",Ty,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value,(C,B)=>(e.openBlock(),e.createElementBlock("text",{key:`value-${B}`,x:C.labelX,y:C.labelY,class:e.normalizeClass(t.valueLabelClasses),"text-anchor":"middle","dominant-baseline":"middle"},e.toDisplayString(t.showPercentages?`${C.percentage}%`:C.value),11,Fy))),128))])):e.createCommentVNode("",!0),t.showLegend?(e.openBlock(),e.createElementBlock("g",Ay,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value,(C,B)=>(e.openBlock(),e.createElementBlock("g",{key:`legend-${B}`,transform:`translate(${S(B)}, ${V(B)})`},[e.createElementVNode("rect",{width:12,height:12,fill:N(B),rx:"2"},null,8,Ly),e.createElementVNode("text",{x:18,y:10,class:e.normalizeClass(t.legendTextClasses)},e.toDisplayString(C.label),3)],8,My))),128))])):e.createCommentVNode("",!0)],8,Ey)):(e.openBlock(),e.createElementBlock("div",Vy,[...E[0]||(E[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",jy,[e.createElementVNode("div",{style:e.normalizeStyle({backgroundColor:l.value.color}),class:"w-3 h-3 rounded-full shadow-sm"},null,4),e.createElementVNode("p",Py,e.toDisplayString(l.value.label),1)]),e.createElementVNode("div",Oy,[e.createElementVNode("span",Iy,e.toDisplayString(l.value.value),1),E[1]||(E[1]=e.createElementVNode("span",{class:"text-xs text-slate-400"},"tasks",-1))]),e.createElementVNode("div",Ry,[e.createElementVNode("span",Uy,e.toDisplayString(l.value.percentage)+"% of total",1)]),E[2]||(E[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)]))}},qy={key:0,class:"flex items-center justify-between px-6 py-4 border-b border-slate-200 bg-linear-to-r from-slate-50 to-slate-100 shrink-0"},Yy={class:"flex items-center gap-3"},Hy={class:"font-semibold text-lg text-slate-900"},Wy={class:"flex items-center gap-2"},Gy=["disabled"],Ky={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]"},Xy={class:"flex items-center justify-between mb-3"},Jy={class:"space-y-3"},Qy=["for"],Zy=["id","onClick"],eb={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]"},tb={class:"flex items-center justify-between mb-3"},ab={class:"space-y-2"},nb={class:"text-slate-700"},ob={class:"px-2 py-1 bg-slate-100 border border-slate-300 rounded text-xs font-mono"},lb={class:"relative flex-1 overflow-hidden"},rb={key:0,class:"absolute inset-0 bg-white/90 backdrop-blur-sm z-10 flex items-center justify-center"},sb={class:"w-full h-full flex items-center justify-center"},ib={key:3,class:"border-t border-slate-200 px-6 py-3 bg-slate-50 shrink-0"},fl={__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(T=>{c.value[T.id]=T.default??!0})});const g=()=>{i.value=!i.value},b=(T,_)=>{c.value[T]=_,o("customize",{...c.value})},w=e.ref(null),z=e.ref(!1),N=T=>{if(!z.value)return;const _={r:()=>o("refresh"),R:()=>o("refresh"),c:()=>g(),C:()=>g(),Escape:()=>i.value=!1,h:()=>k.value=!k.value,H:()=>k.value=!k.value,"?":()=>k.value=!k.value};_[T.key]&&(T.preventDefault(),_[T.key](),o("keypress",T.key))},S=()=>{z.value=!0},V=()=>{z.value=!1},k=e.ref(!1),h=[{key:"R",description:"Refresh widget"},{key:"C",description:"Open customization"},{key:"Esc",description:"Close panels"},{key:"?",description:"Toggle help"}],y=e.ref(!1);let v=null;const E=T=>{if(!T.dataTransfer)return;y.value=!0,o("dragstart",a.id);const _=T.target.getBoundingClientRect();v=T.target.cloneNode(!0),Object.assign(v.style,{position:"fixed",width:`${_.width}px`,height:`${_.height}px`,pointerEvents:"none",opacity:"0.8",zIndex:"1000",left:`${T.clientX-_.width/2}px`,top:`${T.clientY-_.height/2}px`}),document.body.appendChild(v),T.dataTransfer.setDragImage(v,_.width/2,_.height/2),T.dataTransfer.effectAllowed="move",T.dataTransfer.setData("text/plain",a.id)},C=T=>{v&&T.clientX&&T.clientY&&(v.style.left=`${T.clientX-v.offsetWidth/2}px`,v.style.top=`${T.clientY-v.offsetHeight/2}px`)},B=()=>{y.value=!1,o("dragend",a.id),v&&(document.body.removeChild(v),v=null)},M=e.computed(()=>{if(!a.chartType||!a.chartData)return null;const T=a.chartData.datasets?.[0]?.data||a.chartData.data||[],_=a.chartData.labels||[],f=T.filter(p=>p!=null&&!isNaN(p));if(f.length===0)return null;const x=a.chartType==="pie"||a.chartType==="doughnut",m=x?450:400,$=x?450:400,u={data:f,labels:_.slice(0,f.length),width:m,height:$,...a.chartOptions};if(c.value.legend!==void 0&&(u.showLegend=c.value.legend),c.value.grid!==void 0&&(u.showGrid=c.value.grid),c.value.values!==void 0&&(u.showValues=c.value.values),c.value.percentages!==void 0&&(u.showPercentages=c.value.percentages),c.value.points!==void 0&&(u.showPoints=c.value.points),c.value.fillArea!==void 0&&(u.fillArea=c.value.fillArea),a.chartData.datasets?.[0]?.backgroundColor){const p=a.chartData.datasets[0].backgroundColor;u.colors=Array.isArray(p)?p:[p]}return a.chartData.datasets?.[0]?.borderColor&&(u.lineColor=a.chartData.datasets[0].borderColor),u}),Y=e.computed(()=>{switch(a.chartType){case"bar":return xa;case"line":return ka;case"pie":return an;case"doughnut":return an;default:return null}}),U=e.computed(()=>a.chartType==="doughnut");return e.onMounted(()=>{window.addEventListener("dragover",C),window.addEventListener("keydown",N)}),e.onUnmounted(()=>{window.removeEventListener("dragover",C),window.removeEventListener("keydown",N),v&&document.body.removeChild(v)}),(T,_)=>l.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"widgetRef",ref:w,draggable:"true",tabindex:"0",style:e.normalizeStyle(r.value),class:e.normalizeClass(e.unref(D)("bg-white rounded-xl shadow-sm border border-slate-200 overflow-hidden transition-all select-none flex flex-col relative",y.value?"opacity-50 scale-95":"hover:shadow-lg cursor-move",z.value?"ring-2 ring-blue-400 ring-offset-2":"")),onDragstart:E,onDragend:B,onFocus:S,onBlur:V},[t.showHeader?(e.openBlock(),e.createElementBlock("div",qy,[e.createElementVNode("div",Yy,[t.icon?(e.openBlock(),e.createBlock(L,{key:0,icon:t.icon,class:"w-5 h-5 text-slate-700"},null,8,["icon"])):e.createCommentVNode("",!0),e.createElementVNode("h3",Hy,e.toDisplayString(t.title),1)]),e.createElementVNode("div",Wy,[e.renderSlot(T.$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]=f=>k.value=!k.value)},[e.createVNode(L,{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:g},[e.createVNode(L,{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]=f=>T.$emit("refresh"))},[e.createVNode(L,{icon:"refresh",class:e.normalizeClass(["w-4 h-4 text-slate-600 transition-transform duration-500",{"animate-spin":t.loading}])},null,8,["class"])],8,Gy)):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),i.value?(e.openBlock(),e.createElementBlock("div",Ky,[e.createElementVNode("div",Xy,[_[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]=f=>i.value=!1)},[e.createVNode(L,{icon:"x",class:"w-4 h-4 text-slate-600"})])]),e.createElementVNode("div",Jy,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.customizationOptions,f=>(e.openBlock(),e.createElementBlock("div",{key:f.id,class:"flex items-center justify-between"},[e.createElementVNode("label",{for:`setting-${f.id}`,class:"text-sm text-slate-700 cursor-pointer"},e.toDisplayString(f.label),9,Qy),e.createElementVNode("button",{id:`setting-${f.id}`,class:e.normalizeClass(["relative inline-flex h-6 w-11 items-center rounded-full transition-colors",c.value[f.id]?"bg-blue-600":"bg-slate-300"]),onClick:x=>b(f.id,!c.value[f.id])},[e.createElementVNode("span",{class:e.normalizeClass(["inline-block h-4 w-4 transform rounded-full bg-white transition-transform",c.value[f.id]?"translate-x-6":"translate-x-1"])},null,2)],10,Zy)]))),128))])])):e.createCommentVNode("",!0),k.value?(e.openBlock(),e.createElementBlock("div",eb,[e.createElementVNode("div",tb,[_[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]=f=>k.value=!1)},[e.createVNode(L,{icon:"x",class:"w-4 h-4 text-slate-600"})])]),e.createElementVNode("div",ab,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(h,f=>e.createElementVNode("div",{key:f.key,class:"flex items-center justify-between text-sm"},[e.createElementVNode("span",nb,e.toDisplayString(f.description),1),e.createElementVNode("kbd",ob,e.toDisplayString(f.key),1)])),64))])])):e.createCommentVNode("",!0),e.createElementVNode("div",lb,[t.loading?(e.openBlock(),e.createElementBlock("div",rb,[e.createVNode(Oe,{type:"spin",size:"medium",color:"#3b82f6"})])):e.createCommentVNode("",!0),t.chartType&&t.chartData&&Y.value&&M.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",sb,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(Y.value),e.mergeProps(M.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(T.$slots,"default")],2))]),T.$slots.footer?(e.openBlock(),e.createElementBlock("div",ib,[e.renderSlot(T.$slots,"footer")])):e.createCommentVNode("",!0)],38)):e.createCommentVNode("",!0)}},cb={class:"p-6"},db={class:"text-xl font-bold mb-4"},ub={class:"mb-4"},mb={class:"mb-4"},fb={class:"flex gap-2"},pb=["onClick"],gb={class:"mb-4"},vb={class:"space-y-2 max-h-40 overflow-y-auto"},hb=["checked","onChange"],yb={__name:"AddReminderModal",props:{modelValue:Boolean,availableRecipients:{type:Array,default:()=>[]},sendTypeOptions:{type:Array,default:()=>[]},modelName:{type:String,default:""}},emits:["update:modelValue","save"],setup(t,{emit:n}){const a=n,o=t,l=e.computed({get:()=>o.modelValue,set:z=>a("update:modelValue",z)}),r=e.ref(0),s=e.ref("Email"),i=e.ref([]),c=z=>{const N=i.value.indexOf(z);N>-1?i.value.splice(N,1):i.value.push(z)},g=()=>{r.value=0,s.value="Email",i.value=[]},b=()=>{a("save",{days:Number(r.value)||0,sendType:s.value,recipients:[...i.value]}),l.value=!1,g()},w=()=>{l.value=!1,g()};return(z,N)=>(e.openBlock(),e.createBlock(Ue,{modelValue:l.value,"onUpdate:modelValue":N[1]||(N[1]=S=>l.value=S),size:"md"},{default:e.withCtx(()=>[e.createElementVNode("div",cb,[e.createElementVNode("h3",db," Add Reminder for "+e.toDisplayString(t.modelName),1),e.createElementVNode("div",ub,[N[2]||(N[2]=e.createElementVNode("label",{class:"block text-sm font-medium mb-2"},"Days Before",-1)),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":N[0]||(N[0]=S=>r.value=S),type:"number",min:"0",class:"w-full px-3 py-2 border rounded"},null,512),[[e.vModelText,r.value]])]),e.createElementVNode("div",mb,[N[3]||(N[3]=e.createElementVNode("label",{class:"block text-sm font-medium mb-2"},"Send Type",-1)),e.createElementVNode("div",fb,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.sendTypeOptions,S=>(e.openBlock(),e.createElementBlock("button",{key:S.value,class:e.normalizeClass([s.value===S.value?"bg-blue-500 text-white":"bg-gray-200","px-4 py-2 rounded"]),onClick:V=>s.value=S.value},e.toDisplayString(S.label),11,pb))),128))])]),e.createElementVNode("div",gb,[N[4]||(N[4]=e.createElementVNode("label",{class:"block text-sm font-medium mb-2"},"Recipients",-1)),e.createElementVNode("div",vb,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.availableRecipients,S=>(e.openBlock(),e.createElementBlock("label",{key:S,class:"flex items-center gap-2"},[e.createElementVNode("input",{type:"checkbox",checked:i.value.includes(S),onChange:V=>c(S)},null,40,hb),e.createTextVNode(" "+e.toDisplayString(S),1)]))),128))])]),e.createElementVNode("div",{class:"flex gap-2"},[e.createElementVNode("button",{class:"px-4 py-2 bg-gray-200 rounded",onClick:w}," Cancel "),e.createElementVNode("button",{class:"px-4 py-2 bg-blue-500 text-white rounded",onClick:b}," Add Reminder ")])])]),_:1},8,["modelValue"]))}},bb={class:"min-h-screen bg-linear-to-br from-slate-50 via-blue-50 to-indigo-50 p-6"},xb={class:"mx-auto"},kb={class:"bg-white/70 backdrop-blur-xl rounded-2xl shadow-xl p-8 mb-8"},wb={class:"flex items-center gap-4 mb-3"},Cb={class:"w-12 h-12 bg-linear-to-br from-blue-500 to-indigo-600 rounded-xl flex items-center justify-center shadow-lg"},Bb={class:"grid grid-cols-1 lg:grid-cols-2 gap-6"},Vb=["onClick"],Eb={class:"flex items-center justify-between"},Nb={class:"flex items-center gap-4"},Sb={class:"w-10 h-10 bg-linear-to-br from-blue-500 to-indigo-600 rounded-xl flex items-center justify-center shadow-md"},$b={class:"text-white font-bold text-sm"},zb={class:"text-lg font-bold text-slate-800"},Db={class:"inline-flex items-center gap-1.5 px-3 py-1 bg-linear-to-r from-blue-100 to-indigo-100 text-blue-700 text-xs font-semibold rounded-full mt-1"},Tb={class:"flex items-center gap-3"},Fb=["onClick"],Ab={key:0,class:"p-6 bg-linear-to-br from-slate-50/50 to-blue-50/30"},Mb={key:0,class:"text-center py-12"},Lb={class:"w-16 h-16 bg-linear-to-br from-slate-200 to-slate-300 rounded-2xl flex items-center justify-center mx-auto mb-4"},_b={key:1,class:"space-y-4"},jb={class:"flex items-start gap-4"},Pb={class:"flex-1 space-y-4"},Ob={class:"relative"},Ib=["value","onInput"],Rb={class:"flex gap-2"},Ub=["onClick"],qb=["onClick"],Yb={class:"flex items-center gap-2"},Hb={class:"text-sm font-semibold text-slate-700"},Wb={key:0,class:"mt-3 flex flex-wrap gap-2"},Gb=["onClick"],Kb={class:"bg-linear-to-r from-blue-500 to-indigo-600 p-6 text-white"},Xb={class:"flex items-center justify-between"},Jb={class:"p-6 max-h-96 overflow-y-auto"},Qb={class:"space-y-2"},Zb={class:"relative"},ex=["checked","onChange"],tx={class:"p-6 bg-slate-50 border-t border-slate-200 flex gap-3"},ax={__name:"ReminderConfig",props:{models:{type:Array,default:()=>[]},availableRecipients:{type:Array,default:()=>["User 1","User 2","User 3","HOD","GM","CEO","All Users"]},sendTypeOptions:{type:Array,default:()=>[{value:"Email",label:"Email"},{value:"SMS",label:"SMS"}]}},emits:["update:models"],setup(t,{emit:n}){const a=t,o=n,l=e.ref(null),r=e.ref(!1),s=e.ref(null),i=e.ref(!1),c=e.ref(null),g=y=>{const v=a.models.find(E=>E.id===y);v&&(v.expanded=!v.expanded,o("update:models",[...a.models]))},b=y=>{c.value=y,i.value=!0},w=y=>{const v=a.models.find(E=>E.id===c.value);if(v){const E={id:v.reminders.length+1,...y};v.reminders.push(E),o("update:models",[...a.models])}},z=(y,v)=>{const E=a.models.find(C=>C.id===y);E&&(E.reminders=E.reminders.filter(C=>C.id!==v),o("update:models",[...a.models]))},N=(y,v,E)=>{const C=a.models.find(B=>B.id===y);if(C){const B=C.reminders.find(M=>M.id===v);B&&(B.days=parseInt(E)||0,o("update:models",[...a.models]))}},S=(y,v,E)=>{const C=a.models.find(B=>B.id===y);if(C){const B=C.reminders.find(M=>M.id===v);B&&(B.sendType=E,o("update:models",[...a.models]))}},V=(y,v)=>{const C=a.models.find(B=>B.id===y).reminders.find(B=>B.id===v);l.value=y,s.value={...C,recipients:[...C.recipients]},r.value=!0},k=y=>{const v=s.value.recipients.indexOf(y);v>-1?s.value.recipients.splice(v,1):s.value.recipients.push(y)},h=()=>{const y=a.models.find(v=>v.id===l.value);if(y){const v=y.reminders.find(E=>E.id===s.value.id);v&&(v.recipients=[...s.value.recipients],o("update:models",[...a.models]))}r.value=!1};return(y,v)=>(e.openBlock(),e.createElementBlock("div",bb,[e.createElementVNode("div",xb,[e.createElementVNode("div",kb,[e.createElementVNode("div",wb,[e.createElementVNode("div",Cb,[e.createVNode(L,{icon:"envelope",class:"w-6 h-6 text-white"})]),v[4]||(v[4]=e.createElementVNode("div",null,[e.createElementVNode("h1",{class:"text-3xl font-bold bg-linear-to-r from-slate-800 to-slate-600 bg-clip-text text-transparent"}," Reminder Configuration "),e.createElementVNode("p",{class:"text-slate-600 mt-1"}," Configure reminder schedules for different models ")],-1))])]),e.createElementVNode("div",Bb,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.models,E=>(e.openBlock(),e.createElementBlock("div",{key:E.id,class:"bg-white/70 backdrop-blur-xl rounded-2xl shadow-xl border border-white/20 overflow-hidden hover:shadow-2xl transition-all duration-300"},[e.createElementVNode("div",{class:"p-6 cursor-pointer hover:bg-linear-to-r hover:from-blue-50 hover:to-indigo-50 transition-all duration-300 border-b border-slate-100",onClick:C=>g(E.id)},[e.createElementVNode("div",Eb,[e.createElementVNode("div",Nb,[e.createElementVNode("div",Sb,[e.createElementVNode("span",$b,e.toDisplayString(E.name.split(" ")[1]?.[0]||"M"),1)]),e.createElementVNode("div",null,[e.createElementVNode("h2",zb,e.toDisplayString(E.name),1),e.createElementVNode("span",Db,[v[5]||(v[5]=e.createElementVNode("div",{class:"w-1.5 h-1.5 bg-blue-500 rounded-full animate-pulse"},null,-1)),e.createTextVNode(" "+e.toDisplayString(E.reminders.length)+" reminder"+e.toDisplayString(E.reminders.length!==1?"s":""),1)])])]),e.createElementVNode("div",Tb,[e.createElementVNode("button",{class:"px-4 py-2 bg-linear-to-r from-green-500 to-emerald-600 text-white rounded-xl font-semibold text-sm hover:from-green-600 hover:to-emerald-700 transition-all duration-300 shadow-md hover:shadow-lg flex items-center gap-2",onClick:e.withModifiers(C=>b(E.id),["stop"])},[e.createVNode(L,{icon:"plus",class:"w-4 h-4"}),v[6]||(v[6]=e.createTextVNode(" Add ",-1))],8,Fb),e.createVNode(L,{icon:E.expanded?"chevron-up":"chevron-down",class:"w-5 h-5 text-slate-400"},null,8,["icon"])])])],8,Vb),E.expanded?(e.openBlock(),e.createElementBlock("div",Ab,[E.reminders.length===0?(e.openBlock(),e.createElementBlock("div",Mb,[e.createElementVNode("div",Lb,[e.createVNode(L,{icon:"envelope",class:"w-8 h-8 text-slate-400"})]),v[7]||(v[7]=e.createElementVNode("p",{class:"text-slate-500 font-medium"}," No reminders configured yet ",-1)),v[8]||(v[8]=e.createElementVNode("p",{class:"text-slate-400 text-sm mt-1"},' Click "Add" to create your first reminder ',-1))])):(e.openBlock(),e.createElementBlock("div",_b,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(E.reminders,C=>(e.openBlock(),e.createElementBlock("div",{key:C.id,class:"bg-white rounded-xl border border-slate-200 p-5 hover:shadow-lg transition-all duration-300"},[e.createElementVNode("div",jb,[e.createElementVNode("div",Pb,[e.createElementVNode("div",null,[v[10]||(v[10]=e.createElementVNode("label",{class:"block text-xs font-bold text-slate-700 mb-2 uppercase tracking-wide"}," Days Before ",-1)),e.createElementVNode("div",Ob,[e.createElementVNode("input",{type:"number",min:"0",value:C.days,class:"w-full px-4 py-3 border-2 border-slate-200 rounded-xl focus:outline-none focus:border-blue-500 focus:ring-4 focus:ring-blue-100 transition-all duration-300 font-semibold text-slate-800",placeholder:"0",onInput:B=>N(E.id,C.id,B.target.value)},null,40,Ib),v[9]||(v[9]=e.createElementVNode("div",{class:"absolute right-3 top-1/2 -translate-y-1/2 text-slate-400 text-sm font-medium"}," days ",-1))])]),e.createElementVNode("div",null,[v[11]||(v[11]=e.createElementVNode("label",{class:"block text-xs font-bold text-slate-700 mb-2 uppercase tracking-wide"}," Send Type ",-1)),e.createElementVNode("div",Rb,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.sendTypeOptions,B=>(e.openBlock(),e.createElementBlock("button",{key:B.value,class:e.normalizeClass(["flex-1 px-4 py-3 rounded-xl font-semibold text-sm transition-all duration-300 flex items-center justify-center gap-2",C.sendType===B.value?"bg-linear-to-r from-blue-500 to-indigo-600 text-white shadow-lg":"bg-slate-100 text-slate-600 hover:bg-slate-200"]),onClick:M=>S(E.id,C.id,B.value)},[e.createVNode(L,{icon:B.value==="Email"?"envelope":"message",class:"w-4 h-4"},null,8,["icon"]),e.createTextVNode(" "+e.toDisplayString(B.label),1)],10,Ub))),128))])]),e.createElementVNode("div",null,[v[12]||(v[12]=e.createElementVNode("label",{class:"block text-xs font-bold text-slate-700 mb-2 uppercase tracking-wide"}," Recipients ",-1)),e.createElementVNode("button",{class:"w-full px-4 py-3 bg-linear-to-r from-slate-50 to-blue-50 border-2 border-slate-200 rounded-xl hover:border-blue-400 transition-all duration-300 flex items-center justify-between group",onClick:B=>V(E.id,C.id)},[e.createElementVNode("div",Yb,[e.createVNode(L,{icon:"users",class:"w-4 h-4 text-slate-600 group-hover:text-blue-600 transition-colors"}),e.createElementVNode("span",Hb,e.toDisplayString(C.recipients.length===0?"Select recipients":`${C.recipients.length} selected`),1)]),e.createVNode(L,{icon:"chevron-down",class:"w-4 h-4 text-slate-400 group-hover:text-blue-600 transition-colors"})],8,qb),C.recipients.length>0?(e.openBlock(),e.createElementBlock("div",Wb,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.recipients,B=>(e.openBlock(),e.createElementBlock("span",{key:B,class:"px-3 py-1.5 bg-linear-to-r from-blue-100 to-indigo-100 text-blue-700 text-xs font-semibold rounded-lg"},e.toDisplayString(B),1))),128))])):e.createCommentVNode("",!0)])]),e.createElementVNode("button",{class:"p-3 bg-linear-to-r from-red-500 to-rose-600 text-white rounded-xl hover:from-red-600 hover:to-rose-700 transition-all duration-300 shadow-md hover:shadow-lg",onClick:B=>z(E.id,C.id)},[e.createVNode(L,{icon:"trash",class:"w-4 h-4"})],8,Gb)])]))),128))]))])):e.createCommentVNode("",!0)]))),128))]),e.createVNode(yb,{modelValue:i.value,"onUpdate:modelValue":v[0]||(v[0]=E=>i.value=E),"available-recipients":t.availableRecipients,"send-type-options":t.sendTypeOptions,"model-name":t.models.find(E=>E.id===c.value)?.name,onSave:w},null,8,["modelValue","available-recipients","send-type-options","model-name"]),e.createVNode(Ue,{modelValue:r.value,"onUpdate:modelValue":v[3]||(v[3]=E=>r.value=E),size:"md","show-close":!1},{default:e.withCtx(()=>[e.createElementVNode("div",Kb,[e.createElementVNode("div",Xb,[v[13]||(v[13]=e.createElementVNode("div",null,[e.createElementVNode("h3",{class:"text-xl font-bold"}," Select Recipients "),e.createElementVNode("p",{class:"text-blue-100 text-sm mt-1"}," Choose who should receive this reminder ")],-1)),e.createElementVNode("button",{class:"p-2 hover:bg-white/20 rounded-lg transition-colors",onClick:v[1]||(v[1]=E=>r.value=!1)},[e.createVNode(L,{icon:"x",class:"w-5 h-5"})])])]),e.createElementVNode("div",Jb,[e.createElementVNode("div",Qb,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.availableRecipients,E=>(e.openBlock(),e.createElementBlock("label",{key:E,class:e.normalizeClass(["flex items-center gap-3 p-4 rounded-xl cursor-pointer transition-all duration-300",s.value?.recipients.includes(E)?"bg-linear-to-r from-blue-50 to-indigo-50 border-2 border-blue-300":"bg-slate-50 border-2 border-transparent hover:border-slate-200"])},[e.createElementVNode("div",Zb,[e.createElementVNode("input",{type:"checkbox",checked:s.value?.recipients.includes(E),class:"w-5 h-5 text-blue-600 rounded-md border-2 border-slate-300 focus:ring-4 focus:ring-blue-100 transition-all",onChange:C=>k(E)},null,40,ex),s.value?.recipients.includes(E)?(e.openBlock(),e.createBlock(L,{key:0,icon:"check",class:"w-3 h-3 text-white absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 pointer-events-none"})):e.createCommentVNode("",!0)]),e.createElementVNode("span",{class:e.normalizeClass(["text-sm font-semibold",s.value?.recipients.includes(E)?"text-blue-700":"text-slate-700"])},e.toDisplayString(E),3)],2))),128))])]),e.createElementVNode("div",tx,[e.createElementVNode("button",{class:"flex-1 px-6 py-3 bg-white border-2 border-slate-300 text-slate-700 rounded-xl font-semibold hover:bg-slate-50 transition-all duration-300",onClick:v[2]||(v[2]=E=>r.value=!1)}," Cancel "),e.createElementVNode("button",{class:"flex-1 px-6 py-3 bg-linear-to-r from-green-500 to-emerald-600 text-white rounded-xl font-semibold hover:from-green-600 hover:to-emerald-700 transition-all duration-300 shadow-lg",onClick:h}," Save Recipients ")])]),_:1},8,["modelValue"])])]))}},pl=qe(ax,[["__scopeId","data-v-5e2a30bd"]]),aa={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,7 +573,7 @@ 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 g=t.getBoundingClientRect(),
|
|
576
|
+
`,o.appendChild(l),t._tooltipEl=o,t._tooltipArrow=l,t._tooltipPosition=a;const r=()=>{if(!o.parentNode)return;const g=t.getBoundingClientRect(),b=o.getBoundingClientRect();if(g.width===0||g.height===0){o.style.opacity="0";return}let w,z;switch(a){case"bottom":z=g.left+g.width/2-b.width/2,w=g.bottom+8;break;case"left":z=g.left-b.width-8,w=g.top+g.height/2-b.height/2;break;case"right":z=g.right+8,w=g.top+g.height/2-b.height/2;break;default:z=g.left+g.width/2-b.width/2,w=g.top-b.height-8}const N=8;z=Math.max(N,Math.min(z,window.innerWidth-b.width-N)),w=Math.max(N,Math.min(w,window.innerHeight-b.height-N)),o.style.left=`${z}px`,o.style.top=`${w}px`},s=()=>{const g=`
|
|
577
577
|
position: absolute;
|
|
578
578
|
width: 0;
|
|
579
579
|
height: 0;
|
|
@@ -602,4 +602,4 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
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))}};function Se(t){if(typeof t=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(t))return t;if(t instanceof Date){const n=t.getFullYear(),a=String(t.getMonth()+1).padStart(2,"0"),o=String(t.getDate()).padStart(2,"0");return`${n}-${a}-${o}`}return null}function Kb(t){if(!t)return null;if(/^\d{4}-\d{2}-\d{2}$/.test(t)){const[n,a,o]=t.split("-").map(Number);return new Date(n,a-1,o)}return new Date(t)}function ut(){return Se(new Date)}function gl(t){const n=t.getDay(),a=new Date(t);a.setDate(t.getDate()-n);const o=new Date(a);return o.setDate(a.getDate()+6),{startDate:a,endDate:o}}function Xb(t){const{startDate:n}=gl(t),a=[];for(let o=0;o<7;o++){const l=new Date(n);l.setDate(n.getDate()+o),a.push(l)}return a}function nn(t){const n=t.getFullYear(),a=t.getMonth(),o=new Date(n,a,1),l=new Date(n,a+1,0),r=o.getDay(),s=l.getDate(),i=[],c=ut(),g=new Date(n,a,0).getDate();for(let C=r-1;C>=0;C--){const D=g-C,B=new Date(n,a-1,D),N=Se(B);i.push({dayNumber:D,date:N,dateObj:B,isCurrentMonth:!1,isToday:N===c})}for(let C=1;C<=s;C++){const D=new Date(n,a,C),B=Se(D);i.push({dayNumber:C,date:B,dateObj:D,isCurrentMonth:!0,isToday:B===c})}const k=42-i.length;for(let C=1;C<=k;C++){const D=new Date(n,a+1,C),B=Se(D);i.push({dayNumber:C,date:B,dateObj:D,isCurrentMonth:!1,isToday:B===c})}return i}function on(t,n="full"){if(!t)return"";const a=Kb(t);if(!a)return String(t);const o={full:{weekday:"long",year:"numeric",month:"long",day:"numeric"},short:{month:"short",day:"numeric",year:"numeric"},time:{hour:"2-digit",minute:"2-digit"}};return a.toLocaleDateString("en-US",o[n]||o.full)}function Jb(t=0,n=23,a=60){const o=[];for(let l=t;l<=n;l++)for(let r=0;r<60;r+=a){const s=String(l).padStart(2,"0"),i=String(r).padStart(2,"0"),c=`${s}:${i}`,g=l===0?12:l>12?l-12:l,k=l<12?"AM":"PM",C=`${g}:${i} ${k}`;o.push({time:c,display:C})}return o}function ln(t,n){const a=Se(t),o=Se(n);return a===o}function _t(t,n="long"){return t.toLocaleDateString("en-US",{month:n})}function jt(t){return t.getFullYear()}const Qb={name:"EventsCalendar",props:{events:{type:Array,default:()=>[]},size:{type:String,default:"default"}},emits:["select-date","select-event"],data(){return{currentDate:new Date,selectedDate:null,viewMode:"month",selectedEvent:null,weekDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],weekDaysShort:["S","M","T","W","T","F","S"],timeSlots:Jb(0,23,60),monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"]}},computed:{displayTitle(){if(this.viewMode==="year")return jt(this.currentDate);if(this.viewMode==="day")return on(this.currentDate,"full");if(this.viewMode==="week"){const{startDate:t,endDate:n}=gl(this.currentDate),a=_t(t,"short"),o=_t(n,"short"),l=jt(this.currentDate);return t.getMonth()===n.getMonth()?`${a} ${t.getDate()} - ${n.getDate()}, ${l}`:`${a} ${t.getDate()} - ${o} ${n.getDate()}, ${l}`}else return`${_t(this.currentDate)} ${jt(this.currentDate)}`},calendarDays(){return nn(this.currentDate).map(n=>({...n,events:this.getEventsForDate(n.date)}))},weekViewDays(){return Xb(this.currentDate).map(n=>{const a=Se(n);return{dateObj:n,date:a,dayNumber:n.getDate(),dayName:this.weekDays[n.getDay()],isToday:ln(n,ut()),events:this.getEventsForDate(a)}})},dayViewDate(){const t=Se(this.currentDate);return{dateObj:this.currentDate,date:t,dayNumber:this.currentDate.getDate(),dayName:this.weekDays[this.currentDate.getDay()],isToday:ln(this.currentDate,ut()),events:this.getEventsForDate(t)}},yearViewMonths(){const t=this.currentDate.getFullYear();return this.monthNames.map((n,a)=>{const o=new Date(t,a,1),l=nn(o);return{name:n,index:a,days:l.map(r=>({...r,events:this.getEventsForDate(r.date)}))}})}},methods:{formatEventDate:on,getEventsForDate(t){return this.events.filter(n=>n.date===t)},previousPeriod(){this.viewMode==="year"?this.currentDate=new Date(this.currentDate.getFullYear()-1,0,1):this.viewMode==="day"?this.currentDate=new Date(this.currentDate.getFullYear(),this.currentDate.getMonth(),this.currentDate.getDate()-1):this.viewMode==="week"?this.currentDate=new Date(this.currentDate.getFullYear(),this.currentDate.getMonth(),this.currentDate.getDate()-7):this.currentDate=new Date(this.currentDate.getFullYear(),this.currentDate.getMonth()-1,1)},nextPeriod(){this.viewMode==="year"?this.currentDate=new Date(this.currentDate.getFullYear()+1,0,1):this.viewMode==="day"?this.currentDate=new Date(this.currentDate.getFullYear(),this.currentDate.getMonth(),this.currentDate.getDate()+1):this.viewMode==="week"?this.currentDate=new Date(this.currentDate.getFullYear(),this.currentDate.getMonth(),this.currentDate.getDate()+7):this.currentDate=new Date(this.currentDate.getFullYear(),this.currentDate.getMonth()+1,1)},goToToday(){this.currentDate=new Date,this.selectedDate=ut(),this.$emit("select-date",{date:this.selectedDate,events:this.getEventsForDate(this.selectedDate)})},selectDay(t){this.selectedDate=t.date;const[n,a,o]=t.date.split("-").map(Number);this.currentDate=new Date(n,a-1,o),this.$emit("select-date",{date:t.date,events:t.events})},selectEvent(t,n){this.selectedEvent=t,this.selectedDate=n.date;const[a,o,l]=n.date.split("-").map(Number);this.currentDate=new Date(a,o-1,l),this.viewMode="month",this.$emit("select-event",t)},getEventColorClass(t){return{blue:"bg-blue-500 border-blue-600",red:"bg-red-500 border-red-600",green:"bg-green-500 border-green-600",purple:"bg-purple-500 border-purple-600",orange:"bg-orange-500 border-orange-600"}[t]||"bg-gray-500 border-gray-600"},getEventsAtTime(t,n){return t.filter(o=>{if(!o.time||!/^\d{1,2}:\d{2}/.test(o.time))return!1;const l=o.time.split(":")[0].padStart(2,"0");return n.time.startsWith(l)})},getAllDayEvents(t){return t.filter(n=>n.time?!/^\d{1,2}:\d{2}/.test(n.time):!0)},selectMonthFromYear(t){this.currentDate=new Date(this.currentDate.getFullYear(),t,1),this.viewMode="month"}}},Zb={class:"flex gap-0 h-full bg-white rounded-lg shadow-sm border border-gray-200"},ex={class:"flex-1 flex flex-col"},tx={class:"flex items-center justify-between px-6 py-4 border-b border-gray-200"},ax={class:"flex items-center gap-3"},nx={class:"flex items-center gap-1"},ox={class:"text-xl font-semibold text-gray-900 ml-2"},lx={class:"flex items-center gap-2"},rx={class:"flex-1 flex flex-col p-4"},sx={key:0,class:"flex-1 overflow-y-auto"},ix={class:"grid grid-cols-3 gap-6 pb-6"},cx=["onClick"],dx={class:"bg-linear-to-r from-blue-500 to-blue-600 px-3 py-3"},ux={class:"text-sm font-bold text-white text-center"},mx={class:"p-3"},fx={class:"grid grid-cols-7 mb-2"},px={class:"grid grid-cols-7 gap-1"},gx={key:1,class:"flex-1 flex flex-col"},vx={class:"grid grid-cols-7 border-b border-gray-200"},hx={class:"grid grid-cols-7 flex-1 border-l border-t border-gray-200"},yx=["onClick"],bx={class:"flex items-center justify-between mb-1 px-1"},xx={class:"space-y-1"},kx=["onClick"],wx={key:0,class:"text-xs px-2 py-1 text-gray-600 font-medium cursor-pointer hover:text-gray-900"},Cx={key:2,class:"flex-1 flex flex-col overflow-hidden"},Bx={class:"grid grid-cols-8 border-b border-gray-200 bg-gray-50"},Vx={class:"text-xs font-semibold text-gray-600 uppercase"},Ex={class:"grid grid-cols-8 border-b border-gray-200 bg-gray-50 min-h-[60px]"},Nx=["onClick"],Sx={class:"font-semibold truncate"},$x={class:"flex-1 overflow-y-auto"},zx={class:"grid grid-cols-8"},Dx={class:"border-r border-gray-200 bg-gray-50"},Tx=["onClick"],Fx={class:"font-semibold truncate"},Ax={class:"text-xs opacity-90 truncate"},Mx={key:3,class:"flex-1 flex flex-col overflow-hidden"},Lx={class:"border-b border-gray-200 bg-gray-50 p-4"},_x={class:"text-center"},jx={class:"text-sm font-semibold text-gray-600 uppercase"},Px={key:0,class:"border-b border-gray-200 bg-gray-50 p-4"},Ox={class:"space-y-2"},Ix=["onClick"],Rx={class:"font-semibold"},Ux={key:0,class:"text-xs opacity-80 mt-1"},qx={class:"flex-1 overflow-y-auto"},Yx={class:"flex"},Hx={class:"w-24 border-r border-gray-200 bg-gray-50 shrink-0"},Wx={class:"flex-1 relative"},Gx=["onClick"],Kx={class:"font-semibold"},Xx={class:"text-xs opacity-90 mt-1"},Jx={key:0,class:"text-xs opacity-80 mt-1 line-clamp-2"},Qx={key:0,class:"w-80 border-l border-gray-200 bg-white flex flex-col"},Zx={class:"px-6 py-4 border-b border-gray-200 flex items-start justify-between"},ek={class:"flex-1 overflow-y-auto px-6 py-4 space-y-4"},tk={class:"text-xl font-bold text-gray-900"},ak={key:0},nk={key:0,class:"w-4 h-4 mr-1.5",fill:"currentColor",viewBox:"0 0 20 20"},ok={key:1,class:"w-4 h-4 mr-1.5",fill:"currentColor",viewBox:"0 0 20 20"},lk={class:"space-y-3 pt-2"},rk={class:"flex items-start gap-3"},sk={class:"text-sm font-medium text-gray-900"},ik={class:"flex items-start gap-3"},ck={class:"text-sm text-gray-600"},dk={key:1,class:"pt-4 border-t border-gray-200"},uk={class:"text-sm text-gray-600 leading-relaxed"},mk={key:2,class:"pt-4 border-t border-gray-200 space-y-3"},fk={key:0,class:"text-sm"},pk={class:"text-gray-600 mt-1"},gk={key:1,class:"text-sm"},vk={class:"text-gray-600 mt-1"};function hk(t,n,a,o,l,r){return e.openBlock(),e.createElementBlock("div",Zb,[e.createElementVNode("div",ex,[e.createElementVNode("div",tx,[e.createElementVNode("div",ax,[e.createElementVNode("button",{class:"px-4 py-2 text-sm font-medium text-gray-700 bg-white border border-gray-300 rounded hover:bg-gray-50 transition-colors",onClick:n[0]||(n[0]=(...s)=>r.goToToday&&r.goToToday(...s))}," Today "),e.createElementVNode("div",nx,[e.createElementVNode("button",{class:"p-2 text-gray-600 hover:bg-gray-100 rounded transition-colors",onClick:n[1]||(n[1]=(...s)=>r.previousPeriod&&r.previousPeriod(...s))},[...n[8]||(n[8]=[e.createElementVNode("svg",{class:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 19l-7-7 7-7"})],-1)])]),e.createElementVNode("button",{class:"p-2 text-gray-600 hover:bg-gray-100 rounded transition-colors",onClick:n[2]||(n[2]=(...s)=>r.nextPeriod&&r.nextPeriod(...s))},[...n[9]||(n[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:"M9 5l7 7-7 7"})],-1)])])]),e.createElementVNode("h2",ox,e.toDisplayString(r.displayTitle),1)]),e.createElementVNode("div",lx,[e.createElementVNode("button",{class:e.normalizeClass(["px-3 py-2 text-sm font-medium rounded transition-colors",l.viewMode==="year"?"bg-blue-100 text-blue-700":"text-gray-700 hover:bg-gray-100"]),onClick:n[3]||(n[3]=s=>l.viewMode="year")}," Year ",2),e.createElementVNode("button",{class:e.normalizeClass(["px-3 py-2 text-sm font-medium rounded transition-colors",l.viewMode==="month"?"bg-blue-100 text-blue-700":"text-gray-700 hover:bg-gray-100"]),onClick:n[4]||(n[4]=s=>l.viewMode="month")}," Month ",2),e.createElementVNode("button",{class:e.normalizeClass(["px-3 py-2 text-sm font-medium rounded transition-colors",l.viewMode==="week"?"bg-blue-100 text-blue-700":"text-gray-700 hover:bg-gray-100"]),onClick:n[5]||(n[5]=s=>l.viewMode="week")}," Week ",2),e.createElementVNode("button",{class:e.normalizeClass(["px-3 py-2 text-sm font-medium rounded transition-colors",l.viewMode==="day"?"bg-blue-100 text-blue-700":"text-gray-700 hover:bg-gray-100"]),onClick:n[6]||(n[6]=s=>l.viewMode="day")}," Day ",2)])]),e.createElementVNode("div",rx,[l.viewMode==="year"?(e.openBlock(),e.createElementBlock("div",sx,[e.createElementVNode("div",ix,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.yearViewMonths,s=>(e.openBlock(),e.createElementBlock("div",{key:s.index,class:"bg-white rounded-lg border border-gray-200 overflow-hidden hover:shadow-lg transition-shadow cursor-pointer",onClick:i=>r.selectMonthFromYear(s.index)},[e.createElementVNode("div",dx,[e.createElementVNode("h3",ux,e.toDisplayString(s.name),1)]),e.createElementVNode("div",mx,[e.createElementVNode("div",fx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.weekDaysShort,i=>(e.openBlock(),e.createElementBlock("div",{key:i,class:"text-center text-[10px] font-bold text-gray-600"},e.toDisplayString(i),1))),128))]),e.createElementVNode("div",px,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.days,(i,c)=>(e.openBlock(),e.createElementBlock("div",{key:c,class:e.normalizeClass(["aspect-square flex items-center justify-center text-xs rounded-md relative transition-all hover:scale-110",[i.isCurrentMonth?"text-gray-800":"text-gray-300",i.isToday?"bg-blue-600 text-white font-extrabold shadow-md ring-2 ring-blue-300":"",i.events.length>0&&!i.isToday&&i.isCurrentMonth?"bg-red-100 text-red-900 font-bold border-2 border-red-400 shadow-sm":"",i.events.length===0&&!i.isToday&&i.isCurrentMonth?"hover:bg-gray-100":""]])},[e.createTextVNode(e.toDisplayString(i.dayNumber)+" ",1),i.events.length>1&&i.isCurrentMonth?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["absolute -top-1 -right-1 w-4 h-4 rounded-full flex items-center justify-center text-[8px] font-black shadow-md",i.isToday?"bg-yellow-400 text-blue-900":"bg-red-600 text-white"])},e.toDisplayString(i.events.length),3)):e.createCommentVNode("",!0)],2))),128))])])],8,cx))),128))])])):e.createCommentVNode("",!0),l.viewMode==="month"?(e.openBlock(),e.createElementBlock("div",gx,[e.createElementVNode("div",vx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.weekDays,s=>(e.openBlock(),e.createElementBlock("div",{key:s,class:"text-center text-xs font-semibold text-gray-600 py-3 uppercase tracking-wider"},e.toDisplayString(s),1))),128))]),e.createElementVNode("div",hx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.calendarDays,(s,i)=>(e.openBlock(),e.createElementBlock("div",{key:i,class:e.normalizeClass(["border-r border-b border-gray-200 p-1 min-h-[120px] relative cursor-pointer hover:bg-gray-50 transition-colors",[s.isCurrentMonth?"bg-white":"bg-gray-50",s.isToday?"bg-blue-50":"",l.selectedDate===s.date?"ring-2 ring-blue-500 ring-inset":""]]),onClick:c=>r.selectDay(s)},[e.createElementVNode("div",bx,[e.createElementVNode("span",{class:e.normalizeClass(["text-sm font-medium",[s.isCurrentMonth?"text-gray-900":"text-gray-400",s.isToday?"bg-blue-600 text-white w-6 h-6 flex items-center justify-center rounded-full text-xs":""]])},e.toDisplayString(s.dayNumber),3)]),e.createElementVNode("div",xx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.events.slice(0,3),(c,g)=>(e.openBlock(),e.createElementBlock("div",{key:g,class:e.normalizeClass(["text-xs px-2 py-1 rounded cursor-pointer truncate border-l-2 text-white font-medium hover:opacity-90 transition-opacity",r.getEventColorClass(c.color)]),onClick:e.withModifiers(k=>r.selectEvent(c,s),["stop"])},e.toDisplayString(c.title),11,kx))),128)),s.events.length>3?(e.openBlock(),e.createElementBlock("div",wx," +"+e.toDisplayString(s.events.length-3)+" more ",1)):e.createCommentVNode("",!0)])],10,yx))),128))])])):l.viewMode==="week"?(e.openBlock(),e.createElementBlock("div",Cx,[e.createElementVNode("div",Bx,[n[10]||(n[10]=e.createElementVNode("div",{class:"border-r border-gray-200 p-2"},null,-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.weekViewDays,s=>(e.openBlock(),e.createElementBlock("div",{key:s.date,class:e.normalizeClass(["text-center p-2 border-r border-gray-200",s.isToday?"bg-blue-50":""])},[e.createElementVNode("div",Vx,e.toDisplayString(s.dayName),1),e.createElementVNode("div",{class:e.normalizeClass(["text-lg font-bold mt-1",[s.isToday?"bg-blue-600 text-white w-8 h-8 flex items-center justify-center rounded-full mx-auto":"text-gray-900"]])},e.toDisplayString(s.dayNumber),3)],2))),128))]),e.createElementVNode("div",Ex,[n[11]||(n[11]=e.createElementVNode("div",{class:"border-r border-gray-200 px-2 py-1 text-xs text-gray-600 text-right flex items-center justify-end"}," All Day ",-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.weekViewDays,s=>(e.openBlock(),e.createElementBlock("div",{key:"allday-"+s.date,class:e.normalizeClass(["border-r border-gray-200 p-1 space-y-1",s.isToday?"bg-blue-50 bg-opacity-30":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.getAllDayEvents(s.events),i=>(e.openBlock(),e.createElementBlock("div",{key:i.id,class:e.normalizeClass(["rounded border-l-2 p-1 text-xs font-medium text-white cursor-pointer hover:opacity-90 transition-opacity",r.getEventColorClass(i.color)]),onClick:c=>r.selectEvent(i,s)},[e.createElementVNode("div",Sx,e.toDisplayString(i.title),1)],10,Nx))),128))],2))),128))]),e.createElementVNode("div",$x,[e.createElementVNode("div",zx,[e.createElementVNode("div",Dx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.timeSlots,s=>(e.openBlock(),e.createElementBlock("div",{key:s.time,class:"h-16 border-b border-gray-200 px-2 py-1 text-xs text-gray-600 text-right"},e.toDisplayString(s.display),1))),128))]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.weekViewDays,s=>(e.openBlock(),e.createElementBlock("div",{key:s.date,class:"border-r border-gray-200 relative"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.timeSlots,i=>(e.openBlock(),e.createElementBlock("div",{key:i.time,class:e.normalizeClass(["h-16 border-b border-gray-200 hover:bg-gray-50 transition-colors cursor-pointer relative",s.isToday?"bg-blue-50 bg-opacity-30":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.getEventsAtTime(s.events,i),c=>(e.openBlock(),e.createElementBlock("div",{key:c.id,class:e.normalizeClass(["absolute inset-x-1 top-1 bottom-1 rounded border-l-2 p-1 text-xs font-medium text-white cursor-pointer hover:opacity-90 transition-opacity overflow-hidden",r.getEventColorClass(c.color)]),onClick:g=>r.selectEvent(c,s)},[e.createElementVNode("div",Fx,e.toDisplayString(c.title),1),e.createElementVNode("div",Ax,e.toDisplayString(c.time),1)],10,Tx))),128))],2))),128))]))),128))])])])):l.viewMode==="day"?(e.openBlock(),e.createElementBlock("div",Mx,[e.createElementVNode("div",Lx,[e.createElementVNode("div",_x,[e.createElementVNode("div",jx,e.toDisplayString(r.dayViewDate.dayName),1),e.createElementVNode("div",{class:e.normalizeClass(["text-3xl font-bold mt-2",[r.dayViewDate.isToday?"text-blue-600":"text-gray-900"]])},e.toDisplayString(r.dayViewDate.dayNumber),3)])]),r.getAllDayEvents(r.dayViewDate.events).length>0?(e.openBlock(),e.createElementBlock("div",Px,[n[12]||(n[12]=e.createElementVNode("h4",{class:"text-xs font-semibold text-gray-600 uppercase tracking-wide mb-2"}," All Day Events ",-1)),e.createElementVNode("div",Ox,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.getAllDayEvents(r.dayViewDate.events),s=>(e.openBlock(),e.createElementBlock("div",{key:s.id,class:e.normalizeClass(["rounded border-l-4 p-3 text-sm font-medium text-white cursor-pointer hover:opacity-90 transition-opacity shadow-sm",r.getEventColorClass(s.color)]),onClick:i=>r.selectEvent(s,r.dayViewDate)},[e.createElementVNode("div",Rx,e.toDisplayString(s.title),1),s.description?(e.openBlock(),e.createElementBlock("div",Ux,e.toDisplayString(s.description),1)):e.createCommentVNode("",!0)],10,Ix))),128))])])):e.createCommentVNode("",!0),e.createElementVNode("div",qx,[e.createElementVNode("div",Yx,[e.createElementVNode("div",Hx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.timeSlots,s=>(e.openBlock(),e.createElementBlock("div",{key:s.time,class:"h-16 border-b border-gray-200 px-2 py-1 text-xs text-gray-600 text-right"},e.toDisplayString(s.display),1))),128))]),e.createElementVNode("div",Wx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.timeSlots,s=>(e.openBlock(),e.createElementBlock("div",{key:s.time,class:e.normalizeClass(["h-16 border-b border-gray-200 hover:bg-gray-50 transition-colors cursor-pointer relative",r.dayViewDate.isToday?"bg-blue-50 bg-opacity-30":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.getEventsAtTime(r.dayViewDate.events,s),i=>(e.openBlock(),e.createElementBlock("div",{key:i.id,class:e.normalizeClass(["absolute inset-x-2 top-1 bottom-1 rounded border-l-4 p-2 text-sm font-medium text-white cursor-pointer hover:opacity-90 transition-opacity shadow-sm",r.getEventColorClass(i.color)]),onClick:c=>r.selectEvent(i,r.dayViewDate)},[e.createElementVNode("div",Kx,e.toDisplayString(i.title),1),e.createElementVNode("div",Xx,e.toDisplayString(i.time),1),i.description?(e.openBlock(),e.createElementBlock("div",Jx,e.toDisplayString(i.description),1)):e.createCommentVNode("",!0)],10,Gx))),128))],2))),128))])])])])):e.createCommentVNode("",!0)])]),e.renderSlot(t.$slots,"sidebar",{selectedEvent:l.selectedEvent,closeEvent:()=>l.selectedEvent=null},()=>[e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-200","leave-active-class":"transition-all duration-200","enter-from-class":"opacity-0 translate-x-4","leave-to-class":"opacity-0 translate-x-4"},{default:e.withCtx(()=>[l.selectedEvent?(e.openBlock(),e.createElementBlock("div",Qx,[e.createElementVNode("div",Zx,[n[14]||(n[14]=e.createElementVNode("h3",{class:"text-lg font-semibold text-gray-900"}," Event Details ",-1)),e.createElementVNode("button",{class:"text-gray-400 hover:text-gray-600 transition-colors",onClick:n[7]||(n[7]=s=>l.selectedEvent=null)},[...n[13]||(n[13]=[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.createElementVNode("div",ek,[e.createElementVNode("div",{class:e.normalizeClass(["h-1 w-full rounded-full",r.getEventColorClass(l.selectedEvent.color)])},null,2),e.createElementVNode("div",null,[e.createElementVNode("h4",tk,e.toDisplayString(l.selectedEvent.title),1)]),l.selectedEvent.status?(e.openBlock(),e.createElementBlock("div",ak,[e.createElementVNode("span",{class:e.normalizeClass(["inline-flex items-center px-3 py-1.5 rounded-full text-sm font-medium",l.selectedEvent.status==="complied"?"bg-green-100 text-green-800 border border-green-200":"bg-orange-100 text-orange-800 border border-orange-200"])},[l.selectedEvent.status==="complied"?(e.openBlock(),e.createElementBlock("svg",nk,[...n[15]||(n[15]=[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z","clip-rule":"evenodd"},null,-1)])])):(e.openBlock(),e.createElementBlock("svg",ok,[...n[16]||(n[16]=[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm1-12a1 1 0 10-2 0v4a1 1 0 00.293.707l2.828 2.829a1 1 0 101.415-1.415L11 9.586V6z","clip-rule":"evenodd"},null,-1)])])),e.createTextVNode(" "+e.toDisplayString(l.selectedEvent.status==="complied"?"Complied":"Pending"),1)],2)])):e.createCommentVNode("",!0),e.createElementVNode("div",lk,[e.createElementVNode("div",rk,[n[17]||(n[17]=e.createElementVNode("svg",{class:"w-5 h-5 text-gray-400 mt-0.5",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)),e.createElementVNode("div",null,[e.createElementVNode("p",sk,e.toDisplayString(r.formatEventDate(l.selectedEvent.date,"full")),1)])]),e.createElementVNode("div",ik,[n[18]||(n[18]=e.createElementVNode("svg",{class:"w-5 h-5 text-gray-400 mt-0.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)),e.createElementVNode("p",ck,e.toDisplayString(l.selectedEvent.time),1)])]),l.selectedEvent.description?(e.openBlock(),e.createElementBlock("div",dk,[n[19]||(n[19]=e.createElementVNode("h5",{class:"text-sm font-semibold text-gray-900 mb-2"}," Description ",-1)),e.createElementVNode("p",uk,e.toDisplayString(l.selectedEvent.description),1)])):e.createCommentVNode("",!0),l.selectedEvent.compliance?(e.openBlock(),e.createElementBlock("div",mk,[n[22]||(n[22]=e.createElementVNode("h5",{class:"text-sm font-semibold text-gray-900 mb-2"}," Compliance Details ",-1)),l.selectedEvent.compliance.remarks?(e.openBlock(),e.createElementBlock("div",fk,[n[20]||(n[20]=e.createElementVNode("span",{class:"font-medium text-gray-700"},"Remarks:",-1)),e.createElementVNode("p",pk,e.toDisplayString(l.selectedEvent.compliance.remarks),1)])):e.createCommentVNode("",!0),l.selectedEvent.compliance.compliance_documents?.length?(e.openBlock(),e.createElementBlock("div",gk,[n[21]||(n[21]=e.createElementVNode("span",{class:"font-medium text-gray-700"},"Documents:",-1)),e.createElementVNode("p",vk,e.toDisplayString(l.selectedEvent.compliance.compliance_documents.length)+" document(s) attached ",1)])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)]),_:1})],!0)])}const vl=Ue(Qb,[["render",hk],["__scopeId","data-v-5f73416b"]]),yk={class:"w-full h-full relative"},bk=["width","height","viewBox"],xk={key:0},kk=["x1","y1","x2","y2","stroke"],wk=["id"],Ck=["stop-color"],Bk=["stop-color"],Vk=["x","y","width","height","fill","onMouseenter","onClick"],Ek=["to","begin"],Nk=["from","to","begin"],Sk={key:1},$k=["x","y"],zk={key:2},Dk=["x","y"],Tk={key:3},Fk=["x","y"],Ak={key:4},Mk=["x","y"],Lk=["x1","y1","x2","y2"],_k=["x1","y1","x2","y2"],jk={class:"bg-slate-900 text-white px-4 py-3 rounded-lg shadow-2xl border border-slate-700 min-w-[180px]"},Pk={class:"flex items-center gap-2 mb-2"},Ok={class:"font-semibold text-sm"},Ik={class:"ml-5"},Rk={class:"text-xs text-slate-300 mb-1"},Uk={class:"text-2xl font-bold"},hl={__name:"StackedBarChart",props:{data:{type:Array,required:!0},labels:{type:Array,default:()=>[]},colors:{type:Array,default:()=>["#f97316","#10b981"]},groupKeys:{type:Array,default:()=>["complied","uncomplied"]},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:100},xAxisLabel:{type:String,default:""},yAxisLabel:{type:String,default:""}},emits:["bar-click","bar-hover"],setup(t,{emit:n}){const a=t,o=n,l=e.ref({visible:!1,x:0,y:0,label:"",barLabel:"",value:0,color:""}),r=e.computed(()=>a.height-a.padding.top-a.padding.bottom),s=e.computed(()=>a.width-a.padding.left-a.padding.right),i=e.computed(()=>s.value/a.data.length*.8),c=e.computed(()=>s.value/a.data.length*.2),g=e.computed(()=>i.value/a.groupKeys.length),k=e.computed(()=>0),C=e.computed(()=>{const E=[];for(let Y=0;Y<=5;Y++){const U=a.padding.top+r.value/5*Y;E.push(U)}return E}),D=E=>a.padding.left+E*(i.value+c.value)+c.value/2,B=(E,M)=>D(E)+M*(g.value+k.value),N=E=>{const M=r.value/a.maxValue;return a.padding.top+r.value-E*M},x=E=>{const M=r.value/a.maxValue;return E*M},h=E=>a.colors[E%a.colors.length],v=E=>{const M=(a.height-a.padding.bottom-E)/r.value*a.maxValue;return Math.round(M)},y=E=>E.charAt(0).toUpperCase()+E.slice(1),b=(E,M,Y)=>{const U=a.data[M],T=a.groupKeys[Y],_=U[T]||0,f=a.labels[M]||`Item ${M+1}`,w=y(T);l.value={visible:!0,x:E.clientX,y:E.clientY,label:f,barLabel:w,value:_,color:h(Y)},o("bar-hover",{dataIndex:M,barIndex:Y,key:T,value:_,label:f})},z=()=>{l.value.visible=!1},V=(E,M)=>{const Y=a.data[E],U=a.groupKeys[M],T=Y[U]||0,_=a.labels[E]||`Item ${E+1}`;o("bar-click",{dataIndex:E,barIndex:M,key:U,value:T,label:_})};return(E,M)=>(e.openBlock(),e.createElementBlock("div",yk,[(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",xk,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,Y=>(e.openBlock(),e.createElementBlock("line",{key:`grid-${Y}`,x1:t.padding.left,y1:Y,x2:t.width-t.padding.right,y2:Y,stroke:t.gridColor,"stroke-width":"1","stroke-dasharray":"4,4",opacity:"0.3"},null,8,kk))),128))])):e.createCommentVNode("",!0),e.createElementVNode("defs",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.groupKeys,(Y,U)=>(e.openBlock(),e.createElementBlock("linearGradient",{id:`barGradient-${U}`,key:`gradient-${U}`,x1:"0%",y1:"0%",x2:"0%",y2:"100%"},[e.createElementVNode("stop",{offset:"0%","stop-color":h(U),"stop-opacity":"0.95"},null,8,Ck),e.createElementVNode("stop",{offset:"100%","stop-color":h(U),"stop-opacity":"0.85"},null,8,Bk)],8,wk))),128))]),e.createElementVNode("g",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.data,(Y,U)=>(e.openBlock(),e.createElementBlock("g",{key:`bar-group-${U}`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.groupKeys,(T,_)=>(e.openBlock(),e.createElementBlock("rect",{key:`bar-${U}-${_}`,x:B(U,_),y:N(Y[T]||0),width:g.value,height:x(Y[T]||0),fill:`url(#barGradient-${_})`,class:e.normalizeClass(t.barClasses),rx:"4",onMouseenter:f=>b(f,U,_),onMouseleave:z,onClick:f=>V(U,_)},[e.createElementVNode("animate",{attributeName:"height",from:0,to:x(Y[T]||0),dur:"0.6s",begin:`${_*.1}s`,fill:"freeze"},null,8,Ek),e.createElementVNode("animate",{attributeName:"y",from:t.padding.top+r.value,to:N(Y[T]||0),dur:"0.6s",begin:`${_*.1}s`,fill:"freeze"},null,8,Nk)],42,Vk))),128))]))),128))]),t.showXAxis?(e.openBlock(),e.createElementBlock("g",Sk,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.labels,(Y,U)=>(e.openBlock(),e.createElementBlock("text",{key:`xlabel-${U}`,x:D(U)+i.value/2,y:t.height-t.padding.bottom+20,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"middle"},e.toDisplayString(Y),11,$k))),128))])):e.createCommentVNode("",!0),t.xAxisLabel?(e.openBlock(),e.createElementBlock("g",zk,[e.createElementVNode("text",{x:t.padding.left+s.value/2,y:t.height-10,class:"fill-slate-700 text-sm font-semibold","text-anchor":"middle"},e.toDisplayString(t.xAxisLabel),9,Dk)])):e.createCommentVNode("",!0),t.showYAxis?(e.openBlock(),e.createElementBlock("g",Tk,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,Y=>(e.openBlock(),e.createElementBlock("text",{key:`ylabel-${Y}`,x:t.padding.left-10,y:Y+4,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"end"},e.toDisplayString(v(Y)),11,Fk))),128))])):e.createCommentVNode("",!0),t.yAxisLabel?(e.openBlock(),e.createElementBlock("g",Ak,[e.createElementVNode("text",{x:-(t.padding.top+r.value/2),y:t.padding.left-40,class:"fill-slate-700 text-sm font-semibold","text-anchor":"middle",transform:"rotate(-90)"},e.toDisplayString(t.yAxisLabel),9,Mk)])):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,Lk),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,_k)],8,bk)),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",jk,[e.createElementVNode("div",Pk,[e.createElementVNode("div",{style:e.normalizeStyle({backgroundColor:l.value.color}),class:"w-3 h-3 rounded shadow-sm"},null,4),e.createElementVNode("p",Ok,e.toDisplayString(l.value.label),1)]),e.createElementVNode("div",Ik,[e.createElementVNode("p",Rk,e.toDisplayString(l.value.barLabel),1),e.createElementVNode("span",Uk,e.toDisplayString(l.value.value)+"%",1)]),M[0]||(M[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)]))}},rn={Avatar:co,Badge:va,Button:oe,Checkbox:Qe,Divider:uo,Icon:L,Image:mo,Input:le,Label:Be,Link:fo,Logo:po,Option:ha,CircularProgress:ya,Progress:go,ProgressBar:vo,Radio:ho,Select:he,Spinner:Ct,Switch:yo,Text:bo,Textarea:Bt,Tooltip:ba,Typography:ht,Loader:Oe,Alert:xo,Breadcrumb:ko,ButtonGroup:wo,Card:Co,CardHeader:Bo,CardBody:Vo,CardFooter:Eo,CardContent:No,CardTitle:So,DatePicker:ot,Dropdown:$o,DropdownItem:zo,FileUpload:Ze,FormField:Vt,InputGroup:Do,ListItem:To,MenuItem:Fo,Modal:Et,ModalHeader:Ao,ModalBody:Mo,ModalFooter:Lo,Notification:_o,Toast:Oo,Search:Io,Slider:Nt,Stepper:Ro,StepperItem:Uo,Tab:qo,TabPanel:Yo,BarChart:xa,LineChart:ka,StackedBarChart:hl,GraphFilters:Xo,Accordion:Ho,AccordionItem:Wo,Graph:Ko,Calendar:Go,EventsCalendar:vl,DataTable:Jo,DataTableHeader:wa,DataTableRow:Qo,DataTableCell:Zo,DataTablePagination:Ca,DataTableFilters:el,DataTableToolBar:tl,Footer:al,Header:nl,ReusableFormModal:ll,ReusableForm:rl,Sidebar:sl,Timeline:il,TimelineItem:cl,AuthLayout:dl,DefaultLayout:ul,ErrorLayout:ml,DashboardWidget:fl,ReminderConfig:pl},qk={install(t,n={}){const{prefix:a=""}=n;Object.keys(rn).forEach(o=>{const l=a?`${a}${o}`:o;t.component(l,rn[o])}),t.config.globalProperties.$toast=se,t.provide("toast",se),t.config.globalProperties.$tooltip=aa,t.provide("tooltip",aa)}};exports.Accordion=Ho;exports.AccordionItem=Wo;exports.Alert=xo;exports.AuthLayout=dl;exports.Avatar=co;exports.Badge=va;exports.BarChart=xa;exports.Breadcrumb=ko;exports.Button=oe;exports.ButtonGroup=wo;exports.Calendar=Go;exports.Card=Co;exports.CardBody=Vo;exports.CardContent=No;exports.CardFooter=Eo;exports.CardHeader=Bo;exports.CardTitle=So;exports.Checkbox=Qe;exports.CircularProgress=ya;exports.DashboardWidget=fl;exports.DataTable=Jo;exports.DataTableCell=Zo;exports.DataTableFilters=el;exports.DataTableHeader=wa;exports.DataTablePagination=Ca;exports.DataTableRow=Qo;exports.DataTableToolBar=tl;exports.DatePicker=ot;exports.DefaultLayout=ul;exports.Divider=uo;exports.Dropdown=$o;exports.DropdownItem=zo;exports.ErrorLayout=ml;exports.EventsCalendar=vl;exports.FileUpload=Ze;exports.Footer=al;exports.FormField=Vt;exports.Graph=Ko;exports.GraphFilters=Xo;exports.Header=nl;exports.Icon=L;exports.Image=mo;exports.Input=le;exports.InputGroup=Do;exports.Label=Be;exports.LineChart=ka;exports.Link=fo;exports.ListItem=To;exports.Loader=Oe;exports.Logo=po;exports.MenuItem=Fo;exports.Modal=Et;exports.ModalBody=Mo;exports.ModalFooter=Lo;exports.ModalHeader=Ao;exports.Notification=_o;exports.Option=ha;exports.Progress=go;exports.ProgressBar=vo;exports.Radio=ho;exports.ReminderConfig=pl;exports.ReusableForm=rl;exports.ReusableFormModal=ll;exports.Search=Io;exports.Select=he;exports.Sidebar=sl;exports.Slider=Nt;exports.Spinner=Ct;exports.StackedBarChart=hl;exports.Stepper=Ro;exports.StepperItem=Uo;exports.Switch=yo;exports.Tab=qo;exports.TabPanel=Yo;exports.Text=bo;exports.Textarea=Bt;exports.Timeline=il;exports.TimelineItem=cl;exports.Toast=Oo;exports.Tooltip=ba;exports.Typography=ht;exports.cn=$;exports.default=qk;exports.toast=se;exports.tooltip=aa;exports.useToaster=Po;
|
|
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))}};function Se(t){if(typeof t=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(t))return t;if(t instanceof Date){const n=t.getFullYear(),a=String(t.getMonth()+1).padStart(2,"0"),o=String(t.getDate()).padStart(2,"0");return`${n}-${a}-${o}`}return null}function nx(t){if(!t)return null;if(/^\d{4}-\d{2}-\d{2}$/.test(t)){const[n,a,o]=t.split("-").map(Number);return new Date(n,a-1,o)}return new Date(t)}function mt(){return Se(new Date)}function gl(t){const n=t.getDay(),a=new Date(t);a.setDate(t.getDate()-n);const o=new Date(a);return o.setDate(a.getDate()+6),{startDate:a,endDate:o}}function ox(t){const{startDate:n}=gl(t),a=[];for(let o=0;o<7;o++){const l=new Date(n);l.setDate(n.getDate()+o),a.push(l)}return a}function nn(t){const n=t.getFullYear(),a=t.getMonth(),o=new Date(n,a,1),l=new Date(n,a+1,0),r=o.getDay(),s=l.getDate(),i=[],c=mt(),g=new Date(n,a,0).getDate();for(let w=r-1;w>=0;w--){const z=g-w,N=new Date(n,a-1,z),S=Se(N);i.push({dayNumber:z,date:S,dateObj:N,isCurrentMonth:!1,isToday:S===c})}for(let w=1;w<=s;w++){const z=new Date(n,a,w),N=Se(z);i.push({dayNumber:w,date:N,dateObj:z,isCurrentMonth:!0,isToday:N===c})}const b=42-i.length;for(let w=1;w<=b;w++){const z=new Date(n,a+1,w),N=Se(z);i.push({dayNumber:w,date:N,dateObj:z,isCurrentMonth:!1,isToday:N===c})}return i}function on(t,n="full"){if(!t)return"";const a=nx(t);if(!a)return String(t);const o={full:{weekday:"long",year:"numeric",month:"long",day:"numeric"},short:{month:"short",day:"numeric",year:"numeric"},time:{hour:"2-digit",minute:"2-digit"}};return a.toLocaleDateString("en-US",o[n]||o.full)}function lx(t=0,n=23,a=60){const o=[];for(let l=t;l<=n;l++)for(let r=0;r<60;r+=a){const s=String(l).padStart(2,"0"),i=String(r).padStart(2,"0"),c=`${s}:${i}`,g=l===0?12:l>12?l-12:l,b=l<12?"AM":"PM",w=`${g}:${i} ${b}`;o.push({time:c,display:w})}return o}function ln(t,n){const a=Se(t),o=Se(n);return a===o}function _t(t,n="long"){return t.toLocaleDateString("en-US",{month:n})}function jt(t){return t.getFullYear()}const rx={name:"EventsCalendar",props:{events:{type:Array,default:()=>[]},size:{type:String,default:"default"}},emits:["select-date","select-event"],data(){return{currentDate:new Date,selectedDate:null,viewMode:"month",selectedEvent:null,weekDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],weekDaysShort:["S","M","T","W","T","F","S"],timeSlots:lx(0,23,60),monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"]}},computed:{displayTitle(){if(this.viewMode==="year")return jt(this.currentDate);if(this.viewMode==="day")return on(this.currentDate,"full");if(this.viewMode==="week"){const{startDate:t,endDate:n}=gl(this.currentDate),a=_t(t,"short"),o=_t(n,"short"),l=jt(this.currentDate);return t.getMonth()===n.getMonth()?`${a} ${t.getDate()} - ${n.getDate()}, ${l}`:`${a} ${t.getDate()} - ${o} ${n.getDate()}, ${l}`}else return`${_t(this.currentDate)} ${jt(this.currentDate)}`},calendarDays(){return nn(this.currentDate).map(n=>({...n,events:this.getEventsForDate(n.date)}))},weekViewDays(){return ox(this.currentDate).map(n=>{const a=Se(n);return{dateObj:n,date:a,dayNumber:n.getDate(),dayName:this.weekDays[n.getDay()],isToday:ln(n,mt()),events:this.getEventsForDate(a)}})},dayViewDate(){const t=Se(this.currentDate);return{dateObj:this.currentDate,date:t,dayNumber:this.currentDate.getDate(),dayName:this.weekDays[this.currentDate.getDay()],isToday:ln(this.currentDate,mt()),events:this.getEventsForDate(t)}},yearViewMonths(){const t=this.currentDate.getFullYear();return this.monthNames.map((n,a)=>{const o=new Date(t,a,1),l=nn(o);return{name:n,index:a,days:l.map(r=>({...r,events:this.getEventsForDate(r.date)}))}})}},methods:{formatEventDate:on,getEventsForDate(t){return this.events.filter(n=>n.date===t)},previousPeriod(){this.viewMode==="year"?this.currentDate=new Date(this.currentDate.getFullYear()-1,0,1):this.viewMode==="day"?this.currentDate=new Date(this.currentDate.getFullYear(),this.currentDate.getMonth(),this.currentDate.getDate()-1):this.viewMode==="week"?this.currentDate=new Date(this.currentDate.getFullYear(),this.currentDate.getMonth(),this.currentDate.getDate()-7):this.currentDate=new Date(this.currentDate.getFullYear(),this.currentDate.getMonth()-1,1)},nextPeriod(){this.viewMode==="year"?this.currentDate=new Date(this.currentDate.getFullYear()+1,0,1):this.viewMode==="day"?this.currentDate=new Date(this.currentDate.getFullYear(),this.currentDate.getMonth(),this.currentDate.getDate()+1):this.viewMode==="week"?this.currentDate=new Date(this.currentDate.getFullYear(),this.currentDate.getMonth(),this.currentDate.getDate()+7):this.currentDate=new Date(this.currentDate.getFullYear(),this.currentDate.getMonth()+1,1)},goToToday(){this.currentDate=new Date,this.selectedDate=mt(),this.$emit("select-date",{date:this.selectedDate,events:this.getEventsForDate(this.selectedDate)})},selectDay(t){this.selectedDate=t.date;const[n,a,o]=t.date.split("-").map(Number);this.currentDate=new Date(n,a-1,o),this.$emit("select-date",{date:t.date,events:t.events})},selectEvent(t,n){this.selectedEvent=t,this.selectedDate=n.date;const[a,o,l]=n.date.split("-").map(Number);this.currentDate=new Date(a,o-1,l),this.viewMode="month",this.$emit("select-event",t)},getEventColorClass(t){return{blue:"bg-blue-500 border-blue-600",red:"bg-red-500 border-red-600",green:"bg-green-500 border-green-600",purple:"bg-purple-500 border-purple-600",orange:"bg-orange-500 border-orange-600"}[t]||"bg-gray-500 border-gray-600"},getEventsAtTime(t,n){return t.filter(o=>{if(!o.time||!/^\d{1,2}:\d{2}/.test(o.time))return!1;const l=o.time.split(":")[0].padStart(2,"0");return n.time.startsWith(l)})},getAllDayEvents(t){return t.filter(n=>n.time?!/^\d{1,2}:\d{2}/.test(n.time):!0)},selectMonthFromYear(t){this.currentDate=new Date(this.currentDate.getFullYear(),t,1),this.viewMode="month"}}},sx={class:"flex gap-0 h-full bg-white rounded-lg shadow-sm border border-gray-200"},ix={class:"flex-1 flex flex-col"},cx={class:"flex items-center justify-between px-6 py-4 border-b border-gray-200"},dx={class:"flex items-center gap-3"},ux={class:"flex items-center gap-1"},mx={class:"text-xl font-semibold text-gray-900 ml-2"},fx={class:"flex items-center gap-2"},px={class:"flex-1 flex flex-col p-4"},gx={key:0,class:"flex-1 overflow-y-auto"},vx={class:"grid grid-cols-3 gap-6 pb-6"},hx=["onClick"],yx={class:"bg-linear-to-r from-blue-500 to-blue-600 px-3 py-3"},bx={class:"text-sm font-bold text-white text-center"},xx={class:"p-3"},kx={class:"grid grid-cols-7 mb-2"},wx={class:"grid grid-cols-7 gap-1"},Cx={key:1,class:"flex-1 flex flex-col"},Bx={class:"grid grid-cols-7 border-b border-gray-200"},Vx={class:"grid grid-cols-7 flex-1 border-l border-t border-gray-200"},Ex=["onClick"],Nx={class:"flex items-center justify-between mb-1 px-1"},Sx={class:"space-y-1"},$x=["onClick"],zx={key:0,class:"text-xs px-2 py-1 text-gray-600 font-medium cursor-pointer hover:text-gray-900"},Dx={key:2,class:"flex-1 flex flex-col overflow-hidden"},Tx={class:"grid grid-cols-8 border-b border-gray-200 bg-gray-50"},Fx={class:"text-xs font-semibold text-gray-600 uppercase"},Ax={class:"grid grid-cols-8 border-b border-gray-200 bg-gray-50 min-h-[60px]"},Mx=["onClick"],Lx={class:"font-semibold truncate"},_x={class:"flex-1 overflow-y-auto"},jx={class:"grid grid-cols-8"},Px={class:"border-r border-gray-200 bg-gray-50"},Ox=["onClick"],Ix={class:"font-semibold truncate"},Rx={class:"text-xs opacity-90 truncate"},Ux={key:3,class:"flex-1 flex flex-col overflow-hidden"},qx={class:"border-b border-gray-200 bg-gray-50 p-4"},Yx={class:"text-center"},Hx={class:"text-sm font-semibold text-gray-600 uppercase"},Wx={key:0,class:"border-b border-gray-200 bg-gray-50 p-4"},Gx={class:"space-y-2"},Kx=["onClick"],Xx={class:"font-semibold"},Jx={key:0,class:"text-xs opacity-80 mt-1"},Qx={class:"flex-1 overflow-y-auto"},Zx={class:"flex"},ek={class:"w-24 border-r border-gray-200 bg-gray-50 shrink-0"},tk={class:"flex-1 relative"},ak=["onClick"],nk={class:"font-semibold"},ok={class:"text-xs opacity-90 mt-1"},lk={key:0,class:"text-xs opacity-80 mt-1 line-clamp-2"},rk={key:0,class:"w-80 border-l border-gray-200 bg-white flex flex-col"},sk={class:"px-6 py-4 border-b border-gray-200 flex items-start justify-between"},ik={class:"flex-1 overflow-y-auto px-6 py-4 space-y-4"},ck={class:"text-xl font-bold text-gray-900"},dk={key:0},uk={key:0,class:"w-4 h-4 mr-1.5",fill:"currentColor",viewBox:"0 0 20 20"},mk={key:1,class:"w-4 h-4 mr-1.5",fill:"currentColor",viewBox:"0 0 20 20"},fk={class:"space-y-3 pt-2"},pk={class:"flex items-start gap-3"},gk={class:"text-sm font-medium text-gray-900"},vk={class:"flex items-start gap-3"},hk={class:"text-sm text-gray-600"},yk={key:1,class:"pt-4 border-t border-gray-200"},bk={class:"text-sm text-gray-600 leading-relaxed"},xk={key:2,class:"pt-4 border-t border-gray-200 space-y-3"},kk={key:0,class:"text-sm"},wk={class:"text-gray-600 mt-1"},Ck={key:1,class:"text-sm"},Bk={class:"text-gray-600 mt-1"};function Vk(t,n,a,o,l,r){return e.openBlock(),e.createElementBlock("div",sx,[e.createElementVNode("div",ix,[e.createElementVNode("div",cx,[e.createElementVNode("div",dx,[e.createElementVNode("button",{class:"px-4 py-2 text-sm font-medium text-gray-700 bg-white border border-gray-300 rounded hover:bg-gray-50 transition-colors",onClick:n[0]||(n[0]=(...s)=>r.goToToday&&r.goToToday(...s))}," Today "),e.createElementVNode("div",ux,[e.createElementVNode("button",{class:"p-2 text-gray-600 hover:bg-gray-100 rounded transition-colors",onClick:n[1]||(n[1]=(...s)=>r.previousPeriod&&r.previousPeriod(...s))},[...n[8]||(n[8]=[e.createElementVNode("svg",{class:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 19l-7-7 7-7"})],-1)])]),e.createElementVNode("button",{class:"p-2 text-gray-600 hover:bg-gray-100 rounded transition-colors",onClick:n[2]||(n[2]=(...s)=>r.nextPeriod&&r.nextPeriod(...s))},[...n[9]||(n[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:"M9 5l7 7-7 7"})],-1)])])]),e.createElementVNode("h2",mx,e.toDisplayString(r.displayTitle),1)]),e.createElementVNode("div",fx,[e.createElementVNode("button",{class:e.normalizeClass(["px-3 py-2 text-sm font-medium rounded transition-colors",l.viewMode==="year"?"bg-blue-100 text-blue-700":"text-gray-700 hover:bg-gray-100"]),onClick:n[3]||(n[3]=s=>l.viewMode="year")}," Year ",2),e.createElementVNode("button",{class:e.normalizeClass(["px-3 py-2 text-sm font-medium rounded transition-colors",l.viewMode==="month"?"bg-blue-100 text-blue-700":"text-gray-700 hover:bg-gray-100"]),onClick:n[4]||(n[4]=s=>l.viewMode="month")}," Month ",2),e.createElementVNode("button",{class:e.normalizeClass(["px-3 py-2 text-sm font-medium rounded transition-colors",l.viewMode==="week"?"bg-blue-100 text-blue-700":"text-gray-700 hover:bg-gray-100"]),onClick:n[5]||(n[5]=s=>l.viewMode="week")}," Week ",2),e.createElementVNode("button",{class:e.normalizeClass(["px-3 py-2 text-sm font-medium rounded transition-colors",l.viewMode==="day"?"bg-blue-100 text-blue-700":"text-gray-700 hover:bg-gray-100"]),onClick:n[6]||(n[6]=s=>l.viewMode="day")}," Day ",2)])]),e.createElementVNode("div",px,[l.viewMode==="year"?(e.openBlock(),e.createElementBlock("div",gx,[e.createElementVNode("div",vx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.yearViewMonths,s=>(e.openBlock(),e.createElementBlock("div",{key:s.index,class:"bg-white rounded-lg border border-gray-200 overflow-hidden hover:shadow-lg transition-shadow cursor-pointer",onClick:i=>r.selectMonthFromYear(s.index)},[e.createElementVNode("div",yx,[e.createElementVNode("h3",bx,e.toDisplayString(s.name),1)]),e.createElementVNode("div",xx,[e.createElementVNode("div",kx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.weekDaysShort,i=>(e.openBlock(),e.createElementBlock("div",{key:i,class:"text-center text-[10px] font-bold text-gray-600"},e.toDisplayString(i),1))),128))]),e.createElementVNode("div",wx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.days,(i,c)=>(e.openBlock(),e.createElementBlock("div",{key:c,class:e.normalizeClass(["aspect-square flex items-center justify-center text-xs rounded-md relative transition-all hover:scale-110",[i.isCurrentMonth?"text-gray-800":"text-gray-300",i.isToday?"bg-blue-600 text-white font-extrabold shadow-md ring-2 ring-blue-300":"",i.events.length>0&&!i.isToday&&i.isCurrentMonth?"bg-red-100 text-red-900 font-bold border-2 border-red-400 shadow-sm":"",i.events.length===0&&!i.isToday&&i.isCurrentMonth?"hover:bg-gray-100":""]])},[e.createTextVNode(e.toDisplayString(i.dayNumber)+" ",1),i.events.length>1&&i.isCurrentMonth?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["absolute -top-1 -right-1 w-4 h-4 rounded-full flex items-center justify-center text-[8px] font-black shadow-md",i.isToday?"bg-yellow-400 text-blue-900":"bg-red-600 text-white"])},e.toDisplayString(i.events.length),3)):e.createCommentVNode("",!0)],2))),128))])])],8,hx))),128))])])):e.createCommentVNode("",!0),l.viewMode==="month"?(e.openBlock(),e.createElementBlock("div",Cx,[e.createElementVNode("div",Bx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.weekDays,s=>(e.openBlock(),e.createElementBlock("div",{key:s,class:"text-center text-xs font-semibold text-gray-600 py-3 uppercase tracking-wider"},e.toDisplayString(s),1))),128))]),e.createElementVNode("div",Vx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.calendarDays,(s,i)=>(e.openBlock(),e.createElementBlock("div",{key:i,class:e.normalizeClass(["border-r border-b border-gray-200 p-1 min-h-[120px] relative cursor-pointer hover:bg-gray-50 transition-colors",[s.isCurrentMonth?"bg-white":"bg-gray-50",s.isToday?"bg-blue-50":"",l.selectedDate===s.date?"ring-2 ring-blue-500 ring-inset":""]]),onClick:c=>r.selectDay(s)},[e.createElementVNode("div",Nx,[e.createElementVNode("span",{class:e.normalizeClass(["text-sm font-medium",[s.isCurrentMonth?"text-gray-900":"text-gray-400",s.isToday?"bg-blue-600 text-white w-6 h-6 flex items-center justify-center rounded-full text-xs":""]])},e.toDisplayString(s.dayNumber),3)]),e.createElementVNode("div",Sx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.events.slice(0,3),(c,g)=>(e.openBlock(),e.createElementBlock("div",{key:g,class:e.normalizeClass(["text-xs px-2 py-1 rounded cursor-pointer truncate border-l-2 text-white font-medium hover:opacity-90 transition-opacity",r.getEventColorClass(c.color)]),onClick:e.withModifiers(b=>r.selectEvent(c,s),["stop"])},e.toDisplayString(c.title),11,$x))),128)),s.events.length>3?(e.openBlock(),e.createElementBlock("div",zx," +"+e.toDisplayString(s.events.length-3)+" more ",1)):e.createCommentVNode("",!0)])],10,Ex))),128))])])):l.viewMode==="week"?(e.openBlock(),e.createElementBlock("div",Dx,[e.createElementVNode("div",Tx,[n[10]||(n[10]=e.createElementVNode("div",{class:"border-r border-gray-200 p-2"},null,-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.weekViewDays,s=>(e.openBlock(),e.createElementBlock("div",{key:s.date,class:e.normalizeClass(["text-center p-2 border-r border-gray-200",s.isToday?"bg-blue-50":""])},[e.createElementVNode("div",Fx,e.toDisplayString(s.dayName),1),e.createElementVNode("div",{class:e.normalizeClass(["text-lg font-bold mt-1",[s.isToday?"bg-blue-600 text-white w-8 h-8 flex items-center justify-center rounded-full mx-auto":"text-gray-900"]])},e.toDisplayString(s.dayNumber),3)],2))),128))]),e.createElementVNode("div",Ax,[n[11]||(n[11]=e.createElementVNode("div",{class:"border-r border-gray-200 px-2 py-1 text-xs text-gray-600 text-right flex items-center justify-end"}," All Day ",-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.weekViewDays,s=>(e.openBlock(),e.createElementBlock("div",{key:"allday-"+s.date,class:e.normalizeClass(["border-r border-gray-200 p-1 space-y-1",s.isToday?"bg-blue-50 bg-opacity-30":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.getAllDayEvents(s.events),i=>(e.openBlock(),e.createElementBlock("div",{key:i.id,class:e.normalizeClass(["rounded border-l-2 p-1 text-xs font-medium text-white cursor-pointer hover:opacity-90 transition-opacity",r.getEventColorClass(i.color)]),onClick:c=>r.selectEvent(i,s)},[e.createElementVNode("div",Lx,e.toDisplayString(i.title),1)],10,Mx))),128))],2))),128))]),e.createElementVNode("div",_x,[e.createElementVNode("div",jx,[e.createElementVNode("div",Px,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.timeSlots,s=>(e.openBlock(),e.createElementBlock("div",{key:s.time,class:"h-16 border-b border-gray-200 px-2 py-1 text-xs text-gray-600 text-right"},e.toDisplayString(s.display),1))),128))]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.weekViewDays,s=>(e.openBlock(),e.createElementBlock("div",{key:s.date,class:"border-r border-gray-200 relative"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.timeSlots,i=>(e.openBlock(),e.createElementBlock("div",{key:i.time,class:e.normalizeClass(["h-16 border-b border-gray-200 hover:bg-gray-50 transition-colors cursor-pointer relative",s.isToday?"bg-blue-50 bg-opacity-30":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.getEventsAtTime(s.events,i),c=>(e.openBlock(),e.createElementBlock("div",{key:c.id,class:e.normalizeClass(["absolute inset-x-1 top-1 bottom-1 rounded border-l-2 p-1 text-xs font-medium text-white cursor-pointer hover:opacity-90 transition-opacity overflow-hidden",r.getEventColorClass(c.color)]),onClick:g=>r.selectEvent(c,s)},[e.createElementVNode("div",Ix,e.toDisplayString(c.title),1),e.createElementVNode("div",Rx,e.toDisplayString(c.time),1)],10,Ox))),128))],2))),128))]))),128))])])])):l.viewMode==="day"?(e.openBlock(),e.createElementBlock("div",Ux,[e.createElementVNode("div",qx,[e.createElementVNode("div",Yx,[e.createElementVNode("div",Hx,e.toDisplayString(r.dayViewDate.dayName),1),e.createElementVNode("div",{class:e.normalizeClass(["text-3xl font-bold mt-2",[r.dayViewDate.isToday?"text-blue-600":"text-gray-900"]])},e.toDisplayString(r.dayViewDate.dayNumber),3)])]),r.getAllDayEvents(r.dayViewDate.events).length>0?(e.openBlock(),e.createElementBlock("div",Wx,[n[12]||(n[12]=e.createElementVNode("h4",{class:"text-xs font-semibold text-gray-600 uppercase tracking-wide mb-2"}," All Day Events ",-1)),e.createElementVNode("div",Gx,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.getAllDayEvents(r.dayViewDate.events),s=>(e.openBlock(),e.createElementBlock("div",{key:s.id,class:e.normalizeClass(["rounded border-l-4 p-3 text-sm font-medium text-white cursor-pointer hover:opacity-90 transition-opacity shadow-sm",r.getEventColorClass(s.color)]),onClick:i=>r.selectEvent(s,r.dayViewDate)},[e.createElementVNode("div",Xx,e.toDisplayString(s.title),1),s.description?(e.openBlock(),e.createElementBlock("div",Jx,e.toDisplayString(s.description),1)):e.createCommentVNode("",!0)],10,Kx))),128))])])):e.createCommentVNode("",!0),e.createElementVNode("div",Qx,[e.createElementVNode("div",Zx,[e.createElementVNode("div",ek,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.timeSlots,s=>(e.openBlock(),e.createElementBlock("div",{key:s.time,class:"h-16 border-b border-gray-200 px-2 py-1 text-xs text-gray-600 text-right"},e.toDisplayString(s.display),1))),128))]),e.createElementVNode("div",tk,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.timeSlots,s=>(e.openBlock(),e.createElementBlock("div",{key:s.time,class:e.normalizeClass(["h-16 border-b border-gray-200 hover:bg-gray-50 transition-colors cursor-pointer relative",r.dayViewDate.isToday?"bg-blue-50 bg-opacity-30":""])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.getEventsAtTime(r.dayViewDate.events,s),i=>(e.openBlock(),e.createElementBlock("div",{key:i.id,class:e.normalizeClass(["absolute inset-x-2 top-1 bottom-1 rounded border-l-4 p-2 text-sm font-medium text-white cursor-pointer hover:opacity-90 transition-opacity shadow-sm",r.getEventColorClass(i.color)]),onClick:c=>r.selectEvent(i,r.dayViewDate)},[e.createElementVNode("div",nk,e.toDisplayString(i.title),1),e.createElementVNode("div",ok,e.toDisplayString(i.time),1),i.description?(e.openBlock(),e.createElementBlock("div",lk,e.toDisplayString(i.description),1)):e.createCommentVNode("",!0)],10,ak))),128))],2))),128))])])])])):e.createCommentVNode("",!0)])]),e.renderSlot(t.$slots,"sidebar",{selectedEvent:l.selectedEvent,closeEvent:()=>l.selectedEvent=null},()=>[e.createVNode(e.Transition,{"enter-active-class":"transition-all duration-200","leave-active-class":"transition-all duration-200","enter-from-class":"opacity-0 translate-x-4","leave-to-class":"opacity-0 translate-x-4"},{default:e.withCtx(()=>[l.selectedEvent?(e.openBlock(),e.createElementBlock("div",rk,[e.createElementVNode("div",sk,[n[14]||(n[14]=e.createElementVNode("h3",{class:"text-lg font-semibold text-gray-900"}," Event Details ",-1)),e.createElementVNode("button",{class:"text-gray-400 hover:text-gray-600 transition-colors",onClick:n[7]||(n[7]=s=>l.selectedEvent=null)},[...n[13]||(n[13]=[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.createElementVNode("div",ik,[e.createElementVNode("div",{class:e.normalizeClass(["h-1 w-full rounded-full",r.getEventColorClass(l.selectedEvent.color)])},null,2),e.createElementVNode("div",null,[e.createElementVNode("h4",ck,e.toDisplayString(l.selectedEvent.title),1)]),l.selectedEvent.status?(e.openBlock(),e.createElementBlock("div",dk,[e.createElementVNode("span",{class:e.normalizeClass(["inline-flex items-center px-3 py-1.5 rounded-full text-sm font-medium",l.selectedEvent.status==="complied"?"bg-green-100 text-green-800 border border-green-200":"bg-orange-100 text-orange-800 border border-orange-200"])},[l.selectedEvent.status==="complied"?(e.openBlock(),e.createElementBlock("svg",uk,[...n[15]||(n[15]=[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z","clip-rule":"evenodd"},null,-1)])])):(e.openBlock(),e.createElementBlock("svg",mk,[...n[16]||(n[16]=[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm1-12a1 1 0 10-2 0v4a1 1 0 00.293.707l2.828 2.829a1 1 0 101.415-1.415L11 9.586V6z","clip-rule":"evenodd"},null,-1)])])),e.createTextVNode(" "+e.toDisplayString(l.selectedEvent.status==="complied"?"Complied":"Pending"),1)],2)])):e.createCommentVNode("",!0),e.createElementVNode("div",fk,[e.createElementVNode("div",pk,[n[17]||(n[17]=e.createElementVNode("svg",{class:"w-5 h-5 text-gray-400 mt-0.5",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)),e.createElementVNode("div",null,[e.createElementVNode("p",gk,e.toDisplayString(r.formatEventDate(l.selectedEvent.date,"full")),1)])]),e.createElementVNode("div",vk,[n[18]||(n[18]=e.createElementVNode("svg",{class:"w-5 h-5 text-gray-400 mt-0.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)),e.createElementVNode("p",hk,e.toDisplayString(l.selectedEvent.time),1)])]),l.selectedEvent.description?(e.openBlock(),e.createElementBlock("div",yk,[n[19]||(n[19]=e.createElementVNode("h5",{class:"text-sm font-semibold text-gray-900 mb-2"}," Description ",-1)),e.createElementVNode("p",bk,e.toDisplayString(l.selectedEvent.description),1)])):e.createCommentVNode("",!0),l.selectedEvent.compliance?(e.openBlock(),e.createElementBlock("div",xk,[n[22]||(n[22]=e.createElementVNode("h5",{class:"text-sm font-semibold text-gray-900 mb-2"}," Compliance Details ",-1)),l.selectedEvent.compliance.remarks?(e.openBlock(),e.createElementBlock("div",kk,[n[20]||(n[20]=e.createElementVNode("span",{class:"font-medium text-gray-700"},"Remarks:",-1)),e.createElementVNode("p",wk,e.toDisplayString(l.selectedEvent.compliance.remarks),1)])):e.createCommentVNode("",!0),l.selectedEvent.compliance.compliance_documents?.length?(e.openBlock(),e.createElementBlock("div",Ck,[n[21]||(n[21]=e.createElementVNode("span",{class:"font-medium text-gray-700"},"Documents:",-1)),e.createElementVNode("p",Bk,e.toDisplayString(l.selectedEvent.compliance.compliance_documents.length)+" document(s) attached ",1)])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)]),_:1})],!0)])}const vl=qe(rx,[["render",Vk],["__scopeId","data-v-5f73416b"]]),Ek={class:"w-full h-full relative"},Nk=["width","height","viewBox"],Sk={key:0},$k=["x1","y1","x2","y2","stroke"],zk=["id"],Dk=["stop-color"],Tk=["stop-color"],Fk=["x","y","width","height","fill","onMouseenter","onClick"],Ak=["to","begin"],Mk=["from","to","begin"],Lk={key:1},_k=["x","y"],jk={key:2},Pk=["x","y"],Ok={key:3},Ik=["x","y"],Rk={key:4},Uk=["x","y"],qk=["x1","y1","x2","y2"],Yk=["x1","y1","x2","y2"],Hk={class:"bg-slate-900 text-white px-4 py-3 rounded-lg shadow-2xl border border-slate-700 min-w-[180px]"},Wk={class:"flex items-center gap-2 mb-2"},Gk={class:"font-semibold text-sm"},Kk={class:"ml-5"},Xk={class:"text-xs text-slate-300 mb-1"},Jk={class:"text-2xl font-bold"},hl={__name:"StackedBarChart",props:{data:{type:Array,required:!0},labels:{type:Array,default:()=>[]},colors:{type:Array,default:()=>["#f97316","#10b981"]},groupKeys:{type:Array,default:()=>["complied","uncomplied"]},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:100},xAxisLabel:{type:String,default:""},yAxisLabel:{type:String,default:""}},emits:["bar-click","bar-hover"],setup(t,{emit:n}){const a=t,o=n,l=e.ref({visible:!1,x:0,y:0,label:"",barLabel:"",value:0,color:""}),r=e.computed(()=>a.height-a.padding.top-a.padding.bottom),s=e.computed(()=>a.width-a.padding.left-a.padding.right),i=e.computed(()=>s.value/a.data.length*.8),c=e.computed(()=>s.value/a.data.length*.2),g=e.computed(()=>i.value/a.groupKeys.length),b=e.computed(()=>0),w=e.computed(()=>{const B=[];for(let Y=0;Y<=5;Y++){const U=a.padding.top+r.value/5*Y;B.push(U)}return B}),z=B=>a.padding.left+B*(i.value+c.value)+c.value/2,N=(B,M)=>z(B)+M*(g.value+b.value),S=B=>{const M=r.value/a.maxValue;return a.padding.top+r.value-B*M},V=B=>{const M=r.value/a.maxValue;return B*M},k=B=>a.colors[B%a.colors.length],h=B=>{const M=(a.height-a.padding.bottom-B)/r.value*a.maxValue;return Math.round(M)},y=B=>B.charAt(0).toUpperCase()+B.slice(1),v=(B,M,Y)=>{const U=a.data[M],T=a.groupKeys[Y],_=U[T]||0,f=a.labels[M]||`Item ${M+1}`,x=y(T);l.value={visible:!0,x:B.clientX,y:B.clientY,label:f,barLabel:x,value:_,color:k(Y)},o("bar-hover",{dataIndex:M,barIndex:Y,key:T,value:_,label:f})},E=()=>{l.value.visible=!1},C=(B,M)=>{const Y=a.data[B],U=a.groupKeys[M],T=Y[U]||0,_=a.labels[B]||`Item ${B+1}`;o("bar-click",{dataIndex:B,barIndex:M,key:U,value:T,label:_})};return(B,M)=>(e.openBlock(),e.createElementBlock("div",Ek,[(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",Sk,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value,Y=>(e.openBlock(),e.createElementBlock("line",{key:`grid-${Y}`,x1:t.padding.left,y1:Y,x2:t.width-t.padding.right,y2:Y,stroke:t.gridColor,"stroke-width":"1","stroke-dasharray":"4,4",opacity:"0.3"},null,8,$k))),128))])):e.createCommentVNode("",!0),e.createElementVNode("defs",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.groupKeys,(Y,U)=>(e.openBlock(),e.createElementBlock("linearGradient",{id:`barGradient-${U}`,key:`gradient-${U}`,x1:"0%",y1:"0%",x2:"0%",y2:"100%"},[e.createElementVNode("stop",{offset:"0%","stop-color":k(U),"stop-opacity":"0.95"},null,8,Dk),e.createElementVNode("stop",{offset:"100%","stop-color":k(U),"stop-opacity":"0.85"},null,8,Tk)],8,zk))),128))]),e.createElementVNode("g",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.data,(Y,U)=>(e.openBlock(),e.createElementBlock("g",{key:`bar-group-${U}`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.groupKeys,(T,_)=>(e.openBlock(),e.createElementBlock("rect",{key:`bar-${U}-${_}`,x:N(U,_),y:S(Y[T]||0),width:g.value,height:V(Y[T]||0),fill:`url(#barGradient-${_})`,class:e.normalizeClass(t.barClasses),rx:"4",onMouseenter:f=>v(f,U,_),onMouseleave:E,onClick:f=>C(U,_)},[e.createElementVNode("animate",{attributeName:"height",from:0,to:V(Y[T]||0),dur:"0.6s",begin:`${_*.1}s`,fill:"freeze"},null,8,Ak),e.createElementVNode("animate",{attributeName:"y",from:t.padding.top+r.value,to:S(Y[T]||0),dur:"0.6s",begin:`${_*.1}s`,fill:"freeze"},null,8,Mk)],42,Fk))),128))]))),128))]),t.showXAxis?(e.openBlock(),e.createElementBlock("g",Lk,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.labels,(Y,U)=>(e.openBlock(),e.createElementBlock("text",{key:`xlabel-${U}`,x:z(U)+i.value/2,y:t.height-t.padding.bottom+20,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"middle"},e.toDisplayString(Y),11,_k))),128))])):e.createCommentVNode("",!0),t.xAxisLabel?(e.openBlock(),e.createElementBlock("g",jk,[e.createElementVNode("text",{x:t.padding.left+s.value/2,y:t.height-10,class:"fill-slate-700 text-sm font-semibold","text-anchor":"middle"},e.toDisplayString(t.xAxisLabel),9,Pk)])):e.createCommentVNode("",!0),t.showYAxis?(e.openBlock(),e.createElementBlock("g",Ok,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value,Y=>(e.openBlock(),e.createElementBlock("text",{key:`ylabel-${Y}`,x:t.padding.left-10,y:Y+4,class:e.normalizeClass(t.axisLabelClasses),"text-anchor":"end"},e.toDisplayString(h(Y)),11,Ik))),128))])):e.createCommentVNode("",!0),t.yAxisLabel?(e.openBlock(),e.createElementBlock("g",Rk,[e.createElementVNode("text",{x:-(t.padding.top+r.value/2),y:t.padding.left-40,class:"fill-slate-700 text-sm font-semibold","text-anchor":"middle",transform:"rotate(-90)"},e.toDisplayString(t.yAxisLabel),9,Uk)])):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,qk),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,Yk)],8,Nk)),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",Hk,[e.createElementVNode("div",Wk,[e.createElementVNode("div",{style:e.normalizeStyle({backgroundColor:l.value.color}),class:"w-3 h-3 rounded shadow-sm"},null,4),e.createElementVNode("p",Gk,e.toDisplayString(l.value.label),1)]),e.createElementVNode("div",Kk,[e.createElementVNode("p",Xk,e.toDisplayString(l.value.barLabel),1),e.createElementVNode("span",Jk,e.toDisplayString(l.value.value)+"%",1)]),M[0]||(M[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)]))}},rn={Avatar:co,Badge:va,Button:oe,Checkbox:Ze,Divider:uo,Icon:L,Image:mo,Input:le,Label:Be,Link:fo,Logo:po,Option:ha,CircularProgress:ya,Progress:go,ProgressBar:vo,Radio:ho,Select:he,Spinner:Bt,Switch:yo,Text:bo,Textarea:Vt,Tooltip:ba,Typography:yt,Loader:Oe,Alert:xo,Breadcrumb:ko,ButtonGroup:wo,Card:Co,CardHeader:Bo,CardBody:Vo,CardFooter:Eo,CardContent:No,CardTitle:So,DatePicker:lt,Dropdown:$o,DropdownItem:zo,FileUpload:et,FormField:Et,InputGroup:Do,ListItem:To,MenuItem:Fo,Modal:Ue,ModalHeader:Ao,ModalBody:Mo,ModalFooter:Lo,Notification:_o,Toast:Oo,Search:Io,Slider:Nt,Stepper:Ro,StepperItem:Uo,Tab:qo,TabPanel:Yo,BarChart:xa,LineChart:ka,StackedBarChart:hl,GraphFilters:Xo,Accordion:Ho,AccordionItem:Wo,Graph:Ko,Calendar:Go,EventsCalendar:vl,DataTable:Jo,DataTableHeader:wa,DataTableRow:Qo,DataTableCell:Zo,DataTablePagination:Ca,DataTableFilters:el,DataTableToolBar:tl,Footer:al,Header:nl,ReusableFormModal:ll,ReusableForm:rl,Sidebar:sl,Timeline:il,TimelineItem:cl,AuthLayout:dl,DefaultLayout:ul,ErrorLayout:ml,DashboardWidget:fl,ReminderConfig:pl},Qk={install(t,n={}){const{prefix:a=""}=n;Object.keys(rn).forEach(o=>{const l=a?`${a}${o}`:o;t.component(l,rn[o])}),t.config.globalProperties.$toast=se,t.provide("toast",se),t.config.globalProperties.$tooltip=aa,t.provide("tooltip",aa)}};exports.Accordion=Ho;exports.AccordionItem=Wo;exports.Alert=xo;exports.AuthLayout=dl;exports.Avatar=co;exports.Badge=va;exports.BarChart=xa;exports.Breadcrumb=ko;exports.Button=oe;exports.ButtonGroup=wo;exports.Calendar=Go;exports.Card=Co;exports.CardBody=Vo;exports.CardContent=No;exports.CardFooter=Eo;exports.CardHeader=Bo;exports.CardTitle=So;exports.Checkbox=Ze;exports.CircularProgress=ya;exports.DashboardWidget=fl;exports.DataTable=Jo;exports.DataTableCell=Zo;exports.DataTableFilters=el;exports.DataTableHeader=wa;exports.DataTablePagination=Ca;exports.DataTableRow=Qo;exports.DataTableToolBar=tl;exports.DatePicker=lt;exports.DefaultLayout=ul;exports.Divider=uo;exports.Dropdown=$o;exports.DropdownItem=zo;exports.ErrorLayout=ml;exports.EventsCalendar=vl;exports.FileUpload=et;exports.Footer=al;exports.FormField=Et;exports.Graph=Ko;exports.GraphFilters=Xo;exports.Header=nl;exports.Icon=L;exports.Image=mo;exports.Input=le;exports.InputGroup=Do;exports.Label=Be;exports.LineChart=ka;exports.Link=fo;exports.ListItem=To;exports.Loader=Oe;exports.Logo=po;exports.MenuItem=Fo;exports.Modal=Ue;exports.ModalBody=Mo;exports.ModalFooter=Lo;exports.ModalHeader=Ao;exports.Notification=_o;exports.Option=ha;exports.Progress=go;exports.ProgressBar=vo;exports.Radio=ho;exports.ReminderConfig=pl;exports.ReusableForm=rl;exports.ReusableFormModal=ll;exports.Search=Io;exports.Select=he;exports.Sidebar=sl;exports.Slider=Nt;exports.Spinner=Bt;exports.StackedBarChart=hl;exports.Stepper=Ro;exports.StepperItem=Uo;exports.Switch=yo;exports.Tab=qo;exports.TabPanel=Yo;exports.Text=bo;exports.Textarea=Vt;exports.Timeline=il;exports.TimelineItem=cl;exports.Toast=Oo;exports.Tooltip=ba;exports.Typography=yt;exports.cn=D;exports.default=Qk;exports.toast=se;exports.tooltip=aa;exports.useToaster=Po;
|